Skip to content

🥖 Fome ao Dormir e Imunidade a Afogamento

📌 Aviso Legal do Código-Fonte do Repositório: A documentação nesta Wiki reflete o estado atual do código-fonte no repositório, que pode incluir commits recentes não lançados ou recursos em desenvolvimento antes dos lançamentos públicos no CurseForge e Modrinth.


🥐 Mecânica de Dreno de Fome ao Dormir

Na vida real, dormir gasta calorias; acordar no Minecraft pronto para tomar café da manhã acrescenta uma ótima dose de imersão.

Com truesleep:sleep_hunger ativado (padrão: ON), os jogadores passam por um dreno de exaustão leve e balanceado.

📐 Equação de Exaustão de Alimento

$$\text{exhaustion} = \text{strideTicks} \times 0.0008\text{ pontos de exaustão}$$

  • Em uma noite padrão de $10{,}000\text{ ticks}$ ($12542 \to 24000$), a exaustão total é: $$\text{Exaustão Total} = 10000 \times 0.0008 = 8.0\text{ pontos} = 2.0\text{ pontos de fome (1 coxa)}$$
  • Se dormir por um ciclo de $12{,}000\text{ ticks}$, você gastará entre $3.0\text{ e }4.0\text{ pontos de fome}$.

🛡️ Piso de Segurança Contra Inanição

O True Sleep NUNCA deixará um jogador morrer de fome dormindo. O consumo para automaticamente quando o nível de fome atinge 6 pontos (3 coxas):

java
if (player.getFoodData().getFoodLevel() <= 6) return;

🫧 Estase Pulmonar (Imunidade a Afogamento)

No Minecraft vanilla, deitar em uma cama submersa esgota o oxigênio rapidamente, provocando dano e ejetando o jogador.

Com truesleep:drown_immunity ativo (padrão: ON), o True Sleep aciona a Estase Pulmonar:

  • Intercepta o método Entity.baseTick() de jogadores dormindo.
  • Restaura continuamente o suprimento de ar para getMaxAirSupply() ($300\text{ ticks}$).
  • Permite cochilar tranquilamente em bases submarinas panorâmicas sem se afogar!
java
if (serverLevel.getGameRules().get(TrueSleepRules.DROWN_IMMUNITY)) {
    this.setAirSupply(this.getMaxAirSupply());
}

🎛️ Regras de Jogo Reguladoras (GameRules)

GameRuleTipoPadrãoDescrição
truesleep:sleep_hungerBooleantrueSimula o gasto de comida até o limite mínimo de 6 pontos.
truesleep:drown_immunityBooleantrueImpede o dano de afogamento ao repousar sob a água.

Official documentation & web portal for Dasik Igaijinn mods.