Mehrere Probleme beim Spiel

Übersicht BlitzBasic Beginners-Corner

Gehe zu Seite Zurück  1, 2, 3  Weiter

Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.

 

Banane

BeitragDi, Jan 05, 2010 15:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Okay danke Smile Dann noch meine letze Frage (Glaube und Hoffe ich)

Wie kann ich mehrere Level miteinander verknüpfen?
Will es jetzt so machen das man immer nach 50 Punkten ins nächste level aufsteigt und vorher ein kleines Bild kommt wo das Level steht also nach 50 Punkten : Du bist jetzt in Level 2 usw.

Und das die Fallenden Bananen von Level zu Level mehr werden
Level 1 : 2,5 Sekunden = Nach 2,5 Seks kommt eine Neue Banane
Level 2 : 2 Seks
Level 3 : 1,5 Seks
Level 4 : 1 Sek
Leve 5 : 0,5 Sek

und das nach Level 5 sobald man da 50 Punkte hat noch ein Letzes bild kommt und das spiel dann noch endet

count-doku

BeitragDi, Jan 05, 2010 15:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Das ist ebenfalls ganz einfach.
Du nimmst in der Schleife wo neue Bananen erstellt werden eine Var rein die die Zeit enthält.
Dann zählst du wie viele Bananen durchgekommen sind und wenns 50 waren dann verkürzt du diese Zeit und zeigst noch ein Bild an.

In diesem Code ist z_nextbanana die Zeit bis eine neue erstellt wird.
Code: [AUSKLAPPEN]
If nextbanana+z_nextbanana<MilliSecs() ;nach z_nextbanana Milisekunden eine neue Banane erstellen
         Banana.TBanana=New TBanana
         Banana\img=Banane
         Banana\x=Rand(30,690):Banana\y=0;Bananen x pos zufällig,y pos = 0
         Banana\life=True
         nextbanana=MilliSecs()
      End If


Um zu wissen wie viele durch sind nimmste einfach die Score:
Code: [AUSKLAPPEN]
If Score=50
         z_nextbanana=2000
      ElseIf Score=100
         z_nextbanana=1500
      ElseIf Score=150
         z_nextbanana=1000
      ElseIf Score=200
         z_nextbanana=500
      End If

Dort muss du halt noch das Level UP Bild anzeigen.
Und am Anfang muss du z_nextbanana noch mit 2500 definieren.
 

Banane

BeitragDi, Jan 05, 2010 16:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Also das mit dem schließen sobald ich 0 Punkte habe funktioniert nicht richtig ds spiel beendet sich zwar nach 5 sekunden aber das bild Verloren taucht nicht auf ich glaube weil das dann hinter dem normalen hintergrund liegt :I

count-doku

BeitragDi, Jan 05, 2010 16:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Dann machst du halt bevor du da Verloren Bild zeichnest CLS und danach Flip.
 

Banane

BeitragDi, Jan 05, 2010 16:16
Antworten mit Zitat
Benutzer-Profile anzeigen
geht irgendwie nicht =I das Hintergrundbild bleibt trotzdem darüber
Code: [AUSKLAPPEN]
 Cls

Verloren=LoadImage ("verloren.bmp")
If p_life=0  Then
DrawImage verloren,0,0
Delay(5000)
End
EndIf

Flip




So hab ich das momentan

und das mit dem neuen Lvl versteh ich auch nicht ganz ich habs zwar reingetan ( auch probiert zu verstehen Wink ) aber es funktioniert nicht =I und was sind eigntlich vars?
  • Zuletzt bearbeitet von Banane am Di, Jan 05, 2010 16:24, insgesamt einmal bearbeitet

BladeRunner

Moderator

BeitragDi, Jan 05, 2010 16:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Bitte benutze der Übersichtlichkeit wegen die [code]-Tags wenn Du Code einstellen willst. Sie sind über der Textbox zu finden.
Danke.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

count-doku

BeitragDi, Jan 05, 2010 17:00
Antworten mit Zitat
Benutzer-Profile anzeigen
Vars ist Abkürzung für Variablen.

Komisch, bei mir funzt das mitm neuen Lvl. Die Bananen rutschten halt immer schneller runter.

Du musst das Cls und Flip an die richtige Stelle machen.
Sonst stimmts schon.

Kopier einfach nochmal den kompletten Code vllt. ist da einfach nur ein kleiner Fehler drin:
Code: [AUSKLAPPEN]
Graphics 800, 600, 32, 2

AppTitle "I am Banana!"
SetBuffer BackBuffer()

Global VSYNC = CreateTimer(60)
Global menu1 = LoadImage ("menu.bmp")
Global menu2 = LoadImage ("menu2.bmp")
Global musik = LoadSound ("Music.wav")
Global Banane=LoadImage ("banane.bmp")
ScaleImage Banane,0.2,0.2;
Global Player=LoadImage ("Player.bmp");
MaskImage Player,255,255,255;
ScaleImage Player,0.3,0.3;
Global Verloren=LoadImage("verloren.bmp")

SeedRnd MilliSecs()

Type TBanana;Type für Bananen definieren
   Field img,x,y,life
End Type
Global menu
Global Banana.TBanana
menu = 1 ; Menu=1 --> Hauptmenu, Menu=2 -->Rules, Menu = 3 --> Options,Menu = 4 --> Spiel, Leertaste zurück ins Hauptmenu

FlushKeys() ; Tastaturpuffer löschen
Repeat
   WaitTimer (VSYNC)
   Cls
   Select menu
      Case 0
         DrawGame()
      Case 1
         DrawBlock menu1, 0, 0
      Case 2
         DrawBlock menu2, 0, 0
      Case 3
         ;DrawBlock menu3, 0, 0
   End Select
   
; Wenn ESC dann Programm beenden
   If KeyHit(1) Then End
   KeyControll() ; Funktion KeyControll aufrufen
   
   Flip
Forever
Function KeyControll()
; Wenn Taste <ENTER> dann diese Schleife verlassen und nach Forever weiter --> zur Spielschleife oder
   If KeyDown(28)
      menu = 0
; Wenn Taste <R> oder <r> dann die RULES aufrufen
   ElseIf KeyDown(19)
      menu = 2
   ElseIf KeyDown(57)
      menu = 1
   EndIf
End Function

;----------------------------------Spiel----------------------------------;
Function DrawGame()
   Banana.TBanana=New TBanana
   Banana\img=Banane
   Banana\x=Rand(30,690):Banana\y=0
   Banana\life=True
   Local nextbanana=MilliSecs()
   Local Score=0,p_life=5
   Local lvlscore=50;Zum lvl benötigte Score
   Local z_nextbanana=2500; Zeit bis die nächste Banane erstellt wird.
   ;LoopSound musik
   ;PlaySound musik
   Local a=550,b=386
   Color 255,0,0
   While (Not KeyHit(1)) And menu=0;
      Cls
      Text 1,1,"Punkte: "+Score+" | Leben: "+p_life;Punkte auf den Bildschirm schreiben
      If KeyDown(32)
         a=a+5 ;Rechts
      EndIf;
      
      If KeyDown(30);
         a=a-5;Links
      EndIf;
      
      If a<20;
         a=20;Rand
      EndIf;
      If a>700;
         a=700;Rand
      EndIf;
      For Banana.TBanana=Each TBanana;Alle Bananen nachunten bewegen, auf Collision prüfen dann evtl.löschen.
         Banana\y=Banana\y+1
         DrawImage Banana\img,Banana\x,Banana\y;
         If ImagesCollide (Player,a,b,0,Banana\img,Banana\x,Banana\y,0);
            p_life=p_life-1
            Banana\life=0
         EndIf
         If Banana\y>600
            Banana\life=0
            Score=Score+1
         End If
         If Banana\life=0
            Delete Banana.TBanana
            Exit
         End If
      Next
      If nextbanana+z_nextbanana<MilliSecs() ;nach 2.5 Sekunden eine neue Banane erstellen
         Banana.TBanana=New TBanana
         Banana\img=Banane
         Banana\x=Rand(30,690):Banana\y=0;Bananen x pos zufällig,y pos = 0
         Banana\life=True
         nextbanana=MilliSecs()
      End If
      DrawImage Player,a,b;Spieler zeichnen
      WaitTimer VSYNC
      Flip 0
      If p_life<= 0
         Cls
         DrawImage Verloren,0,0
         Flip
         Delay 5000
         menu=1
      End If
      If Score=lvlscore
         z_nextbanana=2000
      ElseIf Score=lvlscore*2
         z_nextbanana=1500
      ElseIf Score=lvlscore*3
         z_nextbanana=1000
      ElseIf Score=lvlscore*4
         z_nextbanana=500
      End If
   Wend;
   menu=1
End Function


Wenn dir das lvln zu lange dauert kannste die nötige Score oder die Zeit zum neu erstellen runtersetzten.
Veränder dafür einfach mal die Variablen z_nextbanana und/oder lvlscore.


mfg,
count-doku
 

dennis94

BeitragDi, Jan 05, 2010 17:31
Antworten mit Zitat
Benutzer-Profile anzeigen
..,
 

Banane

BeitragDi, Jan 05, 2010 17:33
Antworten mit Zitat
Benutzer-Profile anzeigen
VIelen Dank !!!
Hab jetzt nur noch 1 problem und zwar das hinterrndbild ist weg
Egal wo ic das hinsetze es kommt nur nen schwarzer HIntergrund

BladeRunner

Moderator

BeitragDi, Jan 05, 2010 17:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich warte auf die Erläuterung, banane.
Solltest Du nicht rasch antworten wird dein Account gesperrt und dennis94 verwarnt wegen der Nutzung eines Doppelaccounts.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Jamagin

BeitragDi, Jan 05, 2010 17:38
Antworten mit Zitat
Benutzer-Profile anzeigen
hm... diese Menüstruktur hab ich für Benjamin entworfen. Keine Ahnung welchen Nick der jetzt hat! Komisch. wie kommst du auf das @Banana??

Will nicht kritisieren aber deine Fragen sind genau so ausgelegt, bitte mach mir ein Spiel. Sowas nennt man nicht mal annähernd programmieren, wenn man selbst nichts macht. Deine Fragen beantwortest du eh schon selber, also mach es auch so. Nur durch Übung wird man gut und nicht durch mach mir dies und jenes. Natürlich helfen wir gerne, wenn wer Probleme hat beim programmieren aber ob das im Sinne des Erfinders ist...!

Na ich weiß nicht, würde aber gerne wissen, wer sich mit meinen Lorbeeren ausruht? Ich kann dir gerne ein Codebeispiel schicken, was das Menü und so weiter anbelangt!

Bin niemanden neidig, doch sollte man der Fairness halber erwähnen, von wem der Code ist und nicht einfach kopieren und sagen, ey, das hab ich gemacht!!

Ich bin da etwas enttäuscht darüber aber es muß ja jeder selber wissen, ob ihm programmieren spass macht oder ob das sich erstellen lassen lustiger ist!!


Jamagin Evil or Very Mad
Bevor du etwas neues beginnst, erledige das alte
  • Zuletzt bearbeitet von Jamagin am Di, Jan 05, 2010 17:48, insgesamt 2-mal bearbeitet
 

Banane

BeitragDi, Jan 05, 2010 17:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Handelt sich nicht um nen Doppelaccount ich bin nur bei nem Freund weil wir das grade zusammen machen und ich ausversehen mit seinem Account geschrieben habe.

BladeRunner

Moderator

BeitragDi, Jan 05, 2010 17:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Und weshalb macht ihr mehrere Threads zu einer Frage auf?
Lasst den Unsinn in Zukunft. Sollte sich nochmal sowas ereignen werden wir wie beschrieben vorgehen.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

Banane

BeitragDi, Jan 05, 2010 17:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Sind ja verschiedene sachen er hat nen ganz anderes spiel als ich daher auch die verschiedenen fragen & die verschiedenen threads

BladeRunner

Moderator

BeitragDi, Jan 05, 2010 17:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Ihr fragt beide wie man die Punkte anzeigt. Wenn ihr ja beieinander sitzt sprecht euch ab. Ich behalte euch im Auge.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

Banane

BeitragDi, Jan 05, 2010 17:45
Antworten mit Zitat
Benutzer-Profile anzeigen
EHm also ich hab dann noch 1 Frage :

Wenn das Spiel zu ende ist und ich wieder ins Hauptmenü gelange läuft die Musik immernoch weiter und beim erneuten Spielstart fängt das lied wieder von vorne an, und das andere läuft weiter.

Habs mit StopCHannel probiert aber da kommt nur Illegal Type COnversation
und mit dem Hintergrund funktionierts leider immernoch nicht =I

Edit : Ja ok Blade sorry wir passen demnächst auf Very Happy

Jamagin

BeitragDi, Jan 05, 2010 17:48
Antworten mit Zitat
Benutzer-Profile anzeigen
@BANANA

LESEN DER ONLINEHILFE UND DEREN BEFEHLE UND AUSPROBIEREN WÜRDE AUCH HELFEN!!

mein letzter Beitrag wurde ignoriert, hier nochmals zum Lesen!!

hm... diese Menüstruktur hab ich für Benjamin entworfen. Keine Ahnung welchen Nick der jetzt hat! Komisch. wie kommst du auf das @Banana??

Will nicht kritisieren aber deine Fragen sind genau so ausgelegt, bitte mach mir ein Spiel. Sowas nennt man nicht mal annähernd programmieren, wenn man selbst nichts macht. Deine Fragen beantwortest du eh schon selber, also mach es auch so. Nur durch Übung wird man gut und nicht durch mach mir dies und jenes. Natürlich helfen wir gerne, wenn wer Probleme hat beim programmieren aber ob das im Sinne des Erfinders ist...!

Na ich weiß nicht, würde aber gerne wissen, wer sich mit meinen Lorbeeren ausruht? Ich kann dir gerne ein Codebeispiel schicken, was das Menü und so weiter anbelangt!

Bin niemanden neidig, doch sollte man der Fairness halber erwähnen, von wem der Code ist und nicht einfach kopieren und sagen, ey, das hab ich gemacht!!

Ich bin da etwas enttäuscht darüber aber es muß ja jeder selber wissen, ob ihm programmieren spass macht oder ob das sich erstellen lassen lustiger ist!!


Jamagin Evil or Very Mad
Bevor du etwas neues beginnst, erledige das alte

count-doku

BeitragDi, Jan 05, 2010 17:51
Antworten mit Zitat
Benutzer-Profile anzeigen
Du musst den Channel den dir Playsound angibt speichern(in einer Variable) und dann
StopChannel mit dieser Variable nutzen.

Das mit dem Bild verstehe ich nicht, weil es bei mir super läuft.


mfg,
count-doku

P.S. sieh mal in dein PN
 

Banane

BeitragDi, Jan 05, 2010 17:52
Antworten mit Zitat
Benutzer-Profile anzeigen
HEy Sorry Jamagin

JA das Menü hab ich von Ben er hats mir netterweise gegeben weil ichs ebenfalls gebraucht habe Smile
Hoffe das ist für dich OK das ich das benutze und Vielen Dank dafür sorry für die unanehmlichkeiten

Nicdel

BeitragDi, Jan 05, 2010 17:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich stimme Jamagin zu. Du solltest nicht nach jedem Codestück fragen, versuch selber etwas zu machen, es hilft Tutorials zu lesen und zu verstehen.
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7

Gehe zu Seite Zurück  1, 2, 3  Weiter

Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group