0% acharam este documento útil (0 voto)
3 visualizações5 páginas

Assalto ao Banco: RPG Interativo

O documento é um código HTML para um jogo de RPG de texto chamado 'Assalto ao Banco'. O jogo permite que os jogadores façam escolhas que afetam o desenrolar da história, envolvendo cenários de assalto e fuga. O código inclui estilos CSS e lógica JavaScript para gerenciar a narrativa e as interações do jogador.

Enviado por

Guilh
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato TXT, PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
3 visualizações5 páginas

Assalto ao Banco: RPG Interativo

O documento é um código HTML para um jogo de RPG de texto chamado 'Assalto ao Banco'. O jogo permite que os jogadores façam escolhas que afetam o desenrolar da história, envolvendo cenários de assalto e fuga. O código inclui estilos CSS e lógica JavaScript para gerenciar a narrativa e as interações do jogador.

Enviado por

Guilh
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato TXT, PDF, TXT ou leia on-line no Scribd

<!

DOCTYPE html>
<html lang="pt-br">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Assalto ao Banco - RPG de Texto</title>
<style>
/* CSS - Estilo Básico para o Jogo */
body {
font-family: Arial, sans-serif;
background-color: #2c3e50;
color: #ecf0f1;
margin: 0;
padding: 0;
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
}

.game-container {
width: 60%;
text-align: center;
background-color: #34495e;
border-radius: 10px;
padding: 20px;
box-shadow: 0 0 15px rgba(0, 0, 0, 0.5);
}

h1 {
font-size: 2rem;
margin-bottom: 20px;
}

#story-container {
margin-bottom: 20px;
font-size: 1.2rem;
}

.choice-button {
background-color: #1abc9c;
border: none;
color: white;
padding: 15px 30px;
font-size: 1rem;
margin: 10px;
cursor: pointer;
border-radius: 5px;
transition: background-color 0.3s;
}

.choice-button:hover {
background-color: #16a085;
}
</style>
</head>
<body>
<div class="game-container">
<h1>Assalto ao Banco - RPG de Texto</h1>
<div id="story-container">
<p id="story-text">Bem-vindo ao jogo! Você está prestes a tomar
decisões importantes. O que você fará?</p>
</div>
<div id="choices-container">
<button class="choice-button" onclick="makeChoice(1)">Iniciar o
Assalto</button>
<button class="choice-button" onclick="makeChoice(2)">Ser o Piloto de
Fuga</button>
</div>
</div>

<script>
// JavaScript - Lógica do Jogo
let currentStage = 0; // Controla o estágio do jogo

// Função que muda o texto e as opções dependendo da escolha


function updateStory(text, choices) {
// Atualiza o texto da história
[Link]('story-text').textContent = text;

// Atualiza as opções de escolha


const choicesContainer = [Link]('choices-container');
[Link] = ''; // Limpa as escolhas anteriores

[Link]((choice, index) => {


const button = [Link]('button');
[Link]('choice-button');
[Link] = [Link];
[Link] = () => makeChoice([Link]);
[Link](button);
});
}

// Função chamada ao clicar em uma escolha


function makeChoice(choice) {
currentStage = choice;

switch(currentStage) {
case 0:
startGame();
break;
case 1:
assaltanteEscolhe();
break;
case 2:
pilotoEscolhe();
break;
case 3:
confrontoComSegurança();
break;
case 4:
falhaAssaltante();
break;
case 5:
falhaPiloto();
break;
case 6:
fugaComSucesso();
break;
case 7:
sucessoAssaltante();
break;
case 8:
distraçãoFalhou();
break;
case 9:
perseguiçãoPiloto();
break;
default:
gameOver();
break;
}
}

// Função inicial do jogo


function startGame() {
updateStory(
"Você está prestes a fazer uma grande escolha. O que você vai
fazer?",
[
{ text: 'Iniciar o Assalto', nextStage: 1 },
{ text: 'Ser o Piloto de Fuga', nextStage: 2 }
]
);
}

// Cenário do assaltante
function assaltanteEscolhe() {
updateStory(
"Você está em frente ao banco. O que você faz?",
[
{ text: 'Entrar com confiança', nextStage: 3 },
{ text: 'Entrar pela porta dos fundos', nextStage: 3 },
{ text: 'Esperar mais um pouco', nextStage: 3 }
]
);
}

// Cenário do piloto
function pilotoEscolhe() {
updateStory(
"Você está pronto para a fuga. O que você faz agora?",
[
{ text: 'Aguardar no carro e manter a calma', nextStage: 9 },
{ text: 'Verificar a rota de fuga', nextStage: 9 },
{ text: 'Ficar atento aos arredores', nextStage: 9 }
]
);
}

// Confronto com segurança no banco


function confrontoComSegurança() {
updateStory(
"Você entrou no banco e se aproximou do cofre. Mas o segurança te
viu! O que você faz?",
[
{ text: 'Tentar ameaçar o segurança com a arma', nextStage:
4 },
{ text: 'Tentar distrair o segurança e correr', nextStage: 8 },
{ text: 'Desistir e sair correndo do banco', nextStage: 4 }
]
);
}

// Cenário de falha do assaltante


function falhaAssaltante() {
updateStory(
"Você foi pego! O plano deu errado e a polícia chegou. Você é
preso!",
[
{ text: 'Tentar de novo', nextStage: 0 }
]
);
}

// Cenário de falha do piloto (agora relacionado a fuga de veículo)


function falhaPiloto() {
updateStory(
"Você foi cercado pela polícia durante a fuga! Eles estão atrás de
você e não há escapatória. Você é preso!",
[
{ text: 'Tentar de novo', nextStage: 0 }
]
);
}

// Cenário de sucesso no banco


function fugaComSucesso() {
updateStory(
"Você conseguiu sair do banco com o dinheiro! Agora, a polícia está
atrás de você. O que faz?",
[
{ text: 'Acelerar e tentar escapar pelas ruas estreitas',
nextStage: 7 },
{ text: 'Tentar despistar a polícia em uma estrada secundária',
nextStage: 7 },
{ text: 'Parar em um posto de gasolina e tentar se disfarçar',
nextStage: 7 }
]
);
}

// Cenário de sucesso do assaltante (final)


function sucessoAssaltante() {
updateStory(
"Você conseguiu escapar com sucesso! Você e seu piloto estão
livres! Parabéns!",
[
{ text: 'Jogar novamente', nextStage: 0 }
]
);
}

// Tentativa de distração falhou


function distraçãoFalhou() {
updateStory(
"A distração não funcionou e o segurança chamou reforços. A polícia
está chegando!",
[
{ text: 'Tentar fugir para a porta dos fundos', nextStage: 4 },
{ text: 'Render o segurança e seguir com o plano', nextStage: 4
}
]
);
}

// Perseguição do piloto (fuga de veículos)


function perseguiçãoPiloto() {
updateStory(
"Você está em plena fuga, mas a polícia está logo atrás! O que você
faz?",
[
{ text: 'Acelerar o carro e tentar perder eles nas ruas
estreitas', nextStage: 9 },
{ text: 'Tentar uma manobra arriscada em uma curva fechada',
nextStage: 9 },
{ text: 'Tentar escapar por uma estrada secundária e ficar fora
do radar', nextStage: 9 }
]
);
}

// Função de Game Over


function gameOver() {
updateStory(
"Fim de jogo. Você foi pego! Pressione 'Tentar de novo' para
começar novamente.",
[
{ text: 'Tentar de novo', nextStage: 0 }
]
);
}

// Inicia o jogo
startGame();
</script>
</body>
</html>

Você também pode gostar