// Guardo el estado del juego
let juego = {
puntos: 0,
preguntas: [{
pregunta: "¿Con qué propiedad se pone el color de fondo en CSS?",
correcta: "backgroundColor",
incorrecta1: "color",
incorrecta2: "bckColor",
incorrecta3: "setColor"
},
{
pregunta: "¿tipo de letra en CSS?",
correcta: "font-family",
incorrecta1: "fontaine",
incorrecta2: "letter",
incorrecta3: "pp"
},
{
pregunta: "¿ocultar elemento en CSS?",
correcta: "display:none",
incorrecta1: "display:hide",
incorrecta2: "shadow",
incorrecta3: "esconding"
}]
}
// Espero a que se cargue la página
window.onload = function () {
let boton = document.getElementById("boton");
// Llamo a la función jugar
boton.addEventListener("click", jugar);
}
// Aquí está la lógica del juego
function jugar() {
// puntos que valdrán 0
juego.puntos = 0;
// Recorrer el array de las preguntas
for (let pregunta of juego.preguntas) {
// Desordeno las respuestas
let respuestas = getRespuestasDesordenadas(pregunta);
// Creo una cadena numerada con las respuestas
let cadena = getCadenaArray(respuestas);
let respuesta = Number(prompt(pregunta.pregunta + "\n" + cadena));
// Compruebo que la respuesta esté bien
if (respuestas[respuesta - 1] == pregunta.correcta) {
alert("Muy bien");
juego.puntos++;
} else {
alert("Muy mal, looser");
}
}
// Al acabar de recorrer le mostramos los puntos
alert("Has sacado " + juego.puntos + " puntos");
}
function getRespuestasDesordenadas({ correcta, incorrecta1, incorrecta2, incorrecta3 }) {
let respuestas = [correcta, incorrecta1, incorrecta2, incorrecta3];
// Desordeno el array
respuestas.sort(() => .5 - Math.random());
return respuestas;
}
function getCadenaArray(respuestas, separador = " - ") {
let cadena = respuestas.map((valor, indice) => (indice + 1) + ") " + valor).join(separador);
return cadena;
}