Skip to content

Commit

Permalink
Add venom fluid
Browse files Browse the repository at this point in the history
Obtained from melting spiders
Right now its just useful in spilling, but I like the idea enough that it will find use in other modifiers
  • Loading branch information
KnightMiner committed Sep 6, 2021
1 parent 8fb2764 commit b265660
Show file tree
Hide file tree
Showing 14 changed files with 120 additions and 7 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"type": "tconstruct:melting",
"ingredient": [
{
"item": "tconstruct:spider_head"
},
{
"item": "tconstruct:cave_spider_head"
}
],
"result": {
"fluid": "tconstruct:venom",
"amount": 500
},
"temperature": 10,
"time": 53
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,6 @@
},
{
"item": "tconstruct:husk_head"
},
{
"item": "tconstruct:spider_head"
},
{
"item": "tconstruct:cave_spider_head"
}
],
"result": {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"type": "tconstruct:entity_melting",
"entity": {
"types": [
"minecraft:spider",
"minecraft:cave_spider"
]
},
"result": {
"fluid": "tconstruct:venom",
"amount": 25
},
"damage": 2
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"type": "tconstruct:melting",
"ingredient": {
"item": "minecraft:spider_eye"
},
"result": {
"fluid": "tconstruct:venom",
"amount": 50
},
"temperature": 10,
"time": 29
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"type": "tconstruct:melting",
"ingredient": {
"item": "minecraft:fermented_spider_eye"
},
"result": {
"fluid": "tconstruct:venom",
"amount": 100
},
"temperature": 10,
"time": 29
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"type": "tconstruct:spilling",
"fluid": {
"tag": "tconstruct:venom",
"amount": 50
},
"effects": [
{
"type": "tconstruct:effect",
"name": "minecraft:poison",
"time": 25,
"level": 1
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"replace": false,
"values": [
"tconstruct:venom",
"tconstruct:flowing_venom"
]
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ public TinkerFluids() {

// basic
public static final FluidObject<ForgeFlowingFluid> blood = FLUIDS.register("blood", coolBuilder().density(1200).viscosity(1200).temperature(336), Material.WATER, 0);
public static final FluidObject<ForgeFlowingFluid> venom = FLUIDS.register("venom", coolBuilder().density(1400).viscosity(1300).temperature(310), Material.WATER, 0);

// slime - note second name parameter is forge tag name
public static final FluidObject<ForgeFlowingFluid> earthSlime = FLUIDS.register("earth_slime", "slime", coolBuilder().density(1400).viscosity(1400).temperature(350), SlimeFluid.Source::new, SlimeFluid.Flowing::new, Material.WATER, 0);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1065,6 +1065,11 @@ private void addMeltingRecipes(Consumer<IFinishedRecipe> consumer) {
// blood
MeltingRecipeBuilder.melting(Ingredient.fromItems(Items.ROTTEN_FLESH), TinkerFluids.blood.get(), FluidValues.SLIMEBALL / 5, 1.0f)
.build(consumer, modResource(folder + "slime/blood/flesh"));
// venom
MeltingRecipeBuilder.melting(Ingredient.fromItems(Items.SPIDER_EYE), TinkerFluids.venom.get(), FluidValues.SLIMEBALL / 5, 1.0f)
.build(consumer, modResource(folder + "venom/eye"));
MeltingRecipeBuilder.melting(Ingredient.fromItems(Items.FERMENTED_SPIDER_EYE), TinkerFluids.venom.get(), FluidValues.SLIMEBALL * 2 / 5, 1.0f)
.build(consumer, modResource(folder + "venom/fermented_eye"));

// glass
MeltingRecipeBuilder.melting(Ingredient.fromTag(Tags.Items.SAND), TinkerFluids.moltenGlass.get(), FluidValues.GLASS_BLOCK, 1.5f)
Expand Down Expand Up @@ -1543,14 +1548,20 @@ private void addEntityMeltingRecipes(Consumer<IFinishedRecipe> consumer) {
EntityMeltingRecipeBuilder.melting(EntityIngredient.of(EntityType.ZOMBIE, EntityType.HUSK, EntityType.ZOMBIFIED_PIGLIN, EntityType.ZOGLIN, EntityType.ZOMBIE_HORSE),
new FluidStack(TinkerFluids.blood.get(), FluidValues.SLIMEBALL / 10), 2)
.build(consumer, prefix(EntityType.ZOMBIE, folder));
MeltingRecipeBuilder.melting(Ingredient.fromItems(Items.ZOMBIE_HEAD, TinkerWorld.heads.get(TinkerHeadType.HUSK), TinkerWorld.heads.get(TinkerHeadType.SPIDER), TinkerWorld.heads.get(TinkerHeadType.CAVE_SPIDER)), TinkerFluids.blood.get(), FluidValues.SLIMEBALL * 2)
MeltingRecipeBuilder.melting(Ingredient.fromItems(Items.ZOMBIE_HEAD, TinkerWorld.heads.get(TinkerHeadType.HUSK)), TinkerFluids.blood.get(), FluidValues.SLIMEBALL * 2)
.build(consumer, prefix(EntityType.ZOMBIE, headFolder));
// drowned are weird, there is water flowing through their veins
EntityMeltingRecipeBuilder.melting(EntityIngredient.of(EntityType.DROWNED),
new FluidStack(Fluids.WATER, FluidAttributes.BUCKET_VOLUME / 50), 2)
.build(consumer, prefix(EntityType.DROWNED, folder));
MeltingRecipeBuilder.melting(Ingredient.fromItems(TinkerWorld.heads.get(TinkerHeadType.DROWNED)), Fluids.WATER, FluidAttributes.BUCKET_VOLUME / 4)
.build(consumer, prefix(EntityType.DROWNED, headFolder));
// melt spiders into venom
EntityMeltingRecipeBuilder.melting(EntityIngredient.of(EntityType.SPIDER, EntityType.CAVE_SPIDER),
new FluidStack(TinkerFluids.venom.get(), FluidValues.SLIMEBALL / 10), 2)
.build(consumer, prefix(EntityType.SPIDER, folder));
MeltingRecipeBuilder.melting(Ingredient.fromItems(TinkerWorld.heads.get(TinkerHeadType.SPIDER), TinkerWorld.heads.get(TinkerHeadType.CAVE_SPIDER)), TinkerFluids.venom.get(), FluidValues.SLIMEBALL * 2)
.build(consumer, prefix(EntityType.SPIDER, headFolder));

// creepers are based on explosives, tnt is explosive, tnt is made from sand, sand melts into glass. therefore, creepers melt into glass
EntityMeltingRecipeBuilder.melting(EntityIngredient.of(EntityType.CREEPER),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -836,6 +836,10 @@ private void addSpillingRecipes(Consumer<IFinishedRecipe> consumer) {
SpillingRecipeBuilder.forFluid(TinkerFluids.blood.getLocalTag(), slimeballPiece)
.addEffect(new EffectSpillingEffect(Effects.HUNGER, 20, 1))
.build(consumer, prefix(TinkerFluids.blood, folder));
// venom - poison
SpillingRecipeBuilder.forFluid(TinkerFluids.venom.getLocalTag(), slimeballPiece)
.addEffect(new EffectSpillingEffect(Effects.POISON, 25, 1))
.build(consumer, prefix(TinkerFluids.venom, folder));
// magma - fire resistance
SpillingRecipeBuilder.forFluid(TinkerFluids.magma.getLocalTag(), slimeballPiece)
.addEffect(new EffectSpillingEffect(Effects.FIRE_RESISTANCE, 25, 1))
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "tconstruct:block/fluid/venom"
}
}
}
5 changes: 5 additions & 0 deletions src/main/resources/assets/tconstruct/lang/en_us.json
Original file line number Diff line number Diff line change
Expand Up @@ -398,6 +398,11 @@
"fluid.tconstruct.flowing_ender_slime": "Flowing Enderslime",
"item.tconstruct.ender_slime_bucket": "Enderslime Bucket",

"block.tconstruct.venom_fluid": "Venom",
"fluid.tconstruct.venom": "Venom",
"fluid.tconstruct.flowing_venom": "Flowing Venom",
"item.tconstruct.venom_bucket": "Venom Bucket",

"_comment": "Rock",

"block.tconstruct.seared_stone_fluid": "Seared Stone",
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"loader": "mantle:fluid_texture",
"textures": {
"still": "tconstruct:block/fluid/liquid/still",
"flowing": "tconstruct:block/fluid/liquid/flowing"
},
"color": "FFFFFF"
}

Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"parent": "forge:item/bucket_drip",
"loader": "forge:bucket",
"fluid": "tconstruct:venom"
}

0 comments on commit b265660

Please sign in to comment.