Skip to content

Commit

Permalink
Se le agregaron las funciones y la logica
Browse files Browse the repository at this point in the history
  • Loading branch information
verdizone committed Apr 22, 2021
1 parent a0912e6 commit ff57d0a
Show file tree
Hide file tree
Showing 2 changed files with 106 additions and 60 deletions.
139 changes: 100 additions & 39 deletions blackjackApp/assets/js/juego.js
Original file line number Diff line number Diff line change
@@ -1,64 +1,125 @@
let deck = [];
const tipos = ["C", "D", "H", "S"];
const especiales = ["A", "J", "Q", "K"];
let puntosJugador = 0;
let puntosComputadora = 0;

//Referencias del HTML
const btnDetener = document.querySelector("#btnDetener");
const btnPedir = document.querySelector("#btnPedir");

let deck = [];
const tipos = ['C', 'D', 'H', 'S'];
const especiales = ['A', 'J', 'Q', 'K'];
const cartaComputadora = document.querySelector("#computadora-cartas");
const cartaJugador = document.querySelector("#jugador-cartas");

const puntosHTML = document.querySelectorAll("small");

// console.log(cartaJugador);

//función que crea un nuevo deck
const crearDeck = () => {

for (let i = 2 ; i <= 10 ; i++){
for (let tipo of tipos){
deck.push (i + tipo);

}
for (let i = 2; i <= 10; i++) {
for (let tipo of tipos) {
deck.push(i + tipo);
}
}

for (let tipo of tipos){
for (let esp of especiales){
deck.push(esp + tipo);
}
for (let tipo of tipos) {
for (let esp of especiales) {
deck.push(esp + tipo);
}

deck = _.shuffle(deck);
console.log(deck);
return deck;
}
}

deck = _.shuffle(deck);
// console.log(deck);
return deck;
};

//Mandar llamar al deck
crearDeck();


//Esta función me permite pedir una carta

const pedirCarta = () => {
if (deck.length <= 0) {
throw " No hay más cartas el el deck.";
}

if(deck.length <= 0){
throw ' No hay más cartas el el deck.';
}

const carta = deck.shift();
const carta = deck.shift();

console.log(deck);
console.log(carta);
return carta;
}
// console.log(deck);
// console.log(carta);
return carta;
};

//pedirCarta();

// for (let i = 0 ; i <= 100 ; i ++){
// pedirCarta();
// }


const valorCarta = ( carta ) =>{

const valor = carta.substring( 0, carta.length - 1 );
return(isNaN (valor))?
(valor ==='A')? 11 : 10
:(valor * 1 );

}
const valor = valorCarta( pedirCarta() );
console.log({valor});
const valorCarta = (carta) => {
const valor = carta.substring(0, carta.length - 1);
return isNaN(valor) ? (valor === "A" ? 11 : 10) : valor * 1;
};

// Turno de la computadora

const turnoComputadora = (puntosMinimos) => {
do {
const carta = pedirCarta();
puntosComputadora = puntosComputadora + valorCarta(carta);
puntosHTML[1].innerText = puntosComputadora;

const imgCarta = document.createElement("img");
imgCarta.src = `assets/cartas/${carta}.png`;
imgCarta.alt = `${carta}`;
imgCarta.className = "carta";
cartaComputadora.append(imgCarta);

if (puntosComputadora > 21) {
console.warn("Ganaste.");
btnPedir.disabled = true;
btnDetener.disabled = true;
} else if (puntosComputadora === 21) {
console.log("La casa gana");
btnPedir.disabled = true;
btnDetener.disabled = true;
}
if (puntosMinimos > 21) {
break;
}
} while (puntosComputadora < puntosMinimos && puntosMinimos <= 21);
};

btnDetener.addEventListener("click", () => {
btnPedir.disabled = true;
btnDetener.disabled = true;
turnoComputadora(puntosJugador);
});

//Eventos Jugador
btnPedir.addEventListener("click", () => {
const carta = pedirCarta();

puntosJugador = puntosJugador + valorCarta(carta);

puntosHTML[0].innerText = puntosJugador;

const imgCarta = document.createElement("img");
imgCarta.src = `assets/cartas/${carta}.png`;
imgCarta.alt = `${carta}`;
imgCarta.className = "carta";
cartaJugador.append(imgCarta);

if (puntosJugador > 21) {
console.warn("Lo siento mucho, perdiste.");
btnPedir.disabled = true;
btnDetener.disabled = true;
turnoComputadora(puntosJugador);
} else if (puntosJugador === 21) {
console.log("Ganaste");
btnPedir.disabled = true;
btnDetener.disabled = true;
turnoComputadora(puntosJugador);
}
});
27 changes: 6 additions & 21 deletions blackjackApp/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,14 @@
<header class="titulo">
<h1 class="display-5">Blackjack</h1>
<div class="row mt-0 ">
<div class="col text-center">
<button class="btn btn-danger rounded-2">
<div id="divBotones" class="col text-center">
<button id="btnNuevo" class="btn btn-danger rounded-2">
Nuevo Juego
</button>
<button class="btn btn-light rounded-2">
<button id="btnPedir" class="btn btn-light rounded-2">
Pedir Carta
</button>
<button class="btn btn-light rounded-2">
<button id="btnDetener" class="btn btn-light rounded-2">
Detener Juego
</button>
</div>
Expand All @@ -38,15 +38,7 @@ <h1 class="display-5">Blackjack</h1>
<div class="col">
<h2>Jugador 1 - <small>0</small></h2>
<div id="jugador-cartas">
<img class="carta" src="assets/cartas/10C.png" alt="3C">
<img class="carta" src="assets/cartas/10C.png" alt="3C">
<img class="carta" src="assets/cartas/10C.png" alt="3C">
<img class="carta" src="assets/cartas/10C.png" alt="3C">
<img class="carta" src="assets/cartas/10C.png" alt="3C">
<img class="carta" src="assets/cartas/10C.png" alt="3C">
<img class="carta" src="assets/cartas/10C.png" alt="3C">


<!-- <img class="carta" src="assets/cartas/10C.png" alt="3C"> -->
</div>
</div>
</div>
Expand All @@ -56,14 +48,7 @@ <h2>Jugador 1 - <small>0</small></h2>
<div class="col">
<h2>Contrincante - <small>0</small></h2>
<div id="computadora-cartas">
<img class="carta" src="assets/cartas/10C.png" alt="3C">
<img class="carta" src="assets/cartas/10C.png" alt="3C">
<img class="carta" src="assets/cartas/10C.png" alt="3C">
<img class="carta" src="assets/cartas/10C.png" alt="3C">
<img class="carta" src="assets/cartas/10C.png" alt="3C">
<img class="carta" src="assets/cartas/10C.png" alt="3C">
<img class="carta" src="assets/cartas/10C.png" alt="3C">

<!-- <img class="carta" src="assets/cartas/10C.png" alt="3C"> -->
</div>
</div>
</div>
Expand Down

0 comments on commit ff57d0a

Please sign in to comment.