/PedraPapelTesoura

JoKenPo - Pedra, Papel e Tesoura - IFSP

Primary LanguageKotlin

JoKenPo – Pedra, Papel e Tesoura 👊 ✋ ✌️

Pós Graduação em desenvolvimento Mobile - IFSP/2021

Professor - Pedro Northon Nobile (nobile@ifsp.edu.br)

Especificação de Exercício

Objetivo

Avaliar os conhecimentos obtidos com os conceitos iniciais de componentes de UI, leiautes, tratamento de eventos e uso de recursos.

Restrições

Nome do projeto: O nome do projeto e consequentemente do repositório Git compartilhado deve ser PedraPapelTesoura. Respeite letras maíusculas e minúsculas. Qualquer diferença em relação ao nome do repositório dado implica em não correção do projeto.

Descrição I - Java

O exercício consiste no desenvolvimento de um aplicativo do tradicional jogo JoKenPo ou Pedra-Papel-Tesoura. O usuário poderá selecionar que o jogo será jogado por dois ou três participantes. No caso de dois participantes serão um jogador humano (usuário) e um jogador automático (aplicativo) e no caso de três participantes serão um jogador humano e dois jogadores automáticos. O usuário deverá escolher sua jogada entre botões (preferencialmente com imagens) e aguardar a saída da jogada dos demais jogadores. Por fim, o resultado do jogo que pode ser vitória, derrota ou empate deverá ser exibido ao usuário.

Descrição II - Kotlin

O exercício consiste na modificação do aplicativo desenvolvido como exercício, o JoKenPo ou Pedra-Papel-Tesoura. De agora em diante o usuário deve ser capaz de acessar uma tela de configuração a partir de um menu na barra de ação. Nessa tela de configuração o usuário deve poder escolher entre a quantidade de jogadores que irão jogar. Os valores possíveis para a quantidade de usuários são 2 (1 humano e 1 computador) e 3 (1 humano e 2 computadores, como já estava implementado. Na mesma tela o usuário será capaz de escolher entre a quantidade de rodadas para ser declarado um vencedor do jogo. Nesse caso será possível escolher entre 1, 3 e 5 rodadas. O usuário deve conseguir salvar a configuração ou cancelar. De volta a tela principal, o jogo deve ser iniciado ou reiniciado, caso tenha sido feita alguma alteração de configuração. Uma vez em jogo, deve-se declarar o vencedor de cada rodada e, ao final da quantidade de rodadas, um vencedor do jogo, se houver. A possibilidade de empates nas rodadas e no jogo deve ser considerada.

Atenção, essa lógica de rodadas não foi implementada no aplicativo original e deve ser adicionada.

Entrega

A entrega deve ser feita por meio do compartilhamento do repositório Git até a data estipulada no ambiente da disciplina. Além do código do projeto, o repositório deve conter um pequeno vídeo que demonstre o jogo sendo executado.

Vídeo:

https://github.com/fernandosantis/PedraPapelTesoura/raw/main/video.mp4