Desenvolvendo Jogos Simples com JavaScript

Share on facebook
Share on twitter
Share on linkedin
Share on pinterest
Share on tumblr
Share on telegram
Share on whatsapp
Share on skype
Share on email

Desenvolvendo Jogos Simples com JavaScript

Aprenda a desenvolver jogos simples como Pedra, Papel e Tesoura, Jogo da Memória ou Jogo da Velha usando JavaScript com passos fáceis e exemplos reais.

Dicas de JavaScript básico para iniciantes - Manipulação de DOM
Tutorial de JavaScript básico para iniciantes

Introdução

JavaScript é uma linguagem de programação extremamente versátil, especialmente quando se trata de desenvolvimento web. Uma de suas aplicações mais interessantes é a criação de jogos simples. Neste post, vamos explorar como desenvolver três jogos clássicos usando JavaScript: Pedra, Papel e Tesoura, Jogo da Memória e Jogo da Velha. Vamos abordar cada jogo passo a passo, garantindo que mesmo iniciantes possam acompanhar e entender.

1. Pedra, Papel e Tesoura

Descrição: Pedra, Papel e Tesoura é um jogo clássico de escolhas onde cada jogador escolhe entre três opções. As regras são simples: pedra vence a tesoura, tesoura vence o papel e papel vence a pedra.

Passo a Passo:

Estrutura HTML:

<!DOCTYPE html>
<html lang="pt-BR">
<head>
    <meta charset="UTF-8">
    <title>Pedra, Papel e Tesoura</title>
    <style>
        .btn { margin: 10px; padding: 10px; cursor: pointer; }
    </style>
</head>
<body>
    <h1>Pedra, Papel e Tesoura</h1>
    <button class="btn" id="pedra">Pedra</button>
    <button class="btn" id="papel">Papel</button>
    <button class="btn" id="tesoura">Tesoura</button>
    <div id="resultado"></div>
    <script src="script.js"></script>
</body>
</html>

Lógica JavaScript:

document.getElementById('pedra').addEventListener('click', () => jogar('pedra'));
document.getElementById('papel').addEventListener('click', () => jogar('papel'));
document.getElementById('tesoura').addEventListener('click', () => jogar('tesoura'));

function jogar(escolhaUsuario) {
    const escolhas = ['pedra', 'papel', 'tesoura'];
    const escolhaComputador = escolhas[Math.floor(Math.random() * 3)];
    let resultado = '';

    if (escolhaUsuario === escolhaComputador) {
        resultado = 'Empate!';
    } else if (
        (escolhaUsuario === 'pedra' && escolhaComputador === 'tesoura') ||
        (escolhaUsuario === 'papel' && escolhaComputador === 'pedra') ||
        (escolhaUsuario === 'tesoura' && escolhaComputador === 'papel')
    ) {
        resultado = 'Você venceu!';
    } else {
        resultado = 'Você perdeu!';
    }

    document.getElementById('resultado').innerText = `Você escolheu ${escolhaUsuario}, o computador escolheu ${escolhaComputador}. ${resultado}`;
}

2. Jogo da Memória

Descrição: O Jogo da Memória é um jogo que desafia sua capacidade de lembrar a posição de pares de cartas. Ao clicar em uma carta, ela revela uma imagem. O objetivo é encontrar todos os pares correspondentes.

Passo a Passo:

Estrutura HTML:

<!DOCTYPE html>
<html lang="pt-BR">
<head>
    <meta charset="UTF-8">
    <title>Jogo da Memória</title>
    <style>
        .card { width: 100px; height: 100px; margin: 10px; float: left; cursor: pointer; background-color: #f0f0f0; }
        .matched { background-color: #a0ffa0; }
    </style>
</head>
<body>
    <h1>Jogo da Memória</h1>
    <div id="game-board"></div>
    <script src="memory.js"></script>
</body>
</html>

Lógica JavaScript:

const cards = ['A', 'A', 'B', 'B', 'C', 'C', 'D', 'D', 'E', 'E', 'F', 'F'];
let shuffledCards = cards.sort(() => 0.5 - Math.random());
let selectedCards = [];
let matchedCards = [];

shuffledCards.forEach((card, index) => {
    const cardElement = document.createElement('div');
    cardElement.classList.add('card');
    cardElement.dataset.card = card;
    cardElement.addEventListener('click', () => revealCard(cardElement, card, index));
    document.getElementById('game-board').appendChild(cardElement);
});

function revealCard(cardElement, card, index) {
    if (selectedCards.length < 2 && !cardElement.classList.contains('matched')) {
        cardElement.innerText = card;
        selectedCards.push({ card, index });

        if (selectedCards.length === 2) {
            if (selectedCards[0].card === selectedCards[1].card && selectedCards[0].index !== selectedCards[1].index) {
                matchedCards.push(selectedCards[0].index, selectedCards[1].index);
                document.querySelectorAll('.card').forEach((el) => {
                    if (matchedCards.includes(parseInt(el.dataset.index))) {
                        el.classList.add('matched');
                    }
                });
            } else {
                setTimeout(() => {
                    document.querySelectorAll('.card').forEach((el) => {
                        if (!matchedCards.includes(parseInt(el.dataset.index))) {
                            el.innerText = '';
                        }
                    });
                }, 1000);
            }
            selectedCards = [];
        }
    }
}

3. Jogo da Velha

Descrição: Jogo da Velha é um jogo de dois jogadores onde cada jogador alterna para marcar um espaço em uma grade 3×3. O primeiro a conseguir três marcas em linha, coluna ou diagonal vence.

Passo a Passo:

Estrutura HTML:

<!DOCTYPE html>
<html lang="pt-BR">
<head>
    <meta charset="UTF-8">
    <title>Jogo da Velha</title>
    <style>
        .grid { display: grid; grid-template-columns: repeat(3, 100px); grid-gap: 10px; }
        .cell { width: 100px; height: 100px; display: flex; justify-content: center; align-items: center; font-size: 2em; cursor: pointer; background-color: #f0f0f0; }
    </style>
</head>
<body>
    <h1>Jogo da Velha</h1>
    <div class="grid" id="game-board"></div>
    <div id="resultado"></div>
    <script src="tictactoe.js"></script>
</body>
</html>

Lógica JavaScript:

const board = ['', '', '', '', '', '', '', '', ''];
let currentPlayer = 'X';
const winConditions = [
    [0, 1, 2], [3, 4, 5], [6, 7, 8],
    [0, 3, 6], [1, 4, 7], [2, 5, 8],
    [0, 4, 8], [2, 4, 6]
];

document.querySelectorAll('.cell').forEach((cell, index) => {
    cell.addEventListener('click', () => makeMove(cell, index));
});

function makeMove(cell, index) {
    if (board[index] === '' && !checkWin()) {
        board[index] = currentPlayer;
        cell.innerText = currentPlayer;
        if (checkWin()) {
            document.getElementById('resultado').innerText = `Jogador ${currentPlayer} venceu!`;
        } else if (board.includes('')) {
            currentPlayer = currentPlayer === 'X' ? 'O' : 'X';
        } else {
            document.getElementById('resultado').innerText = 'Empate!';
        }
    }
}

function checkWin() {
    return winConditions.some(condition => {
        return condition.every(index => board[index] === currentPlayer);
    });
}

Considerações Finais

Desenvolver jogos simples com JavaScript é uma excelente maneira de praticar e aprimorar suas habilidades de programação. Com estes exemplos, você pode expandir suas habilidades e criar jogos mais complexos. Experimente adicionar mais recursos, como placares, níveis de dificuldade ou gráficos aprimorados. A prática constante é fundamental para dominar a programação em JavaScript.

💡 Gostou do conteúdo?

Apoie-nos: Siga, Curta, Comente e Compartilhe!

📲 Conecte-se com a WebMundi:

▶️ YouTube

▶️ Facebook

▶️ Instagram

▶️ LinkedIn

▶️ TikTok

👥 Participe do nosso Discord para tirar dúvidas e ajudar outras pessoas!

🔗 Discord webmundi.com

Gostou do Post ? Compartilhe com seus amigos nas redes sociais.

Share on facebook
Share on twitter
Share on linkedin
Share on pinterest
Share on tumblr
Share on telegram
Share on whatsapp
Share on skype
Share on email

☑️ Comunidades Colaborativas de Aprendizagem 💬

❓ Esclareça suas dúvidas e ajude outras pessoas a aprender sobre o assunto proposto em nossa comunidade colaborativa no Facebook.

Compartilhe ideias e atividades com outros membros enquanto aprendemos juntos em um ambiente virtual criado e mantido pelo webmundi.com.
Aproveite essa oportunidade gratuita para aprimorar seus conhecimentos e participar de discussões sobre o assunto que você está interessado.

☑️ Grupos WebMundi.com Facebook

✔️ Banco de dados : Dicas
▶️ https://bit.ly/dbbrasil

✔️ Windows Dicas
▶️ https://bit.ly/windowsdicas

✔️ Linux : Dicas, Truques e Tutoriais
▶️ https://bit.ly/linuxdicas

 

✔️ Dev Brasil : Desenvolvimento de Software : Programação (Java, Python, Javascript, Flutter, PHP, Html,CSS e muito mais)
▶️ https://bit.ly/devbrasil

✔️ Virtualização de Computadores : Tecnologia
▶️ https://bit.ly/virtualizabr

APOIE O WEBMUNDI.COM

Apoie o Projeto WebMundi.com!

Se você é fã do conteúdo gratuito e de qualidade que o WebMundi.com oferece no Site, Youtube e grupos, agora é a hora de demonstrar seu apoio e ajudar a mantê-lo disponível.
Qualquer doação, por menor que seja, será muito valiosa para nós e fará toda a diferença.

Basta utilizar o PIX ou o botão VALEU do Youtube para fazer sua contribuição.
Não perca essa oportunidade de ajudar a manter o WebMundi.com ativo e fornecer ainda mais conteúdo de qualidade para você e para outros.

Faça sua doação agora e seja parte da nossa comunidade de apoio!

Ajude a manter nossa criação de conteúdo e operação em funcionamento

Estrutura WebMundi | Sites e Canal Youtube

Ter presença na Internet implica em custos como:

  • Domínios (www.webmundi.com / www.webmundi.org)
  • Hospedagem (local onde fica a estrutura do site / páginas / banco de dados)
  • Softwares (programas utilizados para montar e manter o site em operação e edição de vídeo)
  • Layout e Desenvolvimento (profissionais que constroem, mantêm e divulgam o site e o canal)
  • Produção de Conteúdo (Profissionais como Redatores, Produtores, Editores de vídeo, etc…)
  • Certificados de Segurança (cadeado / segurança da página, possibilita a segurança na navegação e seus dados)
  • Manutenção do Site (atualizações do site, criação de novas páginas)

Loja Virtual | WebMundi.com

Outra forma de apoiar a criação de conteúdo no YouTube e em nossos sites é nossa loja virtual Parceria do WebMundi.com com as maiores plataformas de comércio eletrônico do Brasil. Nossa loja é integrada com nossos parceiros associados e possui uma ampla variedade de produtos de marcas renomadas. O Cliente ao escolher um produto é direcionado a loja parceira onde pode fazer sua compra com tranquilidade em um ambiente seguro e 100% confiável. Confira: Loja Virtual WebMundi.com Alguns de nossos parceiros associados:
Shopee Mercado Livre AliExpress Magalu Amazon
Obrigado pela confiança e preferência.

TALVEZ VOCÊ GOSTE TAMBÉM

Mais Assistidos
Como BAIXAR a ISO do WINDOWS 10 OFICIAL e Criar um Pendrive Bootável
Play Video about Como BAIXAR a ISO do WINDOWS 10 OFICIAL e Criar um Pendrive Bootável
Como instalar o Oracle Virtualbox e Criar Máquinas Virtuais (VMs)
Play Video about Como instalar o Oracle Virtualbox e Criar Máquinas Virtuais (VMs)
atualizar windows 7 para windows 10 2020
Play Video about atualizar windows 7 para windows 10 2020
Instalar o Servidor XAMPP no Linux - Localhost Apache MySQL PHP
Play Video about Instalar o Servidor XAMPP no Linux - Localhost Apache MySQL PHP
Como BAIXAR a ISO do WINDOWS 11 OFICIAL e Criar um Pendrive Bootável
Play Video about Como BAIXAR a ISO do WINDOWS 11 OFICIAL e Criar um Pendrive Bootável
Como Transferir o Windows do HD para um SSD : Migrar Windows 10 para SSD sem formatar
Play Video about Como Transferir o Windows do HD para um SSD : Migrar Windows 10 para SSD sem formatar
Como Instalar MySQL + MySQL Workbench : Windows 10
Play Video about Como Instalar MySQL + MySQL Workbench : Windows 10
Instalação Eclipse IDE - Windows
Play Video about Instalação Eclipse IDE - Windows

Discord : WebMundi.com

Uma comunidade apaixonada por tecnologia, onde entusiastas, estudantes e profissionais de TI se reúnem.

Faça Parte do nossa Comunidade!

Junte-se a nós para aprender, colaborar e expandir seus horizontes na área de informática! 🚀
Entrar
Recentes