Da bin ich mal wieder!
Habe bei mir im Spiel einen Shop eingebaut, in dem man Waffen, Energie, Bomben und Schilder kaufen kann, wenn bestimmte Bedingungen erfüllt sind. Der Code als Ganzes ist relativ komplex (für mich ) und deshalb würde ich von den Experten gerne einmal die Logik überprüfen lassen.
Gedacht ist es so:
eine Waffe darf gekauft werden, wenn man genug Geld hat und man die Waffe noch nicht hat. Verkaufen darf man die Waffe, wenn man sie hat und man mehr als eine Waffe besitzt. Die Variablen global.canbuy und global.cansale geben den Buttons den Befehl weiter, ob man kaufen / verkaufen darf, die Prüfung erfolgt in einem anderen Objekt. Die Variable global.ware sagt aus, welcher Artikel gewählt wurde.
Als Beispiel für die Überprüfung hier mal die Waffe 1:
Spoiler anzeigen
Alles anzeigen
Ich bin mir hier nicht sicher, ob das "else" an den richtigen Stellen steht.
Habe bei mir im Spiel einen Shop eingebaut, in dem man Waffen, Energie, Bomben und Schilder kaufen kann, wenn bestimmte Bedingungen erfüllt sind. Der Code als Ganzes ist relativ komplex (für mich ) und deshalb würde ich von den Experten gerne einmal die Logik überprüfen lassen.
Gedacht ist es so:
eine Waffe darf gekauft werden, wenn man genug Geld hat und man die Waffe noch nicht hat. Verkaufen darf man die Waffe, wenn man sie hat und man mehr als eine Waffe besitzt. Die Variablen global.canbuy und global.cansale geben den Buttons den Befehl weiter, ob man kaufen / verkaufen darf, die Prüfung erfolgt in einem anderen Objekt. Die Variable global.ware sagt aus, welcher Artikel gewählt wurde.
Als Beispiel für die Überprüfung hier mal die Waffe 1:
GML-Quellcode
- // Waffe 1
- if global.ware = 4{
- if score >= global.buy{ // Wenn genug Geld da ist...
- if global.waffe[0] = false{ // ...und das Limit nicht erreicht wurde...
- global.canbuy = true; // ...kann gekauft werden
- }else{ // Wenn nicht...
- global.canbuy = false; // dann nicht :-)
- }
- }
- if global.waffe[0] = true{
- if global.waffenzaehler > 1{ // Wenn nur eine Waffe vorhanden ist
- global.cansale = true;
- }else{
- global.cansale = false;
- }
- }else{
- global.cansale = false;
- }
- }
Ich bin mir hier nicht sicher, ob das "else" an den richtigen Stellen steht.