Space Shouter funktioniert nicht
Übersicht

biosoBetreff: Space Shouter funktioniert nicht |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi Leute,
ich bins mal wieder und habe mal wieder ein Problem: Ich möchte das die Aliens schiesen aber wie geht das (Hinweis: Den Anfang des Queltextes habe ich aus einem Buch, stammt also nicht von mir.) Und hier mein Quelltext: Graphics 640, 480 ;SetBuffer BackBuffer() hinter = LoadImage("Graphiken\stars.bmp") schiff = LoadImage("Graphiken\spaceship2.bmp") alienbild = LoadImage("Graphiken\player.bmp") rakete = LoadImage("Graphiken\bullet.bmp") explosion = LoadAnimImage("Graphiken\kaboom.bmp", 60,46, 0,6) schusston = LoadSound("Sound\soundfx11.wav") trefferton = LoadSound("Sound\soundfx16.wav") energie = LoadImage("Graphiken\Kreuz.bmp") gegner = LoadImage("Graphiken\gegner2.bmp") ;animation = LoadAnimImage("Graphiken\Asteroid23.bmp", 40,40, 0,8) gegnerrakete = LoadImage("Graphiken\Gegnerrakete.bmp") Dim touch(5) Dim Rak(100,2) Dim Alien(5,2) Dim AlienExplodiert(5,1) Dim Spieler(1) Dim SpielerExplodiert(1) Dim Punkte23(5) Repeat Cls H = H+1 If H=200 Then H=0 TileBlock hinter,0,H DrawImage schiff, X,Y ; Schuß-Test If KeyHit(57) Then Schuss = Schuss + 1 If Schuss = 101 Then Schuss = 1 Rak(Schuss,0) = 1 Rak(Schuss,1) = X+10 Rak(Schuss,2) = Y-19 PlaySound(schusston) EndIf ;Raketen zeichnen For I=1 To 100 If Rak(I,0) = 1 Then DrawImage rakete, Rak(I,1), Rak(I,2) Rak(I,2) = Rak(I,2) - 10 EndIf Next ; Rand-Überschreitung verhindern If X < 0 Then X = 0 If X > 609 Then X = 609 If Y < 0 Then Y = 0 If Y > 449 Then Y = 449 ; Pfeiltasten abfragen If KeyDown(200) = 1 Then Y = Y - 1 If KeyDown(208) = 1 Then Y = Y + 1 If KeyDown(205) = 1 Then X = X + 2 If KeyDown(203) = 1 Then X = X - 2 ; Schuß-Test If KeyHit(57) Then Schuss = Schuss + 1 If Schuss = 101 Then Schuss = 1 Rak(Schuss,0) = 1 Rak(Schuss,1) = X+10 Rak(Schuss,2) = Y-19 PlaySound(schusston) EndIf ;Raketen zeichnen For I=1 To 100 If Rak(I,0) = 1 Then DrawImage rakete, Rak(I,1), Rak(I,2) Rak(I,2) = Rak(I,2) - 10 EndIf Next ; Game Over ; --------- If startenergie = 0 Then Text 100,100, "YOU LOSE - THE ALIENS INVADED EARTH" WaitKey End EndIf ; Kollision testen For I=1 To 100 If Rak(I,0) <> 0 Then For J=1 To 5 If ImagesOverlap(gegner, Alien(J,1), Alien(J,2), rakete, Rak(I,1),Rak(I,2)) Then PlaySound(trefferton) Alien(J,0) = -1 Punkteberechnung(J) Else Punkte23(J) = False EndIf Next EndIf Next ; Energie Anzeige Text 9,10,"Energie:" Text 75,10,startenergie, "" ; Punkte Anzeige Text 20,50, "Punkte:" Text 60,90,punkte, "" ; Gegner Kollision ; ---------------- For J=1 To 5 If ImagesOverlap(schiff, X, Y, gegner, Alien(J,1), Alien(J,2)) Then EnergieAbzug(J) Else touch(J) = False EndIf Next ; Explosion Alien zeichnen For I=1 To 5 If (Alien(I,0) = -1) Then If AlienExplodiert(I,1) + 100 < MilliSecs() Then AlienExplodiert(I,0) = AlienExplodiert(I,0) + 1 AlienExplodiert(I,1) = MilliSecs() If AlienExplodiert(I,0) = 6 Then AlienExplodiert(I,0) = 0 AlienExplodiert(I,1) = 0 Alien(I,0) = 0 EndIf EndIf DrawImage explosion, Alien(I,1), Alien(I,2), AlienExplodiert(I,0) EndIf Next ; Level If punkte > 4000 Then Include "Level2.bb" EndIf ; Alien schiest ; Hier kommt dan der Teil wo das Alien schiest ; Raketen zeichnen ; Hier kommt der Teil wo die Rakete gezeichnet wird ; Raketen Kolision mit Spieler ; Hier soll der Teil stehen, wo der Spieler von einer Rakete getroffen wird. ; Alien-Steuerung For I=1 To 5 If Alien(I,0) = 0 Then Alien(I,0) = Rand(100,400) Alien(I,1) = Rand(-20,640) Alien(I,2) = Rand(-100,0) EndIf If Alien(I,0) <> -1 Then Alien(I,2) = Alien(I,2) + 1 Alien(I,1) = 320 + Sin( Alien(I,2) ) * Alien(I,0) EndIf If Alien(I,2) > 480 Then Alien(I,0) = 0 If Alien(I,0) <> -1 Then DrawImage gegner, Alien(I,1), Alien(I,2) Next Flip Until KeyDown(1) End ich hoffe ihr könnt mir helfen, ich habe noch nicht so viel Erfahrung ich programmiere auch erst seit ein paar Wochen. Bitte schnell antworten. Steffen, 14 |
||
bioso |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Warum antwortet mir keiner????? | ||
Edlothiol |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
1. Benutze [code] - Tags.
2. Kommt das ganz drauf an wann die Aliens schießen sollen etc. Gib mal ein paar genauere Infos. |
||
bioso |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ja ich möchte das die Aliens schießen wenn sie ungefähr in der Mitte sind. | ||
![]() |
Hubsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] If alien_x>250 And alien_x<390
If MilliSecs()>timer+1500 timer=MilliSecs() alien_schiesst=True End If End If If alien_schiesst ; Schuss bewegen ; Randüberschreitung prüfen ; Wenn getroffen oder Rand überschritten ; alien_schiesst=False setzen EndIf So schiesst das Alien alle 1.5 Sekunden wenn es ca. mittig des Schirms ist. |
||
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn... |
bioso |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke für deine Hilfe aber wie mache ich das mit dem Schuss bewegen ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group