Comportamento do BetterFood
BetterFood usa seleção de alimentos consciente da fome em vez de simplesmente comer o item mais nutritivo primeiro.
Quando É Acionado
BetterFood reage ao FoodLevelChangeEvent vanilla na prioridade de evento mais alta e apenas quando a fome do jogador está diminuindo. O jogador deve ter a permissão betterfood.user e não pode ter desativado a alimentação automática através de /betterfood toggleEating.
Regras de Seleção
Quando o plugin decide o que comer, ele trabalha em duas passagens:
- Candidato ideal – primeiro pergunta qual é o melhor alimento único para a fome faltante:
- Prefere o alimento com o maior valor de fome que ainda cabe dentro da fome faltante (a saturação desempata).
- Se nada se encaixar perfeitamente, recorre ao alimento com o menor excesso (a saturação desempata).
- Correspondência no inventário – em seguida, ele varre o armazenamento do inventário do jogador procurando por esse alimento ideal. Se o jogador realmente não o carregar, o plugin percorre o inventário inteiro e aplica a mesma comparação de encaixe/excesso a cada alimento suportado que o jogador possui, e então escolhe o melhor disponível.
A intenção é evitar queimar um alimento forte em uma pequena lacuna de fome quando um item mais fraco serviria.
Após comer, a fome restaurada é limitada a 20, e a saturação é limitada ao valor de fome resultante, correspondendo aos limites do vanilla.
Itens Protegidos
O código atual protege muito mais do que apenas alimentos renomeados ou com lore. BetterFood evitará o consumo automático de alimentos se eles tiverem características de item personalizado como:
- nome personalizado ou nome do item
- lore
- dados de modelo personalizado
- encantamentos
- modificadores de atributo
- estado indestrutível
- tags de contêiner de dados persistentes
Isso visa reduzir a chance de consumir itens de plugins ou itens decorativos por engano.
Alimentos Suportados
BetterFood consumirá automaticamente os seguintes alimentos:
| Alimento | Fome Restaurada | Saturação Restaurada |
|---|---|---|
| Apple | 4 | 2.4 |
| Baked Potato | 5 | 6.0 |
| Beetroot | 1 | 1.2 |
| Beetroot Soup | 6 | 7.2 |
| Bread | 5 | 6.0 |
| Carrot | 3 | 3.6 |
| Cooked Beef | 8 | 12.8 |
| Cooked Chicken | 6 | 7.2 |
| Cooked Cod | 5 | 6.0 |
| Cooked Mutton | 6 | 9.6 |
| Cooked Porkchop | 8 | 12.8 |
| Cooked Rabbit | 5 | 6.0 |
| Cooked Salmon | 6 | 9.6 |
| Cookie | 2 | 0.4 |
| Dried Kelp | 1 | 0.6 |
| Glow Berries | 2 | 0.4 |
| Golden Carrot | 6 | 14.4 |
| Melon Slice | 2 | 1.2 |
| Mushroom Stew | 6 | 7.2 |
| Potato | 1 | 0.6 |
| Pumpkin Pie | 8 | 4.8 |
| Rabbit Stew | 10 | 12.0 |
| Sweet Berries | 2 | 0.4 |
Alimentos Excluídos
Os seguintes itens comestíveis são intencionalmente excluídos da alimentação automática. São carnes cruas, itens especiais ou alimentos com efeitos negativos ou imprevisíveis:
- Beef (cru)
- Cake
- Chicken (cru)
- Chorus Fruit
- Cod (cru)
- Enchanted Golden Apple
- Golden Apple
- Honey Bottle
- Mutton (cru)
- Poisonous Potato
- Porkchop (cru)
- Pufferfish
- Rabbit (cru)
- Rotten Flesh
- Salmon (cru)
- Spider Eye
- Suspicious Stew
- Tropical Fish
Qualquer outro material comestível adicionado por versões mais recentes do Minecraft que ainda não foi classificado também será ignorado. O plugin registra um aviso na inicialização se detectar materiais comestíveis não classificados.
Restos de Recipiente
Se um alimento consumido deixar um item restante, BetterFood o preserva.
Exemplos incluem tigelas ou outros alimentos que retornam recipientes. O restante é devolvido ao inventário ou largado no chão perto do jogador se não houver espaço no inventário.