Foram eliminados alguns métodos redundantes do código, a saber:
Get_Colisao_Com_Visao()
Já existe um método que verifica a colisão com o campo de visão, que é o getCollidingCampoVisao()
get_HP()
Já existe um método que retorna o HP do objeto, que é o getHP()
getSomJogador() e a variável booleana tocar_jogador
Se o intuito era verificar se o jogador ainda estava vivo para tocar o som de quando apanha, é mais lógico usar o método já implementado IsDead(). O código fica mais limpo e não precisa dizer para todos os inimigos que o jogador morreu para parar de tocar o som de quando apanha.
Ao invés de: if (tocar_jogador)
É mais intuitivo: if (!jogadorAlvo.IsDead())
variável booleana Inimigo_vivo
Ao invés de: if (Inimigo_Vivo == false)
É mais intuitivo: if (IsDead())
get_Game_Over()
Este método é redundante. No seu lugar, podemos usar uma generalização do método get_Desenhar() para o jogador. Afinal, quando o jogador não puder mais ser desenhado, significa que morreu, e consequentemente será Game Over. Isso permitirá unificar os médotos Update() das classes Jogador, Inimigo01 e Chefao, que estavam separadas só por que usavam variáveis booleanas diferentes. O método ficará na classe pai Personagem e será igual para todos.
Classe Fade
A classe Fade foi excluída do projeto, por não ser mais necessária.
Um comentário que passou batido nas aulas... Recomendo fortemente vocês adotarem alguns padrões quanto aos nomes de membros e métodos.
ResponderExcluirNão só o código fica mais organizado como facilita o desenvolvimento (você não fica na dúvida se é get_Something() ou GetSomething() ou getSomething() ou get_Algo(), getAlgo(), etc, etc).
Tanto quanto ao uso de underscore e maiúsculas/minúsculas quanto a ser em inglês ou português.
Abraços!