O projeto localiza-se em https://github.com/joaopedrogms/GAMES-IP.git. Em README.mp o usuário pode ler instruções para instalação, execução e jogabilidade do programa salvo no repositório.
(Observação: Imagens e modelos utilizados pertecem aos seus devidos criadores e detentores de seus direitos. Sua finalidade se resume a motivos didáticos sem propósitos monetários.)
Classe responsável por todas as interações do “avatar” com outros objetos coletáveis do cenário, além da sua movimentação, hitbox, gravidade, habilidade de pular e sua limitação quando em contato com objetos de colisão não coletáveis para movitação. Além de possuir condição que força sua parada assim que o objeto “cage” é coletado sinalizando o fim da fase.
class Character(pg.sprite.Sprite):
def __init__(self):
pg.sprite.Sprite.__init__(self)
self.image = load_image('main_character_idle.png')
self.rect = load_image('main_character_idle.png').get_rect()
def _jump(self):
up_pressed = pg.key.get_pressed()[pg.K_UP]
w_pressed = pg.key.get_pressed()[pg.K_w]
space_pressed = pg.key.get_pressed()[pg.K_SPACE]
if not self.cage_collected:
if (up_pressed or w_pressed or space_pressed) and self.on_ground and not self.jumping:
self.vertical_speed = self.jumping_height
self.jumping = True
else:
if self.can_jump and self.on_ground and not self.jumping:
self.vertical_speed = self.jumping_height
self.jumping = True
def _walk(self, width):
d_pressed = pg.key.get_pressed()[pg.K_d]
right_pressed = pg.key.get_pressed()[pg.K_RIGHT]
left_pressed = pg.key.get_pressed()[pg.K_LEFT]
a_pressed = pg.key.get_pressed()[pg.K_a]
É quem define todos os coletáveis no espaço do programa. Classe utilizada na aplicação de funções com tipos distintos de objetos para coleta como morangos, chaves e gaiolas. Novos objetos coletáveis podem ser adicionados com certa facilidade simplesmente por meio de uma chamada a classe atráves de uma função em main, indicando qual o objeto, sua posição e então o retornando para a função. A classe Princess representa a lhama em loop com a função “jumping” uma vez que a mesma é libertada da gaiola.