mirror of
https://github.com/Sollace/Unicopia.git
synced 2025-01-31 19:16:44 +01:00
Move pony diets to datagen. Summary of diets:
Unicorns: - have a general even preference of foods - Improved benefits from cooking their food before eating it - Can still eat raw and rotten but at a reduced yield Earth Ponies: - Are vegans - They get the most from foraging - Pastries are their passion - If they must eat meat, they have to cook it and not let it spoil. - They have a sweet tooth and prefer candy, desserts, and rocks - Candy and rocks gives them a massive saturation boost. Maybe too much? Pegasus - prefer fish over other food sources - Cannot eat love, or raw/rotten meat - Can eat raw and rotten fish but still prefers if they are cooked - Can safely eat fresh and cooked fish with no ill effects - Is less affected when eating rotten fish Bat Ponies: - prefer cooked foods over raw, and meat/insects over fish - Doesn't like baked goods but really likes meats, fish, and insects - Gets food poisoning from eating rotten and raw meat - Can eat cooked meat and insects without negative effects - Becomes hyper when eating mangoes Kirins: - Much like Earth Ponies, Kirins must cook their meat before they eat it - Cannot eat love, or raw/rotten meats and fish - Can eat cooked meat and insect without negative effects - Can eat blinding, prickly, strengthening, and glowing foraged foods without negative effects Changelings: - like meat and fish but really prefer feasting on ponies' love directly from the tap - Doesn't like baked goods but really likes meats, fish, and insects - Can eat fish, meat, insects, and love without negative effects - Gets sick when eating foraged plants and vegetables Hippogriffs: - like fish, nuts, and seeds - Can eat fish and prickly foods without negative effect - Gains more health from pinecones Seaponies: - can eat seaweed, kelp, shells, and other undersea foods - Can eat fish without negative effect - Gains more health from pinecones
This commit is contained in:
parent
171c786dec
commit
eeded18c36
15 changed files with 316 additions and 856 deletions
|
@ -1,12 +1,275 @@
|
|||
package com.minelittlepony.unicopia.datagen.providers;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
import java.util.function.BiConsumer;
|
||||
import com.minelittlepony.unicopia.Race;
|
||||
import com.minelittlepony.unicopia.Unicopia;
|
||||
import com.minelittlepony.unicopia.diet.DietProfile;
|
||||
import com.minelittlepony.unicopia.diet.DietProfile.Multiplier;
|
||||
import com.minelittlepony.unicopia.diet.FoodGroupEffects;
|
||||
import com.minelittlepony.unicopia.diet.affliction.ClearLoveSicknessAffliction;
|
||||
import com.minelittlepony.unicopia.diet.affliction.CompoundAffliction;
|
||||
import com.minelittlepony.unicopia.diet.affliction.HealingAffliction;
|
||||
import com.minelittlepony.unicopia.diet.affliction.LoseHungerAffliction;
|
||||
import com.minelittlepony.unicopia.diet.affliction.Range;
|
||||
import com.minelittlepony.unicopia.diet.affliction.StatusEffectAffliction;
|
||||
import com.minelittlepony.unicopia.entity.effect.UEffects;
|
||||
import com.minelittlepony.unicopia.item.UFoodComponents;
|
||||
|
||||
import net.minecraft.entity.effect.StatusEffects;
|
||||
import net.minecraft.item.FoodComponents;
|
||||
|
||||
public class DietProfileGenerator {
|
||||
|
||||
public void generate(BiConsumer<Race, DietProfile> exporter) {
|
||||
// Pinecones are for everypony
|
||||
var pineconeMultiplier = new Multiplier.Builder().tag(Unicopia.id("pinecone")).hunger(0.9F).saturation(0.9F).build();
|
||||
var bakedGoodPreference = new Multiplier.Builder().tag(Unicopia.id("baked_goods")).build();
|
||||
var bakedGoodExtremePreference = new Multiplier.Builder().tag(Unicopia.id("baked_goods")).hunger(1.2F).saturation(2).build();
|
||||
var bakedGoodNonPreference = new Multiplier.Builder().tag(Unicopia.id("baked_goods")).hunger(0.4F).saturation(0.2F).build();
|
||||
var properMeatStandards = new Multiplier.Builder().tag(Unicopia.id("love"))
|
||||
.tag(Unicopia.id("meat/raw")).tag(Unicopia.id("insect/raw")).tag(Unicopia.id("fish/raw"))
|
||||
.tag(Unicopia.id("meat/rotten")).tag(Unicopia.id("insect/rotten")).tag(Unicopia.id("fish/rotten"))
|
||||
.hunger(0).saturation(0).build();
|
||||
var avianMeatStandards = new Multiplier.Builder().tag(Unicopia.id("love"))
|
||||
.tag(Unicopia.id("meat/raw")).tag(Unicopia.id("insect/raw"))
|
||||
.tag(Unicopia.id("meat/rotten")).tag(Unicopia.id("insect/rotten"))
|
||||
.hunger(0).saturation(0).build();
|
||||
var loveSicknessEffects = CompoundAffliction.of(
|
||||
new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(100), Range.of(2), 95),
|
||||
new StatusEffectAffliction(StatusEffects.WEAKNESS, Range.of(200), Range.of(1), 0),
|
||||
new LoseHungerAffliction(0.5F));
|
||||
var seaFoodExclusions = new Multiplier.Builder()
|
||||
.tag(Unicopia.id("sea_vegetable/raw")).tag(Unicopia.id("sea_vegetable/cooked"))
|
||||
.tag(Unicopia.id("shells")).tag(Unicopia.id("special_shells"))
|
||||
.hunger(0).saturation(0).build();
|
||||
|
||||
exporter.accept(Race.HUMAN, new DietProfile(1, 0, List.of(), List.of(
|
||||
new FoodGroupEffects.Builder()
|
||||
.tag(Unicopia.id("fish/cooked")).tag(Unicopia.id("fish/raw")).tag(Unicopia.id("fish/rotten"))
|
||||
.tag(Unicopia.id("meat/cooked")).tag(Unicopia.id("meat/raw")).tag(Unicopia.id("meat/rotten"))
|
||||
.tag(Unicopia.id("sea_vegetable/cooked")).tag(Unicopia.id("sea_vegetable/raw"))
|
||||
.tag(Unicopia.id("pinecone"))
|
||||
.build()
|
||||
), Optional.empty()));
|
||||
// Alicorns are a mashup of unicorn, pegasus, and earth pony eating habits
|
||||
exporter.accept(Race.ALICORN, new DietProfile(0.9F, 1, List.of(
|
||||
// Pastries are their passion
|
||||
bakedGoodExtremePreference, pineconeMultiplier, avianMeatStandards, seaFoodExclusions,
|
||||
// They have a more of a sweet tooth than earth ponies
|
||||
new Multiplier.Builder().tag(Unicopia.id("desserts")).hunger(2.5F).saturation(1.7F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("candy")).tag(Unicopia.id("rocks")).hunger(1.5F).saturation(1.3F).build(),
|
||||
|
||||
// Cannot eat love, or raw/rotten meats and fish
|
||||
// Can eat raw and rotten fish but still prefers if they are cooked
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/cooked")).hunger(1.5F).saturation(1.5F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("meat/cooked")).hunger(0.25F).saturation(0.16F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("insect/cooked")).hunger(0.1F).saturation(0.7F).build(),
|
||||
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/raw")).hunger(0.5F).saturation(0.8F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/rotten")).hunger(0.25F).saturation(0.5F).build()
|
||||
), List.of(
|
||||
// Can safely eat fresh and cooked fish with no ill effects
|
||||
new FoodGroupEffects.Builder().tag(Unicopia.id("fish/cooked")).tag(Unicopia.id("fish/raw")).build(),
|
||||
// Is less affected when eating rotten fish
|
||||
new FoodGroupEffects.Builder().tag(Unicopia.id("fish/rotten")).ailment(new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(50), Range.of(2), 95)).build()
|
||||
), Optional.empty()));
|
||||
// Unicorns have a general even preference of foods
|
||||
exporter.accept(Race.UNICORN, new DietProfile(1.1F, 1, List.of(
|
||||
bakedGoodPreference, pineconeMultiplier, seaFoodExclusions,
|
||||
new Multiplier.Builder().tag(Unicopia.id("love")).hunger(0).saturation(0).build(),
|
||||
|
||||
// Improved benefits from cooking their food
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/cooked")).hunger(0.3F).saturation(0.2F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("meat/cooked")).hunger(0.4F).saturation(0.4F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("insect/cooked")).hunger(0.1F).saturation(0.1F).build(),
|
||||
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/raw")).hunger(0.25F).saturation(0.1F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("meat/raw")).hunger(0.3F).saturation(0.1F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("insect/raw")).hunger(0.15F).saturation(0.1F).build(),
|
||||
|
||||
// Can still eat raw and rotten but at a reduced yield
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/rotten")).hunger(0.1F).saturation(0.1F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("meat/rotten")).hunger(0.1F).saturation(0.1F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("insect/rotten")).hunger(0).saturation(0.1F).build()
|
||||
), List.of(), Optional.empty()));
|
||||
// Bats prefer cooked foods over raw, and meat/insects over fish
|
||||
exporter.accept(Race.BAT, new DietProfile(0.7F, 0.9F, List.of(
|
||||
pineconeMultiplier, seaFoodExclusions,
|
||||
// Doesn't like baked goods but really likes meats, fish, and insects
|
||||
bakedGoodNonPreference,
|
||||
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/cooked")).hunger(0.75F).saturation(0.75F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("meat/cooked")).hunger(1.15F).saturation(1.16F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("insect/cooked")).hunger(1.75F).saturation(1.74F).build(),
|
||||
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/raw")).hunger(0.5F).saturation(0.6F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("meat/raw")).hunger(0.25F).saturation(0.25F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("insect/raw")).hunger(1).saturation(1).build(),
|
||||
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/rotten")).hunger(0.24F).saturation(0.25F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("meat/rotten")).hunger(0.2F).saturation(0.2F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("insect/rotten")).hunger(0.9F).saturation(0.9F).build()
|
||||
), List.of(
|
||||
// Gets food poisoning from eating rotten and raw meat
|
||||
new FoodGroupEffects.Builder().tag(Unicopia.id("fish/rotten")).tag(Unicopia.id("meat/raw")).tag(Unicopia.id("meat/rotten")).ailment(new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(100), Range.of(2), 5)).build(),
|
||||
new FoodGroupEffects.Builder().tag(Unicopia.id("insect/rotten")).ailment(new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(50), Range.of(1), 15)).build(),
|
||||
// Can eat cooked meat and insects without negative effects
|
||||
new FoodGroupEffects.Builder().tag(Unicopia.id("insect/cooked")).tag(Unicopia.id("meat/cooked")).build(),
|
||||
// Becomes hyper when eating mangoes
|
||||
new FoodGroupEffects.Builder().tag(Unicopia.id("bat_ponys_delight")).ailment(CompoundAffliction.of(
|
||||
new StatusEffectAffliction(StatusEffects.HEALTH_BOOST, Range.of(30, 60), Range.of(2, 6), 0),
|
||||
new StatusEffectAffliction(StatusEffects.JUMP_BOOST, Range.of(30, 60), Range.of(1, 6), 0),
|
||||
new StatusEffectAffliction(StatusEffects.REGENERATION, Range.of(3, 30), Range.of(3, 6), 0)
|
||||
)).build()
|
||||
), Optional.empty()));
|
||||
// Much like Earth Ponies, Kirins must cook their meat before they eat it
|
||||
exporter.accept(Race.KIRIN, new DietProfile(0.6F, 0.9F, List.of(
|
||||
// Cannot eat love, or raw/rotten meats and fish
|
||||
bakedGoodPreference, properMeatStandards, pineconeMultiplier, seaFoodExclusions,
|
||||
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/cooked")).hunger(0.75F).saturation(0.35F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("meat/cooked")).hunger(1.5F).saturation(1.6F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("insect/cooked")).hunger(0.25F).saturation(0.74F).build()
|
||||
), List.of(
|
||||
// can eat these without negative effects
|
||||
new FoodGroupEffects.Builder().tag(Unicopia.id("insect/cooked")).tag(Unicopia.id("meat/cooked")).food(FoodComponents.COOKED_BEEF).build(),
|
||||
new FoodGroupEffects.Builder().tag(Unicopia.id("foraging/blinding")).food(4, 0.2F).build(),
|
||||
new FoodGroupEffects.Builder().tag(Unicopia.id("foraging/prickly")).food(0, 1.5F).build(),
|
||||
new FoodGroupEffects.Builder().tag(Unicopia.id("foraging/severely_prickly")).food(2, 0.9F).build(),
|
||||
new FoodGroupEffects.Builder().tag(Unicopia.id("foraging/strengthening")).food(4, 0.2F).ailment(new StatusEffectAffliction(StatusEffects.STRENGTH, Range.of(1300), Range.of(0), 0)).build(),
|
||||
new FoodGroupEffects.Builder().tag(Unicopia.id("foraging/glowing")).food(1, 1.6F).ailment(new StatusEffectAffliction(StatusEffects.GLOWING, Range.of(30), Range.of(0), 30)).build()
|
||||
), Optional.empty()));
|
||||
// Earth Ponies are vegans. They get the most from foraging
|
||||
exporter.accept(Race.EARTH, new DietProfile(0.7F, 1.2F, List.of(
|
||||
// Pastries are their passion
|
||||
// If they must eat meat, they have to cook it and not let it spoil.
|
||||
bakedGoodExtremePreference, pineconeMultiplier, properMeatStandards, seaFoodExclusions,
|
||||
// They have a sweet tooth
|
||||
new Multiplier.Builder().tag(Unicopia.id("candy")).tag(Unicopia.id("desserts")).tag(Unicopia.id("rocks")).hunger(2.5F).saturation(1.7F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/cooked")).hunger(0.2F).saturation(0.3F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("insect/cooked")).hunger(0.1F).saturation(0.1F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("meat/cooked")).hunger(0.1F).saturation(0.1F).build()
|
||||
), List.of(
|
||||
// Candy and rocks gives them a massive saturation boost. Maybe too much?
|
||||
new FoodGroupEffects.Builder().tag(Unicopia.id("candy")).tag(Unicopia.id("rocks")).food(UFoodComponents.builder(5, 12).alwaysEdible()).build(),
|
||||
new FoodGroupEffects.Builder().tag(Unicopia.id("desserts")).food(UFoodComponents.builder(12, 32).snack().alwaysEdible()).build()
|
||||
), Optional.empty()));
|
||||
// Pegasi prefer fish over other food sources
|
||||
exporter.accept(Race.PEGASUS, new DietProfile(0.9F, 1, List.of(
|
||||
bakedGoodPreference, pineconeMultiplier, avianMeatStandards, seaFoodExclusions,
|
||||
// Cannot eat love, or raw/rotten meat
|
||||
// Can eat raw and rotten fish but still prefers if they are cooked
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/cooked")).hunger(1.5F).saturation(1.5F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("meat/cooked")).hunger(0.25F).saturation(0.16F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("insect/cooked")).hunger(0.1F).saturation(0.7F).build(),
|
||||
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/raw")).hunger(0.5F).saturation(0.8F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/rotten")).hunger(0.25F).saturation(0.5F).build()
|
||||
), List.of(
|
||||
// Can safely eat fresh and cooked fish with no ill effects
|
||||
new FoodGroupEffects.Builder().tag(Unicopia.id("fish/cooked")).tag(Unicopia.id("fish/raw")).build(),
|
||||
// Is less affected when eating rotten fish
|
||||
new FoodGroupEffects.Builder().tag(Unicopia.id("fish/rotten")).ailment(new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(50), Range.of(2), 95)).build()
|
||||
), Optional.empty()));
|
||||
// Changelings like meat and fish but really prefer feasting on ponies' love directly from the tap
|
||||
exporter.accept(Race.CHANGELING, new DietProfile(0.15F, 0.1F, List.of(
|
||||
// Doesn't like baked goods but really likes meats, fish, and insects
|
||||
bakedGoodNonPreference, pineconeMultiplier, seaFoodExclusions,
|
||||
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/cooked")).hunger(0.5F).saturation(1.2F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("meat/cooked")).hunger(0.9F).saturation(1.2F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("insect/cooked")).hunger(1.2F).saturation(1.3F).build(),
|
||||
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/raw")).hunger(0.15F).saturation(0.25F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("meat/raw")).hunger(1.25F).saturation(1.25F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("insect/raw")).hunger(1).saturation(1).build(),
|
||||
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/rotten")).hunger(0.24F).saturation(0.25F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("meat/rotten")).hunger(0.2F).saturation(0.2F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("insect/rotten")).hunger(0.9F).saturation(0.9F).build(),
|
||||
|
||||
new Multiplier.Builder().tag(Unicopia.id("love")).hunger(1).saturation(1.5F).build()
|
||||
), List.of(
|
||||
// Can eat fish, meat, insects, and love without negative effects
|
||||
new FoodGroupEffects.Builder()
|
||||
.tag(Unicopia.id("fish/cooked")).tag(Unicopia.id("meat/cooked")).tag(Unicopia.id("insect/cooked"))
|
||||
.tag(Unicopia.id("fish/rotten")).tag(Unicopia.id("meat/rotten")).tag(Unicopia.id("insect/rotten"))
|
||||
.tag(Unicopia.id("fish/raw")).tag(Unicopia.id("meat/raw")).tag(Unicopia.id("insect/raw"))
|
||||
.tag(Unicopia.id("baked_goods")).tag(Unicopia.id("pinecone"))
|
||||
.tag(Unicopia.id("love")).ailment(ClearLoveSicknessAffliction.INSTANCE).build(),
|
||||
|
||||
new FoodGroupEffects.Builder()
|
||||
.tag(Unicopia.id("foraging/blinding")).tag(Unicopia.id("foraging/dangerous")).tag(Unicopia.id("foraging/edible_filling"))
|
||||
.tag(Unicopia.id("foraging/edible")).tag(Unicopia.id("foraging/leafy_greens")).tag(Unicopia.id("foraging/nauseating"))
|
||||
.tag(Unicopia.id("foraging/prickly")).tag(Unicopia.id("foraging/glowing")).tag(Unicopia.id("foraging/risky"))
|
||||
.tag(Unicopia.id("foraging/severely_nauseating")).tag(Unicopia.id("foraging/severely_prickly"))
|
||||
.tag(Unicopia.id("foraging/strengthening"))
|
||||
.ailment(loveSicknessEffects)
|
||||
.build()
|
||||
), Optional.empty()));
|
||||
// Hippogriffs like fish, nuts, and seeds
|
||||
exporter.accept(Race.HIPPOGRIFF, new DietProfile(0.5F, 0.8F, List.of(
|
||||
bakedGoodPreference, pineconeMultiplier, seaFoodExclusions,
|
||||
|
||||
new Multiplier.Builder().tag(Unicopia.id("love"))
|
||||
.tag(Unicopia.id("insect/cooked")).tag(Unicopia.id("insect/raw")).tag(Unicopia.id("insect/rotten"))
|
||||
.hunger(0).saturation(0).build(),
|
||||
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/cooked")).hunger(1.5F).saturation(1.2F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("meat/cooked")).hunger(1.9F).saturation(1.2F).build(),
|
||||
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/raw")).hunger(0.85F).saturation(0.95F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("meat/raw")).hunger(0.75F).saturation(0.75F).build(),
|
||||
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/rotten")).hunger(0.24F).saturation(0.25F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("meat/rotten")).hunger(0.3F).saturation(0.5F).build(),
|
||||
|
||||
new Multiplier.Builder().tag(Unicopia.id("nuts_and_seeds")).hunger(1.4F).saturation(1.4F).build()
|
||||
), List.of(
|
||||
// Can eat fish and prickly foods without negative effect
|
||||
new FoodGroupEffects.Builder()
|
||||
.tag(Unicopia.id("fish/cooked")).tag(Unicopia.id("fish/raw")).tag(Unicopia.id("fish/rotten"))
|
||||
.tag(Unicopia.id("foraging/prickly")).tag(Unicopia.id("foraging/severely_prickly"))
|
||||
.build(),
|
||||
// Gains more health from pinecones
|
||||
new FoodGroupEffects.Builder().tag(Unicopia.id("pinecone")).ailment(new HealingAffliction(3)).build()
|
||||
), Optional.empty()));
|
||||
// Seaponies can eat seaweed, kelp, shells, and other undersea foods
|
||||
exporter.accept(Race.SEAPONY, new DietProfile(0.5F, 0.8F, List.of(
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/cooked")).hunger(1.5F).saturation(1.2F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/raw")).hunger(0.85F).saturation(0.95F).build(),
|
||||
new Multiplier.Builder().tag(Unicopia.id("fish/rotten")).hunger(0.24F).saturation(0.25F).build(),
|
||||
new Multiplier.Builder()
|
||||
.tag(Unicopia.id("sea_vegetable/raw"))
|
||||
.tag(Unicopia.id("sea_vegetable/cooked"))
|
||||
.tag(Unicopia.id("shells")).tag(Unicopia.id("special_shells"))
|
||||
.hunger(1).saturation(1).build()
|
||||
), List.of(
|
||||
// Can eat fish without negative effect
|
||||
new FoodGroupEffects.Builder()
|
||||
.tag(Unicopia.id("fish/cooked")).tag(Unicopia.id("fish/raw")).tag(Unicopia.id("fish/rotten"))
|
||||
.build(),
|
||||
// Gains more health from pinecones
|
||||
new FoodGroupEffects.Builder().tag(Unicopia.id("pinecone")).ailment(new HealingAffliction(3)).build()
|
||||
), Optional.empty()));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -41,9 +41,7 @@ public class FoodGroupsGenerator {
|
|||
.tag(UConventionalTags.Items.GRAIN).tag(UConventionalTags.Items.NUTS).tag(UConventionalTags.Items.SEEDS)
|
||||
.food(UFoodComponents.BANANA)
|
||||
);
|
||||
exporter.accept(Unicopia.id("pinecone"), new FoodGroupEffects.Builder().tag(UConventionalTags.Items.PINECONES).food(UFoodComponents.PINECONE).ailment(new CompoundAffliction(List.<Affliction>of(
|
||||
new HealingAffliction(1)
|
||||
))));
|
||||
exporter.accept(Unicopia.id("pinecone"), new FoodGroupEffects.Builder().tag(UConventionalTags.Items.PINECONES).food(UFoodComponents.PINECONE).ailment(new HealingAffliction(1)));
|
||||
|
||||
provideMeatCategory("fish",
|
||||
UConventionalTags.Items.COOKED_FISH, UConventionalTags.Items.RAW_FISH, UConventionalTags.Items.ROTTEN_FISH,
|
||||
|
@ -58,59 +56,53 @@ public class FoodGroupsGenerator {
|
|||
UTags.Items.HIGH_QUALITY_SEA_VEGETABLES, UTags.Items.LOW_QUALITY_SEA_VEGETABLES,
|
||||
FoodComponents.COOKED_BEEF, FoodComponents.BEEF, exporter);
|
||||
|
||||
exporter.accept(Unicopia.id("foraging/blinding"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_BLINDING).food(4, 0.2F).ailment(new CompoundAffliction(List.<Affliction>of(
|
||||
exporter.accept(Unicopia.id("foraging/blinding"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_BLINDING).food(4, 0.2F).ailment(CompoundAffliction.of(
|
||||
new StatusEffectAffliction(StatusEffects.BLINDNESS, Range.of(30), Range.of(0), 50),
|
||||
new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(100), Range.of(2), 12)
|
||||
))));
|
||||
exporter.accept(Unicopia.id("foraging/dangerous"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_DANGEROUS).food(3, 0.3F).ailment(new CompoundAffliction(List.<Affliction>of(
|
||||
new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(250), Range.of(2), 4)
|
||||
))));
|
||||
)));
|
||||
exporter.accept(Unicopia.id("foraging/dangerous"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_DANGEROUS).food(3, 0.3F).ailment(new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(250), Range.of(2), 4)));
|
||||
exporter.accept(Unicopia.id("foraging/edible_filling"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_FILLING).food(17, 0.6F));
|
||||
exporter.accept(Unicopia.id("foraging/edible"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_SAFE).food(2, 1));
|
||||
exporter.accept(Unicopia.id("foraging/leafy_greens"), new FoodGroupEffects.Builder().tag(ItemTags.LEAVES).food(1, 1.4F));
|
||||
exporter.accept(Unicopia.id("foraging/nauseating"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_NAUSEATING).food(5, 0.5F).ailment(new CompoundAffliction(List.<Affliction>of(
|
||||
exporter.accept(Unicopia.id("foraging/nauseating"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_NAUSEATING).food(5, 0.5F).ailment(CompoundAffliction.of(
|
||||
new StatusEffectAffliction(StatusEffects.WEAKNESS, Range.of(200), Range.of(1), 30),
|
||||
new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(200), Range.of(2), 0)
|
||||
))));
|
||||
exporter.accept(Unicopia.id("foraging/prickly"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_PRICKLY).food(0, 1.5F).ailment(new CompoundAffliction(List.<Affliction>of(
|
||||
)));
|
||||
exporter.accept(Unicopia.id("foraging/prickly"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_PRICKLY).food(0, 1.5F).ailment(CompoundAffliction.of(
|
||||
new StatusEffectAffliction(StatusEffects.INSTANT_DAMAGE, Range.of(1), Range.of(0), 30)
|
||||
))));
|
||||
exporter.accept(Unicopia.id("foraging/glowing"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_GLOWING).food(1, 1.6F).ailment(new CompoundAffliction(List.<Affliction>of(
|
||||
)));
|
||||
exporter.accept(Unicopia.id("foraging/glowing"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_GLOWING).food(1, 1.6F).ailment(CompoundAffliction.of(
|
||||
new StatusEffectAffliction(StatusEffects.GLOWING, Range.of(30), Range.of(0), 30),
|
||||
new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(100), Range.of(2), 0)
|
||||
))));
|
||||
exporter.accept(Unicopia.id("foraging/risky"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_RISKY).food(9, 1.1F).ailment(new CompoundAffliction(List.<Affliction>of(
|
||||
new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(100), Range.of(2), 80)
|
||||
))));
|
||||
exporter.accept(Unicopia.id("foraging/severely_nauseating"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_SEVERE_NAUSEATING).food(3, 0.9F).ailment(new CompoundAffliction(List.<Affliction>of(
|
||||
)));
|
||||
exporter.accept(Unicopia.id("foraging/risky"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_RISKY).food(9, 1.1F).ailment(new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(100), Range.of(2), 80)));
|
||||
exporter.accept(Unicopia.id("foraging/severely_nauseating"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_SEVERE_NAUSEATING).food(3, 0.9F).ailment(CompoundAffliction.of(
|
||||
new StatusEffectAffliction(StatusEffects.WEAKNESS, Range.of(200), Range.of(1), 0),
|
||||
new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(100), Range.of(2), 80)
|
||||
))));
|
||||
exporter.accept(Unicopia.id("foraging/severely_prickly"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_SEVERE_PRICKLY).food(2, 0.9F).ailment(new CompoundAffliction(List.<Affliction>of(
|
||||
)));
|
||||
exporter.accept(Unicopia.id("foraging/severely_prickly"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_SEVERE_PRICKLY).food(2, 0.9F).ailment(CompoundAffliction.of(
|
||||
new StatusEffectAffliction(StatusEffects.INSTANT_DAMAGE, Range.of(1), Range.of(0), 0),
|
||||
new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(100), Range.of(2), 80)
|
||||
))));
|
||||
exporter.accept(Unicopia.id("foraging/strengthening"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_STRENGHENING).food(4, 0.2F).ailment(new CompoundAffliction(List.<Affliction>of(
|
||||
)));
|
||||
exporter.accept(Unicopia.id("foraging/strengthening"), new FoodGroupEffects.Builder().tag(UTags.Items.FORAGE_STRENGHENING).food(4, 0.2F).ailment(CompoundAffliction.of(
|
||||
new StatusEffectAffliction(StatusEffects.STRENGTH, Range.of(1300), Range.of(0), 0),
|
||||
new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(100), Range.of(2), 70)
|
||||
))));
|
||||
)));
|
||||
}
|
||||
|
||||
private void provideMeatCategory(String name,
|
||||
TagKey<Item> cookedTag, TagKey<Item> rawTag, TagKey<Item> rottenTag,
|
||||
FoodComponent cooked, FoodComponent raw, FoodComponent rotten,
|
||||
BiConsumer<Identifier, FoodGroupEffects.Builder> exporter) {
|
||||
exporter.accept(Unicopia.id(name + "/cooked"), new FoodGroupEffects.Builder().tag(cookedTag).food(cooked).ailment(new CompoundAffliction(List.<Affliction>of(
|
||||
new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(100), Range.of(2), 25)
|
||||
))));
|
||||
exporter.accept(Unicopia.id(name + "/raw"), new FoodGroupEffects.Builder().tag(rawTag).food(raw).ailment(new CompoundAffliction(List.<Affliction>of(
|
||||
exporter.accept(Unicopia.id(name + "/cooked"), new FoodGroupEffects.Builder().tag(cookedTag).food(cooked).ailment(new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(100), Range.of(2), 25)));
|
||||
exporter.accept(Unicopia.id(name + "/raw"), new FoodGroupEffects.Builder().tag(rawTag).food(raw).ailment(CompoundAffliction.of(
|
||||
new StatusEffectAffliction(StatusEffects.POISON, Range.of(45), Range.of(2), 80),
|
||||
new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(100), Range.of(2), 65)
|
||||
))));
|
||||
exporter.accept(Unicopia.id(name + "/rotten"), new FoodGroupEffects.Builder().tag(rottenTag).food(rotten).ailment(new CompoundAffliction(List.<Affliction>of(
|
||||
)));
|
||||
exporter.accept(Unicopia.id(name + "/rotten"), new FoodGroupEffects.Builder().tag(rottenTag).food(rotten).ailment(CompoundAffliction.of(
|
||||
new StatusEffectAffliction(StatusEffects.POISON, Range.of(45), Range.of(2), 80),
|
||||
new StatusEffectAffliction(UEffects.FOOD_POISONING, Range.of(100), Range.of(2), 95)
|
||||
))));
|
||||
)));
|
||||
}
|
||||
|
||||
private void provideVegetableCategory(String name,
|
||||
|
|
|
@ -193,5 +193,30 @@ public record DietProfile(
|
|||
buffer.writeFloat(hunger);
|
||||
buffer.writeFloat(saturation);
|
||||
}
|
||||
|
||||
public static final class Builder {
|
||||
private Set<FoodGroupKey> tags = new HashSet<>();
|
||||
private float hunger = 1;
|
||||
private float saturation = 1;
|
||||
|
||||
public Builder tag(Identifier tag) {
|
||||
tags.add(FoodGroupKey.LOOKUP.apply(tag));
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder hunger(float hunger) {
|
||||
this.hunger = hunger;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder saturation(float saturation) {
|
||||
this.saturation = saturation;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Multiplier build() {
|
||||
return new Multiplier(tags, hunger, saturation);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,7 +7,7 @@ import net.minecraft.entity.player.PlayerEntity;
|
|||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.network.PacketByteBuf;
|
||||
|
||||
final class ClearLoveSicknessAffliction implements Affliction {
|
||||
public final class ClearLoveSicknessAffliction implements Affliction {
|
||||
public static final ClearLoveSicknessAffliction INSTANCE = new ClearLoveSicknessAffliction();
|
||||
public static final Codec<ClearLoveSicknessAffliction> CODEC = Codec.unit(INSTANCE);
|
||||
|
||||
|
@ -21,6 +21,7 @@ final class ClearLoveSicknessAffliction implements Affliction {
|
|||
player.heal(stack.isFood() ? stack.getItem().getFoodComponent().getHunger() : 1);
|
||||
player.removeStatusEffect(StatusEffects.NAUSEA);
|
||||
player.removeStatusEffect(UEffects.FOOD_POISONING);
|
||||
player.removeStatusEffect(StatusEffects.WEAKNESS);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -18,6 +18,10 @@ public class CompoundAffliction implements Affliction {
|
|||
});
|
||||
}
|
||||
|
||||
public static CompoundAffliction of(Affliction...afflictions) {
|
||||
return new CompoundAffliction(List.of(afflictions));
|
||||
}
|
||||
|
||||
public CompoundAffliction(PacketByteBuf buffer) {
|
||||
this(buffer.readList(Affliction::read));
|
||||
}
|
||||
|
|
|
@ -1,64 +0,0 @@
|
|||
{
|
||||
"default_multiplier": 1.4,
|
||||
"foraging_multiplier": 0.9,
|
||||
"multipliers": [
|
||||
{
|
||||
"tags": [ "unicopia:fish/cooked" ],
|
||||
"hunger": 1.5,
|
||||
"saturation": 1.5
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:fish/raw" ],
|
||||
"hunger": 0.5,
|
||||
"saturation": 0.6
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:baked_goods"
|
||||
],
|
||||
"hunger": 1,
|
||||
"saturation": 1
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:insect/cooked",
|
||||
"unicopia:meat/cooked"
|
||||
],
|
||||
"hunger": 0.1,
|
||||
"saturation": 0.1
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:love",
|
||||
"unicopia:insect/raw",
|
||||
"unicopia:meat/raw",
|
||||
"unicopia:meat/rotten"
|
||||
],
|
||||
"hunger": 0,
|
||||
"saturation": 0
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:pinecone" ],
|
||||
"hunger": 0.9,
|
||||
"saturation": 0.9
|
||||
}
|
||||
],
|
||||
"effects": [
|
||||
{
|
||||
"tags": [ "unicopia:fish/cooked" ],
|
||||
"food_component": {
|
||||
"hunger": 2,
|
||||
"saturation": 1
|
||||
},
|
||||
"ailment": {
|
||||
"effects": [ ]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:fish/raw" ],
|
||||
"ailment": {
|
||||
"effects": [ ]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,130 +0,0 @@
|
|||
{
|
||||
"default_multiplier": 0.6,
|
||||
"foraging_multiplier": 0.9,
|
||||
"multipliers": [
|
||||
{
|
||||
"tags": [ "unicopia:fish/cooked" ],
|
||||
"hunger": 0.75,
|
||||
"saturation": 0.75
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:fish/raw" ],
|
||||
"hunger": 0.5,
|
||||
"saturation": 0.6
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:insect/cooked" ],
|
||||
"hunger": 1.75,
|
||||
"saturation": 1.75
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:meat/cooked" ],
|
||||
"hunger": 1.15,
|
||||
"saturation": 1.15
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:insect/raw" ],
|
||||
"hunger": 1,
|
||||
"saturation": 1
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:meat/raw" ],
|
||||
"hunger": 0.25,
|
||||
"saturation": 0.25
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:meat/rotten" ],
|
||||
"hunger": 0.2,
|
||||
"saturation": 0.2
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:love" ],
|
||||
"hunger": 0,
|
||||
"saturation": 0
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:pinecone" ],
|
||||
"hunger": 0.9,
|
||||
"saturation": 0.9
|
||||
}
|
||||
],
|
||||
"effects": [
|
||||
{
|
||||
"tags": [ "unicopia:fish/rotten" ],
|
||||
"ailment": {
|
||||
"effects": [
|
||||
{
|
||||
"effect": "unicopia:food_poisoning",
|
||||
"seconds": 100,
|
||||
"amplifier": 2,
|
||||
"chance": 5
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:insect/cooked",
|
||||
"unicopia:meat/cooked"
|
||||
],
|
||||
"ailment": {
|
||||
"effects": [ ]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:insect/raw" ],
|
||||
"ailment": {
|
||||
"effects": [
|
||||
{
|
||||
"effect": "unicopia:food_poisoning",
|
||||
"seconds": 50,
|
||||
"amplifier": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:meat/raw",
|
||||
"unicopia:meat/rotten"
|
||||
],
|
||||
"ailment": {
|
||||
"effects": [
|
||||
{
|
||||
"effect": "unicopia:food_poisoning",
|
||||
"seconds": 100,
|
||||
"amplifier": 2,
|
||||
"chance": 5
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:bat_ponys_delight" ],
|
||||
"ailment": {
|
||||
"effects": [
|
||||
{
|
||||
"effect": "minecraft:health_boost",
|
||||
"seconds": { "min": 30, "max": 60 },
|
||||
"amplifier": { "min": 2, "max": 6 }
|
||||
},
|
||||
{
|
||||
"effect": "minecraft:jump_boost",
|
||||
"seconds": { "min": 30, "max": 60 },
|
||||
"amplifier": { "min": 1, "max": 6 }
|
||||
},
|
||||
{
|
||||
"effect": "minecraft:health_boost",
|
||||
"seconds": 30,
|
||||
"amplifier": { "min": 1, "max": 6 }
|
||||
},
|
||||
{
|
||||
"effect": "minecraft:regeneration",
|
||||
"seconds": { "min": 3, "max": 30 },
|
||||
"amplifier": { "min": 3, "max": 6 }
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,159 +0,0 @@
|
|||
{
|
||||
"default_multiplier": 0.15,
|
||||
"foraging_multiplier": 0.1,
|
||||
"multipliers": [
|
||||
{
|
||||
"tags": [ "unicopia:insect/cooked" ],
|
||||
"hunger": 2.0,
|
||||
"saturation": 1.3
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:meat/cooked" ],
|
||||
"hunger": 1.9,
|
||||
"saturation": 1.2
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:insect/raw" ],
|
||||
"hunger": 1,
|
||||
"saturation": 1
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:meat/raw" ],
|
||||
"hunger": 1.25,
|
||||
"saturation": 1.25
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:meat/rotten" ],
|
||||
"hunger": 0.6,
|
||||
"saturation": 0.6
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:baked_goods"
|
||||
],
|
||||
"hunger": 0.5,
|
||||
"saturation": 0.9
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:love" ],
|
||||
"hunger": 5,
|
||||
"saturation": 3
|
||||
}
|
||||
],
|
||||
"default_effects": {
|
||||
"effects": [
|
||||
{
|
||||
"effect": "unicopia:food_poisoning",
|
||||
"seconds": 100,
|
||||
"amplifier": 2
|
||||
},
|
||||
{
|
||||
"effect": "minecraft:weakness",
|
||||
"seconds": 200,
|
||||
"amplifier": 1
|
||||
},
|
||||
{
|
||||
"type": "unicopia:lose_hunger",
|
||||
"multiplier": 0.5
|
||||
}
|
||||
]
|
||||
},
|
||||
"effects": [
|
||||
{
|
||||
"tags": [ "unicopia:love" ],
|
||||
"food_component": {
|
||||
"hunger": 2,
|
||||
"saturation": 1
|
||||
},
|
||||
"ailment": {
|
||||
"effects": [
|
||||
{
|
||||
"name": "Love Consumption",
|
||||
"type": "unicopia:cure_love_sickness"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:insect/raw"
|
||||
],
|
||||
"food_component": {
|
||||
"hunger": 3,
|
||||
"saturation": 2
|
||||
},
|
||||
"ailment": {
|
||||
"effects": [ ]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:fish/cooked",
|
||||
"unicopia:fish/raw"
|
||||
],
|
||||
"ailment": {
|
||||
"effects": [
|
||||
{
|
||||
"effect": "unicopia:food_poisoning",
|
||||
"seconds": 50,
|
||||
"amplifier": 2
|
||||
},
|
||||
{
|
||||
"name": "unicopia.affliction.love_sickness",
|
||||
"type": "unicopia:lose_hunger",
|
||||
"multiplier": 0.5
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:fish/rotten",
|
||||
"unicopia:insect/cooked",
|
||||
"unicopia:meat/cooked",
|
||||
"unicopia:meat/raw",
|
||||
"unicopia:meat/rotten"
|
||||
],
|
||||
"food_component": {
|
||||
"hunger": 6,
|
||||
"saturation": 9
|
||||
},
|
||||
"ailment": {
|
||||
"effects": [
|
||||
{
|
||||
"name": "Love Consumption",
|
||||
"type": "unicopia:cure_love_sickness"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:foraging/edible",
|
||||
"unicopia:foraging/edible_filling"
|
||||
],
|
||||
"food_component": {
|
||||
"hunger": 18,
|
||||
"saturation": 9
|
||||
},
|
||||
"ailment": {
|
||||
"effects": [
|
||||
{
|
||||
"effect": "unicopia:food_poisoning",
|
||||
"seconds": 10,
|
||||
"amplifier": 2
|
||||
},
|
||||
{
|
||||
"effect": "minecraft:weakness",
|
||||
"seconds": 2,
|
||||
"amplifier": 1
|
||||
},
|
||||
{
|
||||
"type": "unicopia:lose_hunger",
|
||||
"multiplier": 0.5
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,81 +0,0 @@
|
|||
{
|
||||
"default_multiplier": 0.7,
|
||||
"foraging_multiplier": 1,
|
||||
"multipliers": [
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:candy",
|
||||
"unicopia:desserts",
|
||||
"unicopia:rocks"
|
||||
],
|
||||
"hunger": 2.5,
|
||||
"saturation": 1.7
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:baked_goods"
|
||||
],
|
||||
"hunger": 1.2,
|
||||
"saturation": 2
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:fish/cooked" ],
|
||||
"hunger": 0.2,
|
||||
"saturation": 0.2
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:insect/cooked",
|
||||
"unicopia:meat/cooked"
|
||||
],
|
||||
"hunger": 0.1,
|
||||
"saturation": 0.1
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:love",
|
||||
"unicopia:fish/raw",
|
||||
"unicopia:insect/raw",
|
||||
"unicopia:meat/raw",
|
||||
"unicopia:meat/rotten"
|
||||
],
|
||||
"hunger": 0,
|
||||
"saturation": 0
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:pinecone" ],
|
||||
"hunger": 1,
|
||||
"saturation": 1
|
||||
}
|
||||
],
|
||||
"effects": [
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:candy",
|
||||
"unicopia:rocks"
|
||||
],
|
||||
"food_component": {
|
||||
"hunger": 5,
|
||||
"saturation": 12,
|
||||
"fastFood": true
|
||||
},
|
||||
"ailment": {
|
||||
"effects": [ ]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:desserts"
|
||||
],
|
||||
"food_component": {
|
||||
"hunger": 12,
|
||||
"saturation": 32,
|
||||
"eatenQuickly": true,
|
||||
"fastFood": true
|
||||
},
|
||||
"ailment": {
|
||||
"effects": [ ]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,97 +0,0 @@
|
|||
{
|
||||
"default_multiplier": 0.5,
|
||||
"foraging_multiplier": 0.8,
|
||||
"multipliers": [
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:meat/cooked",
|
||||
"unicopia:fish/cooked"
|
||||
],
|
||||
"hunger": 1.6,
|
||||
"saturation": 1.6
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:nuts_and_seeds"
|
||||
],
|
||||
"hunger": 1.4,
|
||||
"saturation": 1.4
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:baked_goods"
|
||||
],
|
||||
"hunger": 1,
|
||||
"saturation": 1
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:meat/raw",
|
||||
"unicopia:fish/raw"
|
||||
],
|
||||
"hunger": 0.6,
|
||||
"saturation": 0.6
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:meat/rotten" ],
|
||||
"hunger": 0.3,
|
||||
"saturation": 0.3
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:love",
|
||||
"unicopia:insect/raw",
|
||||
"unicopia:insect/cooked"
|
||||
],
|
||||
"hunger": 0,
|
||||
"saturation": 0
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:pinecone" ],
|
||||
"hunger": 1,
|
||||
"saturation": 1
|
||||
}
|
||||
],
|
||||
"effects": [
|
||||
{
|
||||
"tags": [ "unicopia:fish/cooked" ],
|
||||
"food_component": {
|
||||
"hunger": 2,
|
||||
"saturation": 1
|
||||
},
|
||||
"ailment": {
|
||||
"effects": [ ]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:fish/raw" ],
|
||||
"ailment": {
|
||||
"effects": [ ]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:foraging/prickly",
|
||||
"unicopia:foraging/severely_prickly"
|
||||
],
|
||||
"food_component": {
|
||||
"hunger": 2,
|
||||
"saturation": 1
|
||||
},
|
||||
"ailment": {
|
||||
"effects": [ ]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:pinecone" ],
|
||||
"ailment": {
|
||||
"effects": [
|
||||
{
|
||||
"type": "unicopia:healing",
|
||||
"health": 3
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,21 +0,0 @@
|
|||
{
|
||||
"default_multiplier": 1,
|
||||
"foraging_multiplier": 0,
|
||||
"multipliers": [ ],
|
||||
"effects": [
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:fish/cooked",
|
||||
"unicopia:fish/raw",
|
||||
"unicopia:fish/rotten",
|
||||
"unicopia:meat/cooked",
|
||||
"unicopia:meat/raw",
|
||||
"unicopia:meat/rotten",
|
||||
"unicopia:pinecone"
|
||||
],
|
||||
"ailment": {
|
||||
"effects": [ ]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,68 +0,0 @@
|
|||
{
|
||||
"default_multiplier": 0.25,
|
||||
"foraging_multiplier": 0.9,
|
||||
"multipliers": [
|
||||
{
|
||||
"tags": [ "unicopia:meat/cooked" ],
|
||||
"hunger": 1.5,
|
||||
"saturation": 1.5
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:meat/raw" ],
|
||||
"hunger": 0.5,
|
||||
"saturation": 0.6
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:baked_goods"
|
||||
],
|
||||
"hunger": 1,
|
||||
"saturation": 1
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:insect/cooked",
|
||||
"unicopia:fish/cooked"
|
||||
],
|
||||
"hunger": 0.1,
|
||||
"saturation": 0.1
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:love",
|
||||
"unicopia:insect/raw",
|
||||
"unicopia:fish/raw",
|
||||
"unicopia:meat/rotten"
|
||||
],
|
||||
"hunger": 0,
|
||||
"saturation": 0
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:pinecone" ],
|
||||
"hunger": 0.9,
|
||||
"saturation": 0.9
|
||||
}
|
||||
],
|
||||
"effects": [
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:fish/rotten",
|
||||
"unicopia:insect/cooked",
|
||||
"unicopia:meat/cooked",
|
||||
"unicopia:meat/raw",
|
||||
"unicopia:meat/rotten",
|
||||
"unicopia:foraging/blinding",
|
||||
"unicopia:foraging/prickly",
|
||||
"unicopia:foraging/severely_prickly",
|
||||
"unicopia:foraging/strengthening"
|
||||
],
|
||||
"food_component": {
|
||||
"hunger": 2,
|
||||
"saturation": 1
|
||||
},
|
||||
"ailment": {
|
||||
"effects": [ ]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,66 +0,0 @@
|
|||
{
|
||||
"default_multiplier": 0.9,
|
||||
"foraging_multiplier": 1,
|
||||
"multipliers": [
|
||||
{
|
||||
"tags": [ "unicopia:fish/cooked" ],
|
||||
"hunger": 1.5,
|
||||
"saturation": 1.5
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:fish/raw" ],
|
||||
"hunger": 0.5,
|
||||
"saturation": 0.6
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:baked_goods"
|
||||
],
|
||||
"hunger": 1,
|
||||
"saturation": 1
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:insect/cooked",
|
||||
"unicopia:meat/cooked"
|
||||
],
|
||||
"hunger": 0.1,
|
||||
"saturation": 0.1
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:love",
|
||||
"unicopia:insect/raw",
|
||||
"unicopia:meat/raw",
|
||||
"unicopia:meat/rotten"
|
||||
],
|
||||
"hunger": 0,
|
||||
"saturation": 0
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:pinecone" ],
|
||||
"hunger": 0.9,
|
||||
"saturation": 0.9
|
||||
}
|
||||
],
|
||||
"effects": [
|
||||
{
|
||||
"tags": [ "unicopia:fish/cooked" ],
|
||||
"ailment": {
|
||||
"effects": [ ]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:fish/raw" ],
|
||||
"ailment": {
|
||||
"effects": [
|
||||
{
|
||||
"effect": "unicopia:food_poisoning",
|
||||
"seconds": 50,
|
||||
"amplifier": 2
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,100 +0,0 @@
|
|||
{
|
||||
"default_multiplier": 0.4,
|
||||
"foraging_multiplier": 0.7,
|
||||
"multipliers": [
|
||||
{
|
||||
"tags": [ "unicopia:sea_vegetable/raw" ],
|
||||
"hunger": 1,
|
||||
"saturation": 1
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:shells", "unicopia:shelly"
|
||||
],
|
||||
"hunger": 1,
|
||||
"saturation": 1
|
||||
}
|
||||
],
|
||||
"default_effects": {
|
||||
"effects": [
|
||||
{
|
||||
"effect": "unicopia:food_poisoning",
|
||||
"seconds": 100,
|
||||
"amplifier": 2
|
||||
}
|
||||
]
|
||||
},
|
||||
"effects": [
|
||||
{
|
||||
"tags": [ "unicopia:fish/cooked" ],
|
||||
"ailment": {
|
||||
"effects": [ ]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:fish/raw" ],
|
||||
"ailment": {
|
||||
"effects": [ ]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:foraging/edible",
|
||||
"unicopia:foraging/edible_filling"
|
||||
],
|
||||
"food_component": {
|
||||
"hunger": 18,
|
||||
"saturation": 9
|
||||
},
|
||||
"ailment": {
|
||||
"effects": [
|
||||
{
|
||||
"effect": "unicopia:food_poisoning",
|
||||
"seconds": 100,
|
||||
"amplifier": 2
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:sea_vegetable/raw" ],
|
||||
"food_component": {
|
||||
"hunger": 2,
|
||||
"saturation": 1
|
||||
},
|
||||
"ailment": {
|
||||
"effects": [ ]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:sea_vegetable/cooked" ],
|
||||
"food_component": {
|
||||
"hunger": 6,
|
||||
"saturation": 2
|
||||
},
|
||||
"ailment": {
|
||||
"effects": [ ]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:shells" ],
|
||||
"food_component": {
|
||||
"hunger": 3,
|
||||
"saturation": 5
|
||||
},
|
||||
"ailment": {
|
||||
"effects": [ ]
|
||||
}
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:shelly" ],
|
||||
"food_component": {
|
||||
"hunger": 6,
|
||||
"saturation": 7
|
||||
},
|
||||
"ailment": {
|
||||
"effects": [ ]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,39 +0,0 @@
|
|||
{
|
||||
"default_multiplier": 1.2,
|
||||
"foraging_multiplier": 1,
|
||||
"multipliers": [
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:insect/cooked",
|
||||
"unicopia:meat/cooked",
|
||||
"unicopia:fish/cooked"
|
||||
],
|
||||
"hunger": 0.1,
|
||||
"saturation": 0.1
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:baked_goods"
|
||||
],
|
||||
"hunger": 1,
|
||||
"saturation": 1
|
||||
},
|
||||
{
|
||||
"tags": [
|
||||
"unicopia:love",
|
||||
"unicopia:insect/raw",
|
||||
"unicopia:meat/raw",
|
||||
"unicopia:fish/raw",
|
||||
"unicopia:meat/rotten"
|
||||
],
|
||||
"hunger": 0,
|
||||
"saturation": 0
|
||||
},
|
||||
{
|
||||
"tags": [ "unicopia:pinecone" ],
|
||||
"hunger": 0.9,
|
||||
"saturation": 0.9
|
||||
}
|
||||
],
|
||||
"effects": []
|
||||
}
|
Loading…
Reference in a new issue