Menue Desing

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

Yankee

Betreff: Menue Desing

BeitragDo, Apr 20, 2006 18:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,
Ich wollt mal fragen, wie ihr euer menue immer macht oder erstellt.
Bei mir ist naehmlich der Fehler, dass mein Menue net so wirklich functioniert....
Hier seht ihrs:
Code: [AUSKLAPPEN]

While True
   SetFont art
   ladenundsetzten
   ;das menue
   If KeyHit(200) Then
      menunr = menunr - 1
      If menunr < 1 Then menunr = 3
   EndIf
   If KeyHit(208) Then
      menunr = menunr + 1
      If menunr > 3 Then menunr = 1
   EndIf
   Text 320, 240, "PLAY"
   Text 320, 300, "options"
   Text 320, 360, "EXIT"
   If KeyHit(28) Then
      If menunr = 1 Then
         While (me_panzer Or anime_panzer) > 0
            Cls
            pruefetasten
            update_anime
            updateme_umgebung
            Flip
         Wend
      EndIf
      If menunr = 2 Then
         menuoptions = 1
         While menuoptions = 1
            Cls
            Color 255,0,255
            Text 320, 100, "Move with <- and ->. You can shoot with Leertaste^^"
            Color 255,0,255
            Text 320, 240, "Back"
            If KeyHit(28) Then menuoptions = 0
            DrawImage me, 280, 240
            DrawImage anime, 360, 240
            Flip
         Wend
      EndIf
      If menunr = 3 Then End
   EndIf
   If menunr = 1 Then
      DrawImage me, 280, 240
      DrawImage anime, 360, 240
   EndIf
   If menunr = 2 Then
      DrawImage me, 280, 300
      DrawImage anime, 360, 300
   EndIf
      If menunr = 3 Then
      DrawImage me, 280, 360
      DrawImage anime, 360, 360
   EndIf
   Flip
Wend

Wenn ihr Vorschlaege habt, wie ich es besser machen koennte, dann bitte sagt mir wie....
Danke im Vorraus, Yankee
Um so kleiner der code, um so schwieriger den Fehler zu finden:


Siehst du den Fehler?
Klick mal hier drauf... hehehe
 

feider

ehemals "Decelion"

BeitragDo, Apr 20, 2006 21:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Bei mir findet er die Funktion "ladenundsetzen" nicht.
Falls das dein Problem sein sollte, dann schreibe ienfach eine Funktion mit dem Namen "ladenundsetzen", denn es excistiert keine.

cu
wammerl

PowerProgrammer

BeitragDo, Apr 20, 2006 21:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja, es fehlen sehr viele Funktionen im Code! Immer irgend ein Fehler!
 

icestorm

BeitragFr, Apr 21, 2006 8:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Mach das ganze lieber mit Funktionen, anstatt alles in einer Wurst zu schreiben. Bei einem großen Spiel verlierst du sonst die Übersicht.

Und statt

Code: [AUSKLAPPEN]
If KeyHit(28) Then
    If menunr = 1 Then


würde ich eher

Code: [AUSKLAPPEN]
If KeyHit(28) And menunr = 1 Then ...


machen, wär möglicherweiße auch übersichtlicher, aber du musst deinen Programmierstil so setzen, wie du es meinst Wink

Ich hab auch ein Menu gemacht, ist ganz einfach, verwendet keine Bilder, deshalb ist es nicht schön, aber es kann als Ansatz dienen, wobei es
natürlich besser ist, wenn du den Code verstehst und dann mit einem leeren Bildschirm anfängst.

BlitzBasic: [AUSKLAPPEN]

;################
;##(c) Simon Doppler###
;####aka icestorm####
;################

Graphics 640, 480

font1 = LoadFont("Comic Sans MS", 40, 1, 0, 0)
font2 = LoadFont("Times New Roman", 40, 1, 0, 0)
SetFont font1

SetBuffer BackBuffer()

Markiert = 1

Repeat
Cls

If Markiert = 1 Then
SetFont font2
Text 150, 100, "Start"
;FreeFont font2
Else
SetFont font1
Text 150, 100, "Start"
;FreeFont font1
EndIf

If Markiert = 2 Then
SetFont font2
Text 150, 200, "Einstellungen"
;FreeFont font2
Else
SetFont font1
Text 150, 200, "Einstellungen"
;FreeFont font1
EndIf

If Markiert = 3 Then
SetFont font2
Text 150, 300, "Ende"
;FreeFont font2
Else
SetFont font1
Text 150, 300, "Ende"
;FreeFont font1
EndIf

If KeyHit(208) Then
Markiert = Markiert + 1
EndIf
If KeyHit(200) Then
Markiert = Markiert - 1
EndIf

If Markiert > 3 Then Markiert = 3
If Markiert < 1 Then Markiert = 1

If KeyHit(28) Then
If Markiert = 1 Then Start()
If Markiert = 2 Then Einstellungen()
If Markiert = 3 Then End
EndIf

Flip

Until KeyHit(1)
End

Function Start()
Repeat
Cls
Text 200, 150, "START"
X = MouseX()
Y = MouseY()
Rect X, Y, 12, 6, 1
Flip
Until KeyHit(1)
End Function

Function Einstellungen()
Repeat
Cls
Text 200, 150, "EINSTELLUNGEN"
X = MouseX()
Y = MouseY()
Rect X, Y, 12, 6, 1
Flip
Until KeyHit(1)
End Function


Hoffe ich konnte ein bisschen helfen.
Hier habe ich auch Functionen verwendet, noch übersichtlicher wird es bei einem langen Code wahrscheinlich mit Include.

Yankee

BeitragFr, Apr 21, 2006 10:54
Antworten mit Zitat
Benutzer-Profile anzeigen
Oki,
Danke nochmal fuer alles Very Happy Very Happy Very Happy
Jetzt hab ich ein gescheides Menu....
Endlich...^^
Vielen Danke nochmal,

Yankee
Um so kleiner der code, um so schwieriger den Fehler zu finden:


Siehst du den Fehler?
Klick mal hier drauf... hehehe

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group