The activity aimed to develop a platform game. In addition to platforms, concepts such as camera movement should be used to immerse the player.
In the case of this project, the game was developed with the theme of the Dune book series in mind, authored by writer Frank Herbert. The theme was used for personal learning and enjoyment purposes only. All original rights to the work belong to the author and the responsible organizations that own the copyright of the Dune series.
I hope that this small work can be considered a simple tribute to Frank Herbert and his great masterpiece.
~ The spice must flow! ~
Todas as fases possuem 3 objetivos para serem concluídas, sendo eles:
-
Derrotar os inimigos Sardaukars.
-
Coletar a especiaria Mélange.
-
Obter a Água da Vida após o Escudo que a protege ser removido ao cumprir os dois itens anteriores.
| Inimigo Sardaukar | Especiaria Mélange |
|---|---|
![]() |
![]() |
| Escudo Bolha | Água da Vida |
|---|---|
![]() |
![]() |
O jogo possui dez fases, a estrutura geral é basicamente a mesma, porém, as plataformas e itens estão poscionados em locais diferentes e a quantidade e posição dos inimigos também mudam. Uma visão geral das fases pode ser vista nas imagens abaixo:
| Fase 1 | Fase 2 |
|---|---|
![]() |
![]() |
| Fase 3 | Fase 4 |
|---|---|
![]() |
![]() |
| Fase 5 | Fase 6 |
|---|---|
![]() |
![]() |
| Fase 7 | Fase 8 |
|---|---|
![]() |
![]() |
| Fase 9 | Fase 10 |
|---|---|
![]() |
![]() |
| Menu do jogo |
|---|
![]() |
O jogo utilizou sprites open source prontos, fornecidos gratuitamente no site craftpix.net. A movimentação do personagem foi desenvolvida em partes utilizando um controller de animação da Unity e, em alguns detalhes, no código do script que controla a movimentação do personagem, como pode ser visto nas imagens abaixo:
| Controller da animação | Sprites livres |
|---|---|
![]() |
| Start do PlayerControl.cs |
|---|
![]() |
| Script das colisões |
|---|
![]() |
| Script da movimentação |
|---|
![]() |
O jogo possui scripts para movimentação da câmera, que segue o movimento do personagem nas plataformas. Um GameManager faz o controle central do jogo, enquanto um ScoreManager cuida, de maneira estática, da pontuação geral das fases (a classe static funcionou melhor que o padrão singleton no caso do jogo). Existe uma classe para os atributos do personagem e classes para gerenciar a colisão com os itens, todas visíveis nas imagens abaixo:
| Script da câmera |
|---|
![]() |
| Script do GameManager |
|---|
![]() |
| O GameManage utiliza uma HashTable para fazer o apontamento das fases e arrays para monitorar os inimigos. |
| Start do GameManager |
|---|
![]() |
| Monitoramento dos inimigos |
|---|
![]() |
| Update do GameManager |
|---|
![]() |
| Troca de cenas |
|---|
![]() |
| Controle dos finais |
|---|
![]() |
| Coleta da especiaria |
|---|
![]() |
| Classe estática |
|---|
![]() |
| A Classe seria um ScoreManager , o seu nome foi alterado em referência aos Fremen de Arrakis, e o atributo do array em alusão ao Duque Leto. |
| Classe dos atributos |
|---|
![]() |
| A Classe de atributos teve o nome alterado em referência a Guilda Espacial, e o atributo de vida em alusão a Lady Jéssica. |
~ Father, the sleeper has awakened! ~





























