Files
canalhandia/specs/chunk-loader-module/tasks.md
T

1.8 KiB

Tasks: Módulo Nativo de Chunk Loader

  • Task 1: Modelo de Dados e Gerenciador (ChunkLoader.java, ChunkLoaders.java e ChunkLoaderTest.java)

    • Implementar record ChunkLoader puro.
    • Implementar ChunkLoaders com persistência em chunks.yml, playerLimit(Player) (LuckPerms canalhandia.chunkloader.limite.<N>), registro de tickets no Paper e busca por chunk/dono.
    • Criar suíte de testes unitários ChunkLoaderTest.java validando regras de limites, unicidade e serialização.
  • Task 2: Configuração e Item Customizado (Module.java, Settings.java e ChunkAnchorItem.java)

    • Adicionar CHUNKLOADER ao enum Module.
    • Adicionar chaves de configuração em config.yml e Settings.java.
    • Criar utilitário ChunkAnchorItem para gerar o ItemStack com nome, lore e PersistentDataContainer, e registrar receita de crafting.
  • Task 3: Listeners de Proteção e Colocação (ChunkLoaderListener.java)

    • Tratar BlockPlaceEvent (validação de permissão, cálculo de limite LuckPerms, ativação de ticket).
    • Tratar BlockBreakEvent (proteção de dono/admin, remoção de ticket, drop do item).
    • Tratar explosões e pistões.
  • Task 4: Comandos e Tab-Completion (CanalhandiaCommand.java)

    • Adicionar /chunkloader e alias /ancora (listar, info, remover, receita, admin).
    • Implementar tab-completion completo com permissões.
  • Task 5: Integração no Ciclo de Vida e BlueMap (Canalhandia.java & BlueMapBridge.java)

    • Inicializar ChunkLoaders no onEnable e descarregar tickets no onDisable.
    • Adicionar marcadores no BlueMap.
  • Task 6: Testes, PR e Deploy (mvn test, mvn package, PR no Gitea)

    • Executar suíte completa de testes.
    • Criar branch feat/chunk-loader-module, abrir PR com labels AI-REVIEW e AI-USAGE.