Hallo!
Ich mach gerade ein BlackJack-Spiel unter PHP 4.
Es funktioniert alles einwandfrei (Grafiken der Karten, usw.).
Nur bekomme ich das zusammenzählen der Kartenwerte bis 21 nicht hin, da ich nicht weiß, wie ich ein Array längerfristig speichern kann.
Sobald auf "Neue Karte" geklickt wird, erscheint jeweils immer nur der Wert der eben "gezogenen" Karte.
Muß ich das Speichern des Wertes, damit ich die Werte nacheinander zusammenzählen kann, mit einem Cookie, in eine Datei oder gar einer Datenbank wie MySQL verwirklichen, oder geht das auch einfacher?
Mein Code:
<pre>
...
echo(" <p>Derzeitiger Wert: ");
$Bilder = array(
"<img src=\"images/0-2.png\" alt=\"2\">" , "<img src=\"images/1-2.png\" alt=\"2\">" ,
"<img src=\"images/2-2.png\" alt=\"2\">" ,"<img src=\"images/3-2.png\" alt=\"2\">" ,
"<img src=\"images/0-3.png\" alt=\"3\">" , "<img src=\"images/1-3.png\" alt=\"3\">" ,
"<img src=\"images/2-3.png\" alt=\"3\">" ,"<img src=\"images/3-3.png\" alt=\"3\">"); //Verschiedene Kartenbilder mit demselben Wert - noch nicht alle Karten hinzugefügt
$Zahl1 = $Bilder[rand (0, 7)];
echo($Zahl1);
//Wertausgabe für 2
if($Zahl1=="<img src=\"images/0-2.png\" alt=\"2\">"){
$Wert=2;
print("<br>Karte $Wert");
}
if($Zahl1=="<img src=\"images/1-2.png\" alt=\"2\">"){
$Wert=2;
print("<br>Karte $Wert");
}
if($Zahl1=="<img src=\"images/2-2.png\" alt=\"2\">"){
$Wert=2;
print("<br>Karte $Wert");
}
if($Zahl1=="<img src=\"images/3-2.png\" alt=\"2\">"){
$Wert=2;
print("<br>Karte $Wert");
}
...
...
//Hochrechnen des Wertes
$Ergebnis = $Wert++;
echo("<p>Punktestand: $Ergebnis");
//Gewonnen-Meldung bei 21 Punkten | Verloren-Meldung bei über 21 Punkten
if($Ergebnis==21){
print ("<br>Gewonnen!");
}
if($Ergebnis>21){
print ("<br>Verloren!");
}
...
</pre>
Der Code sollte möglichst einfach sein. Erst danach wollte ich eventuell mit MySQL für Benutzer HighScores, usw. einbauen.
Nebenbei: Was würde es eigentlich bringen, wenn ich die Images von PHP dynamisch mit der GD-Funktion generieren lassen würde, anstatt wie jetzt, sie einfach nur zu verlinken?
Vielen Dank!!
Ich mach gerade ein BlackJack-Spiel unter PHP 4.
Es funktioniert alles einwandfrei (Grafiken der Karten, usw.).
Nur bekomme ich das zusammenzählen der Kartenwerte bis 21 nicht hin, da ich nicht weiß, wie ich ein Array längerfristig speichern kann.
Sobald auf "Neue Karte" geklickt wird, erscheint jeweils immer nur der Wert der eben "gezogenen" Karte.
Muß ich das Speichern des Wertes, damit ich die Werte nacheinander zusammenzählen kann, mit einem Cookie, in eine Datei oder gar einer Datenbank wie MySQL verwirklichen, oder geht das auch einfacher?
Mein Code:
<pre>
...
echo(" <p>Derzeitiger Wert: ");
$Bilder = array(
"<img src=\"images/0-2.png\" alt=\"2\">" , "<img src=\"images/1-2.png\" alt=\"2\">" ,
"<img src=\"images/2-2.png\" alt=\"2\">" ,"<img src=\"images/3-2.png\" alt=\"2\">" ,
"<img src=\"images/0-3.png\" alt=\"3\">" , "<img src=\"images/1-3.png\" alt=\"3\">" ,
"<img src=\"images/2-3.png\" alt=\"3\">" ,"<img src=\"images/3-3.png\" alt=\"3\">"); //Verschiedene Kartenbilder mit demselben Wert - noch nicht alle Karten hinzugefügt
$Zahl1 = $Bilder[rand (0, 7)];
echo($Zahl1);
//Wertausgabe für 2
if($Zahl1=="<img src=\"images/0-2.png\" alt=\"2\">"){
$Wert=2;
print("<br>Karte $Wert");
}
if($Zahl1=="<img src=\"images/1-2.png\" alt=\"2\">"){
$Wert=2;
print("<br>Karte $Wert");
}
if($Zahl1=="<img src=\"images/2-2.png\" alt=\"2\">"){
$Wert=2;
print("<br>Karte $Wert");
}
if($Zahl1=="<img src=\"images/3-2.png\" alt=\"2\">"){
$Wert=2;
print("<br>Karte $Wert");
}
...
...
//Hochrechnen des Wertes
$Ergebnis = $Wert++;
echo("<p>Punktestand: $Ergebnis");
//Gewonnen-Meldung bei 21 Punkten | Verloren-Meldung bei über 21 Punkten
if($Ergebnis==21){
print ("<br>Gewonnen!");
}
if($Ergebnis>21){
print ("<br>Verloren!");
}
...
</pre>
Der Code sollte möglichst einfach sein. Erst danach wollte ich eventuell mit MySQL für Benutzer HighScores, usw. einbauen.
Nebenbei: Was würde es eigentlich bringen, wenn ich die Images von PHP dynamisch mit der GD-Funktion generieren lassen würde, anstatt wie jetzt, sie einfach nur zu verlinken?
Vielen Dank!!
Comment