Seu primeiro jogo
Crie um jogo de plataforma do zero em uns 15 minutos: chão, jogador, script em Python e teclas. Cada passo diz o que clicar e o que aparece na tela.
Este guia usa só o editor. Cada passo diz o que clicar e o que você deve ver.
1. Criar o projeto
- Arquivo > Novo projeto…, nome “Meu Jogo”, escolha uma pasta e o modelo Vazio para começar do zero (ou Plataforma para abrir um jogo pronto e mexer).
- Espere o ambiente Python do projeto ser criado (na primeira vez leva alguns segundos). O painel Cena mostra o jogo, o Explorer mostra a árvore de objetos e o Properties mostra as propriedades do objeto selecionado.
2. Mexer na cena com o mouse
- Clique num objeto na Cena para selecionar; arraste para mover; arraste as alças para redimensionar ou girar.
- Cmd/Ctrl + roda do mouse dá zoom; botão do meio ou Espaço + arrastar move a câmera.
- O botão + do Explorer insere objetos:
Shape,Sprite,Text,TileMap,StaticBody… - Cmd/Ctrl+Z desfaz qualquer edição, inclusive as do mouse. F1 numa propriedade explica o que ela faz.
3. Colocar o chão e o jogador
- Insira um
StaticBody(o chão): posição480, 500, tamanho800, 40. - Insira um
KinematicBody(o jogador): posição480, 100, tamanho28, 40. Coloque umShapedentro dele para ver o jogador. - O contorno verde (chão) e azul (jogador) aparece só no editor: é a caixa de colisão.
4. Escrever o script do jogador
- Clique com o botão direito no
KinematicBodye escolha Anexar script. O arquivoscripts/<nome>.pyé criado e aberto. - Substitua o conteúdo por:
from pgstudio import Behavior, KinematicBody, Vec2, export
class Jogador(Behavior[KinematicBody]):
velocidade: float = export(240.0, min=0)
pulo: float = export(620.0, min=0)
def on_ready(self) -> None:
self.v = Vec2(0, 0)
def on_update(self, dt: float) -> None:
self.v.x = self.input.axis("esquerda", "direita") * self.velocidade
if self.input.pressed("pular") and self.node.on_floor:
self.v.y = -self.pulo
self.v.y += 1500 * dt
self.v = self.node.move_and_slide(self.v, dt)
Ao digitar self.node. o editor sugere o que o nó tem (position, on_floor, move_and_slide…). Os campos export aparecem no Properties do nó e podem ser ajustados sem mexer no código.
5. Dizer quais teclas são cada ação
Arquivo > Mapa de entrada…, depois Nova ação para esquerda, direita e pular. Em cada uma, Gravar tecla/botão e aperte a tecla (ou o botão do mouse, ou do gamepad). Clique em Salvar.
6. Jogar
Executar (F5) salva tudo e abre o jogo. Se um script der erro, o jogo pausa e o erro aparece no Output com o arquivo e a linha: clique nele para ir direto ao código. Corrija, salve (Cmd/Ctrl+S) e o jogo continua sozinho (hot reload).
7. Próximos passos
- TileMap: ferramenta Pintar (B) com pincel, borracha, balde e retângulo. Importe mapas do Tiled (
.tmxcom camadas em CSV) pelo menu do painel Arquivos. - Animação: Nova animação no painel Arquivos cria um
.anim.json; use oAnimatedSprite. - UI:
Canvas, depoisPanel,LabeleButton; listas e grades comUIListLayouteUIGridLayout. - Som: arraste um
.wavou.oggpara a cena; os volumes por grupo ficam em[audio]doproject.toml. - Referência de todos os nós: Nós e propriedades. API dos scripts: API de scripts.
- Distribuir: exportar o jogo.