Apprallen an einer Wand
Übersicht

![]() |
SmilyBetreff: Apprallen an einer Wand |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hier ist noch ein Code von mir:
Das Apprallen eines Balls von der Wand. Mit hoch und Runter kann man den Ball Steuern. Oben Links stehen folgende Daten: 1: Die RIchtung des Balles in Grad 2: Der Sinuswert der Richtung (Nach X Bewegen) 3: Der Cosinuswert der Richtung (Nach Y Bewegen) 4: Die X Position des Balles 5: Die Y Position des Balles Der Rest waren nur Experimente 6: Der Arcossinus des Sinuswertes von Richtung 7: Der Arcuskosinus des Cosinus der Richtung 8: Die Berechnung der Richtung aus Arcuskosinus und Arcussinus: (ATan2(Sin(ri),Cos(Ri))+360) Mod 360 Code: [AUSKLAPPEN] HidePointer
SeedRnd MilliSecs() Farbe = Rand(3) Select Farbe Case 1 Verlauf$ = "RG" R = Rand(255) G = 255 - R Case 2 Verlauf$ = "GB" G = Rand(255) B = 255 - G Case 3 Verlauf$ = "BR" B = Rand(255) R = 255 - B End Select SizeX = 1024 SizeY = 768 RI = Rand(360) X# = Rnd(SizeX) Y# = Rnd(SizeY) Graphics SizeX, SizeY, 16, 1 Fliptimer = CreateTimer(60) Repeat Select Verlauf$ Case "RG" R = R - 1 G = G + 1 If R = 0 And G = 255 Then Verlauf$ = "GB" Case "GB" G = G - 1 B = B + 1 If G = 0 And B = 255 Then Verlauf$ = "BR" Case "BR" B = B - 1 R = R + 1 If B = 0 And R = 255 Then Verlauf$ = "RG" End Select If R => 255 And RS = 1 Then R = 255 : RS = - 1: GS = 1 If G => 255 And RG = 1 Then G = 255 : GS = - 1: BS = 1 If B => 255 And RB = 1 Then B = 255 : BS = - 1: RS = 1 Color R,G,B Oval X#,Y#,10,10 Select True Case X < 0 RI = 360 - RI X# = 1 Case X > SizeX - 10 RI = 360 - RI X# = SizeX - 11 Case Y < 0 If RI > 180 Then RI = 360 - (RI - 180) If RI < 180 Then RI = 180 - Ri If RI = 180 Ri = 0 Y# = 1 Case Y > SizeY - 10 If RI > 180 Then RI = 360 - (RI - 180) If RI < 180 Then RI = 180 - Ri If RI = 180 Ri = 0 Y# = SizeY - 11 End Select If RI > 360 Then RI = RI - 360 If RI < 0 Then RI = RI + 360 X# = X# + Sin(RI) Y# = Y# + -Cos(RI) If KeyDown(200) ri = Ri + 1 If KeyDown(208) RI = Ri - 1 Locate 1,1 Color 0,0,0 Rect 0,0,100,150 Color 255,255,255 Print Ri Print Sin(ri) Print Cos(RI) Print X# Print Y# Print ASin(Sin(ri)) Print ACos(Cos(RI)) Print (ATan2(Sin(ri),Cos(Ri))+360) Mod 360 WaitTimer (Fliptimer) Until KeyHit(1) WaitKey() End |
||
Hot-BitSieger des B2D Retro Wettbewerb / Aug 04 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hoi.
Ich glaube, du brauchst einen leichten Dämpfer. Dieser Code ist für die Fische ! Dies ist ein Code-Archive, und keine Spielwiese für Anfänger, welche grad mal irgendwas, für sich selbst außergewöhnliches, geschaffen haben ! Wenn schon was für's Code-Archiv machst, dann laß es vorher von ein paar anderen testen, und wenn es gut ist, dann kannst es hier zur Schau stellen. Dieser Code ist ein Sauhaufen, der mit allem Möglichen, wie man es nicht macht, gepflastert ist ! Informativ ist er auch nicht, da ja jeder die Möglichkeit hat, sich selbst über Sin- und Cos zu informieren ! Dann noch was: Wenn schon so etwas bereit stellst, dann vielleicht so, daß die Geschwindigkeit variabel ist, und auch die Berechnung des Abpralles an der Wand KORREKT und INFORMATIV dargestellt wird. Was glaubst du, wieviel Code- Schnipsel ich hier sonst zur Schau stellen könnte ? Also, unterlasse solche Kindergarten-Spielereien, und stelle nur was sinnvolles oder außergewöhnliches hierher ! Danke, Toni |
||
... ..... .i.. ...
*** Sieger des BB-Gameboy-Contest 2004 Sieger des Blitzbaster 2D-Minigolf-Contest 2005 *** |
konstantin |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich wollte gleiches schreiben, aber dann wäre ich ja wieder der Buhmann gewesen ![]() Und du solltesrt dir im generellen angewöhnen, nicht allzuviele neue Threads zu erstellen. |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group