Skip to content

Commit

Permalink
Allow using a wet sponge to extract modifiers
Browse files Browse the repository at this point in the history
Wet sponges are rare enough that I want them to remain special even with end access. Similarly to how venom is easier but more annoying to get, dragons breath can also be annoying to continue to get. Makes ocean monument exploration feel more valuable
Does not work on vanilla tools/books as I never implemented leftovers in those recipes, too lazy to deal with it now
  • Loading branch information
KnightMiner committed Feb 11, 2023
1 parent dde7939 commit c18685c
Show file tree
Hide file tree
Showing 5 changed files with 30 additions and 3 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"type": "tconstruct:extract_modifier",
"inputs": [
{
"item": "tconstruct:ender_slime_crystal"
},
{
"item": "minecraft:wet_sponge"
}
],
"leftovers": [
"minecraft:sponge"
],
"modifier_predicate": {
"type": "tconstruct:inverted",
"predicate": {
"type": "tconstruct:tag",
"tag": "tconstruct:extract_blacklist/tools"
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ protected void addEnchantmentMappings() {
add(Enchantments.PROJECTILE_PROTECTION, TinkerModifiers.projectileProtection.getId());
add(Enchantments.FALL_PROTECTION, TinkerModifiers.featherFalling.getId());
// misc armor
add(Enchantments.RESPIRATION, TinkerModifiers.respiration.getId());
add(Enchantments.RESPIRATION, ModifierIds.respiration);
add(Enchantments.AQUA_AFFINITY, TinkerModifiers.aquaAffinity.getId());
add(Enchantments.THORNS, TinkerModifiers.thorns.getId());
add(Enchantments.DEPTH_STRIDER, ModifierIds.depthStrider);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1396,7 +1396,13 @@ private void addModifierRecipes(Consumer<FinishedRecipe> consumer) {
.addInput(TinkerWorld.enderGeode)
.addInput(Items.DRAGON_BREATH, 5)
.modifierPredicate(new TagModifierPredicate(TinkerTags.Modifiers.EXTRACT_MODIFIER_BLACKLIST).inverted())
.save(consumer, modResource(worktableFolder + "extract_modifier"));
.save(consumer, modResource(worktableFolder + "extract_modifier_breath"));
ModifierRemovalRecipe.Builder.removal(TinkerModifiers.extractModifierSerializer.get())
.addInput(TinkerWorld.enderGeode)
.addInput(Items.WET_SPONGE)
.addLeftover(Items.SPONGE)
.modifierPredicate(new TagModifierPredicate(TinkerTags.Modifiers.EXTRACT_MODIFIER_BLACKLIST).inverted())
.save(consumer, modResource(worktableFolder + "extract_modifier_sponge"));
ModifierSortingRecipe.Builder.sorting()
.addInput(Items.COMPASS)
.save(consumer, modResource(worktableFolder + "modifier_sorting"));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
},
"text": [
{
"text": "While it is not possible to preserve the items used to apply a modifier, I have managed to store the essence of the modifier into a crystal while removing it, allowing me to put that modifier on a different tool. The process requires an enderslime crystal and dragons breath to perform, so only worth it for expensive modifiers. This technique also works on enchanted tools as books, though the process removes all enchantments instead of just 1."
"text": "While it is not possible to preserve the items used to apply a modifier, I have managed to store the essence of the modifier into a crystal while removing it, allowing me to put that modifier on a different tool. The process requires an enderslime crystal and dragons breath to perform, though I have also managed it with enderslime and a carefully applied wet sponge. This technique also works on enchanted tools as books, though the process removes all enchantments instead of just 1 and does not work with sponges."
}
]
}

0 comments on commit c18685c

Please sign in to comment.