Fligende Kugel
Übersicht

![]() |
LifetecBetreff: Fligende Kugel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Also nachdem ich das hier geschrieben habe.
Code: [AUSKLAPPEN] Graphics 800,600,0,1 SetBuffer BackBuffer() hinter = LoadImage("GFX\Hintergrund\insel1024x768.jpg") pointer = LoadImage("GFX\faden.bmp") SpeilMenu = LoadImage("GFX\SpielMenu\Menu.bmp") Beenden = LoadImage("GFX\SpielMenu\Ende.bmp") Beendeng = LoadImage("GFx\SpielMenu\Endeg.bmp") MBildK = LoadImage("GFX\Kanone\schuss ne0001.bmp") Kanone = LoadImage("GFX\Kanone\schuss n0000.bmp") Kanoner = LoadImage("GFx\Kanone\schuss ne0000.bmp") Kanonel = LoadImage("GFx\Kanone\schuss nw0000.bmp") explosion = LoadAnimImage("GFX\explosion\explosion.bmp",96,96,0,15) Kugel = LoadImage("GFX\Kanone\einzelne kugel.bmp") font = LoadFont("X-Files",15,0,0,0) SetFont font ;Zielscheinbn ziel1 = LoadImage("GFX\Zielscheibe\zielscheibe1.bmp") ziel2 = LoadImage("GFX\Zielscheibe\ziel2.bmp") ;MasKimage MaskImage Kugel,128,128,128 MaskImage MBildK,106,76,48 MaskImage pointer,255,255,255 MaskImage Kanone,106,76,48 MaskImage Kanoner,106,76,48 MaskImage Kanonel,106,76,48 MaskImage ziel1,255,255,255 MaskImage ziel2,255,255,255 MidHandle explosion MaskImage explosion,128,128,128 MidHandle kugel schuss = 1 ;Hauptschleife Repeat Cls X = MouseX() Y = MouseY() DrawImage hinter,0,0 DrawImage speilmenu,0,450 DrawImage MBildk,60,495 DrawImage Beenden,755,555 DrawImage ziel1, 100,100 DrawImage pointer,X,Y If schuss = 1 Then DrawImage ziel2,200,100 If ImagesCollide(pointer,X,Y,0,ziel2,200,100,0) And MouseDown(1) Then Cls schuss = 2 FlushMouse Punkte = Punkte+100 EndIf EndIf ;Kanonen (RichtunG) If X > 257 And X < 523 Then DrawImage Kanone,380,380 If X > 523 Then DrawImage Kanoner,380,380 If X < 257 Then DrawImage Kanonel,380,380 DrawImage pointer,X,Y ;Menu ;Menu Colliosion If ImagesCollide(pointer,X,Y,0,Beenden,755,555,0) Then DrawImage beendeng,755,555 DrawImage pointer,X,Y EndIf If ImagesCollide(pointer,X,Y,0,Beenden,755,555,0) And MouseDown(1) Then End EndIf Color 127,0,0 Text 200,480,"Punkte: " + Punkte explo = 0 [color=red]If MouseDown(1) And explo = 0 Then explo = 1 For I=0 To 14 DrawImage Kugel,X,Y DrawImage explosion, X, Y, I Flip Delay 5 Next EndIf Flip Until KeyDown(1)[/color] Möchte ich gerne das die Kugel auf das ziel hinflickt auf das man geklickt hat und dann wenn die Kugel aufachlägt soll es erst die explosion geben. Weiß jemand wie ich das machen kann ??? Ich weiß nicht wie ich es machen sollte. |
||
![]() |
Christoph |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn du die Situation etwas genauer erläuterst kann dir besser geholfen werden. ![]() Wenn ich auf eine Seite komm bei der ein 3Seiten langer Quellcode aufgelistet ist, dann ist es besser noch ein paar Erläuterungen dazu zu machen, damit man nicht einfach davorsteht. ![]() dann vekommt dieser Thread vermutlich nie eine Antwort. ![]() Erklär das noch einmal, dann wird dir besser geholfen. ![]() |
||
![]() |
Firstdeathmaker |
![]() Antworten mit Zitat ![]() |
---|---|---|
Generell, wenn du etwas auf ein Ziel zufliegen lassen möchtest, solltest du dir Atan2 anschauen. Dazu vielleicht für die Kugeln Types verwenden, bei denen du die Zielkoordinaten abspeicherst (tx und ty hier im Beispiel)
Code: [AUSKLAPPEN] Global GFX_X = 400
Global GFX_Y = 300 Graphics GFX_X,GFX_Y,32,2 SetBuffer BackBuffer() Type kugel Field x#,y#,speed#,direction# Field tx,ty End Type Function kugel_update() For k.kugel = Each kugel k\direction = ATan2(k\tx-k\x,k\y-k\ty) k\x = k\x + Sin(k\direction) * k\speed k\y = k\y -Cos(k\direction) * k\speed Oval k\x-5,k\y-5,10,10,1 Next End Function Function kugel_create() k.kugel = New kugel k\x = GFX_X/2 k\y = GFX_Y k\tx = MouseX() k\ty = MouseY() k\speed = 0.5 End Function Repeat Cls If MouseHit(1) kugel_create() kugel_update() Flip Until KeyHit(1) End |
||
www.illusion-games.de
Space War 3 | Space Race | Galaxy on Fire | Razoon Gewinner des BCC #57 User posted image |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group