Escriba un programa que muestre tres imágenes de frutas. Al actualizar la página se cambian las imágenes.
$simbolosNumero = 8; // Número de frutas
// Se genera una combinación nueva
$fruta1 = rand(1, $simbolosNumero);
$fruta2 = rand(1, $simbolosNumero);
$fruta3 = rand(1, $simbolosNumero);
// Se muestran las tres imágenes de la combinación actual
print " <td style=\"border: black 4px solid; padding: 10px\">"
. "<img src=\"img/frutas/$fruta1.svg\" width=\"160\" alt=\"Imagen\"></td>\n";
print " <td style=\"border: black 4px solid; padding: 10px\">"
. "<img src=\"img/frutas/$fruta2.svg\" width=\"160\" alt=\"Imagen\"></td>\n";
print " <td style=\"border: black 4px solid; padding: 10px\">"
. "<img src=\"img/frutas/$fruta3.svg\" width=\"160\" alt=\"Imagen\"></td>\n";
Añada al programa anterior un contador de monedas que se pueda incrementar mediante un botón de formulario.
session_name("tragaperras-2");
session_start();
// Valores iniciales variables sesión
if (!isset($_SESSION["monedas"])) {
header("Location:tragaperras-2-2.php");
exit;
}
// Valores iniciales variables sesión
if (!isset($_SESSION["monedas"])) {
$_SESSION["monedas"] = 0;
}
// Redirección automática
header("Location:tragaperras-2-1.php");
// Se genera el formulario
print " <form action=\"tragaperras-2-2.php\" method=\"get\">\n";
print " <p><button type=\"submit\" name=\"accion\" value=\"moneda\">Meter moneda</button></p>\n";
print " <p style=\"margin: 0; font-size: 300%; border: black 4px solid; padding: 2px\">$_SESSION[monedas]</p>\n";
// Si se ha insertado moneda, se aumenta la cantidad de monedas
if ($accion == "moneda") {
$_SESSION["monedas"] += 1;
}
Añada al programa anterior un botón para jugar, que renueva la combinación de frutas y reduce la cantidad de monedas de una en una.
// Valores iniciales variables sesión
if (!isset($_SESSION["monedas"]) || !isset($_SESSION["fruta1"]) ||
!isset($_SESSION["fruta2"]) || !isset($_SESSION["fruta3"])) {
$_SESSION["monedas"] = 0;
$_SESSION["fruta1"] = rand(1, $simbolosNumero);
$_SESSION["fruta2"] = rand(1, $simbolosNumero);
$_SESSION["fruta3"] = rand(1, $simbolosNumero);
}
// Se muestra el botón de Jugar
print " <p><button type=\"submit\" name=\"accion\" value=\"jugar\">Jugar</button></p>\n";
// Se muestran las tres imágenes de la combinación actual
print " <td style=\"border: black 4px solid; padding: 10px\">"
. "<img src=\"img/frutas/$_SESSION[fruta1].svg\" width=\"160\" alt=\"Imagen\"></td>\n";
print " <td style=\"border: black 4px solid; padding: 10px\">"
. "<img src=\"img/frutas/$_SESSION[fruta2].svg\" width=\"160\" alt=\"Imagen\"></td>\n";
print " <td style=\"border: black 4px solid; padding: 10px\">"
. "<img src=\"img/frutas/$_SESSION[fruta3].svg\" width=\"160\" alt=\"Imagen\"></td>\n";
print " <td style=\"vertical-align: top; text-align: center\">\n";
// Si se ha jugado y hay monedas insertadas,
// se genera una nueva combinación y se pierde una moneda
if ($accion == "jugar" && $_SESSION["monedas"] > 0) {
$_SESSION["fruta1"] = rand(1, $simbolosNumero);
$_SESSION["fruta2"] = rand(1, $simbolosNumero);
$_SESSION["fruta3"] = rand(1, $simbolosNumero);
$_SESSION["monedas"] -= 1;
}
Añada al programa anterior la capacidad de detectar que se ha ganado un premio.
// Se comprueba cuál es el premio
$cereza = 1; // Número de imagen de la cereza (1.svg)
// Si han salido tres cerezas
if ($_SESSION["fruta1"] == $cereza &&
$_SESSION["fruta2"] == $cereza &&
$_SESSION["fruta3"] == $cereza) {
$_SESSION["premio"] = 10;
// Si han salido dos cerezas
} elseif (($_SESSION["fruta1"] == $cereza && $_SESSION["fruta2"] == $cereza) ||
($_SESSION["fruta2"] == $cereza && $_SESSION["fruta3"] == $cereza) ||
($_SESSION["fruta1"] == $cereza && $_SESSION["fruta3"] == $cereza)) {
$_SESSION["premio"] = 4;
// Si ha salido una cereza
} elseif ($_SESSION["fruta1"] == $cereza ||
$_SESSION["fruta2"] == $cereza ||
$_SESSION["fruta3"] == $cereza) {
$_SESSION["premio"] = 1;
// Si además de una cereza hay dos frutas iguales
if ($_SESSION["fruta1"] == $_SESSION["fruta2"] ||
$_SESSION["fruta2"] == $_SESSION["fruta3"] ||
$_SESSION["fruta1"] == $_SESSION["fruta3"]) {
$_SESSION["premio"] = 3;
}
// Si han salido tres frutas iguales (que no son cerezas)
} elseif ($_SESSION["fruta1"] == $_SESSION["fruta2"] &&
$_SESSION["fruta2"] == $_SESSION["fruta3"]) {
$_SESSION["premio"] = 5;
// Si han salido dos frutas iguales (que no son cerezas)
} elseif ($_SESSION["fruta1"] == $_SESSION["fruta2"] ||
$_SESSION["fruta2"] == $_SESSION["fruta3"] ||
$_SESSION["fruta1"] == $_SESSION["fruta3"]) {
$_SESSION["premio"] = 2;
// En cualquier otro caso
} else {
$_SESSION["premio"] = 0;
}
// Se añade el premio a las monedas
$_SESSION["monedas"] += $_SESSION["premio"];
// Se elige la cara a mostrar
if ($_SESSION["premio"] > 0) {
$_SESSION["cara"] = "smile";
} else {
$_SESSION["cara"] = "sad";
}
if (isset($_SESSION["cara"])) {
print " <p style=\"margin: 1px; font-size: 300%; border: black 4px solid; padding: 2px\">";
print "<img src=\"img/face-$_SESSION[cara].svg\" alt=\"Mal\" height=\"50\">$_SESSION[premio]</p>\n";
}
Añada al programa anterior la capacidad de apostar más de una moneda.
// Se muestra la apuesta
print " <p><button type=\"submit\" name=\"accion\" value=\"apostar\">Aumentar apuesta</button></p>\n";
// Si se ha apostado una moneda, se aumenta la cantidad apostada y se disminuye las monedas
if ($accion == "apostar" && $_SESSION["monedas"] > 0) {
$_SESSION["apuesta"] += 1;
$_SESSION["monedas"] -= 1;
}
// Si han salido tres cerezas
if ($_SESSION["fruta1"] == $cereza &&
$_SESSION["fruta2"] == $cereza &&
$_SESSION["fruta3"] == $cereza) {
$_SESSION["premio"] = 10 * $_SESSION["apuesta"];
// Si han salido dos cerezas
} elseif (($_SESSION["fruta1"] == $cereza && $_SESSION["fruta2"] == $cereza) ||
($_SESSION["fruta2"] == $cereza && $_SESSION["fruta3"] == $cereza) ||
($_SESSION["fruta1"] == $cereza && $_SESSION["fruta3"] == $cereza)) {
$_SESSION["premio"] = 4 * $_SESSION["apuesta"];
// Si ha salido una cereza
} elseif ($_SESSION["fruta1"] == $cereza ||
$_SESSION["fruta2"] == $cereza ||
$_SESSION["fruta3"] == $cereza) {
$_SESSION["premio"] = 1 * $_SESSION["apuesta"];
// Si además de una cereza hay dos frutas iguales
if ($_SESSION["fruta1"] == $_SESSION["fruta2"] ||
$_SESSION["fruta2"] == $_SESSION["fruta3"] ||
$_SESSION["fruta1"] == $_SESSION["fruta3"]) {
$_SESSION["premio"] = 3 * $_SESSION["apuesta"];
}
// Si han salido tres frutas iguales (que no son cerezas)
} elseif ($_SESSION["fruta1"] == $_SESSION["fruta2"] &&
$_SESSION["fruta2"] == $_SESSION["fruta3"]) {
$_SESSION["premio"] = 5 * $_SESSION["apuesta"];
// Si han salido dos frutas iguales (que no son cerezas)
} elseif ($_SESSION["fruta1"] == $_SESSION["fruta2"] ||
$_SESSION["fruta2"] == $_SESSION["fruta3"] ||
$_SESSION["fruta1"] == $_SESSION["fruta3"]) {
$_SESSION["premio"] = 2 * $_SESSION["apuesta"];
// En cualquier otro caso
} else {
$_SESSION["premio"] = 0;
}
// Se añade el premio a las monedas
$_SESSION["apuesta"] = 0;
$_SESSION["monedas"] += $_SESSION["premio"];
// Si se ha insertado moneda, se aumenta la cantidad de monedas
// y se reinician el premio y la cara
if ($accion == "moneda") {
$_SESSION["monedas"] += 1;
$_SESSION["premio"] = 0;
$_SESSION["cara"] = "plain";
}
// Si se ha apostado una moneda, se aumenta la cantidad apostada, se disminuye las monedas
// y se reinician el premio y la cara
if ($accion == "apostar" && $_SESSION["monedas"] > 0) {
$_SESSION["apuesta"] += 1;
$_SESSION["monedas"] -= 1;
$_SESSION["premio"] = 0;
$_SESSION["cara"] = "plain";
}