Mehr Waffen, mehr Level, unendliches Spiel ;)

Du brauchst Grafiken, gute Programme oder Leute die dir helfen? Frag hier.
Benutzeravatar
Kaisky007
Beiträge: 83
Registriert: 25.05.2008 20:58

Beitrag von Kaisky007 »

Hab es jetzt so:
Level1 = Weapon1, Normaler Gegner
Level2 = Weapon2, LangsamSchnellGegner
Level3 = Weapon3, LangsamSchnellGegner, LinksRechstsGegner
http://web56.login-1.loginserver.ch/eas ... 2125104111
Danke RSBASIC für die Sounds =)
Benutzeravatar
Kaisky007
Beiträge: 83
Registriert: 25.05.2008 20:58

Beitrag von Kaisky007 »

Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

so kann man einfach hintergrundsprites erstellen:

Code: Alles auswählen

InitSprite()
InitKeyboard()
OpenScreen(1024,768,32,"StarDemo")

For n=0 To 8  ; 9 sprites erzeugen
  CreateSprite(n, 512, 384 )
  StartDrawing(SpriteOutput(n))
    Box(0,0,512,384,$201008)  ; Hintergrundfarbe nicht ganz schwarz
    For t=0 To 499  ; 500 Sterne drauf
      Plot( Random(511), Random(383), RGB( Random(155)+100, Random(155)+100, Random(155)+100 ) )
      ; zufallspositionen, zufallsfarben
    Next
  StopDrawing()
Next
stellt 9 sprites her, die man als 3x3 matrix bildfüllend durch den 1024x768 screen scrollen kann.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Kaisky007
Beiträge: 83
Registriert: 25.05.2008 20:58

Beitrag von Kaisky007 »

@Kaeru, Funzt bei mir irgendwie nicht

Jetzt gibt es ein Level mehr und eine Waffe mehr, und ne Punkte Liste. jeder abgeschossene Gegner bringt 5, jeder durchgekommene - 100

http://web56.login-1.loginserver.ch/eas ... 2125104111
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

> @Kaeru, Funzt bei mir irgendwie nicht
doch, wird nur nicht dargestellt.
das ist nur der code zum erzeugen.
steht aber auch in meinem posting und sieht man auch.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Kaisky007
Beiträge: 83
Registriert: 25.05.2008 20:58

Beitrag von Kaisky007 »

ich habe ja auch ein repeat und until gesetzt, aber dann ist nur schwarzer bildschirm
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

ja du musst auch die sprites 0 bis 8 display, in einer 3x3 anordnung.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Kaisky007
Beiträge: 83
Registriert: 25.05.2008 20:58

Beitrag von Kaisky007 »

Egal....
Ich habe ein anderes Problem mit der Explosion:

Code: Alles auswählen

ForEach Schuss() 
  Schuss()\SchussY - 16 
  Schuss()\SchussX + Schuss()\SchussS 
  DisplayTransparentSprite(2,Schuss()\SchussX ,Schuss()\SchussY) 
  ForEach Ufo1() 
    If Schuss()\SchussY + 16 > Ufo1()\Ufo1Y And Schuss()\SchussY < Ufo1()\Ufo1Y + 16 
      If Schuss()\SchussX + 8 > Ufo1()\Ufo1X And Schuss()\SchussX < Ufo1()\Ufo1X + 16
        DeleteElement(Schuss()) 
        Ufo1()\Ufo1L - 20
        If Ufo1()\Ufo1L < 0
          AddElement(Explosion())
          Explosion()\ExplosionX = Ufo1()\Ufo1X
          Explosion()\ExplosionY = Ufo1()\Ufo1Y
          Explosion()\ExplosionW = 30
          DeleteElement(Ufo1())
          Score + 5
          PlayMovie(2,0)
          Break
        EndIf
      EndIf 
    EndIf 
  Next 
Next

ForEach Explosion()
  Explosion()\ExplosionW - 1
  If Explosion()\ExplosionW < 0
    DeleteElement(Explosion())
    Break
  EndIf
  DisplayTransparentSprite(4,Explosion()\ExplosionX,Explosion()\ExplosionY) 
Next
Ich hatte schonmal nen tema aufgemacht mit den schießen.
Hier ähnliches problem, aber ich weiß nicht was falsch ist... wahrscheinlich habe ich das immer noch nicht verstanden.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

ich würde es erst anzeigen und dann runterzählen,
sonst versuchst du ja am ende etwas anzuzeigen, was schon gelöscht ist.

Code: Alles auswählen

ForEach Explosion()
  DisplayTransparentSprite(4,Explosion()\ExplosionX,Explosion()\ExplosionY)
  Explosion()\ExplosionW - 1
  If Explosion()\ExplosionW < 0
    DeleteElement(Explosion())
    Break
  EndIf
Next
außerdem würde ich bei 30 frames anzeigezeit eine animierte explosion anzeigen.
dazu müsstest du nur z.b. die sprites 4-9 für sechs explosionsphasen einrichten,
dann kannst du die spritenummer 4 in deinem beispiel durch 4 + Explosion()\ExplosionW / 6 ersetzen,
da kommt dann für die werte 0-30 eben 4-9 bei raus.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Antworten