Pasapalabra de la Tierra
by CyberMeteor92375 lines12.3 KB
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<title>Pasapalabra de la Tierra</title>
<style>
body {
font-family: Arial;
text-align: center;
background: #dff3ff;
padding: 20px;
}
h1 { color: #0879a8; }
#letra {
font-size: 50px;
color: #0879a8;
font-weight: bold;
}
button, input {
padding: 12px;
margin: 6px;
font-size: 18px;
border-radius: 10px;
}
button {
background: #0879a8;
color: white;
border: none;
cursor: pointer;
}
#juego {
background: white;
padding: 25px;
border-radius: 20px;
max-width: 550px;
margin: auto;
}
</style>
</head>
<body>
<h1>🌍 Pasapalabra: La Tierra</h1>
<div id="juego">
<div id="letra">A</div>
<p id="pregunta"></p>
<input id="respuesta" placeholder="Escribe tu respuesta">
<br>
<button onclick="comprobar()">Responder</button>
<button onclick="pasar()">Pasapalabra</button>
<p id="mensaje"></p>
<h3 id="puntos">Puntos: 0</h3>
<button onclick="reiniciar()">Volver a jugar</button>
</div>
<script>
let preguntas = [
["A","Gases que rodean la Tierra","atmósfera"],
["B","Roca espacial que cae a la Tierra","meteorito"],
["C","Capa exterior sólida de la Tierra","corteza"],
["D","Lugar muy seco donde casi no llueve","desierto"],
["E","Estrella que ilumina la Tierra","estrella"],
["F","Proceso de origen de la Tierra","formación"],
["G","Conjunto de estrellas y planetas","galaxia"],
["H","Contiene la H: temperatura elevada","calor"],
["I","Roca fundida bajo la superficie","magma"],
["J","Periodo de los dinosaurios","jurásico"],
["K","Mil metros","kilómetro"],
["L","Satélite natural de la Tierra","luna"],
["M","Capa terrestre bajo la corteza","manto"],
["N","Parte central de la Tierra","núcleo"],
["Ñ","Periodo de mil años","milenio"],
["O","Gran masa de agua salada","océano"],
["P","Conjunto de planetas que orbitan el Sol","sistema solar"],
["Q","Ciencia que estudia la materia","química"],
["R","Movimiento de un planeta alrededor del Sol","órbita"],
["S","Estrella del sistema solar","sol"],
["T","Planeta en el que vivimos","tierra"],
["U","Todo lo que existe en el espacio","universo"],
["V","Galaxia donde está el sistema solar","vía láctea"],
["W","Letra inicial de una palabra inglesa para roca","weathering"],
["X","Contiene la X: fuerza que atrae los objetos","fuerza gravitatoria"],
["Y","Contiene la Y: material que sale de un volcán","lava"],
["Z","Contiene la Z: conjunto de seres vivos y su entorno","ecosistema"]
];
let actual = 0;
let puntos = 0;
let contestadas = [];
function mostrar() {
if (actual >= preguntas.length) {
document.getElementById("letra").textContent = "🏆";
document.getElementById("pregunta").textContent =
"¡Juego terminado!";
document.getElementById("respuesta").style.display = "none";
document.getElementById("puntos").textContent =
"Resultado: " + puntos + " puntos de " + preguntas.length;
return;
}
document.getElementById("letra").textContent =
preguntas[actual][0];
document.getElementById("pregunta").textContent =
preguntas[actual][1];
document.getElementById("respuesta").value = "";
document.getElementById("mensaje").textContent = "";
}
function comprobar() {
let respuesta = document.getElementById("respuesta")
.value.trim().toLowerCase()
.normalize("NFD").replace(/[\u0300-\u036f]/g, "");
let correcta = preguntas[actual][2]
.toLowerCase().normalize("NFD")
.replace(/[\u0300-\u036f]/g, "");
if (respuesta === correcta) {
puntos++;
document.getElementById("mensaje").textContent =
"¡Correcto! 🎉";
} else {
document.getElementById("mensaje").textContent =
"La respuesta era: " + preguntas[actual][2];
}
document.getElementById("puntos").textContent =
"Puntos: " + puntos;
actual++;
setTimeout(mostrar, 1200);
}
function pasar() {
actual++;
mostrar();
}
function reiniciar() {
actual = 0;
puntos = 0;
document.getElementById("respuesta").style.display = "inline";
document.getElementById("puntos").textContent = "Puntos: 0";
mostrar();
}
mostrar();
</script>
</body>
</html>
Cómo usarlo
Pulsa el botón de copiar del bloque de código.
Abre
ArcadeLab .
Pega el código en el editor HTML, si permite introducir código completo.
Abre la vista previa para jugar.
Nota: algunas respuestas de las letras W, X e Y son difíciles o no encajan perfectamente con la pista. Si es para utilizarlo en clase, puedo hacer una versión todavía más sencilla con preguntas científicas correctas y sin letras complicadas.
Tú dijiste:
hazlo que aparezca un circulo como en la tele y mejorandolo
ChatGPT Plus
¡Vamos a mejorarlo! 🌍🎉 Te he preparado un Pasapalabra con un rosco circular como el de la televisión, colores llamativos, preguntas, marcador de puntos y botones grandes para jugar en clase.
Copia todo el código de abajo y pégalo en ArcadeLab.
Pasapalabra: El origen de la Tierra
html
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Pasapalabra del Universo</title>
<style>
*{box-sizing:border-box}
body{
margin:0;font-family:Arial,sans-serif;text-align:center;
background:linear-gradient(#10245b,#0879a8);
color:white;padding:20px
}
h1{color:#ffe45e;font-size:clamp(25px,5vw,40px)}
#rosco{
position:relative;width:min(88vw,440px);
height:min(88vw,440px);margin:20px auto
}
.letra{
position:absolute;width:42px;height:42px;
border:3px solid white;border-radius:50%;
background:#174ec6;color:white;font-weight:bold;
font-size:17px;display:flex;align-items:center;
justify-content:center;transform:translate(-50%,-50%)
}
.letra.activa{background:#ffdc35;color:#142451;box-shadow:0 0 15px #fff}
.letra.bien{background:#22b96b;color:white}
.letra.mal{background:#ed4545;color:white}
#centro{
position:absolute;left:50%;top:50%;
transform:translate(-50%,-50%);
width:52%;font-size:clamp(14px,3vw,20px);
font-weight:bold;color:#ffe45e
}
.panel{
max-width:600px;margin:15px auto;padding:22px;
background:white;color:#17284a;border-radius:22px
}
#pregunta{font-size:20px;min-height:55px;line-height:1.4}
input{
width:95%;padding:13px;border:2px solid #9ab6df;
border-radius:10px;font-size:18px;margin:10px 0
}
button{
border:0;border-radius:12px;padding:12px 18px;
margin:5px;font-size:16px;font-weight:bold;cursor:pointer
}
.responder{background:#0879c9;color:white}
.pasar{background:#ffdc35;color:#17284a}
.reiniciar{background:#dce8f8;color:#17284a}
#mensaje{font-weight:bold;min-height:25px}
#marcador{font-size:19px;font-weight:bold}
</style>
</head>
<body>
<h1>🌍 PASAPALABRA CÓSMICO 🚀</h1>
<p>¡Descubre cómo se formó nuestro planeta!</p>
<div id="rosco">
<div id="centro">🌎<br>EL ORIGEN<br>DE LA TIERRA</div>
</div>
<div class="panel">
<div id="marcador">⭐ Puntos: 0 | Pendientes: 27</div>
<h2 id="titulo">Letra A</h2>
<p id="pregunta"></p>
<input id="respuesta" placeholder="Escribe tu respuesta"
autocomplete="off">
<br>
<button class="responder" onclick="comprobar()">Responder ✓</button>
<button class="pasar" onclick="pasar()">Pasapalabra ➜</button>
<p id="mensaje" aria-live="polite"></p>
<button class="reiniciar" onclick="reiniciar()">🔄 Volver a jugar</button>
</div>
<script>
const datos=[
["A","Gases que rodean nuestro planeta","atmósfera"],
["B","Roca espacial que llega a la superficie terrestre","meteorito"],
["C","Capa sólida más externa de la Tierra","corteza"],
["D","Lugar muy seco donde apenas llueve","desierto"],
["E","Astro que produce luz y calor, como el Sol","estrella"],
["F","Proceso por el que se originó nuestro planeta","formación"],
["G","Enorme conjunto de estrellas, gas y polvo","galaxia"],
["H","Contiene la H: temperatura muy elevada","calor"],
["I","Roca fundida que sale de un volcán","lava"],
["J","Periodo geológico famoso por los dinosaurios","jurásico"],
["K","Unidad equivalente a mil metros","kilómetro"],
["L","Satélite natural de la Tierra","luna"],
["M","Capa terrestre situada entre la corteza y el núcleo","manto"],
["N","Parte más central de nuestro planeta","núcleo"],
["Ñ","Contiene la Ñ: periodo de mil años","milenio"],
["O","Gran masa de agua salada","océano"],
["P","Cuerpo celeste que gira alrededor de una estrella","planeta"],
["Q","Ciencia que estudia la materia y sus transformaciones","química"],
["R","Movimiento de un planeta alrededor de una estrella","órbita"],
["S","Estrella que está en el centro de nuestro sistema","sol"],
["T","Planeta en el que vivimos","tierra"],
["U","Conjunto de todo lo que existe","universo"],
["V","Galaxia donde se encuentra nuestro sistema solar","vía láctea"],
["W","Contiene la W: unidad de potencia llamada también vatio","watt"],
["X","Contiene la X: roca fundida que hay bajo la superficie","magma"],
["Y","Contiene la Y: material fundido que expulsa un volcán","lava"],
["Z","Contiene la Z: zona del planeta donde hay vida","biosfera"]
];
let estado=Array(27).fill(0);
let actual=0,puntos=0;
const normal=s=>s.toLowerCase().normalize("NFD")
.replace(/[\u0300-\u036f]/g,"").trim().replace(/\s+/g," ");
const rosco=document.getElementById("rosco");
datos.forEach((d,i)=>{
let b=document.createElement("div");
b.className="letra";
b.textContent=d[0];
let angulo=(i*2*Math.PI/27)-Math.PI/2;
let radio=45;
b.style.left=(50+radio*Math.cos(angulo))+"%";
b.style.top=(50+radio*Math.sin(angulo))+"%";
b.id="l"+i;
rosco.appendChild(b);
});
function siguiente(){
let inicio=actual;
while(estado[actual]!==0){
actual=(actual+1)%27;
if(actual===inicio){fin();return;}
}
mostrar();
}
function mostrar(){
document.getElementById("titulo").textContent="Letra "+datos[actual][0];
document.getElementById("pregunta").textContent=datos[actual][1];
document.getElementById("respuesta").value="";
document.getElementById("mensaje").textContent="";
document.querySelectorAll(".letra").forEach(b=>b.classList.remove("activa"));
document.getElementById("l"+actual).classList.add("activa");
document.getElementById("marcador").textContent=
"⭐ Puntos: "+puntos+" | Pendientes: "+estado.filter(x=>x===0).length;
}
function comprobar(){
if(estado[actual]!==0)return;
let r=normal(document.getElementById("respuesta").value);
if(!r){document.getElementById("mensaje").textContent="¡Escribe una respuesta!";return;}
if(r===normal(datos[actual][2])){
estado[actual]=1;puntos++;
document.getElementById("l"+actual).className="letra bien";
document.getElementById("mensaje").textContent="¡Correcto! 🎉";
}else{
estado[actual]=2;
document.getElementById("l"+actual).className="letra mal";
document.getElementById("mensaje").textContent="Respuesta: "+datos[actual][2];
}
document.getElementById("respuesta").disabled=true;
document.querySelector(".responder").disabled=true;
document.querySelector(".pasar").disabled=true;
document.getElementById("marcador").textContent=
"⭐ Puntos: "+puntos+" | Pendientes: "+estado.filter(x=>x===0).length;
setTimeout(()=>{
document.getElementById("respuesta").disabled=false;
document.querySelector(".responder").disabled=false;
document.querySelector(".pasar").disabled=false;
actual=(actual+1)%27;siguiente();
},1200);
}
function pasar(){
actual=(actual+1)%27;
siguiente();
}
function fin(){
document.getElementById("titulo").textContent="🏆 ¡Rosco terminado!";
document.getElementById("pregunta").textContent=
"Has conseguido "+puntos+" puntos de 27.";
document.getElementById("respuesta").style.display="none";
document.querySelector(".responder").style.display="none";
document.querySelector(".pasar").style.display="none";
document.getElementById("mensaje").textContent=
puntos>=22?"¡Excelente, eres un experto del universo! 🌟":"¡Buen trabajo! Sigue aprendiendo y vuelve a jugar.";
}
function reiniciar(){
estado=Array(27).fill(0);actual=0;puntos=0;
document.getElementById("respuesta").style.display="inline-block";
document.querySelector(".responder").style.display="inline-block";
document.querySelector(".pasar").style.display="inline-block";
document.getElementById("respuesta").disabled=false;
document.querySelector(".responder").disabled=false;
document.querySelector(".pasar").disabled=false;
document.querySelectorAll(".letra").forEach(b=>b.className="letra");
siguiente();
}
document.getElementById("respuesta").addEventListener("keydown",e=>{
if(e.key==="Enter")comprobar();
});
siguiente();
</script>
</body>
</html>Game Source: Pasapalabra de la Tierra
Creator: CyberMeteor92
Libraries: none
Complexity: complex (375 lines, 12.3 KB)
The full source code is displayed above on this page.
Remix Instructions
To remix this game, copy the source code above and modify it. Add a ARCADELAB header at the top with "remix_of: pasapalabra-de-la-tierra-cybermeteor92" to link back to the original. Then publish at arcadelab.ai/publish.