´Global´ can only appear in main programm
Übersicht

ekk1998Betreff: ´Global´ can only appear in main programm |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das ist ja eigentlich selbsterkärend ,aber ich hab keine Lust die ganzen Globals vom Spiel ins Hauptmenü zu kopieren. Gibt es da einen Trick ?
Hauptmenücode: Code: [AUSKLAPPEN] Graphics 800, 600
SetBuffer BackBuffer() Print "1 = Spiel starten" Print "2 = Optionen" Print "3 = Credits" Print "4 = Beenden" .a Wahl$ = Input () If Wahl = "1" Then Include "Spiel.bb" ElseIf Wahl = "2" Include "Optionen.bb" ElseIf Wahl = "3" Include "Credits.bb" ElseIf Wahl = "4" End Else Goto a EndIf Danke im Vorraus ! |
||
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Include verwendet man so nicht. Du includierst Funktionen am Anfang des Codes - man lagert nicht beliebigen Code einfach so aus.
GoTo kannst du dir auch gleich abgewöhnen, das beides führt nur zu unnützem Code den Niemand versteht. Benutz Funktionen & richtige Schleifen. |
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
Midimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mit INCLUDE fügst Du ganz oben in deinem Programm weitere Texte dem Original-Script an. Dies macht man nur, um nicht zu viel Text auf der Hauptseite des Programm stehen zu haben.
Innerhalb des eigentlichen Programms darfst Du INCLUDE gar nicht mehr verwenden. Mein Tipps: 1. Solange Dein Code unter 500 Zeilen hat, hältst Du ihn auf einer Seite. 2. Das Hauptprogram ist eine REPEAT/UNTIL-Schleife, das in die Unterrogramme verzweigt. 3. Verwende IMMER dieses Grundgerüst: BlitzBasic: [AUSKLAPPEN] Graphics 800,600 4. Wenn Du nun in verschiedene Unterpgramme verzweigen willst, dann machst Du die Abfrage nicht auch in diese REPEAT-Schleife, sondern die ist schon ein eigenes Unterpgramm: BlitzBasic: [AUSKLAPPEN] Graphics 800,600 Da Wahl% am Anfang 0 ist wird automatisch in das Unterprogramm MENU() gesprungen. Wenn du dort rauskommst ist Wahl nicht mehr 0 und dadurch wird jetzt eines der andern Unterpgramme angesprungen. Als Beispiel für eines der anderen Unterprogramme zeige ich dir CREDITS(). BlitzBasic: [AUSKLAPPEN] Function Credits() CREDITS() ist wieder eine REPEAT-Schleife (Die andern werden mich dafür schlachten, aber machs am Anfang ruhig mal so), die mit ESC verlassen werden kann. Der Witz ist, das es am Ende die Variable Wahl% wieder auf 0 stellt und dadurch das Hauptprogramm wieder nach MENU verzweigen wird. Ich rate Dir dringend mal die ersten Kapitel aus diesen beiden Tutorials zu lesen: https://www.blitzforum.de/foru...hp?t=34436 https://www.blitzforum.de/foru...hp?t=33584 |
||
Gewinner des BCC #53 mit "Gitarrist vs Fussballer" http://www.midimaster.de/downl...ssball.exe |
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wozu immer wieder CLS, Flip usw. in jede Funktion packen? Die Funktionen liegen doch schon wunderbar an der richtigen Stelle. | ||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
Midimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
@xeres
weil das wahrscheinlich jetzt gleich mal auf den Restcode passt, den er sowieso schon hat! Ich bin überzeugt, dass ihm der Lernschritt von mir für heute erst mal reicht! |
||
Gewinner des BCC #53 mit "Gitarrist vs Fussballer" http://www.midimaster.de/downl...ssball.exe |
![]() |
BaseTH |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hab ich was verpasst?
Ich finde die Frage von Xeres sehr berechtigt. Es reicht doch in der Hauptschleife CLS und Flip. Alles andere ist doch überflüssiger Code oder sehe ich das falsch? Gruß, BaseTH |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich halte es für mehr als bedenklich User an die Benutzung mehrerer CLS und Flip zu gewöhnen, da sich in der Vergangenheitz gezeigt hast dass viele BeginnerProbleme mit "flackernden Bildschirmen" oder "Hilfe meine Grafik wird nicht gezeichnet" genau daher rührten. | ||
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 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group