Desenvolvimento
Um mapa conciso para contribuidores sobre sistemas ECS, componentes e configuracao.
Arquitetura ECS
| Classe | Papel | Responsabilidade |
|---|---|---|
ElevatorSystem | Orquestrador | Detecta input, valida o bloco atual do elevador, busca na vertical, checa a seguranca do destino e enfileira viagem/efeitos. |
ElevatorComponent | Estado por jogador | Armazena o ultimo uso bem-sucedido e timestamps curtos de busca falha por direcao. |
SmoothingComponent | Estado da viagem | Armazena posicoes de inicio/fim, tempo decorrido, duracao e rotacao capturada. |
SmoothingSystem | Executor da viagem | Move jogadores com TransformComponent#setPosition() e aplica uma correcao final com Teleport. |
ElevatorConfig | Configuracao | Define distancia de busca, cooldown, som, movimento suave e duracao via BuilderCodec. |
Regras de seguranca
- Use
CommandBufferpara mutacoes ECS durante ticks. - Cheque
world.getChunkIfLoaded()antes deworld.getBlockType(). - Resolva o som de teleporte sob demanda apenas quando som estiver ativo e a viagem for bem-sucedida.
- Nao implemente smoothing adicionando
Teleporta cada tick.