Construindo o jogo de dinossauros Chrome no Pygame (parte 1: código init & startup)

No último post, fomos apresentados ao que é o Pygame, alguns fatos sobre isso, uma visão geral do jogo que faremos e, em seguida, uma configuração básica do ambiente de desenvolvimento para trabalhar na série. Neste post, começaremos a construir um videogame com Pygame. Mas antes de prosseguirmos, preciso deixar claro que estou assumindo as seguintes coisas sobre você: você entende o inglês básico. Confie em mim, isso não é um dado. Você possui conhecimento básico da linguagem de programação Python. Caso contrário, consulte este recurso de codificação para aprender. Você está acompanhando um laptop ou desktop Mac, Linux ou Windows. Você não pode usar seu smartphone para isso, receio. Você configurou um ambiente de desenvolvimento básico e está pronto para obter codificação. Caso contrário, passe pelo post anterior antes de prosseguir com este certo, vamos mergulhar! Pygame Boilerplate. Para começar a fazer um jogo no Pygame, o primeiro passo é sempre inicializar e configurar o Pygame para funcionar em nosso ambiente local. Se você baixou com sucesso e adicionou a pasta inicial da postagem anterior, tudo o que você precisa fazer é abrir o arquivo main.py na raiz da estrutura de diretório do projeto. Você deve ver o seguinte Boilerplate: importar pygame pygame.init () screen_width, screen_height = 720, 400 window = pygame.display.set_mode ((screen_width, screen_height)) pygame.display.Set_Caption (“Gino”) game_running: # Enquete para eventos para eventos em pygame.event.get (): se event.type == pygame.quit: game_running = false pygame.display.update () pygame.Quit () se __name__ == ‘__min__’: main: main a todos os meios de halking. A tela agora realmente faz: Importar Pygame: diz ao intérprete Python para adicionar tudo no pacote Pygame ao nosso arquivo quando começar a executar esse arquivo. pygame.init (): é um método de pygame (função) que configura todos os módulos de que precisamos antes que possamos começar a usá -los em nosso programa. ou seja, “inicia” o pygame para que possamos começar a trabalhar com coisas como gráficos, som e entrada. Isso sempre deve ser colocado na parte superior do arquivo, logo após as instruções de importação. Window = pygame.display.set_mode ((screen_width, screen_height)): cria uma tela em branco (tela), onde podemos começar a criar nosso jogo e define sua largura e altura para os valores das constantes screen_width e screen_height, respectivamente. Sinta -se à vontade para alterar os valores dessas constantes para o que você quiser, afinal, este é o seu jogo. pygame.display.set_caption (‘gino’): define o título da janela do jogo que será exibida. Idealmente, este deve ser o nome do jogo que você deseja fazer. No meu caso, vou com Gino, mas fique à vontade para criar um nome diferente. Decidi empacotar o loop de jogabilidade principal e a lógica dentro de uma função personalizada chamada Main. Devo enfatizar que esta é uma decisão pessoal da minha parte e não uma regra que você deve seguir em seus próprios projetos. Além disso, se você optar por seguir minha ideia, sua função não precisa ser chamada de principal. Você pode usar um nome de função diferente. Dentro da minha função principal, a linha enquanto Game_Running: ajuda a configurar um loop de jogo que será para sempre (se você deixar). E dentro desse loop, a linha para evento em pygame.event.get (): permite que nosso programa analise a fila de eventos do Pygame para qualquer evento que desejar. Então, a linha se event.type == pygame.Quit ajuda nosso programa a saber quando o jogador atinge o ❌ na janela do jogo e depois encerramos o loop do jogo definindo o game_running = false e o jogo termina sem problemas. Discutiremos a fila de eventos _pygame com mais detalhes em posts futuros_ a linha pygame.update.display (), adiciona uma nova superfície na tela a cada ciclo (loop). Esse conceito é explicado um pouco mais mais tarde neste post. A linha se __name__ == ‘__main__’: diz ao intérprete Python para executar nossa função principal apenas quando o arquivo main.py é executado como um programa independente. Clique aqui para saber mais sobre como isso funciona. Tudo bem, agora que terminamos com o passo a passo, vamos executar o código e ver o que acontece. Abra seu terminal (ou prompt de comando / PowerShell se estiver no Windows) e digite um dos seguintes comandos: python main.py Digite o modo de saída de tela cheia de tela cheia ou (principalmente para usuários do Linux) Python3 Main.py Digite o modo de saída da tela cheia e depois pressione a tecla Enter no seu teclado. Você deve ver algo assim: vamos tornar o fundo branco que nosso jogo tem um fundo branco, então, naturalmente, precisamos tornar a cor do fundo da tela branca. Para conseguir isso, porém, precisamos dizer à tela em branco que o nome anterior foi nomeado para criar uma nova superfície com sua cor de fundo definida como branco. Tenho certeza de que agora você está pensando em todas ou em uma das seguintes perguntas: Por que essa superfície ele continua mencionando? Por que precisamos de uma nova superfície? Como eu realmente faço isso? Para responder à primeira pergunta: uma superfície é a unidade de layout mais básica do Pygame. Ou seja, tudo exibido na tela é exibido como uma superfície para sua segunda pergunta, seria útil imaginar a tela do Pygame como uma pilha ou pilha de folhas de papel, cada uma exibindo uma variação diferente de um desenho específico que não pode ser apagado (suponha que fizemos esse desenho com uma caneta em vez de um lápis). Com mente, fica claro que a única maneira de fazer alterações no que é exibido seria adicionar folha de papel ou, no nosso caso, uma nova camada ou superfície na parte superior da pilha. Aqui está algo para ajudar sua imaginação: esse processo de adicionar uma nova superfície na parte superior de todos os outros é essencialmente a função do pygame.display.update () mostrado anteriormente. Em poucas palavras: todas as novas alterações na tela no pygame são alcançadas por camadas de superfícies mais recentes com pequenas variações no que é desenhado sobre elas sobre as mais antigas. Por fim, para realmente fazer isso em nosso código, simplesmente precisamos chamar o método de preenchimento () em nossa janela de tela e passá -lo uma tupla representando o valor RGB de nossa cor que queremos. Portanto, dentro da nossa função principal, simplesmente adicionaremos a seguinte linha: … def main (): “” “” Código principal do jogo. “” “Game_running = true while game_running: … window.fill ((255, 255, 255)) # pygame WHITE FELLE FLOTE.DISPLAY.UPDATE () Pygame.Quit () … Enter FullScreen Screen Ext -Screen Extcled. ie window.fill (‘branco’) também funcionaria. É uma boa ideia refatorar a cor em sua própria constante, para que seja mais reutilizável. Lembre -se de que ser preguiçoso faz parte do seu trabalho como desenvolvedor e tornar as coisas reutilizáveis ​​ajuda você a permanecer preguiçoso: … branco = (255, 255, 255) def main (): “” “” Código principal para o jogo. “” “Game_running = fullScreen when game_running: … window.fill (white) pygame.disPlay.Update () pygame. Essas mudanças, executam seu código novamente e você deve ver algo assim: é isso, terminamos. Veja o código completo no Github, tudo bem, hoje temos que inicializar e configurar o Pygame para construir nosso jogo, aprendemos um pouco sobre as superfícies e como o Pygame lida com o processo de atualização da tela durante o jogo e, finalmente, mudamos a cor da tela do nosso jogo (tela) da cor preta inicial para um branco mais apropriado. Parabéns !!! Acabamos de fazer o Pygame para executar em nosso computador. Você é um pygâmero ainda mais durão agora. Pronto para subir de nível? No próximo post, começaremos a procurar maneiras de exibir elementos do jogo na tela. Mas por enquanto: obrigado por ler

Fonte

Você pode ter perdido