Communitygithub.com

chongdashu/phaser-gamedev

Crie jogos 2D com o framework Phaser 3. Abrange ciclo de vida de cenas, sprites, física (Arcade/Matter), tilemaps, animações, manipulação de entrada e arquitetura de jogo.

O que é phaser-gamedev?

Esta skill capacita desenvolvedores a construir jogos 2D interativos utilizando o framework Phaser 3. Ela cobre todos os aspectos fundamentais do desenvolvimento de jogos, incluindo gerenciamento de cenas, sprites, sistemas de física (Arcade e Matter), tilemaps, animações personalizadas, detecção de entrada do usuário e arquitetura geral do jogo. Ideal para quem deseja criar protótipos rápidos ou jogos completos, esta skill oferece suporte a comandos como 'create phaser game', 'add phaser scene', 'phaser sprite', 'phaser physics' e 'game development with phaser'. Com uma abordagem prática, ela guia o desenvolvedor desde a configuração inicial até a implementação de mecânicas complexas, otimizando o fluxo de trabalho com exemplos de código prontos para uso. É compatível com agentes de IA como Claude Code, Cursor e Codex, facilitando a geração de código limpo e organizado.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/chongdashu/phaserjs-tinyswords/tree/main/skills/phaser-gamedev

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que phaser-gamedev faz?

Crie jogos 2D com o framework Phaser 3. Abrange ciclo de vida de cenas, sprites, física (Arcade/Matter), tilemaps, animações, manipulação de entrada e arquitetura de jogo. Gatilho: "create phaser game", "add phaser scene", "phaser sprite", "phaser physics", "game development with phaser".

Visão Geral

Esta skill oferece suporte abrangente para desenvolvimento de jogos 2D utilizando Phaser 3, um dos frameworks mais populares para criação de jogos em HTML5. Ela cobre todos os tópicos essenciais para construir jogos completos e interativos.

Tópicos Abrangidos

  • Ciclo de Vida de Cenas: Criação, carregamento, atualização e transição entre cenas.
  • Sprites: Criação, manipulação e otimização de sprites.
  • Física (Arcade/Matter): Implementação de física simples (Arcade) ou avançada (Matter).
  • Tilemaps: Construção de níveis com tilemaps.
  • Animações: Criação e gerenciamento de animações a partir de spritesheets.
  • Manipulação de Entrada: Captura de eventos de teclado, mouse e toque.
  • Arquitetura de Jogo: Organização de código e melhores práticas.

Como Usar

Para acionar esta skill, utilize um dos seguintes comandos:

  • create phaser game - Inicia um novo projeto de jogo Phaser 3.
  • add phaser scene - Adiciona uma nova cena ao projeto.
  • phaser sprite - Cria e configura um sprite.
  • phaser physics - Adiciona física a um objeto.
  • game development with phaser - Inicia uma sessão geral de desenvolvimento.

Exemplos de Código

// Configuração básica do jogo
const config = {
    type: Phaser.AUTO,
    width: 800,
    height: 600,
    physics: {
        default: 'arcade',
        arcade: {
            gravity: { y: 300 },
            debug: false
        }
    },
    scene: [MainScene]
};

const game = new Phaser.Game(config);

class MainScene extends Phaser.Scene {
    constructor() {
        super({ key: 'MainScene' });
    }

    preload() {
        this.load.image('sky', 'assets/sky.png');
        this.load.image('ground', 'assets/platform.png');
        this.load.image('star', 'assets/star.png');
        this.load.spritesheet('dude', 'assets/dude.png', { frameWidth: 32, frameHeight: 48 });
    }

    create() {
        this.add.image(400, 300, 'sky');

        // Plataformas
        const platforms = this.physics.add.staticGroup();
        platforms.create(400, 568, 'ground').setScale(2).refreshBody();
        platforms.create(600, 400, 'ground');
        platforms.create(50, 250, 'ground');

        // Jogador
        const player = this.physics.add.sprite(100, 450, 'dude');
        player.setBounce(0.2);
        player.setCollideWorldBounds(true);

        this.physics.add.collider(player, platforms);
    }

    update() {
        // Lógica de atualização
    }
}

Adicionando Física Matter

const config = {
    type: Phaser.AUTO,
    width: 800,
    height: 600,
    physics: {
        default: 'matter',
        matter: {
            gravity: { y: 1 },
            debug: true
        }
    },
    scene: [MatterScene]
};

class MatterScene extends Phaser.Scene {
    constructor() {
        super({ key: 'MatterScene' });
    }

    create() {
        this.matter.add.image(400, 300, 'logo');
    }
}

Recursos

Licença

Esta skill é fornecida sob a licença MIT. Consulte o repositório original para mais detalhes.


Desenvolvido por chongdashu. Contribuições são bem-vindas!

Habilidades Relacionadas