Include Problem [noch nicht gelöst]
Übersicht

![]() |
maboxBetreff: Include Problem [noch nicht gelöst] |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo ich will in ein Spiel ein Menü einbinden. Das Menü soll logischerweise zuerst gestartet werden. Vom Menü kommt man über einen Klick ins Spiel. Wenn man mit dem Spiel fertig ist oder Esc drückt gehts wieder ins Menü.
Wie würdet ihr das lösen??? habs schon mit include versucht, is aber nix sinnvolles herausgekommen. Ich könnte natürlich auf Execfile benützen..............weis aber nicht ob das sinnvoll ist (Ausserdem brauchts dann mehr Speicherplatz). Das Menü und das Spiel sind einzelne Dateien und ich will sie aus Übersichtlichkeitsgründen nicht zu einer vereinen. |
||
Fujitsu-Siemens Laptop, 2Ghz Intel Core2Duo Prozessor, 2GB Ram, 120GB Festplatte, ATI Mobility Radeon X1400, Windows Vista Ultimate
www.mausoft.de.tl Dönerfresser Homepage |
- Zuletzt bearbeitet von mabox am Mi, Okt 17, 2007 17:24, insgesamt 2-mal bearbeitet
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wo das Menü hinkommen sollte machst du das include rein ôo | ||
![]() |
mabox |
![]() Antworten mit Zitat ![]() |
---|---|---|
und wie komm ich dann wieder Spiel??? | ||
Fujitsu-Siemens Laptop, 2Ghz Intel Core2Duo Prozessor, 2GB Ram, 120GB Festplatte, ATI Mobility Radeon X1400, Windows Vista Ultimate
www.mausoft.de.tl Dönerfresser Homepage |
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
In der Menü-Datei machst du halt eine chleife, die dann irgendwann beendet wird, ohne End.
Ok? |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ein kurzes Beispiel wie es aussehen könnte:
Code: [AUSKLAPPEN] Global Gamestate = 0 repeat select Gamestate case 1 include "Game.bb" case 2 include "options.bb" default include "menu.bb" ;hier wird ausgewählt und in der Variablen Gamestate gespeichert end select until Gamestate = -1 Deine Includes beinhalten idealerweise Functionen in denen alles gekapselt laufen kann. |
||
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 |
![]() |
mabox |
![]() Antworten mit Zitat ![]() |
---|---|---|
Thx ich denke so bekomm ich es hin! | ||
Fujitsu-Siemens Laptop, 2Ghz Intel Core2Duo Prozessor, 2GB Ram, 120GB Festplatte, ATI Mobility Radeon X1400, Windows Vista Ultimate
www.mausoft.de.tl Dönerfresser Homepage |
![]() |
mabox |
![]() Antworten mit Zitat ![]() |
---|---|---|
Sry wegen Doppelpost aber ich bekomm es dochnicht hin.
hab jetzt mal nen kleinen Test gemacht aber der funktioniert garnicht richtig. Wenn ich das starte kommt "Image does not exist" obwohl das Bild existiert. Code: [AUSKLAPPEN] ;Start
Include "Variablen und Funktionen.bb" Global Gamestate = 0 Repeat Select Gamestate Case 1 Include "Spiel.bb" If KeyHit(1) =1 Then Gamestate = 0 Default Include "Menü.bb" If KeyHit(57)=1 Then Gamestate = 1 End Select Until Gamestate = -1 Code: [AUSKLAPPEN] ;Variablen und Funktionen
Global image_Spiel = LoadImage("Spiel.jpg") Global image_Menue = LoadImage("menü.jpg") Global fpsrate,loops, fpstime Function fps() loops = loops+1 If MilliSecs() - fpstime > 1000 Then fpsrate = loops loops = 0 fpstime = MilliSecs() End If Return fpsrate End Function Code: [AUSKLAPPEN] ;Spiel
Graphics 640,480,16,2 Include "Variablen und Funktionen.bb" SetBuffer BackBuffer() DrawImage image_Spiel,0,0 While Not KeyDown(1) Color 255,255,255 Text 10, 10, fps() Flip Cls Wend Code: [AUSKLAPPEN] ;Menü
Graphics 640,480,32,2 Include "Variablen und Funktionen.bb" SetBuffer BackBuffer() DrawImage image_Menue,0,0 Flip und was bringt die -1???Code: [AUSKLAPPEN] Until Gamestate = -1
|
||
![]() |
ToeB |
![]() Antworten mit Zitat ![]() |
---|---|---|
Also ich machs imma so :
Code: [AUSKLAPPEN] Global make = 0 ; Schleifen-Variable
Repeat If make = 0 then ;Wenn make = 0 then soll der das menü zeichnen makeHaubtmenue() If KeyHit(2) then make = 1 ; Zweiter menüpunkt If KeyHit(3) then make = 2 ; Spiel If KeyHit(1) then End EndIf If make = 1 then makeOption() If KeyHit(1) then make = 0 EndIf If make = 2 makeGame() if KeyHit(1) then make = 0 EndIf Flip Cls Until KeyHit(1) End Dann ist das nämlich alles in einer schleife und muss nich Kompliziert Includet werden... mfg Crack93 |
||
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt! |
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die -1 war als Auswahl für Ende vorgesehen- wenn Gamestate diesen Wert annimmt wird das Spiel beendet.
Du kannst also im Menu oder im Game auf escape testen und dann Gamestate auf - 1 setzen und ins Hauptmenu returnen. Dein Bild existiert nicht weil Du in spiel.bb graphics benutzt. Bei jedem Aufruf von Graphics muss man alle Bilder etc. neu laden. Den Graphicmodus für das Spiel solltest Du also auch im Hauptprogramm stehen haben, bevor verzweigt wird. Hier kannst Du ja einen gesonderten Gamestate anlegen, bei dem der Graphicmodus auf die gewünschte Aufklösung gesetzt und dann alle Bilder geladen werden. |
||
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 |
![]() |
mabox |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ok jetzt gehts schon besser. Nur die Frames sieht man nicht.
derCode: [AUSKLAPPEN] ;Start
Graphics 640,480,32,2 Include "Variablen und Funktionen.bb" Global Gamestate = 0 Repeat Select Gamestate Case 1 Include "Spiel.bb" If KeyHit(57) =1 Then Gamestate = 0 Default Include "Menü.bb" If KeyHit(57) = 1 Then Gamestate = 1 End Select Until Gamestate = -1 Code: [AUSKLAPPEN] ;Variablen und Funktionen
Global image_Spiel = LoadImage("spiel.jpg") Global image_Menue = LoadImage("menü.bmp") Global fpsrate,loops, fpstime Function fps() loops = loops+1 If MilliSecs() - fpstime > 1000 Then fpsrate = loops loops = 0 fpstime = MilliSecs() End If Return fpsrate End Function Code: [AUSKLAPPEN] ;Menü
SetBuffer BackBuffer() DrawImage image_Menue,0,0 Flip Code: [AUSKLAPPEN] ;Spiel
SetBuffer BackBuffer() While Not KeyDown(57) Color 255,255,255 DrawImage image_Spiel,0,0 Text 10, 10, fps() Flip Cls Wend |
||
Fujitsu-Siemens Laptop, 2Ghz Intel Core2Duo Prozessor, 2GB Ram, 120GB Festplatte, ATI Mobility Radeon X1400, Windows Vista Ultimate
www.mausoft.de.tl Dönerfresser Homepage |
![]() |
Mr.Keks |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich würde include nicht in den code selbst reinschreiben, sondern alle includes am anfang der hauptdatei hinpacken. dann im code nur noch funktionen aus den includes aufrufen. | ||
MrKeks.net |
![]() |
mabox |
![]() Antworten mit Zitat ![]() |
---|---|---|
und Warum?
(PS: die Frames sieht man immer noch nicht) |
||
Fujitsu-Siemens Laptop, 2Ghz Intel Core2Duo Prozessor, 2GB Ram, 120GB Festplatte, ATI Mobility Radeon X1400, Windows Vista Ultimate
www.mausoft.de.tl Dönerfresser Homepage |
![]() |
Dottakopf |
![]() Antworten mit Zitat ![]() |
---|---|---|
weil man das so macht und es übersichtlicher ist.
du ladest doch in der main-loop auch nicht jedesmal die grafiken neu. |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
mabox hat Folgendes geschrieben: und Warum?
(PS: die Frames sieht man immer noch nicht) Weil man nicht Includes für Funktionen macht sondern den Inhalt der Includes "Thema basierend" macht. zb ist eine Include das Menü system, ein anderes wäre particle system etc etc Es macht keinen sinn einfach das zeug wild zu streuen, das sorgt nur dafür dass man es kaum noch gescheit zusammen setzen kann geschweige denn später versteht wie der code fluss läuft und wo was ist. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
mabox |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ok danke habs gecheckt! | ||
Fujitsu-Siemens Laptop, 2Ghz Intel Core2Duo Prozessor, 2GB Ram, 120GB Festplatte, ATI Mobility Radeon X1400, Windows Vista Ultimate
www.mausoft.de.tl Dönerfresser Homepage |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group