Compare commits

...

3 Commits
1.2 ... main

20 changed files with 124 additions and 22 deletions

View File

@ -42,7 +42,7 @@ mod_name=Tinkering Abnormally
# The license of the mod. Review your options at https://choosealicense.com/. All Rights Reserved is the default. # The license of the mod. Review your options at https://choosealicense.com/. All Rights Reserved is the default.
mod_license=MIT mod_license=MIT
# The mod version. See https://semver.org/ # The mod version. See https://semver.org/
mod_version=1.2 mod_version=1.5
# The group ID for the mod. It is only important when publishing as an artifact to a Maven repository. # The group ID for the mod. It is only important when publishing as an artifact to a Maven repository.
# This should match the base package used for the mod sources. # This should match the base package used for the mod sources.
# See https://maven.apache.org/guides/mini/guide-naming-conventions.html # See https://maven.apache.org/guides/mini/guide-naming-conventions.html

View File

@ -1,4 +0,0 @@
{
"color": "FFFFFFFF",
"luminosity": 0
}

View File

@ -0,0 +1,12 @@
{
"type": "tconstruct:melting",
"ingredient": {
"item": "caverns_and_chasms:silver_horse_armor"
},
"result": {
"amount": 630,
"fluid": "tconstruct:molten_silver"
},
"temperature": 790,
"time": 158
}

View File

@ -0,0 +1,10 @@
{
"type": "tconstruct:modifier_salvage",
"modifier": "tinkering_abnormally:sanguine",
"slots": {
"upgrades": 1
},
"tools": {
"tag": "tconstruct:modifiable/armor/worn"
}
}

View File

@ -0,0 +1,18 @@
{
"type": "tconstruct:modifier",
"allow_crystal": true,
"inputs": [
{
"amount_needed": 6,
"item": "caverns_and_chasms:sanguine_plating"
}
],
"level": 1,
"result": "tinkering_abnormally:sanguine",
"slots": {
"upgrades": 1
},
"tools": {
"tag": "tconstruct:modifiable/armor/worn"
}
}

View File

@ -0,0 +1,22 @@
{
"type": "tconstruct:composable",
"level_display": "tconstruct:default",
"modules": [
{
"type": "tconstruct:attribute",
"attribute": "caverns_and_chasms:lifesteal",
"flat": 0.05,
"operation": "multiply_base",
"slots": [
"mainhand",
"offhand",
"feet",
"legs",
"chest",
"head"
],
"unique": "tinkering_abnormally.modifier.sanguine"
}
],
"tooltip_display": "always"
}

View File

@ -6,6 +6,7 @@ import slimeknights.tconstruct.library.modifiers.ModifierId;
public class ModifierIds { public class ModifierIds {
public static final ModifierId spinel = id("spinel"); public static final ModifierId spinel = id("spinel");
public static final ModifierId necromium = id("necromium"); public static final ModifierId necromium = id("necromium");
public static final ModifierId sanguine = id("sanguine");
private static ModifierId id(String name) { private static ModifierId id(String name) {
return new ModifierId(TinkeringAbnormally.MODID, name); return new ModifierId(TinkeringAbnormally.MODID, name);

View File

@ -47,6 +47,7 @@ public class ModifierProvider extends AbstractModifierProvider implements ICondi
// melee harvest // melee harvest
.addModule(MobEffectModule.builder(MobEffects.MOVEMENT_SLOWDOWN).level(RandomLevelingValue.flat(2)).time(RandomLevelingValue.flat(100)).build()) .addModule(MobEffectModule.builder(MobEffects.MOVEMENT_SLOWDOWN).level(RandomLevelingValue.flat(2)).time(RandomLevelingValue.flat(100)).build())
.addModule(SetStatModule.set(ToolStats.HARVEST_TIER).value(TinkeringAbnormally.NECROMIUM)); .addModule(SetStatModule.set(ToolStats.HARVEST_TIER).value(TinkeringAbnormally.NECROMIUM));
buildModifier(ModifierIds.sanguine).addModule(AttributeModule.builder(CCAttributes.LIFESTEAL.get(), AttributeModifier.Operation.MULTIPLY_BASE).uniqueFrom(ModifierIds.sanguine).flat(0.05f));
} }
@Override @Override

View File

@ -60,6 +60,13 @@ public class ModifierRecipeProvider extends RecipeProvider implements ICondition
.setSlots(SlotType.UPGRADE, 1) .setSlots(SlotType.UPGRADE, 1)
.saveSalvage(consumer, prefix(ModifierIds.necromium, upgradeSalvage)) .saveSalvage(consumer, prefix(ModifierIds.necromium, upgradeSalvage))
.save(consumer, prefix(ModifierIds.necromium, upgradeFolder)); .save(consumer, prefix(ModifierIds.necromium, upgradeFolder));
ModifierRecipeBuilder.modifier(ModifierIds.sanguine)
.setTools(TinkerTags.Items.WORN_ARMOR)
.addInput(CCItems.SANGUINE_PLATING.get(), 6)
.setMaxLevel(1)
.setSlots(SlotType.UPGRADE, 1)
.saveSalvage(consumer, prefix(ModifierIds.sanguine, upgradeSalvage))
.save(consumer, prefix(ModifierIds.sanguine, upgradeFolder));
} }
private void addTextureRecipes(Consumer<FinishedRecipe> consumer) { private void addTextureRecipes(Consumer<FinishedRecipe> consumer) {

View File

@ -82,6 +82,8 @@ public class SmelteryRecipeProvider extends RecipeProvider implements ISmelteryR
.setDamagable(necromiumSizes) .setDamagable(necromiumSizes)
.addByproduct(new FluidStack(TinkerFluids.moltenDiamond.get(), FluidValues.GEM)) .addByproduct(new FluidStack(TinkerFluids.moltenDiamond.get(), FluidValues.GEM))
.save(consumer, location(meltingFolder + "necromium/shovel")); .save(consumer, location(meltingFolder + "necromium/shovel"));
MeltingRecipeBuilder.melting(Ingredient.of(CCItems.SILVER_HORSE_ARMOR.get()), TinkerFluids.moltenSilver.get(), FluidValues.INGOT * 7)
.save(consumer, location(meltingFolder + "silver/horse_armor"));
String alloyFolder = "smeltery/alloys/"; String alloyFolder = "smeltery/alloys/";
AlloyRecipeBuilder.alloy(TinkeringAbnormally.moltenNecromium.get(), FluidValues.NUGGET) AlloyRecipeBuilder.alloy(TinkeringAbnormally.moltenNecromium.get(), FluidValues.NUGGET)

View File

@ -7,10 +7,6 @@ import slimeknights.tconstruct.library.materials.definition.MaterialVariantId;
import static slimeknights.tconstruct.library.materials.definition.MaterialVariantId.create; import static slimeknights.tconstruct.library.materials.definition.MaterialVariantId.create;
public final class MaterialIds { public final class MaterialIds {
public static final MaterialId spinel = id("spinel");
public static final MaterialId necromium = id("necromium");
public static final MaterialId sanguine = id("sanguine");
public static final MaterialVariantId willow = create(slimeknights.tconstruct.tools.data.material.MaterialIds.wood, "willow"); public static final MaterialVariantId willow = create(slimeknights.tconstruct.tools.data.material.MaterialIds.wood, "willow");
public static final MaterialVariantId pine = create(slimeknights.tconstruct.tools.data.material.MaterialIds.wood, "pine"); public static final MaterialVariantId pine = create(slimeknights.tconstruct.tools.data.material.MaterialIds.wood, "pine");
public static final MaterialVariantId cherry = create(slimeknights.tconstruct.tools.data.material.MaterialIds.wood, "cherry"); public static final MaterialVariantId cherry = create(slimeknights.tconstruct.tools.data.material.MaterialIds.wood, "cherry");

View File

@ -12,7 +12,6 @@ public class MaterialRenderInfoProvider extends AbstractMaterialRenderInfoProvid
@Override @Override
protected void addMaterialRenderInfo() { protected void addMaterialRenderInfo() {
buildRenderInfo(MaterialIds.sanguine);
buildRenderInfo(MaterialIds.willow); buildRenderInfo(MaterialIds.willow);
buildRenderInfo(MaterialIds.pine); buildRenderInfo(MaterialIds.pine);
buildRenderInfo(MaterialIds.cherry); buildRenderInfo(MaterialIds.cherry);

View File

@ -65,29 +65,29 @@ description='''${mod_description}'''
modId="tconstruct" modId="tconstruct"
mandatory=true mandatory=true
versionRange="${tinkers_version_range}" versionRange="${tinkers_version_range}"
ordering="NONE" ordering="AFTER"
side="BOTH" side="BOTH"
[[dependencies."${mod_id}"]] [[dependencies."${mod_id}"]]
modId="caverns_and_chasms" modId="caverns_and_chasms"
mandatory=true mandatory=true
versionRange="${cc_version_range}" versionRange="${cc_version_range}"
ordering="NONE" ordering="AFTER"
side="BOTH" side="BOTH"
[[dependencies."${mod_id}"]] [[dependencies."${mod_id}"]]
modId="atmospheric" modId="atmospheric"
mandatory=false mandatory=false
versionRange="${atm_version_range}" versionRange="${atm_version_range}"
ordering="NONE" ordering="AFTER"
side="BOTH" side="BOTH"
[[dependencies."${mod_id}"]] [[dependencies."${mod_id}"]]
modId="environmental" modId="environmental"
mandatory=false mandatory=false
versionRange="${env_version_range}" versionRange="${env_version_range}"
ordering="NONE" ordering="AFTER"
side="BOTH" side="BOTH"
[[dependencies."${mod_id}"]] [[dependencies."${mod_id}"]]
modId="upgrade_aquatic" modId="upgrade_aquatic"
mandatory=false mandatory=false
versionRange="${ua_version_range}" versionRange="${ua_version_range}"
ordering="NONE" ordering="AFTER"
side="BOTH" side="BOTH"

View File

@ -0,0 +1,13 @@
{
"modifier_id": "tinkering_abnormally:sanguine",
"text": [
{
"text": "Attacking when worn gives +5% lifesteal per level."
}
],
"more_text_space": true,
"effects": [
"Maximum of 1 level",
"Requires 1 upgrade slot"
]
}

View File

@ -0,0 +1,13 @@
{
"modifier_id": "tinkering_abnormally:sanguine",
"text": [
{
"text": "It's already pretty clear that silver has some interesting properties. Combine it with some flesh of the undead and tears of the damned and maybe...?"
}
],
"effects": [
"Gives your attacks lifesteal",
"Single Level",
"Requires 1 upgrade slot"
]
}

View File

@ -31,6 +31,9 @@
"modifier.tinkering_abnormally.necromium.flavor": "Sabotage!", "modifier.tinkering_abnormally.necromium.flavor": "Sabotage!",
"modifier.tinkering_abnormally.necromium.description": "Though not as powerful as netherite, necromium has an aura that slows and weakens opponents.", "modifier.tinkering_abnormally.necromium.description": "Though not as powerful as netherite, necromium has an aura that slows and weakens opponents.",
"modifier.tinkering_abnormally.necromium.requirements": "Necromium requires a gem first to be applied", "modifier.tinkering_abnormally.necromium.requirements": "Necromium requires a gem first to be applied",
"modifier.tinkering_abnormally.sanguine": "Sanguine",
"modifier.tinkering_abnormally.sanguine.flavor": "Draining!",
"modifier.tinkering_abnormally.sanguine.description": "All of your attacks are imbued with lifesteal.",
"stat.tconstruct.harvest_tier.caverns_and_chasms.necromium": "Necromium" "stat.tconstruct.harvest_tier.caverns_and_chasms.necromium": "Necromium"
} }

View File

@ -1,7 +1,8 @@
{ {
"modifier.tinkering_abnormally": { "modifier.tinkering_abnormally": {
"spinel": "#BC5186", "spinel": "#BC5186",
"necromium": "#566666" "necromium": "#566666",
"sanguine": "#723b43"
}, },
"material.tconstruct": { "material.tconstruct": {

View File

@ -1,4 +1,5 @@
{ {
"tinkering_abnormally:spinel": ["caverns_and_chasms:item/spinel", "tconstruct:gui/modifiers/tier"], "tinkering_abnormally:spinel": ["caverns_and_chasms:item/spinel", "tconstruct:gui/modifiers/tier"],
"tinkering_abnormally:necromium": ["caverns_and_chasms:item/necromium_ingot", "tconstruct:gui/modifiers/tier"] "tinkering_abnormally:necromium": ["caverns_and_chasms:item/necromium_ingot", "tconstruct:gui/modifiers/tier"],
"tinkering_abnormally:sanguine": ["caverns_and_chasms:item/sanguine_plating", "tconstruct:gui/modifiers/book"]
} }

View File

@ -1,4 +1,5 @@
{ {
"tinkering_abnormally:spinel": "tconstruct:normal", "tinkering_abnormally:spinel": "tconstruct:normal",
"tinkering_abnormally:necromium": "tconstruct:normal" "tinkering_abnormally:necromium": "tconstruct:normal",
"tinkering_abnormally:sanguine": "tconstruct:normal"
} }

View File

@ -0,0 +1,6 @@
{
"values": [
"tinkering_abnormally:sanguine"
],
"replace": false
}