Architect
PPlay Architect (Auto-Organizador)
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. |
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!