Bucket recipe fix and Creative Sacrificial Dagger fix (#827)
* Bucket recipe fix and Creative Sacrificial Dagger fix * Do #808 * Add a Sacrificial Dagger conversion config * Put the conversion everywhere
This commit is contained in:
parent
81a5e3c956
commit
81d7cd4093
|
@ -138,6 +138,8 @@ public class ConfigHandler
|
|||
|
||||
// General
|
||||
public static int sacrificialPackConversion;
|
||||
public static int sacrificialDaggerDamage;
|
||||
public static int sacrificialDaggerConversion;
|
||||
|
||||
// Client
|
||||
public static boolean alwaysRenderRoutingLines;
|
||||
|
@ -286,6 +288,8 @@ public class ConfigHandler
|
|||
config.addCustomCategoryComment(category, "General settings");
|
||||
BloodMagicAPI.setLoggingEnabled(config.getBoolean("enableLogging", category, true, "Allows logging information to the console. Fatal errors will bypass this"));
|
||||
sacrificialPackConversion = config.getInt("sacrificialPackConversion", category, 20, 0, 100, "Base multiplier for the Coat of Arms. DamageDealt * sacrificialPackConversion");
|
||||
sacrificialDaggerDamage = config.getInt("sacrificialDaggerDamage", category, 2, 0, 10000, "Damage done from using the Sacrificial Dagger");
|
||||
sacrificialDaggerConversion = config.getInt("sacrificialDaggerConversion", category, 100, 0, 10000, "Amount of LP received per damage point (not heart!)");
|
||||
|
||||
category = "Client";
|
||||
config.addCustomCategoryComment(category, "Client only settings");
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package WayofTime.bloodmagic.api.util.helper;
|
||||
|
||||
import WayofTime.bloodmagic.ConfigHandler;
|
||||
import WayofTime.bloodmagic.api.altar.IBloodAltar;
|
||||
import WayofTime.bloodmagic.registry.ModPotions;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
|
@ -70,7 +71,7 @@ public class PlayerSacrificeHelper
|
|||
{
|
||||
float sacrificedHealth = health - maxHealth / 10.0f;
|
||||
|
||||
if (findAndFillAltar(player.getEntityWorld(), player, (int) (sacrificedHealth * 100f * getModifier(amount)), false))
|
||||
if (findAndFillAltar(player.getEntityWorld(), player, (int) (sacrificedHealth * ConfigHandler.sacrificialDaggerConversion * getModifier(amount)), false))
|
||||
{
|
||||
player.setHealth(maxHealth / 10.0f);
|
||||
setPlayerIncense(player, 0);
|
||||
|
|
|
@ -4,6 +4,7 @@ import java.util.ArrayList;
|
|||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import WayofTime.bloodmagic.ConfigHandler;
|
||||
import WayofTime.bloodmagic.client.IMeshProvider;
|
||||
import net.minecraft.client.renderer.ItemMeshDefinition;
|
||||
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
|
||||
|
@ -105,7 +106,7 @@ public class ItemSacrificialDagger extends Item implements IMeshProvider
|
|||
return new ActionResult<ItemStack>(EnumActionResult.SUCCESS, stack);
|
||||
}
|
||||
|
||||
int lpAdded = 200;
|
||||
int lpAdded = getMetadata(stack) == 1 ? Integer.MAX_VALUE : ConfigHandler.sacrificialDaggerConversion * ConfigHandler.sacrificialDaggerDamage;
|
||||
|
||||
RayTraceResult rayTrace = rayTrace(world, player, false);
|
||||
if (rayTrace != null && rayTrace.typeOfHit == RayTraceResult.Type.BLOCK)
|
||||
|
@ -118,7 +119,7 @@ public class ItemSacrificialDagger extends Item implements IMeshProvider
|
|||
|
||||
if (!player.capabilities.isCreativeMode)
|
||||
{
|
||||
SacrificeKnifeUsedEvent evt = new SacrificeKnifeUsedEvent(player, true, true, 2, lpAdded);
|
||||
SacrificeKnifeUsedEvent evt = new SacrificeKnifeUsedEvent(player, true, true, ConfigHandler.sacrificialDaggerDamage, lpAdded);
|
||||
if (MinecraftForge.EVENT_BUS.post(evt))
|
||||
return super.onItemRightClick(stack, world, player, hand);
|
||||
|
||||
|
@ -126,7 +127,7 @@ public class ItemSacrificialDagger extends Item implements IMeshProvider
|
|||
{
|
||||
player.hurtResistantTime = 0;
|
||||
player.attackEntityFrom(BloodMagicAPI.getDamageSource(), 0.001F);
|
||||
player.setHealth(Math.max(player.getHealth() - 2, 0.0001f));
|
||||
player.setHealth(Math.max(player.getHealth() - ConfigHandler.sacrificialDaggerDamage, 0.0001f));
|
||||
if (player.getHealth() <= 0.001f)
|
||||
{
|
||||
player.onDeath(BloodMagicAPI.getDamageSource());
|
||||
|
|
|
@ -3,12 +3,14 @@ package WayofTime.bloodmagic.registry;
|
|||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import WayofTime.bloodmagic.api.BloodMagicAPI;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.init.Items;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.item.crafting.FurnaceRecipes;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.common.ForgeModContainer;
|
||||
import net.minecraftforge.fluids.UniversalBucket;
|
||||
import net.minecraftforge.fml.common.registry.GameRegistry;
|
||||
import net.minecraftforge.oredict.OreDictionary;
|
||||
import net.minecraftforge.oredict.RecipeSorter;
|
||||
|
@ -156,7 +158,7 @@ public class ModRecipes
|
|||
AltarRecipeRegistry.registerFillRecipe(OrbRegistry.getOrbStack(ModItems.orbWeak), EnumAltarTier.ONE, ModItems.orbWeak.getCapacity(), 2, 1);
|
||||
AltarRecipeRegistry.registerRecipe(new AltarRecipeRegistry.AltarRecipe(new ItemStack(Items.DIAMOND), OrbRegistry.getOrbStack(ModItems.orbWeak), EnumAltarTier.ONE, 2000, 2, 1));
|
||||
AltarRecipeRegistry.registerRecipe(new AltarRecipeRegistry.AltarRecipe(new ItemStack(Blocks.STONE), new ItemStack(ModItems.slate), EnumAltarTier.ONE, 1000, 5, 5));
|
||||
AltarRecipeRegistry.registerRecipe(new AltarRecipeRegistry.AltarRecipe(new ItemStack(Items.BUCKET), new ItemStack(ForgeModContainer.getInstance().universalBucket), EnumAltarTier.ONE, 1000, 5, 0));
|
||||
AltarRecipeRegistry.registerRecipe(new AltarRecipeRegistry.AltarRecipe(new ItemStack(Items.BUCKET), UniversalBucket.getFilledBucket(ForgeModContainer.getInstance().universalBucket, BloodMagicAPI.getLifeEssence()), EnumAltarTier.ONE, 1000, 5, 0));
|
||||
AltarRecipeRegistry.registerRecipe(new AltarRecipeRegistry.AltarRecipe(new ItemStack(Items.BOOK), new ItemStack(ModItems.sanguineBook), EnumAltarTier.ONE, 1000, 20, 0));
|
||||
|
||||
// TWO
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package WayofTime.bloodmagic.ritual;
|
||||
|
||||
import WayofTime.bloodmagic.ConfigHandler;
|
||||
import WayofTime.bloodmagic.api.Constants;
|
||||
import WayofTime.bloodmagic.api.saving.SoulNetwork;
|
||||
import WayofTime.bloodmagic.api.ritual.*;
|
||||
|
@ -20,8 +21,6 @@ public class RitualFeatheredKnife extends Ritual
|
|||
public static final String ALTAR_RANGE = "altar";
|
||||
public static final String DAMAGE_RANGE = "damage";
|
||||
|
||||
public static final int SACRIFICE_AMOUNT = 100;
|
||||
|
||||
public BlockPos altarOffsetPos = new BlockPos(0, 0, 0); //TODO: Save!
|
||||
|
||||
public RitualFeatheredKnife()
|
||||
|
@ -90,7 +89,7 @@ public class RitualFeatheredKnife extends Ritual
|
|||
{
|
||||
player.setHealth(health - 1);
|
||||
|
||||
tileAltar.sacrificialDaggerCall(SACRIFICE_AMOUNT, false);
|
||||
tileAltar.sacrificialDaggerCall(ConfigHandler.sacrificialDaggerConversion, false);
|
||||
|
||||
totalEffects++;
|
||||
|
||||
|
|
Loading…
Reference in a new issue