Architect

PPlay Architect (Auto-Organizador)

Utilitário: PPlay/architect.py | Dificuldade: DevOps / CLI

Desenvolver um jogo inteiro dentro de um único arquivo main.py é o maior erro de iniciantes. O código fica com milhares de linhas e impossível de manter. O PPlay Architect é uma ferramenta de linha de comando (CLI) embutida na engine que refatora o seu projeto automaticamente, movendo classes para pastas organizadas e corrigindo os imports sozinho.

1. O Problema vs. A Solução

Mover uma classe como Player ou Inimigo do main.py para outro arquivo manualmente dá medo. Se você errar o import, o jogo quebra. O Architect lê a Árvore de Sintaxe (AST) do Python, recorta a classe perfeitamente (preservando a indentação) e reescreve os caminhos por você.

2. Como usar o Architect no Terminal

Abra o terminal (no VS Code, por exemplo) na raiz do seu projeto, onde está o seu main.py. A sintaxe do comando é:

python PPlay/architect.py [arquivo_origem] [NomeDaClasse][pasta_destino]

Exemplo Prático: Imagine que você tem a classe Boss no seu main.py e quer movê-la para uma nova pasta chamada entidades.

python PPlay/architect.py main.py Boss entidades

3. O que acontece “Debaixo do Capô”?

No exato milissegundo em que você aperta ENTER, a engine faz a seguinte mágica:

Ação Descrição do Processo
1. Escrita Atômica (Backup) A engine cria um arquivo main.py.bak oculto. Se o seu PC desligar no meio do processo, você não perde 1 linha de código.
2. Criação de Pacote Se a pasta entidades/ não existir, ela é criada junto com um arquivo __init__.py, transformando-a num pacote Python válido.
3. Injeção de Dependências O novo arquivo entidades/boss.py nasce já com os imports da Power PPlay 2.0 (Sprite, Window) no topo.
4. Auto-Importação A ferramenta escreve from entidades.boss import Boss automaticamente na primeira linha do seu main.py.
💡 Dica do Sênior: Modularize Rápido

A melhor forma de desenvolver na PPlay 2.0 é: Crie a sua classe rápida no main.py para testar a ideia. Funcionou? O pulo ficou bom? Vá no terminal, rode o Architect e jogue ela para a pasta scripts. Sua área de trabalho fica limpa e seu jogo continua rodando perfeitamente sem você encostar em nenhum import!