quarta-feira, 3 de abril de 2019

Pygames: criando um cenário e a movimentação de um personagem.

Que tal construir uma programação em que o seu personagem se mova por um cenário pré-definido a partir das setas direcionais? E tudo isso em Python! Vamos lá? Você pode acompanhar toda a construção usando o arquivo fonte e as imagens que estão disponíveis em: https://drive.google.com/drive/folders/1JOVRnSzySzykeqij4o5BVgVyD2Rr7LnM?usp=sharing. Se você precisar de informações adicionais sobre o Python e sua instalação, consulte o seguinte post: https://vemfazermatematicaegames.blogspot.com/2018/10/minha-primeira-historia-em-python.html.



O código abaixo é responsável por construir esse pequeno game onde temos um Mário andando pela tela por meio das setas direcionais:



Caso você queira alterar o nome do game, substitua o nome 'Game do Mário' por um novo nome para o seu game, deixando as aspas. Para alterar tanto cenário como o personagem, você deve renomear no  código, os novos nomes e extensões de arquivos que você tem (em pygame.image.load). Lembre-se de deixar as novas imagens na mesma pasta que o arquivo Python e para o personagem, procure usar imagens do tipo PNG, pois elas não terão um fundo diferente que vai ficar contrastando com o cenário previamente escolhido.
A movimentação do personagem ocorre graças a um conjunto de "se" (if) que fazem verificações a todo momento se as teclas direcionais estão ou não pressionadas (if event.key == pygame.K_LEFT:). Caso a tecla não esteja pressionada, o personagem não anda em X ou Y. Caso, esteja pressionada, ele irá andar o valor 5 , respeitando o plano cartesiano:



Que novas modificações podem ser realizadas? Seria possível ter mais do que um cenário ou diversos personagens na mesma tela? Compartilhe nos comentários suas produções e até a próxima.

Nenhum comentário:

Postar um comentário

Como não perder nenhum compromisso: Meu App Agenda

No nosso dia a dia a agenda é um instrumento de grande importância que as pessoas utilizam para fazer anotações de compromissos ou informaçõ...