Muitos jogos usam sprites para representar o personagem do jogador ou inimigos. Descubra como a biblioteca Arcade do Python os torna fáceis de trabalhar.
A biblioteca Arcade do Python fornece uma maneira perfeita e intuitiva de incorporar sprites em seus projetos de desenvolvimento de jogos. Sprites são elementos essenciais que trazem apelo visual, interatividade e movimento dinâmico aos seus jogos.
Com a sintaxe simples e a poderosa funcionalidade do Arcade, adicionar sprites se torna muito fácil. A biblioteca permite que você aprimore seus jogos sem esforço com personagens e objetos cativantes.
Criando um jogo simples
O código usado neste artigo está disponível neste Repositório GitHub e é gratuito para você usar sob a licença do MIT.
Antes de começar, certifique-se de ter pip instalado no seu dispositivo. Use este comando para instalar a biblioteca arcade:
pip instalar fliperama
Comece criando um jogo simples usando a biblioteca Arcade do Python. Neste jogo, o jogador poderá se mover para a esquerda e para a direita.
Crie uma classe MyGame que herda de videogames. Janela. Depois disso, defina o método de configuração para inicializar as variáveis e o on_draw para desenhar os objetos do jogo. O on_key_press O método permite que o jogador mova o retângulo azul para a esquerda ou para a direita.
Aqui está o código para o seu jogo básico:
importar videogames
SCREEN_WIDTH = 640
SCREEN_HEIGHT = 480aulaMeu jogo(videogames. Janela):
def__iniciar__(auto, largura, altura):
super().__init__(largura, altura)
arcade.set_background_color (arcade.color. BRANCO)
defconfigurar(auto):
self.player_x = 320
defon_draw(auto):
arcade.start_render()
arcade.draw_rectangle_filled (self.player_x, 50, 50, 50, arcade.color. AZUL)
defon_key_press(auto, chave, modificadores):
se chave == arcade.key. ESQUERDA:
self.player_x -= 10
elif chave == arcade.key. CERTO:
self.player_x += 10defprincipal():
jogo = MeuJogo (SCREEN_WIDTH, SCREEN_HEIGHT)
game.setup()
arcade.run()
se __nome__ == "__principal__":
principal()
Como adicionar Sprites ao seu jogo
Agora que você tem um jogo simples funcionando, é hora de aprimorá-lo adicionando alguns sprites. Você pode criar sprites usando o videogames. sprite aula. Você pode carregar imagens para representar seus sprites e usá-los em seu jogo.
Carregue um arquivo de imagem chamado player.png para criar seu sprite de jogador. Defina a posição inicial do sprite no centro da tela. No on_draw método, desenhe o sprite do jogador usando a função de desenho.
aulaMeu jogo(videogames. Janela):
def__iniciar__(auto, largura, altura):
super().__init__(largura, altura)
arcade.set_background_color (arcade.color. BRANCO)
self.player_sprite = Nenhum
defconfigurar(auto):
self.player_sprite = fliperama. Sprite("jogador.png")
self.player_sprite.center_x = SCREEN_WIDTH // 2
self.player_sprite.center_y = SCREEN_HEIGHT // 2
defon_draw(auto):
arcade.start_render()
self.player_sprite.draw()
defon_key_press(auto, chave, modificadores):
se chave == arcade.key. ESQUERDA:
self.player_sprite.change_x = -5
elif chave == arcade.key. CERTO:
self.player_sprite.change_x = 5
defatualizar(auto, delta_time):
self.player_sprite.update()
Recursos Adicionais do Sprite
Sprites no Arcade oferecem recursos além do movimento básico. Por exemplo, você pode redimensionar um sprite definindo seu atributo de escala.
Você pode definir o atributo de escala do sprite do jogador para 0,5, para torná-lo metade do tamanho original.
aulaMeu jogo(videogames. Janela):
defconfigurar(auto):
self.player_sprite = fliperama. Sprite("jogador.png", escala=0.5)
Controlando o Movimento do Sprite
Sprites no Arcade fornecem várias maneiras de controlar o movimento do jogador. além da mudar_x atributo, você pode usar o change_y atributo para controlar o movimento vertical. Para padrões de movimento mais complexos, você também pode usar o mudar_ângulo atributo para girar o sprite.
self.player_sprite.change_angle = ROTATION_SPEED
Ao combinar esses atributos com entrada de teclado ou mouse, você pode criar controles de movimento dinâmicos e responsivos para seus sprites de jogo.
Adicionando detecção de colisão com sprites
A detecção de colisão é crucial em muitos jogos. Com o Arcade, você pode detectar facilmente colisões entre sprites usando o arcade.check_for_collision função. Vamos modificar o código para incluir a detecção de colisão entre o sprite do jogador e outro sprite chamado obstáculo.png:
aulaMeu jogo(videogames. Janela):
def__iniciar__(auto, largura, altura):
super().__init__(largura, altura)
arcade.set_background_color (arcade.color. BRANCO)
self.player_sprite = Nenhum
defconfigurar(auto):
self.player_sprite = fliperama. Sprite("jogador.png", escala=0.1)
self.obstacle_sprite = fliperama. Sprite("obstáculo.png", escala = 0.1)
self.obstacle_sprite.center_x = SCREEN_WIDTH
self.obstacle_sprite.center_y = SCREEN_HEIGHT // 2
self.player_sprite.center_x = SCREEN_WIDTH // 2
self.player_sprite.center_y = SCREEN_HEIGHT // 2
defon_draw(auto):
arcade.start_render()
self.player_sprite.draw()
self.obstacle_sprite.draw()
defon_key_press(auto, chave, modificadores):
se chave == arcade.key. ESQUERDA:
self.player_sprite.change_x = -5
elif chave == arcade.key. CERTO:
self.player_sprite.change_x = 5
defatualizar(auto, delta_time):
self.player_sprite.update()
self.obstacle_sprite.update()
se arcade.check_for_collision (self.player_sprite, self.obstacle_sprite):
imprimir("Colisão detectada!")
Torne seus jogos mais envolventes com sprites
Sprites fazem personagens, objetos e animações parecerem reais e emocionantes. Eles podem se mover, colidir e interagir com outras coisas em seu jogo, o que o torna mais realista e divertido.
Usando sprites, você pode criar jogos que mantêm os jogadores interessados e querendo jogar mais. Sprites abrem um mundo de possibilidades para criar jogos envolventes e memoráveis.