CS50 - Atari

CS50 - Atari

DEV

Franco Mansur

UX/UI Designer

Como tarefa do módulo 1 do curso CS50 (Harvard), desenvolvi um jogo (Atari Breakout) no Scratch. O objetivo principal foi ter uma base de lógica de programação.

• Lógica de programação

• Controle de fluxo

• Detecção de colisões

• Manipulação de eventos

• Design de jogos

Clique aqui para acessar o jogo no Scratch ou clique na bandeira para começar:
(Recomendado jogar no desktop)

Desafio

Desenvolver um jogo básico na plataforma Scratch.

Pseudocódigo

O pseudocódigo serve como uma ferramenta intermediária entre o pensamento humano e o código de programação. Ele é usado para estruturar e descrever algoritmos de forma clara e compreensível, sem a necessidade de se ater à sintaxe específica de uma linguagem de programação.

Bola

Inicie o jogo com a bola se movendo em uma direção.

Se a bola colidir com a raquete ou com blocos, mude a direção.

Se a bola colidir com o chefe, mude a direção e incremente a pontuação.

Se a bola sair da tela, o jogo acaba.

Raquete

Mova a raquete para esquerda e direita seguindo o movimento do mouse.

Blocos

Para cada bloco, se for atingido pela bola, ele desaparece.

Boss

O chefe aparece quando a pontuação atinge um certo limite.

Se atingido pela bola, o chefe desaparece.

Piso

Se a bola tocar no piso, envie a mensagem de "Game Over".

Game Over / Win

"Game Over" aparece se a bola tocar no piso, terminando o jogo.

"You Win" aparece se todos os blocos e o chefe forem destruídos, terminando o jogo.

Código (Scratch)

Desafio


Desenvolver um jogo básico na plataforma Scratch.

Pseudocódigo

O pseudocódigo serve como uma ferramenta intermediária entre o pensamento humano e o código de programação. Ele é usado para estruturar e descrever algoritmos de forma clara e compreensível, sem a necessidade de se ater à sintaxe específica de uma linguagem de programação.

Bola

Inicie o jogo com a bola se movendo em uma direção.

Se a bola colidir com a raquete ou com blocos, mude a direção.

Se a bola colidir com o chefe, mude a direção e incremente a pontuação.

Se a bola sair da tela, o jogo acaba.

Raquete

Mova a raquete para esquerda e direita seguindo o movimento do mouse.

Blocos

Para cada bloco, se for atingido pela bola, ele desaparece.

Boss

O chefe aparece quando a pontuação atinge um certo limite.

Se atingido pela bola, o chefe desaparece.

Piso

Se a bola tocar no piso, envie a mensagem de "Game Over".

Game Over / Win

"Game Over" aparece se a bola tocar no piso, terminando o jogo.

"You Win" aparece se todos os blocos e o chefe forem destruídos, terminando o jogo.

Código (Scratch)

Desafio


Desenvolver um jogo básico na plataforma Scratch.

Pseudocódigo

O pseudocódigo serve como uma ferramenta intermediária entre o pensamento humano e o código de programação. Ele é usado para estruturar e descrever algoritmos de forma clara e compreensível, sem a necessidade de se ater à sintaxe específica de uma linguagem de programação.

Bola

Inicie o jogo com a bola se movendo em uma direção.

Se a bola colidir com a raquete ou com blocos, mude a direção.

Se a bola colidir com o chefe, mude a direção e incremente a pontuação.

Se a bola sair da tela, o jogo acaba.

Raquete

Mova a raquete para esquerda e direita seguindo o movimento do mouse.

Blocos

Para cada bloco, se for atingido pela bola, ele desaparece.

Boss

O chefe aparece quando a pontuação atinge um certo limite.

Se atingido pela bola, o chefe desaparece.

Piso

Se a bola tocar no piso, envie a mensagem de "Game Over".

Game Over / Win

"Game Over" aparece se a bola tocar no piso, terminando o jogo.

"You Win" aparece se todos os blocos e o chefe forem destruídos, terminando o jogo.

Código (Scratch)

Desafio


Desenvolver um jogo básico na plataforma Scratch.

Pseudocódigo

O pseudocódigo serve como uma ferramenta intermediária entre o pensamento humano e o código de programação. Ele é usado para estruturar e descrever algoritmos de forma clara e compreensível, sem a necessidade de se ater à sintaxe específica de uma linguagem de programação.

Bola

Inicie o jogo com a bola se movendo em uma direção.

Se a bola colidir com a raquete ou com blocos, mude a direção.

Se a bola colidir com o chefe, mude a direção e incremente a pontuação.

Se a bola sair da tela, o jogo acaba.

Raquete

Mova a raquete para esquerda e direita seguindo o movimento do mouse.

Blocos

Para cada bloco, se for atingido pela bola, ele desaparece.

Boss

O chefe aparece quando a pontuação atinge um certo limite.

Se atingido pela bola, o chefe desaparece.

Piso

Se a bola tocar no piso, envie a mensagem de "Game Over".

Game Over / Win

"Game Over" aparece se a bola tocar no piso, terminando o jogo.

"You Win" aparece se todos os blocos e o chefe forem destruídos, terminando o jogo.

Código (Scratch)


Sprite da Bola:
    Quando o jogo começar:
        Posicione a bola no centro da tela
        Direcione a bola para baixo e para a esquerda
        Enquanto o jogo estiver ativo:
            Se a bola tocar a raquete, inverta a direção verticalmente
            Se a bola tocar a cor dos blocos ou o chefe, inverta a direção verticalmente e adicione 1 à pontuação
            Se a bola sair da tela por baixo, sinalize "Game Over"
            Se a pontuação for 9, ative o chefe
            Se a pontuação for 100, sinalize "You Win"
            Mova a bola para a frente
            Se a bola tocar nas bordas da tela, faça-a rebater

Sprite da Raquete:
    Quando o jogo começar:
        Siga o movimento horizontal do mouse

Sprite dos Blocos:
    Quando o jogo começar:
        Crie clones dos blocos em posições definidas na tela
    Quando um clone for atingido pela bola:
        Esconda o clone

Sprite do Chefe (Boss):
    Quando "Boss" for sinalizado:
        Mostre o chefe na tela
    Quando "You Win" ou "Game Over" for sinalizado:
        Esconda o chefe

Sprite do Piso (Floor):
    Quando o jogo começar:
        Mostre o piso
    Se a bola tocar o piso:
        Sinalize "Game Over"

Sprite de Mensagem "Game Over":
    Quando "Game Over" for sinalizado:
        Mostre a mensagem "Game Over"
        Pare todos os scripts

Sprite de Mensagem "You Win":
    Quando "You Win" for sinalizado:
        Mostre a mensagem "You Win"
        Pare todos os scripts