Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Parte2 #49

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion index.html
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@
<body>
<script type="application/javascript" src="naoMexer.js"></script>
<script defer type="application/javascript" src="versao_1.js"></script>
<script defer type="application/javascript" src="versao_2.js"></script>
<!-- <script defer type="application/javascript" src="versao_2.js"></script> -->
</body>
</html>
45 changes: 33 additions & 12 deletions versao_1.js
Original file line number Diff line number Diff line change
@@ -1,12 +1,33 @@
/**
* EXEMPLO DE UTILIZAÇÃO DA 'comprarCarta'
*
*
const carta = comprarCarta(); // Sorteia uma carta. Por exemplo, o rei de ouros

console.log(carta.texto) // imprime o texto da carta. Exemplo: "K♦️" (indica "K" de ouros)
console.log(carta.valor) // imprime o valor da carta (um número). Exemplo: 10 (dado que "K" vale 10)
*
*
*
*/
alert("Olá seja muito bem vindo jogador!")

if (confirm("Este jogo se chama black jack, você quer jogar ?")
) {
// Usuário comprou:
let usuarioCarta1 = comprarCarta();
let usuarioCarta2 = comprarCarta();

// PC comprou:
let computadorCarta01 = comprarCarta();
let computadorCarta02 = comprarCarta();

//Soma das cartas:
let somaUsuario = usuarioCarta1.valor + usuarioCarta2.valor;
let somaComputador = computadorCarta01.valor + computadorCarta02.valor;

console.log(
`Usuário - cartas: ${usuarioCarta1.texto} ${usuarioCarta2.texto} - ${somaUsuario}`
);
console.log(
`Computador - cartas: ${computadorCarta01.texto} ${computadorCarta02.texto} - ${somaComputador}`
);

if (somaUsuario > somaComputador) {
console.log("Usuario ganhou");
} else if (somaUsuario === somaComputador) {
console.log("Empate.");
} else if (somaComputador > somaUsuario) {
console.log("Computador ganhou");
} else {
console.log("Que pena." + '\n' + "Encerramos por aqui então!" + '\n' + "O jogo Acabou!")
}
}
145 changes: 133 additions & 12 deletions versao_2.js
Original file line number Diff line number Diff line change
@@ -1,13 +1,134 @@
/**
* EXEMPLO DE UTILIZAÇÃO DA 'comprarCarta'
*
*
const carta = comprarCarta(); // Sorteia uma carta. Por exemplo, o rei de ouros

console.log(carta.texto) // imprime o texto da carta. Exemplo: "K♦️" (indica "K" de ouros)
console.log(carta.valor) // imprime o valor da carta (um número). Exemplo: 10 (dado que "K" vale 10)
*
*
*
*/
let jogador = []
let computador = []

if(confirm("Bem-vindo ao Blackjack!" + "\n" + "Quer jogar ?")){
let cartasOk = false
while (!cartasOk){

jogador.push(comprarCarta())
jogador.push(comprarCarta())
computador.push(comprarCarta())
computador.push(comprarCarta())

// Se o valor for de A for 11 então sorteie de novo
if ((jogador[0].valor === 11 && jogador[1].valor === 11) ||
(computador[0].valor === 11 && computador[1].valor === 11)) {

jogador = []
computador = []
} else {
cartasOk = true
}
}

// Comprar mais cartas "Jogador"

let comprando = true

while(comprando){
let textos = ""
let pontos = 0
for (let carta of jogador){
textos += carta.texto + " "
pontos += carta.valor
}

if (pontos > 21){
comprando = false
} else {
let confirmCompra = confirm(
`Suas cartas são ${textos}. A carta do computador é ${computador[0].texto}.` +
"\n"+
"Quer comprar mais uma cart ?"
)

if (confirmCompra){
jogador.push(comprarCarta())
} else {
comprando = false
}
}
}




// Cálculo dos pontos
let pontosComputador = 0
let pontosJogador = 0
let textosComputador = ""
let textosJogador = ""

// Computador
for (let carta of computador){
pontosComputador += carta.valor
textosComputador += carta.texto + " "
}

// Jogador
for (let carta of jogador){
pontosJogador += carta.valor
textosJogador += carta.texto + " "
}






// Comprar mais cartas "Computador"
if (pontosJogador <= 21){
while (pontosComputador < pontosJogador && pontosComputador <= 21){
computador.push(comprarCarta())
pontosComputador = 0
textosComputador = ""
for (let carta of computador){
pontosComputador += carta.valor
textosComputador += carta.texto + " "
}
}
}



// Resultado da jogada:

let resultado = ""
if (pontosJogador > pontosComputador && pontosJogador <= 21){
resultado = "O usuário ganhou!"
} else if (pontosComputador > pontosJogador && pontosComputador <= 21){
resultado = "O computador ganhou!"
} else if (pontosComputador > 21 && pontosJogador <= 21){
resultado = "O usuário ganhou!"
} else if (pontosJogador > 21 && pontosComputador <= 21){
resultado = "O computador ganhou!"
} else {
resultado = "Empate!"
}

// Imprimir cartas dos dois lados

alert(
`Usuario - Cartas: ${textosJogador} - Pontuação: ${pontosJogador}` +
"\n" +
`Computador - Cartas: ${textosComputador} - Pontuação: ${pontosComputador}` +
"\n" +
resultado
)

} else {
alert("O jogo acabou.")
}