Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mc1.20.1/dev #144

Merged
merged 60 commits into from
Aug 25, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
4311cac
feat: make Shrink and Enlargement Serums affect max health
Elenterius Jun 21, 2024
810e73a
chore: add calendar for in-game special events
Elenterius Jul 16, 2024
e597b3e
chore: update geckolib version
Elenterius Jul 16, 2024
7952667
chore: make AttackHandler final
Elenterius Jul 16, 2024
d2c49e9
chore: add optional Parcool mod dependency
Elenterius Jul 16, 2024
c850200
chore: re-normalize line endings
Elenterius Jul 16, 2024
0393170
feat: expose Biomancy specific RecipeBuilders for datagen
Elenterius Jul 16, 2024
8140f8f
chore: improve language provider error messages
Elenterius Jul 16, 2024
930d03d
feat: add Acid Cauldron
kd8lvt Jul 17, 2024
1a03a97
chore: refactor & improve Acid Cauldron
Elenterius Jul 18, 2024
968aed4
fix: fix missing pixels on the Caustic Gunblade texture
Elenterius Jul 18, 2024
36b1732
fix: fix Acolyte Armor z-fighting and render type
Elenterius Jul 18, 2024
45167e8
chore: tweak gunblade tooltip
Elenterius Jul 18, 2024
003529b
fix: fix Ravenous Claws normal attack bypassing armor, resistances an…
Elenterius Jul 18, 2024
698757b
chore: fix invalid translation keys inside the Russian translation file
Elenterius Jul 21, 2024
0a0c074
chore: add utils for common mob animation controllers
Elenterius Jul 28, 2024
094e750
feat: add Flesh Cow mob
Elenterius Jul 23, 2024
4a35785
feat: add Flesh Sheep mob
Elenterius Jul 25, 2024
1c9148a
feat: add Flesh Pig mob
Elenterius Jul 28, 2024
8877759
feat: add Flesh Chicken mob
Elenterius Jul 28, 2024
fbb90a1
feat: add breeding stimulant backfire for cows, sheep, pigs and chickens
Elenterius Jul 28, 2024
13df4a1
chore: rename corrosive acid projectile to acid spit
Elenterius Jul 28, 2024
9f5e48e
feat: add Frenzy Serum
Elenterius Jul 29, 2024
5c4300d
chore(release): 1.20.1-v2.8.4.0 [skip ci]
invalid-email-address Jul 31, 2024
d77d157
chore: automate block tag datagen for stairs, slabs and walls
Elenterius Aug 6, 2024
1b37e26
feat: add Fibrous Flesh block set
Elenterius Aug 6, 2024
999acd7
feat: tweak Frenzy Serum and Withdrawal Effect balance and make Withd…
Elenterius Aug 6, 2024
b5df0ed
feat: add Chroma Sheep mob
Elenterius Aug 8, 2024
5b37c73
feat: update Breeding Stimulant description to hint at how to get mut…
Elenterius Aug 8, 2024
578a04d
feat: add Thick Fur Sheep mob
Elenterius Aug 8, 2024
847f451
chore: add quote from kd8lvt as easter egg
Elenterius Aug 8, 2024
125acef
build(gradle): fix missing geckolib dependency
Elenterius Aug 9, 2024
ff74136
fix: fix leg animation of flesh animals
Elenterius Aug 9, 2024
3d4d453
chore: remove unused Boomling mob
Elenterius Aug 9, 2024
5610a9e
feat: make Flesh Sheep drop string as loot and update model to show s…
Elenterius Aug 10, 2024
a17983b
feat: remove leaping behavior from Flesh Pig
Elenterius Aug 10, 2024
728140f
feat: add Primordial Knowledge enchantment for helmets
Elenterius Aug 11, 2024
24e8e54
fix: fix untranslatable text in the Modular Larynx tooltip
Elenterius Aug 11, 2024
543d55f
feat: make lava fluid destroy certain malignant flesh blocks
Elenterius Aug 11, 2024
ceb67d5
chore(release): 1.20.1-v2.8.5.0 [skip ci]
invalid-email-address Aug 11, 2024
d20154e
feat: add Cobweb recipe to the Bio-Forge
Elenterius Aug 17, 2024
c11aae5
feat: make frenzy serum convert normal rabbits into killer rabbits
Elenterius Aug 17, 2024
97bb305
feat: make using unstable compound on creepers or tnt cause an immedi…
Elenterius Aug 18, 2024
17f3392
feat: change unstable compound explosion to be incendiary and capable…
Elenterius Aug 20, 2024
909cd50
feat: update gunpowder recipe to require unstable compound
Elenterius Aug 21, 2024
0916f04
feat: make most serums and compounds cradle tributes
Elenterius Aug 21, 2024
b67714a
feat: remove Primordial Knowledge enchantment and split its features …
Elenterius Aug 21, 2024
b11440d
fix: fix membranes not blocking pathfinding. Thanks to cdbarrett
cdbarrett Aug 12, 2024
449b89e
chore: clean-up mixins
Elenterius Aug 22, 2024
8280a02
feat: make Living Flesh consumable
Elenterius Aug 22, 2024
375ec3c
chore(release): 1.20.1-v2.8.6.0 [skip ci]
invalid-email-address Aug 22, 2024
0203225
feat: make all snow, weak ice and giant mushroom blocks replaceable b…
Elenterius Aug 23, 2024
c4be08a
feat: add advancements with hints on how to find primal orifices and …
Elenterius Aug 23, 2024
931b0c2
feat: make Healing Activator advancement also trigger for healing add…
Elenterius Aug 23, 2024
45e3ed1
fix: fix bounding box scaling issues with Flesh Blobs
Elenterius Aug 23, 2024
46e6df6
fix: improve render scaling of Flesh Blob models
Elenterius Aug 23, 2024
a2eff7a
chore(release): 1.20.1-v2.8.7.0 [skip ci]
invalid-email-address Aug 24, 2024
0bcb473
feat: widen primordial infestation effect to renaming of items in anv…
Elenterius Aug 25, 2024
ef3aa2f
fix: make Primordial Infestation not applicable to Primordial Flesh B…
Elenterius Aug 25, 2024
90d4b14
feat: make flesh veins flammable
Elenterius Aug 25, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
200 changes: 47 additions & 153 deletions CHANGELOG.md

Large diffs are not rendered by default.

7 changes: 7 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -151,6 +151,10 @@ repositories {
maven {
name = 'Geckolib'
url = 'https://dl.cloudsmith.io/public/geckolib3/geckolib/maven/'
content {
includeGroupByRegex("software\\.bernie.*")
includeGroup("com.eliotlash.mclib")
}
}
maven { url = 'https://maven.blamejared.com' }
maven {
Expand Down Expand Up @@ -186,6 +190,7 @@ dependencies {
}

implementation fg.deobf("software.bernie.geckolib:geckolib-forge-${minecraft_version}:${geckolib_version}")
implementation("com.eliotlash.mclib:mclib:20")
datagenImplementation fg.deobf("software.bernie.geckolib:geckolib-forge-${minecraft_version}:${geckolib_version}")

//https://h2database.com/html/mvstore.html
Expand Down Expand Up @@ -218,6 +223,8 @@ dependencies {
// implementation fg.deobf("se.mickelus.mutil:mutil:1.20.1-6.1.1")
compileOnly fg.deobf("maven.modrinth:tetra:6.1.0")

// runtimeOnly fg.deobf("maven.modrinth:parcool:1.20.1-3.2.1.2-R")

datagenImplementation sourceSets.main.output
}

Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ mod_credits=RhinoW, The Shroome, Shorepion, Kitteh6660, ZeoMaddox, ItsLumine, Ru
mod_description=Biopunk and Flesh Magic inspired tech-magic mod that has a fleshy art theme.
## Dependencies
### Geckolib Mod
geckolib_version=4.4.4
geckolib_version=4.4.7
geckolib_version_range=[4.4,)
### Modonomicon
modonomicon_version=1.54.4
Expand Down
2 changes: 1 addition & 1 deletion mod_version.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{
"major": "2",
"semantic": "8.3.0"
"semantic": "8.7.0"
}
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,18 @@ public void registerSounds() {
addSimpleSounds(ModSoundEvents.FLESH_BLOB_AMBIENT, 3, 0.8f, 0.9f);
addSimpleSound(ModSoundEvents.FLESH_BLOB_MEW_PURR, 0.7f, 0.45f);
addSimpleSound(ModSoundEvents.FLESH_BLOB_GROWL, 0.9f, 0.55f);
addSimpleRedirect(ModSoundEvents.FLESH_COW_AMBIENT, SoundEvents.COW_AMBIENT, 1f, 0.25f);
addSimpleRedirect(ModSoundEvents.FLESH_COW_HURT, SoundEvents.COW_HURT, 1f, 0.25f);
addSimpleRedirect(ModSoundEvents.FLESH_COW_DEATH, SoundEvents.COW_DEATH, 1f, 0.25f);
addSimpleRedirect(ModSoundEvents.FLESH_SHEEP_AMBIENT, SoundEvents.SHEEP_AMBIENT, 1f, 0.25f);
addSimpleRedirect(ModSoundEvents.FLESH_SHEEP_HURT, SoundEvents.SHEEP_HURT, 1f, 0.25f);
addSimpleRedirect(ModSoundEvents.FLESH_SHEEP_DEATH, SoundEvents.SHEEP_DEATH, 1f, 0.25f);
addSimpleRedirect(ModSoundEvents.FLESH_PIG_AMBIENT, SoundEvents.PIG_AMBIENT, 1f, 0.25f);
addSimpleRedirect(ModSoundEvents.FLESH_PIG_HURT, SoundEvents.PIG_HURT, 1f, 0.25f);
addSimpleRedirect(ModSoundEvents.FLESH_PIG_DEATH, SoundEvents.PIG_DEATH, 1f, 0.25f);
addSimpleRedirect(ModSoundEvents.FLESH_CHICKEN_AMBIENT, SoundEvents.CHICKEN_AMBIENT, 1f, 0.25f);
addSimpleRedirect(ModSoundEvents.FLESH_CHICKEN_HURT, SoundEvents.CHICKEN_HURT, 1f, 0.25f);
addSimpleRedirect(ModSoundEvents.FLESH_CHICKEN_DEATH, SoundEvents.CHICKEN_DEATH, 1f, 0.25f);
}

public String translationKey(RegistryObject<SoundEvent> soundHolder) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -131,11 +131,21 @@ private void saveAdvancements(Consumer<Advancement> consumer, ExistingFileHelper
.addCriterion("has_placed_cradle", hasPlacedBlock(ModBlocks.PRIMORDIAL_CRADLE.get()))
.save(consumer, fileHelper);

createAdvancement("healing_activator_sacrifice").parent(primalCradle).icon(PotionUtils.setPotion(new ItemStack(Items.POTION), Potions.STRONG_HEALING))
Advancement healingActivator = createAdvancement("healing_activator_sacrifice").parent(primalCradle).icon(PotionUtils.setPotion(new ItemStack(Items.POTION), Potions.STRONG_HEALING))
.title("Healing Activator")
.description("It's seems like items rich in life energy are needed. Jumpstart the process with a few healing/regen potions, other special foods or artifacts.")
.description("It's seems like items rich in life energy are needed. Jumpstart the process with a few healing/regen potions, other special foods or artifacts containing health properties.")
.showToast()
.addCriterion("has_sacrificed_healing_activator", hasSacrificedItem(Items.POTION))
.addCriterion("has_sacrificed_potion", hasSacrificedItem(Items.POTION))
.addCriterion("has_sacrificed_healing_additive", hasSacrificedItem(ModItems.HEALING_ADDITIVE.get()))
.addCriterion("has_sacrificed_regen_fluid", hasSacrificedItem(ModItems.REGENERATIVE_FLUID.get()))
.requirements(RequirementsStrategy.OR)
.save(consumer, fileHelper);

createAdvancement("nether_star_sacrifice").parent(healingActivator).icon(Items.NETHER_STAR)
.title("Superior Sacrifice")
.description("Sacrifice a Nether Star and watch it's consequences.")
.hidden().showToast().announceToChat()
.addCriterion("has_sacrificed_nether_star", hasSacrificedItem(Items.NETHER_STAR))
.save(consumer, fileHelper);

createAdvancement("raw_meat_sacrifice").parent(primalCradle).icon(Items.BEEF)
Expand All @@ -154,6 +164,21 @@ private void saveAdvancements(Consumer<Advancement> consumer, ExistingFileHelper

Advancement emptyAfterPrimalCradle = createEmptyAdvancementAfter(primalCradle).save(consumer, fileHelper);

Advancement malignantGrowth = createAdvancement("malignant_growth").parent(emptyAfterPrimalCradle).icon(ModItems.MALIGNANT_FLESH_BLOCK.get())
.title("Malignant Growth")
.description("Cultivate a flesh mound and harvest it's flesh. Excessively use your cradle or sacrifice items that contain superior life energy.")
.showToast()
.addCriterion("has_malignant_veins", hasItems(ModItems.MALIGNANT_FLESH_VEINS.get()))
.addCriterion("has_malignant_block", hasItems(ModItems.MALIGNANT_FLESH_BLOCK.get()))
.save(consumer, fileHelper);

createAdvancement("primal_orifice").parent(malignantGrowth).icon(ModItems.PRIMAL_ORIFICE.get())
.title("Trypophobia?")
.description("Explore your flesh mound and harvest flesh blocks perforated with many holes.")
.frameType(FrameType.CHALLENGE).showToast()
.addCriterion("has_primal_orifice", hasItems(ModItems.PRIMAL_ORIFICE.get()))
.save(consumer, fileHelper);

Advancement livingFlesh = createAdvancement("living_flesh").parent(emptyAfterPrimalCradle).icon(ModItems.LIVING_FLESH.get())
.title("Betrayal of Life")
.description("Kill a innocent Flesh Blob to progress further. Twist their essence to your will..")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@ public abstract class AbstractLangProvider implements DataProvider, LangProvider

private final Map<String, String> translations = new LinkedHashMap<>();
private final PackOutput packOutput;
private final String modId;
private final String languageLocale;
protected final String modId;
protected final String languageLocale;

protected AbstractLangProvider(PackOutput packOutput, String modId, String languageLocale) {
this.packOutput = packOutput;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,21 +55,21 @@ public boolean hasMissingTranslations() {

if (!itemsToTranslate.isEmpty()) {
for (Item item : itemsToTranslate) {
LOGGER.error(LOG_MARKER, "Missing translation for item '{}'", item);
LOGGER.error(LOG_MARKER, "Missing {} translation for item '{}'", languageLocale, item);
}
isAnyMissing = true;
}

if (!blocksToTranslate.isEmpty()) {
for (Block block : blocksToTranslate) {
LOGGER.error(LOG_MARKER, "Missing translation for block '{}'", block);
LOGGER.error(LOG_MARKER, "Missing {} translation for block '{}'", languageLocale, block);
}
isAnyMissing = true;
}

if (!serumsToTranslate.isEmpty()) {
for (Serum serum : serumsToTranslate) {
LOGGER.error(LOG_MARKER, "Missing translation for serum '{}'", serum);
LOGGER.error(LOG_MARKER, "Missing {} translation for serum '{}'", languageLocale, serum);
}
isAnyMissing = true;
}
Expand Down Expand Up @@ -347,6 +347,18 @@ private void addSoundTranslations() {
addSound(ModSoundEvents.FLESH_BLOB_AMBIENT, "Flesh Blob Ambient");
addSound(ModSoundEvents.FLESH_BLOB_GROWL, "Flesh Blob Growls");
addSound(ModSoundEvents.FLESH_BLOB_MEW_PURR, "Flesh Blob Purrs");
addSound(ModSoundEvents.FLESH_COW_AMBIENT, "Flesh Cow moos");
addSound(ModSoundEvents.FLESH_COW_HURT, "Flesh Cow hurts");
addSound(ModSoundEvents.FLESH_COW_DEATH, "Flesh Cow dies");
addSound(ModSoundEvents.FLESH_SHEEP_AMBIENT, "Flesh Sheep baahs");
addSound(ModSoundEvents.FLESH_SHEEP_HURT, "Flesh Sheep hurts");
addSound(ModSoundEvents.FLESH_SHEEP_DEATH, "Flesh Sheep dies");
addSound(ModSoundEvents.FLESH_PIG_AMBIENT, "Flesh Pig oinks");
addSound(ModSoundEvents.FLESH_PIG_HURT, "Flesh Pig hurts");
addSound(ModSoundEvents.FLESH_PIG_DEATH, "Flesh Pig dies");
addSound(ModSoundEvents.FLESH_CHICKEN_AMBIENT, "Flesh Chicken clucks");
addSound(ModSoundEvents.FLESH_CHICKEN_HURT, "Flesh Chicken hurts");
addSound(ModSoundEvents.FLESH_CHICKEN_DEATH, "Flesh Chicken dies");
}

private void addDamageTranslations() {
Expand Down Expand Up @@ -374,6 +386,11 @@ private void addDamageTranslations() {
"%1$s was drained of blood by %2$s",
"%1$s was blood let by %2$s using %3$s"
);
addDeathMessage(ModDamageTypes.SLASH,
"%1$s was shredded to ribbons",
"%1$s was ripped apart by %2$s",
"%1$s was eviscerate by %2$s using %3$s"
);

addDeathMessage(ModDamageTypes.TOOTH_PROJECTILE, "[WIP]",
"[WIP] %1$s was forcefully implanted with teeth by %2$s",
Expand All @@ -391,6 +408,12 @@ private void addPotionTranslations() {
add(Items.SPLASH_POTION.getDescriptionId() + ".effect." + suffix, "Gastric Splash-Juice");
add(Items.LINGERING_POTION.getDescriptionId() + ".effect." + suffix, "Gastric Linger-Juice");
add(Items.TIPPED_ARROW.getDescriptionId() + ".effect." + suffix, "Arrow of Gastric Juice");

suffix = ModPotions.PRIMORDIAL_INFESTATION.getId().toLanguageKey();
add(Items.POTION.getDescriptionId() + ".effect." + suffix, "Potion of Primordial Infestation");
add(Items.SPLASH_POTION.getDescriptionId() + ".effect." + suffix, "Splash Potion of Primordial Infestation");
add(Items.LINGERING_POTION.getDescriptionId() + ".effect." + suffix, "Lingering Potion of Primordial Infestation");
add(Items.TIPPED_ARROW.getDescriptionId() + ".effect." + suffix, "Arrow of Primordial Infestation");
}

private void addStatusEffectTranslations() {
Expand All @@ -401,6 +424,9 @@ private void addStatusEffectTranslations() {
addEffect(ModMobEffects.ESSENCE_ANEMIA, "Essence Anemia");
addEffect(ModMobEffects.DROWSY, "Drowsy");
addEffect(ModMobEffects.DESPOIL, "Despoil");
addEffect(ModMobEffects.FRENZY, "Frenzy");
addEffect(ModMobEffects.WITHDRAWAL, "Withdrawal");
addEffect(ModMobEffects.PRIMORDIAL_INFESTATION, "Primordial Infestation");
}

private void addEnchantmentTranslations() {
Expand Down Expand Up @@ -494,7 +520,7 @@ private void addItemTranslations() {
add(ModItems.ESSENCE.get().getDescriptionId() + ".unique_mob", "Unique %1$s Essence");

addItem(ModItems.ORGANIC_COMPOUND, "Organic Compound", "Slimy substance made of bile infused with nutrients.");
addItem(ModItems.UNSTABLE_COMPOUND, "Unstable Compound", "Very unstable and reactive substance. Seems like it will combust if it comes in contact with just about anything else.");
addItem(ModItems.UNSTABLE_COMPOUND, "Unstable Compound", "Very unstable and reactive substance. Seems like it will combust if it comes in contact with just about anything else.\nThe explosion is highly incendiary and has been known to liquefy magma blocks.");
addItem(ModItems.EXOTIC_COMPOUND, "Exotic Compound", "Substance of a questionable nature, comprised of exotic material and other trace elements.");
addItem(ModItems.GENETIC_COMPOUND, "Genetic Compound", "Cocktail of various hormones, nutrients and organic elements. It seems useful for producing potent stimulants.");
addItem(ModItems.CORROSIVE_ADDITIVE, "Corrosive Additive", "A highly corrosive fluid that seems useful for alchemically burning away organic material, or weakening the bonds of complex substances.");
Expand All @@ -506,9 +532,10 @@ private void addItemTranslations() {
addSerumItem(ModItems.SHRINKING_SERUM, "Shrinking Serum", "Shrinks Slimes, Magma Cubes and Flesh Blobs.\n\n(If Pehkui is installed you can shrink yourself and all Mobs)");

addSerumItem(ModItems.CLEANSING_SERUM, "Cleansing Serum", "Burns away all foreign substances inside a creature.\nVery effective on sticky status effects that refuse to be healed with milk.");
addSerumItem(ModItems.BREEDING_STIMULANT, "Breeding Stimulant", "Makes Animals hyper-fertile, making them able to repeatedly reproduce for a short time.");
addSerumItem(ModItems.BREEDING_STIMULANT, "Breeding Stimulant", "Potent drug that that temporarily forces animals into a state of hyper-fertility, allowing them to reproduce repeatedly for a short time.\nUse with caution, as this stimulant may lead to undesirable mutations in the offspring.");
addSerumItem(ModItems.ABSORPTION_BOOST, "Absorption Stimulant", "Grants stackable absorption health points to Mobs and Players.");
addSerumItem(ModItems.INSOMNIA_CURE, "Insomnia Cure", "Resets the last slept time, no need to sleep for quite some time.\nCoffee who?");
addSerumItem(ModItems.FRENZY_SERUM, "Frenzy Serum", "Potent stackable drug that greatly boost your attack damage and speed at the cost of withdrawal symptoms. Increases hostility and aggression of affected mobs. Rabbits seems to be affected in an irreversible manner.\nCommon side effects after stoppage of use include weakness, sluggish movement and nausea. Continue the use to alleviate the withdrawal or try your luck with sugary foods.");

addBannerPatternItem(ModItems.MASCOT_BANNER_PATTERNS, "Banner Pattern", "Biomancy Mascot");

Expand All @@ -517,6 +544,12 @@ private void addItemTranslations() {
addItem(ModItems.LEGACY_FLESH_BLOB_SPAWN_EGG, "Legacy Flesh Blob Spawn Egg");
addItem(ModItems.PRIMORDIAL_FLESH_BLOB_SPAWN_EGG, "Primordial Flesh Blob Spawn Egg");
addItem(ModItems.PRIMORDIAL_HUNGRY_FLESH_BLOB_SPAWN_EGG, "Primordial Hungry Flesh Blob Spawn Egg");
addItem(ModItems.FLESH_COW_SPAWN_EGG, "Flesh Cow Spawn Egg");
addItem(ModItems.FLESH_SHEEP_SPAWN_EGG, "Flesh Sheep Spawn Egg");
addItem(ModItems.FLESH_PIG_SPAWN_EGG, "Flesh Pig Spawn Egg");
addItem(ModItems.FLESH_CHICKEN_SPAWN_EGG, "Flesh Chicken Spawn Egg");
addItem(ModItems.CHROMA_SHEEP_SPAWN_EGG, "Chroma Sheep Spawn Egg");
addItem(ModItems.THICK_FUR_SHEEP_SPAWN_EGG, "Thick Fur Sheep Spawn Egg");
}

private void addBlockTranslations() {
Expand Down Expand Up @@ -553,9 +586,12 @@ private void addBlockTranslations() {
addBlock(ModBlocks.PACKED_FLESH_SLAB, "Packed Flesh Slab", "Tenacious Slab of flesh. Is it tough enough?");
addBlock(ModBlocks.PACKED_FLESH_STAIRS, "Packed Flesh Stairs", "Stairs made of tenacious flesh. Is it tough enough?");
addBlock(ModBlocks.PACKED_FLESH_WALL, "Packed Flesh Wall", "Tenacious wall of flesh.");
addBlock(ModBlocks.FIBROUS_FLESH, "Fibrous Flesh Block", "A unusual block flesh made from the innards of someone.");
addBlock(ModBlocks.FIBROUS_FLESH_SLAB, "Fibrous Flesh Slab", "A unusual slab of flesh made from the innards of someone.");
addBlock(ModBlocks.FIBROUS_FLESH_STAIRS, "Fibrous Flesh Stairs", "Stairs made of unusual flesh made from the innards of someone.");
addBlock(ModBlocks.FIBROUS_FLESH_WALL, "Fibrous Flesh Wall", "A unusual wall of flesh made from the innards of someone.");

addBlock(ModBlocks.FLESH_PILLAR, "Flesh Pillar", "A Pillar made of bones and flesh.");
addBlock(ModBlocks.FIBROUS_FLESH, "Fibrous Flesh Block", "A unusual block flesh made from the innards of someone.");
addBlock(ModBlocks.CHISELED_FLESH, "Chiseled Flesh Block", "A regal block of flesh... I'm most delighted");
addBlock(ModBlocks.ORNATE_FLESH, "Ornamental Flesh Block", "A set of regal teeth and flesh.");
addBlock(ModBlocks.ORNATE_FLESH_SLAB, "Ornamental Flesh Slab", "An incomplete set of regal teeth and flesh.");
Expand Down Expand Up @@ -600,6 +636,13 @@ private void addBlockTranslations() {

You can also use automation like Hoppers to insert and extract the Mob Essence.
""");
add(TextComponentUtil.getItemTooltipKey(ModBlocks.MODULAR_LARYNX.get()) + ".1", "When Placed on Soul Sand or Soil:");
add(TextComponentUtil.getItemTooltipKey(ModBlocks.MODULAR_LARYNX.get()) + ".2", "Use Death Sound");
add(TextComponentUtil.getItemTooltipKey(ModBlocks.MODULAR_LARYNX.get()) + ".3", "When Placed on Magma:");
add(TextComponentUtil.getItemTooltipKey(ModBlocks.MODULAR_LARYNX.get()) + ".4", "Use Hurt Sound");
add(TextComponentUtil.getItemTooltipKey(ModBlocks.MODULAR_LARYNX.get()) + ".5", "When Placed on Other:");
add(TextComponentUtil.getItemTooltipKey(ModBlocks.MODULAR_LARYNX.get()) + ".6", "Use Ambient Sound");

//addBlock(ModBlocks.NEURAL_INTERCEPTOR, "Neural Interceptor", "A psychic node that prevents natural mob spawning in a 48 block radius.");

addBlock(ModBlocks.PRIMAL_FLESH, "Primal Flesh Block", "Primitive and pure, you better not touch this with your dirty mitts.");
Expand All @@ -621,16 +664,24 @@ private void addBlockTranslations() {
addBlock(ModBlocks.MALIGNANT_FLESH_VEINS, "Malignant Flesh Veins", "They look almost feral...\nyou better not touch them.");
addBlock(ModBlocks.PRIMAL_BLOOM, "Primal Bloom", "An exotic flower of primordial beauty.\n\nIt will spread itself by launching it's ripe berry into the air.\nOn impact the berry explodes and spreads malignant veins as well.");

addBlock(ModBlocks.PRIMAL_ORIFICE, "Primal Orifice", "A primitive piece full of holes that seems to generate and leak acidic juices.\nIt can be milked with buckets and bottles.");
addBlock(ModBlocks.PRIMAL_ORIFICE, "Primal Orifice", "A grotesque, flesh mass riddled with holes, oozing gastric juices. These orifices appear to grow inside flesh mound chambers and can be harvested using buckets or bottles, yielding a highly acidic fluid.");
addBlock(ModBlocks.ACID_FLUID_BLOCK, "Gastric Acid");
}

addBlock(ModBlocks.ACID_CAULDRON,"Gastric Acid Cauldron");
}

private void addEntityTranslations() {
addEntityType(ModEntityTypes.HUNGRY_FLESH_BLOB, "Hungry Flesh Blob");
addEntityType(ModEntityTypes.FLESH_BLOB, "Flesh Blob");
addEntityType(ModEntityTypes.LEGACY_FLESH_BLOB, "Legacy Flesh Blob");
addEntityType(ModEntityTypes.PRIMORDIAL_FLESH_BLOB, "Primordial Flesh Blob");
addEntityType(ModEntityTypes.PRIMORDIAL_HUNGRY_FLESH_BLOB, "Primordial Hungry Flesh Blob");
addEntityType(ModEntityTypes.FLESH_COW, "Flesh Cow");
addEntityType(ModEntityTypes.FLESH_SHEEP, "Flesh Sheep");
addEntityType(ModEntityTypes.FLESH_PIG, "Flesh Pig");
addEntityType(ModEntityTypes.FLESH_CHICKEN, "Flesh Chicken");
addEntityType(ModEntityTypes.CHROMA_SHEEP, "Chroma Sheep");
addEntityType(ModEntityTypes.THICK_FUR_SHEEP, "Thick Fur Sheep");
}

private void addFluidTranslations() {
Expand Down
Loading
Loading