Kleine Particle spielerei...

Previous topic - Next topic

Schranz0r

Code (glbasic) Select
SYSTEMPOINTER TRUE
SETSCREEN 800,600,0

TYPE particle
x
y
winkel
drehung
speed
alter
ENDTYPE

LOCAL p AS particle
LOCAL particles[] AS particle

wind = 0 // Wind erstellen

WHILE TRUE

LOCAL mx,my,b1,b2
MOUSESTATE mx,my,b1,b2

IF MOUSEAXIS(2) THEN wind = wind + MOUSEAXIS(2)

IF wind > 10 THEN wind = 0
IF wind < 0 THEN wind = 10


IF b1 = TRUE
p.x = mx
p.y = my
p.winkel= RND(359) // 360° möglich !!
p.speed = R2(1,3)
p.alter = 1
IF KEY(2) THEN p.drehung = 1
IF KEY(3) THEN p.drehung = 2
IF KEY(4) THEN p.drehung = 3
IF KEY(5) THEN p.drehung = 4
IF KEY(11) THEN p.drehung = 0

DIMPUSH particles[],p

ENDIF

FOREACH c IN particles[]
INC c.x, (COS(c.winkel)*c.speed)+wind
DEC c.y, SIN(c.winkel)*c.speed
DEC c.alter,0.005




INC c.winkel, c.drehung
IF c.winkel > 359 THEN c.winkel = 0

ALPHAMODE c.alter
FILLRECT c.x, c.y, c.x+3, c.y+3, RGB(255, 0+c.x/4, 0+c.x/4)
IF c.alter < 0 THEN DELETE c
ALPHAMODE 0

PRINT "Drehung: "+c.drehung,10,30

NEXT

PRINT "Particles: "+BOUNDS(particles[],0),10,10
PRINT "Wind: "+wind,10,20

SHOWSCREEN
WEND
END


FUNCTION R2: mini, maxi
    RETURN RND(maxi-mini)+mini
ENDFUNCTION
Schaut euch das mal an, ist jetzt nicht kommentiert, aber wenn fragen bestehen dan fragt nur!

Steuerung:

Linke Maustaste : Particle erzeugen
Mausrad: Windstärke von 1-10 setzen (Wind kommt von links!!)          
Tasten 1-4 : Drehung der Particle erhöhen oder verringern
Taste 0 : Drehung aus!

Bekomm aber Types nicht in eine Function, schade eigentlich, sonnst hätte man das gut öfter mal nutzen können....
Gernot, hast du ne Idee wie man sowas in ne Function stecken kann, also types declarieren, und im Hauptcode über ne function aufrufen?
I <3 DGArray's :D

PC:
AMD Ryzen 7 3800X 16@4.5GHz, 16GB Corsair Vengeance LPX DDR4-3200 RAM, ASUS Dual GeForce RTX™ 3060 OC Edition 12GB GDDR6, Windows 11 Pro 64Bit, MSi Tomahawk B350 Mainboard

BumbleBee

Hi

Sieht echt cool aus. Bist ja voll fit im proggen. Sollte ich mal Zeit haben
komm ich bei dir vorbei. Wohnst ja nicht weit weg von mir. Aber nur auf ein Glas Überkinger.;)

Cheers
The day will come...

CPU Intel(R) Core(TM) i5-3570k, 3.4GHz, AMD Radeon 7800 , 8 GB RAM, Windows 10 Home 64Bit

trucidare

hauptsache saufen ;) war ja klar... die zweitschönste nebensache der welt ^^

aber klasse deine funktionen
MacBook Pro 2,2 GHz Core 2 Duo, 4 GB RAM, 160 GB HDD, 8600M GT
Core i3 - 3,07 GHz, 8 GB Ram, 2.5 TB HDD, Geforce GTX 260+ OC

Schranz0r

kommst doch eh öfter mal nach KF oder nicht XD
Hab doch immer ein "Überkinger" da :D
Ich bevorzuge da ja das Aktien XD <---- Kleiner insider unter BumbleBee und mir :D
I <3 DGArray's :D

PC:
AMD Ryzen 7 3800X 16@4.5GHz, 16GB Corsair Vengeance LPX DDR4-3200 RAM, ASUS Dual GeForce RTX™ 3060 OC Edition 12GB GDDR6, Windows 11 Pro 64Bit, MSi Tomahawk B350 Mainboard