diff --git a/gradle.properties b/gradle.properties index f5aa482..8278628 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,5 +1,5 @@ modName = CinderLoE -modVersion = 1.3.0 +modVersion = 1.4.0 # This is a case-sensitive string to identify your mod. Convention is to use lower case. modId = cinder_loe diff --git a/src (1)/main/java/com/zivilon/cinder_loe/.CinderLoE.java.kate-swp b/src (1)/main/java/com/zivilon/cinder_loe/.CinderLoE.java.kate-swp deleted file mode 100644 index 95d473c..0000000 Binary files a/src (1)/main/java/com/zivilon/cinder_loe/.CinderLoE.java.kate-swp and /dev/null differ diff --git a/src (1)/main/java/com/zivilon/cinder_loe/CinderBlockMetaData.java b/src (1)/main/java/com/zivilon/cinder_loe/CinderBlockMetaData.java deleted file mode 100644 index ec62f2e..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/CinderBlockMetaData.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.zivilon.cinder_loe; - -import net.minecraft.block.Block; -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemStack; - -public class CinderBlockMetaData extends ItemBlock { - public CinderBlockMetaData(Block block) { - super(block); - this.setHasSubtypes(true); - } - - @Override - public int getMetadata(int damage) { - return damage; - } - - @Override - public String getUnlocalizedName(ItemStack stack) { - return super.getUnlocalizedName() + "." + stack.getItemDamage(); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/CinderDrinkRecipe.java b/src (1)/main/java/com/zivilon/cinder_loe/CinderDrinkRecipe.java deleted file mode 100644 index 6fc70b4..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/CinderDrinkRecipe.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.zivilon.cinder_loe; - -import net.minecraft.inventory.InventoryCrafting; -import net.minecraft.item.ItemStack; -import net.minecraft.item.crafting.IRecipe; -import net.minecraft.world.World; - -public class CinderDrinkRecipe -implements IRecipe { - @Override - public boolean matches(InventoryCrafting inv, World world) { - return false; - } - - @Override - public ItemStack getCraftingResult(InventoryCrafting p_77572_1_) { - return null; - } - - @Override - public int getRecipeSize() { - return 0; - } - - @Override - public ItemStack getRecipeOutput() { - return null; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/CinderEventHandler.java b/src (1)/main/java/com/zivilon/cinder_loe/CinderEventHandler.java deleted file mode 100644 index 56e75ee..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/CinderEventHandler.java +++ /dev/null @@ -1,445 +0,0 @@ -package com.zivilon.cinder_loe; - -import com.zivilon.cinder_loe.entity.corrupt.CorruptMan; -import com.zivilon.cinder_loe.items.BrokenHalo; -import cpw.mods.fml.common.FMLCommonHandler; -import cpw.mods.fml.common.IFuelHandler; -import cpw.mods.fml.common.eventhandler.EventPriority; -import cpw.mods.fml.common.eventhandler.SubscribeEvent; -import cpw.mods.fml.common.registry.GameRegistry; -import lotr.common.LOTRMod; -import lotr.common.enchant.LOTREnchantment; -import lotr.common.enchant.LOTREnchantmentHelper; -import lotr.common.item.*; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.DataWatcher; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.item.*; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.nbt.NBTTagList; -import net.minecraft.nbt.NBTTagString; -import net.minecraft.network.Packet; -import net.minecraft.network.play.server.S04PacketEntityEquipment; -import net.minecraft.network.play.server.S09PacketHeldItemChange; -import net.minecraft.network.play.server.S1CPacketEntityMetadata; -import net.minecraft.network.play.server.S19PacketEntityStatus; -import net.minecraft.potion.Potion; -import net.minecraft.potion.PotionEffect; -import net.minecraft.util.ChatComponentText; -import net.minecraft.util.DamageSource; -import net.minecraft.util.EnumChatFormatting; -import net.minecraft.world.World; -import net.minecraft.world.WorldServer; -import net.minecraftforge.common.MinecraftForge; -import net.minecraftforge.event.entity.living.LivingAttackEvent; -import net.minecraftforge.event.entity.living.LivingHurtEvent; -import net.minecraftforge.event.entity.player.ArrowLooseEvent; - -import java.util.Random; - -public class CinderEventHandler implements IFuelHandler { - private static final Random random = new Random(); - public CinderEventHandler() { - FMLCommonHandler.instance().bus().register(this); - MinecraftForge.EVENT_BUS.register(this); - MinecraftForge.TERRAIN_GEN_BUS.register(this); - GameRegistry.registerFuelHandler(this); - } - @SubscribeEvent - public void onArrowLoose(ArrowLooseEvent event) { - Entity attacker = event.entityLiving; - if (attacker instanceof EntityPlayerMP player) { - ItemStack bow = player.getHeldItem(); - if (bow != null && bow.isItemStackDamageable() && (bow.getItem() instanceof LOTRItemBow || bow.getItem() instanceof ItemBow)) { - float[] durabilityThresholds = {0.5f, 0.4f, 0.25f}; - double[] probabilities = {0.0005, 0.001, 0.005}; // Corrected probabilities - - // Corrected durabilityPercent calculation - float durabilityPercent = (float) (bow.getMaxDamage() - bow.getItemDamage()) / bow.getMaxDamage(); - - for (int j = 0; j < durabilityThresholds.length; j++) { - if (durabilityPercent <= durabilityThresholds[j] && random.nextDouble() <= probabilities[j]) { - addNegativeModifier(bow, player, "bow"); - break; // Exit loop once a modifier is added - } - } - } - } - } - - @SubscribeEvent - public void onLivingAttack(LivingAttackEvent event) { - Entity attacker = event.source.getEntity(); - - if (attacker instanceof EntityPlayerMP player) { - ItemStack weapon = player.getHeldItem(); - // smithing rework for melee - if (weapon != null && (weapon.getItem() instanceof LOTRItemSpear || weapon.getItem() instanceof LOTRItemSword || weapon.getItem() instanceof LOTRItemDagger || weapon.getItem() instanceof LOTRItemBattleaxe || weapon.getItem() instanceof LOTRItemHammer || weapon.getItem() instanceof ItemSword)) { - float[] durabilityThresholds = {0.5f, 0.4f, 0.25f}; - double[] probabilities = {0.0005, 0.001, 0.005}; // Corrected probabilities - if (weapon.isItemStackDamageable()) { - // Corrected durabilityPercent calculation - float durabilityPercent = (float) (weapon.getMaxDamage() - weapon.getItemDamage()) / weapon.getMaxDamage(); - - for (int j = 0; j < durabilityThresholds.length; j++) { - if (durabilityPercent <= durabilityThresholds[j] && random.nextDouble() <= probabilities[j]) { - addNegativeModifier(weapon, player, "weapon"); - break; // Exit loop once a modifier is added - } - } - } - } - } - } - @SubscribeEvent - public void onLivingHurt(LivingHurtEvent event) { - - if (event.entityLiving == null || event.source.getEntity() == null) { - return; - } - - EntityLivingBase entity = event.entityLiving; - EntityLivingBase attacker = event.source.getEntity() instanceof EntityLivingBase ? (EntityLivingBase) event.source.getEntity() : null; - World world = entity.worldObj; - DamageSource source = event.source; - - /* Blocking event handler removed and replaced with one in DamageEvent class. Temporarily stored for backup reasons. - - if (event.entity instanceof EntityPlayer && !source.isUnblockable()) { - EntityPlayerMP player = (EntityPlayerMP) event.entity; - ItemStack sword = player.getHeldItem(); - - - float playerYaw = player.getRotationYawHead(); - float attackerYaw = attacker.getRotationYawHead(); - -// Normalize both angles to be within 0 - 360 - playerYaw = (playerYaw + 360) % 360; - attackerYaw = (attackerYaw + 360) % 360; - -// Calculate the angle difference - float angleDifference = Math.abs(playerYaw - attackerYaw); - - if (angleDifference > 180) { - angleDifference = 360 - angleDifference; - } - ItemStack weapon = attacker.getHeldItem(); - if (weapon != null) { - if (player.isBlocking() && angleDifference >= 135 && angleDifference <=225) { - - float additionalDamage = 0.0f; - if (weapon.getItem() instanceof ItemAxe || weapon.getItem() instanceof LOTRItemAxe || weapon.getItem() instanceof LOTRItemBattleaxe) { - sword.damageItem((int) (event.ammount *1.5), player); // Axes deal 150% the Durability damage - player.clearItemInUse(); - world.playSoundAtEntity(player, "random.anvil_land", 1F, 2F); - additionalDamage = 0.75f; // Only 25% Passes through - } else if (weapon.getItem() instanceof LOTRItemHammer) { - sword.damageItem((int) event.ammount, player); // Hammers bypass the block better, but only deal 100% of the durability damage - player.clearItemInUse(); - world.playSoundAtEntity(player, "random.anvil_land", 1F, 2F); - additionalDamage = 0.5f; // Only 50% Passes through - } else { - additionalDamage = 0.0f; // 0% Damage Passes through - sword.damageItem((int) (event.ammount/2), player); //Swords only deal 50% of durability damage - player.clearItemInUse(); - world.playSoundAtEntity(player, "random.anvil_land", 1F, 2F); - } - - float newDamage = event.ammount * (additionalDamage); // Calculate new damage - float newHealth = player.getHealth() - (newDamage - event.ammount); // Calculate health after applying extra damage - - if (newHealth > 0) { - player.setHealth(newHealth); - event.setCanceled(true); - } else { - event.ammount = player.getHealth(); // Ensure player dies if health reaches 0 or below - } - - } - } - } - */ - - - - // Negative Arrow Protection Handler - if (!event.entityLiving.worldObj.isRemote && event.source.isProjectile() && event.entityLiving instanceof EntityPlayerMP player) { - // player.addChatMessage(new ChatComponentText(EnumChatFormatting.RED + "DEBUG: Initial Damage: " + event.ammount)); - - float totalAdditionalDamage = 0.0f; // Initialize total additional damage - - for (int i = 0; i < 4; i++) { - ItemStack armor = player.getEquipmentInSlot(i + 1); - if (armor != null) { - LOTREnchantment protectRangedWeak1 = LOTREnchantment.getEnchantmentByName("protectRangedWeak1"); - LOTREnchantment protectRangedWeak2 = LOTREnchantment.getEnchantmentByName("protectRangedWeak2"); - - if (LOTREnchantmentHelper.hasEnchant(armor, protectRangedWeak1)) { - float additionalDamage = 0.2f; // 20% more damage per piece - totalAdditionalDamage += additionalDamage; // Accumulate damage increase - } - if (LOTREnchantmentHelper.hasEnchant(armor, protectRangedWeak2)) { - float additionalDamage = 0.4f; // 40% more damage per piece - totalAdditionalDamage += additionalDamage; // Accumulate damage increase - } - } - } - - // Apply total additional damage - if (totalAdditionalDamage > 0) { - float newDamage = event.ammount * (1 + totalAdditionalDamage); // Calculate new damage - float newHealth = player.getHealth() - (newDamage - event.ammount); // Calculate health after applying extra damage - - if (newHealth > 0) { - player.setHealth(newHealth); - event.setCanceled(true); - } else { - event.ammount = player.getHealth(); // Ensure player dies if health reaches 0 or below - } - - // player.addChatMessage(new ChatComponentText(EnumChatFormatting.RED + "DEBUG: Total Additional Damage: " + newDamage)); - } - } - - // Broken Halo Event handler - if (attacker != null && event.source.getSourceOfDamage() == attacker) { - ItemStack helmet = entity.getEquipmentInSlot(4); - if (helmet != null && helmet.getItem() instanceof BrokenHalo) { - - if (random.nextDouble() <= 0.25) { - // Summon Corrupt Civilian NPC - CorruptMan spawnedEntity = new CorruptMan(world); - spawnedEntity.copyLocationAndAnglesFrom(attacker); - - // Randomly select main weapon - ItemStack mainWeapon = getRandomWeapon(); - spawnedEntity.npcItemsInv.setIdleItem(mainWeapon); - spawnedEntity.npcItemsInv.setMeleeWeapon(mainWeapon); - spawnedEntity.setHealth(10); - spawnedEntity.addPotionEffect(new PotionEffect(Potion.regeneration.id, 9999, 0)); - - spawnedEntity.onSpawnWithEgg(null); - world.spawnEntityInWorld(spawnedEntity); - world.playAuxSFXAtEntity(null, 1016, (int) spawnedEntity.posX, (int) spawnedEntity.posY, (int) spawnedEntity.posZ, 0); - world.playSoundAtEntity(entity, "mob.zombie.unfect", 1F, 1F); - - } - } - } - - // Smithing Rework event handler - if (attacker instanceof EntityPlayerMP player) { - ItemStack weapon = player.getHeldItem(); - // smithing rework for melee - if (weapon !=null && (weapon.getItem() instanceof LOTRItemSpear || weapon.getItem() instanceof LOTRItemSword || weapon.getItem() instanceof LOTRItemDagger || weapon.getItem() instanceof LOTRItemBattleaxe || weapon.getItem() instanceof LOTRItemHammer || weapon.getItem() instanceof ItemSword)) { - float[] durabilityThresholds = {0.6f, 0.5f, 0.4f}; - double[] probabilities = {0.02, 0.05, 0.1}; - - if (weapon.isItemStackDamageable()) { - float durabilityPercent = (float) (weapon.getMaxDamage() - weapon.getItemDamage() / weapon.getMaxDamage()); - for (int j = 0; j < durabilityThresholds.length; j++) { - if (durabilityPercent <= durabilityThresholds[j] && random.nextDouble() <= probabilities[j]) { - addNegativeModifier(weapon, player, "weapon"); - break; // Exit loop once a modifier is added - } - } - } - } - } - if (entity instanceof EntityPlayerMP player) { - - // Durability thresholds and corresponding probabilities for adding a negative modifier - float[] durabilityThresholds = {0.6f, 0.5f, 0.4f}; - double[] probabilities = {0.02, 0.05, 0.1}; - - for (int i = 0; i < 4; ++i) { - ItemStack armor = player.getEquipmentInSlot(i + 1); - if (armor != null && armor.isItemStackDamageable()) { - float durabilityPercent = (float) (armor.getMaxDamage() - armor.getItemDamage()) / armor.getMaxDamage(); - // Check each threshold and apply negative modifier if conditions are met - for (int j = 0; j < durabilityThresholds.length; j++) { - if (durabilityPercent <= durabilityThresholds[j] && random.nextDouble() <= probabilities[j]) { - addNegativeModifier(armor, player, "armor"); - break; // Exit loop once a modifier is added - } - } - } - } - } - } - - private void sendNegativeModifierMessage(EntityPlayerMP player, String type) { - player.addChatMessage(new ChatComponentText( - EnumChatFormatting.RED + "Your " + - EnumChatFormatting.GOLD + type + - EnumChatFormatting.RED + " has received a negative modifier!" - )); - } - private void playNegativeModifierSound(World world, double x, double y, double z) { - world.playSoundEffect(x, y, z, "mob.irongolem.hit", 1.0F, 2.0F); - } - private void addNegativeModifier(ItemStack item, EntityPlayerMP player, String type) { - NBTTagCompound tag = item.getTagCompound(); - if (tag == null) { - tag = new NBTTagCompound(); - item.setTagCompound(tag); - } - - if (!tag.hasKey("LOTREnch")) { - tag.setTag("LOTREnch", new NBTTagList()); - } - - NBTTagList enchList = tag.getTagList("LOTREnch", 8); // 8 is the type for strings - boolean protectWeakUpgraded = false; - boolean protectRangedWeakUpgraded = false; - boolean upgraded = false; - - boolean meleeSwift = false; - boolean meleeReach = false; - - if (type.equals("armor")) { - // First, iterate and upgrade if necessary - for (int i = 0; i < enchList.tagCount(); i++) { - String ench = enchList.getStringTagAt(i); - switch (ench) { - case "protectWeak1" -> { - enchList.removeTag(i); - enchList.appendTag(new NBTTagString("protectWeak2")); - protectWeakUpgraded = true; - i--; // Adjust index after removal - playNegativeModifierSound(player.worldObj, player.posX, player.posY, player.posZ); - sendNegativeModifierMessage(player, "Armor"); - } - case "protectRangedWeak1" -> { - enchList.removeTag(i); - enchList.appendTag(new NBTTagString("protectRangedWeak2")); - protectRangedWeakUpgraded = true; - i--; // Adjust index after removal - playNegativeModifierSound(player.worldObj, player.posX, player.posY, player.posZ); - sendNegativeModifierMessage(player, "Armor"); - } - case "protectWeak2" -> protectWeakUpgraded = true; - case "protectRangedWeak2" -> protectRangedWeakUpgraded = true; - } - } - // After upgrading, check if we need to add a new modifier - if (!protectWeakUpgraded || !protectRangedWeakUpgraded) { - // Separate conditions for adding new modifiers - if (!protectWeakUpgraded && !protectRangedWeakUpgraded) { - // Randomly add either protectWeak1 or protectRangedWeak1 - String[] possibleModifiers = {"protectWeak1", "protectRangedWeak1"}; - String newModifier = possibleModifiers[random.nextInt(possibleModifiers.length)]; - enchList.appendTag(new NBTTagString(newModifier)); - } else if (!protectWeakUpgraded) { - // Only protectWeak1 is added - enchList.appendTag(new NBTTagString("protectWeak1")); - } else if (!protectRangedWeakUpgraded) { - // Only protectRangedWeak1 is added - enchList.appendTag(new NBTTagString("protectRangedWeak1")); - } - playNegativeModifierSound(player.worldObj, player.posX, player.posY, player.posZ); - sendNegativeModifierMessage(player, "Armor"); - } - - tag.setTag("LOTREnch", enchList); - } else if (type.equals("bow")) { - for (int i = 0; i < enchList.tagCount(); i++) { - String ench = enchList.getStringTagAt(i); - switch (ench) { - case "rangedWeak1" -> { - enchList.removeTag(i); - enchList.appendTag(new NBTTagString("rangedWeak2")); - upgraded = true; - i--; // Adjust index after removal - playNegativeModifierSound(player.worldObj, player.posX, player.posY, player.posZ); - sendNegativeModifierMessage(player, "Bow"); - } - case "rangedWeak2" -> { - enchList.removeTag(i); - enchList.appendTag(new NBTTagString("rangedWeak3")); - upgraded = true; - i--; // Adjust index after removal - playNegativeModifierSound(player.worldObj, player.posX, player.posY, player.posZ); - sendNegativeModifierMessage(player, "Bow"); - } - case "rangedWeak3" -> upgraded = true; - } - } - if (!upgraded) { - // Randomly add either rangedWeak1... etc - String[] possibleModifiers = {"rangedWeak1", "rangedWeak2", "rangedWeak3"}; - String newModifier = possibleModifiers[random.nextInt(possibleModifiers.length)]; - enchList.appendTag(new NBTTagString(newModifier)); - playNegativeModifierSound(player.worldObj, player.posX, player.posY, player.posZ); - sendNegativeModifierMessage(player, "Weapon"); - } - } else if (type.equals("weapon")) { - // First, iterate and upgrade if necessary - for (int i = 0; i < enchList.tagCount(); i++) { - String ench = enchList.getStringTagAt(i); - switch (ench) { - case "weak1" -> { - enchList.removeTag(i); - enchList.appendTag(new NBTTagString("weak2")); - upgraded = true; - i--; // Adjust index after removal - playNegativeModifierSound(player.worldObj, player.posX, player.posY, player.posZ); - sendNegativeModifierMessage(player, "Weapon"); - } - case "weak3" -> { - enchList.removeTag(i); - enchList.appendTag(new NBTTagString("weak4")); - upgraded = true; - i--; // Adjust index after removal - playNegativeModifierSound(player.worldObj, player.posX, player.posY, player.posZ); - sendNegativeModifierMessage(player, "Weapon"); - } - case "weak4" -> upgraded = true; - case "meleeSlow1" -> meleeSwift = true; - case "meleeUnreach1" -> meleeReach = true; - } - } - // After upgrading, check if we need to add a new modifier - if (!upgraded || !meleeSwift || !meleeReach) { - // Separate conditions for adding new modifiers - if (!upgraded && !meleeSwift && !meleeReach) { - // Randomly add one of the possible modifiers - String[] possibleModifiers = {"weak1", "weak2", "weak3", "weak4", "meleeSlow1", "meleeUnreach1"}; - String newModifier = possibleModifiers[random.nextInt(possibleModifiers.length)]; - enchList.appendTag(new NBTTagString(newModifier)); - } else if (!upgraded) { - // Only weak modifier is added - String[] weakModifiers = {"weak1", "weak2", "weak3", "weak4"}; - String newModifier = weakModifiers[random.nextInt(weakModifiers.length)]; - enchList.appendTag(new NBTTagString(newModifier)); - } else if (!meleeSwift) { - // Only meleeSlow1 is added - enchList.appendTag(new NBTTagString("meleeSlow1")); - } else if (!meleeReach) { - // Only meleeUnreach1 is added - enchList.appendTag(new NBTTagString("meleeUnreach1")); - } - - playNegativeModifierSound(player.worldObj, player.posX, player.posY, player.posZ); - sendNegativeModifierMessage(player, "Weapon"); - } - - - tag.setTag("LOTREnch", enchList); - } - } - - - - private ItemStack getRandomWeapon() { - Item[] weapons = new Item[]{LOTRMod.blacksmithHammer, LOTRMod.daggerIron, LOTRMod.dunlendingTrident, LOTRMod.battleaxeBronze, CinderLoE.cleaver}; - return new ItemStack(weapons[random.nextInt(weapons.length)]); - } - - @Override - public int getBurnTime(ItemStack fuel) { - return 0; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/CinderLoE.java b/src (1)/main/java/com/zivilon/cinder_loe/CinderLoE.java deleted file mode 100644 index 9d35e85..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/CinderLoE.java +++ /dev/null @@ -1,1396 +0,0 @@ -package com.zivilon.cinder_loe; - -import com.zivilon.cinder_loe.blocks.*; -import com.zivilon.cinder_loe.character.CharacterEventListener; -import com.zivilon.cinder_loe.character.CharacterRoleAPI; -import com.zivilon.cinder_loe.client.render.*; -import com.zivilon.cinder_loe.client.render.corrupt.*; -import com.zivilon.cinder_loe.client.render.projectile.*; -import com.zivilon.cinder_loe.command.CommandCinderCharacter; -import com.zivilon.cinder_loe.entity.*; -import com.zivilon.cinder_loe.entity.corrupt.*; -import com.zivilon.cinder_loe.entity.npc.*; -import com.zivilon.cinder_loe.entity.npc.dwarf.RedDwarfArbalest; -import com.zivilon.cinder_loe.entity.npc.dwarf.RedDwarfBannerBearer; -import com.zivilon.cinder_loe.entity.npc.dwarf.RedDwarfCommander; -import com.zivilon.cinder_loe.entity.npc.dwarf.RedDwarfWarrior; -import com.zivilon.cinder_loe.entity.npc.elf.Sirrandrai; -import com.zivilon.cinder_loe.entity.npc.evil_human.*; -import com.zivilon.cinder_loe.entity.npc.good_human.*; -import com.zivilon.cinder_loe.entity.npc.orc.MorgulOrc; -import com.zivilon.cinder_loe.entity.npc.orc.NorthernOrc; -import com.zivilon.cinder_loe.entity.npc.radagast.*; -import com.zivilon.cinder_loe.entity.projectile.*; -import com.zivilon.cinder_loe.entity.trader.*; -import com.zivilon.cinder_loe.items.*; -import com.zivilon.cinder_loe.potion.LoEPotions; -import com.zivilon.cinder_loe.tileentity.*; -import com.zivilon.cinder_loe.util.Utilities; -import com.zivilon.cinder_loe.world.event.*; -import com.zivilon.cindercore.CinderCore; - -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; - -import org.objectweb.asm.ClassReader; -import org.objectweb.asm.util.TraceClassVisitor; - -import cpw.mods.fml.client.registry.ClientRegistry; -import cpw.mods.fml.client.registry.RenderingRegistry; -import cpw.mods.fml.common.FMLCommonHandler; -import cpw.mods.fml.common.Mod; -import cpw.mods.fml.common.Mod.Instance; -import cpw.mods.fml.common.ModContainer; -import cpw.mods.fml.common.event.FMLInitializationEvent; -import cpw.mods.fml.common.event.FMLPostInitializationEvent; -import cpw.mods.fml.common.event.FMLPreInitializationEvent; -import cpw.mods.fml.common.event.FMLServerStartingEvent; -import cpw.mods.fml.common.eventhandler.SubscribeEvent; -import cpw.mods.fml.common.registry.EntityRegistry; -import cpw.mods.fml.common.registry.GameRegistry; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -import java.io.IOException; -import java.io.InputStream; -import java.io.PrintWriter; -import java.lang.reflect.Constructor; -import java.lang.reflect.Field; - -import lotr.client.render.entity.*; -import lotr.client.render.tileentity.LOTRRenderUtumnoPortal; -import lotr.common.LOTRCreativeTabs; -import lotr.common.LOTRMod; -import lotr.common.entity.animal.*; -import lotr.common.entity.npc.*; -import lotr.common.entity.projectile.LOTREntityGandalfFireball; -import lotr.common.item.*; -import lotr.common.world.biome.LOTRBiome; -import lotr.common.world.spawning.LOTRBiomeSpawnList; -import lotr.common.world.spawning.LOTRSpawnEntry; -import lotr.common.world.spawning.LOTRSpawnList; - -import net.minecraft.block.Block; -import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.passive.EntityWolf; -import net.minecraft.init.Blocks; -import net.minecraft.init.Items; -import net.minecraft.item.Item; -import net.minecraft.potion.Potion; -import net.minecraftforge.common.MinecraftForge; -import net.minecraftforge.event.world.WorldEvent; - -import static lotr.common.LOTRMod.horseArmorIron; -import static lotr.common.item.LOTRMaterial.GONDOR; - -import net.minecraft.command.ICommandSender; -import net.minecraft.command.CommandBase; -import net.minecraft.util.ChatComponentText; -import net.minecraftforge.client.ClientCommandHandler; -import com.zivilon.cinder_loe.SwiftnessHandler; - -@Mod( - modid = "cinder_loe", - version = "1.3.0", - name = "CinderLoE", - dependencies = "required-after:spongemixins@[1.1.0,);required-after:lotr", - acceptedMinecraftVersions = "[1.7.10]", - acceptableRemoteVersions = "[1.3.0]") -public class CinderLoE { - - @Instance("cinder_loe") - public static CinderLoE instance; - - public static Logger LOG = LogManager.getLogger(Tags.MODID); - public static boolean DEBUG = false; - - // LOTR Materials - public static LOTRMaterial MATERIAL_RED_DWARF; - public static LOTRMaterial MATERIAL_BONEMOLD; - public static LOTRMaterial MATERIAL_LIMWAITH_WOOD; - public static LOTRMaterial EVENT; - public static LOTRMaterial MATERIAL_BREE; - public static LOTRMaterial MATERIAL_RHUDAUR; - public static LOTRMaterial MATERIAL_BATTLENUN; - public static LOTRMaterial MATERIAL_ASH; - public static LOTRMaterial MATERIAL_SERPENT; - public static LOTRMaterial MATERIAL_USURPER; - public static LOTRMaterial MATERIAL_WARLORD; - public static LOTRMaterial MATERIAL_JADE; - - // Blocks - // public static Block barricade; - public static Block cinderBlock; - public static Block ivoryBlock; - public static Block blockRedDwarfSteel; - public static Block barsRedDwarf; - public static Block chandelierRedDwarf; - public static Block furBundle; - public static Block leatherBundle; - public static Block reedBale; - public static Block dwarvenBrickRuned; - public static Block fishBarrel; - ///public static Block rustedsword; - public static Block mistBlock; - public static Block cutDrystone; - public static Block cindercobble; - public static Block cinderfur; - public static Block furCarpet; - public static Block reeflessCoral; - public static Block silverChain; - public static Block goldChain; - public static Block ironChain; - public static Block bronzeChain; - - public static Block plaster; - public static Block voidblock; - public static Block entityBarrier; - public static Block woodpanel; - - //public static Block verticalWeaponRack; - - //Gates - //public static Block gatecharredportcullis; - - //Food Crop blocks - public static Block onionCrop; - public static Block cabbageCrop; - - //Food! Yum :P - public static Item onion; - public static Item cabbage; - public static Item pelmen; - public static Item spice; - public static Item spicedHam; - public static Item lightStew; - - public static Item chocolatebar; - public static Item fruitsalad; - public static Item flour; - public static Item dough; - public static Item pasta; - public static Item pretzel; - public static Item halva; - // public static Item honey; - public static Item doner_kebab; - - // Brews - public static Item mugElfBrew; - public static Item mugHumanBrew; - public static Item mugOrcBrew; - public static Item mugDwarfBrew; - public static Item spiceElven; - public static Item spiceHuman; - public static Item spiceOrcish; - public static Item spiceDwarven; - - - // Event/special - public static Item frostblade; - public static Item daggervoid; - public static Item spearsolidgold; - public static Item spearUnnamed; - public static Item swordAsh; - public static Item staffAsh; - public static Item daggerAsh; - public static Item spearAsh; - public static Item hammerAsh; - public static Item battleaxeAsh; - public static Item pikeAsh; - public static Item bowAsh; - public static Item ingotAsh; - public static Item helmetbrokenhalo; - public static Item helmetJade; - public static Item bodyJade; - public static Item legsJade; - public static Item bootsJade; - - // Misc - public static Item forgingKit; - public static Item cinderFurItem; - - // Common tools/weapons - public static Item whip; - public static Item cleaver; - public static Item warDart; - public static Item warDartHeads; - - // Elite Armors/weapons - public static Item helmetserpent; - public static Item bodyserpent; - public static Item legsserpent; - public static Item bootsserpent; - public static Item helmetUsurper; - public static Item bodyUsurper; - public static Item legsUsurper; - public static Item bootsUsurper; - public static Item helmetWarlord; - public static Item bodyWarlord; - public static Item legsWarlord; - public static Item bootsWarlord; - public static Item maceWarlord; - // public static Item bowserpent; - //public static Item swordUsurper; - - - // Red Dwarves - public static Item redDwarfSteel; - public static Item helmetRedDwarf; - public static Item bodyRedDwarf; - public static Item legsRedDwarf; - public static Item bootsRedDwarf; - public static Item spearRedDwarf; - public static Item swordRedDwarf; - public static Item battleaxeRedDwarf; - public static Item pikeRedDwarf; - public static Item hammerRedDwarf; - public static Item daggerRedDwarf; - public static Item daggerRedDwarfPoisoned; - public static Item crossbowRedDwarf; - public static Item boarArmorRedDwarf; - public static LOTRUnitTradeEntries RED_DWARF_COMMANDER; - - // Rhudaur - public static Item helmetRhudaur; - public static Item bodyRhudaur; - public static Item legsRhudaur; - public static Item bootsRhudaur; - - // Limwaith - public static Item bonemold; - public static Item helmetLimwaith; - public static Item bodyLimwaith; - public static Item legsLimwaith; - public static Item bootsLimwaith; - public static Item helmetboneLimwaith; - public static Item bodyboneLimwaith; - public static Item legsboneLimwaith; - public static Item bootsboneLimwaith; - public static Item tridentLimwaith; - public static Item spearLimwaith; - public static Item truncheonLimwaith; - public static Item battleaxeLimwaith; - public static Item daggerLimwaith; - public static Item daggerLimwaithPoisoned; - public static Item blowgunLimwaith; - public static LOTRUnitTradeEntries LIMWAITH_COMMANDER; - - //Bree - public static Item helmetBree; - public static Item helmetBreeKettle; - public static Item bodyBree; - public static Item legsBree; - public static Item bootsBree; - public static Item swordBree; - public static LOTRUnitTradeEntries BREE_CAPTAIN; - - // Arnor - public static Item helmetArnorBanner; - public static Item bodyArnorBanner; - public static Item legsArnorBanner; - public static Item bootsArnorBanner; - public static Item maceArnor; - public static LOTRUnitTradeEntries ARNOR_CAPTAIN; - - // Wizards - public static Item radagastStaff; - public static Item pallandoStaff; - public static Item alatarStaff; - public static Item sarumanStaff; - public static Item sarumanWhiteStaff; - - // Relics - public static Item welfRelic; - // Spawn eggs - public static Item spawnEgg; - public static Item unitLevelTool; - - // Spawn lists - public static LOTRSpawnList RED_DWARF; - public static LOTRSpawnList LIMWAITH; - public static LOTRSpawnList RHUDAUR; - - public static CinderEventHandler modEventHandler; - - @Mod.EventHandler - public void preInit(FMLPreInitializationEvent event) { - CinderLoE_Config.init(event); - Materials.registerMaterials(); - registerBlocks(); - registerItems(); - ItemRegistration.registerItems(); - registerEntities(); - modEventHandler = new CinderEventHandler(); - LoEPotions.registerPotions(); - } - - @Mod.EventHandler - public void init(FMLInitializationEvent event) { - CommonProxy proxy = event.getSide() == Side.CLIENT ? new ClientProxy() : new ServerProxy(); - proxy.setup(); - if (FMLCommonHandler.instance().getEffectiveSide().isServer()) { - FMLCommonHandler.instance().bus().register(this); - } - MinecraftForge.EVENT_BUS.register(this); - new CharacterEventListener(); -<<<<<<< HEAD - FMLCommonHandler.instance().bus().register(new WarbandTickHandler()); -======= - MinecraftForge.EVENT_BUS.register(new SwiftnessHandler()); ->>>>>>> 8e7cde676647c7cbbe3fba596e024ea046cf50e6 - } - - - @Mod.EventHandler - public void postInit(FMLPostInitializationEvent event) { - if (event.getSide() - .isServer()) { - SpeechBankModifier.insertSpeechBanks(); - modifySpawnLists(); - } - Utilities.initialize_reflects(); - recipes.registerRecipes(); - setupTradeEntries(); - LOTRWeaponStats.registerMeleeReach(Whip.class, 1.5F); - LoECreativeTabs.setupIcons(); - } - - - @Mod.EventHandler - public void serverStarting(FMLServerStartingEvent event) { - CharacterRoleAPI.loadRolesFromFile(); - event.registerServerCommand(new CommandCinderCharacter()); - } - - public void registerEntities() { // Last ID added: 60 - ///GameRegistry.registerTileEntity(TileEntityMistBlock.class, "TileEntityMistBlock"); - ///.registerBlock(TileEntityRustedSword, "TileEntityRustedSword"); - - int entityID = 7320; // Always increment entityID by 1 over the last entity to ensure unique IDs - - // Traders - EntityRegistry.registerModEntity(RedDwarfSmith.class, "RedDwarfSmith", (entityID + 29), this, 64, 1, true); - EntityRegistry.registerModEntity(LimwaithFishmonger.class, "LimwaithFishmonger", (entityID + 33), this, 64, 1, true); - EntityRegistry.registerModEntity(LimwaithShaman.class, "LimwaithShaman", (entityID + 34), this, 64, 1, true); - EntityRegistry.registerModEntity(BladorthinSmith.class, "BladorthinSmith", (entityID + 43), this, 64, 1, true); - - - // Event - EntityRegistry.registerModEntity(DarkSpider.class, "DarkSpider", (entityID + 42), this, 64, 1, true); - EntityRegistry.registerModEntity(CorruptDwarf.class, "CorruptDwarf", (entityID + 36), this, 64, 1, true); - EntityRegistry.registerModEntity(CorruptElf.class, "CorruptElf", (entityID + 37), this, 64, 1, true); - EntityRegistry.registerModEntity(CorruptEnt.class, "CorruptEnt", (entityID + 38), this, 64, 1, true); - EntityRegistry.registerModEntity(CorruptHobbit.class, "CorruptHobit", (entityID + 39), this, 64, 1, true); - EntityRegistry.registerModEntity(CorruptMan.class, "CorruptMan", (entityID + 40), this, 64, 1, true); - EntityRegistry.registerModEntity(CorruptOrc.class, "CorruptOrc", (entityID + 41), this, 64, 1, true); - EntityRegistry.registerModEntity(Renegade.class, "Renegade", (entityID + 1), this, 64, 1, true); - EntityRegistry.registerModEntity(RenegadeCaptain.class, "RenegadeCaptain", (entityID + 16), this, 64, 1, true); - EntityRegistry.registerModEntity(FangornBear.class, "FangornBear", (entityID + 6), this, 64, 1, true); - EntityRegistry.registerModEntity(FangornWildBoar.class, "FangornWildBoar", (entityID + 7), this, 64, 1, true); - EntityRegistry.registerModEntity(FangornAuroch.class, "FangornAuroch", (entityID + 8), this, 64, 1, true); - EntityRegistry.registerModEntity(FangornElk.class, "FangornElk", (entityID + 9), this, 64, 1, true); - EntityRegistry.registerModEntity(FangornWolf.class, "FangornWolf", (entityID + 10), this, 64, 1, true); - EntityRegistry.registerModEntity(Wraith.class, "Wraith", (entityID + 15), this, 64, 1, true); - EntityRegistry.registerModEntity(CorruptSkeleton.class, "CorruptSkeleton", (entityID + 59), this, 64, 1, true); - EntityRegistry.registerModEntity(CorruptSkeletonArcher.class, "CorruptSkeletonArcher", (entityID + 60), this, 64, 1, true); - - //Misc - EntityRegistry.registerModEntity(EntityWarDart.class, "WarDart", (entityID + 44), this, 64, 1, true); - EntityRegistry.registerModEntity(SarumanFireball.class, "SarumanFireball", entityID + 0, this, 64, 10, true); - EntityRegistry.registerModEntity(SarumanWhiteFireball.class, "SarumanWhiteFireball", entityID + 61, this, 64, 10, true); - EntityRegistry.registerModEntity(LOTREntitySauron.class, "LOTREntitySauron", (entityID + 28), this, 64, 1, true); - EntityRegistry.registerModEntity(UtumnoSlaveTrader.class, "UtumnoSlaveTrader", (entityID + 30), this, 64, 1, true); - - // Faction Units - EntityRegistry.registerModEntity(RedDwarfWarrior.class, "RedDwarfWarrior", (entityID + 2), this, 64, 1, true); - EntityRegistry.registerModEntity(RedDwarfArbalest.class, "RedDwarfArbalest", (entityID + 3), this, 64, 1, true); - EntityRegistry.registerModEntity(RedDwarfBannerBearer.class, "RedDwarfBannerBearer", (entityID + 4), this, 64, 1, true); - EntityRegistry.registerModEntity(RedDwarfCommander.class, "RedDwarfCommander", (entityID + 5), this, 64, 1, true); - - // EntityRegistry.registerModEntity(FangornWolf.class, "TamedCrocodile", (entityID + 35), this, 64, 1, true); - EntityRegistry.registerModEntity(Limwaith.class, "Limwaith", (entityID + 31), this, 64, 1, true); - EntityRegistry.registerModEntity(LimwaithWarrior.class, "LimwaithWarrior", (entityID + 11), this, 64, 1, true); - EntityRegistry.registerModEntity(LimwaithBoneWarrior.class, "LimwaithBoneWarrior", (entityID + 32), this, 64, 1, true); - EntityRegistry.registerModEntity(LimwaithBlowgunner.class, "LimwaithBlowgunner", (entityID + 12), this, 64, 1, true); - EntityRegistry.registerModEntity(LimwaithBannerBearer.class, "LimwaithBannerBearer", (entityID + 13), this, 64, 1, true); - EntityRegistry.registerModEntity(LimwaithChieftain.class, "LimwaithChieftain", (entityID + 14), this, 64, 1, true); - - EntityRegistry.registerModEntity(ArnorSoldier.class, "ArnorSoldier", (entityID + 17), this, 64, 1, true); - EntityRegistry.registerModEntity(ArnorSoldierArcher.class, "ArnorSoldierArcher", (entityID + 19), this, 64, 1, true); - EntityRegistry.registerModEntity(ArnorCaptain.class, "ArnorCaptain", (entityID + 20), this, 64, 1, true); - EntityRegistry.registerModEntity(ArnorBannerBearer.class, "ArnorBannerBearer", (entityID + 21), this, 64, 1, true); - - EntityRegistry.registerModEntity(BreeSoldier.class, "BreeSoldier", (entityID + 22), this, 64, 1, true); - EntityRegistry.registerModEntity(BreeCrossbowman.class, "BreeCrossbowman", (entityID + 23), this, 64, 1, true); - EntityRegistry.registerModEntity(BreeCaptain.class, "BreeCaptain", (entityID + 24), this, 64, 1, true); - EntityRegistry.registerModEntity(BreeSoldierBannerBearer.class, "BreeSoldierBannerBearer", (entityID + 25), this, 64, 1, true); - EntityRegistry.registerModEntity(BreeOutrider.class, "BreeOutrider", (entityID + 26), this, 64, 1, true); - - EntityRegistry.registerModEntity(HobbitBannerBearer.class, "HobbitBannerBearer", (entityID + 52), this, 64, 1, true); - // Objective and Custom npcs - EntityRegistry.registerModEntity(BattleNun.class, "BattleNun", (entityID + 27), this, 64, 1, true); - EntityRegistry.registerModEntity(MorgulOrc.class, "MorgulOrc", (entityID + 53), this, 64, 1, true); - EntityRegistry.registerModEntity(RhudaurSoldier.class, "RhudaurSoldier", (entityID + 54), this, 64, 1, true); - EntityRegistry.registerModEntity(NorthernOrc.class, "NorthernOrc", (entityID + 55), this, 64, 1, true); - EntityRegistry.registerModEntity(EsgarothSoldier.class, "EsgarothSoldier", (entityID + 56), this, 64, 1, true); - EntityRegistry.registerModEntity(TauredainTrueBlood.class, "TauredainTrueBlood", (entityID + 57), this, 64, 1, true); - EntityRegistry.registerModEntity(Sirrandrai.class, "Sirrandrai", (entityID + 58), this, 64, 1, true); - - } - - public void registerBlocks() { - // barricade - // barricade = (new barricade()); - // GameRegistry.registerBlock(barricade, "barricade"); - - // Cinder Block - cinderBlock = (new CinderBlock()); - GameRegistry.registerBlock(cinderBlock, "cinderBlock"); - - // Ivory Block - ivoryBlock = (new IvoryBlock()); //Unobtainable - GameRegistry.registerBlock(ivoryBlock, "ivoryBlock"); - - // Reefless Coral - reeflessCoral = (new reeflessCoral()); - GameRegistry.registerBlock(reeflessCoral, "reeflessCoral"); - - // Red Dwarven Steel Block - blockRedDwarfSteel = (new BlockRedDwarfSteel()); - GameRegistry.registerBlock(blockRedDwarfSteel, "blockRedDwarfSteel"); - - // Red Dwarven Steel Bars - barsRedDwarf = (new RedDwarfBars()); - GameRegistry.registerBlock(barsRedDwarf, "barsRedDwarf"); - - // Red dwarven chandelier - chandelierRedDwarf = (new RedDwarfChandelier()); - GameRegistry.registerBlock(chandelierRedDwarf, "chandelierRedDwarf"); - - // Bundles - furBundle = (new FurBundle()); - GameRegistry.registerBlock(furBundle, "furBundle"); - leatherBundle = (new LeatherBundle()); - GameRegistry.registerBlock(leatherBundle, "leatherBundle"); - reedBale = (new ReedBale()); - GameRegistry.registerBlock(reedBale, "reedBale"); - - // Unique - dwarvenBrickRuned = (new RunedDwarvenBrick()); - GameRegistry.registerBlock(dwarvenBrickRuned, "dwarvenBrickRuned"); - // verticalWeaponRack = new VerticalWeaponRack(); - // GameRegistry.registerTileEntity(LOTRTileEntityWeaponRack.class, "verticalWeaponRack"); - // GameRegistry.registerBlock(verticalWeaponRack, "verticalWeaponRack"); - //Decor - ///rustedsword = (new RustedSword()); - ///GameRegistry.registerBlock(rustedsword, "rustedsword"); - // Barrel - fishBarrel = (new FishBarrel()); - GameRegistry.registerBlock(fishBarrel, "fishbarrel"); - - // Chains - silverChain = (new silverChain()); - GameRegistry.registerBlock(silverChain, "silverChain"); - goldChain = (new goldChain()); - GameRegistry.registerBlock(goldChain, "goldChain"); - ironChain = (new ironChain()); - GameRegistry.registerBlock(ironChain, "ironChain"); - bronzeChain = (new bronzeChain()); - GameRegistry.registerBlock(bronzeChain, "bronzeChain"); - - - // Staff - mistBlock = (new MistBlock()); - GameRegistry.registerBlock(mistBlock, "mist"); - voidblock = (new voidblock()); - GameRegistry.registerBlock(voidblock, "voidblock"); - entityBarrier = (new EntityBarrier()); - GameRegistry.registerBlock(entityBarrier, "entity_barrier"); - - // Building Blocks - cutDrystone = (new cutDrystone()); - GameRegistry.registerBlock(cutDrystone, "cutDrystone"); - - cindercobble = (new CobbleBlock()); - GameRegistry.registerBlock(cindercobble, CinderBlockMetaData.class, "cindercobble"); - - cinderfur = (new CinderFurBlock()); - GameRegistry.registerBlock(cinderfur, CinderBlockMetaData.class, "cinderfur"); - furCarpet = (new FurCarpet()); - GameRegistry.registerBlock(furCarpet, CinderBlockMetaData.class, "furCarpet"); - - plaster = (new plaster()); - GameRegistry.registerBlock(plaster, "plaster"); - - woodpanel = (new woodpanel()); - GameRegistry.registerBlock(woodpanel, "woodpanel"); - - // Gates - //gatecharredportcullis = LOTRBlockGate.createWooden(false).setBlockName("lotr:gatecharredportcullis"); - //GameRegistry.registerBlock(gatecharredportcullis, "gatecharredportcullis"); - - //Food Crops - onionCrop = new onionCrop().setBlockName("onion"); - GameRegistry.registerBlock(onionCrop, "onionCrop"); - cabbageCrop = new cabbageCrop().setBlockName("cabbage"); - GameRegistry.registerBlock(cabbageCrop, "cabbageCrop"); - - - } - - public void registerItems() { - // Get materials tab via reflection because ForgeGradle insists on obfuscating it when it should not - LOTRCreativeTabs materials = null; - try { - Field tabField = LOTRCreativeTabs.class.getDeclaredField("tabMaterials"); // Stupid workaround because ForgeGradle tries to obfuscate field LOTRCreativeTabs.tabBlock when it's not supposed to be - materials = (LOTRCreativeTabs) tabField.get(null); - } catch (NoSuchFieldException | IllegalAccessException e) { - e.printStackTrace(); - } - // Food - // onion = new ItemSeedFood(3, 0.3f, CinderLoE.onionCrop, Blocks.farmland).setUnlocalizedName("lotr:onion").setTextureName("lotr:onion"); - //cabbage = new ItemSeedFood(3, 0.3f, CinderLoE.cabbageCrop, Blocks.farmland).setUnlocalizedName("lotr:cabbage").setTextureName("lotr:cabbage");; - spice = new CinderItemFood(1, 0.0f, false).setdamageAmount(2).setPotionEffect(Potion.moveSpeed.id, 5,0,100).setUnlocalizedName("lotr:spice").setTextureName("lotr:spice"); - spicedHam = new CinderItemFood(9, 0.6f, true).setdamageAmount(2).setPotionEffect(Potion.moveSpeed.id, 15, 0, 100).setUnlocalizedName("lotr:spicedHam").setTextureName("lotr:spicedHam"); - // spice = new LOTRItemFood(1, 0.0f, false).setPotionEffect(Potion.moveSpeed.id, 10,0,100).setUnlocalizedName("lotr:spice"); - pelmen = new LOTRItemFood(4, 5.0f, true).setUnlocalizedName("lotr:pelmen").setTextureName("lotr:pelmen"); - onion = new LOTRItemFood(3, 0.3f, false).setUnlocalizedName("lotr:onion").setTextureName("lotr:onion"); - cabbage = new LOTRItemFood(4, 0.5f, false).setUnlocalizedName("lotr:cabbage").setTextureName("lotr:cabbage"); - lightStew = new LOTRItemStew(6, 0.7f, false).setPotionEffect(Potion.damageBoost.id, 60, 0, 100).setUnlocalizedName("lotr:lightStew").setTextureName("lotr:lightStew"); - chocolatebar = new LOTRItemFood(4,0.3f, false).setUnlocalizedName("lotr:chocolatebar").setTextureName("lotr:chocolatebar"); - fruitsalad = new LOTRItemStew(6, 0.5f, false).setPotionEffect(Potion.field_76444_x.id, 60, 0,1).setUnlocalizedName("lotr:fruitsalad").setTextureName("lotr:fruitsalad"); - flour = new LOTRItemFood(0,0.0f, false).setPotionEffect(Potion.confusion.id, 5,0,100).setUnlocalizedName("lotr:flour").setTextureName("lotr:flour"); - dough = new LOTRItemFood(1,0.0f, false).setPotionEffect(Potion.hunger.id, 5,0,100).setUnlocalizedName("lotr:dough").setTextureName("lotr:dough"); - pasta = new LOTRItemFood(2,0.0f, false).setPotionEffect(Potion.hunger.id, 5,0,100).setUnlocalizedName("lotr:pasta").setTextureName("lotr:pasta"); - pretzel = new LOTRItemFood(4,1.0f, false).setUnlocalizedName("lotr:pretzel").setTextureName("lotr:pretzel"); - halva = new LOTRItemFood (7, 4.0f, false).setUnlocalizedName("lotr:halva").setTextureName("lotr:halva"); - doner_kebab = new LOTRItemFood (6, 6.0f, false).setUnlocalizedName("lotr:doner_kebab").setTextureName("lotr:doner_kebab"); - // honey = new LOTRItemFood(3, 0.4f, false).setPotionEffect(Potion.regeneration.id, 5, 0, 100).setUnlocalizedName("lotr:honey").setTextureName("lotr:honey"); - spiceElven = new Item().setUnlocalizedName("lotr:spice_elven").setTextureName("lotr:spice_elven"); - spiceHuman = new Item().setUnlocalizedName("lotr:spice_human").setTextureName("lotr:spice_human"); - spiceOrcish = new Item().setUnlocalizedName("lotr:spice_orcish").setTextureName("lotr:spice_orcish"); - spiceDwarven = new Item().setUnlocalizedName("lotr:spice_dwarven").setTextureName("lotr:spice_dwarven"); - mugElfBrew = (new LoEItemMug(0.0F)).setDrinkStats(20, 1.0F).addPotionEffect(Potion.moveSpeed.id, 180, 1).toxic().setUnlocalizedName("lotr:mugElfBrew"); - mugHumanBrew = (new LoEItemMug(0.0F)).setDrinkStats(20, 1.0F).addPotionEffect(Potion.regeneration.id, 180, 1).toxic().setUnlocalizedName("lotr:mugHumanBrew"); - mugOrcBrew = (new LoEItemMug(0.0F)).setDrinkStats(20, 1.0F).addPotionEffect(Potion.damageBoost.id, 180, 1).toxic().setUnlocalizedName("lotr:mugOrcBrew"); - mugDwarfBrew = (new LoEItemMug(0.0F)).setDrinkStats(20, 1.0F).addPotionEffect(Potion.field_76443_y.id, 360).toxic().setUnlocalizedName("lotr:mugDwarfBrew"); - ((LoEItemMug)mugElfBrew).setTextureNameFromUnlocalizedName(); - ((LoEItemMug)mugHumanBrew).setTextureNameFromUnlocalizedName(); - ((LoEItemMug)mugOrcBrew).setTextureNameFromUnlocalizedName(); - ((LoEItemMug)mugDwarfBrew).setTextureNameFromUnlocalizedName(); - - spawnEgg = new CinderLoESpawnEgg(); - - // Wizard Staves - radagastStaff = (new RadagastStaff()).setUnlocalizedName("lotr:radagastStaff").setTextureName("lotr:radagastStaff"); - pallandoStaff = (new PallandoStaff()).setUnlocalizedName("lotr:pallandoStaff").setTextureName("lotr:pallandoStaff"); - alatarStaff = (new AlatarStaff()).setUnlocalizedName("lotr:alatarStaff").setTextureName("lotr:alatarStaff"); - sarumanStaff = (new SarumanStaff()).setUnlocalizedName("lotr:sarumanStaff").setTextureName("lotr:sarumanStaff"); - sarumanWhiteStaff = (new SarumanWhiteStaff()).setUnlocalizedName("lotr:sarumanWhiteStaff").setTextureName("lotr:sarumanStaff"); - // Relics - welfRelic = (new WoodElfRelic()).setUnlocalizedName("lotr:welfRelic").setTextureName("lotr:welfRelic"); - unitLevelTool = (new unitLevelTool()).setUnlocalizedName("lotr:unitLevelTool").setTextureName("stick"); - - /** - * Item Registation - * Weapons will need to be linked - * - * ID 6000-6099 - * Misc / Materials - * - * ID 6100-6199 - * Misc equipment - * - * ID 6200-6399 - * Event - * - * ID 6400-6499 - * Faction equipment - * - * ID 6500-6699 - * Unassigned - * - * ID 6700-6799 - * Character or Objective - * - * ID 6800-6899 - * Elite armor - * - * ID 6900-6999 - * Food and crops - * - * ID 7000-7199 - * Unassigned - * - * ID 7200-7299 - * Frozen Dungeon - **/ - - // ==Admin Tools== - ItemRegistration.register(unitLevelTool, "unitLevelTool", 7000); - - - // ==Food Items== - ItemRegistration.register(onion, "onion", 6900); - ItemRegistration.register(cabbage, "cabbage", 6901); - ItemRegistration.register(pelmen, "pelmen", 6902); - ItemRegistration.register(spice, "spice", 6903); - ItemRegistration.register(spicedHam, "spicedHam", 6904); - ItemRegistration.register(chocolatebar, "chocolatebar", 6905); - ItemRegistration.register(fruitsalad, "fruitsalad", 6906); - ItemRegistration.register(flour, "flour", 6907); - ItemRegistration.register(dough, "dough", 6908); - ItemRegistration.register(pasta, "pasta", 6909); - ItemRegistration.register(pretzel, "pretzel", 6910); - ItemRegistration.register(halva, "halva", 6911); - ItemRegistration.register(doner_kebab, "doner_kebab", 6912); - ItemRegistration.register(lightStew, "lightStew", 6913); - ItemRegistration.register(mugElfBrew, "mugElfBrew",6914); - ItemRegistration.register(mugHumanBrew, "mugHumanBrew",6915); - ItemRegistration.register(mugOrcBrew, "mugOrcBrew",6916); - ItemRegistration.register(mugDwarfBrew, "mugDwarfBrew",6917); - ItemRegistration.register(spiceElven, "spiceElven",6918); - ItemRegistration.register(spiceHuman, "spiceHuman",6919); - ItemRegistration.register(spiceOrcish, "spiceOrcish",6920); - ItemRegistration.register(spiceDwarven, "spiceDwarven",6921); - - ItemRegistration.register(spawnEgg, "spawnEgg", 6003); - - // Wizard Staves - ItemRegistration.register(radagastStaff, "radagastStaff", 6700); - ItemRegistration.register(pallandoStaff, "pallandoStaff", 6701); - ItemRegistration.register(alatarStaff, "alatarStaff", 6702); - ItemRegistration.register(sarumanStaff, "sarumanStaff", 6703); - ItemRegistration.register(sarumanWhiteStaff, "sarumanWhiteStaff", 6705); - - linkLOTRWeapon(radagastStaff, "radagastStaff"); - linkLOTRWeapon(pallandoStaff, "pallandoStaff"); - linkLOTRWeapon(alatarStaff, "alatarStaff"); - linkLOTRWeapon(sarumanStaff, "sarumanStaff"); - linkLOTRWeapon(sarumanWhiteStaff, "sarumanWhiteStaff"); - - //Relics - ItemRegistration.register(welfRelic, "welfRelic", 6704); - - linkLOTRWeapon(welfRelic, "welfRelic"); - - // Misc - cinderFurItem = (new CinderFurItem()).setUnlocalizedName("cinder_fur_item").setTextureName("lotr:cinder_fur_item_0"); - ItemRegistration.register(cinderFurItem,"cinderFurItem",6004); - - EVENT = getLOTRMaterialByName("EVENT"); - MATERIAL_JADE = getLOTRMaterialByName("JADE"); - - frostblade = (new LOTRItemSword(EVENT)).setUnlocalizedName("lotr:frostblade").setTextureName("lotr:frostblade"); - daggervoid = (new VoidDagger(EVENT)).addWeaponDamage(5.0F).setUnlocalizedName("lotr:daggerVoid").setTextureName("lotr:daggerVoid").setCreativeTab(null); - spearsolidgold = (new LOTRItemSpear(EVENT)).setUnlocalizedName("lotr:spearsolidgold").setTextureName("lotr:spearsolidgold").setCreativeTab(null); - spearUnnamed = (new UnnamedSpear(EVENT)).setUnlocalizedName("lotr:spearUnnamed").setTextureName("lotr:spearUnnamed").setCreativeTab(null); - whip = (new Whip()).setUnlocalizedName("lotr:whip").setTextureName("lotr:whip"); - helmetbrokenhalo = (new BrokenHalo(EVENT, 0, "helmet")).setUnlocalizedName("lotr:helmetbrokenhalo").setTextureName("lotr:helmetbrokenhalo").setCreativeTab(null); - helmetJade = (new LOTRItemArmor(MATERIAL_JADE, 0, "helmet")).setUnlocalizedName("lotr:helmetJade").setTextureName("lotr:helmetJade").setCreativeTab(null); - bodyJade = (new LOTRItemArmor(MATERIAL_JADE, 1, "chestplate")).setUnlocalizedName("lotr:bodyJade").setTextureName("lotr:bodyJade").setCreativeTab(null); - legsJade = (new LOTRItemArmor(MATERIAL_JADE, 2,"leggings")).setUnlocalizedName("lotr:legsJade").setTextureName("lotr:legsJade").setCreativeTab(null); - bootsJade = (new LOTRItemArmor(MATERIAL_JADE, 3)).setUnlocalizedName("lotr:bootsJade").setTextureName("lotr:bootsJade").setCreativeTab(null); - - forgingKit = (new ForgingKit()); - - ItemRegistration.register(frostblade, "frostblade", 6200); - ItemRegistration.register(forgingKit,"forgingKit",6001); - ItemRegistration.register(whip, "whip", 6110); - ItemRegistration.register(daggervoid, "daggerVoid", 6201); - ItemRegistration.register(spearsolidgold, "spearsolidgold", 6202); - ItemRegistration.register(spearUnnamed, "spearUnnamed", 6203); - ItemRegistration.register(helmetbrokenhalo, "brokenhalo", 6204); - ItemRegistration.register(helmetJade, "helmetJade", 6205); - ItemRegistration.register(bodyJade, "chestplateJade", 6206); - ItemRegistration.register(legsJade, "legsJade", 6207); - ItemRegistration.register(bootsJade, "bootsJade", 6208); - linkLOTRWeapon(frostblade, "frostblade"); - linkLOTRWeapon(daggervoid, "daggerVoid"); - linkLOTRWeapon(spearsolidgold, "spearsolidgold"); - linkLOTRWeapon(spearUnnamed, "spearUnnamed"); - linkLOTRWeapon(whip, "whip"); - - // Common Tools/Weapons - cleaver = (new LOTRItemDagger(Item.ToolMaterial.IRON)).setUnlocalizedName("lotr:cleaver").setTextureName("lotr:cleaver"); - warDart = (new WarDart()).setUnlocalizedName("war_dart").setTextureName("lotr:war_dart"); - warDartHeads = (new WarDartHeads()).setUnlocalizedName("war_dart_heads").setTextureName("lotr:war_dart_heads_0"); - - ItemRegistration.register(cleaver,"cleaver",6109); - linkLOTRWeapon(cleaver, "cleaver"); - - ItemRegistration.register(warDart,"warDart",6111); - ItemRegistration.register(warDartHeads,"warDartHeads",6500); - - - //ASH - MATERIAL_ASH = getLOTRMaterialByName("ASH"); - ingotAsh = new Item().setUnlocalizedName("lotr:ingotAsh").setTextureName("lotr:ingotAsh").setCreativeTab((CreativeTabs) materials); - if (MATERIAL_ASH != null) { - swordAsh = (new LOTRItemSword(MATERIAL_ASH)).addWeaponDamage(4.25F).setUnlocalizedName("lotr:swordAsh").setTextureName("lotr:swordAsh"); - staffAsh = (new LOTRItemPolearm(MATERIAL_ASH)).addWeaponDamage(5.5F).setUnlocalizedName("lotr:staffAsh").setTextureName("lotr:staffAsh"); - daggerAsh = (new LOTRItemDagger(MATERIAL_ASH)).addWeaponDamage(6.75F).setUnlocalizedName("lotr:daggerAsh").setTextureName("lotr:daggerAsh"); - hammerAsh = (new LOTRItemHammer(MATERIAL_ASH)).addWeaponDamage(5.5F).setUnlocalizedName("lotr:hammerAsh").setTextureName("lotr:hammerAsh"); - battleaxeAsh = (new LOTRItemBattleaxe(MATERIAL_ASH)).addWeaponDamage(5.5F).setUnlocalizedName("lotr:battleaxeAsh").setTextureName("lotr:battleaxeAsh"); - bowAsh = (new CinderBow(MATERIAL_ASH, 1.5)).setDrawTime(16).setUnlocalizedName("lotr:bowAsh").setTextureName("lotr:bowAsh"); - pikeAsh = (new LOTRItemPike(MATERIAL_ASH)).addWeaponDamage(5.0F).setUnlocalizedName("lotr:pikeAsh").setTextureName("lotr:pikeAsh"); - spearAsh = (new LOTRItemSpear(MATERIAL_ASH)).addWeaponDamage(5.0F).setUnlocalizedName("lotr:spearAsh").setTextureName("lotr:spearAsh"); - - ItemRegistration.register(ingotAsh, "ingotAsh", 6100); - ItemRegistration.register(swordAsh, "swordAsh", 6101); - ItemRegistration.register(daggerAsh, "daggerAsh", 6102); - ItemRegistration.register(hammerAsh, "hammerAsh", 6103); - ItemRegistration.register(battleaxeAsh, "battleaxeAsh", 6104); - ItemRegistration.register(bowAsh, "bowAsh", 6105); - ItemRegistration.register(pikeAsh, "pikeAsh", 6106); - ItemRegistration.register(spearAsh, "spearAsh", 6107); - ItemRegistration.register(staffAsh, "staffAsh", 6108); - } else { - // Log an error or handle the case where the material could not be found - System.err.println("Failed to find MATERIAL_ASH material for armor initialization."); - } - linkLOTRWeapon(swordAsh, "swordAsh"); - linkLOTRWeapon(daggerAsh, "daggerAsh"); - linkLOTRWeapon(hammerAsh, "hammerAsh"); - linkLOTRWeapon(battleaxeAsh, "battleaxeAsh"); - linkLOTRWeapon(bowAsh, "bowAsh"); - linkLOTRWeapon(pikeAsh, "pikeAsh"); - linkLOTRWeapon(spearAsh, "spearAsh"); - linkLOTRWeapon(staffAsh, "staffAsh"); - - // Red Dwarves - redDwarfSteel = new Item().setUnlocalizedName("lotr:redDwarfSteel").setTextureName("lotr:redDwarfSteel").setCreativeTab((CreativeTabs) materials); - ItemRegistration.register(redDwarfSteel, "redDwarfSteel", 6002); - - MATERIAL_RED_DWARF = getLOTRMaterialByName("RED_DWARF"); - if (MATERIAL_RED_DWARF != null) { - helmetRedDwarf = (new LOTRItemArmor(MATERIAL_RED_DWARF, 0, "helmet")).setUnlocalizedName("lotr:helmetRedDwarf").setTextureName("lotr:helmetRedDwarf"); - bodyRedDwarf = (new LOTRItemArmor(MATERIAL_RED_DWARF, 1)).setUnlocalizedName("lotr:bodyRedDwarf").setTextureName("lotr:bodyRedDwarf"); - legsRedDwarf = (new LOTRItemArmor(MATERIAL_RED_DWARF, 2)).setUnlocalizedName("lotr:legsRedDwarf").setTextureName("lotr:legsRedDwarf"); - bootsRedDwarf = (new LOTRItemArmor(MATERIAL_RED_DWARF, 3)).setUnlocalizedName("lotr:bootsRedDwarf").setTextureName("lotr:bootsRedDwarf"); - spearRedDwarf = (new LOTRItemSpear(MATERIAL_RED_DWARF)).setUnlocalizedName("lotr:spearRedDwarf").setTextureName("lotr:spearRedDwarf"); - swordRedDwarf = (new LOTRItemSword(MATERIAL_RED_DWARF)).setUnlocalizedName("lotr:swordRedDwarf").setTextureName("lotr:swordRedDwarf"); - battleaxeRedDwarf = (new LOTRItemBattleaxe(MATERIAL_RED_DWARF)).setUnlocalizedName("lotr:battleaxeRedDwarf").setTextureName("lotr:battleaxeRedDwarf"); - pikeRedDwarf = (new LOTRItemPike(MATERIAL_RED_DWARF)).setUnlocalizedName("lotr:pikeRedDwarf").setTextureName("lotr:pikeRedDwarf"); - hammerRedDwarf = (new LOTRItemHammer(MATERIAL_RED_DWARF)).setUnlocalizedName("lotr:hammerRedDwarf").setTextureName("lotr:hammerRedDwarf"); - daggerRedDwarf = (new LOTRItemDagger(MATERIAL_RED_DWARF)).setUnlocalizedName("lotr:daggerRedDwarf").setTextureName("lotr:daggerRedDwarf"); - daggerRedDwarfPoisoned = (new LOTRItemDagger(MATERIAL_RED_DWARF, LOTRItemDagger.DaggerEffect.POISON)).setUnlocalizedName("lotr:daggerRedDwarfPoisoned").setTextureName("lotr:daggerRedDwarfPoisoned"); - crossbowRedDwarf = (new LOTRItemCrossbow(MATERIAL_RED_DWARF)).setUnlocalizedName("lotr:crossbowRedDwarf").setTextureName("lotr:crossbowRedDwarf"); - boarArmorRedDwarf = (new LOTRItemMountArmor(MATERIAL_RED_DWARF, LOTRItemMountArmor.Mount.BOAR)).setUnlocalizedName("lotr:boarArmorRedDwarf").setTextureName("lotr:boarArmorRedDwarf"); - - ItemRegistration.register(helmetRedDwarf, "helmetRedDwarf", 6400); - ItemRegistration.register(bodyRedDwarf, "bodyRedDwarf", 6401); - ItemRegistration.register(legsRedDwarf, "legsRedDwarf", 6402); - ItemRegistration.register(bootsRedDwarf, "bootsRedDwarf", 6403); - ItemRegistration.register(spearRedDwarf, "spearRedDwarf", 6404); - ItemRegistration.register(swordRedDwarf, "swordRedDwarf", 6405); - ItemRegistration.register(battleaxeRedDwarf, "battleaxeRedDwarf", 6406); - ItemRegistration.register(pikeRedDwarf, "pikeRedDwarf", 6407); - ItemRegistration.register(hammerRedDwarf, "hammerRedDwarf", 6408); - ItemRegistration.register(daggerRedDwarf, "daggerRedDwarf", 6409); - ItemRegistration.register(daggerRedDwarfPoisoned, "daggerRedDwarfPoisoned", 6410); - ItemRegistration.register(crossbowRedDwarf, "crossbowRedDwarf", 6411); - ItemRegistration.register(boarArmorRedDwarf, "boarArmorRedDwarf", 6412); -// System.out.println("Registered red dwarf equipment"); - } else { - // Log an error or handle the case where the material could not be found - System.err.println("Failed to find RED_DWARF material for armor initialization."); - } - linkLOTRWeapon(spearRedDwarf, "spearRedDwarf"); - linkLOTRWeapon(swordRedDwarf, "swordRedDwarf"); - linkLOTRWeapon(battleaxeRedDwarf, "battleaxeRedDwarf"); - linkLOTRWeapon(pikeRedDwarf, "pikeRedDwarf"); - linkLOTRWeapon(hammerRedDwarf, "hammerRedDwarf"); - linkLOTRWeapon(daggerRedDwarf, "daggerRedDwarf"); - linkLOTRWeapon(daggerRedDwarfPoisoned, "daggerRedDwarfPoisoned"); - linkLOTRWeapon(crossbowRedDwarf, "crossbowRedDwarf"); - - // Limwaith - - bonemold = new Item().setUnlocalizedName("lotr:bonemold").setTextureName("lotr:bonemold").setCreativeTab((CreativeTabs) materials); - ItemRegistration.register(bonemold, "bonemold", 6000); - - MATERIAL_LIMWAITH_WOOD = getLOTRMaterialByName("LIMWAITH_WOOD"); - MATERIAL_BONEMOLD = getLOTRMaterialByName("BONEMOLD"); - if (MATERIAL_LIMWAITH_WOOD != null && MATERIAL_BONEMOLD != null) { - helmetLimwaith = (new LOTRItemArmor(MATERIAL_LIMWAITH_WOOD, 0)).setUnlocalizedName("lotr:helmetLimwaith").setTextureName("lotr:helmetLimwaith"); - bodyLimwaith = (new LOTRItemArmor(MATERIAL_LIMWAITH_WOOD, 1)).setUnlocalizedName("lotr:bodyLimwaith").setTextureName("lotr:bodyLimwaith"); - legsLimwaith = (new LOTRItemArmor(MATERIAL_LIMWAITH_WOOD, 2)).setUnlocalizedName("lotr:legsLimwaith").setTextureName("lotr:legsLimwaith"); - bootsLimwaith = (new LOTRItemArmor(MATERIAL_LIMWAITH_WOOD, 3)).setUnlocalizedName("lotr:bootsLimwaith").setTextureName("lotr:bootsLimwaith"); - - helmetboneLimwaith = (new LOTRItemArmor(MATERIAL_BONEMOLD, 0)).setUnlocalizedName("lotr:helmetboneLimwaith").setTextureName("lotr:helmetboneLimwaith"); - bodyboneLimwaith = (new LOTRItemArmor(MATERIAL_BONEMOLD, 1)).setUnlocalizedName("lotr:bodyboneLimwaith").setTextureName("lotr:bodyboneLimwaith"); - legsboneLimwaith = (new LOTRItemArmor(MATERIAL_BONEMOLD, 2)).setUnlocalizedName("lotr:legsboneLimwaith").setTextureName("lotr:legsboneLimwaith"); - bootsboneLimwaith = (new LOTRItemArmor(MATERIAL_BONEMOLD, 3)).setUnlocalizedName("lotr:bootsboneLimwaith").setTextureName("lotr:bootsboneLimwaith"); - - spearLimwaith = (new LOTRItemSpear(MATERIAL_BONEMOLD)).setUnlocalizedName("lotr:spearLimwaith").setTextureName("lotr:spearLimwaith"); - truncheonLimwaith = (new LOTRItemSword(MATERIAL_BONEMOLD)).setUnlocalizedName("lotr:truncheonLimwaith").setTextureName("lotr:truncheonLimwaith"); - battleaxeLimwaith = (new LOTRItemBattleaxe(MATERIAL_BONEMOLD)).setUnlocalizedName("lotr:battleaxeLimwaith").setTextureName("lotr:battleaxeLimwaith"); - tridentLimwaith = (new LOTRItemTrident(MATERIAL_BONEMOLD)).setUnlocalizedName("lotr:tridentLimwaith").setTextureName("lotr:tridentLimwaith"); - daggerLimwaith = (new LOTRItemDagger(MATERIAL_BONEMOLD)).setUnlocalizedName("lotr:daggerLimwaith").setTextureName("lotr:daggerLimwaith"); - daggerLimwaithPoisoned = (new LOTRItemDagger(MATERIAL_BONEMOLD, LOTRItemDagger.DaggerEffect.POISON)).setUnlocalizedName("lotr:daggerLimwaithPoisoned").setTextureName("lotr:daggerLimwaithPoisoned"); - blowgunLimwaith = (new LOTRItemBlowgun(LOTRMaterial.TAUREDAIN)).setUnlocalizedName("lotr:blowgunLimwaith").setTextureName("lotr:blowgunLimwaith"); - - ItemRegistration.register(helmetLimwaith, "helmetLimwaith", 6420); - ItemRegistration.register(bodyLimwaith, "bodyLimwaith", 6421); - ItemRegistration.register(legsLimwaith, "legsLimwaith", 6422); - ItemRegistration.register(bootsLimwaith, "bootsLimwaith", 6423); - - ItemRegistration.register(helmetboneLimwaith, "helmetboneLimwaith", 6424); - ItemRegistration.register(bodyboneLimwaith, "bodyboneLimwaith", 6425); - ItemRegistration.register(legsboneLimwaith, "legsboneLimwaith", 6426); - ItemRegistration.register(bootsboneLimwaith, "bootsboneLimwaith", 6427); - - ItemRegistration.register(spearLimwaith, "spearLimwaith", 6428); - ItemRegistration.register(tridentLimwaith, "tridentLimwaith", 6429); - ItemRegistration.register(truncheonLimwaith, "truncheonLimwaith", 6430); - ItemRegistration.register(battleaxeLimwaith, "battleaxeLimwaith", 6431); - ItemRegistration.register(daggerLimwaith, "daggerLimwaith", 6432); - ItemRegistration.register(daggerLimwaithPoisoned, "daggerLimwaithPoisoned", 6433); - ItemRegistration.register(blowgunLimwaith, "blowgunLimwaith", 6434); - } else { - System.err.println("Failed to find LIMWAITH material for armor initialization."); - } - linkLOTRWeapon(spearLimwaith, "spearLimwaith"); - linkLOTRWeapon(truncheonLimwaith, "truncheonLimwaith"); - linkLOTRWeapon(battleaxeLimwaith, "battleaxeLimwaith"); - linkLOTRWeapon(tridentLimwaith, "tridentLimwaith"); - linkLOTRWeapon(daggerLimwaith, "daggerLimwaith"); - linkLOTRWeapon(daggerLimwaithPoisoned, "daggerLimwaithPoisoned"); - linkLOTRWeapon(blowgunLimwaith, "blowgunLimwaith"); - - //Bree - MATERIAL_BREE = getLOTRMaterialByName("BREE"); - if (MATERIAL_BREE != null) { - helmetBreeKettle = (new LOTRItemArmor(MATERIAL_BREE, 0, "helmet")).setUnlocalizedName("lotr:helmetBreeKettle").setTextureName("lotr:breekettlehelmet"); - helmetBree = (new LOTRItemArmor(MATERIAL_BREE, 0)).setUnlocalizedName("lotr:helmetBree").setTextureName("lotr:helmetBree"); - bodyBree = (new LOTRItemArmor(MATERIAL_BREE, 1)).setUnlocalizedName("lotr:bodyBree").setTextureName("lotr:bodyBree"); - legsBree = (new LOTRItemArmor(MATERIAL_BREE, 2)).setUnlocalizedName("lotr:legsBree").setTextureName("lotr:legsBree"); - bootsBree = (new LOTRItemArmor(MATERIAL_BREE, 3)).setUnlocalizedName("lotr:bootsBree").setTextureName("lotr:bootsBree"); - swordBree = (new LOTRItemSword(MATERIAL_BREE)).setUnlocalizedName("lotr:swordBree").setTextureName("lotr:swordBree"); - - ItemRegistration.register(helmetBreeKettle, "breekettle", 6440); - ItemRegistration.register(helmetBree, "helmetBree", 6441); - ItemRegistration.register(bodyBree, "bodyBree", 6442); - ItemRegistration.register(legsBree, "legsBree", 6443); - ItemRegistration.register(bootsBree, "bootsBree", 6444); - ItemRegistration.register(swordBree, "swordBree", 6445); - } else { - System.err.println("Failed to find BREE material for armor initialization."); - } - linkLOTRWeapon(swordBree, "swordBree"); - - //Elite Armors - //Elite Armors - MATERIAL_SERPENT = getLOTRMaterialByName("SERPENT"); - if (MATERIAL_SERPENT != null) { - helmetserpent = (new LOTRItemArmor(MATERIAL_SERPENT, 0)).setUnlocalizedName("lotr:helmetserpent").setTextureName("lotr:helmetserpent").setCreativeTab(null); - bodyserpent = (new LOTRItemArmor(MATERIAL_SERPENT, 1, "chestplate")).setUnlocalizedName("lotr:bodyserpent").setTextureName("lotr:bodyserpent").setCreativeTab(null); - legsserpent = (new LOTRItemArmor(MATERIAL_SERPENT, 2)).setUnlocalizedName("lotr:legsserpent").setTextureName("lotr:legsserpent").setCreativeTab(null); - bootsserpent = (new LOTRItemArmor(MATERIAL_SERPENT, 3)).setUnlocalizedName("lotr:bootsserpent").setTextureName("lotr:bootsserpent").setCreativeTab(null); - - ItemRegistration.register(helmetserpent, "helmetserpent", 6800); - ItemRegistration.register(bodyserpent, "bodyserpent", 6801); - ItemRegistration.register(legsserpent, "legsserpent", 6802); - ItemRegistration.register(bootsserpent, "bootsserpent", 6803); - } else { - System.err.println("Failed to find SERPENT material for armor initialization."); - } - MATERIAL_USURPER = getLOTRMaterialByName("USURPER"); - if (MATERIAL_USURPER != null) { - helmetUsurper = (new LOTRItemArmor(MATERIAL_USURPER, 0, "helmet")).setUnlocalizedName("lotr:helmetUsurper").setTextureName("lotr:helmetUsurper").setCreativeTab(null); - bodyUsurper = (new LOTRItemArmor(MATERIAL_USURPER, 1)).setUnlocalizedName("lotr:bodyUsurper").setTextureName("lotr:bodyUsurper").setCreativeTab(null); - legsUsurper = (new LOTRItemArmor(MATERIAL_USURPER, 2)).setUnlocalizedName("lotr:legsUsurper").setTextureName("lotr:legsUsurper").setCreativeTab(null); - bootsUsurper = (new LOTRItemArmor(MATERIAL_USURPER, 3)).setUnlocalizedName("lotr:bootsUsurper").setTextureName("lotr:bootsUsurper").setCreativeTab(null); - - - ItemRegistration.register(helmetUsurper, "helmetUsurper", 6804); - ItemRegistration.register(bodyUsurper, "bodyUsurper", 6805); - ItemRegistration.register(legsUsurper, "legsUsurper", 6806); - ItemRegistration.register(bootsUsurper, "bootsUsurper", 6807); - - } else { - System.err.println("Failed to find USURPER material for armor initialization."); - } - MATERIAL_WARLORD = getLOTRMaterialByName("WARLORD"); - if (MATERIAL_WARLORD != null) { - helmetWarlord = (new LOTRItemArmor(MATERIAL_WARLORD, 0, "helmet")).setUnlocalizedName("lotr:helmetWarlord").setTextureName("lotr:helmetWarlord").setCreativeTab(null); - bodyWarlord = (new LOTRItemArmor(MATERIAL_WARLORD, 1)).setUnlocalizedName("lotr:bodyWarlord").setTextureName("lotr:bodyWarlord").setCreativeTab(null); - legsWarlord = (new LOTRItemArmor(MATERIAL_WARLORD, 2)).setUnlocalizedName("lotr:legsWarlord").setTextureName("lotr:legsWarlord").setCreativeTab(null); - bootsWarlord = (new LOTRItemArmor(MATERIAL_WARLORD, 3)).setUnlocalizedName("lotr:bootsWarlord").setTextureName("lotr:bootsWarlord").setCreativeTab(null); - maceWarlord = (new LOTRItemHammer(MATERIAL_WARLORD)).setUnlocalizedName("lotr:maceWarlord").setTextureName("lotr:maceWarlord"); - - ItemRegistration.register(helmetWarlord, "helmetWarlord", 6808); - ItemRegistration.register(bodyWarlord, "bodyWarlord", 6809); - ItemRegistration.register(legsWarlord, "legsWarlord", 6810); - ItemRegistration.register(bootsWarlord, "bootsWarlord", 6811); - ItemRegistration.registerItem(maceWarlord, "maceWarlord", 6812); - } else { - System.err.println("Failed to find WARLORD material for armor initialization."); - } - linkLOTRWeapon(maceWarlord, "maceWarlord"); - - //Rhudaur - MATERIAL_RHUDAUR = getLOTRMaterialByName("RHUDAUR"); - if (MATERIAL_RHUDAUR != null) { - helmetRhudaur = (new LOTRItemArmor(MATERIAL_RHUDAUR, 0, "helmet")).setUnlocalizedName("lotr:helmetRhudaur").setTextureName("lotr:helmetRhudaur"); - bodyRhudaur = (new LOTRItemArmor(MATERIAL_RHUDAUR, 1)).setUnlocalizedName("lotr:bodyRhudaur").setTextureName("lotr:bodyRhudaur"); - legsRhudaur = (new LOTRItemArmor(MATERIAL_RHUDAUR, 2)).setUnlocalizedName("lotr:legsRhudaur").setTextureName("lotr:legsRhudaur"); - bootsRhudaur = (new LOTRItemArmor(MATERIAL_RHUDAUR, 3)).setUnlocalizedName("lotr:bootsRhudaur").setTextureName("lotr:bootsRhudaur"); - - ItemRegistration.register(helmetRhudaur, "helmetRhudaur",6450); - ItemRegistration.register(bodyRhudaur, "bodyRhudaur", 6451); - ItemRegistration.register(legsRhudaur, "legsRhudaur", 6452); - ItemRegistration.register(bootsRhudaur, "bootsRhudaur", 6453); - } else { - System.err.println("Failed to find RHUDAUR material for armor initialization."); - } - //Arnor - MATERIAL_BATTLENUN = getLOTRMaterialByName("BATTLENUN"); - if (MATERIAL_BATTLENUN != null) { - helmetArnorBanner = (new LOTRItemArmor(MATERIAL_BATTLENUN, 0)).setUnlocalizedName("lotr:helmetArnorBanner").setTextureName("lotr:helmetArnorBanner"); - bodyArnorBanner = (new LOTRItemArmor(MATERIAL_BATTLENUN, 1)).setUnlocalizedName("lotr:bodyArnorBanner").setTextureName("lotr:bodyArnorBanner"); - legsArnorBanner = (new LOTRItemArmor(MATERIAL_BATTLENUN, 2)).setUnlocalizedName("lotr:legsArnorBanner").setTextureName("lotr:legsArnorBanner"); - bootsArnorBanner = (new LOTRItemArmor(MATERIAL_BATTLENUN, 3)).setUnlocalizedName("lotr:bootsArnorBanner").setTextureName("lotr:bootsArnorBanner"); - maceArnor = (new LOTRItemHammer(LOTRMaterial.ARNOR)).setUnlocalizedName("lotr:maceArnor").setTextureName("lotr:maceArnor"); - - ItemRegistration.register(helmetArnorBanner, "helmetArnorBanner", 6460); - ItemRegistration.register(bodyArnorBanner, "bodyArnorBanner", 6461); - ItemRegistration.register(legsArnorBanner, "legsArnorBanner", 6462); - ItemRegistration.register(bootsArnorBanner, "bootsArnorBanner", 6463); - ItemRegistration.register(maceArnor, "maceArnor", 6464); - } else { - System.err.println("Failed to find ARNOR material for armor initialization."); - } - linkLOTRWeapon(maceArnor, "maceArnor"); - } - - public static ModContainer getModContainer() { - return FMLCommonHandler.instance() - .findContainerFor(instance); - } - - public void linkLOTRWeapon(Item item, String weapon_name) { - try { - Field field = LOTRMod.class.getField(weapon_name); - field.set(null, item); - } catch (Exception e) { - System.err.println("[CinderLoE] linkLOTRWeapon: Failed to find field " + weapon_name + " in LOTRMod!"); - } - } - - public static class CommonProxy { - public void setup() { - } - } - - public static class ClientProxy extends CommonProxy { - @Override - public void setup() { - // RenderingRegistry.registerEntityRenderingHandler(HaradLevy.class, new LOTRRenderNearHaradrim()); - // RenderingRegistry.registerEntityRenderingHandler(DwarfLevy.class, new LOTRRenderDwarf()); - - RenderingRegistry.registerEntityRenderingHandler(EntityWarDart.class, new RenderWarDart()); - RenderingRegistry.registerEntityRenderingHandler(BladorthinSmith.class, new LOTRRenderDorwinionElfVintner()); - RenderingRegistry.registerEntityRenderingHandler(DarkSpider.class, new RenderDarkSpider()); - RenderingRegistry.registerEntityRenderingHandler(CorruptDwarf.class, new RenderCorruptDwarf()); - RenderingRegistry.registerEntityRenderingHandler(CorruptElf.class, new RenderCorruptElf()); - RenderingRegistry.registerEntityRenderingHandler(CorruptEnt.class, new RenderCorruptEnt()); - RenderingRegistry.registerEntityRenderingHandler(CorruptHobbit.class, new RenderCorruptHobbit()); - RenderingRegistry.registerEntityRenderingHandler(CorruptMan.class, new RenderCorruptMan()); - RenderingRegistry.registerEntityRenderingHandler(CorruptOrc.class, new RenderCorruptOrc()); - RenderingRegistry.registerEntityRenderingHandler(CorruptSkeleton.class, new RenderCorruptSkeleton()); - RenderingRegistry.registerEntityRenderingHandler(CorruptSkeletonArcher.class, new RenderCorruptSkeleton()); - - RenderingRegistry.registerEntityRenderingHandler(SarumanFireball.class, new RenderSarumanFireball()); - RenderingRegistry.registerEntityRenderingHandler(SarumanWhiteFireball.class, new RenderSarumanWhiteFireball()); - RenderingRegistry.registerEntityRenderingHandler(Renegade.class, new RenderRenegade()); - RenderingRegistry.registerEntityRenderingHandler(RenegadeCaptain.class, new RenderRenegade()); - RenderingRegistry.registerEntityRenderingHandler(Wraith.class, new RenderWraith()); - - RenderingRegistry.registerEntityRenderingHandler(RedDwarfWarrior.class, new LOTRRenderDwarf()); - RenderingRegistry.registerEntityRenderingHandler(RedDwarfArbalest.class, new LOTRRenderDwarf()); - RenderingRegistry.registerEntityRenderingHandler(RedDwarfBannerBearer.class, new LOTRRenderDwarf()); - RenderingRegistry.registerEntityRenderingHandler(RedDwarfCommander.class, new LOTRRenderDwarf()); - RenderingRegistry.registerEntityRenderingHandler(RedDwarfSmith.class, new LOTRRenderDwarf()); - - RenderingRegistry.registerEntityRenderingHandler(Limwaith.class, new RenderLimwaith()); - RenderingRegistry.registerEntityRenderingHandler(LimwaithFishmonger.class, new RenderLimwaith()); - RenderingRegistry.registerEntityRenderingHandler(LimwaithShaman.class, new RenderLimwaithShaman()); - RenderingRegistry.registerEntityRenderingHandler(LimwaithWarrior.class, new RenderLimwaith()); - RenderingRegistry.registerEntityRenderingHandler(LimwaithBoneWarrior.class, new RenderLimwaith()); - RenderingRegistry.registerEntityRenderingHandler(LimwaithBlowgunner.class, new RenderLimwaith()); - RenderingRegistry.registerEntityRenderingHandler(LimwaithBannerBearer.class, new RenderLimwaith()); - RenderingRegistry.registerEntityRenderingHandler(LimwaithChieftain.class, new RenderLimwaith()); - - //RenderingRegistry.registerEntityRenderingHandler(LimwaithCrocodile.class, new RenderTamedCrocodile()); - RenderingRegistry.registerEntityRenderingHandler(FangornBear.class, new RenderFangornBear()); - RenderingRegistry.registerEntityRenderingHandler(FangornWildBoar.class, new RenderFangornWildBoar()); - RenderingRegistry.registerEntityRenderingHandler(FangornAuroch.class, new RenderFangornAuroch()); - RenderingRegistry.registerEntityRenderingHandler(FangornElk.class, new RenderFangornElk()); - RenderingRegistry.registerEntityRenderingHandler(FangornWolf.class, new RenderFangornWolf()); - - RenderingRegistry.registerEntityRenderingHandler(ArnorSoldier.class, new LOTRRenderDunedain()); - RenderingRegistry.registerEntityRenderingHandler(ArnorSoldierArcher.class, new LOTRRenderDunedain()); - RenderingRegistry.registerEntityRenderingHandler(ArnorCaptain.class, new LOTRRenderDunedain()); - RenderingRegistry.registerEntityRenderingHandler(ArnorBannerBearer.class, new LOTRRenderDunedain()); - RenderingRegistry.registerEntityRenderingHandler(BattleNun.class, new RenderBattleNun()); - - RenderingRegistry.registerEntityRenderingHandler(BreeSoldier.class, new LOTRRenderBreeMan()); - RenderingRegistry.registerEntityRenderingHandler(BreeCrossbowman.class, new LOTRRenderBreeMan()); - RenderingRegistry.registerEntityRenderingHandler(BreeCaptain.class, new LOTRRenderBreeMan()); - RenderingRegistry.registerEntityRenderingHandler(BreeSoldierBannerBearer.class, new LOTRRenderBreeMan()); - RenderingRegistry.registerEntityRenderingHandler(BreeOutrider.class, new LOTRRenderBreeMan()); - - RenderingRegistry.registerEntityRenderingHandler(HobbitBannerBearer.class, new LOTRRenderHobbit()); - - RenderingRegistry.registerEntityRenderingHandler(LOTREntitySauron.class, new LOTRRenderSauron()); - RenderingRegistry.registerEntityRenderingHandler(UtumnoSlaveTrader.class, new RenderUtumnoSlave()); - ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMistBlock.class, (TileEntitySpecialRenderer)new LOTRRenderUtumnoPortal()); - - RenderingRegistry.registerEntityRenderingHandler(Sirrandrai.class, new LOTRRenderElf()); - RenderingRegistry.registerEntityRenderingHandler(TauredainTrueBlood.class, new LOTRRenderTauredain()); - RenderingRegistry.registerEntityRenderingHandler(EsgarothSoldier.class, new LOTRRenderDaleMan()); - RenderingRegistry.registerEntityRenderingHandler(MorgulOrc.class, new LOTRRenderOrc()); - RenderingRegistry.registerEntityRenderingHandler(NorthernOrc.class, new LOTRRenderOrc()); - } - } - - public static class ServerProxy extends CommonProxy { - @Override - public void setup() { - } - } - - public void modifySpawnLists() { - try { - // Retrieve the constructor of LOTRSpawnList class - Constructor constructor = LOTRSpawnList.class.getDeclaredConstructor(LOTRSpawnEntry[].class); - constructor.setAccessible(true); // Make the private constructor accessible - - // RED_DWARF is initialized earlier in this class - LOTRSpawnList RED_DWARF = constructor.newInstance((Object) new LOTRSpawnEntry[]{ - new LOTRSpawnEntry(LOTREntityDwarf.class, 100, 4, 4), - new LOTRSpawnEntry(LOTREntityDwarfMiner.class, 15, 1, 3), - new LOTRSpawnEntry(RedDwarfWarrior.class, 20, 4, 4), - new LOTRSpawnEntry(RedDwarfArbalest.class, 10, 4, 4) - }); - - LOTRSpawnList LIMWAITH = constructor.newInstance((Object) new LOTRSpawnEntry[]{ - new LOTRSpawnEntry(Limwaith.class, 100, 4, 6), - new LOTRSpawnEntry(LimwaithWarrior.class, 20, 4, 6), - new LOTRSpawnEntry(LimwaithBlowgunner.class, 15, 1, 3), - new LOTRSpawnEntry(LimwaithBoneWarrior.class, 10, 1, 3) - }); - - - Field redDwarfField = LOTRSpawnList.class.getDeclaredField("RED_DWARF"); - redDwarfField.setAccessible(true); - redDwarfField.set(null, RED_DWARF); - - Field limwaithField = LOTRSpawnList.class.getDeclaredField("LIMWAITH"); - limwaithField.setAccessible(true); - limwaithField.set(null, LIMWAITH); - - - if (LOTRBiome.redMountains != null) { - LOTRBiome.redMountains.npcSpawnList.newFactionList(500) - .add(new LOTRBiomeSpawnList.SpawnListContainer[]{ - LOTRBiomeSpawnList.entry((LOTRSpawnList) redDwarfField.get(null), 10) - }); - } else { - System.out.println("Red Mountains biome is not available."); - } - if (LOTRBiome.farHaradMangrove != null) { - LOTRBiome.farHaradMangrove.npcSpawnList.newFactionList(100) - .add(new LOTRBiomeSpawnList.SpawnListContainer[]{ - LOTRBiomeSpawnList.entry((LOTRSpawnList) limwaithField.get(null), 10) - }); - } else { - System.out.println("Mangrove biome is not available."); - } - } catch (Exception e) { - System.err.println("[CinderLoE] linkLOTRWeapon: Failed to find field RED_DWARF in LOTRSpawnList!"); - } - } - - public static LOTRMaterial getLOTRMaterialByName(String materialName) { - try { - Field materialField = LOTRMaterial.class.getField(materialName); - return (LOTRMaterial) materialField.get(null); - } catch (Exception e) { - e.printStackTrace(); - return null; - } - } - - // Debug method - public static void printClass(String className) { - String resourcePath = "/" + className.replace('.', '/') + ".class"; - InputStream in = CinderLoE.class.getResourceAsStream(resourcePath); - if (in == null) { - System.out.println("Class resource not found: " + resourcePath); - return; - } - try { - ClassReader classReader = new ClassReader(in); - classReader.accept(new TraceClassVisitor(new PrintWriter(System.out)), 0); - } catch (IOException e) { - e.printStackTrace(); - } finally { - try { - in.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - } - - @SubscribeEvent - @SideOnly(Side.SERVER) - public void onWorldLoad(WorldEvent.Load event) { - // == Crop Blocks == - CinderCore.registerItemFallback(Block.getIdFromBlock(onionCrop), Block.getIdFromBlock(LOTRMod.turnipCrop), "cinder_loe", "1.2.1"); - CinderCore.registerItemFallback(Block.getIdFromBlock(cabbageCrop), Block.getIdFromBlock(LOTRMod.lettuceCrop), "cinder_loe", "1.2.1"); - // == Food Items == - CinderCore.registerItemFallback(Item.getIdFromItem(onion), Item.getIdFromItem(LOTRMod.turnip), "cinder_loe", "1.2.1"); - CinderCore.registerItemFallback(Item.getIdFromItem(cabbage), Item.getIdFromItem(LOTRMod.lettuce), "cinder_loe", "1.2.1"); - CinderCore.registerItemFallback(Item.getIdFromItem(spice), Item.getIdFromItem(LOTRMod.dye), "cinder_loe", "1.2.1"); - CinderCore.registerItemFallback(Item.getIdFromItem(spicedHam), Item.getIdFromItem(LOTRMod.gammon), "cinder_loe", "1.2.1"); - CinderCore.registerItemFallback(Item.getIdFromItem(pelmen), Item.getIdFromItem(LOTRMod.cram), "cinder_loe", "1.2.1"); - CinderCore.registerItemFallback(Item.getIdFromItem(lightStew), Item.getIdFromItem(LOTRMod.leekSoup), "cinder_loe", "1.2.1"); - CinderCore.registerItemFallback(Item.getIdFromItem(chocolatebar),Item.getIdFromItem(LOTRMod.marzipanChocolate), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(fruitsalad),Item.getIdFromItem(LOTRMod.leekSoup), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(flour),Item.getIdFromItem(Items.sugar), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(dough),Item.getIdFromItem(Items.gunpowder), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(pasta),Item.getIdFromItem(Items.wheat), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(pretzel),Item.getIdFromItem(Items.bread), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(halva),Item.getIdFromItem(Items.bread),"cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(doner_kebab),Item.getIdFromItem(Items.bread),"cinder_loe", "1.2.5"); - // CinderCore.registerItemFallback(Item.getIdFromItem(honey),Item.getIdFromItem(LOTRMod.mapleSyrup), "cinder_loe", "1.2.5"); - - //== Blocks== - CinderCore.registerItemFallback(Block.getIdFromBlock(cinderBlock), Block.getIdFromBlock(Blocks.netherrack), "cinder_loe", "1.0"); - // CinderCore.registerItemFallback(Block.getIdFromBlock(barricade), Block.getIdFromBlock(Blocks.fence), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Block.getIdFromBlock(ivoryBlock), Block.getIdFromBlock(LOTRMod.boneBlock), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Block.getIdFromBlock(blockRedDwarfSteel), Block.getIdFromBlock(LOTRMod.blockOreStorage), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Block.getIdFromBlock(chandelierRedDwarf), Block.getIdFromBlock(LOTRMod.chandelier), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Block.getIdFromBlock(barsRedDwarf), Block.getIdFromBlock(LOTRMod.dwarfBars), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Block.getIdFromBlock(furBundle), Block.getIdFromBlock(Blocks.hay_block), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Block.getIdFromBlock(leatherBundle), Block.getIdFromBlock(Blocks.hay_block), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Block.getIdFromBlock(reedBale), Block.getIdFromBlock(Blocks.hay_block), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Block.getIdFromBlock(dwarvenBrickRuned), Block.getIdFromBlock(LOTRMod.brick), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Block.getIdFromBlock(fishBarrel), Block.getIdFromBlock(LOTRMod.woodBeam1), "cinder_loe", "1.1"); - //CinderCore.registerItemFallback(Block.getIdFromBlock(rustedsword), Block.getIdFromBlock(Blocks.nether_brick_fence), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Block.getIdFromBlock(silverChain), Block.getIdFromBlock(LOTRMod.orcChain), "cinder_loe", "1.1"); - CinderCore.registerItemFallback(Block.getIdFromBlock(goldChain), Block.getIdFromBlock(LOTRMod.orcChain), "cinder_loe", "1.1"); - CinderCore.registerItemFallback(Block.getIdFromBlock(ironChain), Block.getIdFromBlock(LOTRMod.orcChain), "cinder_loe", "1.1"); - CinderCore.registerItemFallback(Block.getIdFromBlock(bronzeChain), Block.getIdFromBlock(LOTRMod.orcChain), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Block.getIdFromBlock(mistBlock), Block.getIdFromBlock(LOTRMod.utumnoPortal), "cinder_loe", "1.1"); - CinderCore.registerItemFallback(Block.getIdFromBlock(cutDrystone), Block.getIdFromBlock(LOTRMod.cobblebrick), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Block.getIdFromBlock(cindercobble), Block.getIdFromBlock(LOTRMod.cobblebrick), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Block.getIdFromBlock(cinderfur), Block.getIdFromBlock(Blocks.wool), "cinder_loe", "1.2.4"); - CinderCore.registerItemFallback(Block.getIdFromBlock(furCarpet), Block.getIdFromBlock(Blocks.carpet), "cinder_loe", "1.2.4"); - CinderCore.registerItemFallback(Block.getIdFromBlock(reeflessCoral), Block.getIdFromBlock(LOTRMod.coralReef), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Block.getIdFromBlock(plaster), Block.getIdFromBlock(Blocks.brick_block), "cinder_loe", "1.2.1"); - CinderCore.registerItemFallback(Block.getIdFromBlock(voidblock), Block.getIdFromBlock(Blocks.coal_block), "cinder_loe", "1.2.1"); - // CinderCore.registerItemFallback(Block.getIdFromBlock(verticalWeaponRack), Block.getIdFromBlock(Blocks.fence), "cinder_loe", "1.2.4"); - // == Gates == - //CinderCore.registerItemFallback(Block.getIdFromBlock(gatecharredportcullis), Block.getIdFromBlock(LOTRMod.gateWoodenCross), "cinder_loe", "1.2.5"); - // == Red Dwarf Items== - CinderCore.registerItemFallback(Item.getIdFromItem(redDwarfSteel), Item.getIdFromItem(LOTRMod.dwarfSteel), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(spearRedDwarf), Item.getIdFromItem(LOTRMod.spearDwarven), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(swordRedDwarf), Item.getIdFromItem(LOTRMod.swordDwarven), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(battleaxeRedDwarf), Item.getIdFromItem(LOTRMod.battleaxeDwarven), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(pikeRedDwarf), Item.getIdFromItem(LOTRMod.pikeDwarven), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(hammerRedDwarf), Item.getIdFromItem(LOTRMod.hammerDwarven), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(daggerRedDwarf), Item.getIdFromItem(LOTRMod.daggerDwarven), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(daggerRedDwarfPoisoned), Item.getIdFromItem(LOTRMod.daggerDwarvenPoisoned), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(helmetRedDwarf), Item.getIdFromItem(LOTRMod.helmetDwarvenGold), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(bodyRedDwarf), Item.getIdFromItem(LOTRMod.bodyDwarvenGold), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(legsRedDwarf), Item.getIdFromItem(LOTRMod.legsDwarvenGold), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(bootsRedDwarf), Item.getIdFromItem(LOTRMod.bootsDwarvenGold), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(crossbowRedDwarf), Item.getIdFromItem(LOTRMod.ironCrossbow), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(boarArmorRedDwarf), Item.getIdFromItem(LOTRMod.boarArmorDwarven), "cinder_loe", "1.0"); - // == Rhudaur Items== - CinderCore.registerItemFallback(Item.getIdFromItem(helmetRhudaur), Item.getIdFromItem(LOTRMod.helmetFur), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(bodyRhudaur), Item.getIdFromItem(LOTRMod.bodyFur), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(legsRhudaur), Item.getIdFromItem(LOTRMod.legsFur), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(bootsRhudaur), Item.getIdFromItem(LOTRMod.bootsFur), "cinder_loe", "1.2.5"); - // == Elite Armors== - CinderCore.registerItemFallback(Item.getIdFromItem(helmetserpent), Item.getIdFromItem(LOTRMod.helmetNearHarad), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(bodyserpent), Item.getIdFromItem(LOTRMod.bodyNearHarad), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(legsserpent),Item.getIdFromItem(LOTRMod.bodyNearHarad), "cinder_loe","1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(bootsserpent), Item.getIdFromItem(LOTRMod.bootsNearHarad), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(helmetUsurper), Item.getIdFromItem(LOTRMod.helmetUmbar), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(bodyUsurper), Item.getIdFromItem(LOTRMod.bodyUmbar), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(legsUsurper), Item.getIdFromItem(LOTRMod.legsUmbar), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(bootsUsurper), Item.getIdFromItem(LOTRMod.bootsUmbar), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(helmetWarlord), Item.getIdFromItem(LOTRMod.helmetNomad), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(bodyWarlord), Item.getIdFromItem(LOTRMod.bodyNomad), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(legsWarlord), Item.getIdFromItem(LOTRMod.legsNomad), "cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(bootsWarlord), Item.getIdFromItem(LOTRMod.bootsNomad), "cinder_loe", "1.2.5"); - // == Wizard Staves == - CinderCore.registerItemFallback(Item.getIdFromItem(radagastStaff), Item.getIdFromItem(LOTRMod.gandalfStaffWhite), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(pallandoStaff), Item.getIdFromItem(LOTRMod.gandalfStaffWhite), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(alatarStaff), Item.getIdFromItem(LOTRMod.gandalfStaffWhite), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(sarumanStaff), Item.getIdFromItem(LOTRMod.gandalfStaffWhite), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(sarumanWhiteStaff), Item.getIdFromItem(LOTRMod.gandalfStaffWhite), "cinder_loe", "1.4"); - // == Relics == - CinderCore.registerItemFallback(Item.getIdFromItem(welfRelic), Item.getIdFromItem(LOTRMod.rhinoHorn), "cinder_loe", "1.2"); - // == Specials == - CinderCore.registerItemFallback(Item.getIdFromItem(frostblade), Item.getIdFromItem(LOTRMod.swordMithril), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(daggervoid), Item.getIdFromItem(LOTRMod.daggerMithril), "cinder_loe", "1.2.3"); - CinderCore.registerItemFallback(Item.getIdFromItem(spearsolidgold), Item.getIdFromItem(LOTRMod.spearMithril), "cinder_loe", "1.1"); - CinderCore.registerItemFallback(Item.getIdFromItem(spearUnnamed), Item.getIdFromItem(LOTRMod.spearMithril), "cinder_loe", "1.2.4"); - CinderCore.registerItemFallback(Item.getIdFromItem(whip), Item.getIdFromItem(LOTRMod.balrogWhip), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Item.getIdFromItem(helmetbrokenhalo), Item.getIdFromItem(Items.golden_helmet),"cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(helmetJade), Item.getIdFromItem(LOTRMod.helmetMithril),"cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(bodyJade), Item.getIdFromItem(LOTRMod.bodyMithril),"cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(legsJade), Item.getIdFromItem(LOTRMod.legsMithril),"cinder_loe", "1.2.5"); - CinderCore.registerItemFallback(Item.getIdFromItem(bootsJade), Item.getIdFromItem(LOTRMod.bootsMithril),"cinder_loe", "1.2.5"); - // == Common Tools/weapons == - CinderCore.registerItemFallback(Item.getIdFromItem(cleaver),Item.getIdFromItem(LOTRMod.daggerIron),"cinder_loe","1.2.5"); - // == Ash Forged == - CinderCore.registerItemFallback(Item.getIdFromItem(ingotAsh), Item.getIdFromItem(LOTRMod.galvorn), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Item.getIdFromItem(daggerAsh), Item.getIdFromItem(LOTRMod.daggerBlackUruk), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Item.getIdFromItem(swordAsh), Item.getIdFromItem(LOTRMod.scimitarBlackUruk), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Item.getIdFromItem(staffAsh), Item.getIdFromItem(LOTRMod.polearmOrc), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Item.getIdFromItem(hammerAsh), Item.getIdFromItem(LOTRMod.hammerBlackUruk), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Item.getIdFromItem(battleaxeAsh), Item.getIdFromItem(LOTRMod.battleaxeBlackUruk), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Item.getIdFromItem(pikeAsh), Item.getIdFromItem(LOTRMod.pikeDolGuldur), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Item.getIdFromItem(bowAsh), Item.getIdFromItem(LOTRMod.blackUrukBow), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Item.getIdFromItem(spearAsh), Item.getIdFromItem(LOTRMod.spearBlackUruk), "cinder_loe", "1.2"); - // == Spawn Eggs == - CinderCore.registerItemFallback(Item.getIdFromItem(spawnEgg), Item.getIdFromItem(Items.spawn_egg), "cinder_loe", "1.0"); - // == Limwaith Items == - CinderCore.registerItemFallback(Item.getIdFromItem(bonemold), Item.getIdFromItem(LOTRMod.leekSoup), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Item.getIdFromItem(helmetLimwaith), Item.getIdFromItem(LOTRMod.helmetMoredain), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(bodyLimwaith), Item.getIdFromItem(LOTRMod.bodyMoredain), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(legsLimwaith), Item.getIdFromItem(LOTRMod.legsMoredain), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(bootsLimwaith), Item.getIdFromItem(LOTRMod.bootsMoredain), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(helmetboneLimwaith), Item.getIdFromItem(LOTRMod.helmetBone), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Item.getIdFromItem(bodyboneLimwaith), Item.getIdFromItem(LOTRMod.bodyBone), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Item.getIdFromItem(legsboneLimwaith), Item.getIdFromItem(LOTRMod.legsBone), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Item.getIdFromItem(bootsboneLimwaith), Item.getIdFromItem(LOTRMod.bootsBone), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Item.getIdFromItem(spearLimwaith), Item.getIdFromItem(LOTRMod.spearMoredain), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(tridentLimwaith), Item.getIdFromItem(LOTRMod.dunlendingTrident), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(truncheonLimwaith), Item.getIdFromItem(LOTRMod.swordMoredain), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(battleaxeLimwaith), Item.getIdFromItem(LOTRMod.battleaxeMoredain), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(daggerLimwaith), Item.getIdFromItem(LOTRMod.daggerMoredain), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(daggerLimwaithPoisoned), Item.getIdFromItem(LOTRMod.daggerMoredainPoisoned), "cinder_loe", "1.0"); - CinderCore.registerItemFallback(Item.getIdFromItem(blowgunLimwaith), Item.getIdFromItem(LOTRMod.tauredainBlowgun), "cinder_loe", "1.0"); - // == Bree Items == - CinderCore.registerItemFallback(Item.getIdFromItem(helmetBree), Item.getIdFromItem(Items.iron_helmet), "cinder_loe", "1.1"); - CinderCore.registerItemFallback(Item.getIdFromItem(helmetBreeKettle), Item.getIdFromItem(Items.iron_helmet), "cinder_loe", "1.2"); - CinderCore.registerItemFallback(Item.getIdFromItem(bodyBree), Item.getIdFromItem(Items.chainmail_chestplate), "cinder_loe", "1.1"); - CinderCore.registerItemFallback(Item.getIdFromItem(legsBree), Item.getIdFromItem(Items.chainmail_leggings), "cinder_loe", "1.1"); - CinderCore.registerItemFallback(Item.getIdFromItem(bootsBree), Item.getIdFromItem(Items.iron_boots), "cinder_loe", "1.1"); - CinderCore.registerItemFallback(Item.getIdFromItem(swordBree), Item.getIdFromItem(Items.iron_sword), "cinder_loe", "1.1"); - // == Arnor Items == - CinderCore.registerItemFallback(Item.getIdFromItem(helmetArnorBanner), Item.getIdFromItem(Items.chainmail_helmet), "cinder_loe", "1.1"); - CinderCore.registerItemFallback(Item.getIdFromItem(bodyArnorBanner), Item.getIdFromItem(Items.chainmail_chestplate), "cinder_loe", "1.1"); - CinderCore.registerItemFallback(Item.getIdFromItem(legsArnorBanner), Item.getIdFromItem(Items.chainmail_leggings), "cinder_loe", "1.1"); - CinderCore.registerItemFallback(Item.getIdFromItem(bootsArnorBanner), Item.getIdFromItem(Items.chainmail_boots), "cinder_loe", "1.1"); - CinderCore.registerItemFallback(Item.getIdFromItem(maceArnor), Item.getIdFromItem(LOTRMod.blacksmithHammer), "cinder_loe", "1.1"); - CinderCore.registerItemFallback(Item.getIdFromItem(maceWarlord), Item.getIdFromItem(LOTRMod.blacksmithHammer), "cinder_loe", "1.2.5"); - - CinderCore.registerEntityFallback(DarkSpider.class, LOTREntityUtumnoIceSpider.class, "cinder_loe", "1.2.4"); - - CinderCore.registerEntityFallback(BladorthinSmith.class, LOTREntityDorwinionElf.class, "cinder_loe", "1.2.4"); - - CinderCore.registerEntityFallback(CorruptDwarf.class, LOTREntityDwarf.class, "cinder_loe", "1.2.3"); - CinderCore.registerEntityFallback(CorruptElf.class, LOTREntityTormentedElf.class, "cinder_loe", "1.2.3"); - CinderCore.registerEntityFallback(CorruptEnt.class, LOTREntityEnt.class, "cinder_loe", "1.2.3"); - CinderCore.registerEntityFallback(CorruptHobbit.class, LOTREntityHobbit.class, "cinder_loe", "1.2.3"); - CinderCore.registerEntityFallback(CorruptMan.class, LOTREntityGondorMan.class, "cinder_loe", "1.2.3"); - CinderCore.registerEntityFallback(CorruptOrc.class, LOTREntityGundabadOrc.class, "cinder_loe", "1.2.3"); - - CinderCore.registerEntityFallback(SarumanFireball.class, LOTREntityGandalfFireball.class, "cinder_loe", "1.0"); - CinderCore.registerEntityFallback(SarumanWhiteFireball.class, LOTREntityGandalfFireball.class, "cinder_loe", "1.4"); - CinderCore.registerEntityFallback(Renegade.class, LOTREntityBandit.class, "cinder_loe", "1.0"); - CinderCore.registerEntityFallback(RenegadeCaptain.class, LOTREntityBandit.class, "cinder_loe", "1.1"); - CinderCore.registerEntityFallback(Wraith.class, LOTREntityMarshWraith.class, "cinder_loe", "1.0"); - CinderCore.registerEntityFallback(LOTREntitySauron.class, LOTREntityBarrowWight.class, "cinder_loe", "1.1"); - - CinderCore.registerEntityFallback(RedDwarfWarrior.class, LOTREntityDwarfWarrior.class, "cinder_loe", "1.0"); - CinderCore.registerEntityFallback(RedDwarfArbalest.class, LOTREntityDwarfAxeThrower.class, "cinder_loe", "1.0"); - CinderCore.registerEntityFallback(RedDwarfBannerBearer.class, LOTREntityDwarfBannerBearer.class, "cinder_loe", "1.0"); - CinderCore.registerEntityFallback(RedDwarfCommander.class, LOTREntityDwarfCommander.class, "cinder_loe", "1.0"); - CinderCore.registerEntityFallback(RedDwarfSmith.class, LOTREntityDwarfSmith.class, "cinder_loe", "1.2.1"); - - CinderCore.registerEntityFallback(Limwaith.class, LOTREntityMoredain.class, "cinder_loe", "1.2"); - CinderCore.registerEntityFallback(LimwaithFishmonger.class, LOTREntityMoredain.class, "cinder_loe", "1.2"); - CinderCore.registerEntityFallback(LimwaithShaman.class, LOTREntityTauredainShaman.class, "cinder_loe", "1.2"); - CinderCore.registerEntityFallback(LimwaithWarrior.class, LOTREntityMoredain.class, "cinder_loe", "1.0"); - CinderCore.registerEntityFallback(LimwaithBoneWarrior.class, LOTREntityMoredain.class, "cinder_loe", "1.2"); - CinderCore.registerEntityFallback(LimwaithBlowgunner.class, LOTREntityMoredain.class, "cinder_loe", "1.0"); - CinderCore.registerEntityFallback(LimwaithBannerBearer.class, LOTREntityMoredainBannerBearer.class, "cinder_loe", "1.0"); - CinderCore.registerEntityFallback(LimwaithChieftain.class, LOTREntityMoredainChieftain.class, "cinder_loe", "1.0"); - - //CinderCore.registerEntityFallback(LimwaithCrocodile.class, LOTREntityCrocodile.class, "cinder_loe", "1.2"); - CinderCore.registerEntityFallback(FangornBear.class, LOTREntityBear.class, "cinder_loe", "1.0"); - CinderCore.registerEntityFallback(FangornWildBoar.class, LOTREntityWildBoar.class, "cinder_loe", "1.0"); - CinderCore.registerEntityFallback(FangornAuroch.class, LOTREntityAurochs.class, "cinder_loe", "1.0"); - CinderCore.registerEntityFallback(FangornElk.class, LOTREntityElk.class, "cinder_loe", "1.0"); - CinderCore.registerEntityFallback(FangornWolf.class, EntityWolf.class, "cinder_loe", "1.0"); - - CinderCore.registerEntityFallback(ArnorSoldier.class, LOTREntityDunedain.class, "cinder_loe", "1.1"); - CinderCore.registerEntityFallback(ArnorSoldierArcher.class, LOTREntityDunedain.class, "cinder_loe", "1.1"); - CinderCore.registerEntityFallback(ArnorCaptain.class, LOTREntityDunedain.class, "cinder_loe", "1.1"); - CinderCore.registerEntityFallback(ArnorBannerBearer.class, LOTREntityDunedain.class, "cinder_loe", "1.1"); - CinderCore.registerEntityFallback(BattleNun.class, LOTREntityDunedain.class, "cinder_loe", "1.1"); - - CinderCore.registerEntityFallback(BreeSoldier.class, LOTREntityBreeMan.class, "cinder_loe", "1.1"); - CinderCore.registerEntityFallback(BreeCrossbowman.class, LOTREntityBreeMan.class, "cinder_loe", "1.1"); - CinderCore.registerEntityFallback(BreeCaptain.class, LOTREntityBreeMan.class, "cinder_loe", "1.1"); - CinderCore.registerEntityFallback(BreeSoldierBannerBearer.class, LOTREntityBreeMan.class, "cinder_loe", "1.1"); - CinderCore.registerEntityFallback(BreeOutrider.class, LOTREntityBreeMan.class, "cinder_loe", "1.1"); - - - CinderCore.registerCustomFallback(42, 16, "banner", "cinder_loe", "1.2"); - CinderCore.registerCustomFallback(43, 16, "banner", "cinder_loe", "1.2.4"); - CinderCore.registerCustomFallback(44, 16, "banner", "cinder_loe", "1.2.4"); - CinderCore.registerCustomFallback(45, 16, "banner", "cinder_loe", "1.2.4"); - CinderCore.registerCustomFallback(46, 16, "banner", "cinder_loe", "1.2.4"); - } - - // Create unit trade entries here, out of the way of important code - public void setupTradeEntries() { - RED_DWARF_COMMANDER = new LOTRUnitTradeEntries(200.0F, new LOTRUnitTradeEntry(LOTREntityDwarf.class, 60, 0.0F), - (new LOTRUnitTradeEntry(RedDwarfWarrior.class, 400, 50.0F)).setPledgeType(LOTRUnitTradeEntry.PledgeType.ANY_DWARF), - (new LOTRUnitTradeEntry(RedDwarfArbalest.class, 400, 100.0F)).setPledgeType(LOTRUnitTradeEntry.PledgeType.ANY_DWARF), - (new LOTRUnitTradeEntry(RedDwarfWarrior.class, LOTREntityWildBoar.class, "RedDwarfWarrior_Boar", 500, 150.0F)).setMountArmor(boarArmorRedDwarf).setPledgeType(LOTRUnitTradeEntry.PledgeType.ANY_DWARF), - (new LOTRUnitTradeEntry(RedDwarfArbalest.class, LOTREntityWildBoar.class, "RedDwarfArbalest_Boar", 500, 200.0F)).setMountArmor(boarArmorRedDwarf).setPledgeType(LOTRUnitTradeEntry.PledgeType.ANY_DWARF), - (new LOTRUnitTradeEntry(RedDwarfBannerBearer.class, 400, 200.0F)).setPledgeType(LOTRUnitTradeEntry.PledgeType.ANY_DWARF), - (new LOTRUnitTradeEntry(RedDwarfArbalest.class, LOTREntityWildBoar.class, "Banner_Horse", 600, 300.0F)).setMountArmor(boarArmorRedDwarf).setPledgeType(LOTRUnitTradeEntry.PledgeType.ANY_DWARF)); - - LIMWAITH_COMMANDER = new LOTRUnitTradeEntries(200.0F, new LOTRUnitTradeEntry(LimwaithWarrior.class, 150, 50.0F), - (new LOTRUnitTradeEntry(LimwaithBlowgunner.class, 150, 100.0F)).setPledgeType(LOTRUnitTradeEntry.PledgeType.FACTION), - (new LOTRUnitTradeEntry(LimwaithBoneWarrior.class, 250, 200.0F)).setPledgeType(LOTRUnitTradeEntry.PledgeType.FACTION), - (new LOTRUnitTradeEntry(LimwaithBannerBearer.class, 150, 200.0F)).setPledgeType(LOTRUnitTradeEntry.PledgeType.FACTION)); - - ARNOR_CAPTAIN = new LOTRUnitTradeEntries(200.0F, (new LOTRUnitTradeEntry(ArnorSoldier.class, 250, 250.0F)).setPledgeType(LOTRUnitTradeEntry.PledgeType.FACTION), - (new LOTRUnitTradeEntry(ArnorSoldierArcher.class, 250, 300.0F)).setPledgeType(LOTRUnitTradeEntry.PledgeType.FACTION), - (new LOTRUnitTradeEntry(ArnorSoldier.class, LOTREntityHorse.class, "Arnor_Horse", 350, 150.0F)).setMountArmor(horseArmorIron).setPledgeType(LOTRUnitTradeEntry.PledgeType.FACTION), - (new LOTRUnitTradeEntry(ArnorSoldierArcher.class, LOTREntityHorse.class, "Arnor_Horse", 350, 200.0F)).setMountArmor(horseArmorIron).setPledgeType(LOTRUnitTradeEntry.PledgeType.FACTION), - (new LOTRUnitTradeEntry(LOTREntityRangerNorth.class, 250, 0.0f)), - (new LOTRUnitTradeEntry(LOTREntityRangerNorth.class, LOTREntityHorse.class, "RangerNorth_Horse", 350, 100.0f)), - (new LOTRUnitTradeEntry(LOTREntityRangerNorthBannerBearer.class, 250, 150.0f)), - (new LOTRUnitTradeEntry(ArnorBannerBearer.class, 250, 400.0F)).setPledgeType(LOTRUnitTradeEntry.PledgeType.FACTION), - (new LOTRUnitTradeEntry(ArnorBannerBearer.class, LOTREntityHorse.class, "Banner_Horse", 450, 500.0F)).setMountArmor(horseArmorIron).setPledgeType(LOTRUnitTradeEntry.PledgeType.FACTION), - (new CinderUnitTradeEntry(BattleNun.class, 250, 400.0F).setObjective("Arnor").setExtraInfo("Arnor")).setPledgeType(LOTRUnitTradeEntry.PledgeType.FACTION)); - - - BREE_CAPTAIN = new LOTRUnitTradeEntries(150.0F, (new LOTRUnitTradeEntry(LOTREntityBreeGuard.class, 150, 0.0f)), - (new LOTRUnitTradeEntry(BreeSoldier.class, 250, 250.0F)).setPledgeType(LOTRUnitTradeEntry.PledgeType.FACTION), - (new LOTRUnitTradeEntry(BreeCrossbowman.class, 250, 300.0F)).setPledgeType(LOTRUnitTradeEntry.PledgeType.FACTION), - (new LOTRUnitTradeEntry(BreeOutrider.class, LOTREntityHorse.class, "Bree_Horse", 350, 400.0F)).setMountArmor(horseArmorIron).setPledgeType(LOTRUnitTradeEntry.PledgeType.FACTION), - (new LOTRUnitTradeEntry(LOTREntityBreeBannerBearer.class, 150, 150.0f)), - (new LOTRUnitTradeEntry(BreeSoldierBannerBearer.class, 250, 400.0F)).setPledgeType(LOTRUnitTradeEntry.PledgeType.FACTION), - (new LOTRUnitTradeEntry(BreeSoldierBannerBearer.class, LOTREntityHorse.class, "Banner_Horse", 350, 500.0F)).setMountArmor(horseArmorIron).setPledgeType(LOTRUnitTradeEntry.PledgeType.FACTION)); - } - - public int getRustedSwordID() {return 0;} -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/CinderLoE_Config.java b/src (1)/main/java/com/zivilon/cinder_loe/CinderLoE_Config.java deleted file mode 100644 index dd81b1a..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/CinderLoE_Config.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zivilon.cinder_loe; - -import cpw.mods.fml.common.event.FMLPreInitializationEvent; - -import java.io.File; - -import lotr.common.fac.LOTRFaction; -import net.minecraftforge.common.config.Configuration; - -public class CinderLoE_Config { - public static Configuration config; - public static float enchantment_color_red; - public static float enchantment_color_green; - public static float enchantment_color_blue; - public static String corrupt_faction; - - public static boolean objective_lindon; - public static boolean objective_arnor; - public static boolean objective_angmar; - public static boolean objective_durin; - public static boolean objective_dolguldur; - public static boolean objective_woodelf; - public static boolean objective_lothlorien; - public static boolean objective_dale; - public static boolean objective_rhudaur; - - - public static void init(FMLPreInitializationEvent event) { - File configFile = new File(event.getModConfigurationDirectory(), "CinderLoE.cfg"); - config = new Configuration(configFile); - syncConfig(); - } - - public static void syncConfig() { - try { - // Load the configuration file - config.load(); - - // Read properties, define categories and keys - enchantment_color_red = config.getFloat("EnchantmentColorRed", Configuration.CATEGORY_GENERAL, 0.38f, 0.0f, 1.0f, "Configure red color for enchantments"); - enchantment_color_green = config.getFloat("EnchantmentColorGreen", Configuration.CATEGORY_GENERAL, 0.19f, 0.0f, 1.0f, "Configure green color for enchantments"); - enchantment_color_blue = config.getFloat("EnchantmentColorBlue", Configuration.CATEGORY_GENERAL, 0.608f, 0.0f, 1.0f, "Configure blue color for enchantments"); - - corrupt_faction = config.getString("CorruptFaction", Configuration.CATEGORY_GENERAL, "MORDOR", "Configure the alignment the Corrupt npcs follow"); - - objective_lindon = config.getBoolean("Lindon", Configuration.CATEGORY_GENERAL, false, "set true if Lindon Objective Complete"); - objective_arnor = config.getBoolean("Arnor", Configuration.CATEGORY_GENERAL, false,"set true if Arnor Objective Complete"); - objective_angmar = config.getBoolean("Angmar", Configuration.CATEGORY_GENERAL, false, "set true if Angmar Objective Complete"); - objective_durin = config.getBoolean("Durin", Configuration.CATEGORY_GENERAL, false, "set true if Durin Objective Complete"); - objective_dolguldur = config.getBoolean("Dol_Guldur", Configuration.CATEGORY_GENERAL, false,"set true if Dol Guldur Objective Complete"); - objective_woodelf = config.getBoolean("Wood_Elf", Configuration.CATEGORY_GENERAL, false, "set true if Wood Elf Objective Complete"); - objective_lothlorien = config.getBoolean("Lothlorien", Configuration.CATEGORY_GENERAL, false, "set true if Lothlorien Objective Complete"); - objective_dale = config.getBoolean("Dale", Configuration.CATEGORY_GENERAL, false, "set true if Dalish Objective Complete"); - objective_rhudaur = config.getBoolean("Rhudaur", Configuration.CATEGORY_GENERAL, false, "set true if Rhudaur Objective Complete"); - - // Save the configuration if it has changed - if (config.hasChanged()) { - config.save(); - } - } catch (Exception e) { - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/CinderShapelessOreRecipe.java b/src (1)/main/java/com/zivilon/cinder_loe/CinderShapelessOreRecipe.java deleted file mode 100644 index 74e5c66..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/CinderShapelessOreRecipe.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.zivilon.cinder_loe; - -import lotr.common.LOTRMod; -import net.minecraft.inventory.InventoryCrafting; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import net.minecraftforge.oredict.ShapelessOreRecipe; - -import java.util.Random; - -public class CinderShapelessOreRecipe extends ShapelessOreRecipe { - public CinderShapelessOreRecipe(ItemStack result, Object... recipe) { - super(result, recipe); - } - - @Override - public ItemStack getCraftingResult(InventoryCrafting inv) { - ItemStack result = super.getCraftingResult(inv).copy(); - for (int i = 0; i < inv.getSizeInventory(); i++) { - ItemStack stack = inv.getStackInSlot(i); - if (stack != null && stack.getItem() == LOTRMod.rollingPin) { - stack = stack.copy(); - stack.attemptDamageItem(1, new Random()); - if (stack.getItemDamage() > stack.getMaxDamage()) { - stack.stackSize -= 1; - } - inv.setInventorySlotContents(i, stack); - } - } - return result; - } - - @Override - public boolean matches (InventoryCrafting inv, World world) { - return super.matches(inv, world); - } - - @Override - public ItemStack getRecipeOutput() { - return super.getRecipeOutput(); - } - - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/CinderUnitTradeEntry.java b/src (1)/main/java/com/zivilon/cinder_loe/CinderUnitTradeEntry.java deleted file mode 100644 index e442608..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/CinderUnitTradeEntry.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.zivilon.cinder_loe; - -import lotr.common.LOTRLevelData; -import lotr.common.entity.LOTREntities; -import lotr.common.entity.npc.LOTRBannerBearer; -import lotr.common.entity.npc.LOTRHireableBase; -import lotr.common.entity.npc.LOTRUnitTradeEntry; -import lotr.common.fac.LOTRFaction; -import lotr.common.item.LOTRItemCoin; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.util.StatCollector; -import net.minecraftforge.common.config.Configuration; - -import java.io.File; - -public class CinderUnitTradeEntry extends LOTRUnitTradeEntry { - - public Class entityClass; - private String name; - private PledgeType pledgeType = PledgeType.NONE; - private String objectivename; - private static Configuration config; - private String extraInfo; - - static { - config = new Configuration(new File("CinderLoE.cfg")); - config.load(); - } - - public CinderUnitTradeEntry(Class c, int cost, float alignment) { - super(c, cost, alignment); - this.entityClass = c; // Set entityClass to the passed class - - if (LOTRBannerBearer.class.isAssignableFrom(this.entityClass)) { - this.setExtraInfo("Banner"); - } - } - - public CinderUnitTradeEntry(Class c, Class c1, String s, int cost, float alignment) { - super(c, cost, alignment); - this.entityClass = c; // Set entityClass to the passed class - this.mountClass = c1; - this.name = s; - } - - public boolean isObjectiveComplete(String objective) { - return config.getBoolean(objective, Configuration.CATEGORY_GENERAL, false, "Set true if " + objective + " is complete"); - } - - @Override - public boolean hasRequiredCostAndAlignment(EntityPlayer entityplayer, LOTRHireableBase trader) { - int coins = LOTRItemCoin.getInventoryValue(entityplayer, false); - if (coins < this.getCost(entityplayer, trader)) { - return false; - } - LOTRFaction fac = trader.getFaction(); - if (!this.pledgeType.canAcceptPlayer(entityplayer, fac)) { - return false; - } - if (objectivename != null && !isObjectiveComplete(objectivename)) { - return false; - } - float alignment = LOTRLevelData.getData(entityplayer).getAlignment(fac); - return alignment >= this.alignmentRequired; - } - - public CinderUnitTradeEntry setObjective(String objective) { - this.objectivename = objective; - return this; - } - - public String getFormattedExtraInfo() { - return StatCollector.translateToLocal((String) "lotr.unitinfo." + this.objectivename); - } - - public LOTRUnitTradeEntry setExtraInfo(String s) { - this.extraInfo = s; - return this; - } - - public boolean hasExtraInfo() { - return this.extraInfo != null; - } - - public String getUnitTradeName() { - if (this.mountClass == null) { - String entityName = LOTREntities.getStringFromClass(this.entityClass); - return StatCollector.translateToLocal((String)("entity." + entityName + ".name")); - } - return StatCollector.translateToLocal((String)("lotr.unit." + this.name)); - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/ItemRegistration.java b/src (1)/main/java/com/zivilon/cinder_loe/ItemRegistration.java deleted file mode 100644 index 8d75f32..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/ItemRegistration.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.zivilon.cinder_loe; - -import java.util.AbstractMap.SimpleEntry; -import java.util.ArrayList; -import java.util.List; -import net.minecraft.block.Block; -import net.minecraft.item.Item; -import cpw.mods.fml.common.registry.GameData; -import cpw.mods.fml.common.registry.GameRegistry; -import cpw.mods.fml.common.registry.FMLControlledNamespacedRegistry; - -public class ItemRegistration { - public static FMLControlledNamespacedRegistry block_registry; - public static FMLControlledNamespacedRegistry item_registry; - - static { - block_registry = GameData.getBlockRegistry(); - item_registry = GameData.getItemRegistry(); - } - - public static List> list = new ArrayList<>(); - - @Deprecated - public static void registerItem(Item item, String item_name, int ordinal) { - while (list.size() <= ordinal) { - list.add(new SimpleEntry<>(null, null)); - } - list.set(ordinal, new SimpleEntry<>(item, item_name)); - } - - // Register items in consistent order that persists through mod updates while enabling us to keep the item lists neatly organized. - // Unknown if this is actually necessary, but might help to prevent item ID shifts - public static void registerItems() { - for (int i = 0; i < list.size(); i++) { - SimpleEntry entry = list.get(i); - - if (entry == null || entry.getKey() == null || entry.getValue() == null) { - break; - } - - GameRegistry.registerItem(entry.getKey(), entry.getValue()); - } - } - - public static void register(Item item, String item_name, int id) { - item_registry.addObject(id, item_name, item); - } - public static void register(Block block, String item_name, int id) { - block_registry.addObject(id, item_name, block); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/LoECreativeTabs.java b/src (1)/main/java/com/zivilon/cinder_loe/LoECreativeTabs.java deleted file mode 100644 index 472b4d4..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/LoECreativeTabs.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.zivilon.cinder_loe; - -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.StatCollector; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -public class LoECreativeTabs extends CreativeTabs { - public static LoECreativeTabs tabBlockLoE = new LoECreativeTabs("tabBlockLoE"); - public static LoECreativeTabs tabCombatLoE = new LoECreativeTabs("tabCombatLoE"); - public static LoECreativeTabs tabSpawnLoE = new LoECreativeTabs("tabSpawnLoE"); - public static LoECreativeTabs tabMiscLoE = new LoECreativeTabs("tabMiscLoE"); - public static LoECreativeTabs tabFoodLoE = new LoECreativeTabs("tabFoodLoE"); - public static LoECreativeTabs tabDecoLoE = new LoECreativeTabs("tabDecoLoE"); - public static LoECreativeTabs tabCharacterLoE = new LoECreativeTabs("tabCharacterLoE"); - - public ItemStack theIcon; - - public LoECreativeTabs(String label) { - super(label); - } - - public static void setupIcons() { - tabBlockLoE.theIcon = new ItemStack(CinderLoE.fishBarrel); - tabCombatLoE.theIcon = new ItemStack(CinderLoE.swordAsh); - tabSpawnLoE.theIcon = new ItemStack(CinderLoE.spawnEgg); - tabMiscLoE.theIcon = new ItemStack(CinderLoE.bonemold); - tabFoodLoE.theIcon = new ItemStack(CinderLoE.onion); - tabDecoLoE.theIcon = new ItemStack(CinderLoE.goldChain); - tabCharacterLoE.theIcon = new ItemStack(CinderLoE.sarumanStaff); - } - - @SideOnly(Side.CLIENT) - public String getTranslatedTabLabel() { - return StatCollector.translateToLocal("cinder_loe.creativetab." + getTabLabel()); - } - - @SideOnly(Side.CLIENT) - public Item getTabIconItem() { - return this.theIcon.getItem(); - } - - public ItemStack getIconItemStack() { - return this.theIcon; - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/LoEDamage.java b/src (1)/main/java/com/zivilon/cinder_loe/LoEDamage.java deleted file mode 100644 index d148063..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/LoEDamage.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.zivilon.cinder_loe; - -import net.minecraft.util.DamageSource; - -public class LoEDamage { - public static DamageSource shadow = (new DamageSource("cinder_loe.shadow")).setDamageBypassesArmor().setMagicDamage(); -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/Materials.java b/src (1)/main/java/com/zivilon/cinder_loe/Materials.java deleted file mode 100644 index da30bc0..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/Materials.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.zivilon.cinder_loe; - -import lotr.common.LOTRMod; -import net.minecraft.init.Items; -import net.minecraft.item.Item; - -import lotr.common.item.LOTRMaterial; - -import java.lang.reflect.Constructor; -import java.lang.reflect.Method; -import java.lang.reflect.Field; - -public class Materials { - public static void registerMaterials() { - modifyMaterial("RED_DWARF", 700, 3.0F, 0.7F, 3, 7.0F, 10, CinderLoE.redDwarfSteel); - modifyMaterial("WIZARD", 1000, 3.0F, 0.7F, 3, 7.0F, 10, null); - modifyMaterial("BONEMOLD", 512, 2.5F, 0.6F, 2, 6.0F, 10, CinderLoE.bonemold); //Original Durability = 350 | Add 81 | 162 if Upgraded Armory | 2/4 (Unupgraded) - modifyMaterial("LIMWAITH_WOOD", 230, 1.5F, 0.5F, 2, 5.0F, 10, Item.getItemFromBlock(LOTRMod.driedReeds)); - modifyMaterial("EVENT", 2400, 5.0F, 0.8F, 0, 9.0F, 10, LOTRMod.emerald); - modifyMaterial("BREE", 350, 2.5F, 0.6F, 2, 6.0F, 10, Items.iron_ingot); - modifyMaterial("RHUDAUR", 300, 2.5F, 0.6F, 2, 6.0F, 10, LOTRMod.fur); - modifyMaterial("BATTLENUN", 300, 3F, 0.6F, 2, 6.0F, 10, Items.iron_ingot); - modifyMaterial("ASH", 2000, 0.0F, 0.6F, 2, 7.0F, 10, CinderLoE.ingotAsh); - modifyMaterial("SERPENT", 650, 2.0F, 0.6F, 2, 6.0F, 10, LOTRMod.bronze); - modifyMaterial("USURPER",650, 2.0F, 0.6F, 2, 6.0F, 10, Items.iron_ingot); - modifyMaterial("WARLORD", 650, 2.0F, 0.6F, 2, 6.0F, 10, LOTRMod.bronze); - modifyMaterial("JADE",2400, 5.0F, 0.8F, 0, 9.0F, 10, LOTRMod.emerald); - } - - public static void modifyMaterial(String fieldName, int uses, float weapon_damage, float protection, int harvest_level, float speed, int enchantability, Item crafting_item) { - try { - Class lotrMaterialClass = Class.forName("lotr.common.item.LOTRMaterial"); - Field materialField = lotrMaterialClass.getField(fieldName); - - // Reflection to access and instantiate the private constructor of LOTRMaterial - Constructor constructor = lotrMaterialClass.getDeclaredConstructor(String.class); - constructor.setAccessible(true); - Object materialLocal = constructor.newInstance(fieldName); - - // Reflection to call the private methods on the new instance - Method setUses = lotrMaterialClass.getDeclaredMethod("setUses", int.class); - Method setDamage = lotrMaterialClass.getDeclaredMethod("setDamage", float.class); - Method setProtection = lotrMaterialClass.getDeclaredMethod("setProtection", float.class); - Method setHarvestLevel = lotrMaterialClass.getDeclaredMethod("setHarvestLevel", int.class); - Method setSpeed = lotrMaterialClass.getDeclaredMethod("setSpeed", float.class); - Method setEnchantability = lotrMaterialClass.getDeclaredMethod("setEnchantability", int.class); - Method setCraftingItem = lotrMaterialClass.getDeclaredMethod("setCraftingItem", Item.class); - // Method setManFlesh = lotrMaterialClass.getDeclaredMethod("canHarvestManFlesh", boolean.class); - - setUses.setAccessible(true); - setDamage.setAccessible(true); - setProtection.setAccessible(true); - setHarvestLevel.setAccessible(true); - setSpeed.setAccessible(true); - setEnchantability.setAccessible(true); - setCraftingItem.setAccessible(true); - // setManFlesh.setAccessible(true); - - setUses.invoke(materialLocal, uses); - setDamage.invoke(materialLocal, weapon_damage); - setProtection.invoke(materialLocal, protection); - setHarvestLevel.invoke(materialLocal, harvest_level); - setSpeed.invoke(materialLocal, speed); - setEnchantability.invoke(materialLocal, enchantability); - // setManFlesh.invoke(materialLocal, canHarvestManFlesh); - if (crafting_item != null) { - setCraftingItem.invoke(materialLocal, crafting_item); - } - - materialField.set(null, materialLocal); - } catch (Exception e) { - e.printStackTrace(); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/ShapelessDurabilityRecipe.java b/src (1)/main/java/com/zivilon/cinder_loe/ShapelessDurabilityRecipe.java deleted file mode 100644 index 4e8bb1c..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/ShapelessDurabilityRecipe.java +++ /dev/null @@ -1,107 +0,0 @@ -package com.zivilon.cinder_loe; - -import java.util.List; -import java.util.ArrayList; - -import net.minecraft.inventory.InventoryCrafting; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.item.crafting.ShapelessRecipes; -import net.minecraft.world.World; -import net.minecraft.item.crafting.IRecipe; - -public class ShapelessDurabilityRecipe implements IRecipe { - private final ItemStack recipeOutput; - private final List recipeItems; - private final Item toolItem; - - public ShapelessDurabilityRecipe(ItemStack result, Item toolItem, ItemStack... ingredients) { - this.recipeOutput = result; - this.recipeItems = new ArrayList<>(ingredients.length); - for (ItemStack ingredient : ingredients) { - this.recipeItems.add(ingredient); - } - this.toolItem = toolItem; - System.out.println("[CinderLoE] Created ShapelessDurabilityRecipe for: " + result.getUnlocalizedName()); - System.out.println("[CinderLoE] Ingredients: " + this.recipeItems); - } - - @Override - public boolean matches(InventoryCrafting inv, World worldIn) { - System.out.println("[CinderLoE] Checking matches for ShapelessDurabilityRecipe"); - - boolean hasTool = false; - List ingredientsCopy = new ArrayList<>(this.recipeItems); - - for (int i = 0; i < inv.getSizeInventory(); ++i) { - ItemStack stack = inv.getStackInSlot(i); - if (stack != null) { - if (stack.getItem() == toolItem) { - hasTool = true; - } else { - boolean matched = false; - for (ItemStack recipeStack : ingredientsCopy) { - if (stack.getItem() == recipeStack.getItem() && (recipeStack.getItemDamage() == 32767 || stack.getItemDamage() == recipeStack.getItemDamage())) { - matched = true; - ingredientsCopy.remove(recipeStack); - break; - } - } - if (!matched) { - System.out.println("[CinderLoE] Ingredient did not match: " + stack); - return false; - } - } - } - } - - boolean matches = hasTool && ingredientsCopy.isEmpty(); - System.out.println("[CinderLoE] ShapelessDurabilityRecipe match result: " + matches + ", has tool: " + hasTool); - return matches; - } - - @Override - public ItemStack getCraftingResult(InventoryCrafting inv) { - System.out.println("[CinderLoE] Getting crafting result for ShapelessDurabilityRecipe"); - return this.recipeOutput.copy(); - } - - @Override - public int getRecipeSize() { - return this.recipeItems.size(); - } - - @Override - public ItemStack getRecipeOutput() { - return this.recipeOutput; - } - - public ItemStack[] getRemainingItems(InventoryCrafting inv) { - System.out.println("[CinderLoE] Getting remaining items for ShapelessDurabilityRecipe"); - ItemStack[] remainingItems = new ItemStack[inv.getSizeInventory()]; - - for (int i = 0; i < remainingItems.length; ++i) { - ItemStack itemstack = inv.getStackInSlot(i); - - if (itemstack != null && itemstack.getItem() == toolItem) { - ItemStack tool = itemstack.copy(); - tool.setItemDamage(tool.getItemDamage() + 1); - System.out.println("[CinderLoE] Damaging tool: " + tool.getUnlocalizedName() + " | New Damage: " + tool.getItemDamage()); - - if (tool.getItemDamage() >= tool.getMaxDamage()) { - System.out.println("[CinderLoE] Tool is out of durability, breaking: " + tool.getUnlocalizedName()); - tool = null; - } - - remainingItems[i] = tool; - } else if (itemstack != null && itemstack.getItem().hasContainerItem(itemstack)) { - System.out.println("[CinderLoE] Consuming non-tool item " + itemstack.getUnlocalizedName()); - remainingItems[i] = itemstack.getItem().getContainerItem(itemstack); - } else { - remainingItems[i] = itemstack; - } - } - - return remainingItems; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/SwiftnessHandler.java b/src (1)/main/java/com/zivilon/cinder_loe/SwiftnessHandler.java deleted file mode 100644 index d4f32f7..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/SwiftnessHandler.java +++ /dev/null @@ -1,56 +0,0 @@ -// File: SwiftnessHandler.java -package com.zivilon.cinder_loe; - -import cpw.mods.fml.common.eventhandler.SubscribeEvent; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.entity.ai.attributes.AttributeModifier; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraftforge.event.entity.living.LivingEvent; -import lotr.common.enchant.LOTREnchantment; -import lotr.common.enchant.LOTREnchantmentHelper; -import net.minecraft.entity.ai.attributes.IAttributeInstance; - -import java.util.UUID; - -public class SwiftnessHandler { - // Use fixed UUIDs to prevent stacking - private static final UUID[] SWIFTNESS_UUIDS = new UUID[]{ - UUID.fromString("123e4567-e89b-12d3-a456-426614174001"), // boots - UUID.fromString("123e4567-e89b-12d3-a456-426614174002"), // leggings - UUID.fromString("123e4567-e89b-12d3-a456-426614174003"), // chestplate - UUID.fromString("123e4567-e89b-12d3-a456-426614174004") // helmet - }; - private static final String[] MODIFIER_NAMES = new String[]{ - "SwiftnessBoots", "SwiftnessLegs", "SwiftnessChest", "SwiftnessHelm" - }; - - @SubscribeEvent - public void onPlayerTick(LivingEvent.LivingUpdateEvent event) { - if (!(event.entityLiving instanceof EntityPlayer)) return; - - EntityPlayer player = (EntityPlayer) event.entityLiving; - - for (int i = 0; i < player.inventory.armorInventory.length; i++) { - ItemStack armor = player.inventory.armorInventory[i]; - UUID uuid = SWIFTNESS_UUIDS[i]; - String label = MODIFIER_NAMES[i]; - - // Get movement speed attribute - IAttributeInstance attr = player.getEntityAttribute(SharedMonsterAttributes.movementSpeed); -AttributeModifier existingMod = attr.getModifier(uuid); - -if (armor != null && LOTREnchantmentHelper.hasEnchant(armor, LOTREnchantment.getEnchantmentByName("swiftness"))) { - if (existingMod == null) { - AttributeModifier mod = new AttributeModifier(uuid, label, 0.05, 1); - attr.applyModifier(mod); - } -} else { - if (existingMod != null) { - attr.removeModifier(existingMod); - } -} - - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/BarsBase.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/BarsBase.java deleted file mode 100644 index c159a43..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/BarsBase.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.LoECreativeTabs; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import net.minecraft.block.Block; -import net.minecraft.block.BlockPane; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.util.IIcon; - -import lotr.common.LOTRCreativeTabs; -import lotr.common.block.LOTRBlockOrcChain; -import lotr.common.block.LOTRBlockPane; - -import com.zivilon.cinder_loe.util.Utilities; - -public abstract class BarsBase extends BlockPane { - public String textureName; - protected IIcon icon; - - public BarsBase(String blockName) { - super("", "", Material.iron, true); - this.textureName = Utilities.toSnakeCase(blockName); - this.setBlockName(blockName); - this.setCreativeTab(LoECreativeTabs.tabBlockLoE); - setHardness(5.0F); - setResistance(10.0F); - setStepSound(Block.soundTypeMetal); - } - - public void registerBlockIcons(IIconRegister iconregister) { - this.icon = iconregister.registerIcon(textureName); - System.out.println("Registering texture " + textureName); - } - - public IIcon getIcon() { - return this.icon; - } - - public IIcon getIcon(int i, int j) { - return this.icon; - } - - public IIcon func_150097_e() { - return this.icon; - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/BlockRedDwarfSteel.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/BlockRedDwarfSteel.java deleted file mode 100644 index df907fa..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/BlockRedDwarfSteel.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.LoECreativeTabs; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.creativetab.CreativeTabs; - -import lotr.common.LOTRCreativeTabs; - -import java.lang.reflect.Field; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -public class BlockRedDwarfSteel extends Block { - - public BlockRedDwarfSteel() { - super(Material.iron); // Choose the appropriate material - this.setCreativeTab(LoECreativeTabs.tabBlockLoE); - setHardness(5.0F); - setResistance(15.0F); - setStepSound(Block.soundTypeMetal); - setBlockTextureName("lotr:red_dwarf_steel"); - setBlockName("lotr:blockRedDwarfSteel"); - } - - @SideOnly(Side.CLIENT) - public void registerBlockIcons(IIconRegister iconRegister) { - this.blockIcon = iconRegister.registerIcon("lotr:red_dwarf_steel"); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/ChandelierBase.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/ChandelierBase.java deleted file mode 100644 index af002f2..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/ChandelierBase.java +++ /dev/null @@ -1,106 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.LoECreativeTabs; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -import java.util.Random; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.util.AxisAlignedBB; -import net.minecraft.util.IIcon; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -import net.minecraftforge.common.util.ForgeDirection; - -import lotr.common.LOTRCreativeTabs; -import lotr.common.block.LOTRBlockOrcChain; - -import com.zivilon.cinder_loe.util.Utilities; - -public abstract class ChandelierBase extends Block { - public String textureName; - public IIcon icon; - - public ChandelierBase(String blockName) { - super(Material.circuits); - this.textureName = Utilities.toSnakeCase(blockName); - this.setBlockName(blockName); - this.setCreativeTab(LoECreativeTabs.tabBlockLoE); - setHardness(0.0F); - setResistance(2.0F); - setStepSound(Block.soundTypeMetal); - setLightLevel(0.9375F); - setBlockBounds(0.0625F, 0.1875F, 0.0625F, 0.9375F, 1.0F, 0.9375F); - } - - public IIcon getIcon(int i, int j) { - return this.icon; - } - - @Override - public void registerBlockIcons(IIconRegister reg) { - icon = reg.registerIcon(this.textureName); - } - - public boolean isOpaqueCube() { - return false; - } - - public boolean renderAsNormalBlock() { - return false; - } - - public int getRenderType() { - return 1; - } - - public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int i, int j, int k) { - return null; - } - - public boolean canBlockStay(World world, int i, int j, int k) { - Block block = world.getBlock(i, j + 1, k); - int meta = world.getBlockMetadata(i, j + 1, k); - if (block instanceof net.minecraft.block.BlockFence || block instanceof net.minecraft.block.BlockWall) - return true; - if (block instanceof net.minecraft.block.BlockSlab && !block.isOpaqueCube() && (meta & 0x8) == 0) - return true; - if (block instanceof net.minecraft.block.BlockStairs && (meta & 0x4) == 0) - return true; - if (block instanceof LOTRBlockOrcChain) - return true; - return world.getBlock(i, j + 1, k).isSideSolid((IBlockAccess)world, i, j + 1, k, ForgeDirection.DOWN); - } - - public boolean canPlaceBlockAt(World world, int i, int j, int k) { - return canBlockStay(world, i, j, k); - } - - public void onNeighborBlockChange(World world, int i, int j, int k, Block block) { - if (!canBlockStay(world, i, j, k)) { - dropBlockAsItem(world, i, j, k, world.getBlockMetadata(i, j, k), 0); - world.setBlockToAir(i, j, k); - } - } - - @SideOnly(Side.CLIENT) - public void randomDisplayTick(World world, int i, int j, int k, Random random) { - double d = 0.13D; - double d1 = 1.0D - d; - double d2 = 0.6875D; - spawnChandelierParticles(world, i + d, j + d2, k + d); - spawnChandelierParticles(world, i + d1, j + d2, k + d1); - spawnChandelierParticles(world, i + d, j + d2, k + d1); - spawnChandelierParticles(world, i + d1, j + d2, k + d); - } - - private void spawnChandelierParticles(World world, double d, double d1, double d2) { - world.spawnParticle("smoke", d, d1, d2, 0.0D, 0.0D, 0.0D); - world.spawnParticle("flame", d, d1, d2, 0.0D, 0.0D, 0.0D); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/CinderBlock.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/CinderBlock.java deleted file mode 100644 index 602a66f..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/CinderBlock.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.LoECreativeTabs; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.Entity; -import net.minecraft.world.World; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -import java.lang.reflect.Field; - -public class CinderBlock extends Block { - - public CinderBlock() { - super(Material.rock); - this.setCreativeTab(LoECreativeTabs.tabBlockLoE); - setHardness(2.0F); - setResistance(5.0F); - setBlockTextureName("lotr:cinder_block"); - setBlockName("lotr:cinderBlock"); - setLightLevel(0.25F); - } - - @SideOnly(Side.CLIENT) - public void registerBlockIcons(IIconRegister iconRegister) { - this.blockIcon = iconRegister.registerIcon("lotr:cinder_block"); - } - - @Override - public void onEntityWalking(World world, int x, int y, int z, Entity entity) { - entity.setFire(20); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/CinderChain.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/CinderChain.java deleted file mode 100644 index 2aa4fa2..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/CinderChain.java +++ /dev/null @@ -1,149 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.LoECreativeTabs; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import lotr.common.block.LOTRBlockOrcChain; -import net.minecraft.block.*; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.common.util.ForgeDirection; - -import java.util.List; - -public class CinderChain extends LOTRBlockOrcChain { - - public static final String[] chainTypes = {"bronze", "gold", "silver", "iron"}; - @SideOnly(value= Side.CLIENT) - private IIcon[] iconMiddle; - @SideOnly(value=Side.CLIENT) - private IIcon[] iconTop; - @SideOnly(value=Side.CLIENT) - private IIcon[] iconBottom; - @SideOnly(value=Side.CLIENT) - private IIcon[] iconSingle; - @SideOnly(Side.CLIENT) - private IIcon[] iconItem; - - - public CinderChain() { - this.setCreativeTab(LoECreativeTabs.tabDecoLoE); - this.setHardness(1.0f); - this.setStepSound(Block.soundTypeMetal); - setBlockName("lotr:cinderchain"); - setBlockTextureName("lotr:cinderchain"); - float f = 0.2f; - this.setBlockBounds(0.5f - f, 0.0f, 0.5f - f, 0.5f + f, 1.0f, 0.5f + f); - } - - @SideOnly(Side.CLIENT) - @Override - public void registerBlockIcons(IIconRegister iconRegister) { - - this.iconItem = new IIcon[chainTypes.length]; - - for (int i = 0; i < chainTypes.length; ++i) { - this.iconItem[i] = iconRegister.registerIcon(this.getTextureName() + "_" + chainTypes[i] + "_item"); - } - - this.iconMiddle = new IIcon[chainTypes.length]; - this.iconTop = new IIcon[chainTypes.length]; - this.iconBottom = new IIcon[chainTypes.length]; - this.iconSingle = new IIcon[chainTypes.length]; - - for (int i = 0; i < chainTypes.length; ++i) { - this.iconMiddle[i] = iconRegister.registerIcon(this.getTextureName() + "_" + chainTypes[i] + "_mid"); - this.iconTop[i] = iconRegister.registerIcon(this.getTextureName() + "_" + chainTypes[i] + "_top"); - this.iconBottom[i] = iconRegister.registerIcon(this.getTextureName() + "_" + chainTypes[i] + "_bottom"); - this.iconSingle[i] = iconRegister.registerIcon(this.getTextureName() + "_" + chainTypes[i] + "_single"); - } - } - @SideOnly(Side.CLIENT) - @Override - public IIcon getIcon(IBlockAccess world, int x, int y, int z, int side) { - Block above = world.getBlock(x, y + 1, z); - Block below = world.getBlock(x, y - 1, z); - boolean chainAbove = above instanceof CinderChain; - boolean chainBelow = below instanceof CinderChain; - - int meta = world.getBlockMetadata(x, y, z); - if (chainAbove && chainBelow) { - return this.iconMiddle[meta]; - } - if (chainAbove) { - return this.iconBottom[meta]; - } - if (chainBelow) { - return this.iconTop[meta]; - } - return this.iconSingle[meta]; - } - - @SideOnly(value=Side.CLIENT) - public IIcon getIcon(int i, int j) { - return i == 1 ? this.iconItem[0] : this.iconItem[1]; - } - - @SideOnly(value=Side.CLIENT) - public String getItemIconName() { - return this.getTextureName(); - } - - @Override - public int damageDropped(int meta) { - return meta; - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(Item item, CreativeTabs tab, List list) { - for (int i = 0; i < chainTypes.length; ++i) { - list.add(new ItemStack(item, 1, i)); - } - } - - @Override - public int onBlockPlaced(World world, int x, int y, int z, int side, float hitX, float hitY, float hitZ, int metadata) { - // The metadata provided here is the metadata of the block being placed (from the item stack). - return metadata; // Return the metadata of the block that should be placed. - } - - - @Override - public boolean canPlaceBlockAt(World world, int x, int y, int z) { - Block blockAbove = world.getBlock(x, y + 1, z); - int metaAbove = world.getBlockMetadata(x, y + 1, z); - - // Get the metadata of the block to be placed (already handled by onBlockPlaced) - int currentMeta = world.getBlockMetadata(x, y, z); // Metadata of the block being placed - - // Check if the block above is a chain block and if the metadata matches - if (blockAbove instanceof CinderChain) { - if (metaAbove != currentMeta) { - return false; // Prevent placement of different types of chains - } - return true; // Same type, allow placement - } - - // Other checks for fences, walls, slabs, etc. - if (blockAbove instanceof BlockFence || blockAbove instanceof BlockWall) { - return true; - } - if (blockAbove instanceof BlockSlab && !blockAbove.isOpaqueCube() && (metaAbove & 8) == 0) { - return true; - } - if (blockAbove instanceof BlockStairs && (metaAbove & 4) == 0) { - return true; - } - - // Check if the block above is solid on the bottom - return blockAbove.isSideSolid(world, x, y + 1, z, ForgeDirection.DOWN); - } - - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/CinderFurBlock.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/CinderFurBlock.java deleted file mode 100644 index af2ad42..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/CinderFurBlock.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.LoECreativeTabs; -import com.zivilon.cinder_loe.util.Utilities; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import lotr.common.LOTRCreativeTabs; -import lotr.common.block.LOTRBlockBrickBase; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; - -import java.lang.reflect.Field; -import java.util.List; - -public class CinderFurBlock extends Block { - protected IIcon[] brickIcons; - protected String[] brickNames; - - - public CinderFurBlock() { - super(Material.cloth); - this.setCreativeTab(LoECreativeTabs.tabBlockLoE); - setBlockTextureName("lotr:cinderfur"); - setBlockName("lotr:cinderfur"); - setStepSound(Block.soundTypeCloth); - this.setBrickNames("brown", "gray", "black", "white", "obsidian", "bearblack", "bearbrown", "lion", "lioness"); - } - - protected void setBrickNames(String ... names) { - this.brickNames = names; - } - - @SideOnly(Side.CLIENT) - @Override - public void registerBlockIcons(IIconRegister iconregister) { - this.brickIcons = new IIcon[this.brickNames.length]; - for (int i = 0; i < this.brickNames.length; ++i) { - String texturePath = this.getTextureName() + "_" + this.brickNames[i]; - System.out.println("Registering texture: " + texturePath); // Debug log - this.brickIcons[i] = iconregister.registerIcon(texturePath); - } - } - @Override - public IIcon getIcon(int side, int meta) { - return this.brickIcons[meta]; - } - - @Override - public int damageDropped(int meta) { - return meta; - } - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(Item item, CreativeTabs tab, List list) { - for (int i = 0; i < this.brickNames.length; ++i) { - list.add(new ItemStack(item, 1, i)); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/CobbleBlock.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/CobbleBlock.java deleted file mode 100644 index 4d959db..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/CobbleBlock.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.LoECreativeTabs; -import com.zivilon.cinder_loe.util.Utilities; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import lotr.common.LOTRCreativeTabs; -import lotr.common.block.LOTRBlockBrickBase; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; - -import java.lang.reflect.Field; -import java.util.List; - -public class CobbleBlock extends Block { - protected IIcon[] brickIcons; - protected String[] brickNames; - - - public CobbleBlock() { - super(Material.rock); - this.setHardness(1.5f); - this.setResistance(10.0f); - this.setStepSound(Block.soundTypeStone); - this.setCreativeTab(LoECreativeTabs.tabBlockLoE); - setBlockTextureName("lotr:cindercobble"); - setBlockName("lotr:cindercobble"); - this.setBrickNames("drystone", "mordor", "silverbrick", "silvercobble"); - } - - protected void setBrickNames(String ... names) { - this.brickNames = names; - } - - @SideOnly(Side.CLIENT) - @Override - public void registerBlockIcons(IIconRegister iconregister) { - this.brickIcons = new IIcon[this.brickNames.length]; - for (int i = 0; i < this.brickNames.length; ++i) { - String texturePath = this.getTextureName() + "_" + this.brickNames[i]; - System.out.println("Registering texture: " + texturePath); // Debug log - this.brickIcons[i] = iconregister.registerIcon(texturePath); - } - } - @Override - public IIcon getIcon(int side, int meta) { - return this.brickIcons[meta]; - } - - @Override - public int damageDropped(int meta) { - return meta; - } - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(Item item, CreativeTabs tab, List list) { - for (int i = 0; i < this.brickNames.length; ++i) { - list.add(new ItemStack(item, 1, i)); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/EntityBarrier.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/EntityBarrier.java deleted file mode 100644 index aed9edd..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/EntityBarrier.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.util.Utilities; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.util.IIcon; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraft.util.AxisAlignedBB; -import net.minecraft.entity.Entity; -import net.minecraft.entity.player.EntityPlayer; -import java.lang.reflect.Field; -import java.util.List; -import net.minecraft.client.Minecraft; -import cpw.mods.fml.common.FMLCommonHandler; - -public class EntityBarrier extends Block { - @SideOnly(Side.CLIENT) - public IIcon transparentIcon; - - public EntityBarrier() { - super(Material.rock); - setHardness(Float.MAX_VALUE); - setResistance(Float.MAX_VALUE); - setBlockTextureName(Utilities.toSnakeCase("lotr:entityBarrier")); - setBlockName(Utilities.toSnakeCase("lotr:entityBarrier")); - } - - @Override - public boolean isOpaqueCube() { - return false; - } - @Override - public boolean renderAsNormalBlock() { - return false; - } - - @Override - public int getRenderType() { - return -1; - } - - @Override - @SideOnly(Side.CLIENT) - public void registerBlockIcons(IIconRegister iconRegister) { - this.transparentIcon = iconRegister.registerIcon("lotr:invisible"); - } - - @Override - @SideOnly(Side.CLIENT) - public IIcon getIcon(int side, int meta) { - return this.transparentIcon; - } - - @SideOnly(Side.CLIENT) - private boolean isPlayerInSurvivalModeClientSide() { - EntityPlayer player = Minecraft.getMinecraft().thePlayer; - return player != null && !player.capabilities.isCreativeMode; - } - - @Override - public void setBlockBoundsBasedOnState(IBlockAccess world, int x, int y, int z) { - if (FMLCommonHandler.instance().getEffectiveSide() == Side.CLIENT && isPlayerInSurvivalModeClientSide()) { - this.setBlockBounds(0.5F, 1.0F, 0.5F, 0.5F, 0.0F, 0.5F); // Zero-sized bounding box for survival players - } else { - this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 1.0F); // Full-sized bounding box for others - } - } - - @Override - public void addCollisionBoxesToList(World world, int x, int y, int z, AxisAlignedBB aabb, List list, Entity entity) { - if (entity instanceof EntityPlayer) { - return; - } - AxisAlignedBB boundingBox = AxisAlignedBB.getBoundingBox(x, y, z, x + 1.0F, y + 1.0F, z + 1.0F); - if (boundingBox != null && aabb.intersectsWith(boundingBox)) { - list.add(boundingBox); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/FishBarrel.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/FishBarrel.java deleted file mode 100644 index d857567..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/FishBarrel.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.LoECreativeTabs; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import lotr.common.LOTRCreativeTabs; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.util.IIcon; - -import java.lang.reflect.Field; - -public class FishBarrel extends StaticBlockBase3 { - - public FishBarrel() { - super(Material.wood, "lotr:fishbarrel"); - this.setCreativeTab(LoECreativeTabs.tabDecoLoE); - setStepSound(Block.soundTypeWood); - setBlockName("lotr:fishbarrel"); - setHardness(1.0F); - setResistance(2.0F); - // setCreativeTab((CreativeTabs) LOTRCreativeTabs.tabDeco); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/FurBundle.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/FurBundle.java deleted file mode 100644 index 398a03d..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/FurBundle.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.LoECreativeTabs; -import com.zivilon.cinder_loe.blocks.RotatableBlockBase3; -import lotr.common.LOTRCreativeTabs; -import net.minecraft.block.Block; - -import net.minecraft.block.material.Material; -import net.minecraft.creativetab.CreativeTabs; - -import java.lang.reflect.Field; - -public class FurBundle extends RotatableBlockBase3 { - public FurBundle() { - super(Material.cloth, "lotr:furBundle"); - this.setCreativeTab(LoECreativeTabs.tabDecoLoE); - setStepSound(Block.soundTypeCloth); - setBlockName("lotr:furBundle"); - setHardness(0.5F); - setResistance(0.5F); - // setCreativeTab((CreativeTabs) LOTRCreativeTabs.tabDeco); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/FurCarpet.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/FurCarpet.java deleted file mode 100644 index ad481af..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/FurCarpet.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.CinderLoE; -import com.zivilon.cinder_loe.LoECreativeTabs; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import net.minecraft.block.Block; -import net.minecraft.block.BlockCarpet; -import net.minecraft.block.material.Material; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.init.Blocks; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; - -import java.util.List; - -public class FurCarpet extends BlockCarpet { - public FurCarpet() - { - super(); - this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.0625F, 1.0F); - this.setTickRandomly(true); - this.setCreativeTab(LoECreativeTabs.tabDecoLoE); - this.func_150089_b(0); - setBlockName("lotr:cinderfurcarpet"); - setStepSound(Block.soundTypeCloth); - } - - @SideOnly(Side.CLIENT) - public IIcon getIcon(int side, int meta) - { - return CinderLoE.cinderfur.getIcon(side, meta); - } - - @SideOnly(Side.CLIENT) - public void getSubBlocks(Item itemIn, CreativeTabs tab, List list) - { - for (int i = 0; i < 9; ++i) - { - list.add(new ItemStack(itemIn, 1, i)); - } - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/IvoryBlock.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/IvoryBlock.java deleted file mode 100644 index 3fa59d1..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/IvoryBlock.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.blocks.RotatableBlockBase2; -import net.minecraft.block.Block; - -import net.minecraft.block.material.Material; -import net.minecraft.creativetab.CreativeTabs; - -public class IvoryBlock extends RotatableBlockBase2 { - public IvoryBlock() { - super(Material.rock, "lotr:ivoryBlock"); - setStepSound(Block.soundTypeStone); - setBlockName("lotr:ivoryBlock"); - setHardness(1.0F); - setResistance(5.0F); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/LeatherBundle.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/LeatherBundle.java deleted file mode 100644 index 1ae87f7..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/LeatherBundle.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.LoECreativeTabs; -import com.zivilon.cinder_loe.blocks.RotatableBlockBase3; -import lotr.common.LOTRCreativeTabs; -import net.minecraft.block.Block; - -import net.minecraft.block.material.Material; -import net.minecraft.creativetab.CreativeTabs; - -import java.lang.reflect.Field; - -public class LeatherBundle extends RotatableBlockBase3 { - public LeatherBundle() { - super(Material.cloth, "lotr:leatherBundle"); - this.setCreativeTab(LoECreativeTabs.tabDecoLoE); - setStepSound(Block.soundTypeCloth); - setBlockName("lotr:leatherBundle"); - setHardness(0.5F); - setResistance(0.5F); - // setCreativeTab((CreativeTabs) LOTRCreativeTabs.tabDeco); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/MistBlock.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/MistBlock.java deleted file mode 100644 index 80fe590..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/MistBlock.java +++ /dev/null @@ -1,56 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -import java.util.List; -import java.util.Random; - -import lotr.common.LOTRDimension; -import lotr.common.block.LOTRBlockUtumnoPortal; -import lotr.common.tileentity.LOTRTileEntityUtumnoPortal; - -import net.minecraft.block.Block; -import net.minecraft.block.BlockContainer; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.entity.Entity; -import net.minecraft.init.Blocks; -import net.minecraft.item.Item; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.AxisAlignedBB; -import net.minecraft.util.IIcon; -import net.minecraft.world.World; -import com.zivilon.cinder_loe.tileentity.TileEntityMistBlock; - -public class MistBlock extends LOTRBlockUtumnoPortal { - public float color_red; - public float color_green; - public float color_blue; - public MistBlock() { - super(); - color_red = 0.0F; - color_green = 0.0F; - color_blue = 0.0F; - setBlockTextureName("lotr:mist_block"); - setBlockName("lotr:mistBlock"); - } - public MistBlock(float r, float g, float b) { - super(); - color_red = r; - color_green = g; - color_blue = b; - setHardness(-1.0F); - setResistance(Float.MAX_VALUE); - setBlockTextureName("lotr:mist_block"); - setBlockName("lotr:mistBlock"); - } - - public TileEntity createNewTileEntity(World world, int i) { - return (TileEntity)new TileEntityMistBlock(color_red, color_green, color_blue); - } - - @Override - public void func_149670_a(World world, int i, int j, int k, Entity entity) {} - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/RedDwarfBars.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/RedDwarfBars.java deleted file mode 100644 index 1a34f73..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/RedDwarfBars.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; - -import com.zivilon.cinder_loe.blocks.BarsBase; - -public class RedDwarfBars extends BarsBase { - public RedDwarfBars() { - super("lotr:barsRedDwarf"); - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/RedDwarfChandelier.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/RedDwarfChandelier.java deleted file mode 100644 index d28ef08..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/RedDwarfChandelier.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; - -import com.zivilon.cinder_loe.blocks.ChandelierBase; - -public class RedDwarfChandelier extends ChandelierBase { - public RedDwarfChandelier() { - super("lotr:chandelierRedDwarf"); - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/ReedBale.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/ReedBale.java deleted file mode 100644 index 3d173f5..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/ReedBale.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.LoECreativeTabs; -import com.zivilon.cinder_loe.blocks.RotatableBlockBase3; -import lotr.common.LOTRCreativeTabs; -import net.minecraft.block.Block; - -import net.minecraft.block.material.Material; -import net.minecraft.creativetab.CreativeTabs; - -import java.lang.reflect.Field; - -public class ReedBale extends RotatableBlockBase3 { - public ReedBale() { - super(Material.grass, "lotr:reedBale"); - setCreativeTab(LoECreativeTabs.tabDecoLoE); - setStepSound(Block.soundTypeGrass); - setBlockName("lotr:reedBale"); - setHardness(0.5F); - setResistance(0.5F); - // setCreativeTab((CreativeTabs) LOTRCreativeTabs.tabDeco); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/RotatableBlockBase2.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/RotatableBlockBase2.java deleted file mode 100644 index 9e64596..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/RotatableBlockBase2.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -import net.minecraft.block.Block; -import net.minecraft.block.BlockRotatedPillar; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MathHelper; -import net.minecraft.util.IIcon; -import net.minecraft.world.World; - -import com.zivilon.cinder_loe.util.Utilities; - -public abstract class RotatableBlockBase2 extends BlockRotatedPillar { - public String textureName; - public IIcon[] icons = new IIcon[3]; - - public RotatableBlockBase2(Material material, String blockName) { - super(material); - this.textureName = Utilities.toSnakeCase(blockName); - this.setBlockName(blockName); - // Get LOTRCreativeTabs.tabBlock without ForgeGradle incorrectly obfuscating it. Uses cached field, not real-time reflection - this.setCreativeTab((CreativeTabs)Utilities.reflected_tab_block); - } - - public int onBlockPlaced(World world, int x, int y, int z, int side, float hitX, float hitY, float hitZ, int meta) { - int orientation = 0; - switch (side) { - case 0: // Bottom - case 1: // Top - orientation = 0; - break; - case 2: // North - case 3: // South - orientation = 1; - break; - case 4: // West - case 5: // East - orientation = 2; - break; - } - - return orientation; - } - - public int damageDropped(int i) { - return 0; - } - - - @Override - public IIcon getIcon(int side, int meta) { - switch(meta) { - case 0: // Facing up - if(side == 0 || side == 1) return this.icons[0]; - else return this.icons[1]; - case 1: // Facing North-South - if(side == 2 || side == 3) return this.icons[0]; - if(side == 4 || side == 5) return this.icons[2]; - else return this.icons[1]; - case 2: // Facing East-West - if(side == 4 || side == 5) return this.icons[0]; - else return this.icons[2]; - case 3: // Uniform block - return this.icons[1]; - } - - return this.blockIcon; // Default case, should not happen - } - - @Override - public void registerBlockIcons(IIconRegister reg) { - icons[0] = reg.registerIcon(this.textureName + "_top"); - icons[1] = reg.registerIcon(this.textureName + "_side_0"); - icons[2] = reg.registerIcon(this.textureName + "_side_90"); - } - - @SideOnly(Side.CLIENT) - protected IIcon getSideIcon(int i) { - return null; - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/RotatableBlockBase3.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/RotatableBlockBase3.java deleted file mode 100644 index 9dac237..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/RotatableBlockBase3.java +++ /dev/null @@ -1,165 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -import net.minecraft.block.Block; -import net.minecraft.block.BlockRotatedPillar; -import net.minecraft.block.material.Material; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.util.MathHelper; -import net.minecraft.util.IIcon; -import net.minecraft.client.renderer.texture.IIconRegister; -import lotr.common.LOTRCreativeTabs; -import net.minecraft.creativetab.CreativeTabs; - -import com.zivilon.cinder_loe.util.Utilities; - -public abstract class RotatableBlockBase3 extends BlockRotatedPillar { - public String textureName; - public IIcon[] icons = new IIcon[6]; - - public RotatableBlockBase3(Material material, String blockName) { - super(material); - this.textureName = Utilities.toSnakeCase(blockName); - this.setBlockName(blockName); - // Get LOTRCreativeTabs.tabBlock without ForgeGradle incorrectly obfuscating it. Uses cached field, not real-time reflection - this.setCreativeTab((CreativeTabs)Utilities.reflected_tab_block); - -/* Examples for block properties - this.setHardness(2.0F); // How long it takes to break the block - this.setResistance(10.0F); // Explosion resistance - this.setStepSound(soundTypePiston); // The sound made when walking on the block - this.setLightLevel(0.5F); // Light emitted by the block, 0.0 - 1.0 - this.setLightOpacity(255); // How much light is blocked, 0 - 255 - this.setBlockName("exampleBlock"); // The unique name of the block - this.setBlockTextureName("modid:exampleBlock"); // Texture for the block - this.setCreativeTab(CreativeTabs.tabBlock); // The creative tab it appears in -*/ - } - - public int onBlockPlaced(World world, int x, int y, int z, int side, float hitX, float hitY, float hitZ, int meta) { - // Default orientation (meta 0) - int orientation = 0; - - // Determine orientation based on the side of the block the player is placing against - switch (side) { - case 0: // Bottom - orientation = 5; // Unique orientation for bottom - break; - case 1: // Top - orientation = 0; // Default vertical orientation - break; - case 2: // North - orientation = 1; // North-South horizontal - break; - case 3: // South - orientation = 2; // South-North horizontal - break; - case 4: // West - orientation = 3; // West-East horizontal - break; - case 5: // East - orientation = 4; // East-West horizontal - break; - } - - return orientation; - } - - public int damageDropped(int i) { - return 0; - } - - - @Override - public IIcon getIcon(int side, int meta) { - switch(meta) { - case 0: // Facing up - if(side == 0) return this.icons[0]; - else if(side == 1) return this.icons[1]; - else return this.icons[2]; - case 1: // Facing North - if(side == 0) return this.icons[2]; - else if(side == 1) return this.icons[2]; - else if(side == 2) return this.icons[1]; - else if(side == 3) return this.icons[0]; - else if(side == 4) return this.icons[5]; - else if(side == 5) return this.icons[3]; - case 2: // Facing South - if(side == 0) return this.icons[4]; - else if(side == 1) return this.icons[4]; - else if(side == 2) return this.icons[0]; - else if(side == 3) return this.icons[1]; - else if(side == 4) return this.icons[3]; - else if(side == 5) return this.icons[5]; - case 3: // Facing West - if(side == 0) return this.icons[5]; - else if(side == 1) return this.icons[5]; - else if(side == 2) return this.icons[3]; - else if(side == 3) return this.icons[5]; - else if(side == 4) return this.icons[1]; - else if(side == 5) return this.icons[0]; - case 4: // Facing East - if(side == 4) return this.icons[0]; - else if(side == 5) return this.icons[1]; - else return this.icons[2]; - case 5: // Facing down - if(side == 0) return this.icons[1]; - else if(side == 1) return this.icons[0]; - else if (side == 2) return this.icons[3]; - else if (side == 3) return this.icons[3]; - else return this.icons[4]; - } - - return this.blockIcon; - } - - @Override - public void registerBlockIcons(IIconRegister reg) { - icons[0] = reg.registerIcon(this.textureName + "_bottom"); - icons[1] = reg.registerIcon(this.textureName + "_top"); - icons[2] = reg.registerIcon(this.textureName + "_side_0"); - icons[3] = reg.registerIcon(this.textureName + "_side_90"); - icons[4] = reg.registerIcon(this.textureName + "_side_180"); - icons[5] = reg.registerIcon(this.textureName + "_side_270"); - } - - @SideOnly(Side.CLIENT) - protected IIcon getSideIcon(int i) { - return null; - } -} - - -/* Example method overrides for blocks - @Override - public void onBlockAdded(World world, int x, int y, int z) { - // Called when the block is placed in the world - } - - @Override - public void breakBlock(World world, int x, int y, int z, Block block, int metadata) { - // Called when the block is broken - } - - @Override - public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) { - // Called when the player right-clicks the block - return true; - } - - @Override - public void onEntityWalking(World world, int x, int y, int z, Entity entity) { - // Called when an entity walks over the block - } - - @Override - public int isProvidingWeakPower(IBlockAccess world, int x, int y, int z, int side) { - // Determines the redstone power output - return 15; - } -*/ \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/RunedDwarvenBrick.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/RunedDwarvenBrick.java deleted file mode 100644 index 9afd624..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/RunedDwarvenBrick.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.LoECreativeTabs; -import lotr.common.LOTRCreativeTabs; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.Entity; -import net.minecraft.world.World; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -import com.zivilon.cinder_loe.util.Utilities; - -import java.lang.reflect.Field; - -public class RunedDwarvenBrick extends Block { - - public RunedDwarvenBrick() { - super(Material.rock); // Choose the appropriate material - setCreativeTab(LoECreativeTabs.tabDecoLoE); - // Set other properties like hardness, resistance, name, etc. - setHardness(2.0F); - setResistance(5.0F); - setBlockTextureName(Utilities.toSnakeCase("lotr:dwarven_brick_runed")); - setBlockName("lotr:dwarvenBrickRuned"); - // setCreativeTab((CreativeTabs) LOTRCreativeTabs.tabDeco); - } - - @SideOnly(Side.CLIENT) - public void registerBlockIcons(IIconRegister iconRegister) { - this.blockIcon = iconRegister.registerIcon("lotr:dwarven_brick_runed"); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/StaticBlockBase3.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/StaticBlockBase3.java deleted file mode 100644 index 821147c..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/StaticBlockBase3.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -import net.minecraft.block.Block; -import net.minecraft.block.BlockRotatedPillar; -import net.minecraft.block.material.Material; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.util.MathHelper; -import net.minecraft.util.IIcon; -import net.minecraft.client.renderer.texture.IIconRegister; -import lotr.common.LOTRCreativeTabs; -import net.minecraft.creativetab.CreativeTabs; - -import com.zivilon.cinder_loe.util.Utilities; - -public abstract class StaticBlockBase3 extends Block { - public String textureName; - public IIcon[] icons = new IIcon[3]; - - public StaticBlockBase3(Material material, String blockName) { - super(material); - this.textureName = Utilities.toSnakeCase(blockName); - this.setBlockName(blockName); - this.setCreativeTab((CreativeTabs)Utilities.reflected_tab_block); - } - - @Override - public IIcon getIcon(int side, int meta) { - switch(side) { - case 0: // Facing down - return this.icons[0]; - case 1: // Facing up - return this.icons[1]; - case 2: // Facing North - case 3: // Facing South - case 4: // Facing West - case 5: // Facing East - return this.icons[2]; - } - - return this.blockIcon; - } - - @Override - public void registerBlockIcons(IIconRegister reg) { - icons[0] = reg.registerIcon(this.textureName + "_bottom"); - icons[1] = reg.registerIcon(this.textureName + "_top"); - icons[2] = reg.registerIcon(this.textureName + "_side"); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/VerticalWeaponRack.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/VerticalWeaponRack.java deleted file mode 100644 index 3cde8ed..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/VerticalWeaponRack.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import lotr.common.block.LOTRBlockWeaponRack; -import lotr.common.tileentity.LOTRTileEntityWeaponRack; -import net.minecraft.block.Block; -import net.minecraft.block.BlockContainer; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.init.Blocks; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.IIcon; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -public class VerticalWeaponRack extends LOTRBlockWeaponRack { - public VerticalWeaponRack() { - super(); - this.setHardness(0.5f); - this.setResistance(1.0f); - this.setStepSound(Block.soundTypeWood); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/barricade.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/barricade.java deleted file mode 100644 index 12701ab..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/barricade.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import com.zivilon.cinder_loe.LoECreativeTabs; -import net.minecraft.block.Block; -import net.minecraft.block.BlockFence; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.util.IIcon; - -import java.lang.reflect.Field; - -import static net.minecraft.init.Blocks.fence; - -public class barricade extends Block { - - @SideOnly(Side.CLIENT) - private IIcon field_149950_a; - @SideOnly(Side.CLIENT) - private IIcon field_149949_b; - public barricade() { - super(Material.wood); // Choose the appropriate material - setCreativeTab(LoECreativeTabs.tabBlockLoE); - setHardness(5.0F); - setResistance(15.0F); - setStepSound(Block.soundTypeWood); - setBlockTextureName("lotr:red_dwarf_steel"); - setBlockName("lotr:blockRedDwarfSteel"); - } - - public boolean renderAsNormalBlock() - { - return false; - } - public boolean isOpaqueCube() - { - return false; - } - - @SideOnly(Side.CLIENT) - public IIcon getIcon(int side, int meta) - { - return side == 0 ? this.field_149949_b : (side == 1 ? this.field_149950_a : this.blockIcon); - } - - @SideOnly(Side.CLIENT) - public void registerBlockIcons(IIconRegister reg) - { - this.blockIcon = reg.registerIcon(this.getTextureName()); - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/bronzeChain.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/bronzeChain.java deleted file mode 100644 index d8fd0a2..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/bronzeChain.java +++ /dev/null @@ -1,120 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import lotr.common.block.LOTRBlockChandelier; -import lotr.common.block.LOTRBlockOrcChain; -import net.minecraft.block.*; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.common.util.ForgeDirection; - -public class bronzeChain extends LOTRBlockOrcChain { - - public IIcon icon; - @SideOnly(value= Side.CLIENT) - private IIcon iconMiddle; - @SideOnly(value=Side.CLIENT) - private IIcon iconTop; - @SideOnly(value=Side.CLIENT) - private IIcon iconBottom; - @SideOnly(value=Side.CLIENT) - private IIcon iconSingle; - - public bronzeChain() { - this.setHardness(1.0f); - this.setStepSound(Block.soundTypeMetal); - this.textureName = "lotr:bronzeChain"; - setBlockName("lotr:bronzeChain"); - setBlockTextureName("lotr:bronzeChain"); - float f = 0.2f; - this.setBlockBounds(0.5f - f, 0.0f, 0.5f - f, 0.5f + f, 1.0f, 0.5f + f); - } - - @SideOnly(value=Side.CLIENT) - public void registerBlockIcons(IIconRegister iconregister) { - this.iconMiddle = iconregister.registerIcon(this.getTextureName() + "_mid"); - this.iconTop = iconregister.registerIcon(this.getTextureName() + "_top"); - this.iconBottom = iconregister.registerIcon(this.getTextureName() + "_bottom"); - this.iconSingle = iconregister.registerIcon(this.getTextureName() + "_single"); - this.blockIcon = iconregister.registerIcon(this.getTextureName()); - } - - @SideOnly(value=Side.CLIENT) - public IIcon getIcon(IBlockAccess world, int i, int j, int k, int side) { - boolean chainBelow; - Block above = world.getBlock(i, j + 1, k); - Block below = world.getBlock(i, j - 1, k); - boolean chainAbove = above instanceof bronzeChain; - boolean bl = chainBelow = below instanceof bronzeChain || below instanceof LOTRBlockChandelier; - if (chainAbove && chainBelow) { - return this.iconMiddle; - } - if (chainAbove) { - return this.iconBottom; - } - if (chainBelow) { - return this.iconTop; - } - return this.iconSingle; - } - - @SideOnly(value=Side.CLIENT) - public IIcon getIcon(int i, int j) { - return this.iconMiddle; - } - - @SideOnly(value=Side.CLIENT) - public String getItemIconName() { - return this.getTextureName(); - } - - public boolean canPlaceBlockAt(World world, int i, int j, int k) { - Block block = world.getBlock(i, j + 1, k); - int meta = world.getBlockMetadata(i, j + 1, k); - if (block instanceof bronzeChain) { - return true; - } - if (block instanceof BlockFence || block instanceof BlockWall) { - return true; - } - if (block instanceof BlockSlab && !block.isOpaqueCube() && (meta & 8) == 0) { - return true; - } - if (block instanceof BlockStairs && (meta & 4) == 0) { - return true; - } - return world.getBlock(i, j + 1, k).isSideSolid((IBlockAccess)world, i, j + 1, k, ForgeDirection.DOWN); - } - - public boolean onBlockActivated(World world, int i, int j, int k, EntityPlayer entityplayer, int side, float f, float f1, float f2) { - ItemStack itemstack = entityplayer.getHeldItem(); - if (itemstack != null && itemstack.getItem() == Item.getItemFromBlock((Block)this)) { - Block block; - int j1; - for (j1 = j; j1 >= 0 && j1 < world.getHeight() && (block = world.getBlock(i, j1, k)) == this; --j1) { - } - if (j1 >= 0 && j1 < world.getHeight()) { - block = world.getBlock(i, j1, k); - if (this.canPlaceBlockOnSide(world, i, j1, k, side) && block.isReplaceable((IBlockAccess)world, i, j1, k) && !block.getMaterial().isLiquid()) { - int thisMeta = world.getBlockMetadata(i, j, k); - world.setBlock(i, j1, k, (Block)this, thisMeta, 3); - world.playSoundEffect((double)((float)i + 0.5f), (double)((float)j1 + 0.5f), (double)((float)k + 0.5f), this.stepSound.func_150496_b(), (this.stepSound.getVolume() + 1.0f) / 2.0f, this.stepSound.getPitch() * 0.8f); - if (!entityplayer.capabilities.isCreativeMode) { - --itemstack.stackSize; - } - if (itemstack.stackSize <= 0) { - entityplayer.inventory.setInventorySlotContents(entityplayer.inventory.currentItem, null); - } - return true; - } - } - } - return false; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/cabbageCrop.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/cabbageCrop.java deleted file mode 100644 index cd25957..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/cabbageCrop.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.CinderLoE; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import lotr.common.LOTRMod; -import net.minecraft.block.BlockCrops; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.item.Item; -import net.minecraft.util.IIcon; -import net.minecraft.world.IBlockAccess; -import net.minecraftforge.common.EnumPlantType; - -public class cabbageCrop - extends BlockCrops { - @SideOnly(value=Side.CLIENT) - private IIcon[] cabbageIcons; - - @SideOnly(value=Side.CLIENT) - public IIcon getIcon(int i, int j) { - if (j < 7) { - if (j == 6) { - j = 5; - } - return this.cabbageIcons[j >> 1]; - } - return this.cabbageIcons[3]; - } - - @SideOnly(value=Side.CLIENT) - public void registerBlockIcons(IIconRegister iconregister) { - this.cabbageIcons = new IIcon[4]; - for (int i = 0; i < this.cabbageIcons.length; ++i) { - this.cabbageIcons[i] = iconregister.registerIcon(this.getTextureName() + "_" + i); - } - } - - public Item func_149866_i() { - return CinderLoE.cabbage; - } - - public Item func_149865_P() { - return CinderLoE.cabbage; - } - - public EnumPlantType getPlantType(IBlockAccess world, int i, int j, int k) { - return EnumPlantType.Crop; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/cutDrystone.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/cutDrystone.java deleted file mode 100644 index 74beb96..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/cutDrystone.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.LoECreativeTabs; -import com.zivilon.cinder_loe.util.Utilities; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import lotr.common.LOTRCreativeTabs; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.creativetab.CreativeTabs; - -import java.lang.reflect.Field; - -public class cutDrystone extends Block { - - public cutDrystone() { - super(Material.rock); // Choose the appropriate material - // Set other properties like hardness, resistance, name, etc. - this.setCreativeTab(LoECreativeTabs.tabBlockLoE); - setHardness(2.0F); - setResistance(5.0F); - setBlockTextureName(Utilities.toSnakeCase("lotr:cut_drystone")); - setBlockName("lotr:cutDrystone"); - // setCreativeTab((CreativeTabs) LOTRCreativeTabs.tabBlock); - } - - @SideOnly(Side.CLIENT) - public void registerBlockIcons(IIconRegister iconRegister) { - this.blockIcon = iconRegister.registerIcon("lotr:cutDrystone"); - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/goldChain.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/goldChain.java deleted file mode 100644 index b4498f1..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/goldChain.java +++ /dev/null @@ -1,121 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import lotr.common.block.LOTRBlockChandelier; -import lotr.common.block.LOTRBlockOrcChain; -import net.minecraft.block.*; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.common.util.ForgeDirection; - -public class goldChain - extends LOTRBlockOrcChain { - - public IIcon icon; - @SideOnly(value= Side.CLIENT) - private IIcon iconMiddle; - @SideOnly(value=Side.CLIENT) - private IIcon iconTop; - @SideOnly(value=Side.CLIENT) - private IIcon iconBottom; - @SideOnly(value=Side.CLIENT) - private IIcon iconSingle; - - public goldChain() { - this.setHardness(1.0f); - this.setStepSound(Block.soundTypeMetal); - this.textureName = "lotr:goldChain"; - setBlockName("lotr:goldChain"); - setBlockTextureName("lotr:goldChain"); - float f = 0.2f; - this.setBlockBounds(0.5f - f, 0.0f, 0.5f - f, 0.5f + f, 1.0f, 0.5f + f); - } - - @SideOnly(value=Side.CLIENT) - public void registerBlockIcons(IIconRegister iconregister) { - this.iconMiddle = iconregister.registerIcon(this.getTextureName() + "_mid"); - this.iconTop = iconregister.registerIcon(this.getTextureName() + "_top"); - this.iconBottom = iconregister.registerIcon(this.getTextureName() + "_bottom"); - this.iconSingle = iconregister.registerIcon(this.getTextureName() + "_single"); - this.blockIcon = iconregister.registerIcon(this.getTextureName()); - } - - @SideOnly(value=Side.CLIENT) - public IIcon getIcon(IBlockAccess world, int i, int j, int k, int side) { - boolean chainBelow; - Block above = world.getBlock(i, j + 1, k); - Block below = world.getBlock(i, j - 1, k); - boolean chainAbove = above instanceof goldChain; - boolean bl = chainBelow = below instanceof goldChain || below instanceof LOTRBlockChandelier; - if (chainAbove && chainBelow) { - return this.iconMiddle; - } - if (chainAbove) { - return this.iconBottom; - } - if (chainBelow) { - return this.iconTop; - } - return this.iconSingle; - } - - @SideOnly(value=Side.CLIENT) - public IIcon getIcon(int i, int j) { - return this.iconMiddle; - } - - @SideOnly(value=Side.CLIENT) - public String getItemIconName() { - return this.getTextureName(); - } - - public boolean canPlaceBlockAt(World world, int i, int j, int k) { - Block block = world.getBlock(i, j + 1, k); - int meta = world.getBlockMetadata(i, j + 1, k); - if (block instanceof goldChain) { - return true; - } - if (block instanceof BlockFence || block instanceof BlockWall) { - return true; - } - if (block instanceof BlockSlab && !block.isOpaqueCube() && (meta & 8) == 0) { - return true; - } - if (block instanceof BlockStairs && (meta & 4) == 0) { - return true; - } - return world.getBlock(i, j + 1, k).isSideSolid((IBlockAccess)world, i, j + 1, k, ForgeDirection.DOWN); - } - - public boolean onBlockActivated(World world, int i, int j, int k, EntityPlayer entityplayer, int side, float f, float f1, float f2) { - ItemStack itemstack = entityplayer.getHeldItem(); - if (itemstack != null && itemstack.getItem() == Item.getItemFromBlock((Block)this)) { - Block block; - int j1; - for (j1 = j; j1 >= 0 && j1 < world.getHeight() && (block = world.getBlock(i, j1, k)) == this; --j1) { - } - if (j1 >= 0 && j1 < world.getHeight()) { - block = world.getBlock(i, j1, k); - if (this.canPlaceBlockOnSide(world, i, j1, k, side) && block.isReplaceable((IBlockAccess)world, i, j1, k) && !block.getMaterial().isLiquid()) { - int thisMeta = world.getBlockMetadata(i, j, k); - world.setBlock(i, j1, k, (Block)this, thisMeta, 3); - world.playSoundEffect((double)((float)i + 0.5f), (double)((float)j1 + 0.5f), (double)((float)k + 0.5f), this.stepSound.func_150496_b(), (this.stepSound.getVolume() + 1.0f) / 2.0f, this.stepSound.getPitch() * 0.8f); - if (!entityplayer.capabilities.isCreativeMode) { - --itemstack.stackSize; - } - if (itemstack.stackSize <= 0) { - entityplayer.inventory.setInventorySlotContents(entityplayer.inventory.currentItem, null); - } - return true; - } - } - } - return false; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/ironChain.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/ironChain.java deleted file mode 100644 index 180e6b6..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/ironChain.java +++ /dev/null @@ -1,121 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import lotr.common.block.LOTRBlockChandelier; -import lotr.common.block.LOTRBlockOrcChain; -import net.minecraft.block.*; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.common.util.ForgeDirection; - -public class ironChain - extends LOTRBlockOrcChain { - - public IIcon icon; - @SideOnly(value= Side.CLIENT) - private IIcon iconMiddle; - @SideOnly(value=Side.CLIENT) - private IIcon iconTop; - @SideOnly(value=Side.CLIENT) - private IIcon iconBottom; - @SideOnly(value=Side.CLIENT) - private IIcon iconSingle; - - public ironChain() { - this.setHardness(1.0f); - this.setStepSound(Block.soundTypeMetal); - this.textureName = "lotr:ironChain"; - setBlockName("lotr:ironChain"); - setBlockTextureName("lotr:ironChain"); - float f = 0.2f; - this.setBlockBounds(0.5f - f, 0.0f, 0.5f - f, 0.5f + f, 1.0f, 0.5f + f); - } - - @SideOnly(value=Side.CLIENT) - public void registerBlockIcons(IIconRegister iconregister) { - this.iconMiddle = iconregister.registerIcon(this.getTextureName() + "_mid"); - this.iconTop = iconregister.registerIcon(this.getTextureName() + "_top"); - this.iconBottom = iconregister.registerIcon(this.getTextureName() + "_bottom"); - this.iconSingle = iconregister.registerIcon(this.getTextureName() + "_single"); - this.blockIcon = iconregister.registerIcon(this.getTextureName()); - } - - @SideOnly(value=Side.CLIENT) - public IIcon getIcon(IBlockAccess world, int i, int j, int k, int side) { - boolean chainBelow; - Block above = world.getBlock(i, j + 1, k); - Block below = world.getBlock(i, j - 1, k); - boolean chainAbove = above instanceof ironChain; - boolean bl = chainBelow = below instanceof ironChain || below instanceof LOTRBlockChandelier; - if (chainAbove && chainBelow) { - return this.iconMiddle; - } - if (chainAbove) { - return this.iconBottom; - } - if (chainBelow) { - return this.iconTop; - } - return this.iconSingle; - } - - @SideOnly(value=Side.CLIENT) - public IIcon getIcon(int i, int j) { - return this.iconMiddle; - } - - @SideOnly(value=Side.CLIENT) - public String getItemIconName() { - return this.getTextureName(); - } - - public boolean canPlaceBlockAt(World world, int i, int j, int k) { - Block block = world.getBlock(i, j + 1, k); - int meta = world.getBlockMetadata(i, j + 1, k); - if (block instanceof ironChain) { - return true; - } - if (block instanceof BlockFence || block instanceof BlockWall) { - return true; - } - if (block instanceof BlockSlab && !block.isOpaqueCube() && (meta & 8) == 0) { - return true; - } - if (block instanceof BlockStairs && (meta & 4) == 0) { - return true; - } - return world.getBlock(i, j + 1, k).isSideSolid((IBlockAccess)world, i, j + 1, k, ForgeDirection.DOWN); - } - - public boolean onBlockActivated(World world, int i, int j, int k, EntityPlayer entityplayer, int side, float f, float f1, float f2) { - ItemStack itemstack = entityplayer.getHeldItem(); - if (itemstack != null && itemstack.getItem() == Item.getItemFromBlock((Block)this)) { - Block block; - int j1; - for (j1 = j; j1 >= 0 && j1 < world.getHeight() && (block = world.getBlock(i, j1, k)) == this; --j1) { - } - if (j1 >= 0 && j1 < world.getHeight()) { - block = world.getBlock(i, j1, k); - if (this.canPlaceBlockOnSide(world, i, j1, k, side) && block.isReplaceable((IBlockAccess)world, i, j1, k) && !block.getMaterial().isLiquid()) { - int thisMeta = world.getBlockMetadata(i, j, k); - world.setBlock(i, j1, k, (Block)this, thisMeta, 3); - world.playSoundEffect((double)((float)i + 0.5f), (double)((float)j1 + 0.5f), (double)((float)k + 0.5f), this.stepSound.func_150496_b(), (this.stepSound.getVolume() + 1.0f) / 2.0f, this.stepSound.getPitch() * 0.8f); - if (!entityplayer.capabilities.isCreativeMode) { - --itemstack.stackSize; - } - if (itemstack.stackSize <= 0) { - entityplayer.inventory.setInventorySlotContents(entityplayer.inventory.currentItem, null); - } - return true; - } - } - } - return false; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/onionCrop.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/onionCrop.java deleted file mode 100644 index 5e8753b..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/onionCrop.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.CinderLoE; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import lotr.common.LOTRMod; -import net.minecraft.block.BlockCrops; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.item.Item; -import net.minecraft.util.IIcon; -import net.minecraft.world.IBlockAccess; -import net.minecraftforge.common.EnumPlantType; - -public class onionCrop - extends BlockCrops { - @SideOnly(value=Side.CLIENT) - private IIcon[] onionIcons; - - @SideOnly(value=Side.CLIENT) - public IIcon getIcon(int i, int j) { - if (j < 7) { - if (j == 6) { - j = 5; - } - return this.onionIcons[j >> 1]; - } - return this.onionIcons[3]; - } - - @SideOnly(value=Side.CLIENT) - public void registerBlockIcons(IIconRegister iconregister) { - this.onionIcons = new IIcon[4]; - for (int i = 0; i < this.onionIcons.length; ++i) { - this.onionIcons[i] = iconregister.registerIcon(this.getTextureName() + "_" + i); - } - } - - - public Item func_149866_i() { - return CinderLoE.onion; - } - - public Item func_149865_P() { - return CinderLoE.onion; - } - - public EnumPlantType getPlantType(IBlockAccess world, int i, int j, int k) { - return EnumPlantType.Crop; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/plaster.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/plaster.java deleted file mode 100644 index 8870169..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/plaster.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.util.Utilities; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import com.zivilon.cinder_loe.LoECreativeTabs; - -import java.lang.reflect.Field; - -public class plaster extends Block { - - public plaster() { - super(Material.rock); // Choose the appropriate material - setCreativeTab(LoECreativeTabs.tabBlockLoE); - // Set other properties like hardness, resistance, name, etc. - setHardness(2.0F); - setResistance(5.0F); - setBlockTextureName(Utilities.toSnakeCase("lotr:plaster")); - setBlockName("lotr:plaster"); - // setCreativeTab((CreativeTabs) LOTRCreativeTabs.tabBlock); - } - - @SideOnly(Side.CLIENT) - public void registerBlockIcons(IIconRegister iconRegister) { - this.blockIcon = iconRegister.registerIcon("lotr:plaster"); - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/reeflessCoral.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/reeflessCoral.java deleted file mode 100644 index 67294ee..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/reeflessCoral.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.LoECreativeTabs; -import com.zivilon.cinder_loe.util.Utilities; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import lotr.common.LOTRCreativeTabs; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.creativetab.CreativeTabs; - -import java.lang.reflect.Field; - -public class reeflessCoral extends Block { - - public reeflessCoral() { - super(Material.rock); // Choose the appropriate material - setCreativeTab(LoECreativeTabs.tabBlockLoE); - // Set other properties like hardness, resistance, name, etc. - setHardness(2.0F); - setResistance(5.0F); - setBlockTextureName(Utilities.toSnakeCase("lotr:reeflessCoral")); - setBlockName("lotr:reeflessCoral"); - // setCreativeTab((CreativeTabs) LOTRCreativeTabs.tabDeco); - } - - @SideOnly(Side.CLIENT) - public void registerBlockIcons(IIconRegister iconRegister) { - this.blockIcon = iconRegister.registerIcon("lotr:reeflessCoral"); - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/silverChain.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/silverChain.java deleted file mode 100644 index 4236d1b..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/silverChain.java +++ /dev/null @@ -1,125 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.util.Utilities; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import lotr.common.LOTRMod; -import lotr.common.block.LOTRBlockChandelier; -import lotr.common.block.LOTRBlockOrcChain; -import net.minecraft.block.*; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.AxisAlignedBB; -import net.minecraft.util.IIcon; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.common.util.ForgeDirection; - -public class silverChain extends LOTRBlockOrcChain { - - public IIcon icon; - @SideOnly(value= Side.CLIENT) - private IIcon iconMiddle; - @SideOnly(value=Side.CLIENT) - private IIcon iconTop; - @SideOnly(value=Side.CLIENT) - private IIcon iconBottom; - @SideOnly(value=Side.CLIENT) - private IIcon iconSingle; - - public silverChain() { - this.setHardness(1.0f); - this.setStepSound(Block.soundTypeMetal); - this.textureName = "lotr:silverChain"; - setBlockName("lotr:silverChain"); - setBlockTextureName("lotr:silverChain"); - float f = 0.2f; - this.setBlockBounds(0.5f - f, 0.0f, 0.5f - f, 0.5f + f, 1.0f, 0.5f + f); - } - - @SideOnly(value=Side.CLIENT) - public void registerBlockIcons(IIconRegister iconregister) { - this.iconMiddle = iconregister.registerIcon(this.getTextureName() + "_mid"); - this.iconTop = iconregister.registerIcon(this.getTextureName() + "_top"); - this.iconBottom = iconregister.registerIcon(this.getTextureName() + "_bottom"); - this.iconSingle = iconregister.registerIcon(this.getTextureName() + "_single"); - this.blockIcon = iconregister.registerIcon(this.getTextureName()); - } - - @SideOnly(value=Side.CLIENT) - public IIcon getIcon(IBlockAccess world, int i, int j, int k, int side) { - boolean chainBelow; - Block above = world.getBlock(i, j + 1, k); - Block below = world.getBlock(i, j - 1, k); - boolean chainAbove = above instanceof silverChain; - boolean bl = chainBelow = below instanceof silverChain || below instanceof LOTRBlockChandelier; - if (chainAbove && chainBelow) { - return this.iconMiddle; - } - if (chainAbove) { - return this.iconBottom; - } - if (chainBelow) { - return this.iconTop; - } - return this.iconSingle; - } - - @SideOnly(value=Side.CLIENT) - public IIcon getIcon(int i, int j) { - return this.iconMiddle; - } - - @SideOnly(value=Side.CLIENT) - public String getItemIconName() { - return this.getTextureName(); - } - - public boolean canPlaceBlockAt(World world, int i, int j, int k) { - Block block = world.getBlock(i, j + 1, k); - int meta = world.getBlockMetadata(i, j + 1, k); - if (block instanceof silverChain) { - return true; - } - if (block instanceof BlockFence || block instanceof BlockWall) { - return true; - } - if (block instanceof BlockSlab && !block.isOpaqueCube() && (meta & 8) == 0) { - return true; - } - if (block instanceof BlockStairs && (meta & 4) == 0) { - return true; - } - return world.getBlock(i, j + 1, k).isSideSolid((IBlockAccess)world, i, j + 1, k, ForgeDirection.DOWN); - } - - public boolean onBlockActivated(World world, int i, int j, int k, EntityPlayer entityplayer, int side, float f, float f1, float f2) { - ItemStack itemstack = entityplayer.getHeldItem(); - if (itemstack != null && itemstack.getItem() == Item.getItemFromBlock((Block)this)) { - Block block; - int j1; - for (j1 = j; j1 >= 0 && j1 < world.getHeight() && (block = world.getBlock(i, j1, k)) == this; --j1) { - } - if (j1 >= 0 && j1 < world.getHeight()) { - block = world.getBlock(i, j1, k); - if (this.canPlaceBlockOnSide(world, i, j1, k, side) && block.isReplaceable((IBlockAccess)world, i, j1, k) && !block.getMaterial().isLiquid()) { - int thisMeta = world.getBlockMetadata(i, j, k); - world.setBlock(i, j1, k, (Block)this, thisMeta, 3); - world.playSoundEffect((double)((float)i + 0.5f), (double)((float)j1 + 0.5f), (double)((float)k + 0.5f), this.stepSound.func_150496_b(), (this.stepSound.getVolume() + 1.0f) / 2.0f, this.stepSound.getPitch() * 0.8f); - if (!entityplayer.capabilities.isCreativeMode) { - --itemstack.stackSize; - } - if (itemstack.stackSize <= 0) { - entityplayer.inventory.setInventorySlotContents(entityplayer.inventory.currentItem, null); - } - return true; - } - } - } - return false; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/voidblock.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/voidblock.java deleted file mode 100644 index 8964cf3..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/voidblock.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.util.Utilities; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.creativetab.CreativeTabs; - -public class voidblock extends Block { - - public voidblock() { - super(Material.rock); // Choose the appropriate material - // Set other properties like hardness, resistance, name, etc. - setHardness(100.0F); - setResistance(100.0F); - setBlockTextureName(Utilities.toSnakeCase("lotr:voidblock")); - setBlockName("lotr:voidblock"); - } - - @SideOnly(Side.CLIENT) - public void registerBlockIcons(IIconRegister iconRegister) { - this.blockIcon = iconRegister.registerIcon("lotr:voidblock"); - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/blocks/woodpanel.java b/src (1)/main/java/com/zivilon/cinder_loe/blocks/woodpanel.java deleted file mode 100644 index 2e8fc23..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/blocks/woodpanel.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.zivilon.cinder_loe.blocks; - -import com.zivilon.cinder_loe.LoECreativeTabs; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; - - -public class woodpanel extends RotatableBlockBase3{ - public woodpanel() { - super(Material.wood, "lotr:woodpanel"); - setCreativeTab(LoECreativeTabs.tabBlockLoE); - setStepSound(Block.soundTypeWood); - setHardness(2.0F); - setResistance(5.0F); - setBlockName("lotr:woodpanel"); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/character/CharacterEventListener.java b/src (1)/main/java/com/zivilon/cinder_loe/character/CharacterEventListener.java deleted file mode 100644 index e76917f..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/character/CharacterEventListener.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.zivilon.cinder_loe.character; - -import cpw.mods.fml.common.eventhandler.SubscribeEvent; -import cpw.mods.fml.common.eventhandler.EventPriority; -import net.minecraftforge.common.MinecraftForge; -import net.minecraftforge.event.entity.living.LivingHurtEvent; - -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.passive.EntityAnimal; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.util.AxisAlignedBB; -import net.minecraft.world.World; - -import java.util.ArrayList; -import java.util.List; -import java.util.UUID; - -import com.zivilon.cinder_loe.entity.npc.radagast.FangornAnimal; - -public class CharacterEventListener { - - public CharacterEventListener() { - // Register the event listener - MinecraftForge.EVENT_BUS.register(this); - } - - @SubscribeEvent(priority = EventPriority.NORMAL, receiveCanceled = true) - public void onLivingHurt(LivingHurtEvent event) { - // Check if the entity being hurt is a character of interest - EntityLivingBase damagedEntity = event.entityLiving; - - // Check if the source of damage is an entity - if (event.source.getSourceOfDamage() instanceof EntityLivingBase) { - // The entity that caused the damage - EntityLivingBase damagerEntity = (EntityLivingBase) event.source.getSourceOfDamage(); - - if (damagedEntity instanceof EntityPlayerMP) { - EntityPlayerMP player = (EntityPlayerMP)damagedEntity; - - UUID radagast = CharacterRoleAPI.getCharacterRoleUUID("Radagast"); - if (player.getUniqueID().equals(radagast)) { - List entities = findAnimalsAndFangornEntities((EntityLivingBase)player); - for (EntityLivingBase entity : entities) { - EntityLiving animal = (EntityLiving) entity; - animal.setAttackTarget((EntityLivingBase)damagerEntity); - } - } - } - } - } - - public static List findAnimalsAndFangornEntities(EntityLivingBase centerEntity) { - World world = centerEntity.worldObj; - double searchRadius = 32.0D; // Define the search radius - - // Calculate the search area - AxisAlignedBB searchArea = AxisAlignedBB.getBoundingBox( - centerEntity.posX - searchRadius, centerEntity.posY - searchRadius, centerEntity.posZ - searchRadius, - centerEntity.posX + searchRadius, centerEntity.posY + searchRadius, centerEntity.posZ + searchRadius); - - // Retrieve all entities within the search area - List entitiesWithinAABB = world.getEntitiesWithinAABB(EntityLivingBase.class, searchArea); - List foundEntities = new ArrayList(); - - // Manually filter the entities to match your criteria - for (Object obj : entitiesWithinAABB) { - if (obj instanceof EntityAnimal || obj instanceof FangornAnimal) { // Adjust for your custom entity - foundEntities.add((EntityLivingBase) obj); - } - } - - return foundEntities; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/character/CharacterRoleAPI.java b/src (1)/main/java/com/zivilon/cinder_loe/character/CharacterRoleAPI.java deleted file mode 100644 index c45722a..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/character/CharacterRoleAPI.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zivilon.cinder_loe.character; - -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; -import java.io.*; -import java.nio.file.*; -import java.lang.reflect.Type; -import java.util.*; - -public class CharacterRoleAPI { - - private static final Path FILE_PATH = Paths.get("character_roles.json"); - private static Map characterRoles = new HashMap<>(); - - public static void loadRolesFromFile() { - if (!Files.exists(FILE_PATH)) { - try { - Files.createFile(FILE_PATH); - } catch (IOException e) { - e.printStackTrace(); - } - return; - } - - try (Reader reader = Files.newBufferedReader(FILE_PATH)) { - Gson gson = new Gson(); - Type type = new TypeToken>() {}.getType(); - characterRoles = gson.fromJson(reader, type); - if (characterRoles == null) { - characterRoles = new HashMap<>(); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - - public static void saveRolesToFile() { - Gson gson = new Gson(); - try (Writer writer = Files.newBufferedWriter(FILE_PATH)) { - gson.toJson(characterRoles, writer); - } catch (IOException e) { - e.printStackTrace(); - } - } - - public static UUID getCharacterRoleUUID(String roleName) { - return characterRoles.get(roleName); - } - - public static void setCharacterRoleUUID(String roleName, UUID playerUUID) { - characterRoles.put(roleName, playerUUID); - saveRolesToFile(); - } - - public static void removeCharacterRole(String roleName) { - if (characterRoles.containsKey(roleName)) { - characterRoles.remove(roleName); - saveRolesToFile(); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelBodyJade.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelBodyJade.java deleted file mode 100644 index b03eb42..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelBodyJade.java +++ /dev/null @@ -1,101 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - -import lotr.client.model.LOTRModelBiped; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; - -/** - * LegsJade - Cleric_red - * Created using Tabula 4.1.1 - */ -public class ModelBodyJade extends LOTRModelBiped { - public ModelRenderer lpad; - public ModelRenderer lribbon; - public ModelRenderer neck3; - public ModelRenderer neck2; - public ModelRenderer neck1; - public ModelRenderer rpad; - public ModelRenderer rribbon; - - public ModelBodyJade(float f) { - super(f); - this.textureWidth = 64; - this.textureHeight = 32; - this.bipedBody.cubeList.clear(); - this.bipedRightArm.cubeList.clear(); - this.bipedLeftArm.cubeList.clear(); - this.neck1 = new ModelRenderer(this, 13, 0); - this.neck1.setRotationPoint(0.0F, 0.0F, 0.0F); - this.neck1.addBox(-3.7F, -2.1F, -3.4F, 3, 3, 1, 0.0F); - this.setRotateAngle(neck1, 0.5009094953223726F, 0.22759093446006054F, 0.0F); - - this.lpad = new ModelRenderer(this, 16, 0); - this.lpad.setRotationPoint(0.0F, 0.0F, 0.0F); - this.lpad.addBox(3.5F, -4.5F, -2.5F, 1, 7, 5, 0.0F); - - this.bipedBody = new ModelRenderer(this, 16, 16); - this.bipedBody.setRotationPoint(0.0F, 0.0F, 0.0F); - this.bipedBody.addBox(-4.0F, 0.0F, -2.0F, 8, 12, 4, 0.5F); - - this.rribbon = new ModelRenderer(this, 16, 7); - this.rribbon.setRotationPoint(0.0F, 0.0F, 0.0F); - this.rribbon.addBox(-4F, 2.5F, -2.5F, 0, 2, 5, 0.0F); - - this.bipedRightArm = new ModelRenderer(this, 40, 16); - this.bipedRightArm.mirror = true; - this.bipedRightArm.setRotationPoint(5.0F, 2.0F, -0.0F); - this.bipedRightArm.addBox( -3.0F, -2.0F, -2.0F, 4, 12, 4, 0.5F); - this.setRotateAngle(bipedRightArm, 4.371139006309477E-9F, 0.0F, -0.02639634720981121F); - - this.neck2 = new ModelRenderer(this, 13, 0); - this.neck2.setRotationPoint(0.0F, 0.0F, 0.0F); - this.neck2.addBox(0.7F, -2.1F, -3.4F, 3, 3, 1, 0.0F); - this.setRotateAngle(neck2, 0.5009094953223726F, -0.22759093446006054F, 0.0F); - - this.bipedLeftArm = new ModelRenderer(this, 40, 16); - this.bipedLeftArm.setRotationPoint(-5.0F, 2.0F, 0.0F); - this.bipedLeftArm.addBox(-1.0F, -2.0F, -2.0F, 4, 12, 4, 0.5F); - this.setRotateAngle(bipedLeftArm, -4.371139006309477E-9F, 0.0F, 0.02639634720981121F); - - this.lribbon = new ModelRenderer(this, 16, 7); - this.lribbon.setRotationPoint(0.0F, 0.0F, 0.0F); - this.lribbon.addBox(4F, 2.5F, -2.5F, 0, 2, 5, 0.0F); - this.rpad = new ModelRenderer(this, 16, 0); - this.rpad.setRotationPoint(0.0F, 0.0F, 0.0F); - this.rpad.addBox(-4.5F, -4.5F, -2.5F, 1, 7, 5, 0.0F); - - this.neck3 = new ModelRenderer(this, 13, 0); - this.neck3.setRotationPoint(0.0F, 0.0F, 0.0F); - this.neck3.addBox(-1.5F, -2.0F, -3.2F, 3, 3, 1, 0.0F); - this.setRotateAngle(neck3, 0.5009094953223726F, 0.0F, 0.0F); - this.bipedBody.addChild(this.neck1); - this.bipedLeftArm.addChild(this.lpad); - this.bipedRightArm.addChild(this.rribbon); - this.bipedBody.addChild(this.neck2); - this.bipedLeftArm.addChild(this.lribbon); - this.bipedRightArm.addChild(this.rpad); - this.bipedBody.addChild(this.neck3); - - this.bipedHead.cubeList.clear(); - this.bipedHeadwear.cubeList.clear(); - this.bipedRightLeg.cubeList.clear(); - this.bipedLeftLeg.cubeList.clear(); - } - - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - this.bipedBody.render(f5); - this.bipedRightArm.render(f5); - this.bipedLeftArm.render(f5); - } - - /** - * This is a helper function from Tabula to set the rotation of model parts - */ - public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelBodySerpent.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelBodySerpent.java deleted file mode 100644 index eff3740..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelBodySerpent.java +++ /dev/null @@ -1,90 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - -import lotr.client.model.LOTRModelBiped; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; - -/** - * Black serpent Chestpiece - cleric_red - * Created using Tabula 4.1.1 - */ -public class ModelBodySerpent extends LOTRModelBiped { - public ModelRenderer sash; - public ModelRenderer Quiver; - public ModelRenderer Arrows1; - public ModelRenderer Arrows1_1; - public ModelRenderer Arrows1_2; - public ModelRenderer Arrows1_3; - - public ModelBodySerpent(float f) { - super (f); - this.textureWidth = 64; - this.textureHeight = 32; - this.bipedBody.cubeList.clear(); - this.bipedRightArm.cubeList.clear(); - this.bipedLeftArm.cubeList.clear(); - - this.bipedBody = new ModelRenderer(this, 16, 16); - this.bipedBody.setRotationPoint(0.0F, 0.0F, 0.0F); - this.bipedBody.addBox(-4.0F, 0.0F, -2.0F, 8, 12, 4, 0.5F); - - this.bipedRightArm = new ModelRenderer(this, 40, 16); - this.bipedRightArm.mirror = true; - this.bipedRightArm.setRotationPoint(5.0F, 2.0F, -0.0F); - this.bipedRightArm.addBox( -3.0F, -2.0F, -2.0F, 4, 12, 4, 0.5F); - this.setRotateAngle(bipedRightArm, 4.371139006309477E-9F, 0.0F, -0.02639634720981121F); - - this.Arrows1_1 = new ModelRenderer(this, 6, 20); - this.Arrows1_1.setRotationPoint(0.0F, 0.0F, 0.0F); - this.Arrows1_1.addBox(-6.0F, -7.0F, 3.7F, 4, 3, 0, 0.0F); - this.Arrows1_3 = new ModelRenderer(this, 8, 23); - this.Arrows1_3.setRotationPoint(0.0F, 0.0F, 0.0F); - this.Arrows1_3.addBox(-2.5F, -7.0F, 1.2F, 0, 3, 3, 0.0F); - this.Quiver = new ModelRenderer(this, 33, 0); - this.Quiver.setRotationPoint(0.0F, 0.0F, 0.0F); - this.Quiver.addBox(-6.0F, -4.0F, 2.0F, 4, 12, 3, 0.0F); - this.setRotateAngle(Quiver, 0.0F, 0.0F, -0.5138249317871306F); - this.Arrows1_2 = new ModelRenderer(this, 8, 23); - this.Arrows1_2.setRotationPoint(0.0F, 0.0F, 0.0F); - this.Arrows1_2.addBox(-4.5F, -7.0F, 2.0F, 0, 3, 3, 0.0F); - - this.bipedLeftArm = new ModelRenderer(this, 40, 16); - this.bipedLeftArm.setRotationPoint(-5.0F, 2.0F, 0.0F); - this.bipedLeftArm.addBox(-1.0F, -2.0F, -2.0F, 4, 12, 4, 0.5F); - this.setRotateAngle(bipedLeftArm, -4.371139006309477E-9F, 0.0F, 0.02639634720981121F); - - this.sash = new ModelRenderer(this, 16, 3); - this.sash.setRotationPoint(0.0F, 0.0F, 0.0F); - this.sash.addBox(-4.0F, 0.0F, -2.7F, 8, 12, 0, 0.0F); - this.Arrows1 = new ModelRenderer(this, 6, 20); - this.Arrows1.setRotationPoint(0.0F, 0.0F, 0.0F); - this.Arrows1.addBox(-4.0F, -7.0F, 2.8F, 4, 3, 0, 0.0F); - this.Arrows1.addChild(this.Arrows1_1); - this.Arrows1_2.addChild(this.Arrows1_3); - this.sash.addChild(this.Quiver); - this.Arrows1_1.addChild(this.Arrows1_2); - this.bipedBody.addChild(this.sash); - this.Quiver.addChild(this.Arrows1); - - this.bipedHead.cubeList.clear(); - this.bipedHeadwear.cubeList.clear(); - this.bipedRightLeg.cubeList.clear(); - this.bipedLeftLeg.cubeList.clear(); - } - - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - this.bipedBody.render(f5); - this.bipedRightArm.render(f5); - this.bipedLeftArm.render(f5); - } - - /** - * This is a helper function from Tabula to set the rotation of model parts - */ - public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelBreeKettleHelmet.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelBreeKettleHelmet.java deleted file mode 100644 index b7835de..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelBreeKettleHelmet.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - -import lotr.client.model.LOTRModelBiped; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; - -public class ModelBreeKettleHelmet extends LOTRModelBiped { - public ModelRenderer shape9; - - public ModelBreeKettleHelmet(float f) { - super(f); // Call the parent constructor to initialize the biped parts - - this.textureWidth = 64; - this.textureHeight = 32; - - // Define the shape9 part and attach it to bipedHead - this.shape9 = new ModelRenderer(this, 0, 16); - this.shape9.setRotationPoint(0.0F, 0.0F, 0.0F); - //shape9.addBox(0F, -13F, -4F, 0, 4, 10); - this.shape9.addBox(-7.0F, -6.0F, -7.0F, 14, 0, 14, 0.0F); - - // Clear any previously defined parts for the bipedHead - this.bipedHead.cubeList.clear(); - - // Define the main helmet part and attach shape9 to it - this.bipedHead = new ModelRenderer(this, 0, 0); - this.bipedHead.setRotationPoint(0.0F, 0.0F, 0.0F); - // this.bipedHead.addBox(-4.5F, -9.0F, -4.5F, 9, 9, 9, 0.5F); // Adjusted position and scale - this.bipedHead.addBox(-4F, -8F, -4F, 8, 8, 8, f); // Adjusted position and scale (f) - this.bipedHead.addChild(this.shape9); - - // Clear unnecessary parts - this.bipedHeadwear.cubeList.clear(); - this.bipedBody.cubeList.clear(); - this.bipedRightArm.cubeList.clear(); - this.bipedLeftArm.cubeList.clear(); - this.bipedRightLeg.cubeList.clear(); - this.bipedLeftLeg.cubeList.clear(); - } - - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - this.bipedHead.render(f5); - } - - /** - * This is a helper function from Tabula to set the rotation of model parts - */ - public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelBrokenHalo.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelBrokenHalo.java deleted file mode 100644 index e672df7..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelBrokenHalo.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - -import lotr.client.model.LOTRModelBiped; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; - -public class ModelBrokenHalo extends LOTRModelBiped { - public ModelRenderer shape9; - - public ModelBrokenHalo(float f) { - super(f); - - this.textureWidth = 128; - this.textureHeight = 64; - - this.shape9 = new ModelRenderer(this, 32, 16); - this.shape9.setRotationPoint(0.0F, 0.0F, 0.0F); - - this.shape9.addBox(-8.0F, -14.0F, 5.0F, 16, 16, 0, 0.0F); - - this.bipedHead.cubeList.clear(); - - this.bipedHead = new ModelRenderer(this, 0, 0); - this.bipedHead.setRotationPoint(0.0F, 0.0F, 0.0F); - this.bipedHead.addBox(-4F, -8F, -4F, 8, 8, 8, f); // Adjusted position and scale (f) - this.bipedHead.addChild(this.shape9); - - this.bipedHeadwear.cubeList.clear(); - this.bipedBody.cubeList.clear(); - this.bipedRightArm.cubeList.clear(); - this.bipedLeftArm.cubeList.clear(); - this.bipedRightLeg.cubeList.clear(); - this.bipedLeftLeg.cubeList.clear(); - } - - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - this.bipedHead.render(f5); - } - - /** - * This is a helper function from Tabula to set the rotation of model parts - */ - public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelFangornAuroch.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelFangornAuroch.java deleted file mode 100644 index 2921aa7..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelFangornAuroch.java +++ /dev/null @@ -1,123 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; -import net.minecraft.util.MathHelper; - -public class ModelFangornAuroch extends ModelBase { - public ModelRenderer body; - - public ModelRenderer leg1; - - public ModelRenderer leg2; - - public ModelRenderer leg3; - - public ModelRenderer leg4; - - public ModelRenderer tail; - - public ModelRenderer head; - - public ModelRenderer horns; - - public ModelRenderer hornLeft1; - - public ModelRenderer hornLeft2; - - public ModelRenderer hornRight1; - - public ModelRenderer hornRight2; - - public ModelFangornAuroch() { - this.textureWidth = 128; - this.textureHeight = 64; - this.body = new ModelRenderer(this, 0, 0); - this.body.setRotationPoint(0.0F, 2.0F, -1.0F); - this.body.addBox(-8.0F, -6.0F, -11.0F, 16, 16, 26); - this.body.setTextureOffset(28, 42).addBox(-8.0F, -8.0F, -8.0F, 16, 2, 10); - this.body.setTextureOffset(84, 31).addBox(-3.0F, 10.0F, 4.0F, 6, 1, 6); - this.leg1 = new ModelRenderer(this, 0, 42); - this.leg1.setRotationPoint(-5.0F, 12.0F, 9.0F); - this.leg1.addBox(-2.5F, 0.0F, -2.5F, 5, 12, 5); - this.leg2 = new ModelRenderer(this, 0, 42); - this.leg2.setRotationPoint(5.0F, 12.0F, 9.0F); - this.leg2.mirror = true; - this.leg2.addBox(-2.5F, 0.0F, -2.5F, 5, 12, 5); - this.leg3 = new ModelRenderer(this, 0, 42); - this.leg3.setRotationPoint(-5.0F, 12.0F, -7.0F); - this.leg3.addBox(-2.5F, 0.0F, -2.5F, 5, 12, 5); - this.leg4 = new ModelRenderer(this, 0, 42); - this.leg4.setRotationPoint(5.0F, 12.0F, -7.0F); - this.leg4.mirror = true; - this.leg4.addBox(-2.5F, 0.0F, -2.5F, 5, 12, 5); - this.tail = new ModelRenderer(this, 20, 42); - this.tail.setRotationPoint(0.0F, 1.0F, 14.0F); - this.tail.addBox(-1.0F, -1.0F, 0.0F, 2, 12, 1); - this.head = new ModelRenderer(this, 58, 0); - this.head.setRotationPoint(0.0F, -1.0F, -10.0F); - this.head.addBox(-5.0F, -4.0F, -12.0F, 10, 10, 11); - this.head.setTextureOffset(89, 0).addBox(-3.0F, 1.0F, -15.0F, 6, 4, 4); - this.head.setTextureOffset(105, 0); - this.head.addBox(-8.0F, -2.5F, -7.0F, 3, 2, 1); - this.head.mirror = true; - this.head.addBox(5.0F, -2.5F, -7.0F, 3, 2, 1); - this.head.mirror = false; - this.horns = new ModelRenderer(this, 98, 21); - this.horns.setRotationPoint(0.0F, -3.5F, -5.0F); - this.horns.addBox(-6.0F, -1.5F, -1.5F, 12, 3, 3); - this.head.addChild(this.horns); - this.hornLeft1 = new ModelRenderer(this, 112, 27); - this.hornLeft1.setRotationPoint(-6.0F, 0.0F, 0.0F); - this.hornLeft1.addBox(-5.0F, -1.0F, -1.0F, 6, 2, 2); - this.hornLeft2 = new ModelRenderer(this, 114, 31); - this.hornLeft2.setRotationPoint(-5.0F, 0.0F, 0.0F); - this.hornLeft2.addBox(-5.0F, -0.5F, -0.5F, 6, 1, 1); - this.hornLeft1.addChild(this.hornLeft2); - this.horns.addChild(this.hornLeft1); - this.hornRight1 = new ModelRenderer(this, 112, 27); - this.hornRight1.mirror = true; - this.hornRight1.setRotationPoint(6.0F, 0.0F, 0.0F); - this.hornRight1.addBox(-1.0F, -1.0F, -1.0F, 6, 2, 2); - this.hornRight2 = new ModelRenderer(this, 114, 31); - this.hornRight2.mirror = true; - this.hornRight2.setRotationPoint(5.0F, 0.0F, 0.0F); - this.hornRight2.addBox(-1.0F, -0.5F, -0.5F, 6, 1, 1); - this.hornRight1.addChild(this.hornRight2); - this.horns.addChild(this.hornRight1); - } - - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - this.horns.showModel = true; - setRotationAngles(f, f1, f2, f3, f4, f5, entity); - this.head.render(f5); - this.body.render(f5); - this.leg1.render(f5); - this.leg2.render(f5); - this.leg3.render(f5); - this.leg4.render(f5); - this.tail.render(f5); - } - - public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity entity) { - this.head.rotateAngleX = 0.0F; - this.head.rotateAngleY = 0.0F; - this.head.rotateAngleZ = 0.0F; - this.head.rotateAngleX += (float)Math.toRadians(f4); - this.head.rotateAngleY += (float)Math.toRadians(f3); - this.head.rotateAngleX += MathHelper.cos(f * 0.2F) * f1 * 0.4F; - this.hornLeft1.rotateAngleZ = (float)Math.toRadians(25.0D); - this.hornLeft2.rotateAngleZ = (float)Math.toRadians(15.0D); - this.hornRight1.rotateAngleZ = -this.hornLeft1.rotateAngleZ; - this.hornRight2.rotateAngleZ = -this.hornLeft2.rotateAngleZ; - this.hornLeft1.rotateAngleY = (float)Math.toRadians(-25.0D); - this.hornRight1.rotateAngleY = -this.hornLeft1.rotateAngleY; - this.hornLeft1.rotateAngleX = (float)Math.toRadians(35.0D); - this.hornRight1.rotateAngleX = this.hornLeft1.rotateAngleX; - this.leg1.rotateAngleX = MathHelper.cos(f * 0.4F) * f1 * 0.8F; - this.leg2.rotateAngleX = MathHelper.cos(f * 0.4F + 3.1415927F) * f1 * 0.8F; - this.leg3.rotateAngleX = MathHelper.cos(f * 0.4F + 3.1415927F) * f1 * 0.8F; - this.leg4.rotateAngleX = MathHelper.cos(f * 0.4F) * f1 * 0.8F; - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelFangornElk.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelFangornElk.java deleted file mode 100644 index 62d5b9a..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelFangornElk.java +++ /dev/null @@ -1,187 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - -import lotr.common.LOTRMod; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; -import net.minecraft.util.MathHelper; -import org.lwjgl.opengl.GL11; - -import com.zivilon.cinder_loe.entity.npc.radagast.FangornElk; - -public class ModelFangornElk extends ModelBase { - private ModelRenderer body; - - private ModelRenderer leg1; - - private ModelRenderer leg2; - - private ModelRenderer leg3; - - private ModelRenderer leg4; - - private ModelRenderer head; - - private ModelRenderer nose; - - private ModelRenderer antlersRight_1; - - private ModelRenderer antlersRight_2; - - private ModelRenderer antlersRight_3; - - private ModelRenderer antlersRight_4; - - private ModelRenderer antlersLeft_1; - - private ModelRenderer antlersLeft_2; - - private ModelRenderer antlersLeft_3; - - private ModelRenderer antlersLeft_4; - - public ModelFangornElk() { - this(0.0F); - } - - public ModelFangornElk(float f) { - this.textureWidth = 128; - this.textureHeight = 64; - this.body = new ModelRenderer(this, 0, 0); - this.body.setRotationPoint(0.0F, 4.0F, 9.0F); - this.body.addBox(-6.0F, -4.0F, -21.0F, 12, 11, 26, f); - ModelRenderer tail = new ModelRenderer(this, 0, 54); - tail.addBox(-1.0F, -5.0F, 2.0F, 2, 2, 8, f); - tail.rotateAngleX = (float)Math.toRadians(-60.0D); - this.body.addChild(tail); - this.leg1 = new ModelRenderer(this, 42, 37); - this.leg1.setRotationPoint(-4.0F, 3.0F, 8.0F); - this.leg1.addBox(-5.5F, 0.0F, -3.0F, 7, 11, 8, f); - this.leg1.setTextureOffset(26, 37).addBox(-4.0F, 11.0F, -1.0F, 4, 10, 4, f); - this.leg2 = new ModelRenderer(this, 42, 37); - this.leg2.mirror = true; - this.leg2.setRotationPoint(4.0F, 3.0F, 8.0F); - this.leg2.addBox(-1.5F, 0.0F, -3.0F, 7, 11, 8, f); - this.leg2.setTextureOffset(26, 37).addBox(0.0F, 11.0F, -1.0F, 4, 10, 4, f); - this.leg3 = new ModelRenderer(this, 0, 37); - this.leg3.setRotationPoint(-4.0F, 4.0F, -6.0F); - this.leg3.addBox(-4.5F, 0.0F, -3.0F, 6, 10, 7, f); - this.leg3.setTextureOffset(26, 37).addBox(-3.5F, 10.0F, -2.0F, 4, 10, 4, f); - this.leg4 = new ModelRenderer(this, 0, 37); - this.leg4.mirror = true; - this.leg4.setRotationPoint(4.0F, 4.0F, -6.0F); - this.leg4.addBox(-1.5F, 0.0F, -3.0F, 6, 10, 7, f); - this.leg4.setTextureOffset(26, 37).addBox(-0.5F, 10.0F, -2.0F, 4, 10, 4, f); - this.head = new ModelRenderer(this, 50, 0); - this.head.setRotationPoint(0.0F, 4.0F, -10.0F); - this.head.addBox(-2.0F, -10.0F, -4.0F, 4, 12, 8, f); - this.head.setTextureOffset(74, 0).addBox(-3.0F, -16.0F, -8.0F, 6, 6, 13, f); - this.head.setTextureOffset(50, 20); - this.head.addBox(-2.0F, -18.0F, 3.0F, 1, 2, 1, f); - this.head.mirror = true; - this.head.addBox(1.0F, -18.0F, 3.0F, 1, 2, 1, f); - this.nose = new ModelRenderer(this, 56, 20); - this.nose.addBox(-1.0F, -14.5F, -9.0F, 2, 2, 1, f); - this.antlersRight_1 = new ModelRenderer(this, 0, 0); - this.antlersRight_1.addBox(10.0F, -19.0F, 2.5F, 1, 12, 1, f); - this.antlersRight_1.rotateAngleZ = (float)Math.toRadians(-65.0D); - this.antlersRight_2 = new ModelRenderer(this, 4, 0); - this.antlersRight_2.addBox(-3.0F, -23.6F, 2.5F, 1, 8, 1, f); - this.antlersRight_2.rotateAngleZ = (float)Math.toRadians(-15.0D); - this.antlersRight_3 = new ModelRenderer(this, 8, 0); - this.antlersRight_3.addBox(-8.0F, -36.0F, 2.5F, 1, 16, 1, f); - this.antlersRight_3.rotateAngleZ = (float)Math.toRadians(-15.0D); - this.antlersRight_4 = new ModelRenderer(this, 12, 0); - this.antlersRight_4.addBox(7.5F, -35.0F, 2.5F, 1, 10, 1, f); - this.antlersRight_4.rotateAngleZ = (float)Math.toRadians(-50.0D); - this.head.addChild(this.antlersRight_1); - this.head.addChild(this.antlersRight_2); - this.head.addChild(this.antlersRight_3); - this.head.addChild(this.antlersRight_4); - this.antlersLeft_1 = new ModelRenderer(this, 0, 0); - this.antlersLeft_1.mirror = true; - this.antlersLeft_1.addBox(-11.0F, -19.0F, 2.5F, 1, 12, 1, f); - this.antlersLeft_1.rotateAngleZ = (float)Math.toRadians(65.0D); - this.antlersLeft_2 = new ModelRenderer(this, 4, 0); - this.antlersLeft_2.mirror = true; - this.antlersLeft_2.addBox(2.0F, -23.6F, 2.5F, 1, 8, 1, f); - this.antlersLeft_2.rotateAngleZ = (float)Math.toRadians(15.0D); - this.antlersLeft_3 = new ModelRenderer(this, 8, 0); - this.antlersLeft_3.mirror = true; - this.antlersLeft_3.addBox(7.0F, -36.0F, 2.5F, 1, 16, 1, f); - this.antlersLeft_3.rotateAngleZ = (float)Math.toRadians(15.0D); - this.antlersLeft_4 = new ModelRenderer(this, 12, 0); - this.antlersLeft_4.mirror = true; - this.antlersLeft_4.addBox(-8.5F, -35.0F, 2.5F, 1, 10, 1, f); - this.antlersLeft_4.rotateAngleZ = (float)Math.toRadians(50.0D); - this.head.addChild(this.antlersLeft_1); - this.head.addChild(this.antlersLeft_2); - this.head.addChild(this.antlersLeft_3); - this.head.addChild(this.antlersLeft_4); - } - - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - FangornElk elk = (FangornElk)entity; - setRotationAngles(f, f1, f2, f3, f4, f5, (Entity)elk); - GL11.glPushMatrix(); - float scale = 1.0F; - GL11.glTranslatef(0.0F, 24.0F * (1.0F - scale) * f5, 0.0F); - GL11.glScalef(scale, scale, scale); - boolean showAntlers = (scale > 0.75F); - this.antlersRight_1.showModel = showAntlers; - this.antlersRight_2.showModel = showAntlers; - this.antlersRight_3.showModel = showAntlers; - this.antlersRight_4.showModel = showAntlers; - this.antlersLeft_1.showModel = showAntlers; - this.antlersLeft_2.showModel = showAntlers; - this.antlersLeft_3.showModel = showAntlers; - this.antlersLeft_4.showModel = showAntlers; - this.body.render(f5); - this.leg1.render(f5); - this.leg2.render(f5); - this.leg3.render(f5); - this.leg4.render(f5); - this.head.render(f5); - if (LOTRMod.isChristmas()) - GL11.glColor3f(1.0F, 0.0F, 0.0F); - this.nose.render(f5); - if (LOTRMod.isChristmas()) - GL11.glColor3f(1.0F, 1.0F, 1.0F); - GL11.glPopMatrix(); - } - - public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity entity) { - float rearAmount = 0.0F; - float antiRearAmount = 1.0F - rearAmount; - this.head.rotationPointY = 4.0F; - this.head.rotationPointZ = -10.0F; - this.head.rotateAngleX = (float)Math.toRadians(20.0D); - this.head.rotateAngleY = 0.0F; - this.head.rotationPointY = rearAmount * -6.0F + antiRearAmount * this.head.rotationPointY; - this.head.rotationPointZ = rearAmount * -1.0F + antiRearAmount * this.head.rotationPointZ; - this.head.rotateAngleX = (float)(this.head.rotateAngleX + Math.toRadians(f4)); - this.head.rotateAngleY = (float)(this.head.rotateAngleY + Math.toRadians(f3)); - this.head.rotateAngleX = antiRearAmount * this.head.rotateAngleX; - this.head.rotateAngleY = antiRearAmount * this.head.rotateAngleY; - if (f1 > 0.2F) - this.head.rotateAngleX += MathHelper.cos(f * 0.3F) * 0.1F * f1; - this.nose.setRotationPoint(this.head.rotationPointX, this.head.rotationPointY, this.head.rotationPointZ); - this.nose.rotateAngleX = this.head.rotateAngleX; - this.nose.rotateAngleY = this.head.rotateAngleY; - this.nose.rotateAngleZ = this.head.rotateAngleZ; - this.body.rotateAngleX = 0.0F; - this.body.rotateAngleX = rearAmount * -0.7853982F + antiRearAmount * this.body.rotateAngleX; - float legRotation = MathHelper.cos(f * 0.4F + 3.1415927F) * f1; - float f17 = -1.0471976F; - float f18 = 0.2617994F * rearAmount; - float f19 = MathHelper.cos(f2 * 0.4F + 3.1415927F); - this.leg4.rotationPointY = -2.0F * rearAmount + 4.0F * antiRearAmount; - this.leg4.rotationPointZ = -2.0F * rearAmount + -6.0F * antiRearAmount; - this.leg3.rotationPointY = this.leg4.rotationPointY; - this.leg3.rotationPointZ = this.leg4.rotationPointZ; - this.leg1.rotateAngleX = f18 + legRotation * antiRearAmount; - this.leg2.rotateAngleX = f18 + -legRotation * antiRearAmount; - this.leg3.rotateAngleX = (f17 + -f19) * rearAmount + -legRotation * 0.8F * antiRearAmount; - this.leg4.rotateAngleX = (f17 + f19) * rearAmount + legRotation * 0.8F * antiRearAmount; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelFangornWolf.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelFangornWolf.java deleted file mode 100644 index d7db6fe..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelFangornWolf.java +++ /dev/null @@ -1,124 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.util.MathHelper; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelRenderer; -import com.zivilon.cinder_loe.entity.npc.radagast.FangornWolf; - -@SideOnly(Side.CLIENT) -public class ModelFangornWolf extends ModelBase { - /** main box for the wolf head */ - public ModelRenderer wolfHeadMain; - /** The wolf's body */ - public ModelRenderer wolfBody; - /** Wolf'se first leg */ - public ModelRenderer wolfLeg1; - /** Wolf's second leg */ - public ModelRenderer wolfLeg2; - /** Wolf's third leg */ - public ModelRenderer wolfLeg3; - /** Wolf's fourth leg */ - public ModelRenderer wolfLeg4; - /** The wolf's tail */ - ModelRenderer wolfTail; - /** The wolf's mane */ - ModelRenderer wolfMane; - - public ModelFangornWolf() - { - float f = 0.0F; - float f1 = 13.5F; - this.wolfHeadMain = new ModelRenderer(this, 0, 0); - this.wolfHeadMain.addBox(-3.0F, -3.0F, -2.0F, 6, 6, 4, f); - this.wolfHeadMain.setRotationPoint(-1.0F, f1, -7.0F); - this.wolfBody = new ModelRenderer(this, 18, 14); - this.wolfBody.addBox(-4.0F, -2.0F, -3.0F, 6, 9, 6, f); - this.wolfBody.setRotationPoint(0.0F, 14.0F, 2.0F); - this.wolfMane = new ModelRenderer(this, 21, 0); - this.wolfMane.addBox(-4.0F, -3.0F, -3.0F, 8, 6, 7, f); - this.wolfMane.setRotationPoint(-1.0F, 14.0F, 2.0F); - this.wolfLeg1 = new ModelRenderer(this, 0, 18); - this.wolfLeg1.addBox(-1.0F, 0.0F, -1.0F, 2, 8, 2, f); - this.wolfLeg1.setRotationPoint(-2.5F, 16.0F, 7.0F); - this.wolfLeg2 = new ModelRenderer(this, 0, 18); - this.wolfLeg2.addBox(-1.0F, 0.0F, -1.0F, 2, 8, 2, f); - this.wolfLeg2.setRotationPoint(0.5F, 16.0F, 7.0F); - this.wolfLeg3 = new ModelRenderer(this, 0, 18); - this.wolfLeg3.addBox(-1.0F, 0.0F, -1.0F, 2, 8, 2, f); - this.wolfLeg3.setRotationPoint(-2.5F, 16.0F, -4.0F); - this.wolfLeg4 = new ModelRenderer(this, 0, 18); - this.wolfLeg4.addBox(-1.0F, 0.0F, -1.0F, 2, 8, 2, f); - this.wolfLeg4.setRotationPoint(0.5F, 16.0F, -4.0F); - this.wolfTail = new ModelRenderer(this, 9, 18); - this.wolfTail.addBox(-1.0F, 0.0F, -1.0F, 2, 8, 2, f); - this.wolfTail.setRotationPoint(-1.0F, 12.0F, 8.0F); - this.wolfHeadMain.setTextureOffset(16, 14).addBox(-3.0F, -5.0F, 0.0F, 2, 2, 1, f); - this.wolfHeadMain.setTextureOffset(16, 14).addBox(1.0F, -5.0F, 0.0F, 2, 2, 1, f); - this.wolfHeadMain.setTextureOffset(0, 10).addBox(-1.5F, 0.0F, -5.0F, 3, 3, 4, f); - } - - /** - * Sets the models various rotation angles then renders the model. - */ - public void render(Entity p_78088_1_, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float p_78088_7_) - { - super.render(p_78088_1_, p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, p_78088_7_); - this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, p_78088_7_, p_78088_1_); - - this.wolfHeadMain.renderWithRotation(p_78088_7_); - this.wolfBody.render(p_78088_7_); - this.wolfLeg1.render(p_78088_7_); - this.wolfLeg2.render(p_78088_7_); - this.wolfLeg3.render(p_78088_7_); - this.wolfLeg4.render(p_78088_7_); - this.wolfTail.renderWithRotation(p_78088_7_); - this.wolfMane.render(p_78088_7_); - } - - /** - * Used for easily adding entity-dependent animations. The second and third float params here are the same second - * and third as in the setRotationAngles method. - */ - public void setLivingAnimations(EntityLivingBase p_78086_1_, float p_78086_2_, float p_78086_3_, float p_78086_4_) - { - FangornWolf entitywolf = (FangornWolf)p_78086_1_; - - this.wolfTail.rotateAngleY = MathHelper.cos(p_78086_2_ * 0.6662F) * 1.4F * p_78086_3_; - - this.wolfBody.setRotationPoint(0.0F, 14.0F, 2.0F); - this.wolfBody.rotateAngleX = ((float)Math.PI / 2F); - this.wolfMane.setRotationPoint(-1.0F, 14.0F, -3.0F); - this.wolfMane.rotateAngleX = this.wolfBody.rotateAngleX; - this.wolfTail.setRotationPoint(-1.0F, 12.0F, 8.0F); - this.wolfLeg1.setRotationPoint(-2.5F, 16.0F, 7.0F); - this.wolfLeg2.setRotationPoint(0.5F, 16.0F, 7.0F); - this.wolfLeg3.setRotationPoint(-2.5F, 16.0F, -4.0F); - this.wolfLeg4.setRotationPoint(0.5F, 16.0F, -4.0F); - this.wolfLeg1.rotateAngleX = MathHelper.cos(p_78086_2_ * 0.6662F) * 1.4F * p_78086_3_; - this.wolfLeg2.rotateAngleX = MathHelper.cos(p_78086_2_ * 0.6662F + (float)Math.PI) * 1.4F * p_78086_3_; - this.wolfLeg3.rotateAngleX = MathHelper.cos(p_78086_2_ * 0.6662F + (float)Math.PI) * 1.4F * p_78086_3_; - this.wolfLeg4.rotateAngleX = MathHelper.cos(p_78086_2_ * 0.6662F) * 1.4F * p_78086_3_; - - this.wolfHeadMain.rotateAngleZ = 0.0F; - this.wolfMane.rotateAngleZ = -0.08F; - this.wolfBody.rotateAngleZ = -0.16F; - this.wolfTail.rotateAngleZ = -0.2F; - } - - /** - * Sets the model's various rotation angles. For bipeds, par1 and par2 are used for animating the movement of arms - * and legs, where par1 represents the time(so that arms and legs swing back and forth) and par2 represents how - * "far" arms and legs can swing at most. - */ - public void setRotationAngles(float p_78087_1_, float p_78087_2_, float p_78087_3_, float p_78087_4_, float p_78087_5_, float p_78087_6_, Entity p_78087_7_) - { - super.setRotationAngles(p_78087_1_, p_78087_2_, p_78087_3_, p_78087_4_, p_78087_5_, p_78087_6_, p_78087_7_); - this.wolfHeadMain.rotateAngleX = p_78087_5_ / (180F / (float)Math.PI); - this.wolfHeadMain.rotateAngleY = p_78087_4_ / (180F / (float)Math.PI); - this.wolfTail.rotateAngleX = p_78087_3_; - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelJadeHelmet.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelJadeHelmet.java deleted file mode 100644 index 2e0b612..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelJadeHelmet.java +++ /dev/null @@ -1,128 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - -import lotr.client.model.LOTRModelBiped; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; - -/** - * JadeHelmet - Cleric_red - * Created using Tabula 4.1.1 - */ -public class ModelJadeHelmet extends LOTRModelBiped { - public ModelRenderer brframe; - public ModelRenderer frframe; - public ModelRenderer blframe; - public ModelRenderer frframe_1; - public ModelRenderer fgold; - public ModelRenderer bgold; - public ModelRenderer tgold; - public ModelRenderer glframe; - public ModelRenderer grframe; - public ModelRenderer back; - public ModelRenderer backangle; - public ModelRenderer Holder; - public ModelRenderer moon; - - public ModelJadeHelmet(float f) { - super (f); - this.textureWidth = 64; - this.textureHeight = 32; - this.bipedHead.cubeList.clear(); - this.Holder = new ModelRenderer(this, 21, 22); - this.Holder.setRotationPoint(0.0F, 0.0F, 0.0F); - this.Holder.addBox(-1.0F, -12.2F, -8.0F, 2, 3, 1, 0.0F); - this.setRotateAngle(Holder, -0.136659280431156F, 0.0F, 0.0F); - this.moon = new ModelRenderer(this, 0, 0); - this.moon.setRotationPoint(0.0F, 0.0F, 0.0F); - this.moon.addBox(-5.5F, -16.2F, -7.3F, 11, 7, 0, 0.0F); - this.setRotateAngle(moon, -0.136659280431156F, 0.0F, 0.0F); - - this.bgold = new ModelRenderer(this, 14, 19); - this.bgold.setRotationPoint(0.0F, 0.0F, 0.0F); - this.bgold.addBox(-3.5F, -11.2F, 0.0F, 7, 2, 7, 0.0F); - this.setRotateAngle(bgold, -0.17453292519943295F, 0.0F, 0.0F); - - this.glframe = new ModelRenderer(this, 21, 14); - this.glframe.setRotationPoint(0.0F, 0.0F, 0.0F); - this.glframe.addBox(7.4F, -7.4F, -2.5F, 1, 8, 5, 0.0F); - this.setRotateAngle(glframe, 0.0F, 0.0F, -0.6108652381980153F); - - this.backangle = new ModelRenderer(this, 0, 7); - this.backangle.setRotationPoint(0.0F, 0.0F, 0.0F); - this.backangle.addBox(-5.0F, -2.4F, 6.2F, 10, 5, 1, 0.0F); - this.setRotateAngle(backangle, 0.36425021489121656F, 0.0F, 0.0F); - - this.frframe = new ModelRenderer(this, 0, 14); - this.frframe.setRotationPoint(0.0F, 0.0F, 0.0F); - this.frframe.addBox(-8.6F, -7.5F, -7.0F, 1, 8, 6, 0.0F); - this.setRotateAngle(frframe, 0.17453292519943295F, 0.0F, 0.6108652381980153F); - - this.blframe = new ModelRenderer(this, 0, 14); - this.blframe.setRotationPoint(0.0F, 0.0F, 0.0F); - this.blframe.addBox(7.6F, -7.5F, 1.0F, 1, 8, 6, 0.0F); - this.setRotateAngle(blframe, -0.17453292519943295F, 0.0F, -0.6108652381980153F); - - this.fgold = new ModelRenderer(this, 14, 19); - this.fgold.setRotationPoint(0.0F, 0.0F, 0.0F); - this.fgold.addBox(-3.5F, -11.2F, -7.0F, 7, 2, 7, 0.0F); - this.setRotateAngle(fgold, 0.17453292519943295F, 0.0F, 0.0F); - - this.back = new ModelRenderer(this, 0, 8); - this.back.setRotationPoint(0.0F, 0.0F, 0.0F); - this.back.addBox(-5.0F, -7.9F, 5.0F, 10, 4, 1, 0.0F); - - this.tgold = new ModelRenderer(this, 16, 21); - this.tgold.setRotationPoint(0.0F, 0.0F, 0.0F); - this.tgold.addBox(-3.5F, -11.31F, -2.5F, 7, 2, 5, 0.0F); - this.brframe = new ModelRenderer(this, 0, 14); - this.brframe.setRotationPoint(0.0F, 0.0F, 0.0F); - this.brframe.addBox(-8.6F, -7.5F, 1.0F, 1, 8, 6, 0.0F); - this.setRotateAngle(brframe, -0.17453292519943295F, 0.0F, 0.6108652381980153F); - this.frframe_1 = new ModelRenderer(this, 0, 14); - this.frframe_1.setRotationPoint(0.0F, 0.0F, 0.0F); - this.frframe_1.addBox(7.6F, -7.5F, -7.0F, 1, 8, 6, 0.0F); - this.setRotateAngle(frframe_1, 0.17453292519943295F, 0.0F, -0.6108652381980153F); - this.grframe = new ModelRenderer(this, 21, 15); - this.grframe.setRotationPoint(0.0F, 0.0F, 0.0F); - this.grframe.addBox(-8.5F, -7.4F, -2.5F, 1, 8, 5, 0.0F); - this.setRotateAngle(grframe, 0.0F, 0.0F, 0.6108652381980153F); - this.bipedHead = new ModelRenderer(this, 32, 0); - this.bipedHead.setRotationPoint(0.0F, 0.0F, 0.0F); - this.bipedHead.addBox(-4.0F, -8.0F, -4.0F, 8, 8, 8, 0.5F); - this.bipedHead.addChild(this.Holder); - this.bipedHead.addChild(this.moon); - this.bipedHead.addChild(this.bgold); - this.bipedHead.addChild(this.glframe); - this.bipedHead.addChild(this.backangle); - this.bipedHead.addChild(this.frframe); - this.bipedHead.addChild(this.blframe); - this.bipedHead.addChild(this.fgold); - this.bipedHead.addChild(this.back); - this.bipedHead.addChild(this.tgold); - this.bipedHead.addChild(this.brframe); - this.bipedHead.addChild(this.frframe_1); - this.bipedHead.addChild(this.grframe); - - this.bipedHeadwear.cubeList.clear(); - this.bipedBody.cubeList.clear(); - this.bipedRightArm.cubeList.clear(); - this.bipedLeftArm.cubeList.clear(); - this.bipedRightLeg.cubeList.clear(); - this.bipedLeftLeg.cubeList.clear(); - } - - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - this.bipedHead.render(f5); - } - - /** - * This is a helper function from Tabula to set the rotation of model parts - */ - public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelLegsJade.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelLegsJade.java deleted file mode 100644 index 114fcd5..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelLegsJade.java +++ /dev/null @@ -1,89 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - -import lotr.client.model.LOTRModelBiped; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; - -/** - * LegsJade - Cleric_red - * Created using Tabula 4.1.1 - */ -public class ModelLegsJade extends LOTRModelBiped { - public ModelRenderer rarmor; - public ModelRenderer rftrim; - public ModelRenderer rbtrim; - public ModelRenderer larmor; - public ModelRenderer lftrim; - public ModelRenderer lbtrim; - - public ModelLegsJade(float f) { - super(f); - this.textureWidth = 64; - this.textureHeight = 32; - this.bipedRightLeg.cubeList.clear(); - this.bipedLeftLeg.cubeList.clear(); - - this.lftrim = new ModelRenderer(this, 2, 24); - this.lftrim.setRotationPoint(0.0F, 0.0F, 0.0F); - this.lftrim.addBox(-2.0F, 0.1F, -3.1F, 4, 1, 1, 0.0F); - - this.bipedRightLeg = new ModelRenderer(this, 0, 16); - this.bipedRightLeg.setRotationPoint(-1.9F, 12.0F, 0.0F); - this.bipedRightLeg.addBox(-2.0F, 0.0F, -2.0F, 4, 12, 4, 0.5F); - - this.rbtrim = new ModelRenderer(this, 1, 21); - this.rbtrim.setRotationPoint(0.0F, 0.0F, 0.0F); - this.rbtrim.addBox(-2.0F, 0.1F, 2.1F, 4, 1, 1, 0.0F); - - this.larmor = new ModelRenderer(this, -1, 0); - this.larmor.setRotationPoint(0.0F, 0.0F, 0.0F); - this.larmor.addBox(1.0F, 1.0F, -3F, 4, 1, 6, 0.0F); - this.setRotateAngle(larmor, 0.0F, 0.0F, 2.0943951023931953F); - - this.bipedLeftLeg = new ModelRenderer(this, 0, 16); - this.bipedLeftLeg.mirror = true; - this.bipedLeftLeg.setRotationPoint(1.899999976158142F, 12.0F, 0.0F); - this.bipedLeftLeg.addBox(-2.0F, 0.0F, -2.0F, 4, 12, 4, 0.5F); - - this.lbtrim = new ModelRenderer(this, 3, 21); - this.lbtrim.setRotationPoint(0.0F, 0.0F, 0.0F); - this.lbtrim.addBox(-2.0F, 0.1F, 2.1F, 4, 1, 1, 0.0F); - - this.rarmor = new ModelRenderer(this, -1, 0); - this.rarmor.setRotationPoint(0.0F, 0.0F, 0.0F); - this.rarmor.addBox(1.0F, -2.0F, -3F, 4, 1, 6, 0.0F); - this.setRotateAngle(rarmor, 0.0F, 0.0F, 1.0471975511965976F); - - this.rftrim = new ModelRenderer(this, 3, 24); - this.rftrim.setRotationPoint(0.0F, 0.0F, 0.0F); - this.rftrim.addBox(-2.0F, 0.1F, -3.1F, 4, 1, 1, 0.0F); - - this.bipedRightLeg.addChild(this.lftrim); - this.bipedLeftLeg.addChild(this.rbtrim); - this.bipedRightLeg.addChild(this.larmor); - this.bipedRightLeg.addChild(this.lbtrim); - this.bipedLeftLeg.addChild(this.rarmor); - this.bipedLeftLeg.addChild(this.rftrim); - this.bipedHead.cubeList.clear(); - this.bipedHeadwear.cubeList.clear(); - this.bipedBody.cubeList.clear(); - this.bipedRightArm.cubeList.clear(); - this.bipedLeftArm.cubeList.clear(); - } - - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - this.bipedRightLeg.render(f5); - this.bipedLeftLeg.render(f5); - } - - /** - * This is a helper function from Tabula to set the rotation of model parts - */ - public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelNexFireChestplate.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelNexFireChestplate.java deleted file mode 100644 index f473029..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelNexFireChestplate.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - -import lotr.client.model.LOTRModelBiped; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; - -/** - * chestplatenex - Cleric_red - * Created using Tabula 4.1.1 - */ -public class ModelNexFireChestplate extends LOTRModelBiped { - - public ModelRenderer upperrightarm; - public ModelRenderer upperleftarm; - public ModelRenderer banner; - public ModelRenderer hood; - public ModelRenderer rightribbon; - public ModelRenderer leftribbon; - - public ModelNexFireChestplate(float f) { - super (f); - this.textureWidth = 64; - this.textureHeight = 32; - this.bipedBody.cubeList.clear(); - this.bipedRightArm.cubeList.clear(); - this.bipedLeftArm.cubeList.clear(); - - this.banner = new ModelRenderer(this, 0, 17); - this.banner.setRotationPoint(0.0F, 0.0F, 0.0F); - this.banner.addBox(-4.0F, 0.0F, -2.7F, 8, 15, 0, 0.0F); - this.bipedRightArm = new ModelRenderer(this, 40, 16); - this.bipedRightArm.mirror = true; - this.bipedRightArm.setRotationPoint(5.0F, 2.0F, 0.0F); - this.bipedRightArm.addBox(-3.0F, -2.0F, -2.0F, 4, 12, 4, 0.1F); - this.setRotateAngle(bipedRightArm, 0.0F, 0.0F, -0.026354471705114374F); - this.bipedLeftArm = new ModelRenderer(this, 40, 16); - this.bipedLeftArm.setRotationPoint(-5.0F, 2.0F, 0.0F); - this.bipedLeftArm.addBox(-1.0F, -2.0F, -2.0F, 4, 12, 4, 0.1F); - this.setRotateAngle(bipedLeftArm, 0.0F, 0.0F, 0.026354471705114374F); - this.hood = new ModelRenderer(this, 0, 0); - this.hood.setRotationPoint(0.0F, 0.0F, 0.0F); - this.hood.addBox(-5.4F, 0.0F, 0.7F, 11, 4, 7, 0.0F); - this.setRotateAngle(hood, 0.5009094953223726F, 0.0F, 0.0F); - this.rightribbon = new ModelRenderer(this, 57, 17); - this.rightribbon.mirror = true; - this.rightribbon.setRotationPoint(0.0F, 0.0F, 0.0F); - this.rightribbon.addBox(-4.0F, -0.8F, 8.3F, 3, 15, 0, 0.0F); - this.leftribbon = new ModelRenderer(this, 57, 17); - this.leftribbon.setRotationPoint(0.0F, 0.0F, 0.0F); - this.leftribbon.addBox(1.0F, -0.8F, 8.3F, 3, 15, 0, 0.0F); - this.bipedBody = new ModelRenderer(this, 16, 16); - this.bipedBody.setRotationPoint(0.0F, 0.0F, 0.0F); - this.bipedBody.addBox(-4.0F, 0.0F, -2.0F, 8, 12, 4, 0.5F); - this.upperleftarm = new ModelRenderer(this, 40, 16); - this.upperleftarm.mirror = true; - this.upperleftarm.setRotationPoint(5.0F, 2.0F, 0.0F); - this.upperleftarm.addBox(-6.0F, -4.0F, -2.0F, 4, 7, 4, 0.5F); - this.setRotateAngle(upperleftarm, 0.0F, 0.0F, -0.026354471705114374F); - this.upperrightarm = new ModelRenderer(this, 40, 16); - this.upperrightarm.setRotationPoint(-5.0F, 2.0F, 0.0F); - this.upperrightarm.addBox(2.0F, -4.0F, -2.0F, 4, 7, 4, 0.5F); - this.setRotateAngle(upperrightarm, 0.0F, 0.0F, 0.026354471705114374F); - this.bipedRightArm.addChild(this.upperrightarm); - this.bipedLeftArm.addChild(this.upperleftarm); - this.bipedBody.addChild(this.banner); - this.bipedBody.addChild(this.hood); - this.bipedBody.addChild(this.rightribbon); - this.bipedBody.addChild(this.leftribbon); - - this.bipedHead.cubeList.clear(); - this.bipedHeadwear.cubeList.clear(); - this.bipedRightLeg.cubeList.clear(); - this.bipedLeftLeg.cubeList.clear(); - } - - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - this.bipedRightArm.render(f5); - this.bipedLeftArm.render(f5); - this.bipedBody.render(f5); - - } - - /** - * This is a helper function from Tabula to set the rotation of model parts - */ - public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelNexIceChestplate.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelNexIceChestplate.java deleted file mode 100644 index f386746..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelNexIceChestplate.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - -import lotr.client.model.LOTRModelBiped; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; - -public class ModelNexIceChestplate extends LOTRModelBiped { - - public ModelRenderer upperrightarm; - public ModelRenderer upperleftarm; - public ModelRenderer banner; - public ModelRenderer hood; - public ModelRenderer rightribbon; - public ModelRenderer leftribbon; - - public ModelNexIceChestplate(float f) { - super (f); - this.textureWidth = 64; - this.textureHeight = 32; - this.bipedBody.cubeList.clear(); - this.bipedRightArm.cubeList.clear(); - this.bipedLeftArm.cubeList.clear(); - - this.banner = new ModelRenderer(this, 0, 17); - this.banner.setRotationPoint(0.0F, 0.0F, 0.0F); - this.banner.addBox(-4.0F, 0.0F, -2.7F, 8, 15, 0, 0.0F); - this.bipedRightArm = new ModelRenderer(this, 40, 16); - this.bipedRightArm.mirror = true; - this.bipedRightArm.setRotationPoint(5.0F, 2.0F, 0.0F); - this.bipedRightArm.addBox(-3.0F, -2.0F, -2.0F, 4, 12, 4, 0.1F); - this.setRotateAngle(bipedRightArm, 0.0F, 0.0F, -0.026354471705114374F); - this.bipedLeftArm = new ModelRenderer(this, 40, 16); - this.bipedLeftArm.setRotationPoint(-5.0F, 2.0F, 0.0F); - this.bipedLeftArm.addBox(-1.0F, -2.0F, -2.0F, 4, 12, 4, 0.1F); - this.setRotateAngle(bipedLeftArm, 0.0F, 0.0F, 0.026354471705114374F); - this.hood = new ModelRenderer(this, 0, 0); - this.hood.setRotationPoint(0.0F, 0.0F, 0.0F); - this.hood.addBox(-5.4F, 0.0F, 0.7F, 11, 4, 7, 0.0F); - this.setRotateAngle(hood, 0.5009094953223726F, 0.0F, 0.0F); - this.rightribbon = new ModelRenderer(this, 57, 17); - this.rightribbon.mirror = true; - this.rightribbon.setRotationPoint(0.0F, 0.0F, 0.0F); - this.rightribbon.addBox(-4.0F, -0.8F, 8.3F, 3, 15, 0, 0.0F); - this.leftribbon = new ModelRenderer(this, 57, 17); - this.leftribbon.setRotationPoint(0.0F, 0.0F, 0.0F); - this.leftribbon.addBox(1.0F, -0.8F, 8.3F, 3, 15, 0, 0.0F); - this.bipedBody = new ModelRenderer(this, 16, 16); - this.bipedBody.setRotationPoint(0.0F, 0.0F, 0.0F); - this.bipedBody.addBox(-4.0F, 0.0F, -2.0F, 8, 12, 4, 0.5F); - this.upperleftarm = new ModelRenderer(this, 40, 16); - this.upperleftarm.mirror = true; - this.upperleftarm.setRotationPoint(5.0F, 2.0F, 0.0F); - this.upperleftarm.addBox(-6.0F, -4.0F, -2.0F, 4, 7, 4, 0.5F); - this.setRotateAngle(upperleftarm, 0.0F, 0.0F, -0.026354471705114374F); - this.upperrightarm = new ModelRenderer(this, 40, 16); - this.upperrightarm.setRotationPoint(-5.0F, 2.0F, 0.0F); - this.upperrightarm.addBox(2.0F, -4.0F, -2.0F, 4, 7, 4, 0.5F); - this.setRotateAngle(upperrightarm, 0.0F, 0.0F, 0.026354471705114374F); - this.bipedRightArm.addChild(this.upperrightarm); - this.bipedLeftArm.addChild(this.upperleftarm); - this.bipedBody.addChild(this.banner); - this.bipedBody.addChild(this.hood); - this.bipedBody.addChild(this.rightribbon); - this.bipedBody.addChild(this.leftribbon); - - this.bipedHead.cubeList.clear(); - this.bipedHeadwear.cubeList.clear(); - this.bipedRightLeg.cubeList.clear(); - this.bipedLeftLeg.cubeList.clear(); - } - - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - this.bipedRightArm.render(f5); - this.bipedLeftArm.render(f5); - this.bipedBody.render(f5); - - } - public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelNexToxinChestplate.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelNexToxinChestplate.java deleted file mode 100644 index 89a6a31..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelNexToxinChestplate.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - -import lotr.client.model.LOTRModelBiped; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; - -public class ModelNexToxinChestplate extends LOTRModelBiped { - - public ModelRenderer upperrightarm; - public ModelRenderer upperleftarm; - public ModelRenderer banner; - public ModelRenderer hood; - public ModelRenderer rightribbon; - public ModelRenderer leftribbon; - - public ModelNexToxinChestplate(float f) { - super (f); - this.textureWidth = 64; - this.textureHeight = 32; - this.bipedBody.cubeList.clear(); - this.bipedRightArm.cubeList.clear(); - this.bipedLeftArm.cubeList.clear(); - - this.banner = new ModelRenderer(this, 0, 17); - this.banner.setRotationPoint(0.0F, 0.0F, 0.0F); - this.banner.addBox(-4.0F, 0.0F, -2.7F, 8, 15, 0, 0.0F); - this.bipedRightArm = new ModelRenderer(this, 40, 16); - this.bipedRightArm.mirror = true; - this.bipedRightArm.setRotationPoint(5.0F, 2.0F, 0.0F); - this.bipedRightArm.addBox(-3.0F, -2.0F, -2.0F, 4, 12, 4, 0.1F); - this.setRotateAngle(bipedRightArm, 0.0F, 0.0F, -0.026354471705114374F); - this.bipedLeftArm = new ModelRenderer(this, 40, 16); - this.bipedLeftArm.setRotationPoint(-5.0F, 2.0F, 0.0F); - this.bipedLeftArm.addBox(-1.0F, -2.0F, -2.0F, 4, 12, 4, 0.1F); - this.setRotateAngle(bipedLeftArm, 0.0F, 0.0F, 0.026354471705114374F); - this.hood = new ModelRenderer(this, 0, 0); - this.hood.setRotationPoint(0.0F, 0.0F, 0.0F); - this.hood.addBox(-5.4F, 0.0F, 0.7F, 11, 4, 7, 0.0F); - this.setRotateAngle(hood, 0.5009094953223726F, 0.0F, 0.0F); - this.rightribbon = new ModelRenderer(this, 57, 17); - this.rightribbon.mirror = true; - this.rightribbon.setRotationPoint(0.0F, 0.0F, 0.0F); - this.rightribbon.addBox(-4.0F, -0.8F, 8.3F, 3, 15, 0, 0.0F); - this.leftribbon = new ModelRenderer(this, 57, 17); - this.leftribbon.setRotationPoint(0.0F, 0.0F, 0.0F); - this.leftribbon.addBox(1.0F, -0.8F, 8.3F, 3, 15, 0, 0.0F); - this.bipedBody = new ModelRenderer(this, 16, 16); - this.bipedBody.setRotationPoint(0.0F, 0.0F, 0.0F); - this.bipedBody.addBox(-4.0F, 0.0F, -2.0F, 8, 12, 4, 0.5F); - this.upperleftarm = new ModelRenderer(this, 40, 16); - this.upperleftarm.mirror = true; - this.upperleftarm.setRotationPoint(5.0F, 2.0F, 0.0F); - this.upperleftarm.addBox(-6.0F, -4.0F, -2.0F, 4, 7, 4, 0.5F); - this.setRotateAngle(upperleftarm, 0.0F, 0.0F, -0.026354471705114374F); - this.upperrightarm = new ModelRenderer(this, 40, 16); - this.upperrightarm.setRotationPoint(-5.0F, 2.0F, 0.0F); - this.upperrightarm.addBox(2.0F, -4.0F, -2.0F, 4, 7, 4, 0.5F); - this.setRotateAngle(upperrightarm, 0.0F, 0.0F, 0.026354471705114374F); - this.bipedRightArm.addChild(this.upperrightarm); - this.bipedLeftArm.addChild(this.upperleftarm); - this.bipedBody.addChild(this.banner); - this.bipedBody.addChild(this.hood); - this.bipedBody.addChild(this.rightribbon); - this.bipedBody.addChild(this.leftribbon); - - this.bipedHead.cubeList.clear(); - this.bipedHeadwear.cubeList.clear(); - this.bipedRightLeg.cubeList.clear(); - this.bipedLeftLeg.cubeList.clear(); - } - - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - this.bipedRightArm.render(f5); - this.bipedLeftArm.render(f5); - this.bipedBody.render(f5); - - } - - /** - * This is a helper function from Tabula to set the rotation of model parts - */ - public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelRedDwarfHelmet.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelRedDwarfHelmet.java deleted file mode 100644 index 8c625e6..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelRedDwarfHelmet.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - -import lotr.client.model.LOTRModelBiped; - -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; - -public class ModelRedDwarfHelmet extends LOTRModelBiped { - //fields - ModelRenderer rightneckguard; - ModelRenderer leftneckguard = new ModelRenderer(this, 32, 0); - ModelRenderer shape1 = new ModelRenderer(this, 32, 18); - - public ModelRedDwarfHelmet() { - - } - - public ModelRedDwarfHelmet(float f) { - super(f); - this.bipedHead = new ModelRenderer(this, 0, 0); - this.bipedHead.setRotationPoint(0F, 0F, 0F); - this.bipedHead.addBox(-4F, -8F, -4F, 8, 8, 8, f); - - rightneckguard = new ModelRenderer(this, 32, 9); - rightneckguard.addBox(4.6F, 2.15F, -3.0F, 0, 1, 8); - rightneckguard.setRotationPoint(0F, 0F, 0F); - rightneckguard.setTextureSize(64, 32); - rightneckguard.mirror = true; - setRotation(rightneckguard, 0F, 0F, -0.2443461F); - this.bipedHead.addChild(rightneckguard); - - leftneckguard = new ModelRenderer(this, 32, 0); - leftneckguard.addBox(-4.6F, 2.15F, -3.0F, 0, 1, 8); - leftneckguard.setRotationPoint(0F, 0F, 0F); - leftneckguard.setTextureSize(64, 32); - leftneckguard.mirror = true; - setRotation(leftneckguard, 0F, 0F, 0.2443461F); - this.bipedHead.addChild(leftneckguard); - - shape1 = new ModelRenderer(this, 32, 18); - shape1.setRotationPoint(0F, 0F, 0F); - shape1.addBox(0F, -13F, -4F, 0, 4, 10); - shape1.setTextureSize(64, 32); - setRotation(shape1, 0F, 0F, 0F); - this.bipedHead.addChild(shape1); - - this.bipedHeadwear.cubeList.clear(); - this.bipedBody.cubeList.clear(); - this.bipedRightArm.cubeList.clear(); - this.bipedLeftArm.cubeList.clear(); - this.bipedRightLeg.cubeList.clear(); - this.bipedLeftLeg.cubeList.clear(); - } - - private void setRotation(ModelRenderer model, float x, float y, float z) { - model.rotateAngleX = x; - model.rotateAngleY = y; - model.rotateAngleZ = z; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelRhudaurHelmet.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelRhudaurHelmet.java deleted file mode 100644 index 42942aa..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelRhudaurHelmet.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - -import lotr.client.model.LOTRModelBiped; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; - - -public class ModelRhudaurHelmet extends LOTRModelBiped { - public ModelRenderer backhelm; - public ModelRenderer topfur; - public ModelRenderer righthelm; - public ModelRenderer fronthelm; - public ModelRenderer lefthelm; - public ModelRenderer rightfur; - public ModelRenderer leftfur; - public ModelRenderer Middlefur; - public ModelRenderer backfur; - - public ModelRhudaurHelmet(float f) { - super(f); - this.textureWidth = 64; - this.textureHeight = 32; - this.Middlefur = new ModelRenderer(this, 24, 11); - this.Middlefur.setRotationPoint(0.0F, 0.0F, 0.0F); - this.Middlefur.addBox(-4.0F, -8.0F, -4.1F, 8, 1, 0, 1.3F); - this.lefthelm = new ModelRenderer(this, 0, 0); - this.lefthelm.setRotationPoint(0.0F, 0.0F, 0.0F); - this.lefthelm.addBox(4.0F, -5.85F, -5.5F, 1, 2, 9, 0.6F); - this.setRotateAngle(lefthelm, -0.22759093446006054F, 0.0F, 0.0F); - this.fronthelm = new ModelRenderer(this, 0, 0); - this.fronthelm.setRotationPoint(0.0F, 0.0F, 0.0F); - this.fronthelm.addBox(-5.0F, -5.85F, -6.5F, 10, 2, 1, 0.6F); - this.setRotateAngle(fronthelm, -0.22759093446006054F, 0.0F, 0.0F); - this.backhelm = new ModelRenderer(this, 0, 0); - this.backhelm.setRotationPoint(0.0F, 0.0F, 0.0F); - this.backhelm.addBox(-5.0F, -5.0F, 3.9F, 10, 2, 1, 0.6F); - this.rightfur = new ModelRenderer(this, 32, 11); - this.rightfur.setRotationPoint(0.0F, 0.0F, 0.0F); - this.rightfur.addBox(-4.1F, -8.2F, -4.0F, 0, 3, 8, 1.3F); - this.righthelm = new ModelRenderer(this, 0, 0); - this.righthelm.setRotationPoint(0.0F, 0.0F, 0.0F); - this.righthelm.addBox(-5.0F, -5.85F, -5.5F, 1, 2, 9, 0.6F); - this.setRotateAngle(righthelm, -0.22759093446006054F, 0.0F, 0.0F); - this.backfur = new ModelRenderer(this, 24, 11); - this.backfur.setRotationPoint(0.0F, 0.0F, 0.0F); - this.backfur.addBox(-4.0F, -8.0F, 4.1F, 8, 3, 0, 1.3F); - this.leftfur = new ModelRenderer(this, 32, 11); - this.leftfur.setRotationPoint(0.0F, 0.0F, 0.0F); - this.leftfur.addBox(4.1F, -8.2F, -4.0F, 0, 3, 8, 1.3F); - this.topfur = new ModelRenderer(this, 16, 11); - this.topfur.setRotationPoint(0.0F, 0.0F, 0.0F); - this.topfur.addBox(-4.0F, -8.2F, -4.0F, 8, 0, 8, 1.3F); - - this.bipedHead.cubeList.clear(); - - this.bipedHead = new ModelRenderer(this, 0, 11); - this.bipedHead.setRotationPoint(0.0F, 0.0F, 0.0F); - this.bipedHead.addBox(-4.0F, -8.0F, -4.0F, 8, 8, 8, 1.0F); - - this.bipedHead.addChild(this.Middlefur); - this.bipedHead.addChild(this.lefthelm); - this.bipedHead.addChild(this.fronthelm); - this.bipedHead.addChild(this.backhelm); - this.bipedHead.addChild(this.rightfur); - this.bipedHead.addChild(this.righthelm); - this.bipedHead.addChild(this.backfur); - this.bipedHead.addChild(this.leftfur); - this.bipedHead.addChild(this.topfur); - - // Clear unnecessary parts - this.bipedHeadwear.cubeList.clear(); - this.bipedBody.cubeList.clear(); - this.bipedRightArm.cubeList.clear(); - this.bipedLeftArm.cubeList.clear(); - this.bipedRightLeg.cubeList.clear(); - this.bipedLeftLeg.cubeList.clear(); - } - - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - this.bipedHead.render(f5); - } - - /** - * This is a helper function from Tabula to set the rotation of model parts - */ - public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelSunkenSkeleton.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelSunkenSkeleton.java deleted file mode 100644 index 7c9ac1b..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelSunkenSkeleton.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelBiped; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; - -/** - * ModelSunkenSkeleton - Cleric_red - * Created using Tabula 4.1.1 - */ -public class ModelSunkenSkeleton - extends ModelBiped { - public ModelSunkenSkeleton() { - this(0.0f); - } - - public ModelSunkenSkeleton(float f) { - super(f, 0.0f, 64, 32); - if (f == 0.0f) { - this.bipedRightArm = new ModelRenderer((ModelBase)this, 40, 16); - this.bipedRightArm.addBox(-1.0f, -2.0f, -1.0f, 2, 12, 2, f); - this.bipedRightArm.setRotationPoint(-5.0f, 2.0f, 0.0f); - this.bipedLeftArm = new ModelRenderer((ModelBase)this, 40, 16); - this.bipedLeftArm.mirror = true; - this.bipedLeftArm.addBox(-1.0f, -2.0f, -1.0f, 2, 12, 2, f); - this.bipedLeftArm.setRotationPoint(5.0f, 2.0f, 0.0f); - this.bipedRightLeg = new ModelRenderer((ModelBase)this, 0, 16); - this.bipedRightLeg.addBox(-1.0f, 0.0f, -1.0f, 2, 12, 2, f); - this.bipedRightLeg.setRotationPoint(-2.0f, 12.0f, 0.0f); - this.bipedLeftLeg = new ModelRenderer((ModelBase)this, 0, 16); - this.bipedLeftLeg.mirror = true; - this.bipedLeftLeg.addBox(-1.0f, 0.0f, -1.0f, 2, 12, 2, f); - this.bipedLeftLeg.setRotationPoint(2.0f, 12.0f, 0.0f); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelUsurperHelmet.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelUsurperHelmet.java deleted file mode 100644 index 921cff2..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelUsurperHelmet.java +++ /dev/null @@ -1,78 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - -import lotr.client.model.LOTRModelBiped; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; - -/** - * UsurperHelmet - Cleric_red - * Created using Tabula 4.1.1 - */ -public class ModelUsurperHelmet extends LOTRModelBiped { - public ModelRenderer leftfan; - public ModelRenderer rightfan; - public ModelRenderer leftfeather; - public ModelRenderer rightfeather; - public ModelRenderer shape15; - - public ModelUsurperHelmet(float f) { - super (f); - this.textureWidth = 64; - this.textureHeight = 32; - this.leftfan = new ModelRenderer(this, 32, 19); - this.leftfan.setRotationPoint(0.0F, 0.0F, 0.0F); - this.leftfan.addBox(-8.4F, -12.0F, -1.0F, 4, 12, 1, 0.0F); - this.setRotateAngle(leftfan, 0.0F, 0.3490658503988659F, 0.0F); - this.leftfeather = new ModelRenderer(this, 43, 20); - this.leftfeather.setRotationPoint(0.0F, 0.0F, 0.0F); - this.leftfeather.addBox(-8.4F, -12.0F, -0.5F, 4, 12, 0, 0.0F); - this.setRotateAngle(leftfeather, 0.0F, 0.3490658503988659F, 0.0F); - this.rightfan = new ModelRenderer(this, 32, 5); - this.rightfan.setRotationPoint(0.0F, 0.0F, 0.0F); - this.rightfan.addBox(4.6F, -12.0F, -1.0F, 4, 12, 1, 0.0F); - this.setRotateAngle(rightfan, 0.0F, -0.3490658503988659F, 0.0F); - this.shape15 = new ModelRenderer(this, 8, 16); - this.shape15.setRotationPoint(0.0F, 0.0F, 0.0F); - this.shape15.addBox(-4.0F, -7.0F, -5.2F, 8, 6, 0, 0.0F); - this.rightfeather = new ModelRenderer(this, 43, 6); - this.rightfeather.setRotationPoint(0.0F, 0.0F, 0.0F); - this.rightfeather.addBox(4.6F, -12.0F, -0.5F, 4, 12, 0, 0.0F); - this.setRotateAngle(rightfeather, 0.0F, -0.3490658503988659F, 0.0F); - - this.bipedHead.cubeList.clear(); - - this.bipedHead = new ModelRenderer(this, 0, 0); - this.bipedHead.setRotationPoint(0.0F, 0.0F, 0.0F); - this.bipedHead.addBox(-4.0F, -8F, -4.0F, 8, 8, 8, 1.0F); - - this.bipedHead.addChild(this.leftfan); - this.bipedHead.addChild(this.leftfeather); - this.bipedHead.addChild(this.rightfan); - this.bipedHead.addChild(this.shape15); - this.bipedHead.addChild(this.rightfeather); - - this.bipedHeadwear.cubeList.clear(); - this.bipedBody.cubeList.clear(); - this.bipedRightArm.cubeList.clear(); - this.bipedLeftArm.cubeList.clear(); - this.bipedRightLeg.cubeList.clear(); - this.bipedLeftLeg.cubeList.clear(); - - - } - - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - this.bipedHead.render(f5); - } - - /** - * This is a helper function from Tabula to set the rotation of model parts - */ - public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelWarlordHelmet.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelWarlordHelmet.java deleted file mode 100644 index 7fe2b10..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/ModelWarlordHelmet.java +++ /dev/null @@ -1,90 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - -import lotr.client.model.LOTRModelBiped; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; - -/** - * heavyHelmet - Cleric - * Created using Tabula 4.1.1 - */ -public class ModelWarlordHelmet extends LOTRModelBiped { - public ModelRenderer leftmaw; - public ModelRenderer rightmaw; - public ModelRenderer shape31; - public ModelRenderer hair; - public ModelRenderer mane; - public ModelRenderer lefttrim; - public ModelRenderer righttrim; - public ModelRenderer Teeth; - - public ModelWarlordHelmet(float f) { - super (f); - this.textureWidth = 64; - this.textureHeight = 32; - this.shape31 = new ModelRenderer(this, 2, 2); - this.shape31.setRotationPoint(0.0F, 0.0F, 0.0F); - this.shape31.addBox(-4.0F, -10.0F, -7.0F, 8, 3, 6, 1.0F); - this.mane = new ModelRenderer(this, 8, 27); - this.mane.setRotationPoint(0.0F, 0.0F, 0.0F); - this.mane.addBox(-4.0F, 1.0F, 5.0F, 8, 3, 0, 0.0F); - this.leftmaw = new ModelRenderer(this, 24, 8); - this.leftmaw.setRotationPoint(0.0F, 0.0F, 0.0F); - this.leftmaw.addBox(-4.7F, -4.0F, -12.3F, 0, 4, 7, 0.0F); - this.setRotateAngle(leftmaw, 0.0F, 0.12217304763960307F, 0.0F); - this.hair = new ModelRenderer(this, 30, 6); - this.hair.setRotationPoint(0.0F, 0.0F, 0.0F); - this.hair.addBox(-3.0F, -8.7F, -3.0F, 6, 1, 4, 1.0F); - this.setRotateAngle(hair, -0.22759093446006054F, 0.0F, 0.0F); - this.righttrim = new ModelRenderer(this, 32, 15); - this.righttrim.setRotationPoint(0.0F, 0.0F, 0.0F); - this.righttrim.addBox(4.2F, -7.9F, -3.9F, 0, 8, 4, 1.0F); - this.lefttrim = new ModelRenderer(this, 32, 15); - this.lefttrim.setRotationPoint(0.0F, 0.0F, 0.0F); - this.lefttrim.addBox(-4.2F, -7.9F, -3.9F, 0, 8, 4, 1.0F); - this.Teeth = new ModelRenderer(this, 32, 12); - this.Teeth.setRotationPoint(0.0F, 0.0F, 0.0F); - this.Teeth.addBox(-4.0F, -6.0F, -6.0F, 8, 3, 0, 0.0F); - this.rightmaw = new ModelRenderer(this, 24, 8); - this.rightmaw.setRotationPoint(0.0F, 0.0F, 0.0F); - this.rightmaw.addBox(4.7F, -4.0F, -12.3F, 0, 4, 7, 0.0F); - this.setRotateAngle(rightmaw, 0.0F, -0.12217304763960307F, 0.0F); - - this.bipedHead.cubeList.clear(); - - this.bipedHead = new ModelRenderer(this, 0, 11); - this.bipedHead.setRotationPoint(0.0F, 0.0F, 0.0F); - this.bipedHead.addBox(-4.0F, -8F, -4.0F, 8, 8, 8, 1.0F); - - this.bipedHead.addChild(this.shape31); - this.bipedHead.addChild(this.mane); - this.bipedHead.addChild(this.leftmaw); - this.bipedHead.addChild(this.hair); - this.bipedHead.addChild(this.righttrim); - this.bipedHead.addChild(this.lefttrim); - this.bipedHead.addChild(this.Teeth); - this.bipedHead.addChild(this.rightmaw); - - this.bipedHeadwear.cubeList.clear(); - this.bipedBody.cubeList.clear(); - this.bipedRightArm.cubeList.clear(); - this.bipedLeftArm.cubeList.clear(); - this.bipedRightLeg.cubeList.clear(); - this.bipedLeftLeg.cubeList.clear(); - } - - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - this.bipedHead.render(f5); - } - - /** - * This is a helper function from Tabula to set the rotation of model parts - */ - public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/Modelverticalweaponrack.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/Modelverticalweaponrack.java deleted file mode 100644 index eaf1b54..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/Modelverticalweaponrack.java +++ /dev/null @@ -1,92 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - - -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; - -/** - * Vertical Weapon rack - Cleric_red - * Created using Tabula 4.1.1 - */ -public class Modelverticalweaponrack extends ModelBase { - public ModelRenderer Post; - public ModelRenderer Plate; - public ModelRenderer Post_1; - public ModelRenderer Base; - public ModelRenderer HolderBottom; - public ModelRenderer HolderBottom_1; - public ModelRenderer HolderBottom_2; - public ModelRenderer HolderTop; - public ModelRenderer HolderTop_1; - public ModelRenderer HolderTop_2; - public boolean onWall = true; - - public Modelverticalweaponrack() { - this.textureWidth = 64; - this.textureHeight = 32; - this.HolderBottom_2 = new ModelRenderer(this, 0, 17); - this.HolderBottom_2.setRotationPoint(-1.0F, 20.0F, 2.0F); - this.HolderBottom_2.addBox(0.0F, 0.0F, 0.0F, 1, 2, 1, 0.0F); - this.setRotateAngle(HolderBottom_2, 0.0F, 1.5707963267948966F, 0.0F); - this.Base = new ModelRenderer(this, 0, 0); - this.Base.setRotationPoint(-8.0F, 10.0F, 2.5F); - this.Base.addBox(0.0F, 0.0F, 0.0F, 5, 14, 2, 0.0F); - this.setRotateAngle(Base, 0.0F, 1.5707963267948966F, 0.0F); - this.HolderTop_1 = new ModelRenderer(this, 0, 17); - this.HolderTop_1.setRotationPoint(-1.0F, 12.0F, -1.0F); - this.HolderTop_1.addBox(0.0F, 0.0F, 0.0F, 1, 2, 1, 0.0F); - this.setRotateAngle(HolderTop_1, 0.0F, 1.5707963267948966F, 0.0F); - this.HolderTop = new ModelRenderer(this, 5, 17); - this.HolderTop.setRotationPoint(-1.0F, 12.0F, 2.0F); - this.HolderTop.addBox(0.0F, 0.0F, 0.0F, 1, 2, 1, 0.0F); - this.setRotateAngle(HolderTop, 0.0F, 1.5707963267948966F, 0.0F); - this.Post_1 = new ModelRenderer(this, 14, 0); - this.Post_1.setRotationPoint(-6.0F, 20.0F, 1.0F); - this.Post_1.addBox(0.0F, 0.0F, 0.0F, 2, 2, 3, 0.0F); - this.setRotateAngle(Post_1, 0.0F, 1.5707963267948966F, 0.0F); - this.Plate = new ModelRenderer(this, 24, 0); - this.Plate.setRotationPoint(-3.0F, 10.0F, 1.5F); - this.Plate.addBox(0.0F, 0.0F, 0.0F, 3, 14, 1, 0.0F); - this.setRotateAngle(Plate, 0.0F, 1.5707963267948966F, 0.0F); - this.HolderTop_2 = new ModelRenderer(this, 0, 17); - this.HolderTop_2.setRotationPoint(-2.0F, 12.0F, 2.0F); - this.HolderTop_2.addBox(0.0F, 0.0F, 0.0F, 4, 2, 1, 0.0F); - this.setRotateAngle(HolderTop_2, 0.0F, 1.5707963267948966F, 0.0F); - this.HolderBottom = new ModelRenderer(this, 5, 17); - this.HolderBottom.setRotationPoint(-1.0F, 20.0F, -1.0F); - this.HolderBottom.addBox(0.0F, 0.0F, 0.0F, 1, 2, 1, 0.0F); - this.setRotateAngle(HolderBottom, 0.0F, 1.5707963267948966F, 0.0F); - this.HolderBottom_1 = new ModelRenderer(this, 0, 17); - this.HolderBottom_1.setRotationPoint(-2.0F, 20.0F, 2.0F); - this.HolderBottom_1.addBox(0.0F, 0.0F, 0.0F, 4, 2, 1, 0.0F); - this.setRotateAngle(HolderBottom_1, 0.0F, 1.5707963267948966F, 0.0F); - this.Post = new ModelRenderer(this, 14, 0); - this.Post.setRotationPoint(-6.0F, 12.0F, 1.0F); - this.Post.addBox(0.0F, 0.0F, 0.0F, 2, 2, 3, 0.0F); - this.setRotateAngle(Post, 0.0F, 1.5707963267948966F, 0.0F); - } - - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - this.HolderBottom_2.render(f5); - this.Base.render(f5); - this.HolderTop_1.render(f5); - this.HolderTop.render(f5); - this.Post_1.render(f5); - this.Plate.render(f5); - this.HolderTop_2.render(f5); - this.HolderBottom.render(f5); - this.HolderBottom_1.render(f5); - this.Post.render(f5); - } - - /** - * This is a helper function from Tabula to set the rotation of model parts - */ - public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/model/barricade_post.java b/src (1)/main/java/com/zivilon/cinder_loe/client/model/barricade_post.java deleted file mode 100644 index 49a0769..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/model/barricade_post.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.zivilon.cinder_loe.client.model; - -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; - -/** - * cavalry_spikes - Cleric_red - * Created using Tabula 4.1.1 - */ -public class barricade_post extends ModelBase { - public ModelRenderer shape1; - public ModelRenderer shape1_1; - - public barricade_post() { - this.textureWidth = 64; - this.textureHeight = 32; - this.shape1_1 = new ModelRenderer(this, 0, 0); - this.shape1_1.setRotationPoint(-3.0F, 9.0F, 4.0F); - this.shape1_1.addBox(1.0F, 0.0F, 2.0F, 4, 18, 4, 0.0F); - this.setRotateAngle(shape1_1, -0.6981317007977318F, 0.0F, 0.0F); - this.shape1 = new ModelRenderer(this, 0, 0); - this.shape1.setRotationPoint(-3.0F, 13.0F, -8.5F); - this.shape1.addBox(1.0F, 0.0F, 0.0F, 4, 18, 4, 0.0F); - this.setRotateAngle(shape1, 0.6981317007977318F, 0.0F, 0.0F); - } - - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - this.shape1_1.render(f5); - this.shape1.render(f5); - } - - /** - * This is a helper function from Tabula to set the rotation of model parts - */ - public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderBattleNun.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderBattleNun.java deleted file mode 100644 index bb0cfae..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderBattleNun.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.zivilon.cinder_loe.client.render; - -import com.zivilon.cinder_loe.entity.npc.good_human.BattleNun; -import lotr.client.model.LOTRModelHuman; -import lotr.client.render.entity.LOTRRenderBiped; -import lotr.client.render.entity.LOTRRandomSkins; -import lotr.common.entity.LOTRRandomSkinEntity; -import lotr.common.entity.npc.LOTREntityNPC; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelBiped; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.util.ResourceLocation; - -public class RenderBattleNun extends LOTRRenderBiped { - - public static LOTRRandomSkins skinsFemale; - - public ModelBiped outfitModel = (ModelBiped)new LOTRModelHuman(0.6F, false); - - public RenderBattleNun() { - super((ModelBiped)new LOTRModelHuman(), 0.5F); - setRenderPassModel((ModelBase)this.outfitModel); - skinsFemale = LOTRRandomSkins.loadSkinsList("cinder_loe:mob/arnorNun/arnorNun_female"); - } - - public ResourceLocation getEntityTexture(Entity entity) { - BattleNun battleNun = (BattleNun)entity; - if (((LOTREntityNPC)battleNun).familyInfo.isMale()) - return skinsFemale.getRandomSkin((LOTRRandomSkinEntity)battleNun); - return skinsFemale.getRandomSkin((LOTRRandomSkinEntity)battleNun); - } - - public int shouldRenderPass(EntityLiving entity, int pass, float f) { - BattleNun battleNun = (BattleNun)entity; - return super.shouldRenderPass((EntityLiving)battleNun, pass, f); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderDarkSpider.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderDarkSpider.java deleted file mode 100644 index 0dbe36d..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderDarkSpider.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.zivilon.cinder_loe.client.render; - -import lotr.client.render.entity.LOTRRenderSpiderBase; -import lotr.client.render.entity.LOTRRenderUtumnoIceSpider; -import net.minecraft.entity.Entity; -import net.minecraft.util.ResourceLocation; - -public class RenderDarkSpider extends LOTRRenderUtumnoIceSpider { - private static ResourceLocation spiderSkin = new ResourceLocation("cinder_loe:mob/spider/spider_dark.png"); - - protected ResourceLocation getEntityTexture(Entity entity) { - return spiderSkin; - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderFangornAuroch.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderFangornAuroch.java deleted file mode 100644 index 8378879..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderFangornAuroch.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.zivilon.cinder_loe.client.render; - -import lotr.client.render.entity.LOTRRandomSkins; -import lotr.common.entity.LOTRRandomSkinEntity; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.renderer.entity.RenderLiving; -import net.minecraft.entity.Entity; -import net.minecraft.util.ResourceLocation; - -import com.zivilon.cinder_loe.client.model.ModelFangornAuroch; -import com.zivilon.cinder_loe.entity.npc.radagast.FangornAuroch; - -public class RenderFangornAuroch extends RenderLiving { - public static LOTRRandomSkins aurochsSkins; - - public RenderFangornAuroch() { - super((ModelBase)new ModelFangornAuroch(), 0.5F); - aurochsSkins = LOTRRandomSkins.loadSkinsList("lotr:mob/aurochs"); - } - - public ResourceLocation getEntityTexture(Entity entity) { - FangornAuroch aurochs = (FangornAuroch)entity; - ResourceLocation skin = aurochsSkins.getRandomSkin((LOTRRandomSkinEntity)aurochs); - return skin; - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderFangornBear.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderFangornBear.java deleted file mode 100644 index 332c86f..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderFangornBear.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.zivilon.cinder_loe.client.render; - -import com.zivilon.cinder_loe.entity.npc.radagast.FangornBear; - -import java.util.HashMap; -import java.util.Map; -import lotr.client.model.LOTRModelBear; -import lotr.common.entity.animal.LOTREntityBear; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.renderer.entity.RenderLiving; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.util.ResourceLocation; -import org.lwjgl.opengl.GL11; - -public class RenderFangornBear extends RenderLiving { - public static Map bearSkins = new HashMap(); - - public RenderFangornBear() { - super((ModelBase)new LOTRModelBear(), 0.5F); - } - - protected ResourceLocation getEntityTexture(Entity entity) { - FangornBear bear = (FangornBear)entity; - return getBearSkin(bear.getBearType()); - } - public static ResourceLocation getBearSkin(LOTREntityBear.BearType type) { - String s = type.textureName(); - ResourceLocation skin = (ResourceLocation)bearSkins.get(s); - if (skin == null) { - skin = new ResourceLocation("lotr:mob/bear/" + s + ".png"); - bearSkins.put(s, skin); - } - return skin; - } - - public void preRenderCallback(EntityLivingBase entity, float f) { - scaleBearModel(); - } - - public static void scaleBearModel() { - float scale = 1.2F; - GL11.glScalef(scale, scale, scale); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderFangornElk.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderFangornElk.java deleted file mode 100644 index a34b632..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderFangornElk.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.zivilon.cinder_loe.client.render; - -import lotr.common.entity.LOTRRandomSkinEntity; -import lotr.client.render.entity.LOTRRandomSkins; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.renderer.entity.RenderLiving; -import net.minecraft.entity.Entity; -import net.minecraft.util.ResourceLocation; - -import com.zivilon.cinder_loe.client.model.ModelFangornElk; -import com.zivilon.cinder_loe.entity.npc.radagast.FangornElk; - -public class RenderFangornElk extends RenderLiving { - private static LOTRRandomSkins elkSkins; - - private static ResourceLocation saddleTexture = new ResourceLocation("lotr:mob/elk/saddle.png"); - - public RenderFangornElk() { - super((ModelBase)new ModelFangornElk(), 0.5F); - setRenderPassModel((ModelBase)new ModelFangornElk(0.5F)); - elkSkins = LOTRRandomSkins.loadSkinsList("lotr:mob/elk/elk"); - } - - public ResourceLocation getEntityTexture(Entity entity) { - FangornElk elk = (FangornElk)entity; - ResourceLocation elkSkin = elkSkins.getRandomSkin((LOTRRandomSkinEntity)elk); - return elkSkin; - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderFangornWildBoar.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderFangornWildBoar.java deleted file mode 100644 index b6dd3e0..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderFangornWildBoar.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.zivilon.cinder_loe.client.render; - -import lotr.client.model.LOTRModelBoar; - -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.renderer.entity.RenderLiving; -import net.minecraft.entity.Entity; -import net.minecraft.util.ResourceLocation; - -public class RenderFangornWildBoar extends RenderLiving { - public static ResourceLocation boarSkin = new ResourceLocation("lotr:mob/boar/boar.png"); - - public RenderFangornWildBoar() { - super((ModelBase)new LOTRModelBoar(), 0.7F); - setRenderPassModel((ModelBase)new LOTRModelBoar(0.5F)); - } - - protected ResourceLocation getEntityTexture(Entity entity) { - return boarSkin; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderFangornWolf.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderFangornWolf.java deleted file mode 100644 index 454233e..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderFangornWolf.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.zivilon.cinder_loe.client.render; - -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.renderer.entity.RenderLiving; -import net.minecraft.entity.Entity; -import net.minecraft.util.ResourceLocation; - -import com.zivilon.cinder_loe.client.model.ModelFangornWolf; - -public class RenderFangornWolf extends RenderLiving { - public static final ResourceLocation wolfSkin = new ResourceLocation("minecraft:textures/entity/wolf/wolf.png"); - - public RenderFangornWolf() { - super((ModelBase)new ModelFangornWolf(), 0.7F); - setRenderPassModel((ModelBase)new ModelFangornWolf()); - } - - protected ResourceLocation getEntityTexture(Entity entity) { - return wolfSkin; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderLimwaith.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderLimwaith.java deleted file mode 100644 index df82b8e..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderLimwaith.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.zivilon.cinder_loe.client.render; - -import lotr.client.model.LOTRModelHuman; -import lotr.client.render.entity.LOTRRenderBiped; -import lotr.client.render.entity.LOTRRandomSkins; -import lotr.common.entity.LOTRRandomSkinEntity; -import lotr.common.entity.npc.LOTREntityNPC; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelBiped; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.util.ResourceLocation; - -import com.zivilon.cinder_loe.entity.npc.evil_human.Limwaith; - -public class RenderLimwaith extends LOTRRenderBiped { - public static LOTRRandomSkins skinsMale; - - public static LOTRRandomSkins skinsFemale; - - public ModelBiped outfitModel = (ModelBiped)new LOTRModelHuman(0.6F, false); - - public RenderLimwaith() { - super((ModelBiped)new LOTRModelHuman(), 0.5F); - setRenderPassModel((ModelBase)this.outfitModel); - skinsMale = LOTRRandomSkins.loadSkinsList("cinder_loe:mob/limwaith/limwaith_male"); - skinsFemale = LOTRRandomSkins.loadSkinsList("cinder_loe:mob/limwaith/limwaith_female"); - } - - public ResourceLocation getEntityTexture(Entity entity) { - Limwaith limwaith = (Limwaith)entity; - if (((LOTREntityNPC)limwaith).familyInfo.isMale()) - return skinsMale.getRandomSkin((LOTRRandomSkinEntity)limwaith); - return skinsFemale.getRandomSkin((LOTRRandomSkinEntity)limwaith); - } - - public int shouldRenderPass(EntityLiving entity, int pass, float f) { - Limwaith limwaith = (Limwaith)entity; - return super.shouldRenderPass((EntityLiving)limwaith, pass, f); - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderLimwaithShaman.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderLimwaithShaman.java deleted file mode 100644 index 7b92011..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderLimwaithShaman.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.zivilon.cinder_loe.client.render; - -import com.zivilon.cinder_loe.entity.npc.evil_human.Limwaith; -import lotr.client.render.entity.LOTRRandomSkins; -import net.minecraft.client.model.ModelBase; -import net.minecraft.entity.EntityLiving; - -public class RenderLimwaithShaman extends RenderLimwaith { - private static LOTRRandomSkins outfits; - - public RenderLimwaithShaman() { - outfits = LOTRRandomSkins.loadSkinsList("cinder_loe:mob/limwaith/shaman_outfit"); - } - - @Override - public int shouldRenderPass(EntityLiving entity, int pass, float f) { - Limwaith shaman = (Limwaith) entity; - if (pass == 1 && shaman.getEquipmentInSlot(3) == null) { - this.setRenderPassModel((ModelBase)this.outfitModel); - this.bindTexture(outfits.getRandomSkin(shaman)); - return 1; - } - return super.shouldRenderPass((EntityLiving)shaman, pass, f); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderRenegade.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderRenegade.java deleted file mode 100644 index 37b9ae3..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderRenegade.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.zivilon.cinder_loe.client.render; - -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelBiped; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.util.ResourceLocation; - -import com.zivilon.cinder_loe.entity.Renegade; - -import lotr.client.model.LOTRModelHuman; -import lotr.client.render.entity.LOTRRandomSkins; -import lotr.client.render.entity.LOTRRenderBiped; -import lotr.common.entity.LOTRRandomSkinEntity; -import lotr.common.entity.npc.LOTREntityNPC; - -public class RenderRenegade extends LOTRRenderBiped { - - private static LOTRRandomSkins skinsMale; - - private static LOTRRandomSkins skinsFemale; - - private static LOTRRandomSkins headwearFemale; - - protected ModelBiped outfitModel = (ModelBiped) new LOTRModelHuman(0.6F, false); - - public RenderRenegade() { - super((ModelBiped) new LOTRModelHuman(), 0.5F); - skinsMale = LOTRRandomSkins.loadSkinsList("cinder_loe:mob/renegade/renegade_male"); - skinsFemale = LOTRRandomSkins.loadSkinsList("cinder_loe:mob/renegade/renegade_female"); - headwearFemale = LOTRRandomSkins.loadSkinsList("cinder_loe:mob/renegade/headwear_female"); - } - - public ResourceLocation getEntityTexture(Entity entity) { - Renegade man = (Renegade) entity; - if (((LOTREntityNPC) man).familyInfo.isMale()) return skinsMale.getRandomSkin((LOTRRandomSkinEntity) man); - return skinsFemale.getRandomSkin((LOTRRandomSkinEntity) man); - } - - public int shouldRenderPass(EntityLiving entity, int pass, float f) { - Renegade man = (Renegade) entity; - if (pass == 0 && man.getEquipmentInSlot(4) == null) if (!((LOTREntityNPC) man).familyInfo.isMale() - && LOTRRandomSkins.nextInt((LOTRRandomSkinEntity) man, 4) == 0) { - setRenderPassModel((ModelBase) this.outfitModel); - bindTexture(headwearFemale.getRandomSkin((LOTRRandomSkinEntity) man)); - return 1; - } - return super.shouldRenderPass((EntityLiving) man, pass, f); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderSarumanFireball.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderSarumanFireball.java deleted file mode 100644 index fad8631..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderSarumanFireball.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.zivilon.cinder_loe.client.render; - -import lotr.client.LOTRClientProxy; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.entity.Render; -import net.minecraft.entity.Entity; -import net.minecraft.util.ResourceLocation; -import org.lwjgl.opengl.GL11; - -import com.zivilon.cinder_loe.entity.SarumanFireball; - -public class RenderSarumanFireball extends Render { - public static final ResourceLocation particlesTexture = new ResourceLocation("cinder_loe:misc/particles.png"); - - protected ResourceLocation getEntityTexture(Entity entity) { - return particlesTexture; - } - - public void doRender(Entity entity, double d, double d1, double d2, float f, float f1) { - GL11.glPushMatrix(); - GL11.glTranslatef((float)d, (float)d1, (float)d2); - GL11.glEnable(32826); - bindEntityTexture(entity); - Tessellator tessellator = Tessellator.instance; - drawSprite(tessellator, 24 + ((SarumanFireball)entity).animationTick); - GL11.glDisable(32826); - GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); - GL11.glPopMatrix(); - } - - private void drawSprite(Tessellator tessellator, int index) { - float f = (index % 8 * 16 + 0) / 128.0F; - float f1 = (index % 8 * 16 + 16) / 128.0F; - float f2 = (index / 8 * 16 + 0) / 128.0F; - float f3 = (index / 8 * 16 + 16) / 128.0F; - float f4 = 1.0F; - float f5 = 0.5F; - float f6 = 0.25F; - GL11.glRotatef(180.0F - this.renderManager.playerViewY, 0.0F, 1.0F, 0.0F); - GL11.glRotatef(-this.renderManager.playerViewX, 1.0F, 0.0F, 0.0F); - tessellator.startDrawingQuads(); - tessellator.setNormal(0.0F, 1.0F, 0.0F); - tessellator.setBrightness(15728880); - tessellator.addVertexWithUV((0.0F - f5), (0.0F - f6), 0.0D, f, f3); - tessellator.addVertexWithUV((f4 - f5), (0.0F - f6), 0.0D, f1, f3); - tessellator.addVertexWithUV((f4 - f5), (f4 - f6), 0.0D, f1, f2); - tessellator.addVertexWithUV((0.0F - f5), (f4 - f6), 0.0D, f, f2); - tessellator.draw(); - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderSarumanWhiteFireball.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderSarumanWhiteFireball.java deleted file mode 100644 index ec581ab..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderSarumanWhiteFireball.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.zivilon.cinder_loe.client.render; - -import lotr.client.LOTRClientProxy; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.entity.Render; -import net.minecraft.entity.Entity; -import net.minecraft.util.ResourceLocation; -import org.lwjgl.opengl.GL11; - -import com.zivilon.cinder_loe.entity.SarumanWhiteFireball; - -public class RenderSarumanWhiteFireball extends Render { - public static final ResourceLocation particlesTexture = new ResourceLocation("cinder_loe:misc/particles.png"); - - protected ResourceLocation getEntityTexture(Entity entity) { - return particlesTexture; - } - - public void doRender(Entity entity, double d, double d1, double d2, float f, float f1) { - GL11.glPushMatrix(); - GL11.glTranslatef((float)d, (float)d1, (float)d2); - GL11.glEnable(32826); - bindEntityTexture(entity); - Tessellator tessellator = Tessellator.instance; - drawSprite(tessellator, 32 + ((SarumanWhiteFireball)entity).animationTick); - GL11.glDisable(32826); - GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); - GL11.glPopMatrix(); - } - - private void drawSprite(Tessellator tessellator, int index) { - float f = (index % 8 * 16 + 0) / 128.0F; - float f1 = (index % 8 * 16 + 16) / 128.0F; - float f2 = (index / 8 * 16 + 0) / 128.0F; - float f3 = (index / 8 * 16 + 16) / 128.0F; - float f4 = 1.0F; - float f5 = 0.5F; - float f6 = 0.25F; - GL11.glRotatef(180.0F - this.renderManager.playerViewY, 0.0F, 1.0F, 0.0F); - GL11.glRotatef(-this.renderManager.playerViewX, 1.0F, 0.0F, 0.0F); - tessellator.startDrawingQuads(); - tessellator.setNormal(0.0F, 1.0F, 0.0F); - tessellator.setBrightness(15728880); - tessellator.addVertexWithUV((0.0F - f5), (0.0F - f6), 0.0D, f, f3); - tessellator.addVertexWithUV((f4 - f5), (0.0F - f6), 0.0D, f1, f3); - tessellator.addVertexWithUV((f4 - f5), (f4 - f6), 0.0D, f1, f2); - tessellator.addVertexWithUV((0.0F - f5), (f4 - f6), 0.0D, f, f2); - tessellator.draw(); - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderTamedCrocodile.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderTamedCrocodile.java deleted file mode 100644 index 8aefe9c..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderTamedCrocodile.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.zivilon.cinder_loe.client.render; - -import lotr.client.model.LOTRModelBoar; -import lotr.client.model.LOTRModelCrocodile; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.renderer.entity.RenderLiving; -import net.minecraft.entity.Entity; -import net.minecraft.util.ResourceLocation; - -public class RenderTamedCrocodile extends RenderLiving { - public static ResourceLocation crocskin = new ResourceLocation("lotr:mob/crocodile.png"); - - public RenderTamedCrocodile() { - super((ModelBase)new LOTRModelCrocodile(), 0.7F); - setRenderPassModel((ModelBase)new LOTRModelCrocodile()); - } - - protected ResourceLocation getEntityTexture(Entity entity) { - return crocskin; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderUtumnoSlave.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderUtumnoSlave.java deleted file mode 100644 index ecabba9..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderUtumnoSlave.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.zivilon.cinder_loe.client.render; - -import lotr.client.model.LOTRModelHuman; -import lotr.client.render.entity.LOTRRenderBiped; -import lotr.client.render.entity.LOTRRandomSkins; -import lotr.common.entity.LOTRRandomSkinEntity; -import lotr.common.entity.npc.LOTREntityNPC; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelBiped; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.util.ResourceLocation; - -public class RenderUtumnoSlave extends LOTRRenderBiped { - public static LOTRRandomSkins skins; - - public ModelBiped outfitModel = (ModelBiped)new LOTRModelHuman(0.6F, false); - - public RenderUtumnoSlave() { - super((ModelBiped)new LOTRModelHuman(), 0.5F); - setRenderPassModel((ModelBase)this.outfitModel); - skins = LOTRRandomSkins.loadSkinsList("lotr:mob/scrapTrader"); - } - - public ResourceLocation getEntityTexture(Entity entity) { - LOTREntityNPC lotrEntity = (LOTREntityNPC) entity; - return skins.getRandomSkin(lotrEntity); - } - - public int shouldRenderPass(EntityLiving entity, int pass, float f) { - return super.shouldRenderPass(entity, pass, f); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderWraith.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderWraith.java deleted file mode 100644 index d9ad866..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/RenderWraith.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.zivilon.cinder_loe.client.render; - -import lotr.client.model.LOTRModelMarshWraith; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.renderer.entity.RenderLiving; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.util.MathHelper; -import net.minecraft.util.ResourceLocation; -import org.lwjgl.opengl.GL11; - -import com.zivilon.cinder_loe.entity.Wraith; - -public class RenderWraith extends RenderLiving { - private static ResourceLocation skin = new ResourceLocation("cinder_loe:mob/wraith/wraith.png"); - - public RenderWraith() { - super((ModelBase)new LOTRModelMarshWraith(), 0.5F); - } - - protected ResourceLocation getEntityTexture(Entity entity) { - return skin; - } - - protected void preRenderCallback(EntityLivingBase entity, float f) { - super.preRenderCallback(entity, f); - float f1 = 0.9375F; - float hover = MathHelper.sin((((Entity)entity).ticksExisted + f) * 0.15F) * 0.2F - 0.5F; - GL11.glScalef(f1, f1, f1); - GL11.glTranslatef(0.0F, hover, 0.0F); - Wraith wraith = (Wraith)entity; - if (wraith.getDeathFadeTime() > 0) { - GL11.glEnable(3042); - GL11.glBlendFunc(770, 771); - GL11.glEnable(3008); - GL11.glColor4f(1.0F, 1.0F, 1.0F, wraith.getDeathFadeTime() / 30.0F); - } - } - - protected float getDeathMaxRotation(EntityLivingBase entity) { - return 0.0F; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/block/RenderMistBlock.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/block/RenderMistBlock.java deleted file mode 100644 index 6c2a61a..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/block/RenderMistBlock.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.zivilon.cinder_loe.client.render.block; - -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; -import net.minecraft.tileentity.TileEntity; -import org.lwjgl.opengl.GL11; -import com.zivilon.cinder_loe.tileentity.TileEntityMistBlock; -import lotr.client.render.tileentity.LOTRRenderUtumnoPortal; - -public class RenderMistBlock extends TileEntitySpecialRenderer { - public void renderTileEntityAt(TileEntity tileentity, double d, double d1, double d2, float f) { - TileEntityMistBlock mist = (TileEntityMistBlock)tileentity; - GL11.glPushMatrix(); - GL11.glDisable(2884); - GL11.glDisable(3553); - GL11.glDisable(2896); - GL11.glEnable(3042); - GL11.glBlendFunc(770, 771); - GL11.glDepthMask(false); - int passes = 60; - for (int i = 0; i < passes; i++) { - GL11.glPushMatrix(); - GL11.glTranslatef((float)d + 0.5F, (float)d1 + 1.0F + i * 0.5F, (float)d2 + 0.5F); - Tessellator tessellator = Tessellator.instance; - tessellator.startDrawingQuads(); - tessellator.setColorRGBA_F(mist.color_red, mist.color_green, mist.color_blue, (passes - i) / passes); - double width = 0.5D; - tessellator.addVertexWithUV(width, 0.0D, width, 0.0D, 0.0D); - tessellator.addVertexWithUV(width, 0.0D, -width, 0.0D, 0.0D); - tessellator.addVertexWithUV(-width, 0.0D, -width, 0.0D, 0.0D); - tessellator.addVertexWithUV(-width, 0.0D, width, 0.0D, 0.0D); - tessellator.draw(); - GL11.glPopMatrix(); - } - GL11.glDepthMask(true); - GL11.glEnable(3553); - GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); - GL11.glDisable(3042); - GL11.glEnable(2896); - GL11.glEnable(2884); - GL11.glPopMatrix(); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/block/Renderverticalweaponrack.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/block/Renderverticalweaponrack.java deleted file mode 100644 index dcbc34e..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/block/Renderverticalweaponrack.java +++ /dev/null @@ -1,144 +0,0 @@ -package com.zivilon.cinder_loe.client.render.block; - -import com.zivilon.cinder_loe.client.model.Modelverticalweaponrack; -import com.zivilon.cinder_loe.tileentity.TileEntityMistBlock; -import lotr.client.model.LOTRModelWeaponRack; -import lotr.client.render.item.LOTRRenderBow; -import lotr.common.tileentity.LOTRTileEntityWeaponRack; -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.FontRenderer; -import net.minecraft.client.renderer.OpenGlHelper; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.entity.RenderManager; -import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.IItemRenderer; -import org.lwjgl.opengl.GL11; - -public class Renderverticalweaponrack extends TileEntitySpecialRenderer { - private static ResourceLocation rackTexture = new ResourceLocation("lotr:item/verticalweaponRack.png"); - private static Modelverticalweaponrack rackModel = new Modelverticalweaponrack(); - public void renderTileEntityAt(TileEntity tileentity, double d, double d1, double d2, float f) { - LOTRTileEntityWeaponRack weaponRack = (LOTRTileEntityWeaponRack)tileentity; - GL11.glPushMatrix(); - GL11.glDisable((int)2884); - GL11.glEnable((int)32826); - GL11.glEnable((int)3008); - GL11.glTranslatef((float)((float)d + 0.5f), (float)((float)d1 + 1.5f), (float)((float)d2 + 0.5f)); - int meta = weaponRack.getBlockMetadata(); - int dir = meta & 3; - boolean wall = (meta & 4) != 0; - switch (dir) { - case 0: { - GL11.glRotatef((float)0.0f, (float)0.0f, (float)1.0f, (float)0.0f); - break; - } - case 1: { - GL11.glRotatef((float)270.0f, (float)0.0f, (float)1.0f, (float)0.0f); - break; - } - case 2: { - GL11.glRotatef((float)180.0f, (float)0.0f, (float)1.0f, (float)0.0f); - break; - } - case 3: { - GL11.glRotatef((float)90.0f, (float)0.0f, (float)1.0f, (float)0.0f); - } - } - if (wall) { - GL11.glTranslatef((float)0.0f, (float)0.375f, (float)-0.5f); - } - GL11.glScalef((float)-1.0f, (float)-1.0f, (float)1.0f); - float scale = 0.0625f; - this.bindTexture(rackTexture); - Renderverticalweaponrack.rackModel.onWall = wall; - rackModel.render(null, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, scale); - ItemStack weaponItem = weaponRack.getWeaponItem(); - if (weaponItem != null) { - float weaponScale = 0.625f; - GL11.glScalef((float)weaponScale, (float)weaponScale, (float)weaponScale); - GL11.glScalef((float)-1.0f, (float)1.0f, (float)1.0f); - GL11.glTranslatef((float)0.0f, (float)0.52f, (float)0.0f); - if (wall) { - GL11.glTranslatef((float)0.0f, (float)1.1f, (float)0.51f); - } - GL11.glRotatef((float)45.0f, (float)0.0f, (float)0.0f, (float)1.0f); - GL11.glTranslatef((float)0.9375f, (float)0.0625f, (float)0.0f); - GL11.glRotatef((float)-335.0f, (float)0.0f, (float)0.0f, (float)1.0f); - GL11.glRotatef((float)-50.0f, (float)0.0f, (float)1.0f, (float)0.0f); - GL11.glScalef((float)0.6666667f, (float)0.6666667f, (float)0.6666667f); - GL11.glTranslatef((float)0.0f, (float)0.3f, (float)0.0f); - RenderManager renderManager = RenderManager.instance; - int passes = 1; - if (weaponItem.getItem().requiresMultipleRenderPasses()) { - passes = weaponItem.getItem().getRenderPasses(weaponItem.getItemDamage()); - } - LOTRRenderBow.renderingWeaponRack = true; - for (int pass = 0; pass < passes; ++pass) { - int color = weaponItem.getItem().getColorFromItemStack(weaponItem, pass); - float r = (float)(color >> 16 & 0xFF) / 255.0f; - float g = (float)(color >> 8 & 0xFF) / 255.0f; - float b = (float)(color & 0xFF) / 255.0f; - GL11.glColor4f((float)r, (float)g, (float)b, (float)1.0f); - renderManager.itemRenderer.renderItem(weaponRack.getEntityForRender(), weaponItem, 0, IItemRenderer.ItemRenderType.EQUIPPED); - } - LOTRRenderBow.renderingWeaponRack = false; - } - GL11.glEnable((int)2884); - GL11.glDisable((int)32826); - GL11.glPopMatrix(); - this.renderWeaponName(weaponRack, d + 0.5, d1 + 0.75, d2 + 0.5); - } - - private void renderWeaponName(LOTRTileEntityWeaponRack rack, double d, double d1, double d2) { - MovingObjectPosition mop = Minecraft.getMinecraft().objectMouseOver; - if (mop != null && mop.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK && mop.blockX == rack.xCoord && mop.blockY == rack.yCoord && mop.blockZ == rack.zCoord) { - ItemStack weaponItem = rack.getWeaponItem(); - if (Minecraft.isGuiEnabled() && weaponItem != null && weaponItem.hasDisplayName()) { - float f2; - RenderManager renderManager = RenderManager.instance; - FontRenderer fontRenderer = this.func_147498_b(); - float f = 1.6f; - float f1 = 0.016666668f * f; - double dSq = renderManager.livingPlayer.getDistanceSq((double)rack.xCoord + 0.5, (double)rack.yCoord + 0.5, (double)rack.zCoord); - if (dSq < (double)((f2 = 64.0f) * f2)) { - String name = weaponItem.getDisplayName(); - GL11.glPushMatrix(); - GL11.glTranslatef((float)((float)d), (float)((float)d1 + 0.5f), (float)((float)d2)); - GL11.glNormal3f((float)0.0f, (float)1.0f, (float)0.0f); - GL11.glRotatef((float)(-renderManager.playerViewY), (float)0.0f, (float)1.0f, (float)0.0f); - GL11.glRotatef((float)renderManager.playerViewX, (float)1.0f, (float)0.0f, (float)0.0f); - GL11.glScalef((float)(-f1), (float)(-f1), (float)f1); - GL11.glDisable((int)2896); - GL11.glDepthMask((boolean)false); - GL11.glDisable((int)2929); - GL11.glEnable((int)3042); - OpenGlHelper.glBlendFunc((int)770, (int)771, (int)1, (int)0); - Tessellator tessellator = Tessellator.instance; - int b0 = 0; - GL11.glDisable((int)3553); - tessellator.startDrawingQuads(); - int j = fontRenderer.getStringWidth(name) / 2; - tessellator.setColorRGBA_F(0.0f, 0.0f, 0.0f, 0.25f); - tessellator.addVertex((double)(-j - 1), (double)(-1 + b0), 0.0); - tessellator.addVertex((double)(-j - 1), (double)(8 + b0), 0.0); - tessellator.addVertex((double)(j + 1), (double)(8 + b0), 0.0); - tessellator.addVertex((double)(j + 1), (double)(-1 + b0), 0.0); - tessellator.draw(); - GL11.glEnable((int)3553); - fontRenderer.drawString(name, -fontRenderer.getStringWidth(name) / 2, b0, 0x20FFFFFF); - GL11.glEnable((int)2929); - GL11.glDepthMask((boolean)true); - fontRenderer.drawString(name, -fontRenderer.getStringWidth(name) / 2, b0, -1); - GL11.glEnable((int)2896); - GL11.glDisable((int)3042); - GL11.glColor4f((float)1.0f, (float)1.0f, (float)1.0f, (float)1.0f); - GL11.glPopMatrix(); - } - } - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptDwarf.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptDwarf.java deleted file mode 100644 index d69e84b..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptDwarf.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.zivilon.cinder_loe.client.render.corrupt; - -import com.zivilon.cinder_loe.entity.corrupt.CorruptDwarf; -import com.zivilon.cinder_loe.entity.corrupt.CorruptElf; -import lotr.client.model.LOTRModelDwarf; -import lotr.client.model.LOTRModelElf; -import lotr.client.render.entity.LOTRRandomSkins; -import lotr.client.render.entity.LOTRRenderBiped; -import lotr.client.render.entity.LOTRRenderDwarf; -import lotr.common.entity.LOTRRandomSkinEntity; -import lotr.common.entity.npc.LOTREntityNPC; -import net.minecraft.client.model.ModelBiped; -import net.minecraft.entity.Entity; -import net.minecraft.util.ResourceLocation; - -public class RenderCorruptDwarf extends LOTRRenderDwarf { - public static LOTRRandomSkins skinsMale; - protected ModelBiped standardRenderPassModel = new LOTRModelDwarf(0.5f, 64, 64); - - public RenderCorruptDwarf() { - super(); - skinsMale = LOTRRandomSkins.loadSkinsList("cinder_loe:mob/corrupt/dwarf"); - } - @Override - protected void func_82421_b() { - this.field_82423_g = new LOTRModelDwarf(1.0f); - this.field_82425_h = new LOTRModelDwarf(0.5f); - } - - @Override - public ResourceLocation getEntityTexture(Entity entity) { - CorruptDwarf dwarf = (CorruptDwarf)entity; - if (dwarf.familyInfo.isMale()) { - return skinsMale.getRandomSkin(dwarf); - } - return skinsMale.getRandomSkin(dwarf); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptElf.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptElf.java deleted file mode 100644 index 419b2fd..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptElf.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.zivilon.cinder_loe.client.render.corrupt; - -import com.zivilon.cinder_loe.entity.corrupt.CorruptDwarf; -import com.zivilon.cinder_loe.entity.corrupt.CorruptElf; -import lotr.client.model.LOTRModelElf; -import lotr.client.render.entity.LOTRRandomSkins; -import lotr.client.render.entity.LOTRRenderBiped; -import lotr.client.render.entity.LOTRRenderElf; -import lotr.common.entity.LOTRRandomSkinEntity; -import lotr.common.entity.npc.LOTREntityNPC; -import net.minecraft.client.model.ModelBiped; -import net.minecraft.entity.Entity; -import net.minecraft.util.ResourceLocation; - -public class RenderCorruptElf extends LOTRRenderElf { - public static LOTRRandomSkins skinsMale; - public static LOTRRandomSkins skinsFemale; - private LOTRModelElf eyesModel = new LOTRModelElf(0.05f, 64, 64); - private LOTRModelElf outfitModel = new LOTRModelElf(0.6f, 64, 64); - - public RenderCorruptElf() { - super(); - skinsMale = LOTRRandomSkins.loadSkinsList("cinder_loe:mob/corrupt/elf_male"); - skinsFemale = LOTRRandomSkins.loadSkinsList("cinder_loe:mob/corrupt/elf_female"); - } - - @Override - protected void func_82421_b() { - this.field_82423_g = new LOTRModelElf(1.0f); - this.field_82425_h = new LOTRModelElf(0.5f); - } - @Override - public ResourceLocation getEntityTexture(Entity entity) { - CorruptElf elf = (CorruptElf)entity; - if (((LOTREntityNPC)elf).familyInfo.isMale()) { - return skinsMale.getRandomSkin((LOTRRandomSkinEntity)elf); - } - return skinsFemale.getRandomSkin((LOTRRandomSkinEntity)elf); - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptEnt.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptEnt.java deleted file mode 100644 index b6275e7..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptEnt.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.zivilon.cinder_loe.client.render.corrupt; - -import com.zivilon.cinder_loe.entity.corrupt.CorruptDwarf; -import lotr.client.LOTRTextures; -import lotr.client.model.LOTRModelDwarf; -import lotr.client.model.LOTRModelEnt; -import lotr.client.render.entity.LOTRGlowingEyes; -import lotr.client.render.entity.LOTRRandomSkins; -import lotr.client.render.entity.LOTRRenderBiped; -import lotr.common.entity.npc.LOTREntityEnt; -import lotr.common.entity.npc.LOTREntityTree; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelBiped; -import net.minecraft.client.renderer.entity.RenderLiving; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.util.ResourceLocation; - -import java.util.HashMap; - -public class RenderCorruptEnt extends RenderLiving { - private static HashMap entTextures = new HashMap(); - private LOTRModelEnt eyesModel = new LOTRModelEnt(0.05f); - - public RenderCorruptEnt() { - super((ModelBase)new LOTRModelEnt(), 0.5f); - } - - protected ResourceLocation getEntityTexture(Entity entity) { - int treeType = ((LOTREntityEnt)entity).getTreeType(); - String s = "cinder_loe:mob/corrupt/ent/" + LOTREntityTree.TYPES[treeType] + ".png"; - ResourceLocation r = (ResourceLocation)entTextures.get(treeType); - if (r == null) { - r = new ResourceLocation(s); - entTextures.put(treeType, r); - } - return r; - } - - protected void renderModel(EntityLivingBase entity, float f, float f1, float f2, float f3, float f4, float f5) { - super.renderModel(entity, f, f1, f2, f3, f4, f5); - ResourceLocation eyes = LOTRTextures.getEyesTexture(this.getEntityTexture((Entity)entity), new int[][]{{15, 23}, {22, 23}}, 3, 2); - LOTRGlowingEyes.renderGlowingEyes((Entity)entity, eyes, this.eyesModel, f, f1, f2, f3, f4, f5); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptHobbit.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptHobbit.java deleted file mode 100644 index 116ced5..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptHobbit.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.zivilon.cinder_loe.client.render.corrupt; - -import com.zivilon.cinder_loe.entity.corrupt.CorruptDwarf; -import com.zivilon.cinder_loe.entity.corrupt.CorruptHobbit; -import lotr.client.model.LOTRModelDwarf; -import lotr.client.model.LOTRModelHobbit; -import lotr.client.render.entity.LOTRRandomSkins; -import lotr.client.render.entity.LOTRRenderBiped; -import lotr.client.render.entity.LOTRRenderHobbit; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelBiped; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.util.ResourceLocation; - -public class RenderCorruptHobbit extends LOTRRenderHobbit { - public static LOTRRandomSkins hobbitSkinsMale; - public static LOTRRandomSkins hobbitSkinsFemale; - protected ModelBiped outfitModel = new LOTRModelHobbit(0.5f, 64, 64); - - public RenderCorruptHobbit() { - super(); - hobbitSkinsMale = LOTRRandomSkins.loadSkinsList("cinder_loe:mob/corrupt/hobbit_male"); - hobbitSkinsFemale = LOTRRandomSkins.loadSkinsList("cinder_loe:mob/corrupt/hobbit_female"); - - } - - @Override - protected void func_82421_b() { - this.field_82423_g = new LOTRModelHobbit(1.0f); - this.field_82425_h = new LOTRModelHobbit(0.5f); - } - - @Override - public ResourceLocation getEntityTexture(Entity entity) { - CorruptHobbit dwarf = (CorruptHobbit) entity; - if (dwarf.familyInfo.isMale()) { - return hobbitSkinsMale.getRandomSkin(dwarf); - } - return hobbitSkinsFemale.getRandomSkin(dwarf); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptMan.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptMan.java deleted file mode 100644 index eb187fd..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptMan.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.zivilon.cinder_loe.client.render.corrupt; - -import com.zivilon.cinder_loe.entity.corrupt.CorruptElf; -import com.zivilon.cinder_loe.entity.corrupt.CorruptMan; -import lotr.client.model.LOTRModelElf; -import lotr.client.model.LOTRModelHuman; -import lotr.client.render.entity.*; -import lotr.common.entity.LOTRRandomSkinEntity; -import lotr.common.entity.npc.LOTREntityMan; -import lotr.common.entity.npc.LOTREntityNPC; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelBiped; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.util.ResourceLocation; - -public class RenderCorruptMan extends LOTRRenderGondorMan { - public static LOTRRandomSkins skinsMale; - public static LOTRRandomSkins skinsFemale; - protected ModelBiped outfitModel = new LOTRModelHuman(0.6f, false); - - public RenderCorruptMan() { - super(); - skinsMale = LOTRRandomSkins.loadSkinsList("cinder_loe:mob/corrupt/human_male"); - skinsFemale = LOTRRandomSkins.loadSkinsList("cinder_loe:mob/corrupt/human_female"); - } - - @Override - public ResourceLocation getEntityTexture(Entity entity) { - CorruptMan gondorian = (CorruptMan)entity; - if (gondorian.familyInfo.isMale()) { - return skinsMale.getRandomSkin(gondorian); - } - return skinsFemale.getRandomSkin(gondorian); - } - @Override - public int shouldRenderPass(EntityLiving entity, int pass, float f) { - CorruptMan dunedain = (CorruptMan)entity; - return super.shouldRenderPass((EntityLiving)dunedain, pass, f); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptOrc.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptOrc.java deleted file mode 100644 index ae51dce..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptOrc.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.zivilon.cinder_loe.client.render.corrupt; - -import com.zivilon.cinder_loe.entity.corrupt.CorruptDwarf; -import com.zivilon.cinder_loe.entity.corrupt.CorruptOrc; -import lotr.client.LOTRTextures; -import lotr.client.model.LOTRModelDwarf; -import lotr.client.model.LOTRModelOrc; -import lotr.client.render.entity.LOTRRandomSkins; -import lotr.client.render.entity.LOTRRenderBiped; -import lotr.client.render.entity.LOTRRenderDwarf; -import lotr.client.render.entity.LOTRRenderOrc; -import net.minecraft.client.model.ModelBiped; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.util.ResourceLocation; -import org.lwjgl.opengl.GL11; - -public class RenderCorruptOrc extends LOTRRenderOrc { - private static LOTRRandomSkins orcSkins; - private static LOTRRandomSkins urukSkins; - private static LOTRRandomSkins blackUrukSkins; - private LOTRModelOrc eyesModel = new LOTRModelOrc(0.05f); - - public RenderCorruptOrc() { - super(); - orcSkins = LOTRRandomSkins.loadSkinsList("cinder_loe:mob/corrupt/orc"); - } - - @Override - protected void func_82421_b() { - this.field_82423_g = new LOTRModelOrc(1.0f); - this.field_82425_h = new LOTRModelOrc(0.5f); - } - - @Override - public ResourceLocation getEntityTexture(Entity entity) { - CorruptOrc orc = (CorruptOrc)entity; - return orcSkins.getRandomSkin(orc); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptSkeleton.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptSkeleton.java deleted file mode 100644 index f827d0b..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/corrupt/RenderCorruptSkeleton.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.zivilon.cinder_loe.client.render.corrupt; - -import com.zivilon.cinder_loe.client.model.ModelFangornElk; -import com.zivilon.cinder_loe.client.model.ModelSunkenSkeleton; -import com.zivilon.cinder_loe.entity.corrupt.CorruptMan; -import lotr.client.model.LOTRModelHuman; -import lotr.client.model.LOTRModelSkeleton; -import lotr.client.render.entity.LOTRRandomSkins; -import lotr.client.render.entity.LOTRRenderBiped; -import lotr.client.render.entity.LOTRRenderGondorMan; -import lotr.client.render.entity.LOTRRenderSkeleton; -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelBiped; -import net.minecraft.client.renderer.entity.RenderBiped; -import net.minecraft.client.renderer.entity.RenderLiving; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.util.ResourceLocation; - -public class RenderCorruptSkeleton extends RenderBiped { - - private static ResourceLocation skin = new ResourceLocation("textures/entity/skeleton/skeleton.png"); - - public RenderCorruptSkeleton() { - super(new ModelSunkenSkeleton(), 0.5F); - } - - protected void func_82421_b() { - this.field_82423_g = new ModelSunkenSkeleton(1.0F); - this.field_82425_h = new ModelSunkenSkeleton(0.5F); - } - - protected ResourceLocation func_110775_a(Entity entity) { - return skin; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/item/RenderHelper.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/item/RenderHelper.java deleted file mode 100644 index 1d55579..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/item/RenderHelper.java +++ /dev/null @@ -1,151 +0,0 @@ -package com.zivilon.cinder_loe.client.render.item; - -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; -import org.spongepowered.asm.mixin.injection.callback.LocalCapture; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.Dynamic; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; - -import org.lwjgl.opengl.GL11; - -import net.minecraft.client.renderer.ItemRenderer; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.OpenGlHelper; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.client.Minecraft; -import net.minecraft.client.entity.EntityClientPlayerMP; -import net.minecraft.client.entity.EntityPlayerSP; -import net.minecraft.client.renderer.entity.Render; -import net.minecraft.client.renderer.entity.RenderManager; -import net.minecraft.client.renderer.entity.RenderPlayer; -import net.minecraft.client.renderer.texture.TextureManager; -import net.minecraft.client.renderer.texture.TextureMap; -import net.minecraft.client.renderer.texture.TextureUtil; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.init.Blocks; -import net.minecraft.init.Items; -import net.minecraft.item.EnumAction; -import net.minecraft.item.Item; -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemCloth; -import net.minecraft.item.ItemMap; -import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; -import net.minecraft.util.MathHelper; -import net.minecraft.util.ResourceLocation; -import net.minecraft.world.storage.MapData; -import org.lwjgl.opengl.GL11; -import org.lwjgl.opengl.GL12; - -import net.minecraft.client.renderer.entity.RenderItem; -import net.minecraft.client.renderer.RenderBlocks; - -import net.minecraftforge.client.ForgeHooksClient; -import net.minecraftforge.client.IItemRenderer; -import net.minecraftforge.client.IItemRenderer.ItemRenderType; -import net.minecraftforge.client.MinecraftForgeClient; -import static net.minecraftforge.client.IItemRenderer.ItemRenderType.*; -import static net.minecraftforge.client.IItemRenderer.ItemRendererHelper.*; - -public class RenderHelper extends ItemRenderer { - public RenderHelper() { - super(Minecraft.getMinecraft()); - } - - public static void customRenderItemIn2D(Tessellator p_78439_0_, float p_78439_1_, float p_78439_2_, float p_78439_3_, float p_78439_4_, int p_78439_5_, int p_78439_6_, float p_78439_7_, boolean enchant) { - if (!enchant) GL11.glPushMatrix(); // Save the current OpenGL state - if (!enchant) GL11.glEnable(GL11.GL_BLEND); // Enable blending - if (!enchant) OpenGlHelper.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA, GL11.GL_ONE, GL11.GL_ZERO); // Apply your custom blend function for semi-transparency - - p_78439_0_.startDrawingQuads(); - p_78439_0_.setNormal(0.0F, 0.0F, 1.0F); - p_78439_0_.addVertexWithUV(0.0D, 0.0D, 0.0D, (double)p_78439_1_, (double)p_78439_4_); - p_78439_0_.addVertexWithUV(1.0D, 0.0D, 0.0D, (double)p_78439_3_, (double)p_78439_4_); - p_78439_0_.addVertexWithUV(1.0D, 1.0D, 0.0D, (double)p_78439_3_, (double)p_78439_2_); - p_78439_0_.addVertexWithUV(0.0D, 1.0D, 0.0D, (double)p_78439_1_, (double)p_78439_2_); - p_78439_0_.draw(); - p_78439_0_.startDrawingQuads(); - p_78439_0_.setNormal(0.0F, 0.0F, -1.0F); - p_78439_0_.addVertexWithUV(0.0D, 1.0D, (double)(0.0F - p_78439_7_), (double)p_78439_1_, (double)p_78439_2_); - p_78439_0_.addVertexWithUV(1.0D, 1.0D, (double)(0.0F - p_78439_7_), (double)p_78439_3_, (double)p_78439_2_); - p_78439_0_.addVertexWithUV(1.0D, 0.0D, (double)(0.0F - p_78439_7_), (double)p_78439_3_, (double)p_78439_4_); - p_78439_0_.addVertexWithUV(0.0D, 0.0D, (double)(0.0F - p_78439_7_), (double)p_78439_1_, (double)p_78439_4_); - p_78439_0_.draw(); - - - float f5 = 0.5F * (p_78439_1_ - p_78439_3_) / (float)p_78439_5_; - float f6 = 0.5F * (p_78439_4_ - p_78439_2_) / (float)p_78439_6_; - p_78439_0_.startDrawingQuads(); - p_78439_0_.setNormal(-1.0F, 0.0F, 0.0F); - int k; - float f7; - float f8; - - for (k = 0; k < p_78439_5_; ++k) - { - f7 = (float)k / (float)p_78439_5_; - f8 = p_78439_1_ + (p_78439_3_ - p_78439_1_) * f7 - f5; - p_78439_0_.addVertexWithUV((double)f7, 0.0D, (double)(0.0F - p_78439_7_), (double)f8, (double)p_78439_4_); - p_78439_0_.addVertexWithUV((double)f7, 0.0D, 0.0D, (double)f8, (double)p_78439_4_); - p_78439_0_.addVertexWithUV((double)f7, 1.0D, 0.0D, (double)f8, (double)p_78439_2_); - p_78439_0_.addVertexWithUV((double)f7, 1.0D, (double)(0.0F - p_78439_7_), (double)f8, (double)p_78439_2_); - } - - p_78439_0_.draw(); - p_78439_0_.startDrawingQuads(); - p_78439_0_.setNormal(1.0F, 0.0F, 0.0F); - float f9; - - for (k = 0; k < p_78439_5_; ++k) - { - f7 = (float)k / (float)p_78439_5_; - f8 = p_78439_1_ + (p_78439_3_ - p_78439_1_) * f7 - f5; - f9 = f7 + 1.0F / (float)p_78439_5_; - p_78439_0_.addVertexWithUV((double)f9, 1.0D, (double)(0.0F - p_78439_7_), (double)f8, (double)p_78439_2_); - p_78439_0_.addVertexWithUV((double)f9, 1.0D, 0.0D, (double)f8, (double)p_78439_2_); - p_78439_0_.addVertexWithUV((double)f9, 0.0D, 0.0D, (double)f8, (double)p_78439_4_); - p_78439_0_.addVertexWithUV((double)f9, 0.0D, (double)(0.0F - p_78439_7_), (double)f8, (double)p_78439_4_); - } - - p_78439_0_.draw(); - p_78439_0_.startDrawingQuads(); - p_78439_0_.setNormal(0.0F, 1.0F, 0.0F); - - for (k = 0; k < p_78439_6_; ++k) - { - f7 = (float)k / (float)p_78439_6_; - f8 = p_78439_4_ + (p_78439_2_ - p_78439_4_) * f7 - f6; - f9 = f7 + 1.0F / (float)p_78439_6_; - p_78439_0_.addVertexWithUV(0.0D, (double)f9, 0.0D, (double)p_78439_1_, (double)f8); - p_78439_0_.addVertexWithUV(1.0D, (double)f9, 0.0D, (double)p_78439_3_, (double)f8); - p_78439_0_.addVertexWithUV(1.0D, (double)f9, (double)(0.0F - p_78439_7_), (double)p_78439_3_, (double)f8); - p_78439_0_.addVertexWithUV(0.0D, (double)f9, (double)(0.0F - p_78439_7_), (double)p_78439_1_, (double)f8); - } - - p_78439_0_.draw(); - p_78439_0_.startDrawingQuads(); - p_78439_0_.setNormal(0.0F, -1.0F, 0.0F); - - for (k = 0; k < p_78439_6_; ++k) - { - f7 = (float)k / (float)p_78439_6_; - f8 = p_78439_4_ + (p_78439_2_ - p_78439_4_) * f7 - f6; - p_78439_0_.addVertexWithUV(1.0D, (double)f7, 0.0D, (double)p_78439_3_, (double)f8); - p_78439_0_.addVertexWithUV(0.0D, (double)f7, 0.0D, (double)p_78439_1_, (double)f8); - p_78439_0_.addVertexWithUV(0.0D, (double)f7, (double)(0.0F - p_78439_7_), (double)p_78439_1_, (double)f8); - p_78439_0_.addVertexWithUV(1.0D, (double)f7, (double)(0.0F - p_78439_7_), (double)p_78439_3_, (double)f8); - } - - p_78439_0_.draw(); - if (!enchant) GL11.glPopMatrix(); // Restore the saved OpenGL state - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/client/render/projectile/RenderWarDart.java b/src (1)/main/java/com/zivilon/cinder_loe/client/render/projectile/RenderWarDart.java deleted file mode 100644 index 86bef56..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/client/render/projectile/RenderWarDart.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.zivilon.cinder_loe.client.render.projectile; - -import com.zivilon.cinder_loe.entity.projectile.EntityWarDart; -import net.minecraft.client.renderer.entity.Render; -import net.minecraft.client.renderer.texture.TextureMap; -import net.minecraft.entity.Entity; -import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; -import net.minecraft.util.ResourceLocation;import net.minecraft.util.IIcon; -import net.minecraft.util.MathHelper; -import org.lwjgl.opengl.GL11; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.ItemRenderer; - -public class RenderWarDart extends Render { - - protected ResourceLocation getEntityTexture(Entity entity) { - return TextureMap.locationItemsTexture; - } - - @Override - public void doRender(Entity entity, double d, double d1, double d2, float f, float f1) { - EntityWarDart dart = (EntityWarDart)entity; - GL11.glPushMatrix(); - GL11.glTranslatef((float)d, (float)d1, (float)d2); - GL11.glRotatef(dart.prevRotationYaw + (dart.rotationYaw - dart.prevRotationYaw) * f1 - 90.0F, 0.0F, 1.0F, 0.0F); - GL11.glRotatef(dart.prevRotationPitch + (dart.rotationPitch - dart.prevRotationPitch) * f1, 0.0F, 0.0F, 1.0F); - GL11.glEnable(32826); - GL11.glRotatef(-135.0F, 0.0F, 0.0F, 1.0F); - GL11.glTranslatef(0.0F, -1.0F, 0.0F); - float scale = 0.6F; - GL11.glScalef(scale, scale, scale); - GL11.glTranslatef(0.0F, 0.8F, 0.0F); - - if (dart.item != null) { - IIcon icon = dart.getDartIcon(); - if (icon != null) { - Tessellator tessellator = Tessellator.instance; - float minU = icon.getMinU(); - float maxU = icon.getMaxU(); - float minV = icon.getMinV(); - float maxV = icon.getMaxV(); - int width = icon.getIconWidth(); - int height = icon.getIconHeight(); - bindTexture(getEntityTexture((Entity)dart)); - ItemRenderer.renderItemIn2D(tessellator, maxU, minV, minU, maxV, width, height, 0.0625F); - } - } - - GL11.glDisable(32826); - GL11.glPopMatrix(); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/command/CommandCinderCharacter.java b/src (1)/main/java/com/zivilon/cinder_loe/command/CommandCinderCharacter.java deleted file mode 100644 index 971886e..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/command/CommandCinderCharacter.java +++ /dev/null @@ -1,81 +0,0 @@ -package com.zivilon.cinder_loe.command; - -import net.minecraft.command.CommandBase; -import net.minecraft.command.ICommandSender; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.server.MinecraftServer; -import net.minecraft.util.ChatComponentText; - -import com.zivilon.cinder_loe.character.CharacterRoleAPI; -import com.zivilon.cinder_loe.util.Utilities; - -import java.util.UUID; - -public class CommandCinderCharacter extends CommandBase { - - @Override - public String getCommandName() { - return "cinder_character"; - } - - @Override - public String getCommandUsage(ICommandSender sender) { - return "/cinder_character [player_name]"; - } - - @Override - public int getRequiredPermissionLevel() { - return 4; - } - - @Override - public void processCommand(ICommandSender sender, String[] args) { - if(args.length < 2) { - sender.addChatMessage(new ChatComponentText("Incorrect arguments. Usage: " + getCommandUsage(sender))); - return; - } - - String action = args[0]; - String character = args[1]; - - if (action.equals("set")) { - if(args.length < 3) { - // Set character UUID to player UUID - sender.addChatMessage(new ChatComponentText("Incorrect arguments. Please specify player: " + getCommandUsage(sender))); - } else { - String player = args[2]; - EntityPlayerMP player_entity = MinecraftServer.getServer().getConfigurationManager().func_152612_a(player); - if (player_entity == null) { - sender.addChatMessage(new ChatComponentText("Invalid player name")); - } else { - sender.addChatMessage(new ChatComponentText("Setting player " + player_entity.getCommandSenderName() + " as " + character)); - CharacterRoleAPI.setCharacterRoleUUID(character, player_entity.getUniqueID()); - } - } - } else if (action.equals("remove")) { - UUID uuid = CharacterRoleAPI.getCharacterRoleUUID(character); - if (uuid == null) { - sender.addChatMessage(new ChatComponentText("Invalid character name")); - return; - } - - sender.addChatMessage(new ChatComponentText("Cleared player for character " + character)); - CharacterRoleAPI.removeCharacterRole(character); - } else if (action.equals("get")) { - UUID uuid = CharacterRoleAPI.getCharacterRoleUUID(character); - if (uuid == null) { - sender.addChatMessage(new ChatComponentText("Character " + character + " is unclaimed")); - return; - } - String player_name = Utilities.getPlayerByUUID(uuid).getCommandSenderName(); - if (player_name != null) { - sender.addChatMessage(new ChatComponentText("Character " + character + " is currently set to " + player_name)); - return; - } - sender.addChatMessage(new ChatComponentText("Character " + character + " is currently set to offline player " + uuid.toString())); - } else { - sender.addChatMessage(new ChatComponentText("Incorrect arguments. Usage: " + getCommandUsage(sender))); - return; - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/coremod/CoreMod.java b/src (1)/main/java/com/zivilon/cinder_loe/coremod/CoreMod.java deleted file mode 100644 index 7a0c855..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/coremod/CoreMod.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.zivilon.cinder_loe.coremod; - -import cpw.mods.fml.relauncher.IFMLLoadingPlugin; -import cpw.mods.fml.relauncher.IFMLLoadingPlugin.MCVersion; -import cpw.mods.fml.relauncher.IFMLLoadingPlugin.SortingIndex; -import cpw.mods.fml.relauncher.IFMLLoadingPlugin.TransformerExclusions; -import org.spongepowered.asm.launch.MixinBootstrap; -import org.spongepowered.asm.mixin.Mixins; -import java.util.Map; - -@TransformerExclusions({"com.zivilon.cinder_loe.coremod"}) -@SortingIndex(1001) -@MCVersion("1.7.10") -public class CoreMod implements IFMLLoadingPlugin { - @Override - public String[] getASMTransformerClass() { - return new String[] {"com.zivilon.cinder_loe.coremod.LOTRMaterialTransformer","com.zivilon.cinder_loe.coremod.LOTRWeaponLinker", "com.zivilon.cinder_loe.coremod.LOTRBannerAdder", "com.zivilon.cinder_loe.coremod.LOTRSpawnListLinker", "com.zivilon.cinder_loe.coremod.OptiFinePatcher"}; - } - - @Override - public String getModContainerClass() { - // Return the class name of your @Mod class - return null; - } - - @Override - public String getSetupClass() { - // Return the class name that sets up coremod environment, or null if none - return null; - } - - @Override - public void injectData(Map data) { - MixinBootstrap.init(); - Mixins.addConfiguration("mixins.cinder_loe.json"); - } - - @Override - public String getAccessTransformerClass() { - // Return the class name of your access transformer or null if none - return null; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/coremod/LOTRBannerAdder.java b/src (1)/main/java/com/zivilon/cinder_loe/coremod/LOTRBannerAdder.java deleted file mode 100644 index 55d227f..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/coremod/LOTRBannerAdder.java +++ /dev/null @@ -1,168 +0,0 @@ -package com.zivilon.cinder_loe.coremod; - -import net.minecraft.launchwrapper.IClassTransformer; -import org.objectweb.asm.ClassReader; -import org.objectweb.asm.ClassWriter; -import org.objectweb.asm.Opcodes; -import org.objectweb.asm.tree.ClassNode; -import org.objectweb.asm.tree.FieldNode; -import org.objectweb.asm.tree.InsnList; -import org.objectweb.asm.tree.AbstractInsnNode; -import org.objectweb.asm.tree.IntInsnNode; -import org.objectweb.asm.tree.TypeInsnNode; -import org.objectweb.asm.tree.InsnNode; -import org.objectweb.asm.tree.LdcInsnNode; -import org.objectweb.asm.tree.FieldInsnNode; -import org.objectweb.asm.tree.MethodInsnNode; -import org.objectweb.asm.tree.MethodNode; - -import java.util.List; -import java.util.ArrayList; - -public class LOTRBannerAdder implements IClassTransformer { - public static List custom_banners = new ArrayList<>(); - - public void registerBanners() { - custom_banners = new ArrayList<>(); - // Arguments: enum name, texture name, ID, faction name - register("RED_DWARF", "redDwarf", 42, "DURINS_FOLK"); - register("LIMWAITH", "limwaith", 43, "MORWAITH"); - register("RED", "red", 44, "GONDOR"); - register("BLUE", "blue", 45, "GONDOR"); - register("GREEN", "green", 46, "GONDOR"); -// register("TEST", "test", 43, "GONDOR"); - } - - @Override - public byte[] transform(String name, String transformedName, byte[] basicClass) { - if ("lotr.common.item.LOTRItemBanner$BannerType".equals(transformedName)) { - registerBanners(); - - // Get class - ClassReader classReader = new ClassReader(basicClass); - ClassNode classNode = new ClassNode(); - classReader.accept(classNode, 0); - - - // Add the new enum constant - for (BannerInfo banner : custom_banners) { - FieldNode newEnumConstant = new FieldNode( - Opcodes.ACC_PUBLIC + Opcodes.ACC_STATIC + Opcodes.ACC_FINAL + Opcodes.ACC_ENUM, - banner.enum_name, - "Llotr/common/item/LOTRItemBanner$BannerType;", - null, - null - ); - classNode.fields.add(newEnumConstant); - } - - - // Locate - MethodNode clinit = null; - for (MethodNode method : classNode.methods) { - if ("".equals(method.name)) { - clinit = method; - break; - } - } - - InsnList insns = clinit.instructions; - AbstractInsnNode constructor_injection_point = null; - - for (int i = 0; i < insns.size(); i++) { - AbstractInsnNode insn = insns.get(i); - // Check if the instruction is a BIPUSH - if (insn.getOpcode() == Opcodes.BIPUSH) { - IntInsnNode intInsn = (IntInsnNode) insn; - // Check if the operand is 42, indicating the size of the $VALUES array - if (intInsn.operand == 42) { - // Found the instruction to modify - constructor_injection_point = insn; - // Modify the operand from 42 to 43 to account for the new enum constant - intInsn.operand = 42 + custom_banners.size(); - System.out.println("Enum array length set to " + intInsn.operand); - System.out.println("Banner list size: " + custom_banners.size()); - break; - } - } - } - - // Create the constructor instructions to add new banner - InsnList constructor_injection = new InsnList(); - for (BannerInfo banner : custom_banners) { - constructor_injection.add(new TypeInsnNode(Opcodes.NEW, "lotr/common/item/LOTRItemBanner$BannerType")); - constructor_injection.add(new InsnNode(Opcodes.DUP)); - System.out.println("Registering with enum " + banner.enum_name); - constructor_injection.add(new LdcInsnNode(banner.enum_name)); - System.out.println("Registering with ordinal " + banner.ordinal); - constructor_injection.add(new IntInsnNode(Opcodes.BIPUSH, banner.ordinal)); - constructor_injection.add(new IntInsnNode(Opcodes.BIPUSH, banner.ordinal)); - System.out.println("Registering with identifier " + banner.identifier); - constructor_injection.add(new LdcInsnNode(banner.identifier)); - constructor_injection.add(new FieldInsnNode(Opcodes.GETSTATIC, "lotr/common/fac/LOTRFaction", banner.faction, "Llotr/common/fac/LOTRFaction;")); - constructor_injection.add(new MethodInsnNode(Opcodes.INVOKESPECIAL, "lotr/common/item/LOTRItemBanner$BannerType", "", "(Ljava/lang/String;IILjava/lang/String;Llotr/common/fac/LOTRFaction;)V", false)); - constructor_injection.add(new FieldInsnNode(Opcodes.PUTSTATIC, "lotr/common/item/LOTRItemBanner$BannerType", banner.enum_name, "Llotr/common/item/LOTRItemBanner$BannerType;")); - } - // Insert the new instructions - if (constructor_injection_point != null) { - insns.insertBefore(constructor_injection_point, constructor_injection); - } - - - // Modifying the $VALUES array - // Create new instruction list to be injected later - InsnList values_array_injection = new InsnList(); - - // Add instructions to the instruction list - for (BannerInfo banner : custom_banners) { - values_array_injection.add(new InsnNode(Opcodes.DUP)); - values_array_injection.add(new IntInsnNode(Opcodes.BIPUSH, banner.ordinal)); - values_array_injection.add(new FieldInsnNode(Opcodes.GETSTATIC, "lotr/common/item/LOTRItemBanner$BannerType", banner.enum_name, "Llotr/common/item/LOTRItemBanner$BannerType;")); - values_array_injection.add(new InsnNode(Opcodes.AASTORE)); - } - - // Find the putstatic instruction for $VALUES - // This is where the fields are injected into a list, we want to inject our instructions before this - AbstractInsnNode values_injection_point = null; - - while (constructor_injection_point != null) { - constructor_injection_point = constructor_injection_point.getNext(); - if (constructor_injection_point.getOpcode() == Opcodes.PUTSTATIC) { - values_injection_point = constructor_injection_point; - break; - } - } - - // Insert the new instructions before the putstatic instruction - if (values_injection_point != null) { - insns.insertBefore(values_injection_point, values_array_injection); - } - - // Write the modified class back to a byte array - ClassWriter classWriter = new ClassWriter(ClassWriter.COMPUTE_FRAMES | ClassWriter.COMPUTE_MAXS); - classNode.accept(classWriter); - return classWriter.toByteArray(); // Return the modified class - } - return basicClass; // Return the unmodified class for all other classes - } - - public void register(String enum_name, String identifier, int ordinal, String faction) { - System.out.println("Registering banner " + enum_name + " " + identifier); - custom_banners.add(new BannerInfo(enum_name, identifier, ordinal, faction)); - } - - public class BannerInfo { - String enum_name; - String identifier; - int ordinal; - String faction; - - public BannerInfo(String enum_name, String identifier, int ordinal, String faction) { - this.enum_name = enum_name; - this.identifier = identifier; - this.ordinal = ordinal; - this.faction = faction; - } - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/coremod/LOTRMaterialTransformer.java b/src (1)/main/java/com/zivilon/cinder_loe/coremod/LOTRMaterialTransformer.java deleted file mode 100644 index 12f87c3..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/coremod/LOTRMaterialTransformer.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.zivilon.cinder_loe.coremod; - -import net.minecraft.launchwrapper.IClassTransformer; - -import org.objectweb.asm.ClassReader; -import org.objectweb.asm.ClassWriter; -import org.objectweb.asm.Opcodes; -import org.objectweb.asm.tree.*; - -import java.util.Iterator; - -public class LOTRMaterialTransformer implements IClassTransformer { - @Override - public byte[] transform(String name, String transformedName, byte[] classBytes) { - if (transformedName.equals("lotr.common.item.LOTRMaterial")) { - System.out.println("[CinderLoE] Transforming LOTRMaterial..."); - - ClassReader reader = new ClassReader(classBytes); - ClassNode classNode = new ClassNode(); - reader.accept(classNode, 0); - - - modifyMaterial("ANGMAR", 431, 0.6F, classNode); //Original Durability = 350 | Add 81 | 162 if Upgraded Armory | 1/4 (Unupgraded) - modifyMaterial("URUK", 606, 0.7F, classNode); //Original Durability = 550 | Add 56 | 112 if Upgraded Armory | 1/4 (Unupgraded) - modifyMaterial("BLACK_URUK", 662, 0.7F, classNode); //Original Durability = 550 | Add 56 | 112 if Upgraded Armory | 2/4 (Unupgraded) - modifyMaterial("HALF_TROLL", 387, 0.6F, classNode); //Original Durability = 300 | Add 87 | 175 if Upgraded Armory | 1/4 (Unupgraded) - - // Good Humans - modifyMaterial("DALE", 387, 0.6F, classNode); //Original Durability = 300 | Add 87 | 175 if Upgraded Armory | 1/4 (Unupgraded) - modifyMaterial("GONDOR", 654, 0.6F, classNode); //Original Durability = 450 | Add 68 | 137 if Upgraded Armory | 3/4 (Unupgraded) - modifyMaterial("DORWINION_ELF", 692, 0.6F, classNode); //Original Durability = 500 | Add 62 | 125 if Upgraded Armory | 3/4 (Unupgraded) - modifyMaterial("ROHAN", 300, 0.6F, classNode); //Original Durability = 300 | Add 87 | 175 if Upgraded Armory | 0/4 - modifyMaterial("TAUREDAIN", 300, 0.6F, classNode); //Original Durability = 300 | Add 87 | 175 if Upgraded Armory | 0/4 - modifyMaterial("DORWINION", 400, 0.6F, classNode); //Original Durability = 400 | Add 75 | 150 if Upgraded Armory | 0/4 - modifyMaterial("LOSSARNACH", 300, 0.6F, classNode); //Original Durability = 300 | Add 87 | 175 if Upgraded Armory 0/4 - modifyMaterial("LAMEDON", 300, 0.6F, classNode); //Original Durability = 300 | Add 87 | 175 if Upgraded Armory | 0/4 - - - // Evil Humans - modifyMaterial("RHUN_GOLD", 450, 0.6F, classNode); //Original Durability = 450 | Add 68 | 137 if Upgraded Armory | 0/4 - modifyMaterial("RHUN", 400, 0.6F, classNode); //Original Durability = 400 | Add 75 | 150 if Upgraded Armory | 0/4 - modifyMaterial("DUNLENDING", 343, 0.6F, classNode); //Original Durability = 250 | Add 93 | 187 if Upgraded Armory | 1/4 (Unupgraded) - modifyMaterial("NEAR_HARAD", 561, 0.6F, classNode); //Original Durability = 300 | Add 87 | 175 if Upgraded Armory | 3/4 (Unupgraded) - modifyMaterial("HARNEDOR", 250, 0.6F, classNode); //Original Durability = 250 | Add 93 | 187 if Upgraded Armory | 0/4 - modifyMaterial("CORSAIR", 300, 0.6F, classNode); //Original Durability = 300 | Add 87 | 175 if Upgraded Armory | 0/4 - modifyMaterial("GULF_HARAD", 350, 0.6F, classNode); //Original Durability = 350 | Add 81 | 162 if Upgraded Armory | 0/4 - modifyMaterial("UMBAR", 586, 0.6F, classNode); //Original Durability = 450 | Add 68 | 137 if Upgraded Armory | 2/4 (Unupgraded) - modifyMaterial("MOREDAIN", 250, 0.6F, classNode); //Original Durability = 250 | Add 93 | 187 if Upgraded Armory | 0/4 - - //Elves - modifyMaterial("WOOD_ELVEN", 748, 0.6F, classNode); //Original Durability = 500 | Add 62 | 125 if Upgraded Armory | 4/4 (Unupgraded) - - // Custom - modifyMaterial("UTUMNO", 1500, 0.7F, classNode); - - addMaterial("RED_DWARF", classNode); - addMaterial("WIZARD", classNode); - addMaterial("LIMWAITH_BONE", classNode); - addMaterial("BONEMOLD", classNode); - addMaterial("LIMWAITH_WOOD", classNode); - addMaterial("EVENT", classNode); - addMaterial("BREE", classNode); - addMaterial("BATTLENUN", classNode); - addMaterial("ASH", classNode); - addMaterial("RHUDAUR", classNode); - addMaterial("SERPENT", classNode); - addMaterial("USURPER", classNode); - addMaterial("WARLORD",classNode); - addMaterial("JADE",classNode); - - // Protection Conversion - - // Convert your ClassNode back to byte array with ClassWriter - ClassWriter writer = new ClassWriter(ClassWriter.COMPUTE_FRAMES | ClassWriter.COMPUTE_MAXS); - classNode.accept(writer); - - byte[] transformedBytes = writer.toByteArray(); - return transformedBytes; - } - return classBytes; - } - - public void addMaterial(String fieldName, ClassNode classNode) { - FieldNode field = new FieldNode( - Opcodes.ACC_PUBLIC + Opcodes.ACC_STATIC, - fieldName, - "Llotr/common/item/LOTRMaterial;", // Adjust the descriptor based on the actual package name - null, - null - ); - classNode.fields.add(field); - } - - public void modifyMaterial(String fieldName, int durability, float protection, ClassNode classNode) { - MethodNode clinit = null; - boolean foundField = false; - boolean durabilityModified = false; - boolean protectionModified = false; - - // First, find the method - for (MethodNode method : classNode.methods) { - if (method.name.equals("")) { - clinit = method; - break; - } - } - - if (clinit == null) { - return; - } - - - Iterator iter = clinit.instructions.iterator(); - while (iter.hasNext()) { - AbstractInsnNode insn = iter.next(); - - if (insn instanceof LdcInsnNode && ((LdcInsnNode) insn).cst.equals(fieldName)) { - foundField = true; - } - if (foundField && insn instanceof MethodInsnNode && ((MethodInsnNode) insn).name.equals("setProtection")) { - AbstractInsnNode protectionInsn = insn.getPrevious(); - - if (protectionInsn instanceof LdcInsnNode) { - ((LdcInsnNode) protectionInsn).cst = protection; - System.out.println("[CinderLoE] Updated protection for " + fieldName + " to " + protection); - return; - } - } - - if (foundField && !durabilityModified && insn instanceof MethodInsnNode && ((MethodInsnNode) insn).name.equals("setUses")) { - AbstractInsnNode durabilityInsn = insn.getPrevious(); - - if (durabilityInsn instanceof IntInsnNode) { - ((IntInsnNode) durabilityInsn).operand = durability; - System.out.println("[CinderLoE] Updated durability for " + fieldName + " to " + durability); - durabilityModified = true; - } - } - - if (foundField && !protectionModified && insn instanceof MethodInsnNode && ((MethodInsnNode) insn).name.equals("setProtection")) { - AbstractInsnNode protectionInsn = insn.getPrevious(); - - if (protectionInsn instanceof LdcInsnNode) { - ((LdcInsnNode) protectionInsn).cst = protection; - System.out.println("[CinderLoE] Updated protection for " + fieldName + " to " + protection); - protectionModified = true; - } - } - - if (durabilityModified && protectionModified) { - return; - } - } - - if (!foundField) { - System.out.println("[CinderLoE] Field '" + fieldName + "' not found in ."); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/coremod/LOTRShieldAdder.java b/src (1)/main/java/com/zivilon/cinder_loe/coremod/LOTRShieldAdder.java deleted file mode 100644 index 3143f28..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/coremod/LOTRShieldAdder.java +++ /dev/null @@ -1,160 +0,0 @@ -package com.zivilon.cinder_loe.coremod; - -import net.minecraft.launchwrapper.IClassTransformer; -import org.objectweb.asm.ClassReader; -import org.objectweb.asm.ClassWriter; -import org.objectweb.asm.Opcodes; -import org.objectweb.asm.tree.ClassNode; -import org.objectweb.asm.tree.FieldNode; -import org.objectweb.asm.tree.InsnList; -import org.objectweb.asm.tree.AbstractInsnNode; -import org.objectweb.asm.tree.IntInsnNode; -import org.objectweb.asm.tree.TypeInsnNode; -import org.objectweb.asm.tree.InsnNode; -import org.objectweb.asm.tree.LdcInsnNode; -import org.objectweb.asm.tree.FieldInsnNode; -import org.objectweb.asm.tree.MethodInsnNode; -import org.objectweb.asm.tree.MethodNode; - -import java.util.List; -import java.util.ArrayList; - -public class LOTRShieldAdder implements IClassTransformer { - public static List custom_banners = new ArrayList<>(); - - public void registerShields() { - custom_banners = new ArrayList<>(); - // Arguments: enum name, texture name, ID, faction name - register("RED_DWARF", "redDwarf", 42, "DURINS_FOLK"); -// register("TEST", "test", 43, "GONDOR"); - } - - @Override - public byte[] transform(String name, String transformedName, byte[] basicClass) { - if ("lotr.common.LOTRShields".equals(transformedName)) { - registerShields(); - - // Get class - ClassReader classReader = new ClassReader(basicClass); - ClassNode classNode = new ClassNode(); - classReader.accept(classNode, 0); - - - // Add the new enum constant - for (BannerInfo banner : custom_banners) { - FieldNode newEnumConstant = new FieldNode( - Opcodes.ACC_PUBLIC + Opcodes.ACC_STATIC + Opcodes.ACC_FINAL + Opcodes.ACC_ENUM, - banner.enum_name, - "Llotr/common/LOTRShields;", - null, - null - ); - classNode.fields.add(newEnumConstant); - } - - - // Locate - MethodNode clinit = null; - for (MethodNode method : classNode.methods) { - if ("".equals(method.name)) { - clinit = method; - break; - } - } - - InsnList insns = clinit.instructions; - AbstractInsnNode constructor_injection_point = null; - - for (int i = 0; i < insns.size(); i++) { - AbstractInsnNode insn = insns.get(i); - // Check if the instruction is a BIPUSH - if (insn.getOpcode() == Opcodes.BIPUSH) { - IntInsnNode intInsn = (IntInsnNode) insn; - // Check if the operand is 42, indicating the size of the $VALUES array - if (intInsn.operand == 42) { - // Found the instruction to modify - constructor_injection_point = insn; - // Modify the operand from 42 to 43 to account for the new enum constant - intInsn.operand = 42 + custom_banners.size(); - System.out.println("Enum array length set to " + intInsn.operand); - System.out.println("Banner list size: " + custom_banners.size()); - break; - } - } - } - - // Create the constructor instructions to add new banner - InsnList constructor_injection = new InsnList(); - for (BannerInfo banner : custom_banners) { - constructor_injection.add(new TypeInsnNode(Opcodes.NEW, "lotr/common/item/LOTRItemBanner$BannerType")); - constructor_injection.add(new InsnNode(Opcodes.DUP)); - System.out.println("Registering with enum " + banner.enum_name); - constructor_injection.add(new LdcInsnNode(banner.enum_name)); - System.out.println("Registering with identifier " + banner.identifier); - constructor_injection.add(new LdcInsnNode(banner.identifier)); - constructor_injection.add(new FieldInsnNode(Opcodes.GETSTATIC, "lotr/common/fac/LOTRFaction", banner.faction, "Llotr/common/fac/LOTRFaction;")); - constructor_injection.add(new MethodInsnNode(Opcodes.INVOKESPECIAL, "lotr/common/item/LOTRItemBanner$BannerType", "", "(Ljava/lang/String;IILjava/lang/String;Llotr/common/fac/LOTRFaction;)V", false)); - constructor_injection.add(new FieldInsnNode(Opcodes.PUTSTATIC, "lotr/common/item/LOTRItemBanner$BannerType", banner.enum_name, "Llotr/common/item/LOTRItemBanner$BannerType;")); - } - // Insert the new instructions - if (constructor_injection_point != null) { - insns.insertBefore(constructor_injection_point, constructor_injection); - } - - - // Modifying the $VALUES array - // Create new instruction list to be injected later - InsnList values_array_injection = new InsnList(); - - // Add instructions to the instruction list - for (BannerInfo banner : custom_banners) { - values_array_injection.add(new InsnNode(Opcodes.DUP)); - values_array_injection.add(new FieldInsnNode(Opcodes.GETSTATIC, "lotr/common/item/LOTRItemBanner$BannerType", banner.enum_name, "Llotr/common/item/LOTRItemBanner$BannerType;")); - values_array_injection.add(new InsnNode(Opcodes.AASTORE)); - } - - // Find the putstatic instruction for $VALUES - // This is where the fields are injected into a list, we want to inject our instructions before this - AbstractInsnNode values_injection_point = null; - - while (constructor_injection_point != null) { - constructor_injection_point = constructor_injection_point.getNext(); - if (constructor_injection_point.getOpcode() == Opcodes.PUTSTATIC) { - values_injection_point = constructor_injection_point; - break; - } - } - - // Insert the new instructions before the putstatic instruction - if (values_injection_point != null) { - insns.insertBefore(values_injection_point, values_array_injection); - } - - // Write the modified class back to a byte array - ClassWriter classWriter = new ClassWriter(ClassWriter.COMPUTE_FRAMES | ClassWriter.COMPUTE_MAXS); - classNode.accept(classWriter); - return classWriter.toByteArray(); // Return the modified class - } - return basicClass; // Return the unmodified class for all other classes - } - - public void register(String enum_name, String identifier, int ordinal, String faction) { - System.out.println("Registering banner " + enum_name + " " + identifier); - custom_banners.add(new BannerInfo(enum_name, identifier, ordinal, faction)); - } - - public class BannerInfo { - String enum_name; - String identifier; - int ordinal; - String faction; - - public BannerInfo(String enum_name, String identifier, int ordinal, String faction) { - this.enum_name = enum_name; - this.identifier = identifier; - this.ordinal = ordinal; - this.faction = faction; - } - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/coremod/LOTRSpawnListLinker.java b/src (1)/main/java/com/zivilon/cinder_loe/coremod/LOTRSpawnListLinker.java deleted file mode 100644 index 917b82f..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/coremod/LOTRSpawnListLinker.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.zivilon.cinder_loe.coremod; - -import net.minecraft.launchwrapper.IClassTransformer; - -import org.objectweb.asm.ClassReader; -import org.objectweb.asm.ClassVisitor; -import org.objectweb.asm.ClassWriter; -import org.objectweb.asm.FieldVisitor; -import org.objectweb.asm.Opcodes; -import org.objectweb.asm.tree.ClassNode; -import org.objectweb.asm.tree.FieldNode; - -public class LOTRSpawnListLinker implements IClassTransformer { - - @Override - public byte[] transform(String name, String transformedName, byte[] basicClass) { - if ("lotr.common.world.spawning.LOTRSpawnList".equals(transformedName)) { - System.out.println("[CinderLoE] Linking CinderLoE spawn-lists to LOTRMod..."); - return addLinks(basicClass, "RED_DWARF", "LIMWAITH"); // Can add any number of items, append with comma - } - return basicClass; - } - - private byte[] addLinks(byte[] classBytes, String... fieldNames) { - ClassReader reader = new ClassReader(classBytes); - ClassWriter writer = new ClassWriter(ClassWriter.COMPUTE_MAXS); - - reader.accept(new ClassVisitor(Opcodes.ASM5, writer) { - @Override - public void visitEnd() { - // Add each field specified in the fieldNames array - for (String fieldName : fieldNames) { - addSpawnListLink(fieldName, cv); - } - super.visitEnd(); - } - }, 0); - - return writer.toByteArray(); - } - - private void addSpawnListLink(String fieldName, ClassVisitor cv) { - // Define the field with public static access, name from the parameter, and type net.minecraft.item.Item - FieldVisitor fv = cv.visitField(Opcodes.ACC_PUBLIC + Opcodes.ACC_STATIC, fieldName, "Llotr/common/world/spawning/LOTRSpawnList;", null, null); - if (fv != null) { - fv.visitEnd(); - } - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/coremod/LOTRWeaponLinker.java b/src (1)/main/java/com/zivilon/cinder_loe/coremod/LOTRWeaponLinker.java deleted file mode 100644 index 469b3de..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/coremod/LOTRWeaponLinker.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.zivilon.cinder_loe.coremod; - -import net.minecraft.launchwrapper.IClassTransformer; - -import org.objectweb.asm.ClassReader; -import org.objectweb.asm.ClassVisitor; -import org.objectweb.asm.ClassWriter; -import org.objectweb.asm.FieldVisitor; -import org.objectweb.asm.Opcodes; -import org.objectweb.asm.tree.ClassNode; -import org.objectweb.asm.tree.FieldNode; - -public class LOTRWeaponLinker implements IClassTransformer { - - @Override - public byte[] transform(String name, String transformedName, byte[] basicClass) { - if ("lotr.common.LOTRMod".equals(transformedName)) { - System.out.println("[CinderLoE] Linking CinderLoE items to LOTRMod..."); - - // Can add any number of items, append with comma - return addLinks(basicClass, - "spearRedDwarf", "crossbowRedDwarf", "swordRedDwarf", "battleaxeRedDwarf", "pikeRedDwarf", "daggerRedDwarf", "daggerRedDwarfPoisoned", "hammerRedDwarf", - "radagastStaff", "alatarStaff", "pallandoStaff", "sarumanStaff", "maceWarlord", "sarumanWhiteStaff", - "spearLimwaith", "tridentLimwaith", "daggerLimwaith", "daggerLimwaithPoisoned", "truncheonLimwaith", "battleaxeLimwaith", "blowgunLimwaith", - "frostblade", "spearsolidgold", "whip", "spearUnnamed", "welfRelic", "daggerVoid", - "swordBree", - "maceArnor", - "daggerAsh","bowAsh","hammerAsh","pikeAsh","battleaxeAsh","swordAsh","spearAsh", "staffAsh", "cleaver"); - } - return basicClass; - } - - private byte[] addLinks(byte[] classBytes, String... fieldNames) { - ClassReader reader = new ClassReader(classBytes); - ClassWriter writer = new ClassWriter(ClassWriter.COMPUTE_MAXS); - - reader.accept(new ClassVisitor(Opcodes.ASM5, writer) { - @Override - public void visitEnd() { - // Add each field specified in the fieldNames array - for (String fieldName : fieldNames) { - addItemLink(fieldName, cv); - } - super.visitEnd(); - } - }, 0); - - return writer.toByteArray(); - } - - private void addItemLink(String fieldName, ClassVisitor cv) { - // Define the field with public static access, name from the parameter, and type net.minecraft.item.Item - FieldVisitor fv = cv.visitField(Opcodes.ACC_PUBLIC + Opcodes.ACC_STATIC, fieldName, "Lnet/minecraft/item/Item;", null, null); - if (fv != null) { - fv.visitEnd(); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/coremod/OptiFinePatcher.java b/src (1)/main/java/com/zivilon/cinder_loe/coremod/OptiFinePatcher.java deleted file mode 100644 index 46d83c5..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/coremod/OptiFinePatcher.java +++ /dev/null @@ -1,130 +0,0 @@ -package com.zivilon.cinder_loe.coremod; - -import org.objectweb.asm.ClassReader; -import org.objectweb.asm.ClassWriter; -import org.objectweb.asm.Opcodes; -import org.objectweb.asm.tree.AbstractInsnNode; -import org.objectweb.asm.tree.ClassNode; -import org.objectweb.asm.tree.FieldInsnNode; -import org.objectweb.asm.tree.FieldNode; -import org.objectweb.asm.tree.InsnList; -import org.objectweb.asm.tree.InsnNode; -import org.objectweb.asm.tree.LdcInsnNode; -import org.objectweb.asm.tree.MethodInsnNode; -import org.objectweb.asm.tree.MethodNode; -import org.objectweb.asm.util.Printer; -import org.objectweb.asm.util.Textifier; -import org.objectweb.asm.util.TraceMethodVisitor; - -import java.io.PrintWriter; -import java.io.StringWriter; -import java.util.Iterator; - -import net.minecraft.launchwrapper.IClassTransformer; - -public class OptiFinePatcher implements IClassTransformer { - @Override - public byte[] transform(String name, String transformedName, byte[] classBytes) { - if (transformedName.equals("ItemRendererOF")) { - System.out.println("[CinderLoE] Transforming ItemRendererOF..."); - - ClassReader reader = new ClassReader(classBytes); - ClassNode classNode = new ClassNode(); - reader.accept(classNode, 0); - - for (MethodNode method : classNode.methods) { - if (method.name.equals("func_78443_a") && method.desc.equals("(Lnet/minecraft/entity/EntityLivingBase;Lnet/minecraft/item/ItemStack;I)V")) { - InsnList instructions = method.instructions; - AbstractInsnNode currentNode = null; - Iterator nodes = instructions.iterator(); - - int occurrenceCounter = 0; - - while (nodes.hasNext()) { - currentNode = nodes.next(); - - if (currentNode.getOpcode() == Opcodes.INVOKESTATIC) { - MethodInsnNode methodCall = (MethodInsnNode) currentNode; - if (methodCall.owner.equals("ItemRendererOF") && methodCall.name.equals("func_78439_a") && methodCall.desc.equals("(Lnet/minecraft/client/renderer/Tessellator;FFFFIIF)V")) { - occurrenceCounter++; - - InsnNode bool = null; - - if (occurrenceCounter == 1) { - bool = new InsnNode(Opcodes.ICONST_0); - instructions.insertBefore(currentNode, bool); - MethodInsnNode newMethodCall = new MethodInsnNode(Opcodes.INVOKESTATIC, "com/zivilon/cinder_loe/client/render/item/RenderHelper", "customRenderItemIn2D", "(Lnet/minecraft/client/renderer/Tessellator;FFFFIIFZ)V", false); - instructions.set(currentNode, newMethodCall); - } - - if (occurrenceCounter == 2) { - bool = new InsnNode(Opcodes.ICONST_1); - instructions.insertBefore(currentNode, bool); - MethodInsnNode newMethodCall = new MethodInsnNode(Opcodes.INVOKESTATIC, "com/zivilon/cinder_loe/client/render/item/RenderHelper", "customRenderItemIn2D", "(Lnet/minecraft/client/renderer/Tessellator;FFFFIIFZ)V", false); - instructions.set(currentNode, newMethodCall); - } - - // Modify only the second occurrence - if (occurrenceCounter == 3) { - bool = new InsnNode(Opcodes.ICONST_1); - instructions.insertBefore(currentNode, bool); - MethodInsnNode newMethodCall = new MethodInsnNode(Opcodes.INVOKESTATIC, "com/zivilon/cinder_loe/client/render/item/RenderHelper", "customRenderItemIn2D", "(Lnet/minecraft/client/renderer/Tessellator;FFFFIIFZ)V", false); - instructions.set(currentNode, newMethodCall); - break; - } - } - } - } - // Color code here - int index = -1; - - for (int i = 0; i < instructions.size(); i++) { - currentNode = instructions.get(i); - if (currentNode.getOpcode() == Opcodes.LDC && ((LdcInsnNode) currentNode).cst.equals(0.7599999904632568f)) { - System.out.println("[CinderLoE-Coremod] Found Optifine code to remove..."); - index = i; - break; - } - } - - if (index != -1) { - for (int i = 0; i < 15; i++) { - AbstractInsnNode targetNode = instructions.get(index); - System.out.println(insnToString(targetNode)); - instructions.remove(targetNode); - } - - InsnList toInject = new InsnList(); - toInject.add(new FieldInsnNode(Opcodes.GETSTATIC, "com/zivilon/cinder_loe/CinderLoE_Config", "enchantment_color_red", "F")); - toInject.add(new FieldInsnNode(Opcodes.GETSTATIC, "com/zivilon/cinder_loe/CinderLoE_Config", "enchantment_color_green", "F")); - toInject.add(new FieldInsnNode(Opcodes.GETSTATIC, "com/zivilon/cinder_loe/CinderLoE_Config", "enchantment_color_blue", "F")); - toInject.add(new InsnNode(Opcodes.FCONST_1)); - toInject.add(new MethodInsnNode(Opcodes.INVOKESTATIC, "org/lwjgl/opengl/GL11", "glColor4f", "(FFFF)V", false)); - - instructions.insertBefore(instructions.get(index), toInject); - break; - } - } - } - - ClassWriter writer = new ClassWriter(ClassWriter.COMPUTE_MAXS); - classNode.accept(writer); // Liine 104 - - byte[] transformedBytes = writer.toByteArray(); - return transformedBytes; - } - return classBytes; - } - - // Method to convert an instruction node to string - public static String insnToString(AbstractInsnNode insn){ - insn.accept(new TraceMethodVisitor(new Textifier())); - StringWriter sw = new StringWriter(); - PrintWriter pw = new PrintWriter(sw); - Textifier textifier = new Textifier(); - TraceMethodVisitor tmv = new TraceMethodVisitor(textifier); - insn.accept(tmv); - textifier.print(pw); - return sw.toString(); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/enchants/LOTREnchantmentArmorSpecial.java b/src (1)/main/java/com/zivilon/cinder_loe/enchants/LOTREnchantmentArmorSpecial.java deleted file mode 100644 index 5c47a42..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/enchants/LOTREnchantmentArmorSpecial.java +++ /dev/null @@ -1,80 +0,0 @@ -package com.zivilon.cinder_loe.enchants; - -import cpw.mods.fml.common.network.simpleimpl.IMessage; -import lotr.common.LOTRDamage; -import lotr.common.enchant.LOTREnchantment; -import lotr.common.enchant.LOTREnchantmentBane; -import lotr.common.enchant.LOTREnchantmentType; -import lotr.common.item.LOTRWeaponStats; -import lotr.common.network.LOTRPacketHandler; -import lotr.common.network.LOTRPacketWeaponFX; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.item.Item; -import net.minecraft.item.ItemArmor; -import net.minecraft.potion.Potion; -import net.minecraft.potion.PotionEffect; -import net.minecraft.util.StatCollector; -import net.minecraft.item.ItemStack; - -public class LOTREnchantmentArmorSpecial extends LOTREnchantment { - private boolean compatibleBane = true; - - private boolean compatibleOtherSpecial = false; - - public LOTREnchantmentArmorSpecial(String s) { - super(s, new LOTREnchantmentType[] { LOTREnchantmentType.ARMOR, LOTREnchantmentType.ARMOR_FEET, LOTREnchantmentType.ARMOR_LEGS, LOTREnchantmentType.ARMOR_BODY, LOTREnchantmentType.ARMOR_HEAD, }); - setValueModifier(3.0F); - setBypassAnvilLimit(); - } - - public LOTREnchantmentArmorSpecial setIncompatibleBane() { - this.compatibleBane = false; - return this; - } - - public LOTREnchantmentArmorSpecial setCompatibleOtherSpecial() { - this.compatibleOtherSpecial = true; - return this; - } - - public String getDescription(ItemStack itemstack) { - return StatCollector.translateToLocalFormatted("lotr.enchant." + this.enchantName + ".desc", new Object[0]); -} - - public boolean isBeneficial() { - return true; - } - - public boolean canApply(ItemStack itemstack, boolean considering) { - if (super.canApply(itemstack, considering)) { - Item item = itemstack.getItem(); - /*if (item instanceof lotr.common.item.LOTRItemBalrogWhip && (this == LOTREnchantment.fire || this == LOTREnchantment.chill))*/ - return true; - } - return false; - } - - public boolean isCompatibleWith(LOTREnchantment other) { - if (!this.compatibleBane) - if (other instanceof LOTREnchantmentBane) - return false; - if (!this.compatibleOtherSpecial) - if (other instanceof LOTREnchantmentArmorSpecial && !((LOTREnchantmentArmorSpecial)other).compatibleOtherSpecial) - return false; - return true; - } - - public static int getFireAmount() { - return 2; - } - - /*public static void doChillAttack(EntityLivingBase entity) { - if (entity instanceof EntityPlayerMP) - LOTRDamage.doFrostDamage((EntityPlayerMP)entity); - int duration = 5; - entity.addPotionEffect(new PotionEffect(Potion.moveSlowdown.id, duration * 20, 1)); - LOTRPacketWeaponFX packet = new LOTRPacketWeaponFX(LOTRPacketWeaponFX.Type.CHILLING, (Entity)entity); - LOTRPacketHandler.networkWrapper.sendToAllAround((IMessage)packet, LOTRPacketHandler.nearEntity((Entity)entity, 64.0D));*/ - } \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/enchants/LOTREnchantmentWeakProtectionRanged.java b/src (1)/main/java/com/zivilon/cinder_loe/enchants/LOTREnchantmentWeakProtectionRanged.java deleted file mode 100644 index d4fac14..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/enchants/LOTREnchantmentWeakProtectionRanged.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.zivilon.cinder_loe.enchants; - -import lotr.common.enchant.LOTREnchantmentProtectionRanged; -import lotr.common.enchant.LOTREnchantmentProtectionSpecial; -import lotr.common.item.LOTRMaterial; -import net.minecraft.item.Item; -import net.minecraft.item.ItemArmor; -import net.minecraft.item.ItemStack; -import net.minecraft.util.DamageSource; -import net.minecraft.util.StatCollector; - -public class LOTREnchantmentWeakProtectionRanged extends LOTREnchantmentProtectionSpecial { - - public LOTREnchantmentWeakProtectionRanged(String s, int level) { - super(s, level); - } - - @Override - public String getDescription(ItemStack itemstack) { - return StatCollector.translateToLocalFormatted((String)"lotr.enchant.protectRanged.desc", (Object[])new Object[]{this.formatAdditiveInt(this.calcIntProtection())}); - } - - @Override - public boolean canApply(ItemStack itemstack, boolean considering) { - if (super.canApply(itemstack, considering)) { - Item item = itemstack.getItem(); - return !(item instanceof ItemArmor) || ((ItemArmor)item).getArmorMaterial() != LOTRMaterial.GALVORN.toArmorMaterial(); - } - return false; - } - - - @Override - public boolean isBeneficial() { - // This enchantment is detrimental, so return false - return false; - } - - @Override - protected boolean protectsAgainst(DamageSource damageSource) { - return false; - } - - @Override - protected int calcIntProtection() { - return this.protectLevel; - } -} - - diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/DarkSpider.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/DarkSpider.java deleted file mode 100644 index d5c1b68..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/DarkSpider.java +++ /dev/null @@ -1,91 +0,0 @@ -package com.zivilon.cinder_loe.entity; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.LOTRFoods; -import lotr.common.LOTRMod; -import lotr.common.entity.ai.*; -import lotr.common.entity.animal.LOTREntityHorse; -import lotr.common.entity.npc.*; -import lotr.common.fac.LOTRFaction; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.entity.ai.*; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.potion.Potion; -import net.minecraft.potion.PotionEffect; -import net.minecraft.util.DamageSource; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.util.StatCollector; -import net.minecraft.world.World; - -import java.util.Arrays; -import java.util.List; - -public class DarkSpider extends LOTREntitySpiderBase { - public static int VENOM_DARK = 3; - public DarkSpider(World world) { - super(world); - } - @Override - protected int getRandomSpiderScale() { - return this.rand.nextInt(4); - } - @Override - protected int getRandomSpiderType() { - return VENOM_DARK; - } - @Override - public LOTRFaction getFaction() { - return LOTRFaction.UTUMNO; - } - - @Override - public boolean attackEntityAsMob(Entity entity) { - if (super.attackEntityAsMob(entity)) { - if (entity instanceof EntityLivingBase) { - ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.blindness.id, 200, 0)); - } - return true; - } - return false; - } - @Override - protected boolean canRideSpider() { - return false; - } - @Override - public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) { - } - @Override - public boolean attackEntityFrom(DamageSource source, float amount) { - if (source.getEntity() instanceof EntityLivingBase) { - EntityLivingBase attacker = (EntityLivingBase) source.getEntity(); - if (attacker instanceof EntityPlayer) { - EntityPlayer player = (EntityPlayer) attacker; - if (this.getSpiderScale() > 4 && this.rand.nextDouble() < 0.5) { - spawnDarkSpiders(player); - } - } - } - return super.attackEntityFrom(source, amount); - } - private void spawnDarkSpiders(EntityPlayer player) { - World world = player.worldObj; - for (int i = 0; i < 10; i++) { - DarkSpider babySpider = new DarkSpider(world); - babySpider.setLocationAndAngles(player.posX, player.posY, player.posZ, player.rotationYaw, 0.0F); - babySpider.setSpiderScale(0); - babySpider.setHealth(10); - world.spawnEntityInWorld(babySpider); - } - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return null; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/Renegade.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/Renegade.java deleted file mode 100644 index 2f02a1d..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/Renegade.java +++ /dev/null @@ -1,193 +0,0 @@ -package com.zivilon.cinder_loe.entity; - -import com.zivilon.cinder_loe.CinderLoE; - -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IRangedAttackMob; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.entity.ai.EntityAILookIdle; -import net.minecraft.entity.ai.EntityAIOpenDoor; -import net.minecraft.entity.ai.EntityAISwimming; -import net.minecraft.entity.ai.EntityAIWander; -import net.minecraft.entity.ai.EntityAIWatchClosest; -import net.minecraft.entity.ai.EntityAIWatchClosest2; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.util.StatCollector; -import net.minecraft.world.World; - -import lotr.common.LOTRFoods; -import lotr.common.LOTRMod; -import lotr.common.entity.ai.LOTREntityAIAttackOnCollide; -import lotr.common.entity.ai.LOTREntityAIDrink; -import lotr.common.entity.ai.LOTREntityAIEat; -import lotr.common.entity.ai.LOTREntityAIFollowHiringPlayer; -import lotr.common.entity.ai.LOTREntityAIHiredRemainStill; -import lotr.common.entity.animal.LOTREntityHorse; -import lotr.common.entity.npc.LOTREntityMan; -import lotr.common.entity.npc.LOTREntityNPC; -import lotr.common.entity.npc.LOTRNPCMount; -import lotr.common.entity.npc.LOTRNames; -import lotr.common.fac.LOTRFaction; - -import java.lang.reflect.Field; -import java.util.Arrays; -import java.util.List; -import java.util.Map; - -public class Renegade extends LOTREntityMan { - - public Renegade(World world) { - super(world); - setSize(0.6F, 1.8F); - getNavigator().setAvoidsWater(true); - getNavigator().setBreakDoors(true); - ((EntityLiving) this).tasks.addTask(0, (EntityAIBase) new EntityAISwimming((EntityLiving) this)); - ((EntityLiving) this).tasks.addTask(1, (EntityAIBase) new LOTREntityAIHiredRemainStill(this)); - ((EntityLiving) this).tasks.addTask(2, (EntityAIBase) new LOTREntityAIAttackOnCollide(this, 1.3D, false)); - ((EntityLiving) this).tasks.addTask(3, (EntityAIBase) new LOTREntityAIFollowHiringPlayer(this)); - ((EntityLiving) this).tasks.addTask(4, (EntityAIBase) new EntityAIOpenDoor((EntityLiving) this, true)); - ((EntityLiving) this).tasks.addTask(6, (EntityAIBase) new LOTREntityAIEat(this, LOTRFoods.DUNLENDING, 8000)); - ((EntityLiving) this).tasks.addTask(6, (EntityAIBase) new LOTREntityAIDrink(this, LOTRFoods.DUNLENDING_DRINK, 8000)); - ((EntityLiving) this).tasks.addTask(7, (EntityAIBase) new EntityAIWatchClosest2((EntityLiving) this, EntityPlayer.class, 8.0F, 0.02F)); - ((EntityLiving) this).tasks.addTask(7, (EntityAIBase) new EntityAIWatchClosest2((EntityLiving) this, LOTREntityNPC.class, 5.0F, 0.02F)); - ((EntityLiving) this).tasks.addTask(8, (EntityAIBase) new EntityAIWatchClosest((EntityLiving) this, EntityLiving.class, 8.0F, 0.02F)); - ((EntityLiving) this).tasks.addTask(9, (EntityAIBase) new EntityAILookIdle((EntityLiving) this)); - addTargetTasks(true); - } - - public void attackEntityWithRangedAttack(EntityLivingBase target, float distanceFactor) { - // Do nothing - } - - public LOTRNPCMount createMountToRide() { - LOTREntityHorse horse = (LOTREntityHorse) super.createMountToRide(); - horse.setMountArmor(new ItemStack(LOTRMod.horseArmorIron)); - return (LOTRNPCMount) horse; - } - - public void setupNPCGender() { - this.familyInfo.setMale(this.rand.nextBoolean()); - } - - protected void applyEntityAttributes() { - super.applyEntityAttributes(); - getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(20.0D); - getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.2D); - } - - public LOTRFaction getFaction() { - return LOTRFaction.UTUMNO; - } - - public String getNPCName() { - return this.familyInfo.getName(); - } - - public String getNPCFormattedName(String npcName, String entityName) { - if (getClass() == Renegade.class) return StatCollector - .translateToLocalFormatted("entity.cinder_loe.Renegade.entityName", new Object[] { npcName }); - return super.getNPCFormattedName(npcName, entityName); - } - - protected void onAttackModeChange(LOTREntityNPC.AttackMode mode, boolean mounted) { - if (mode == LOTREntityNPC.AttackMode.IDLE) { - setCurrentItemOrArmor(0, this.npcItemsInv.getIdleItem()); - } else { - setCurrentItemOrArmor(0, this.npcItemsInv.getMeleeWeapon()); - ((EntityLiving) this).tasks.addTask(5, (EntityAIBase) new EntityAIWander(this, 1.0D)); - } - } - - protected void dropFewItems(boolean flag, int i) { - super.dropFewItems(flag, i); - int bones = this.rand.nextInt(2) + this.rand.nextInt(i + 1); - for (int l = 0; l < bones; l++) dropItem(Items.bone, 1); - } - - public boolean getCanSpawnHere() { - return false; - } - - public String getSpeechBank(EntityPlayer entityplayer) { - if (isDrunkard()) return "renegade/drunkard/neutral"; - return "renegade/man/hostile"; - } - - List codeOptions = Arrays.asList(() -> { - this.familyInfo.setName(LOTRNames.getGondorName(this.rand, this.familyInfo.isMale())); - }, () -> { - this.familyInfo.setName(LOTRNames.getBreeName(this.rand, this.familyInfo.isMale())); - }, () -> { - this.familyInfo.setName(LOTRNames.getRhudaurName(this.rand, this.familyInfo.isMale())); - }, () -> { - this.familyInfo.setName(LOTRNames.getRohirricName(this.rand, this.familyInfo.isMale())); - }, - /* - * () -> { - * System.out.println("[CinderCore] Executing GondorName"); - * this.familyInfo.setName(LOTRNames.getDunlendingName(this.rand, this.familyInfo.isMale())), - * } - * () -> { - * System.out.println("[CinderCore] Executing GondorName"); - * this.familyInfo.setName(LOTRNames.getDorwinionName(this.rand, this.familyInfo.isMale())), - * } - * () -> { - * System.out.println("[CinderCore] Executing GondorName"); - * this.familyInfo.setName(LOTRNames.getDalishName(this.rand, this.familyInfo.isMale())), - * } - * () -> { - * System.out.println("[CinderCore] Executing GondorName"); - * this.familyInfo.setName(LOTRNames.getRhunicName(this.rand, this.familyInfo.isMale())), - * } - * () -> { - * System.out.println("[CinderCore] Executing GondorName"); - * this.familyInfo.setName(LOTRNames.getUmbarName(this.rand, this.familyInfo.isMale())), - * } - * () -> { - * System.out.println("[CinderCore] Executing GondorName"); - * this.familyInfo.setName(LOTRNames.getHarnennorName(this.rand, this.familyInfo.isMale())), - * } - * () -> { - * System.out.println("[CinderCore] Executing GondorName"); - * this.familyInfo.setName(LOTRNames.getSouthronCoastName(this.rand, this.familyInfo.isMale())), - * } - * () -> { - * System.out.println("[CinderCore] Executing GondorName"); - * this.familyInfo.setName(LOTRNames.getNomadName(this.rand, this.familyInfo.isMale())), - * } - * () -> { - * System.out.println("[CinderCore] Executing GondorName"); - * this.familyInfo.setName(LOTRNames.getGulfHaradName(this.rand, this.familyInfo.isMale())), - * } - * () -> { - * System.out.println("[CinderCore] Executing GondorName"); - * this.familyInfo.setName(LOTRNames.getMoredainName(this.rand, this.familyInfo.isMale())), - * } - */ - () -> { - this.familyInfo.setName(LOTRNames.getTauredainName(this.rand, this.familyInfo.isMale())); - }); - - public void setupNPCName() { - if (this.familyInfo == null) System.out.println("[CinderCore] Family info is null"); - if (this.rand == null) System.out.println("[CinderCore] rand is null"); - Boolean gender = this.familyInfo.isMale(); - if (gender == null) System.out.println("[CinderCore] Gender is null"); - /* - * int randomIndex = this.rand.nextInt(codeOptions.size()); - * codeOptions.get(randomIndex) - * .run();; - */ - this.familyInfo.setName(LOTRNames.getDorwinionName(this.rand, this.familyInfo.isMale())); - } - - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 0); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/RenegadeCaptain.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/RenegadeCaptain.java deleted file mode 100644 index fe397d2..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/RenegadeCaptain.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.zivilon.cinder_loe.entity; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.LOTRFoods; -import lotr.common.LOTRMod; -import lotr.common.entity.ai.*; -import lotr.common.entity.animal.LOTREntityHorse; -import lotr.common.entity.npc.LOTREntityMan; -import lotr.common.entity.npc.LOTREntityNPC; -import lotr.common.entity.npc.LOTRNPCMount; -import lotr.common.entity.npc.LOTRNames; -import lotr.common.fac.LOTRFaction; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.entity.ai.*; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.util.StatCollector; -import net.minecraft.world.World; - -import java.util.Arrays; -import java.util.List; - -public class RenegadeCaptain extends Renegade { - - public RenegadeCaptain(World world) { - super(world); - } - - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 1); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/SarumanFireball.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/SarumanFireball.java deleted file mode 100644 index 7f7fab7..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/SarumanFireball.java +++ /dev/null @@ -1,102 +0,0 @@ -package com.zivilon.cinder_loe.entity; - -import cpw.mods.fml.common.network.simpleimpl.IMessage; - -import lotr.common.LOTRLevelData; -import lotr.common.LOTRMod; -import lotr.common.entity.npc.LOTREntityNPC; -import lotr.common.entity.animal.LOTREntityHorse; -import lotr.common.entity.projectile.LOTREntityGandalfFireball; -import lotr.common.fac.LOTRFaction; -import lotr.common.network.LOTRPacketHandler; -import lotr.common.network.LOTRPacketWeaponFX; - -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.entity.ai.attributes.IAttributeInstance; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.projectile.EntityThrowable; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.AxisAlignedBB; -import net.minecraft.util.DamageSource; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -import java.util.ArrayList; -import java.util.List; - -public class SarumanFireball extends LOTREntityGandalfFireball { - public SarumanFireball(World world) { - super(world); - } - - public SarumanFireball(World world, EntityLivingBase entityliving) { - super(world, entityliving); - } - - public SarumanFireball(World world, double d, double d1, double d2) { - super(world, d, d1, d2); - } - - protected void onImpact(MovingObjectPosition m) { - if (!((Entity)this).worldObj.isRemote) - if (m.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK) { - explode((Entity)null); - } else if (m.typeOfHit == MovingObjectPosition.MovingObjectType.ENTITY) { - explode(m.entityHit); - } - } - - private void explode(Entity target) { - if (((Entity)this).worldObj.isRemote) - return; - ((Entity)this).worldObj.playSoundAtEntity((Entity)this, "lotr:item.gandalfFireball", 4.0F, (rand.nextFloat() - rand.nextFloat()) * 0.2F + 1.0F); - - List entities = ((Entity)this).worldObj.getEntitiesWithinAABB(EntityLiving.class, ((Entity)this).boundingBox.expand(6.0D, 6.0D, 6.0D)); - - if (!entities.isEmpty()) - for (int i = 0; i < entities.size(); i++) { - Entity entity = entities.get(i); - if (entity instanceof EntityLiving && !(entity instanceof EntityPlayer) && !(entity instanceof LOTREntityHorse && ((LOTREntityHorse)entity).getBelongsToNPC() == true)) { - targetRandomEntity((EntityLiving)entity); - } - } - setDead(); - } - - public void targetRandomEntity(EntityLiving npc) { - LOTRFaction faction = null; - if (npc instanceof LOTREntityNPC) { - LOTREntityNPC lotrNpc = (LOTREntityNPC) npc; - faction = lotrNpc.getFaction(); - } - - // Define the search area based on the npc's location - IAttributeInstance followRangeAttribute = npc.getEntityAttribute(SharedMonsterAttributes.followRange); - double range = followRangeAttribute != null ? followRangeAttribute.getAttributeValue() : 12.0D; // Default to 12 if attribute is not found - - AxisAlignedBB searchArea = npc.boundingBox.expand(range, 4.0D, range); - - // Filter potential targets to not include hiring player or NPCs from same faction - List allTargets = npc.worldObj.getEntitiesWithinAABB(EntityLiving.class, searchArea); - List validTargets = new ArrayList<>(); - - for (EntityLiving potentialTarget : allTargets) { - Entity entity = (Entity)potentialTarget; // Because for some reason I can't directly check if EntityLiving is instance of EntityPlayer - if (entity != npc && - !(entity instanceof EntityPlayer) && - !(entity instanceof LOTREntityNPC && faction != null && ((LOTREntityNPC)entity).getFaction() == faction) && - !(entity instanceof LOTREntityHorse && ((LOTREntityHorse)entity).getBelongsToNPC() == true)) { - validTargets.add(potentialTarget); - } - } - - // Randomly select a new target from the filtered list - if (!validTargets.isEmpty()) { - EntityLiving newTarget = validTargets.get(npc.getRNG().nextInt(validTargets.size())); - npc.setAttackTarget(newTarget); // Set the new attack target - } - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/SarumanWhiteFireball.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/SarumanWhiteFireball.java deleted file mode 100644 index f1882f2..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/SarumanWhiteFireball.java +++ /dev/null @@ -1,92 +0,0 @@ -package com.zivilon.cinder_loe.entity; - -import cpw.mods.fml.common.network.simpleimpl.IMessage; - -import lotr.common.LOTRLevelData; -import lotr.common.LOTRMod; -import lotr.common.entity.npc.LOTREntityNPC; -import lotr.common.entity.animal.LOTREntityHorse; -import lotr.common.entity.projectile.LOTREntityGandalfFireball; -import lotr.common.fac.LOTRFaction; -import lotr.common.network.LOTRPacketHandler; -import lotr.common.network.LOTRPacketWeaponFX; - -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.entity.ai.attributes.IAttributeInstance; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.projectile.EntityThrowable; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.AxisAlignedBB; -import net.minecraft.util.DamageSource; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -import java.util.ArrayList; -import java.util.List; - -public class SarumanWhiteFireball extends LOTREntityGandalfFireball { - public SarumanWhiteFireball(World world) { - super(world); - } - - public SarumanWhiteFireball(World world, EntityLivingBase entityliving) { - super(world, entityliving); - } - - public SarumanWhiteFireball(World world, double d, double d1, double d2) { - super(world, d, d1, d2); - } - - protected void onImpact(MovingObjectPosition m) { - if (!this.worldObj.isRemote) - if (m.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK) { - explode((Entity)null); - } else if (m.typeOfHit == MovingObjectPosition.MovingObjectType.ENTITY) { - Entity entity = m.entityHit; - if (isEntityVulnerable(entity)) - explode(entity); - } - } - - private void explode(Entity target) { - if (this.worldObj.isRemote) - return; - this.worldObj.playSoundAtEntity((Entity)this, "lotr:item.gandalfFireball", 4.0F, (this.rand.nextFloat() - this.rand.nextFloat()) * 0.2F + 1.0F); - LOTRPacketWeaponFX packet = new LOTRPacketWeaponFX(LOTRPacketWeaponFX.Type.MACE_SAURON, (Entity)this); - LOTRPacketHandler.networkWrapper.sendToAllAround((IMessage)packet, LOTRPacketHandler.nearEntity((Entity)this, 64.0D)); - if (target != null && isEntityVulnerable(target)) - target.attackEntityFrom(DamageSource.causeMobDamage(getThrower()), 10.0F); - List entities = this.worldObj.getEntitiesWithinAABB(EntityLivingBase.class, this.boundingBox.expand(6.0D, 6.0D, 6.0D)); - if (!entities.isEmpty()) - for (int i = 0; i < entities.size(); i++) { - EntityLivingBase entity = entities.get(i); - if (entity != target && isEntityVulnerable((Entity)entity)) { - float damage = 10.0F - getDistanceToEntity((Entity)entity) * 0.5F; - if (damage > 0.0F) - entity.attackEntityFrom(DamageSource.causeMobDamage(getThrower()), damage); - } - } - setDead(); - } - - private boolean isEntityVulnerable(Entity entity) { - if (entity == getThrower()) - return false; - if (!(entity instanceof EntityLivingBase)) - return false; - if (entity instanceof EntityPlayer) - return (LOTRLevelData.getData((EntityPlayer)entity).getAlignment(LOTRFaction.HIGH_ELF) < 0.0F); - return !LOTRFaction.HIGH_ELF.isGoodRelation(LOTRMod.getNPCFaction(entity)); - } - - protected float func_70182_d() { - return 1.5F; - } - - protected float getGravityVelocity() { - return 0.0F; - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/SpeechBankModifier.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/SpeechBankModifier.java deleted file mode 100644 index 8fc5cc5..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/SpeechBankModifier.java +++ /dev/null @@ -1,111 +0,0 @@ -package com.zivilon.cinder_loe.entity; - -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.lang.reflect.Constructor; -import java.lang.reflect.Field; -import java.nio.charset.StandardCharsets; -import java.util.ArrayList; -import java.util.Enumeration; -import java.util.List; -import java.util.Map; -import java.util.HashMap; -import java.util.zip.ZipEntry; -import java.util.zip.ZipFile; - -import com.zivilon.cinder_loe.CinderLoE; - -import cpw.mods.fml.common.ModContainer; - -public class SpeechBankModifier { - - public static List loadSpeechLines(String speechBankName) { - String speechPath = "assets/cinder_loe/speech/" + speechBankName + ".txt"; - List lines = new ArrayList<>(); - ZipFile zip = null; - - try { - ModContainer modContainer = CinderLoE.getModContainer(); - zip = new ZipFile(modContainer.getSource()); - - Enumeration entries = zip.entries(); - while (entries.hasMoreElements()) { - ZipEntry entry = entries.nextElement(); - if (entry.getName() - .startsWith(speechPath) - && entry.getName() - .endsWith(".txt")) { - InputStream inputStream = zip.getInputStream(entry); - BufferedReader reader = new BufferedReader( - new InputStreamReader(inputStream, StandardCharsets.UTF_8)); - - String line; - while ((line = reader.readLine()) != null) { - lines.add(line); - } - reader.close(); - } - } - } catch (IOException e) { - e.printStackTrace(); - } finally { - if (zip != null) { - try { - zip.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - } - - return lines; - } - - public static Map> loadSpeechBanks() { - Map> speechBanks = new HashMap<>(); - speechBanks.put("renegade/man/hostile", loadSpeechLines("renegade/man/hostile")); - speechBanks.put("renegade/drunkard/neutral", loadSpeechLines("renegade/drunkard/neutral")); - speechBanks.put("limwaith/moredain/friendly", loadSpeechLines("limwaith/moredain/friendly")); - speechBanks.put("limwaith/moredain/hired", loadSpeechLines("limwaith/moredain/hired")); - speechBanks.put("limwaith/moredain/hostile", loadSpeechLines("limwaith/moredain/hostile")); - speechBanks.put("limwaith/chieftain/friendly", loadSpeechLines("limwaith/chieftain/friendly")); - speechBanks.put("limwaith/chieftain/neutral", loadSpeechLines("limwaith/chieftain/neutral")); - speechBanks.put("arnorSoldier/captain/friendly", loadSpeechLines("arnorSoldier/captain/friendly")); - speechBanks.put("arnorSoldier/captain/neutral", loadSpeechLines("arnorSoldier/captain/neutral")); - speechBanks.put("arnorSoldier/soldier/friendly", loadSpeechLines("arnorSoldier/soldier/friendly")); - speechBanks.put("arnorSoldier/soldier/hired", loadSpeechLines("arnorSoldier/soldier/hired")); - speechBanks.put("arnorSoldier/soldier/hostile", loadSpeechLines("arnorSoldier/soldier/hostile")); - speechBanks.put("corruptSpeak/all/neutral", loadSpeechLines("corruptSpeak/all/neutral")); - speechBanks.put("corruptSpeak/all/hostile", loadSpeechLines("corruptSpeak/all/hostile")); - speechBanks.put("corruptSpeak/all/skeleton", loadSpeechLines("corruptSpeak/all/skeleton")); - return speechBanks; - } - - - public static void insertSpeechBanks() { - Map> speechBanks = loadSpeechBanks(); - - try { - Class lotrSpeechClass = Class.forName("lotr.common.entity.npc.LOTRSpeech"); - Class speechBankClass = Class.forName("lotr.common.entity.npc.LOTRSpeech$SpeechBank"); - - Constructor speechBankConstructor = speechBankClass.getDeclaredConstructor(String.class, boolean.class, List.class); - speechBankConstructor.setAccessible(true); - - Field allSpeechBanksField = lotrSpeechClass.getDeclaredField("allSpeechBanks"); - allSpeechBanksField.setAccessible(true); - - Map allSpeechBanks = (Map) allSpeechBanksField.get(null); - - for (Map.Entry> entry : speechBanks.entrySet()) { - Object speechBank = speechBankConstructor.newInstance(entry.getKey(), true, entry.getValue()); - allSpeechBanks.put(entry.getKey(), speechBank); - } - - } catch (Exception e) { - e.printStackTrace(); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/UtumnoSlaveTrader.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/UtumnoSlaveTrader.java deleted file mode 100644 index 0523831..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/UtumnoSlaveTrader.java +++ /dev/null @@ -1,164 +0,0 @@ -package com.zivilon.cinder_loe.entity; - -import com.zivilon.cinder_loe.CinderLoE; -import com.zivilon.cinder_loe.mixins.MixinLOTRTradeEntries; - -import lotr.common.entity.ai.LOTREntityAIEat; -import lotr.common.entity.npc.LOTREntityMan; -import lotr.common.entity.npc.LOTRTradeEntries; -import lotr.common.entity.npc.LOTRTradeEntries.TradeType; -import lotr.common.entity.npc.LOTRTradeable; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.world.World; -import lotr.common.LOTRFoods; -import lotr.common.LOTRMod; -import lotr.common.fac.LOTRFaction; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.item.ItemStack; -import lotr.common.entity.npc.LOTRTradeEntry; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.init.Items; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.entity.ai.EntityAIPanic; -import net.minecraft.entity.ai.EntityAIWander; -import net.minecraft.entity.ai.EntityAIAvoidEntity; -import lotr.common.entity.ai.LOTREntityAIEat; -import lotr.common.entity.ai.LOTREntityAIDrink; -import net.minecraft.entity.ai.EntityAIWatchClosest2; -import net.minecraft.entity.ai.EntityAIWatchClosest; -import net.minecraft.entity.ai.EntityAILookIdle; -import lotr.common.entity.npc.LOTREntityNPC; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.util.StatCollector; -import net.minecraft.nbt.NBTTagCompound; - - -public class UtumnoSlaveTrader extends LOTREntityMan implements LOTRTradeable.Smith { - public static LOTRTradeEntries UTUMNO_SLAVE_BUY; - public static LOTRTradeEntries UTUMNO_SLAVE_SELL; - - public boolean bound = true; - - public UtumnoSlaveTrader(World world) { - super(world); - setSize(0.6F, 1.8F); - ((EntityLiving)this).tasks.addTask(1, (EntityAIBase)new EntityAIPanic(this, 1.6D)); - ((EntityLiving)this).tasks.addTask(2, (EntityAIBase)new EntityAIWander(this, 1.0D)); - ((EntityLiving)this).tasks.addTask(3, (EntityAIBase)new EntityAIAvoidEntity(this, EntityPlayer.class, 12.0F, 1.5D, 1.8D)); - ((EntityLiving)this).tasks.addTask(4, (EntityAIBase)new LOTREntityAIEat(this, LOTRFoods.NURN_SLAVE, 8000)); - ((EntityLiving)this).tasks.addTask(4, (EntityAIBase)new LOTREntityAIDrink(this, LOTRFoods.NURN_SLAVE_DRINK, 8000)); - ((EntityLiving)this).tasks.addTask(5, (EntityAIBase)new EntityAIWatchClosest2((EntityLiving)this, EntityPlayer.class, 10.0F, 0.1F)); - ((EntityLiving)this).tasks.addTask(5, (EntityAIBase)new EntityAIWatchClosest2((EntityLiving)this, LOTREntityNPC.class, 5.0F, 0.05F)); - ((EntityLiving)this).tasks.addTask(6, (EntityAIBase)new EntityAIWatchClosest((EntityLiving)this, EntityLiving.class, 8.0F, 0.02F)); - ((EntityLiving)this).tasks.addTask(7, (EntityAIBase)new EntityAILookIdle((EntityLiving)this)); - addTargetTasks(false); - } - - public LOTRFaction getFaction() { - if (bound) return LOTRFaction.UTUMNO; - return LOTRFaction.UNALIGNED; - } - - @Override - public String getNPCFormattedName(String npcName, String entityName) { - if (bound) entityName = "entity.cinder_loe.UtumnoSlaveTrader.bound.name"; - return StatCollector.translateToLocal(entityName); - } - - public boolean interact(EntityPlayer entityplayer) { - boolean flag = super.interact(entityplayer); - if (bound) { - bound = false; - return false; - } - return flag; - } - - protected void applyEntityAttributes() { - super.applyEntityAttributes(); - getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(20.0D); - getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.2D); - } - - public boolean canTradeWith(EntityPlayer entityplayer) { - return !bound; - } - - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - this.npcItemsInv.setMeleeWeapon(new ItemStack(LOTRMod.pouch)); - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - return data; - } - - public LOTRTradeEntries getBuyPool() { - return UTUMNO_SLAVE_BUY; - } - - public LOTRTradeEntries getSellPool() { - return UTUMNO_SLAVE_SELL; - } - - // Replace with correct speechbanks - public String getSpeechBank(EntityPlayer entityplayer) { - if (isFriendlyAndAligned(entityplayer)) { - if (canTradeWith(entityplayer)) - return "utumno/slaveTrader/friendly"; - return "utumno/slaveTrader/neutral"; - } - return "utumno/slaveTrader/hostile"; - } - - static { - UTUMNO_SLAVE_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry[] { - new LOTRTradeEntry(new ItemStack(Items.arrow), 1), - new LOTRTradeEntry(new ItemStack(Items.iron_ingot), 6), - new LOTRTradeEntry(new ItemStack(LOTRMod.orcSteel), 6), - new LOTRTradeEntry(new ItemStack(LOTRMod.mugOrcDraught, 1, 4), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.modTemplate), 20) - } - ); - ((MixinLOTRTradeEntries)UTUMNO_SLAVE_BUY).vessels(LOTRFoods.NURN_SLAVE_DRINK); - - UTUMNO_SLAVE_SELL = new LOTRTradeEntries(TradeType.SELL, - new LOTRTradeEntry[] { - new LOTRTradeEntry(new ItemStack(Items.bread), 3), - new LOTRTradeEntry(new ItemStack(Items.iron_ingot), 5), - new LOTRTradeEntry(new ItemStack(Items.gold_ingot), 17), - new LOTRTradeEntry(new ItemStack(Items.stick, 4), 1), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronze), 5), - new LOTRTradeEntry(new ItemStack(LOTRMod.orcSteel), 5), - new LOTRTradeEntry(new ItemStack(LOTRMod.amber), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.ruby), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.amethyst), 12), - new LOTRTradeEntry(new ItemStack(LOTRMod.mugWater), 5), - new LOTRTradeEntry(new ItemStack(LOTRMod.wargBone), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.orcBone), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.trollBone), 4) - } - ); - } - - @Override - public void onPlayerTrade(EntityPlayer entityplayer, LOTRTradeEntries.TradeType type, ItemStack itemstack) { - } - - @Override - public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) { - } - - public void writeEntityToNBT(NBTTagCompound nbt) { - super.writeEntityToNBT(nbt); - nbt.setByte("Bound", (byte)(bound ? 1 : 0)); - } - - - public void readEntityFromNBT(NBTTagCompound nbt) { - super.readEntityFromNBT(nbt); - bound = nbt.getByte("Bound") != 0; - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/Wraith.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/Wraith.java deleted file mode 100644 index a391618..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/Wraith.java +++ /dev/null @@ -1,178 +0,0 @@ -package com.zivilon.cinder_loe.entity; - -import java.util.UUID; - -import lotr.common.LOTRAchievement; -import lotr.common.enchant.LOTREnchantment; -import lotr.common.enchant.LOTREnchantmentHelper; -import lotr.common.entity.ai.LOTREntityAIAttackOnCollide; -import lotr.common.entity.ai.LOTREntityAIDrink; -import lotr.common.entity.ai.LOTREntityAIEat; -import lotr.common.entity.ai.LOTREntityAIFollowHiringPlayer; -import lotr.common.entity.ai.LOTREntityAIHiredRemainStill; -import lotr.common.entity.npc.LOTREntityNPC; -import lotr.common.entity.projectile.LOTREntityMarshWraithBall; -import lotr.common.fac.LOTRFaction; -import lotr.common.world.structure.LOTRChestContents; - - - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.EnumCreatureAttribute; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.entity.ai.EntityAILookIdle; -import net.minecraft.entity.ai.EntityAIWander; -import net.minecraft.entity.ai.EntityAIWatchClosest; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.DamageSource; -import net.minecraft.util.MathHelper; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -import com.zivilon.cinder_loe.CinderLoE; - -public class Wraith extends LOTREntityNPC { - - public Wraith(World world) { - super(world); - setSize(0.8F, 2.5F); - ((EntityLiving) this).tasks.addTask(1, (EntityAIBase) new LOTREntityAIHiredRemainStill(this)); - ((EntityLiving) this).tasks.addTask(2, (EntityAIBase) new LOTREntityAIAttackOnCollide(this, 1.3D, false)); - ((EntityLiving) this).tasks.addTask(3, (EntityAIBase) new LOTREntityAIFollowHiringPlayer(this)); - ((EntityLiving) this).tasks.addTask(5, (EntityAIBase) new EntityAIWander(this, 1.0D)); - ((EntityLiving) this).tasks.addTask(9, (EntityAIBase) new EntityAILookIdle((EntityLiving) this)); - addTargetTasks(true); - } - - protected void entityInit() { - super.entityInit(); - this.dataWatcher.addObject(17, Integer.valueOf(0)); - } - - protected void applyEntityAttributes() { - super.applyEntityAttributes(); - getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(50.0D); - getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.2D); - } - - public int getDeathFadeTime() { - return this.dataWatcher.getWatchableObjectInt(17); - } - - public void setDeathFadeTime(int i) { - this.dataWatcher.updateObject(17, Integer.valueOf(i)); - } - - public LOTRFaction getFaction() { - return LOTRFaction.HOSTILE; - } - - public void writeEntityToNBT(NBTTagCompound nbt) { - super.writeEntityToNBT(nbt); - nbt.setInteger("DeathFadeTime", getDeathFadeTime()); - } - - public void readEntityFromNBT(NBTTagCompound nbt) { - super.readEntityFromNBT(nbt); - setDeathFadeTime(nbt.getInteger("DeathFadeTime")); - } - - @Override - public void moveEntityWithHeading(float strafe, float forward) { - // First, call the super method to preserve normal movement behavior - super.moveEntityWithHeading(strafe, forward); - - // Check for water at the entity's feet - int x = MathHelper.floor_double(this.posX); - int y = MathHelper.floor_double(this.posY); - int z = MathHelper.floor_double(this.posZ); - - boolean isWater = this.worldObj.getBlock(x, y, z).getMaterial() == Material.water || - this.worldObj.getBlock(x, y - 1, z).getMaterial() == Material.water; // Check below the entity too - - if (isWater) { - this.onGround = true; // Treat water as solid ground - this.motionY = 0.0; // Stop falling/sinking - this.setPosition(this.posX, y + 1, this.posZ); // Adjust position to stay on top of the water - } - } - - - public void setInWeb() {} - - public void onLivingUpdate() { - super.onLivingUpdate(); - if (rand.nextBoolean()) - ((Entity)this).worldObj.spawnParticle("smoke", ((Entity)this).posX + (rand.nextDouble() - 0.5D) * ((Entity)this).width, ((Entity)this).posY + rand.nextDouble() * ((Entity)this).height, ((Entity)this).posZ + (rand.nextDouble() - 0.5D) * ((Entity)this).width, 0.0D, 0.0D, 0.0D); - if (!((Entity)this).worldObj.isRemote) { - if (getDeathFadeTime() > 0) - setDeathFadeTime(getDeathFadeTime() - 1); - if (getDeathFadeTime() == 1) - setDead(); - } - } - - public boolean attackEntityFrom(DamageSource damagesource, float f) { - boolean vulnerable = false; - Entity entity = damagesource.getEntity(); - if (entity instanceof EntityLivingBase && entity == damagesource.getSourceOfDamage()) { - ItemStack itemstack = ((EntityLivingBase)entity).getHeldItem(); - if (itemstack != null && LOTREnchantmentHelper.hasEnchant(itemstack, LOTREnchantment.baneWraith)) - vulnerable = true; - } - if (vulnerable && getDeathFadeTime() == 0) { - boolean flag = super.attackEntityFrom(damagesource, f); - return flag; - } - return false; - } - - public void onDeath(DamageSource damagesource) { - super.onDeath(damagesource); - if (!((Entity)this).worldObj.isRemote) - setDeathFadeTime(30); - } - - protected void dropFewItems(boolean flag, int i) { - super.dropFewItems(flag, i); - int flesh = 1 + rand.nextInt(3) + rand.nextInt(i + 1); - for (int l = 0; l < flesh; l++) - dropItem(Items.rotten_flesh, 1); - dropChestContents(LOTRChestContents.MARSH_REMAINS, 1, 3 + i); - } - - public EnumCreatureAttribute getCreatureAttribute() { - return EnumCreatureAttribute.UNDEAD; - } - - protected String getHurtSound() { - return "lotr:wight.hurt"; - } - - protected String getDeathSound() { - return "lotr:wight.death"; - } - - public boolean handleWaterMovement() { - return false; - } - - protected void func_145780_a(int i, int j, int k, Block block) {} - - public void attackEntityWithRangedAttack(EntityLivingBase target, float distanceFactor) { - // Do nothing - } - - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 3); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/ai/LoEPreciseAttackOnCollide.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/ai/LoEPreciseAttackOnCollide.java deleted file mode 100644 index aa9265d..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/ai/LoEPreciseAttackOnCollide.java +++ /dev/null @@ -1,98 +0,0 @@ -package com.zivilon.cinder_loe.entity.ai; - -import lotr.common.entity.ai.LOTREntityAIAttackOnCollide; -import lotr.common.entity.npc.LOTREntityNPC; -import lotr.common.entity.projectile.LOTREntitySpear; -import lotr.common.item.LOTRItemSpear; -import lotr.common.item.LOTRWeaponStats; - -import net.minecraft.item.ItemStack; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityCreature; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.EntityLiving; -import net.minecraft.pathfinding.PathEntity; - -import java.util.List; - -public class LoEPreciseAttackOnCollide extends LOTREntityAIAttackOnCollide { - public double attack_range; - public int attack_cooldown; - - public LoEPreciseAttackOnCollide(EntityCreature entity, double speed, double reach, int delay, boolean flag) { - super(entity, speed, flag); - attack_range = reach; - attack_cooldown = delay; - } - - @Override - public void updateTask() { - updateLookAndPathing(); - if (this.attackTick > 0) - this.attackTick--; - ItemStack weapon = this.theOwner.getHeldItem(); - - // Throw a throwing spear if available - if (weapon != null && weapon.getItem() instanceof LOTRItemSpear && this.attackTick <= 0 && this.theOwner instanceof LOTREntityNPC) { - LOTREntityNPC theNPC = (LOTREntityNPC)this.theOwner; - ItemStack spearBackup = theNPC.npcItemsInv.getSpearBackup(); - - if (spearBackup != null) { - LOTRItemSpear spearItem = (LOTRItemSpear)weapon.getItem(); - double d = this.theOwner.getDistanceToEntity((Entity)this.attackTarget); - double range = this.theOwner.getNavigator().getPathSearchRange(); - if (d > 5.0D && d < range * 0.75D) { - LOTREntitySpear spear = new LOTREntitySpear(this.worldObj, (EntityLivingBase)this.theOwner, this.attackTarget, weapon.copy(), 0.75F + (float)d * 0.025F, 0.5F); - this.worldObj.playSoundAtEntity((Entity)this.theOwner, "random.bow", 1.0F, 1.0F / (this.worldObj.rand.nextFloat() * 0.4F + 1.2F) + 0.25F); - this.worldObj.spawnEntityInWorld((Entity)spear); - this.attackTick = 30 + this.theOwner.getRNG().nextInt(20); - if (ItemStack.areItemStacksEqual(theNPC.npcItemsInv.getIdleItem(), theNPC.npcItemsInv.getMeleeWeapon())) - theNPC.npcItemsInv.setIdleItem(spearBackup); - theNPC.npcItemsInv.setMeleeWeapon(spearBackup); - theNPC.npcItemsInv.setSpearBackup(null); - return; - } - } - } - float weaponReach = 1.0F; - if (this.theOwner.ridingEntity != null) - weaponReach = LOTREntityNPC.MOUNT_RANGE_BONUS; - if (weapon == null) { - weaponReach = (float)attack_range; - } else { - weaponReach *= LOTRWeaponStats.getMeleeReachFactor(weapon); - } - - float meleeRange = (float)this.theOwner.boundingBox.getAverageEdgeLength() + weaponReach; - double distanceSq = this.theOwner.getDistanceSqToEntity((Entity)this.attackTarget); - - if (distanceSq <= (meleeRange * meleeRange) || this.theOwner.boundingBox.intersectsWith(this.attackTarget.boundingBox)) { - if (this.attackTick <= 0) { - this.attackTick = (weapon == null) ? attack_cooldown : LOTRWeaponStats.getAttackTimeMob(weapon); // Apply cooldown here - this.theOwner.attackEntityAsMob((Entity)this.attackTarget); - this.theOwner.swingItem(); - } - } - } - - @Override - protected void updateLookAndPathing() { - this.theOwner.getLookHelper().setLookPositionWithEntity((Entity)this.attackTarget, 30.0F, 30.0F); - if (this.theOwner.riddenByEntity != null && this.theOwner.riddenByEntity instanceof EntityLiving) { - ((EntityLiving)this.theOwner.riddenByEntity).rotationYaw = this.theOwner.rotationYaw; - ((EntityLiving)this.theOwner.riddenByEntity).rotationYawHead = this.theOwner.rotationYawHead; - } - if ((this.sightNotRequired || this.theOwner.getEntitySenses().canSee((Entity)this.attackTarget)) && --this.pathCheckTimer <= 0) { - this.pathCheckTimer = 2; - PathEntity path = getPathEntity(); - if (path != null) - this.theOwner.getNavigator().setPath(path, this.moveSpeed); - } - } - - public PathEntity getPathEntity() { - if (this.theOwner.ridingEntity != null) - return this.worldObj.getPathEntityToEntity((Entity)this.theOwner, (Entity)this.attackTarget, this.theOwner.getNavigator().getPathSearchRange(), true, this.theOwner.getNavigator().getCanBreakDoors(), this.theOwner.getNavigator().getAvoidsWater(), false); - return this.theOwner.getNavigator().getPathToEntityLiving((Entity)this.attackTarget); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptDwarf.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptDwarf.java deleted file mode 100644 index 23547e9..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptDwarf.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zivilon.cinder_loe.entity.corrupt; - -import com.zivilon.cinder_loe.CinderLoE_Config; -import lotr.common.LOTRFoods; -import lotr.common.LOTRMod; -import lotr.common.entity.ai.LOTREntityAIAttackOnCollide; -import lotr.common.entity.npc.LOTREntityDwarf; -import lotr.common.entity.npc.LOTREntityElf; -import lotr.common.entity.npc.LOTRNames; -import lotr.common.fac.LOTRFaction; -import lotr.common.item.LOTRItemMug; -import lotr.common.world.structure.LOTRChestContents; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; -import net.minecraftforge.common.config.Configuration; - -import static com.zivilon.cinder_loe.CinderLoE_Config.config; - -public class CorruptDwarf extends LOTREntityDwarf { - - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return null; - } - public CorruptDwarf(World world) { - super(world); - } - @Override - public void setupNPCGender() { - this.familyInfo.setMale(true); - } - @Override - public void setupNPCName() { - this.familyInfo.setName(LOTRNames.getDwarfName(this.rand, this.familyInfo.isMale())); - } - @Override - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - return null; - } - @Override - public LOTRFaction getFaction() { - return LOTRFaction.valueOf(CinderLoE_Config.corrupt_faction); - } - - @Override - protected float getSoundPitch() { - return super.getSoundPitch() * 0.65f; - } - @Override - public String getSpeechBank(EntityPlayer entityplayer) { - if (this.isFriendlyAndAligned(entityplayer)) { - return "corruptSpeak/all/neutral"; - } - return "corruptSpeak/all/hostile"; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptElf.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptElf.java deleted file mode 100644 index 765578f..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptElf.java +++ /dev/null @@ -1,119 +0,0 @@ -package com.zivilon.cinder_loe.entity.corrupt; - -import com.zivilon.cinder_loe.CinderLoE_Config; -import lotr.common.LOTRFoods; -import lotr.common.LOTRMod; -import lotr.common.entity.ai.LOTREntityAIAttackOnCollide; -import lotr.common.entity.npc.LOTREntityElf; -import lotr.common.entity.npc.LOTREntityNPC; -import lotr.common.entity.npc.LOTRNames; -import lotr.common.fac.LOTRFaction; -import lotr.common.item.LOTRItemMug; -import lotr.common.world.structure.LOTRChestContents; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -public class CorruptElf extends LOTREntityElf { - private LOTRFaction faction; - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return null; - } - public CorruptElf(World world) { - super(world); - } - @Override - protected LOTRFoods getElfDrinks() { - return LOTRFoods.ORC_DRINK; - } - @Override - protected EntityAIBase createElfMeleeAttackAI() { - return new LOTREntityAIAttackOnCollide(this, 1.5, false); - } - @Override - protected EntityAIBase createElfRangedAttackAI() { - return this.createElfMeleeAttackAI(); - } - - @Override - public void setupNPCName() { - this.familyInfo.setName(LOTRNames.getSindarinName(this.rand, this.familyInfo.isMale())); - } - @Override - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - return data; - } - - @Override - protected void onAttackModeChange(LOTREntityNPC.AttackMode mode, boolean mounted) { - if (mode == LOTREntityNPC.AttackMode.IDLE) { - this.tasks.removeTask(this.meleeAttackAI); - this.tasks.removeTask(this.rangedAttackAI); - this.setCurrentItemOrArmor(0, this.npcItemsInv.getIdleItem()); - } else { - this.tasks.removeTask(this.meleeAttackAI); - this.tasks.removeTask(this.rangedAttackAI); - this.tasks.addTask(2, this.meleeAttackAI); - this.setCurrentItemOrArmor(0, this.npcItemsInv.getMeleeWeapon()); - } - } - @Override - public LOTRFaction getFaction() { - return LOTRFaction.valueOf(CinderLoE_Config.corrupt_faction); - } - @Override - public float getAlignmentBonus() { - return 0.0f; - } - - @Override - protected void dropElfItems(boolean flag, int i) { - } - @Override - protected void dropFewItems(boolean flag, int i) { - } - - @Override - public boolean canElfSpawnHere() { - return false; - } - @Override - public String getSpeechBank(EntityPlayer entityplayer) { - if (this.isFriendlyAndAligned(entityplayer)) { - return "corruptSpeak/all/neutral"; - } - return "corruptSpeak/all/hostile"; - } - - @Override - public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) { - } - @Override - protected float getSoundPitch() { - return super.getSoundPitch() * 0.65f; - } - @Override - public String getHurtSound() { - return "lotr:orc.hurt"; - } - @Override - public String getDeathSound() { - return "lotr:orc.death"; - } - - @Override - public String getAttackSound() { - return "lotr:orc.attack"; - } - @Override - public void onKillEntity(EntityLivingBase entity) { - super.onKillEntity(entity); - this.playSound("lotr:orc.kill", this.getSoundVolume(), this.getSoundPitch()); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptEnt.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptEnt.java deleted file mode 100644 index 3773fbf..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptEnt.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.zivilon.cinder_loe.entity.corrupt; - -import com.zivilon.cinder_loe.CinderLoE_Config; -import lotr.common.LOTRFoods; -import lotr.common.LOTRMod; -import lotr.common.entity.ai.LOTREntityAIAttackOnCollide; -import lotr.common.entity.npc.LOTREntityDwarf; -import lotr.common.entity.npc.LOTREntityEnt; -import lotr.common.entity.npc.LOTREntityTree; -import lotr.common.entity.npc.LOTRNames; -import lotr.common.fac.LOTRFaction; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -import java.util.Random; - -public class CorruptEnt extends LOTREntityEnt { - private LOTRFaction faction; - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return null; - } - - public CorruptEnt(World world) { - super(world); - } - @Override - public LOTRFaction getFaction() { - return LOTRFaction.valueOf(CinderLoE_Config.corrupt_faction); - } - @Override - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - return data; - } - @Override - public float getAlignmentBonus() { - return 0.0f; - } - @Override - protected void dropFewItems(boolean flag, int i) { - super.dropFewItems(flag, i); - } -} - diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptHobbit.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptHobbit.java deleted file mode 100644 index 36021e6..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptHobbit.java +++ /dev/null @@ -1,95 +0,0 @@ -package com.zivilon.cinder_loe.entity.corrupt; - -import lotr.common.LOTRAchievement; -import lotr.common.LOTRFoods; -import lotr.common.LOTRMod; -import lotr.common.entity.ai.LOTREntityAIAttackOnCollide; -import lotr.common.entity.npc.LOTREntityDwarf; -import lotr.common.entity.npc.LOTREntityHobbit; -import lotr.common.entity.npc.LOTREntityHobbitBounder; -import lotr.common.entity.npc.LOTRNames; -import lotr.common.fac.LOTRFaction; -import lotr.common.item.LOTRItemLeatherHat; -import lotr.common.world.structure.LOTRChestContents; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -public class CorruptHobbit extends LOTREntityHobbitBounder { - private LOTRFaction faction; - public CorruptHobbit(World world) { - super(world); - this.spawnRidingHorse = false; - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return null; - } - @Override - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - return null; - } - @Override - protected LOTRFoods getHobbitFoods() { - return LOTRFoods.ORC; - } - @Override - protected LOTRFoods getHobbitDrinks() { - return LOTRFoods.ORC_DRINK; - } - @Override - public float getAlignmentBonus() { - return 0.0f; - } - - @Override - public boolean getCanSpawnHere() { - return false; - } - - @Override - public float getBlockPathWeight(int i, int j, int k) { - float f = 0.0f; - return f; - } - @Override - public LOTRFaction getFaction() { - return this.faction != null ? this.faction : LOTRFaction.UTUMNO; - } - @Override - protected float getSoundPitch() { - return super.getSoundPitch() * 1.5f; - } - @Override - public String getHurtSound() { - return "lotr:orc.hurt"; - } - @Override - public String getDeathSound() { - return "lotr:orc.death"; - } - - @Override - public String getAttackSound() { - return "lotr:orc.attack"; - } - - @Override - public String getSpeechBank(EntityPlayer entityplayer) { - if (this.isFriendlyAndAligned(entityplayer)) { - return "corruptSpeak/all/neutral"; - } - return "corruptSpeak/all/hostile"; - } - @Override - protected void dropFewItems(boolean flag, int i) { - } - - protected void dropHobbitItems(boolean flag, int i) { - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptMan.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptMan.java deleted file mode 100644 index 0a46069..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptMan.java +++ /dev/null @@ -1,106 +0,0 @@ -package com.zivilon.cinder_loe.entity.corrupt; - -import com.zivilon.cinder_loe.CinderLoE; -import com.zivilon.cinder_loe.CinderLoE_Config; -import lotr.common.LOTRFoods; -import lotr.common.LOTRMod; -import lotr.common.entity.ai.*; -import lotr.common.entity.npc.*; -import lotr.common.fac.LOTRFaction; -import lotr.common.quest.LOTRMiniQuest; -import lotr.common.quest.LOTRMiniQuestFactory; -import net.minecraft.entity.*; -import net.minecraft.entity.ai.*; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.util.StatCollector; -import net.minecraft.world.World; - -public class CorruptMan extends LOTREntityGondorMan { - - public CorruptMan(World world) { - super(world); - this.addTargetTasks(true); - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return null; - } - - @Override - public void setupNPCName() { - this.familyInfo.setName(LOTRNames.getGondorName(this.rand, this.familyInfo.isMale())); - } - - @Override - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - return null; - } - - @Override - public LOTRFaction getFaction() { - return LOTRFaction.valueOf(CinderLoE_Config.corrupt_faction); - } - - @Override - public String getNPCName() { - return this.familyInfo.getName(); - } - @Override - public float getAlignmentBonus() { - return 0.0f; - } - - @Override - public boolean getCanSpawnHere() { - return false; - } - - @Override - public float getBlockPathWeight(int i, int j, int k) { - float f = 0.0f; - return f; - } - @Override - protected float getSoundPitch() { - return super.getSoundPitch() * 0.65f; - } - @Override - public String getHurtSound() { - return "lotr:orc.hurt"; - } - @Override - public String getDeathSound() { - return "lotr:orc.death"; - } - - @Override - public String getAttackSound() { - return "lotr:orc.attack"; - } - @Override - public String getSpeechBank(EntityPlayer entityplayer) { - if (this.isFriendlyAndAligned(entityplayer)) { - return "corruptSpeak/all/neutral"; - } - return "corruptSpeak/all/hostile"; - } - @Override - public LOTRMiniQuest createMiniQuest() { - return null; - } - - @Override - public LOTRMiniQuestFactory getBountyHelpSpeechDir() { - return null; - } - - @Override - public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) { - } - @Override - protected void dropFewItems(boolean flag, int i) { - - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptOrc.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptOrc.java deleted file mode 100644 index 6c973fb..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptOrc.java +++ /dev/null @@ -1,85 +0,0 @@ -package com.zivilon.cinder_loe.entity.corrupt; - -import com.zivilon.cinder_loe.CinderLoE; -import com.zivilon.cinder_loe.CinderLoE_Config; -import lotr.common.LOTRFoods; -import lotr.common.LOTRMod; -import lotr.common.entity.ai.LOTREntityAIAttackOnCollide; -import lotr.common.entity.npc.LOTREntityDwarf; -import lotr.common.entity.npc.LOTREntityOrc; -import lotr.common.entity.npc.LOTRNames; -import lotr.common.fac.LOTRFaction; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -public class CorruptOrc extends LOTREntityOrc { - private LOTRFaction faction; - public CorruptOrc(World world) { - super(world); - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return null; - } - @Override - public EntityAIBase createOrcAttackAI() { - return new LOTREntityAIAttackOnCollide(this, 1.4, false); - } - @Override - protected void applyEntityAttributes() { - super.applyEntityAttributes(); - this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(20.0); - } - - @Override - public LOTRFaction getFaction() { - return LOTRFaction.valueOf(CinderLoE_Config.corrupt_faction); - } - - @Override - public String getHurtSound() { - return "lotr:orc.hurt"; - } - @Override - public String getDeathSound() { - return "lotr:orc.death"; - } - - @Override - public String getAttackSound() { - return "lotr:orc.attack"; - } - @Override - public void onKillEntity(EntityLivingBase entity) { - super.onKillEntity(entity); - this.playSound("lotr:orc.kill", this.getSoundVolume(), this.getSoundPitch()); - } - @Override - public String getSpeechBank(EntityPlayer entityplayer) { - if (this.isFriendlyAndAligned(entityplayer)) { - return "corruptSpeak/all/neutral"; - } - return "corruptSpeak/all/hostile"; - } - @Override - public float getAlignmentBonus() { - return 0.0f; - } - - @Override - public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) { - - } - @Override - protected void dropFewItems(boolean flag, int i) { - } - @Override - protected void dropOrcItems(boolean flag, int i) { - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptSkeleton.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptSkeleton.java deleted file mode 100644 index 94777c3..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptSkeleton.java +++ /dev/null @@ -1,87 +0,0 @@ -package com.zivilon.cinder_loe.entity.corrupt; - -import com.zivilon.cinder_loe.CinderLoE_Config; -import lotr.common.entity.ai.LOTREntityAIAttackOnCollide; -import lotr.common.entity.npc.LOTREntityGondorMan; -import lotr.common.entity.npc.LOTRNames; -import lotr.common.fac.LOTRFaction; -import lotr.common.quest.LOTRMiniQuest; -import lotr.common.quest.LOTRMiniQuestFactory; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -public class CorruptSkeleton extends CorruptMan { - - public CorruptSkeleton(World world) { - super(world); - this.addTargetTasks(true); - } - @Override - public void setupNPCName() { - this.familyInfo.setName(LOTRNames.getGondorName(this.rand, this.familyInfo.isMale())); - } - - @Override - protected void applyEntityAttributes() { - super.applyEntityAttributes(); - this.getEntityAttribute(SharedMonsterAttributes.followRange).setBaseValue(70.0); - } - - @Override - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - return null; - } - - @Override - public LOTRFaction getFaction() { - return LOTRFaction.UTUMNO; - } - - @Override - public String getNPCName() { - return this.familyInfo.getName(); - } - @Override - protected float getSoundPitch() { - return super.getSoundPitch() * 0.65f; - } - @Override - public String getHurtSound() { - return "mob.skeleton.hurt"; - } - @Override - public String getDeathSound() { - return "mob.skeleton.death"; - } - - public String getLivingSound() { - return "mob.skeleton.say"; - } - - @Override - public String getAttackSound() { - return "mob.skeleton.say"; - } - @Override - public String getSpeechBank(EntityPlayer entityplayer) { - if (this.isFriendlyAndAligned(entityplayer)) { - return "corruptSpeak/all/skeleton"; - } - return "corruptSpeak/all/skeleton"; - } - @Override - protected void dropFewItems(boolean flag, int i) { - super.dropFewItems(flag, i); - int bones = this.rand.nextInt(3) + this.rand.nextInt(i + 1); - for (int l = 0; l < bones; ++l) { - this.dropItem(Items.bone, 1); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptSkeletonArcher.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptSkeletonArcher.java deleted file mode 100644 index 58ef61e..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/corrupt/CorruptSkeletonArcher.java +++ /dev/null @@ -1,81 +0,0 @@ -package com.zivilon.cinder_loe.entity.corrupt; - -import com.zivilon.cinder_loe.CinderLoE_Config; -import lotr.common.LOTRMod; -import lotr.common.entity.ai.LOTREntityAIAttackOnCollide; -import lotr.common.entity.ai.LOTREntityAIRangedAttack; -import lotr.common.entity.npc.LOTREntityNPC; -import lotr.common.entity.npc.LOTRNames; -import lotr.common.fac.LOTRFaction; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.ai.EntityAIAvoidEntity; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; - -public class CorruptSkeletonArcher extends CorruptSkeleton { - - public CorruptSkeletonArcher(World world) { - super(world); - ((EntityLiving)this).tasks.addTask(0, (EntityAIBase)new LOTREntityAIRangedAttack(this, 1.4, 30, 50, 16.0f)); - } - - - @Override - public void setupNPCName() { - this.familyInfo.setName(LOTRNames.getGondorName(this.rand, this.familyInfo.isMale())); - } - - public void attackEntityWithRangedAttack(EntityLivingBase target, float f) { - npcArrowAttack(target, f); - } - @Override - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - this.npcItemsInv.setRangedWeapon(new ItemStack(Items.bow)); - this.npcItemsInv.setIdleItem(this.npcItemsInv.getRangedWeapon()); - return data; - } - - @Override - protected void dropFewItems(boolean flag, int i) { - super.dropFewItems(flag, i); - this.dropNPCArrows(i); - } - - @Override - protected void onAttackModeChange(LOTREntityNPC.AttackMode mode, boolean mounted) { - if (mode == LOTREntityNPC.AttackMode.IDLE) { - this.setCurrentItemOrArmor(0, this.npcItemsInv.getIdleItem()); - } else { - this.setCurrentItemOrArmor(0, this.npcItemsInv.getRangedWeapon()); - } - } - - - @Override - public LOTRFaction getFaction() { - return LOTRFaction.UTUMNO; - } - - @Override - public String getNPCName() { - return this.familyInfo.getName(); - } - @Override - protected float getSoundPitch() { - return super.getSoundPitch() * 0.65f; - } - @Override - public String getSpeechBank(EntityPlayer entityplayer) { - if (this.isFriendlyAndAligned(entityplayer)) { - return "corruptSpeak/all/skeleton"; - } - return "corruptSpeak/all/skeleton"; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/HobbitBannerBearer.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/HobbitBannerBearer.java deleted file mode 100644 index bfcdd91..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/HobbitBannerBearer.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc; - -import com.zivilon.cinder_loe.CinderLoE; -import lotr.common.entity.npc.LOTRBannerBearer; -import lotr.common.entity.npc.LOTREntityHobbitBounder; -import lotr.common.item.LOTRItemBanner; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -public class HobbitBannerBearer extends LOTREntityHobbitBounder implements LOTRBannerBearer { - public HobbitBannerBearer(World world) { - super(world); - } - @Override - public LOTRItemBanner.BannerType getBannerType() { - return LOTRItemBanner.BannerType.HOBBIT; - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 16); - } - - @Override - public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) { - - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/dwarf/RedDwarfArbalest.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/dwarf/RedDwarfArbalest.java deleted file mode 100644 index 055b0ea..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/dwarf/RedDwarfArbalest.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.dwarf; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.entity.npc.LOTREntityDwarfAxeThrower; -import lotr.common.LOTRMod; -import lotr.common.entity.ai.LOTREntityAIRangedAttack; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import net.minecraft.init.Items; -import net.minecraft.util.MovingObjectPosition; - - -public class RedDwarfArbalest extends LOTREntityDwarfAxeThrower { - public RedDwarfArbalest(World world) { - super(world); - } - - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - int i = rand.nextInt(5); - this.npcItemsInv.setRangedWeapon(new ItemStack(CinderLoE.crossbowRedDwarf)); - this.npcItemsInv.setIdleItem(this.npcItemsInv.getRangedWeapon()); - setCurrentItemOrArmor(1, new ItemStack(CinderLoE.bootsRedDwarf)); - setCurrentItemOrArmor(2, new ItemStack(CinderLoE.legsRedDwarf)); - setCurrentItemOrArmor(3, new ItemStack(CinderLoE.bodyRedDwarf)); - setCurrentItemOrArmor(4, null); - if (rand.nextInt(10) != 0) - setCurrentItemOrArmor(4, new ItemStack(CinderLoE.helmetRedDwarf)); - return data; - } - public void attackEntityWithRangedAttack(EntityLivingBase target, float f) { - npcCrossbowAttack(target, f); - } - protected void dropFewItems(boolean flag, int i) { - super.dropFewItems(flag, i); - dropNPCCrossbowBolts(i); - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 11); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/dwarf/RedDwarfBannerBearer.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/dwarf/RedDwarfBannerBearer.java deleted file mode 100644 index b04e6d1..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/dwarf/RedDwarfBannerBearer.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.dwarf; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.item.LOTRItemBanner; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import lotr.common.entity.npc.LOTRBannerBearer; -import net.minecraft.util.MovingObjectPosition; - - -public class RedDwarfBannerBearer extends RedDwarfWarrior implements LOTRBannerBearer { - public RedDwarfBannerBearer(World world) { - super(world); - } - - public LOTRItemBanner.BannerType getBannerType() { - return LOTRItemBanner.BannerType.forID(42); - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 12); - } - - @Override - public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) { - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/dwarf/RedDwarfCommander.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/dwarf/RedDwarfCommander.java deleted file mode 100644 index 2c7fdb9..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/dwarf/RedDwarfCommander.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.dwarf; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.LOTRMod; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import lotr.common.entity.npc.LOTREntityDwarfCommander; -import lotr.common.entity.npc.LOTRUnitTradeable; -import lotr.common.entity.npc.LOTRUnitTradeEntries; -import net.minecraft.util.MovingObjectPosition; - - -public class RedDwarfCommander extends LOTREntityDwarfCommander implements LOTRUnitTradeable { - public RedDwarfCommander(World world) { - super(world); - addTargetTasks(false); - } - - public LOTRUnitTradeEntries getUnits() { - return CinderLoE.RED_DWARF_COMMANDER; - } - - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - int i = rand.nextInt(5); - if (i == 0) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.swordRedDwarf)); - } else if (i == 1 || i == 2) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.battleaxeRedDwarf)); - } else if (i == 3 || i == 4) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.spearRedDwarf)); - } - if (rand.nextInt(6) == 0) { - this.npcItemsInv.setSpearBackup(this.npcItemsInv.getMeleeWeapon()); - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.spearRedDwarf)); - } - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - setCurrentItemOrArmor(1, new ItemStack(CinderLoE.bootsRedDwarf)); - setCurrentItemOrArmor(2, new ItemStack(CinderLoE.legsRedDwarf)); - setCurrentItemOrArmor(3, new ItemStack(CinderLoE.bodyRedDwarf)); - setCurrentItemOrArmor(4, null); - if (rand.nextInt(10) != 0) - setCurrentItemOrArmor(4, new ItemStack(CinderLoE.helmetRedDwarf)); - return data; - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 13); - } - - @Override - public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) { - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/dwarf/RedDwarfWarrior.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/dwarf/RedDwarfWarrior.java deleted file mode 100644 index 93adfa8..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/dwarf/RedDwarfWarrior.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.dwarf; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.entity.npc.LOTREntityDwarfWarrior; -import lotr.common.LOTRMod; -import lotr.common.LOTRShields; -import net.minecraft.entity.Entity; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; -import net.minecraft.item.Item; - - -public class RedDwarfWarrior extends LOTREntityDwarfWarrior { - public RedDwarfWarrior(World world) { - super(world); - - this.npcShield = LOTRShields.ALIGNMENT_DWARF; - } - - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - int i = rand.nextInt(6); - if (i == 0) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.swordRedDwarf)); - } else if (i == 1 || i == 2) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.battleaxeRedDwarf)); - } else if (i == 3 || i == 4) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.pikeRedDwarf)); - } else if (i == 5) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.hammerRedDwarf)); - } - if (rand.nextInt(6) == 0) { - this.npcItemsInv.setSpearBackup(this.npcItemsInv.getMeleeWeapon()); - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.spearRedDwarf)); - } - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - setCurrentItemOrArmor(1, new ItemStack(CinderLoE.bootsRedDwarf)); - setCurrentItemOrArmor(2, new ItemStack(CinderLoE.legsRedDwarf)); - setCurrentItemOrArmor(3, new ItemStack(CinderLoE.bodyRedDwarf)); - setCurrentItemOrArmor(4, null); - if (rand.nextInt(10) != 0) - setCurrentItemOrArmor(4, new ItemStack(CinderLoE.helmetRedDwarf)); - return data; - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 10); - } - - @Override - protected Item getDwarfSteelDrop() { - return CinderLoE.redDwarfSteel; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/elf/Sirrandrai.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/elf/Sirrandrai.java deleted file mode 100644 index 467a10f..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/elf/Sirrandrai.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.elf; - -import com.zivilon.cinder_loe.CinderLoE; -import lotr.common.LOTRAchievement; -import lotr.common.LOTRMod; -import lotr.common.LOTRShields; -import lotr.common.entity.ai.LOTREntityAIAttackOnCollide; -import lotr.common.entity.npc.LOTREntityHighElf; -import lotr.common.entity.npc.LOTREntityHighElfWarrior; -import lotr.common.entity.npc.LOTREntityMoredain; -import lotr.common.entity.npc.LOTRNPCMount; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - - -public class Sirrandrai extends LOTREntityHighElfWarrior { - public Sirrandrai(World world) { - super(world); - this.tasks.addTask(2, this.meleeAttackAI); - this.spawnRidingHorse = this.rand.nextInt(4) == 0; - this.npcShield = LOTRShields.ALIGNMENT_HIGH_ELF; - } - @Override - protected EntityAIBase createElfMeleeAttackAI() { - return new LOTREntityAIAttackOnCollide(this, 1.5, false); - } - - @Override - protected EntityAIBase createElfRangedAttackAI() { - return this.createElfMeleeAttackAI(); - } - @Override - protected void applyEntityAttributes() { - super.applyEntityAttributes(); - this.getEntityAttribute(SharedMonsterAttributes.followRange).setBaseValue(24.0); - } - - @Override - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - int i = this.rand.nextInt(2); - if (i == 0) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(LOTRMod.polearmHighElven)); - if (this.rand.nextInt(5) == 0) { - this.npcItemsInv.setSpearBackup(this.npcItemsInv.getMeleeWeapon()); - this.npcItemsInv.setMeleeWeapon(new ItemStack(LOTRMod.spearHighElven)); - } - } else if (i == 1) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(LOTRMod.spearHighElven)); - this.npcItemsInv.setSpearBackup(null); - } - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - this.npcItemsInv.setRangedWeapon(this.npcItemsInv.getMeleeWeapon()); - this.setCurrentItemOrArmor(1, new ItemStack(LOTRMod.bootsHighElven)); - this.setCurrentItemOrArmor(2, new ItemStack(LOTRMod.legsHighElven)); - this.setCurrentItemOrArmor(3, new ItemStack(LOTRMod.bodyHighElven)); - this.setCurrentItemOrArmor(4, new ItemStack(LOTRMod.helmetHighElven)); - return data; - } - - @Override - public float getAlignmentBonus() { - return 3.0f; - } - - @Override - public String getSpeechBank(EntityPlayer entityplayer) { - if (this.isFriendlyAndAligned(entityplayer)) { - if (this.hiredNPCInfo.getHiringPlayer() == entityplayer) { - return "highElf/elf/hired"; - } - return "highElf/warrior/friendly"; - } - return "highElf/warrior/hostile"; - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/Limwaith.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/Limwaith.java deleted file mode 100644 index f9a0e1f..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/Limwaith.java +++ /dev/null @@ -1,76 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.evil_human; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.entity.npc.LOTREntityMoredain; -import lotr.common.entity.npc.LOTRNPCMount; -import lotr.common.LOTRAchievement; -import lotr.common.LOTRFoods; -import lotr.common.LOTRMod; -import lotr.common.entity.ai.LOTREntityAIAttackOnCollide; -import lotr.common.entity.ai.LOTREntityAIDrink; -import lotr.common.entity.ai.LOTREntityAIEat; -import lotr.common.entity.ai.LOTREntityAIFollowHiringPlayer; -import lotr.common.entity.ai.LOTREntityAIHiredRemainStill; -import lotr.common.entity.animal.LOTREntityZebra; -import lotr.common.fac.LOTRFaction; -import lotr.common.quest.LOTRMiniQuest; -import lotr.common.quest.LOTRMiniQuestFactory; -import lotr.common.world.structure.LOTRChestContents; -import net.minecraft.block.Block; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.entity.ai.EntityAILookIdle; -import net.minecraft.entity.ai.EntityAIOpenDoor; -import net.minecraft.entity.ai.EntityAISwimming; -import net.minecraft.entity.ai.EntityAIWander; -import net.minecraft.entity.ai.EntityAIWatchClosest; -import net.minecraft.entity.ai.EntityAIWatchClosest2; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Blocks; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MathHelper; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.util.StatCollector; -import net.minecraft.world.World; -import net.minecraft.world.biome.BiomeGenBase; - - -public class Limwaith extends LOTREntityMoredain { - public Limwaith(World world) { - super(world); - } - - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.daggerLimwaith)); - this.npcItemsInv.setIdleItem(null); - return data; - } - - protected LOTRAchievement getKillAchievement() { - return null; - } - - public LOTRNPCMount createMountToRide() { - return null; -// return (LOTRNPCMount)new LimwaithCrocodile(((Entity)this).worldObj); - } - - public String getSpeechBank(EntityPlayer entityplayer) { - if (isFriendlyAndAligned(entityplayer)) { - if (this.hiredNPCInfo.getHiringPlayer() == entityplayer) - return "limwaith/moredain/hired"; - return "limwaith/moredain/friendly"; - } - return "limwaith/moredain/hostile"; - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 4); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/LimwaithBannerBearer.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/LimwaithBannerBearer.java deleted file mode 100644 index 6b3a364..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/LimwaithBannerBearer.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.evil_human; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.entity.npc.LOTRBannerBearer; -import lotr.common.item.LOTRItemBanner; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.world.World; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.item.ItemStack; - - -public class LimwaithBannerBearer extends LimwaithWarrior implements LOTRBannerBearer { - public LimwaithBannerBearer(World world) { - super(world); - } - - public LOTRItemBanner.BannerType getBannerType() { - return LOTRItemBanner.BannerType.forID(43); - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 8); - } - - @Override - public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) { - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/LimwaithBlowgunner.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/LimwaithBlowgunner.java deleted file mode 100644 index aa3f99e..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/LimwaithBlowgunner.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.evil_human; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.LOTRMod; -import lotr.common.entity.ai.LOTREntityAIRangedAttack; -import lotr.common.entity.projectile.LOTREntityDart; -import lotr.common.item.LOTRItemBlowgun; -import lotr.common.item.LOTRItemDart; - -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - - -public class LimwaithBlowgunner extends Limwaith { - public LimwaithBlowgunner(World world) { - super(world); - } - - public EntityAIBase createHaradrimAttackAI() { - return (EntityAIBase)new LOTREntityAIRangedAttack(this, 1.5D, 10, 30, 16.0F); - } - - protected void applyEntityAttributes() { - super.applyEntityAttributes(); - getEntityAttribute(SharedMonsterAttributes.followRange).setBaseValue(24.0D); - } - - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.blowgunLimwaith)); - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - setCurrentItemOrArmor(1, new ItemStack(CinderLoE.bootsLimwaith)); - setCurrentItemOrArmor(2, new ItemStack(CinderLoE.legsLimwaith)); - setCurrentItemOrArmor(3, new ItemStack(CinderLoE.bodyLimwaith)); - return data; - } - - public void attackEntityWithRangedAttack(EntityLivingBase target, float f) { - ItemStack heldItem = getHeldItem(); - float str = 1.0F + getDistanceToEntity((Entity)target) / 16.0F * 0.015F; - str *= LOTRItemBlowgun.getBlowgunLaunchSpeedFactor(heldItem); - LOTREntityDart dart = ((LOTRItemDart)LOTRMod.tauredainDart).createDart(((Entity)this).worldObj, (EntityLivingBase)this, target, new ItemStack(LOTRMod.tauredainDart), str, 1.0F); - if (heldItem != null) - LOTRItemBlowgun.applyBlowgunModifiers(dart, heldItem); - playSound("lotr:item.dart", 1.0F, 1.0F / (rand.nextFloat() * 0.4F + 1.2F) + 0.5F); - ((Entity)this).worldObj.spawnEntityInWorld((Entity)dart); - } - protected void dropFewItems(boolean flag, int i) { - super.dropFewItems(flag, i); - dropNPCAmmo(LOTRMod.tauredainDart, i); - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 7); - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/LimwaithBoneWarrior.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/LimwaithBoneWarrior.java deleted file mode 100644 index 4b83e65..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/LimwaithBoneWarrior.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.evil_human; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.LOTRShields; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -public class LimwaithBoneWarrior extends Limwaith { - public LimwaithBoneWarrior(World world) { - super(world); - this.npcShield = LOTRShields.ALIGNMENT_MOREDAIN; - } - - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - int i = rand.nextInt(6); - if (i == 0) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.truncheonLimwaith)); - } else if (i == 1 || i == 2) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.tridentLimwaith)); - } else if (i == 3 || i == 4) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.spearLimwaith)); - } else { - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.battleaxeLimwaith)); - } - - if (rand.nextInt(6) == 0) { - this.npcItemsInv.setSpearBackup(this.npcItemsInv.getMeleeWeapon()); - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.spearLimwaith)); - } - - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - setCurrentItemOrArmor(1, new ItemStack(CinderLoE.bootsboneLimwaith)); - setCurrentItemOrArmor(2, new ItemStack(CinderLoE.legsboneLimwaith)); - setCurrentItemOrArmor(3, new ItemStack(CinderLoE.bodyboneLimwaith)); - if (rand.nextInt(10) != 0) - setCurrentItemOrArmor(4, new ItemStack(CinderLoE.helmetboneLimwaith)); - return data; - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 5); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/LimwaithChieftain.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/LimwaithChieftain.java deleted file mode 100644 index a09775d..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/LimwaithChieftain.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.evil_human; - -import com.zivilon.cinder_loe.CinderLoE; - -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.world.World; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; - -import lotr.common.LOTRLevelData; -import lotr.common.entity.npc.LOTRUnitTradeable; -import lotr.common.entity.npc.LOTRUnitTradeEntries; -import lotr.common.world.spawning.LOTRInvasions; - - -public class LimwaithChieftain extends LimwaithBoneWarrior implements LOTRUnitTradeable { - public LimwaithChieftain(World world) { - super(world); - addTargetTasks(false); - } - - public float getAlignmentBonus() { - return 5.0F; - } - - public LOTRUnitTradeEntries getUnits() { - return CinderLoE.LIMWAITH_COMMANDER; - } - - public LOTRInvasions getWarhorn() { - return LOTRInvasions.MOREDAIN; - } - - public void onUnitTrade(EntityPlayer entityplayer) { - } - @Override - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.truncheonLimwaith)); - - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - setCurrentItemOrArmor(1, new ItemStack(CinderLoE.bootsboneLimwaith)); - setCurrentItemOrArmor(2, new ItemStack(CinderLoE.legsboneLimwaith)); - setCurrentItemOrArmor(3, new ItemStack(CinderLoE.bodyboneLimwaith)); - setCurrentItemOrArmor(4, null); - return data; - } - public boolean canTradeWith(EntityPlayer entityplayer) { - return (LOTRLevelData.getData(entityplayer).getAlignment(getFaction()) >= 150.0F && isFriendlyAndAligned(entityplayer)); - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 9); - } - - @Override - public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) { - - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/LimwaithWarrior.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/LimwaithWarrior.java deleted file mode 100644 index 9399238..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/LimwaithWarrior.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.evil_human; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.LOTRShields; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - - -public class LimwaithWarrior extends Limwaith { - public LimwaithWarrior(World world) { - super(world); - this.npcShield = LOTRShields.ALIGNMENT_MOREDAIN; - } - - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - int i = rand.nextInt(7); - if (i == 0) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.truncheonLimwaith)); - } else if (i == 1 || i == 2) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.tridentLimwaith)); - } else if (i == 3 || i == 4) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.spearLimwaith)); - } else if (i == 5) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.battleaxeLimwaith)); - } else if (i == 6) { - if (rand.nextInt(2) == 0) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.daggerLimwaith)); - } else { - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.daggerLimwaithPoisoned)); - } - } - - if (rand.nextInt(6) == 0) { - this.npcItemsInv.setSpearBackup(this.npcItemsInv.getMeleeWeapon()); - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.spearLimwaith)); - } - - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - setCurrentItemOrArmor(1, new ItemStack(CinderLoE.bootsLimwaith)); - setCurrentItemOrArmor(2, new ItemStack(CinderLoE.legsLimwaith)); - setCurrentItemOrArmor(3, new ItemStack(CinderLoE.bodyLimwaith)); - if (rand.nextInt(10) != 0) - setCurrentItemOrArmor(4, new ItemStack(CinderLoE.helmetLimwaith)); - return data; - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 6); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/RhudaurSoldier.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/RhudaurSoldier.java deleted file mode 100644 index 0231a7b..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/RhudaurSoldier.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.evil_human; - -import com.zivilon.cinder_loe.CinderLoE; -import lotr.common.LOTRMod; -import lotr.common.LOTRShields; -import lotr.common.entity.npc.LOTREntityAngmarHillmanWarrior; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - - -public class RhudaurSoldier extends LOTREntityAngmarHillmanWarrior { - - private static ItemStack[] weapons = new ItemStack[]{new ItemStack(LOTRMod.swordAngmar), new ItemStack(LOTRMod.battleaxeAngmar), new ItemStack(LOTRMod.hammerAngmar), new ItemStack(LOTRMod.polearmAngmar), new ItemStack(LOTRMod.spearAngmar)}; - private static ItemStack[] helmets = new ItemStack[]{new ItemStack(CinderLoE.helmetRhudaur)}; - private static ItemStack[] bodies = new ItemStack[]{new ItemStack(CinderLoE.bodyRhudaur)}; - private static ItemStack[] legs = new ItemStack[]{new ItemStack(CinderLoE.legsRhudaur)}; - private static ItemStack[] boots = new ItemStack[]{new ItemStack(CinderLoE.bootsRhudaur)}; - - public RhudaurSoldier(World world) { - super(world); - this.npcShield = LOTRShields.ALIGNMENT_MORDOR; - } - - @Override - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - int i = this.rand.nextInt(weapons.length); - this.npcItemsInv.setMeleeWeapon(weapons[i].copy()); - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - i = this.rand.nextInt(boots.length); - this.setCurrentItemOrArmor(1, boots[i].copy()); - i = this.rand.nextInt(legs.length); - this.setCurrentItemOrArmor(2, legs[i].copy()); - i = this.rand.nextInt(bodies.length); - this.setCurrentItemOrArmor(3, bodies[i].copy()); - if (this.rand.nextInt(5) != 0) { - i = this.rand.nextInt(helmets.length); - this.setCurrentItemOrArmor(4, helmets[i].copy()); - } - return data; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/ArnorBannerBearer.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/ArnorBannerBearer.java deleted file mode 100644 index d61a3b0..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/ArnorBannerBearer.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.good_human; - -import com.zivilon.cinder_loe.CinderLoE; -import lotr.common.entity.npc.LOTRBannerBearer; -import lotr.common.item.LOTRItemBanner; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -public class ArnorBannerBearer extends ArnorSoldier implements LOTRBannerBearer { - public ArnorBannerBearer(World world) { - super(world); - } - @Override - public LOTRItemBanner.BannerType getBannerType() { - return LOTRItemBanner.BannerType.RANGER_NORTH; - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 16); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/ArnorCaptain.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/ArnorCaptain.java deleted file mode 100644 index 9900921..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/ArnorCaptain.java +++ /dev/null @@ -1,73 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.good_human; - -import com.zivilon.cinder_loe.CinderLoE; -import lotr.common.LOTRCapes; -import lotr.common.LOTRLevelData; -import lotr.common.LOTRMod; -import lotr.common.entity.npc.LOTRUnitTradeEntries; -import lotr.common.entity.npc.LOTRUnitTradeable; -import lotr.common.world.spawning.LOTRInvasions; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -public class ArnorCaptain extends ArnorSoldier implements LOTRUnitTradeable { - public ArnorCaptain(World world) { - super(world); - addTargetTasks(false); - this.npcCape = LOTRCapes.RANGER; - } - - public float getAlignmentBonus() { - return 5.0F; - } - - public LOTRUnitTradeEntries getUnits() { - return CinderLoE.ARNOR_CAPTAIN; - } - - public LOTRInvasions getWarhorn() { - return LOTRInvasions.RANGER_NORTH; - } - - public void onUnitTrade(EntityPlayer entityplayer) { - } - - public boolean canTradeWith(EntityPlayer entityplayer) { - return (LOTRLevelData.getData(entityplayer).getAlignment(getFaction()) >= 150.0F && isFriendlyAndAligned(entityplayer)); - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 18); - } - - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - int i = rand.nextInt(4); - if (i == 0) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(LOTRMod.swordArnor)); - } else if (i == 1 || i == 2) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(LOTRMod.daggerArnor)); - } else if (i == 3 || i == 4) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(LOTRMod.spearArnor)); - } - if (rand.nextInt(4) == 0) { - this.npcItemsInv.setSpearBackup(this.npcItemsInv.getMeleeWeapon()); - this.npcItemsInv.setMeleeWeapon(new ItemStack(LOTRMod.spearArnor)); - } - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - setCurrentItemOrArmor(1, new ItemStack(LOTRMod.bootsArnor)); - setCurrentItemOrArmor(2, new ItemStack(LOTRMod.legsArnor)); - setCurrentItemOrArmor(3, new ItemStack(LOTRMod.bodyArnor)); - setCurrentItemOrArmor(4, null); - return data; - } - public String getSpeechBank(EntityPlayer entityplayer) { - if (isFriendlyAndAligned(entityplayer)) { - return "arnorSoldier/captain/friendly"; - } - return "arnorSoldier/captain/neutral"; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/ArnorSoldier.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/ArnorSoldier.java deleted file mode 100644 index c2a6459..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/ArnorSoldier.java +++ /dev/null @@ -1,96 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.good_human; - -import lotr.common.entity.ai.LOTREntityAIAttackOnCollide; -import lotr.common.entity.npc.LOTREntityDunedain; -import lotr.common.entity.npc.LOTREntityDwarfWarrior; -import lotr.common.LOTRMod; -import lotr.common.LOTRShields; -import lotr.common.entity.npc.LOTREntityGondorSoldier; -import lotr.common.fac.LOTRFaction; -import lotr.common.quest.LOTRMiniQuest; -import lotr.common.quest.LOTRMiniQuestFactory; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -import com.zivilon.cinder_loe.CinderLoE; - -public class ArnorSoldier extends LOTREntityDunedain { - public ArnorSoldier(World world) { - super(world); - this.npcShield = LOTRShields.ALIGNMENT_RANGER; - } - - @Override - public void setupNPCGender() { - this.familyInfo.setMale(true); - } - - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - int i = rand.nextInt(4); - if (i == 0) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(LOTRMod.swordArnor)); - } else if (i == 1 || i == 2) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(LOTRMod.swordArnor)); - } else if (i == 3 || i == 4) { - this.npcItemsInv.setMeleeWeapon(new ItemStack(LOTRMod.spearArnor)); - } - if (rand.nextInt(4) == 0) { - this.npcItemsInv.setSpearBackup(this.npcItemsInv.getMeleeWeapon()); - this.npcItemsInv.setMeleeWeapon(new ItemStack(LOTRMod.spearArnor)); - } - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - setCurrentItemOrArmor(1, new ItemStack(LOTRMod.bootsArnor)); - setCurrentItemOrArmor(2, new ItemStack(LOTRMod.legsArnor)); - setCurrentItemOrArmor(3, new ItemStack(LOTRMod.bodyArnor)); - setCurrentItemOrArmor(4, new ItemStack(LOTRMod.helmetArnor)); - return data; - } - - @Override - public LOTRFaction getFaction() { - return LOTRFaction.RANGER_NORTH; - } - - @Override - public float getAlignmentBonus() { - return 2.0f; - } - - public String getSpeechBank(EntityPlayer entityplayer) { - if (isFriendlyAndAligned(entityplayer)) { - if (this.hiredNPCInfo.getHiringPlayer() == entityplayer) - return "arnorSoldier/soldier/hired"; - return "arnorSoldier/soldier/friendly"; - } - return "arnorSoldier/soldier/hostile"; - } - - @Override - public LOTRMiniQuest createMiniQuest() { - if (rand.nextInt(8) == 0) { - return LOTRMiniQuestFactory.RANGER_NORTH_ARNOR_RELIC.createQuest(this); - } - return LOTRMiniQuestFactory.RANGER_NORTH.createQuest(this); - } - - @Override - public LOTRMiniQuestFactory getBountyHelpSpeechDir() { - return LOTRMiniQuestFactory.RANGER_NORTH; - } - @Override - public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) { - } - - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 14); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/ArnorSoldierArcher.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/ArnorSoldierArcher.java deleted file mode 100644 index 41d712e..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/ArnorSoldierArcher.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.good_human; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.LOTRMod; -import lotr.common.entity.ai.LOTREntityAIRangedAttack; -import lotr.common.entity.npc.LOTREntityNPC; -import net.minecraft.entity.*; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import net.minecraft.util.MovingObjectPosition; - -public class ArnorSoldierArcher extends ArnorSoldier { - - public ArnorSoldierArcher(World world) { - super(world); - this.spawnRidingHorse = false; - ((EntityLiving)this).tasks.addTask(0, (EntityAIBase)new LOTREntityAIRangedAttack(this, 1.3, 30, 50, 16.0f)); - this.npcShield = null; - } - - @Override - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - this.npcItemsInv.setRangedWeapon(new ItemStack(LOTRMod.rangerBow)); - this.npcItemsInv.setIdleItem(this.npcItemsInv.getRangedWeapon()); - return data; - } - - @Override - protected void onAttackModeChange(LOTREntityNPC.AttackMode mode, boolean mounted) { - if (mode == LOTREntityNPC.AttackMode.IDLE) { - this.setCurrentItemOrArmor(0, this.npcItemsInv.getIdleItem()); - } else { - this.setCurrentItemOrArmor(0, this.npcItemsInv.getRangedWeapon()); - } - } - - @Override - public void attackEntityWithRangedAttack(EntityLivingBase target, float f) { - npcArrowAttack(target, f); - } - @Override - protected void dropFewItems(boolean flag, int i) { - super.dropFewItems(flag, i); - this.dropNPCArrows(i); - } - - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 15); - } -} - diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/BattleNun.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/BattleNun.java deleted file mode 100644 index 129ed38..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/BattleNun.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.good_human; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.quest.LOTRMiniQuest; -import lotr.common.quest.LOTRMiniQuestFactory; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.world.World; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; - -public class BattleNun extends ArnorSoldier { - public BattleNun(World world) { - super(world); - this.spawnRidingHorse = false; - this.questInfo.setOfferChance(4000); - this.questInfo.setMinAlignment(150.0f); - this.npcShield = null; - } - - @Override - public void setupNPCGender() { - this.familyInfo.setMale(false); - } - - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.maceArnor)); - this.npcItemsInv.setIdleItem(new ItemStack(CinderLoE.maceArnor)); - setCurrentItemOrArmor(1, new ItemStack(CinderLoE.bootsArnorBanner)); - setCurrentItemOrArmor(2, new ItemStack(CinderLoE.legsArnorBanner)); - setCurrentItemOrArmor(3, new ItemStack(CinderLoE.bodyArnorBanner)); - if (this.rand.nextBoolean()) { - this.setCurrentItemOrArmor(4, new ItemStack(CinderLoE.helmetArnorBanner)); - } else { - this.setCurrentItemOrArmor(4, null); - } - return data; - } - - @Override - public LOTRMiniQuest createMiniQuest() { - return LOTRMiniQuestFactory.RANGER_NORTH.createQuest(this); - } - - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 17); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/BreeCaptain.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/BreeCaptain.java deleted file mode 100644 index db118f9..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/BreeCaptain.java +++ /dev/null @@ -1,65 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.good_human; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.LOTRAchievement; -import lotr.common.LOTRCapes; -import lotr.common.LOTRLevelData; -import lotr.common.LOTRMod; -import lotr.common.entity.npc.LOTRUnitTradeEntries; -import lotr.common.entity.npc.LOTRUnitTradeable; -import lotr.common.item.LOTRItemLeatherHat; -import lotr.common.world.spawning.LOTRInvasions; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -public class BreeCaptain extends BreeSoldier implements LOTRUnitTradeable { - public BreeCaptain(World world) { - super(world); - addTargetTasks(false); - this.npcCape = LOTRCapes.RANGER; - } - @Override - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - this.npcItemsInv.setIdleItem(new ItemStack(Items.writable_book)); - ItemStack hat = new ItemStack(LOTRMod.leatherHat); - LOTRItemLeatherHat.setHatColor(hat, 6834742); - LOTRItemLeatherHat.setFeatherColor(hat, 40960); - this.setCurrentItemOrArmor(4, hat); - return data; - } - public float getAlignmentBonus() { - return 5.0F; - } - - public LOTRUnitTradeEntries getUnits() { - return CinderLoE.BREE_CAPTAIN; - } - - public LOTRInvasions getWarhorn() { - return LOTRInvasions.BREE; - } - - public void onUnitTrade(EntityPlayer entityplayer) { - LOTRLevelData.getData(entityplayer).addAchievement(LOTRAchievement.tradeBreeCaptain); - } - - public boolean canTradeWith(EntityPlayer entityplayer) { - return (LOTRLevelData.getData(entityplayer).getAlignment(getFaction()) >= 150.0F && isFriendlyAndAligned(entityplayer)); - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 23); - } - - @Override - public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) { - - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/BreeCrossbowman.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/BreeCrossbowman.java deleted file mode 100644 index 3db873b..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/BreeCrossbowman.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.good_human; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.LOTRMod; -import lotr.common.entity.ai.LOTREntityAIRangedAttack; -import lotr.common.entity.npc.LOTREntityNPC; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import net.minecraft.util.MovingObjectPosition; - -public class BreeCrossbowman extends BreeSoldier { - - public BreeCrossbowman(World world) { - super(world); - this.npcShield = null; - } - - protected int addBreeAttackAI(int prio) { - ((EntityLiving)this).tasks.addTask(prio, (EntityAIBase)new LOTREntityAIRangedAttack(this, 1.25, 30, 50, 16.0f)); - return prio; - } - - @Override - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - this.npcItemsInv.setRangedWeapon(new ItemStack(LOTRMod.ironCrossbow)); - this.npcItemsInv.setIdleItem(this.npcItemsInv.getRangedWeapon()); - return data; - } - - @Override - protected void onAttackModeChange(LOTREntityNPC.AttackMode mode, boolean mounted) { - if (mode == LOTREntityNPC.AttackMode.IDLE) { - this.setCurrentItemOrArmor(0, this.npcItemsInv.getIdleItem()); - } else { - this.setCurrentItemOrArmor(0, this.npcItemsInv.getRangedWeapon()); - } - } - - public void attackEntityWithRangedAttack(EntityLivingBase target, float f) { - npcCrossbowAttack(target, f); - } - - protected void dropFewItems(boolean flag, int i) { - super.dropFewItems(flag, i); - dropNPCCrossbowBolts(i); - } - - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 20); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/BreeOutrider.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/BreeOutrider.java deleted file mode 100644 index d9a6922..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/BreeOutrider.java +++ /dev/null @@ -1,184 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.good_human; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.*; -import lotr.common.entity.ai.*; -import lotr.common.entity.animal.LOTREntityHorse; -import lotr.common.entity.npc.*; -import lotr.common.fac.LOTRFaction; -import lotr.common.quest.LOTRMiniQuest; -import lotr.common.quest.LOTRMiniQuestFactory; -import lotr.common.world.structure.LOTRChestContents; -import net.minecraft.entity.*; -import net.minecraft.entity.ai.*; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -public class BreeOutrider extends LOTREntityBreeGuard { - private EntityAIBase rangedAttackAI = this.createBreeRangedAttackAI(); - private EntityAIBase meleeAttackAI = this.addBreeAttackAI(); - private static ItemStack[] guardWeapons = new ItemStack[]{new ItemStack(CinderLoE.swordBree), new ItemStack(CinderLoE.swordBree), new ItemStack(LOTRMod.pikeIron)}; - public BreeOutrider(World world) { - super(world); - this.setSize(0.6f, 1.8f); - this.getNavigator().setAvoidsWater(true); - this.getNavigator().setBreakDoors(true); - ((EntityLiving)this).tasks.addTask(0, new EntityAISwimming((EntityLiving)this)); - ((EntityLiving)this).tasks.addTask(1, new LOTREntityAIHiredRemainStill(this)); - ((EntityLiving)this).tasks.addTask(2, this.addBreeAttackAI()); - ((EntityLiving)this).tasks.addTask(2, this.createBreeRangedAttackAI()); - ((EntityLiving)this).tasks.addTask(3, new LOTREntityAIFollowHiringPlayer(this)); - ((EntityLiving)this).tasks.addTask(4, new EntityAIOpenDoor((EntityLiving)this, true)); - ((EntityLiving)this).tasks.addTask(5, new EntityAIWander((EntityCreature)this, 1.0)); - ((EntityLiving)this).tasks.addTask(6, new LOTREntityAIEat(this, LOTRFoods.BREE, 8000)); - ((EntityLiving)this).tasks.addTask(6, new LOTREntityAIDrink(this, LOTRFoods.BREE_DRINK, 6000)); - ((EntityLiving)this).tasks.addTask(6, new LOTREntityAIHobbitSmoke(this, 12000)); - ((EntityLiving)this).tasks.addTask(7, new EntityAIWatchClosest2((EntityLiving)this, EntityPlayer.class, 10.0f, 0.02f)); - ((EntityLiving)this).tasks.addTask(7, (EntityAIBase)new EntityAIWatchClosest2((EntityLiving)this, LOTREntityNPC.class, 5.0f, 0.02f)); - ((EntityLiving)this).tasks.addTask(8, (EntityAIBase)new EntityAIWatchClosest((EntityLiving)this, EntityLiving.class, 8.0f, 0.02f)); - ((EntityLiving)this).tasks.addTask(9, (EntityAIBase)new EntityAILookIdle((EntityLiving)this)); - this.addTargetTasks(true); - } - protected EntityAIBase createBreeRangedAttackAI() { - return new LOTREntityAIRangedAttack(this, 1.25, 30, 40, 16.0f); - } - protected EntityAIBase addBreeAttackAI() { - return new LOTREntityAIAttackOnCollide(this, 1.5, true); - - } - - @Override - protected void applyEntityAttributes() { - super.applyEntityAttributes(); - this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(20.0); - this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.2); - } - @Override - public LOTRFaction getFaction() { - return LOTRFaction.BREE; - } - - @Override - public void setupNPCGender() { - this.familyInfo.setMale((this).rand.nextBoolean()); - } - - @Override - public void setupNPCName() { - this.familyInfo.setName(LOTRNames.getBreeName((this).rand, this.familyInfo.isMale())); - } - @Override - public String getNPCName() { - return this.familyInfo.getName(); - } - @Override - protected void dropFewItems(boolean flag, int i) { - super.dropFewItems(flag, i); - int bones = (this).rand.nextInt(2) + (this).rand.nextInt(i + 1); - for (int l = 0; l < bones; ++l) { - this.dropItem(Items.bone, 1); - } - this.dropBreeItems(flag, i); - dropNPCCrossbowBolts(i); - } - @Override - protected LOTRAchievement getKillAchievement() { - return LOTRAchievement.killBreelander; - } - - protected void dropBreeItems(boolean flag, int i) { - if ((this).rand.nextInt(6) == 0) { - this.dropChestContents(LOTRChestContents.BREE_HOUSE, 1, 2 + i); - } - } - - - @Override - protected void entityInit() { - super.entityInit(); - ((Entity) this).getDataWatcher().addObject(22, (Object)0); - ((Entity) this).getDataWatcher().addObject(23, (Object)0); - } - - @Override - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - int i = (rand.nextInt(guardWeapons.length)); - this.npcItemsInv.setMeleeWeapon(guardWeapons[i].copy()); - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - setCurrentItemOrArmor(1, new ItemStack(CinderLoE.bootsBree)); - setCurrentItemOrArmor(2, new ItemStack(CinderLoE.legsBree)); - setCurrentItemOrArmor(3, new ItemStack(CinderLoE.bodyBree)); - setCurrentItemOrArmor(4, new ItemStack(CinderLoE.helmetBreeKettle)); - this.npcItemsInv.setRangedWeapon(new ItemStack(LOTRMod.ironCrossbow)); - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - return data; - } - - @Override - public void onAttackModeChange(LOTREntityNPC.AttackMode mode, boolean mounted) { - if (mode == LOTREntityNPC.AttackMode.IDLE) { - ((EntityLiving)this).tasks.removeTask(this.meleeAttackAI); - ((EntityLiving)this).tasks.removeTask(this.rangedAttackAI); - this.setCurrentItemOrArmor(0, this.npcItemsInv.getIdleItem()); - } - if (mode == LOTREntityNPC.AttackMode.MELEE) { - ((EntityLiving)this).tasks.removeTask(this.meleeAttackAI); - ((EntityLiving)this).tasks.removeTask(this.rangedAttackAI); - ((EntityLiving)this).tasks.addTask(2, this.meleeAttackAI); - this.setCurrentItemOrArmor(0, this.npcItemsInv.getMeleeWeapon()); - } - if (mode == LOTREntityNPC.AttackMode.RANGED) { - ((EntityLiving)this).tasks.removeTask(this.meleeAttackAI); - ((EntityLiving)this).tasks.removeTask(this.rangedAttackAI); - ((EntityLiving)this).tasks.addTask(2, this.rangedAttackAI); - this.setCurrentItemOrArmor(0, this.npcItemsInv.getRangedWeapon()); - } - } - - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 21); - } - @Override - public LOTRNPCMount createMountToRide() { - LOTREntityHorse horse = (LOTREntityHorse)super.createMountToRide(); - horse.setMountArmor(new ItemStack(LOTRMod.horseArmorIron)); - return horse; - } - - public void attackEntityWithRangedAttack(EntityLivingBase target, float f) { - npcCrossbowAttack(target, f); - } - @Override - public float getAlignmentBonus() { - return 3.0f; - } - - @Override - public String getSpeechBank(EntityPlayer entityplayer) { - if (this.isFriendlyAndAligned(entityplayer)) { - if (this.hiredNPCInfo.getHiringPlayer() == entityplayer) { - return "bree/guard/hired"; - } - return "bree/guard/friendly"; - } - return "bree/guard/hostile"; - } - - @Override - public LOTRMiniQuest createMiniQuest() { - return LOTRMiniQuestFactory.BREE.createQuest(this); - } - - @Override - public LOTRMiniQuestFactory getBountyHelpSpeechDir() { - return LOTRMiniQuestFactory.BREE; - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/BreeSoldier.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/BreeSoldier.java deleted file mode 100644 index 8fb5ab3..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/BreeSoldier.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.good_human; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.LOTRMod; -import lotr.common.entity.npc.LOTREntityBreeGuard; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import net.minecraft.util.MovingObjectPosition; - -public class BreeSoldier extends LOTREntityBreeGuard { - private static ItemStack[] guardWeapons = new ItemStack[]{new ItemStack(CinderLoE.swordBree), new ItemStack(CinderLoE.swordBree), new ItemStack(LOTRMod.pikeIron)}; - - public BreeSoldier(World world) { - super(world); - this.spawnRidingHorse = false; - } - - @Override - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - int i = (rand.nextInt(guardWeapons.length)); - this.npcItemsInv.setMeleeWeapon(guardWeapons[i].copy()); - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - setCurrentItemOrArmor(1, new ItemStack(CinderLoE.bootsBree)); - setCurrentItemOrArmor(2, new ItemStack(CinderLoE.legsBree)); - setCurrentItemOrArmor(3, new ItemStack(CinderLoE.bodyBree)); - setCurrentItemOrArmor(4, new ItemStack(CinderLoE.helmetBree)); - return data; - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 19); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/BreeSoldierBannerBearer.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/BreeSoldierBannerBearer.java deleted file mode 100644 index 3ec0345..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/BreeSoldierBannerBearer.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.good_human; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.entity.npc.LOTRBannerBearer; -import lotr.common.item.LOTRItemBanner; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.world.World; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.item.ItemStack; - -public class BreeSoldierBannerBearer extends BreeSoldier implements LOTRBannerBearer { - public BreeSoldierBannerBearer(World world) { - super(world); - } - @Override - public LOTRItemBanner.BannerType getBannerType() { - return LOTRItemBanner.BannerType.BREE; - } - - @Override - public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) { - } - - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 22); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/EsgarothSoldier.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/EsgarothSoldier.java deleted file mode 100644 index 7604a04..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/EsgarothSoldier.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.good_human; - -import com.zivilon.cinder_loe.CinderLoE; -import lotr.common.LOTRMod; -import lotr.common.LOTRShields; -import lotr.common.entity.npc.LOTREntityDaleSoldier; -import lotr.common.entity.npc.LOTREntityDunedain; -import lotr.common.fac.LOTRFaction; -import lotr.common.quest.LOTRMiniQuest; -import lotr.common.quest.LOTRMiniQuestFactory; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -public class EsgarothSoldier extends LOTREntityDaleSoldier { - public EsgarothSoldier(World world) { - super(world); - this.npcShield = LOTRShields.ALIGNMENT_ESGAROTH; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/TauredainTrueBlood.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/TauredainTrueBlood.java deleted file mode 100644 index eacff72..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/good_human/TauredainTrueBlood.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.good_human; - -import lotr.common.LOTRMod; -import lotr.common.LOTRShields; -import lotr.common.entity.ai.LOTREntityAIAttackOnCollide; -import lotr.common.entity.npc.LOTREntityDaleSoldier; -import lotr.common.entity.npc.LOTREntityTauredain; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; - -public class TauredainTrueBlood extends LOTREntityTauredain { - public TauredainTrueBlood(World world) { - super(world); - this.npcShield = LOTRShields.ALIGNMENT_TAUREDAIN; - } - @Override - public EntityAIBase createHaradrimAttackAI() { - return new LOTREntityAIAttackOnCollide(this, 1.7, false); - } - @Override - protected void applyEntityAttributes() { - super.applyEntityAttributes(); - this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(26.0); - this.getEntityAttribute(SharedMonsterAttributes.followRange).setBaseValue(24.0); - this.getEntityAttribute(npcAttackDamageExtra).setBaseValue(2.0); - } - - private static ItemStack[] weapons = new ItemStack[]{new ItemStack(LOTRMod.swordTauredain), new ItemStack(LOTRMod.battleaxeTauredain), new ItemStack(LOTRMod.hammerTauredain), new ItemStack(LOTRMod.spearTauredain), new ItemStack(LOTRMod.pikeTauredain)}; - private static ItemStack[] helmets = new ItemStack[]{new ItemStack(LOTRMod.helmetTauredainChieftain), new ItemStack(LOTRMod.helmetTauredainChieftain), new ItemStack(LOTRMod.helmetTauredainGold, 0)}; - private static ItemStack[] bodies = new ItemStack[]{new ItemStack(LOTRMod.bodyTauredain), new ItemStack(LOTRMod.bodyTauredain), new ItemStack(LOTRMod.bodyTauredainGold, 0)}; - private static ItemStack[] legs = new ItemStack[]{new ItemStack(LOTRMod.legsTauredain), new ItemStack(LOTRMod.legsTauredain), new ItemStack(LOTRMod.legsTauredainGold, 0)}; - private static ItemStack[] boots = new ItemStack[]{new ItemStack(LOTRMod.bootsTauredain), new ItemStack(LOTRMod.bootsTauredain), new ItemStack(LOTRMod.bootsTauredainGold, 0)}; - @Override - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - int i = this.rand.nextInt(weapons.length); - this.npcItemsInv.setMeleeWeapon(weapons[i].copy()); - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - i = this.rand.nextInt(boots.length); - this.setCurrentItemOrArmor(1, boots[i].copy()); - i = this.rand.nextInt(legs.length); - this.setCurrentItemOrArmor(2, legs[i].copy()); - i = this.rand.nextInt(bodies.length); - this.setCurrentItemOrArmor(3, bodies[i].copy()); - if (this.rand.nextInt(5) != 0) { - i = this.rand.nextInt(helmets.length); - this.setCurrentItemOrArmor(4, helmets[i].copy()); - } - return data; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/orc/MorgulOrc.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/orc/MorgulOrc.java deleted file mode 100644 index f054cdd..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/orc/MorgulOrc.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.orc; - -import lotr.common.LOTRShields; -import lotr.common.entity.npc.LOTREntityMordorOrc; -import net.minecraft.world.World; - - -public class MorgulOrc extends LOTREntityMordorOrc { - public MorgulOrc(World world) { - super(world); - this.npcShield = LOTRShields.ALIGNMENT_MINAS_MORGUL; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/orc/NorthernOrc.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/orc/NorthernOrc.java deleted file mode 100644 index 04f7608..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/orc/NorthernOrc.java +++ /dev/null @@ -1,74 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.orc; - -import com.zivilon.cinder_loe.CinderLoE; -import lotr.common.LOTRLevelData; -import lotr.common.LOTRMod; -import lotr.common.LOTRShields; -import lotr.common.entity.npc.LOTREntityAngmarHillmanWarrior; -import lotr.common.entity.npc.LOTREntityGundabadUruk; -import lotr.common.fac.LOTRFaction; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; - - -public class NorthernOrc extends LOTREntityGundabadUruk { - - private static ItemStack[] weapons = new ItemStack[]{new ItemStack(LOTRMod.swordAngmar), new ItemStack(LOTRMod.battleaxeAngmar), new ItemStack(LOTRMod.hammerGundabadUruk), new ItemStack(LOTRMod.polearmAngmar), new ItemStack(LOTRMod.spearAngmar), new ItemStack(LOTRMod.swordGundabadUruk)}; - private static ItemStack[] helmets = new ItemStack[]{new ItemStack(LOTRMod.helmetAngmar), new ItemStack(LOTRMod.helmetGundabadUruk), new ItemStack(LOTRMod.helmetBone)}; - private static ItemStack[] bodies = new ItemStack[]{new ItemStack(LOTRMod.bodyAngmar), new ItemStack(LOTRMod.bodyGundabadUruk), new ItemStack(LOTRMod.bodyUruk)}; - private static ItemStack[] legs = new ItemStack[]{new ItemStack(LOTRMod.legsAngmar), new ItemStack(LOTRMod.legsGundabadUruk), new ItemStack(LOTRMod.legsUruk)}; - private static ItemStack[] boots = new ItemStack[]{new ItemStack(LOTRMod.bootsAngmar), new ItemStack(LOTRMod.bootsGundabadUruk), new ItemStack(LOTRMod.bootsUruk)}; - - public NorthernOrc(World world) { - super(world); - this.setSize(0.6f, 1.8f); - this.isWeakOrc = false; - this.npcShield = LOTRShields.ALIGNMENT_ANGMAR; - } - - @Override - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - int i = this.rand.nextInt(weapons.length); - this.npcItemsInv.setMeleeWeapon(weapons[i].copy()); - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - i = this.rand.nextInt(boots.length); - this.setCurrentItemOrArmor(1, boots[i].copy()); - i = this.rand.nextInt(legs.length); - this.setCurrentItemOrArmor(2, legs[i].copy()); - i = this.rand.nextInt(bodies.length); - this.setCurrentItemOrArmor(3, bodies[i].copy()); - if (this.rand.nextInt(5) != 0) { - i = this.rand.nextInt(helmets.length); - this.setCurrentItemOrArmor(4, helmets[i].copy()); - } - return data; - } - - @Override - public LOTRFaction getFaction() { - return LOTRFaction.ANGMAR; - } - - @Override - public String getSpeechBank(EntityPlayer entityplayer) { - if (this.isFriendlyAndAligned(entityplayer)) { - if (this.hiredNPCInfo.getHiringPlayer() == entityplayer) { - return "angmar/orc/hired"; - } - if (LOTRLevelData.getData(entityplayer).getAlignment(this.getFaction()) >= 100.0f) { - return "angmar/orc/friendly"; - } - return "angmar/orc/neutral"; - } - return "angmar/orc/hostile"; - } - - @Override - public boolean canOrcSkirmish() { - return false; - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/radagast/FangornAnimal.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/radagast/FangornAnimal.java deleted file mode 100644 index cf67672..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/radagast/FangornAnimal.java +++ /dev/null @@ -1,87 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.radagast; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.LOTRAchievement; -import lotr.common.LOTRFoods; -import lotr.common.LOTRMod; -import lotr.common.entity.ai.LOTREntityAIAttackOnCollide; -import lotr.common.entity.ai.LOTREntityAIFollowHiringPlayer; -import lotr.common.entity.ai.LOTREntityAIHiredRemainStill; -import lotr.common.entity.npc.LOTREntityNPC; -import lotr.common.fac.LOTRFaction; -import lotr.common.quest.LOTRMiniQuest; -import lotr.common.quest.LOTRMiniQuestFactory; -import lotr.common.world.LOTRWorldChunkManager; -import lotr.common.world.biome.LOTRBiome; -import lotr.common.world.biome.variant.LOTRBiomeVariant; -import lotr.common.world.structure.LOTRChestContents; -import net.minecraft.block.material.Material; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.entity.ai.EntityAIBase; -import net.minecraft.entity.ai.EntityAILookIdle; -import net.minecraft.entity.ai.EntityAIOpenDoor; -import net.minecraft.entity.ai.EntityAISwimming; -import net.minecraft.entity.ai.EntityAIWander; -import net.minecraft.entity.ai.EntityAIWatchClosest; -import net.minecraft.entity.ai.EntityAIWatchClosest2; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.MathHelper; -import net.minecraft.world.EnumSkyBlock; -import net.minecraft.world.World; -import net.minecraft.world.biome.BiomeGenBase; -import net.minecraft.world.biome.WorldChunkManager; - -public abstract class FangornAnimal extends LOTREntityNPC { - public FangornAnimal(World world) { - super(world); - setSize(1.6F, 1.8F); - getNavigator().setAvoidsWater(true); - ((EntityLiving)this).tasks.addTask(0, (EntityAIBase)new EntityAISwimming((EntityLiving)this)); - ((EntityLiving)this).tasks.addTask(1, (EntityAIBase)new LOTREntityAIHiredRemainStill(this)); - ((EntityLiving)this).tasks.addTask(2, (EntityAIBase)new LOTREntityAIAttackOnCollide(this, 1.6D, false)); - ((EntityLiving)this).tasks.addTask(3, (EntityAIBase)new LOTREntityAIFollowHiringPlayer(this)); - ((EntityLiving)this).tasks.addTask(4, (EntityAIBase)new EntityAIWander(this, 1.0D)); - ((EntityLiving)this).tasks.addTask(5, (EntityAIBase)new EntityAIWatchClosest2((EntityLiving)this, EntityPlayer.class, 8.0F, 0.02F)); - ((EntityLiving)this).tasks.addTask(6, (EntityAIBase)new EntityAIWatchClosest2((EntityLiving)this, LOTREntityNPC.class, 5.0F, 0.02F)); - ((EntityLiving)this).tasks.addTask(7, (EntityAIBase)new EntityAIWatchClosest((EntityLiving)this, EntityLiving.class, 8.0F, 0.02F)); - ((EntityLiving)this).tasks.addTask(8, (EntityAIBase)new EntityAILookIdle((EntityLiving)this)); - addTargetTasks(true); - } - - public boolean canWorldGenSpawnAt(int i, int j, int k, LOTRBiome biome, LOTRBiomeVariant variant) { - int trees = biome.decorator.getVariantTreesPerChunk(variant); - return (trees >= 1); - } - - public LOTRFaction getFaction() { - return LOTRFaction.FANGORN; - } - - public float getAlignmentBonus() { - return 0.0F; - } - - public boolean getCanSpawnHere() { - WorldChunkManager worldChunkMgr = ((Entity)this).worldObj.getWorldChunkManager(); - if (worldChunkMgr instanceof LOTRWorldChunkManager) { - int i = MathHelper.floor_double(((Entity)this).posX); - int j = MathHelper.floor_double(((Entity)this).boundingBox.minY); - int k = MathHelper.floor_double(((Entity)this).posZ); - LOTRBiome biome = (LOTRBiome)((Entity)this).worldObj.getBiomeGenForCoords(i, k); - LOTRBiomeVariant variant = ((LOTRWorldChunkManager)worldChunkMgr).getBiomeVariantAt(i, k); - return (super.getCanSpawnHere() && canWorldGenSpawnAt(i, j, k, biome, variant)); - } - return super.getCanSpawnHere(); - } - - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/radagast/FangornAuroch.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/radagast/FangornAuroch.java deleted file mode 100644 index b177518..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/radagast/FangornAuroch.java +++ /dev/null @@ -1,73 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.radagast; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.LOTRMod; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.util.DamageSource; -import net.minecraft.world.World; -import net.minecraft.util.MovingObjectPosition; - - -public class FangornAuroch extends FangornAnimal { - public FangornAuroch(World world) { - super(world); - setSize(1.5F, 1.7F); - } - - public void entityInit() { - super.entityInit(); - } - - protected void applyEntityAttributes() { - super.applyEntityAttributes(); - getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(30.0D); - getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.2D); - getAttributeMap().registerAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(8.0D); - } - - public boolean attackEntityAsMob(Entity entity) { - float f = (float)getEntityAttribute(SharedMonsterAttributes.attackDamage).getAttributeValue(); - return entity.attackEntityFrom(DamageSource.causeMobDamage((EntityLivingBase)this), f); - } - - protected void dropFewItems(boolean flag, int i) { - int hides = 2 + rand.nextInt(3) + rand.nextInt(1 + i); - for (int l = 0; l < hides; l++) - dropItem(Items.leather, 1); - int meats = 2 + rand.nextInt(3) + rand.nextInt(1 + i); - for (int j = 0; j < meats; j++) { - if (isBurning()) { - dropItem(Items.cooked_beef, 1); - } else { - dropItem(Items.beef, 1); - } - } - dropItem(LOTRMod.horn, 1); - } - - protected String getLivingSound() { - return "lotr:aurochs.say"; - } - - protected String getHurtSound() { - return "lotr:aurochs.hurt"; - } - - protected String getDeathSound() { - return "lotr:aurochs.hurt"; - } - - public void attackEntityWithRangedAttack(EntityLivingBase target, float distanceFactor) { - // No ranged attack implemented - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 30); - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/radagast/FangornBear.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/radagast/FangornBear.java deleted file mode 100644 index d4c06c9..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/radagast/FangornBear.java +++ /dev/null @@ -1,145 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.radagast; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.LOTRMod; -import lotr.common.entity.animal.LOTREntityBear; -import lotr.common.entity.animal.LOTREntityBear.BearType; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.DamageSource; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -import java.util.List; - -public class FangornBear extends FangornAnimal { - public FangornBear(World world) { - super(world); - setSize(1.6F, 1.8F); - } - private int hostileTick = 0; - - public void entityInit() { - super.entityInit(); - dataWatcher.addObject(18, Byte.valueOf((byte)0)); - dataWatcher.addObject(20, Byte.valueOf((byte)0)); - setBearType(LOTREntityBear.BearType.forID(rand.nextInt((BearType.values()).length))); - } - - public BearType getBearType() { - int i = dataWatcher.getWatchableObjectByte(18); - return BearType.forID(i); - } - - public void setBearType(BearType t) { - dataWatcher.updateObject(18, Byte.valueOf((byte)t.bearID)); - } - - protected void applyEntityAttributes() { - super.applyEntityAttributes(); - getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(40.0D); - getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.2D); - getAttributeMap().registerAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(8.0D); - } - - public static class BearGroupSpawnData implements IEntityLivingData { - private BearGroupSpawnData() {} - - public int numSpawned = 0; - } - - public boolean attackEntityAsMob(Entity entity) { - float f = (float)getEntityAttribute(SharedMonsterAttributes.attackDamage).getAttributeValue(); - return entity.attackEntityFrom(DamageSource.causeMobDamage((EntityLivingBase)this), f); - } - public boolean attackEntityFrom(DamageSource damagesource, float f) { - boolean flag = super.attackEntityFrom(damagesource, f); - if (flag) { - Entity attacker = damagesource.getEntity(); - if (attacker instanceof EntityLivingBase) - if (isChild()) { - double range = 12.0D; - List list = ((Entity)this).worldObj.getEntitiesWithinAABBExcludingEntity((Entity)this, ((Entity)this).boundingBox.expand(range, range, range)); - for (Object obj : list) { - Entity entity = (Entity)obj; - if (entity instanceof FangornBear) { - FangornBear bear = (FangornBear)entity; - if (!bear.isChild()) - bear.becomeAngryAt((EntityLivingBase)attacker); - } - } - } else { - becomeAngryAt((EntityLivingBase)attacker); - } - } - return flag; - } - - private void becomeAngryAt(EntityLivingBase entity) { - setAttackTarget(entity); - this.hostileTick = 200; - } - - public void writeEntityToNBT(NBTTagCompound nbt) { - super.writeEntityToNBT(nbt); - nbt.setByte("BearType", (byte)(getBearType()).bearID); - nbt.setInteger("Angry", this.hostileTick); - } - - public void readEntityFromNBT(NBTTagCompound nbt) { - super.readEntityFromNBT(nbt); - if (nbt.hasKey("BearType")) - setBearType(BearType.forID(nbt.getByte("BearType"))); - this.hostileTick = nbt.getInteger("Angry"); - } - - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - if (data == null) { - data = new BearGroupSpawnData(); - ((BearGroupSpawnData)data).numSpawned = 1; - } else if (data instanceof BearGroupSpawnData) { - BearGroupSpawnData bgsd = (BearGroupSpawnData)data; - bgsd.numSpawned++; - } - if (rand.nextInt(10000) == 0) setCustomNameTag("Wojtek"); - return data; - } - - protected void dropFewItems(boolean flag, int i) { - int furs = 1 + rand.nextInt(3) + rand.nextInt(i + 1); - for (int l = 0; l < furs; l++) - dropItem(LOTRMod.fur, 1); - if (flag) { - int rugChance = 30 - i * 5; - rugChance = Math.max(rugChance, 1); - if (rand.nextInt(rugChance) == 0) - entityDropItem(new ItemStack(LOTRMod.bearRug, 1, (getBearType()).bearID), 0.0F); - } - } - protected String getLivingSound() { - return "lotr:bear.say"; - } - - protected String getHurtSound() { - return "lotr:bear.hurt"; - } - - protected String getDeathSound() { - return "lotr:bear.death"; - } - - public void attackEntityWithRangedAttack(EntityLivingBase target, float distanceFactor) { - // No ranged attack implemented - } - - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 27); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/radagast/FangornElk.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/radagast/FangornElk.java deleted file mode 100644 index cb0a08f..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/radagast/FangornElk.java +++ /dev/null @@ -1,79 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.radagast; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.LOTRMod; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.util.DamageSource; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -import java.util.UUID; - - -public class FangornElk extends FangornAnimal { - public FangornElk(World world) { - super(world); - setSize(1.6F, 1.8F); - } - - public void entityInit() { - super.entityInit(); - } - - public void setUniqueID(UUID uuid) { - entityUniqueID = uuid; - } - - protected void applyEntityAttributes() { - super.applyEntityAttributes(); - getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(35.0D); - getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.2D); - getAttributeMap().registerAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(8.0D); - } - - - public boolean attackEntityAsMob(Entity entity) { - float f = (float)getEntityAttribute(SharedMonsterAttributes.attackDamage).getAttributeValue(); - return entity.attackEntityFrom(DamageSource.causeMobDamage((EntityLivingBase)this), f); - } - - protected void dropFewItems(boolean flag, int i) { - int hide = rand.nextInt(3) + rand.nextInt(1 + i); - for (int l = 0; l < hide; l++) - dropItem(Items.leather, 1); - int meat = rand.nextInt(3) + rand.nextInt(1 + i); - for (int j = 0; j < meat; j++) { - if (isBurning()) { - dropItem(LOTRMod.deerCooked, 1); - } else { - dropItem(LOTRMod.deerRaw, 1); - } - } - } - - protected String getLivingSound() { - return "lotr:elk.say"; - } - - protected String getHurtSound() { - return "lotr:elk.hurt"; - } - - protected String getDeathSound() { - return "lotr:elk.death"; - } - - public void attackEntityWithRangedAttack(EntityLivingBase target, float distanceFactor) { - // No ranged attack implemented - } - - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 26); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/radagast/FangornWildBoar.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/radagast/FangornWildBoar.java deleted file mode 100644 index 2605334..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/radagast/FangornWildBoar.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.radagast; - -import com.zivilon.cinder_loe.CinderLoE; - -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.util.DamageSource; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - - -public class FangornWildBoar extends FangornAnimal { - public FangornWildBoar(World world) { - super(world); - setSize(0.9F, 0.8F); - } - - public void entityInit() { - super.entityInit(); - } - - protected void applyEntityAttributes() { - super.applyEntityAttributes(); - getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(20.0D); - getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.2D); - getAttributeMap().registerAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(8.0D); - } - - public boolean attackEntityAsMob(Entity entity) { - float f = (float)getEntityAttribute(SharedMonsterAttributes.attackDamage).getAttributeValue(); - return entity.attackEntityFrom(DamageSource.causeMobDamage((EntityLivingBase)this), f); - } - - protected void dropFewItems(boolean flag, int i) { - int meat = rand.nextInt(3) + 1 + rand.nextInt(1 + i); - for (int l = 0; l < meat; l++) { - if (isBurning()) { - dropItem(Items.cooked_porkchop, 1); - } else { - dropItem(Items.porkchop, 1); - } - } - } - protected String getLivingSound() { - return "mob.pig.say"; - } - - protected String getHurtSound() { - return "mob.pig.say"; - } - - protected String getDeathSound() { - return "mob.pig.death"; - } - - public void attackEntityWithRangedAttack(EntityLivingBase target, float distanceFactor) { - // No ranged attack implemented - } - - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 28); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/radagast/FangornWolf.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/radagast/FangornWolf.java deleted file mode 100644 index d7fde98..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/npc/radagast/FangornWolf.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.zivilon.cinder_loe.entity.npc.radagast; - -import com.zivilon.cinder_loe.CinderLoE; - -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.init.Items; -import net.minecraft.util.DamageSource; -import net.minecraft.world.World; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; - -public class FangornWolf extends FangornAnimal { - public FangornWolf(World world) { - super(world); - setSize(0.6F, 0.8F); - } - - public void entityInit() { - super.entityInit(); - } - - protected void applyEntityAttributes() { - super.applyEntityAttributes(); - getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(10.0D); - getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.25D); - getAttributeMap().registerAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(6.0D); - } - - public boolean attackEntityAsMob(Entity entity) { - float f = (float)getEntityAttribute(SharedMonsterAttributes.attackDamage).getAttributeValue(); - return entity.attackEntityFrom(DamageSource.causeMobDamage((EntityLivingBase)this), f); - } - - protected void dropFewItems(boolean flag, int i) { - int meat = rand.nextInt(3) + 1 + rand.nextInt(1 + i); - for (int l = 0; l < meat; l++) { - if (isBurning()) { - dropItem(Items.cooked_porkchop, 1); - } else { - dropItem(Items.porkchop, 1); - } - } - } - protected String getLivingSound() { - return "mob.wolf.growl"; - } - - protected String getHurtSound() { - return "mob.wolf.hurt"; - } - - protected String getDeathSound() { - return "mob.wolf.death"; - } - - public void attackEntityWithRangedAttack(EntityLivingBase target, float distanceFactor) { - // No ranged attack implemented - } - - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 29); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/projectile/EntityWarDart.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/projectile/EntityWarDart.java deleted file mode 100644 index e736e01..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/projectile/EntityWarDart.java +++ /dev/null @@ -1,173 +0,0 @@ -package com.zivilon.cinder_loe.entity.projectile; - -import com.zivilon.cinder_loe.CinderLoE; -import com.zivilon.cinder_loe.items.WarDart; -import lotr.common.entity.projectile.LOTREntityProjectileBase; -import net.minecraft.block.Block; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.DamageSource; -import net.minecraft.util.IIcon; -import net.minecraft.util.MathHelper; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; -import net.minecraft.potion.Potion; -import net.minecraft.potion.PotionEffect; - -public class EntityWarDart extends LOTREntityProjectileBase { - - public static int POSITION_WATCHER_ID = 20; - public static int ITEMSTACK_WATCHER_ID = 18; - - public int xTile = -1; - public int yTile = -1; - public int zTile = -1; - public Block inTile; - public int inData = 0; - public boolean inGround = false; - public int shake = 0; - public Entity shootingEntity; - public int ticksInGround; - public int ticksInAir = 0; - public int canBePickedUp = 0; - public int knockbackStrength = 0; - - public ItemStack item; - public double damage; - public int dart_type; - - public EntityWarDart(World world) { - super(world); - } - - public EntityWarDart(World world, EntityLivingBase thrower, ItemStack item) { - super(world, thrower, item, 3.0F); - this.item = item.copy(); // Store a copy of the item stack - this.item.stackSize = 1; - this.damage = WarDart.getDamageFromMeta(item.getItemDamage()); - this.dart_type = item.getItemDamage(); - } - - @Override - protected void entityInit() { - this.dataWatcher.addObject(17, Byte.valueOf((byte)0)); - this.dataWatcher.addObjectByDataType(ITEMSTACK_WATCHER_ID, 5); - this.dataWatcher.addObject(POSITION_WATCHER_ID, ""); // Test adding object with ID - } - - @Override - public void setThrowableHeading(double x, double y, double z, float velocity, float inaccuracy) { - float f2 = MathHelper.sqrt_double(x * x + y * y + z * z); - x /= f2; - y /= f2; - z /= f2; - x += this.rand.nextGaussian() * 0.0075D * inaccuracy; - y += this.rand.nextGaussian() * 0.0075D * inaccuracy; - z += this.rand.nextGaussian() * 0.0075D * inaccuracy; - x *= velocity; - y *= velocity; - z *= velocity; - this.motionX = x; - this.motionY = y; - this.motionZ = z; - float f3 = MathHelper.sqrt_double(x * x + z * z); - this.prevRotationYaw = this.rotationYaw = (float)(Math.atan2(x, z) * 180.0D / Math.PI); - this.prevRotationPitch = this.rotationPitch = (float)(Math.atan2(y, f3) * 180.0D / Math.PI); - this.ticksInGround = 0; - } - - @Override - public void onUpdate() { - super.onUpdate(); - - if (!this.worldObj.isRemote) { - this.dataWatcher.updateObject(ITEMSTACK_WATCHER_ID, this.item); - if (this.inGround) { - String posString = this.xTile + "," + this.yTile + "," + this.zTile; - this.dataWatcher.updateObject(POSITION_WATCHER_ID, posString); - } - } else { - this.item = this.dataWatcher.getWatchableObjectItemStack(ITEMSTACK_WATCHER_ID); - String posString = this.dataWatcher.getWatchableObjectString(POSITION_WATCHER_ID); - if (!posString.equals("")) { - String[] coords = posString.split(","); - this.xTile = Integer.parseInt(coords[0]); - this.yTile = Integer.parseInt(coords[1]); - this.zTile = Integer.parseInt(coords[2]); - } - } - - // Ensure proper synchronization of position - if (this.inGround) { - this.motionX = this.motionY = this.motionZ = 0; - this.posX = this.xTile + 0.5; - this.posY = this.yTile + 0.5; - this.posZ = this.zTile + 0.5; - } - } - - @Override - protected void onCollideWithTarget(Entity entity) { - super.onCollideWithTarget(entity); - if (entity instanceof EntityLivingBase) - if (this.dart_type == 14) { - ((EntityLivingBase)entity).addPotionEffect(new PotionEffect(Potion.wither.id, 160)); - } - } - - @Override - public float getBaseImpactDamage(Entity entity, ItemStack itemStack) { - return (float)this.damage; - } - - @Override - public void writeEntityToNBT(NBTTagCompound tagCompound) { - // Do not call super.writeEntityToNBT to avoid recursion issues - tagCompound.setInteger("xTile", this.xTile); - tagCompound.setInteger("yTile", this.yTile); - tagCompound.setInteger("zTile", this.zTile); - tagCompound.setInteger("inTile", Block.getIdFromBlock(this.inTile)); - tagCompound.setByte("inData", (byte)this.inData); - tagCompound.setByte("shake", (byte)this.shake); - tagCompound.setByte("inGround", (byte)(this.inGround ? 1 : 0)); - tagCompound.setByte("pickup", (byte)this.canBePickedUp); - tagCompound.setByte("Knockback", (byte)this.knockbackStrength); - if (this.item != null) { - NBTTagCompound itemTag = new NBTTagCompound(); - this.item.writeToNBT(itemTag); - tagCompound.setTag("Item", itemTag); - } - } - - @Override - public void readEntityFromNBT(NBTTagCompound tagCompound) { - // Do not call super.readEntityFromNBT to avoid recursion issues - this.xTile = tagCompound.getInteger("xTile"); - this.yTile = tagCompound.getInteger("yTile"); - this.zTile = tagCompound.getInteger("zTile"); - this.inTile = Block.getBlockById(tagCompound.getInteger("inTile")); - this.inData = tagCompound.getByte("inData"); - this.shake = tagCompound.getByte("shake"); - this.inGround = tagCompound.getByte("inGround") == 1; - this.canBePickedUp = tagCompound.getByte("pickup"); - this.knockbackStrength = tagCompound.getByte("Knockback"); - if (tagCompound.hasKey("Item")) { - this.item = ItemStack.loadItemStackFromNBT(tagCompound.getCompoundTag("Item")); - if (this.item != null) { - this.damage = WarDart.getDamageFromMeta(this.item.getItemDamage()); - this.dart_type = this.item.getItemDamage(); - this.dataWatcher.updateObject(ITEMSTACK_WATCHER_ID, this.item); // Ensure DataWatcher is updated with the deserialized ItemStack - } - } - } - - - - - public IIcon getDartIcon() { - WarDart itemDart = (WarDart) CinderLoE.warDart; - return itemDart.getIconFromDamage(this.item.getItemDamage()); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/trader/BladorthinSmith.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/trader/BladorthinSmith.java deleted file mode 100644 index 1d01f60..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/trader/BladorthinSmith.java +++ /dev/null @@ -1,107 +0,0 @@ -package com.zivilon.cinder_loe.entity.trader; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.LOTRFoods; -import lotr.common.LOTRLevelData; -import lotr.common.LOTRMod; -import lotr.common.entity.npc.*; -import lotr.common.entity.npc.LOTRTradeEntries.TradeType; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Blocks; -import net.minecraft.init.Items; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -public class BladorthinSmith extends LOTREntityDorwinionElf implements LOTRTradeable.Smith { - public static LOTRTradeEntries BLADORTHIN_SMITH_BUY; - public static LOTRTradeEntries BLADORTHIN_SMITH_SELL; - - public BladorthinSmith(World world) { - super(world); - } - - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - this.npcItemsInv.setMeleeWeapon(new ItemStack(LOTRMod.blacksmithHammer)); - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - return data; - } - - public LOTRTradeEntries getBuyPool() { - return BLADORTHIN_SMITH_BUY; - } - - public LOTRTradeEntries getSellPool() { - return BLADORTHIN_SMITH_SELL; - } - - public float getAlignmentBonus() { - return 2.0F; - } - - protected void dropFewItems(boolean flag, int i) { - super.dropFewItems(flag, i); - } - - public boolean canTradeWith(EntityPlayer entityplayer) { - return (LOTRLevelData.getData(entityplayer).getAlignment(getFaction()) >= 100.0F && isFriendlyAndAligned(entityplayer)); - } - - static { - BLADORTHIN_SMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry[] { - new LOTRTradeEntry(new ItemStack(LOTRMod.dorwinionTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordDorwinionElf), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerDorwinionElf), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearBladorthin), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetDorwinionElf), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyDorwinionElf), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsDorwinionElf), 22), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsDorwinionElf), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.dorwinionElfBow), 15), - new LOTRTradeEntry(new ItemStack(Items.arrow, 4), 3) - } - ); - - BLADORTHIN_SMITH_SELL = new LOTRTradeEntries(TradeType.SELL, - new LOTRTradeEntry[] { - new LOTRTradeEntry(new ItemStack(Blocks.iron_ore), 5), - new LOTRTradeEntry(new ItemStack(Blocks.gold_ore), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.oreCopper), 5), - new LOTRTradeEntry(new ItemStack(LOTRMod.oreTin), 5), - new LOTRTradeEntry(new ItemStack(Items.iron_ingot), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.elfSteel), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronze), 3), - new LOTRTradeEntry(new ItemStack(Items.gold_ingot), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.diamond), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.emerald), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.ruby), 12), - new LOTRTradeEntry(new ItemStack(LOTRMod.opal), 10), - new LOTRTradeEntry(new ItemStack(LOTRMod.amber), 10), - new LOTRTradeEntry(new ItemStack(LOTRMod.topaz), 8), - new LOTRTradeEntry(new ItemStack(Items.coal, 2, Short.MAX_VALUE), 1), - new LOTRTradeEntry(new ItemStack(Items.lava_bucket), 16), - new LOTRTradeEntry(new ItemStack(Items.stick, 8), 1), - new LOTRTradeEntry(new ItemStack(Items.string, 3), 1), - new LOTRTradeEntry(new ItemStack(LOTRMod.mithrilNugget), 35) - } - ); - } - - @Override - public void onPlayerTrade(EntityPlayer entityplayer, TradeType type, ItemStack itemstack) { - } - - @Override - public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) { - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 31); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/trader/LimwaithFishmonger.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/trader/LimwaithFishmonger.java deleted file mode 100644 index 889b98a..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/trader/LimwaithFishmonger.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.zivilon.cinder_loe.entity.trader; - -import com.zivilon.cinder_loe.CinderLoE; - -import com.zivilon.cinder_loe.entity.npc.evil_human.Limwaith; -import lotr.common.LOTRLevelData; -import lotr.common.LOTRMod; -import lotr.common.entity.npc.LOTRTradeEntries; -import lotr.common.entity.npc.LOTRTradeEntries.TradeType; -import lotr.common.entity.npc.LOTRTradeable; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import net.minecraft.util.MovingObjectPosition; - -import static lotr.common.entity.npc.LOTRTradeEntries.HARAD_FISHMONGER_BUY; -import static lotr.common.entity.npc.LOTRTradeEntries.HARAD_FISHMONGER_SELL; - -public class LimwaithFishmonger extends Limwaith implements LOTRTradeable { - - public LimwaithFishmonger(World world) { - super(world); - } - - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.tridentLimwaith)); - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - return data; - } - - public LOTRTradeEntries getBuyPool() { - return HARAD_FISHMONGER_BUY; - } - - public LOTRTradeEntries getSellPool() { - return HARAD_FISHMONGER_SELL; - } - - public float getAlignmentBonus() { - return 2.0F; - } - - protected void dropFewItems(boolean flag, int i) { - super.dropFewItems(flag, i); - dropItem(getLimwaithTraderDrop(), 1 + rand.nextInt(3) + rand.nextInt(i + 1)); - } - protected Item getLimwaithTraderDrop() { - return LOTRMod.pearl; - } - - public boolean canTradeWith(EntityPlayer entityplayer) { - return (LOTRLevelData.getData(entityplayer).getAlignment(getFaction()) >= 100.0F && isFriendlyAndAligned(entityplayer)); - } - - @Override - public void onPlayerTrade(EntityPlayer entityplayer, TradeType type, ItemStack itemstack) { - } - - @Override - public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) { - } - - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 32); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/trader/LimwaithShaman.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/trader/LimwaithShaman.java deleted file mode 100644 index 8d6c002..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/trader/LimwaithShaman.java +++ /dev/null @@ -1,116 +0,0 @@ -package com.zivilon.cinder_loe.entity.trader; - -import com.zivilon.cinder_loe.CinderLoE; - -import com.zivilon.cinder_loe.entity.npc.evil_human.Limwaith; -import lotr.common.LOTRLevelData; -import lotr.common.LOTRMod; -import lotr.common.entity.npc.LOTRTradeEntries; -import lotr.common.entity.npc.LOTRTradeEntries.TradeType; -import lotr.common.entity.npc.LOTRTradeEntry; -import lotr.common.entity.npc.LOTRTradeable; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Blocks; -import net.minecraft.init.Items; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import net.minecraft.util.MovingObjectPosition; - -public class LimwaithShaman extends Limwaith implements LOTRTradeable.Smith { - public static LOTRTradeEntries LIMWAITH_SHAMAN_BUY; - public static LOTRTradeEntries LIMWAITH_SHAMAN_SELL; - - public LimwaithShaman(World world) { - super(world); - } - - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - this.npcItemsInv.setMeleeWeapon(new ItemStack(CinderLoE.daggerLimwaithPoisoned)); - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - return data; - } - - public LOTRTradeEntries getBuyPool() { - return LIMWAITH_SHAMAN_BUY; - } - - public LOTRTradeEntries getSellPool() { - return LIMWAITH_SHAMAN_SELL; - } - - public float getAlignmentBonus() { - return 2.0F; - } - - protected void dropFewItems(boolean flag, int i) { - super.dropFewItems(flag, i); - dropItem(getLimwaithTraderDrop(), 1 + rand.nextInt(2) + rand.nextInt(i + 1)); - } - - public boolean canTradeWith(EntityPlayer entityplayer) { - return (LOTRLevelData.getData(entityplayer).getAlignment(getFaction()) >= 100.0F && isFriendlyAndAligned(entityplayer)); - } - - - static { - LIMWAITH_SHAMAN_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(CinderLoE.daggerLimwaith), 12), - new LOTRTradeEntry(new ItemStack(CinderLoE.daggerLimwaithPoisoned), 20), - new LOTRTradeEntry(new ItemStack(CinderLoE.blowgunLimwaith), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.tauredainDart, 4), 5), - new LOTRTradeEntry(new ItemStack(LOTRMod.tauredainDartPoisoned, 4), 10), - new LOTRTradeEntry(new ItemStack(CinderLoE.bonemold, 2), 4), - new LOTRTradeEntry(new ItemStack(Items.bone, 1), 1), - new LOTRTradeEntry(new ItemStack(LOTRMod.bottlePoison), 10)); - - LIMWAITH_SHAMAN_SELL = new LOTRTradeEntries(TradeType.SELL, - new LOTRTradeEntry(new ItemStack(Items.gold_nugget), 2), - new LOTRTradeEntry(new ItemStack(LOTRMod.emerald), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.amber), 10), - new LOTRTradeEntry(new ItemStack(Items.glass_bottle), 2), - new LOTRTradeEntry(new ItemStack(LOTRMod.mug), 1), - new LOTRTradeEntry(new ItemStack(Items.bone), 1), - new LOTRTradeEntry(new ItemStack(LOTRMod.rhinoHorn), 5), - new LOTRTradeEntry(new ItemStack(Items.dye, 3, 15), 1), - new LOTRTradeEntry(new ItemStack(LOTRMod.gemsbokHorn), 4), - new LOTRTradeEntry(new ItemStack(LOTRMod.doubleFlower, 2, 2), 1), - new LOTRTradeEntry(new ItemStack(LOTRMod.doubleFlower, 2, 3), 1), - new LOTRTradeEntry(new ItemStack(Blocks.red_mushroom, 1, 0), 2), - new LOTRTradeEntry(new ItemStack(Blocks.brown_mushroom, 1, 0), 2), - new LOTRTradeEntry(new ItemStack(CinderLoE.bonemold, 2), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.mango), 1), - new LOTRTradeEntry(new ItemStack(LOTRMod.banana), 1), - new LOTRTradeEntry(new ItemStack(LOTRMod.corn, 2), 1)); - } - - @Override - public void onPlayerTrade(EntityPlayer entityplayer, TradeType type, ItemStack itemstack) { - } - - @Override - public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) { - } - - protected Item getLimwaithTraderDrop() { - return LOTRMod.pearl; - } - - @Override - public String getSpeechBank(EntityPlayer entityplayer) { - if (this.isFriendlyAndAligned(entityplayer)) { - if (this.canTradeWith(entityplayer)) { - return "limwaith/shaman/friendly"; - } - return "limwaith/shaman/neutral"; - } - return "limwaith/shaman/hostile"; - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 33); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/entity/trader/RedDwarfSmith.java b/src (1)/main/java/com/zivilon/cinder_loe/entity/trader/RedDwarfSmith.java deleted file mode 100644 index 074ea5d..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/entity/trader/RedDwarfSmith.java +++ /dev/null @@ -1,133 +0,0 @@ -package com.zivilon.cinder_loe.entity.trader; - -import com.zivilon.cinder_loe.CinderLoE; - -import lotr.common.entity.npc.LOTRTradeEntries; -import lotr.common.entity.npc.LOTRTradeEntries.TradeType; -import lotr.common.entity.npc.LOTRTradeable; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.Entity; -import net.minecraft.world.World; -import lotr.common.LOTRMod; -import lotr.common.fac.LOTRFaction; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.item.ItemStack; -import net.minecraft.item.Item; -import lotr.common.entity.npc.LOTRTradeEntry; -import net.minecraft.init.Items; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import lotr.common.LOTRLevelData; -import lotr.common.entity.npc.LOTREntityDwarf; -import net.minecraft.util.MovingObjectPosition; - - -public class RedDwarfSmith extends LOTREntityDwarf implements LOTRTradeable.Smith { - public static LOTRTradeEntries RED_DWARF_SMITH_BUY; - public static LOTRTradeEntries RED_DWARF_SMITH_SELL; - - public RedDwarfSmith(World world) { - super(world); - } - - public IEntityLivingData onSpawnWithEgg(IEntityLivingData data) { - data = super.onSpawnWithEgg(data); - this.npcItemsInv.setMeleeWeapon(new ItemStack(LOTRMod.blacksmithHammer)); - this.npcItemsInv.setIdleItem(this.npcItemsInv.getMeleeWeapon()); - return data; - } - - public LOTRTradeEntries getBuyPool() { - return RED_DWARF_SMITH_BUY; - } - - public LOTRTradeEntries getSellPool() { - return RED_DWARF_SMITH_SELL; - } - - public float getAlignmentBonus() { - return 2.0F; - } - - protected void dropFewItems(boolean flag, int i) { - super.dropFewItems(flag, i); - dropItem(getDwarfSteelDrop(), 1 + rand.nextInt(3) + rand.nextInt(i + 1)); - } - - public boolean canTradeWith(EntityPlayer entityplayer) { - return (LOTRLevelData.getData(entityplayer).getAlignment(getFaction()) >= 100.0F && isFriendlyAndAligned(entityplayer)); - } - - static { - RED_DWARF_SMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry[] { - new LOTRTradeEntry(new ItemStack(LOTRMod.dwarvenTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.blacksmithHammer), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.dwarvenRing), 20), - new LOTRTradeEntry(new ItemStack(CinderLoE.swordRedDwarf), 16), - new LOTRTradeEntry(new ItemStack(CinderLoE.spearRedDwarf), 18), - new LOTRTradeEntry(new ItemStack(CinderLoE.battleaxeRedDwarf), 18), - new LOTRTradeEntry(new ItemStack(CinderLoE.hammerRedDwarf), 18), - new LOTRTradeEntry(new ItemStack(CinderLoE.pikeRedDwarf), 18), - new LOTRTradeEntry(new ItemStack(CinderLoE.daggerRedDwarf), 13), - new LOTRTradeEntry(new ItemStack(CinderLoE.crossbowRedDwarf), 15), - new LOTRTradeEntry(new ItemStack(CinderLoE.helmetRedDwarf), 25), - new LOTRTradeEntry(new ItemStack(CinderLoE.bodyRedDwarf), 36), - new LOTRTradeEntry(new ItemStack(CinderLoE.legsRedDwarf), 30), - new LOTRTradeEntry(new ItemStack(CinderLoE.bootsRedDwarf), 22), - new LOTRTradeEntry(new ItemStack(CinderLoE.boarArmorRedDwarf), 25), - new LOTRTradeEntry(new ItemStack(CinderLoE.barsRedDwarf, 8), 20) - } - ); - - RED_DWARF_SMITH_SELL = new LOTRTradeEntries(TradeType.SELL, - new LOTRTradeEntry[] { - new LOTRTradeEntry(new ItemStack(Items.iron_ingot), 3), - new LOTRTradeEntry(new ItemStack(CinderLoE.redDwarfSteel), 3), - new LOTRTradeEntry(new ItemStack(Items.coal, 2, 32767), 1), - new LOTRTradeEntry(new ItemStack(Items.gold_ingot), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.copper), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.tin), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronze), 3), - new LOTRTradeEntry(new ItemStack(Items.string, 3), 1), - new LOTRTradeEntry(new ItemStack(LOTRMod.diamond), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.emerald), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.sapphire), 12), - new LOTRTradeEntry(new ItemStack(LOTRMod.ruby), 12), - new LOTRTradeEntry(new ItemStack(LOTRMod.opal), 10), - new LOTRTradeEntry(new ItemStack(LOTRMod.amber), 10), - new LOTRTradeEntry(new ItemStack(LOTRMod.amethyst), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.topaz), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.pearl), 25), - new LOTRTradeEntry(new ItemStack(Items.cooked_beef), 3), - new LOTRTradeEntry(new ItemStack(Items.cooked_porkchop), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.muttonCooked), 3), - new LOTRTradeEntry(new ItemStack(Items.cooked_chicken), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.gammon), 3), - new LOTRTradeEntry(new ItemStack(Items.cooked_fished), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.rabbitCooked), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.deerCooked), 3), - new LOTRTradeEntry(new ItemStack(Items.bread), 2), - new LOTRTradeEntry(new ItemStack(Items.lava_bucket), 16) - - } - ); - } - - @Override - public void onPlayerTrade(EntityPlayer entityplayer, LOTRTradeEntries.TradeType type, ItemStack itemstack) { - } - - @Override - public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) { - } - - @Override - protected Item getDwarfSteelDrop() { - return CinderLoE.redDwarfSteel; - } - @Override - public ItemStack getPickedResult(MovingObjectPosition target) { - return new ItemStack(CinderLoE.spawnEgg, 1, 34); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/AlatarStaff.java b/src (1)/main/java/com/zivilon/cinder_loe/items/AlatarStaff.java deleted file mode 100644 index 751b1d4..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/AlatarStaff.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import cpw.mods.fml.common.network.simpleimpl.IMessage; -import java.util.List; -import lotr.common.LOTRCreativeTabs; -import lotr.common.LOTRLevelData; -import lotr.common.LOTRMod; -import lotr.common.fac.LOTRFaction; -import lotr.common.network.LOTRPacketHandler; -import lotr.common.network.LOTRPacketWeaponFX; - -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.EnumAction; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.potion.PotionEffect; -import net.minecraft.potion.Potion; -import net.minecraft.server.MinecraftServer; -import net.minecraft.util.DamageSource; -import net.minecraft.util.MathHelper; -import net.minecraft.world.World; - -import com.zivilon.cinder_loe.items.WizardStaff; - -public class AlatarStaff extends WizardStaff { - public AlatarStaff() { - super(); - } - - public ItemStack onEaten(ItemStack itemstack, World world, EntityPlayer entityplayer) { - entityplayer.swingItem(); - itemstack.damageItem(2, (EntityLivingBase)entityplayer); - world.playSoundAtEntity((Entity)entityplayer, "lotr:elf.woodElf_teleport", 2.0F, (Item.itemRand.nextFloat() - Item.itemRand.nextFloat()) * 0.2F + 1.0F); - LOTRFaction faction = getFaction(entityplayer); - if (!world.isRemote) { - List entities = world.getEntitiesWithinAABB(EntityLivingBase.class, ((Entity)entityplayer).boundingBox.expand(12.0D, 8.0D, 12.0D)); - if (!entities.isEmpty()) - for (int i = 0; i < entities.size(); i++) { - EntityLivingBase entity = entities.get(i); - if (entity != entityplayer) { - if (entity instanceof EntityLiving) { - EntityLiving entityliving = (EntityLiving)entity; - if (!faction.isGoodRelation(LOTRMod.getNPCFaction((Entity)entityliving))) - continue; - } - if (entity instanceof EntityPlayer) - if (!MinecraftServer.getServer().isPVPEnabled() || LOTRLevelData.getData((EntityPlayer)entity).getAlignment(faction) < 0.0F) - continue; - - entity.addPotionEffect(new PotionEffect(Potion.moveSpeed.id, 1200, 0)); - entity.addPotionEffect(new PotionEffect(Potion.damageBoost.id, 1200, 0)); - } - } - LOTRPacketWeaponFX packet = new LOTRPacketWeaponFX(LOTRPacketWeaponFX.Type.MACE_SAURON, (Entity)entityplayer); - LOTRPacketHandler.networkWrapper.sendToAllAround((IMessage)packet, LOTRPacketHandler.nearEntity((Entity)entityplayer, 64.0D)); - } - return itemstack; - } - - private LOTRFaction getFaction(EntityPlayer player) { - LOTRFaction faction = LOTRLevelData.getData(player).getPledgeFaction(); - if (faction == null) { - faction = LOTRFaction.DORWINION; - } - return faction; - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/BrokenHalo.java b/src (1)/main/java/com/zivilon/cinder_loe/items/BrokenHalo.java deleted file mode 100644 index 1c59bd7..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/BrokenHalo.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import com.zivilon.cinder_loe.CinderLoE; -import com.zivilon.cinder_loe.entity.corrupt.CorruptMan; -import cpw.mods.fml.common.eventhandler.SubscribeEvent; -import lotr.common.item.LOTRItemArmor; -import lotr.common.item.LOTRMaterial; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.init.Items; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.potion.Potion; -import net.minecraft.potion.PotionEffect; -import net.minecraft.world.World; -import net.minecraftforge.event.entity.living.LivingEvent; -import net.minecraftforge.event.entity.living.LivingHurtEvent; - -import java.util.Random; - -public class BrokenHalo extends LOTRItemArmor { - - public BrokenHalo(LOTRMaterial material, int slotType, String s) { - super(material, slotType, s); - - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/CinderBow.java b/src (1)/main/java/com/zivilon/cinder_loe/items/CinderBow.java deleted file mode 100644 index aab8116..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/CinderBow.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import com.zivilon.cinder_loe.CinderLoE; -import cpw.mods.fml.common.network.simpleimpl.IMessage; -import lotr.common.LOTRLevelData; -import lotr.common.LOTRMod; -import lotr.common.fac.LOTRFaction; -import lotr.common.item.LOTRItemBow; -import lotr.common.item.LOTRMaterial; -import lotr.common.network.LOTRPacketHandler; -import lotr.common.network.LOTRPacketWeaponFX; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.potion.Potion; -import net.minecraft.potion.PotionEffect; -import net.minecraft.server.MinecraftServer; -import net.minecraft.world.World; -import org.spongepowered.asm.mixin.Overwrite; - -import java.util.List; - -public class CinderBow extends LOTRItemBow { - - - public CinderBow(LOTRMaterial material, double d) { - super(material, d); - } - - @Override - public boolean getIsRepairable(ItemStack itemstack, ItemStack repairItem) { - return repairItem.getItem() == CinderLoE.ingotAsh || super.getIsRepairable(itemstack, repairItem); - } - - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/CinderFurItem.java b/src (1)/main/java/com/zivilon/cinder_loe/items/CinderFurItem.java deleted file mode 100644 index fd7f897..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/CinderFurItem.java +++ /dev/null @@ -1,56 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import com.zivilon.cinder_loe.LoECreativeTabs; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; - -import java.util.List; - -public class CinderFurItem extends Item { - public IIcon[] icons; - - public CinderFurItem() { - super(); - this.setCreativeTab(LoECreativeTabs.tabMiscLoE); - setHasSubtypes(true); - } - - @Override - public void registerIcons(IIconRegister iconRegister) { - icons = new IIcon[7]; - for (int i = 0; i < 7; i++) { - icons[i] = iconRegister.registerIcon("lotr:cinder_fur_item_" + i); - } - } - - @Override - public String getUnlocalizedName(ItemStack item) { - return "item.cinder_fur_item_" + item.getItemDamage(); - } - - @Override - public IIcon getIconIndex(ItemStack item) { - return getIcon(item, 0); - } - - @Override - public IIcon getIcon(ItemStack stack, int renderPass) { - int dmg = stack.getItemDamage(); - - // Ensure dmg is within the expected range of subtypes - if (dmg < 7) { - return icons[dmg]; - } - return icons[0]; // Default to 0 if out of bounds - } - - @Override - public void getSubItems(Item item, CreativeTabs tab, List list) { - for (int i = 0; i < 7; i++) { - list.add(new ItemStack(item, 1, i)); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/CinderItemFood.java b/src (1)/main/java/com/zivilon/cinder_loe/items/CinderItemFood.java deleted file mode 100644 index 6e7c463..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/CinderItemFood.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import com.zivilon.cinder_loe.CinderLoE; -import lotr.common.LOTRAchievement; -import lotr.common.LOTRCreativeTabs; -import lotr.common.LOTRLevelData; -import lotr.common.LOTRMod; -import lotr.common.item.LOTRItemFood; -import lotr.common.item.LOTRItemSword; -import lotr.common.item.LOTRMaterial; -import lotr.common.item.LOTRWeaponStats; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.item.EnumAction; -import net.minecraft.item.Item; -import net.minecraft.item.ItemFood; -import net.minecraft.item.ItemStack; -import net.minecraft.util.DamageSource; -import net.minecraft.world.World; - -public class CinderItemFood extends LOTRItemFood { - - private int damageAmount; - public CinderItemFood(int healAmount, float saturation, boolean canWolfEat) { - super(healAmount, saturation, canWolfEat); - } - - public CinderItemFood setdamageAmount(int i) { - this.damageAmount = i; - return this; - } - @Override - public ItemStack onEaten(ItemStack itemstack, World world, EntityPlayer entityplayer) { - if (!world.isRemote && this == LOTRMod.maggotyBread) { - LOTRLevelData.getData(entityplayer).addAchievement(LOTRAchievement.eatMaggotyBread); - } - if (this.damageAmount > 0) { - entityplayer.attackEntityFrom(DamageSource.onFire, (float)this.damageAmount); - } - return super.onEaten(itemstack, world, entityplayer); - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/CinderLoESpawnEgg.java b/src (1)/main/java/com/zivilon/cinder_loe/items/CinderLoESpawnEgg.java deleted file mode 100644 index 9a63149..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/CinderLoESpawnEgg.java +++ /dev/null @@ -1,145 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import com.zivilon.cinder_loe.LoECreativeTabs; -import com.zivilon.cinder_loe.entity.*; -import com.zivilon.cinder_loe.entity.corrupt.*; -import com.zivilon.cinder_loe.entity.npc.*; -import com.zivilon.cinder_loe.entity.npc.dwarf.RedDwarfArbalest; -import com.zivilon.cinder_loe.entity.npc.dwarf.RedDwarfBannerBearer; -import com.zivilon.cinder_loe.entity.npc.dwarf.RedDwarfCommander; -import com.zivilon.cinder_loe.entity.npc.dwarf.RedDwarfWarrior; -import com.zivilon.cinder_loe.entity.npc.evil_human.*; -import com.zivilon.cinder_loe.entity.npc.good_human.*; -import com.zivilon.cinder_loe.entity.npc.radagast.*; -import com.zivilon.cinder_loe.entity.trader.*; - -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityList; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.MathHelper; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -import java.util.ArrayList; -import java.util.List; - -public class CinderLoESpawnEgg extends Item { - public static List> ENTITY_CLASSES = new ArrayList<>(); - public String entity_type; - - public CinderLoESpawnEgg() { - this.setTextureName("lotr:spawn_egg"); - this.setCreativeTab(LoECreativeTabs.tabSpawnLoE); - setHasSubtypes(true); - } - - @Override - public String getUnlocalizedName(ItemStack item) { - return "item.spawn_egg_" + getEntityUnlocalizedName(item.getItemDamage()).replaceFirst("^cinder_loe\\.", ""); - } - - public static Class getEntityClass(int meta) { - if (meta >= 0 && meta < ENTITY_CLASSES.size()) { - return ENTITY_CLASSES.get(meta); - } - return Renegade.class; - } - - public static String getEntityUnlocalizedName(int meta) { - Class entityClass = getEntityClass(meta); - String unlocalizedName = (String) EntityList.classToStringMapping.get(entityClass); - return unlocalizedName != null ? unlocalizedName : "Unknown"; - } - - static { - ENTITY_CLASSES.add(Renegade.class); - ENTITY_CLASSES.add(RenegadeCaptain.class); - ENTITY_CLASSES.add(DarkSpider.class); - ENTITY_CLASSES.add(Wraith.class); - ENTITY_CLASSES.add(Limwaith.class); - ENTITY_CLASSES.add(LimwaithBoneWarrior.class); - ENTITY_CLASSES.add(LimwaithWarrior.class); - ENTITY_CLASSES.add(LimwaithBlowgunner.class); - ENTITY_CLASSES.add(LimwaithBannerBearer.class); - ENTITY_CLASSES.add(LimwaithChieftain.class); - ENTITY_CLASSES.add(RedDwarfWarrior.class); - ENTITY_CLASSES.add(RedDwarfArbalest.class); - ENTITY_CLASSES.add(RedDwarfBannerBearer.class); - ENTITY_CLASSES.add(RedDwarfCommander.class); - ENTITY_CLASSES.add(ArnorSoldier.class); - ENTITY_CLASSES.add(ArnorSoldierArcher.class); - ENTITY_CLASSES.add(ArnorBannerBearer.class); - ENTITY_CLASSES.add(BattleNun.class); - ENTITY_CLASSES.add(ArnorCaptain.class); - ENTITY_CLASSES.add(BreeSoldier.class); - ENTITY_CLASSES.add(BreeCrossbowman.class); - ENTITY_CLASSES.add(BreeOutrider.class); - ENTITY_CLASSES.add(BreeSoldierBannerBearer.class); - ENTITY_CLASSES.add(BreeCaptain.class); - ENTITY_CLASSES.add(FangornElk.class); - ENTITY_CLASSES.add(FangornBear.class); - ENTITY_CLASSES.add(FangornWildBoar.class); - ENTITY_CLASSES.add(FangornWolf.class); - ENTITY_CLASSES.add(FangornAuroch.class); - ENTITY_CLASSES.add(BladorthinSmith.class); - ENTITY_CLASSES.add(LimwaithFishmonger.class); - ENTITY_CLASSES.add(LimwaithShaman.class); - ENTITY_CLASSES.add(RedDwarfSmith.class); - ENTITY_CLASSES.add(CorruptDwarf.class); - ENTITY_CLASSES.add(CorruptElf.class); - ENTITY_CLASSES.add(CorruptEnt.class); - ENTITY_CLASSES.add(CorruptHobbit.class); - ENTITY_CLASSES.add(CorruptMan.class); - ENTITY_CLASSES.add(CorruptOrc.class); - ENTITY_CLASSES.add(HobbitBannerBearer.class); - } - - @Override - public void getSubItems(Item item, CreativeTabs tab, List list) { - for (int i = 0; i < ENTITY_CLASSES.size(); i++) { - list.add(new ItemStack(item, 1, i)); - } - } - - public static void spawnCustomCreature(World world, Entity entity) { - if (entity instanceof EntityLiving) { - EntityLiving entityLiving = (EntityLiving)entity; - - entityLiving.onSpawnWithEgg(null); - - world.spawnEntityInWorld(entity); - entityLiving.playLivingSound(); - } - } - - @Override - public ItemStack onItemRightClick(ItemStack itemStack, World world, EntityPlayer player) { - if (!world.isRemote) { - MovingObjectPosition target = getMovingObjectPositionFromPlayer(world, player, true); - - if (target != null && target.typeOfHit == MovingObjectPosition.MovingObjectType.BLOCK) { - int x = target.blockX; - int y = target.blockY; - int z = target.blockZ; - - y += 1; - - try { - Entity entity = getEntityClass(itemStack.getItemDamage()).getConstructor(World.class).newInstance(world); - entity.setLocationAndAngles(x + 0.5, y, z + 0.5, MathHelper.wrapAngleTo180_float(world.rand.nextFloat() * 360.0F), 0.0F); - spawnCustomCreature(world, entity); - } catch (Exception e) { - e.printStackTrace(); - } - } - } - if (!player.capabilities.isCreativeMode) { - --itemStack.stackSize; - } - return itemStack; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/ForgingKit.java b/src (1)/main/java/com/zivilon/cinder_loe/items/ForgingKit.java deleted file mode 100644 index 29c4b06..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/ForgingKit.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import lotr.common.item.LOTRMaterial; -import lotr.common.item.LOTRItemSword; -import com.zivilon.cinder_loe.LoECreativeTabs; -import net.minecraft.block.Block; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; - -import java.util.List; - -public class ForgingKit extends Item { - public IIcon[] icons; - - public ForgingKit() { - this.setHasSubtypes(true); - setMaxStackSize(64); - this.setMaxDamage(0); - setCreativeTab(LoECreativeTabs.tabMiscLoE); - } - - @Override - public IIcon getIconFromDamage(int damage) { - if (damage < 0 || damage >= icons.length) { - damage = 0; - } - return this.icons[damage]; - } - - @Override - public void registerIcons(IIconRegister iconRegister) { - this.icons = new IIcon[2]; - this.icons[0] = iconRegister.registerIcon("lotr:repair_kit"); - this.icons[1] = iconRegister.registerIcon("lotr:upgrade_kit"); - } - - @Override - public String getUnlocalizedName(ItemStack item) { - switch(item.getItemDamage()) { - case 0: - return "item.repair_kit"; - case 1: - return "item.upgrade_kit"; - default: - return "item.repair_kit"; - } - } - - @Override - public void getSubItems(Item item, CreativeTabs tab, List list) { - for (int i = 0; i < icons.length; i++) { - list.add(new ItemStack(item, 1, i)); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/LoEArmor.java b/src (1)/main/java/com/zivilon/cinder_loe/items/LoEArmor.java deleted file mode 100644 index 087e536..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/LoEArmor.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import lotr.common.item.LOTRMaterial; -import lotr.common.item.LOTRItemArmor; -import com.zivilon.cinder_loe.LoECreativeTabs; -import net.minecraft.block.Block; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; - -public class LoEArmor extends LOTRItemArmor { - public Item repair_item; - - public LoEArmor(LOTRMaterial material, int slotType) { - this(material, slotType, ""); - } - public LoEArmor(LOTRMaterial material, int slotType, String s) { - this(material, slotType, s, (Item) null); - } - public LoEArmor(LOTRMaterial material, int slotType, Item item) { - this(material, slotType, "", item); - } - public LoEArmor(LOTRMaterial material, int slotType, Block block) { - this(material, slotType, "", block); - } - public LoEArmor(LOTRMaterial material, int slotType, String s, Block block) { - this(material, slotType, s, Item.getItemFromBlock(block)); - } - public LoEArmor(LOTRMaterial material, int slotType, String s, Item item) { - super(material, slotType, s); - repair_item = item; - setCreativeTab(LoECreativeTabs.tabCombatLoE); - } - - @Override - public boolean getIsRepairable(ItemStack item, ItemStack repair_material) { - if (repair_material.getItem() == repair_item) - return true; - return false; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/LoEBow.java b/src (1)/main/java/com/zivilon/cinder_loe/items/LoEBow.java deleted file mode 100644 index c412569..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/LoEBow.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import lotr.common.item.LOTRMaterial; -import lotr.common.item.LOTRItemBow; -import com.zivilon.cinder_loe.LoECreativeTabs; -import net.minecraft.block.Block; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; - -public class LoEBow extends LOTRItemBow { - public Item repair_item; - - public LoEBow(LOTRMaterial material) { - this(material, (Item) null, 1.0D); - } - public LoEBow(LOTRMaterial material, Block repair_block) { - this(material, Item.getItemFromBlock(repair_block), 1.0D); - } - public LoEBow(LOTRMaterial material, Block repair_block, double damage) { - this(material, Item.getItemFromBlock(repair_block), damage); - } - public LoEBow(LOTRMaterial material, double damage, Block repair_block) { - this(material, Item.getItemFromBlock(repair_block), damage); - } - public LoEBow(LOTRMaterial material, double damage) { - this(material, (Item) null, damage); - } - public LoEBow(LOTRMaterial material, double damage, Item item) { - this(material, item, damage); - } - public LoEBow(LOTRMaterial material, Item item, double damage) { - super(material, damage); - repair_item = item; - setCreativeTab(LoECreativeTabs.tabCombatLoE); - } - - @Override - public boolean getIsRepairable(ItemStack item, ItemStack repair_material) { - if (repair_material.getItem() == repair_item) - return true; - return false; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/LoEHammer.java b/src (1)/main/java/com/zivilon/cinder_loe/items/LoEHammer.java deleted file mode 100644 index a035da6..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/LoEHammer.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import lotr.common.item.LOTRMaterial; -import lotr.common.item.LOTRItemHammer; -import com.zivilon.cinder_loe.LoECreativeTabs; -import net.minecraft.block.Block; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; - -public class LoEHammer extends LOTRItemHammer { - public Item repair_item; - - public LoEHammer(LOTRMaterial material) { - this(material, (Item) null); - } - public LoEHammer(LOTRMaterial material, Block repair_block) { - this(material, Item.getItemFromBlock(repair_block)); - } - public LoEHammer(LOTRMaterial material, Item item) { - super(material); - repair_item = item; - setCreativeTab(LoECreativeTabs.tabCombatLoE); - } - - @Override - public boolean getIsRepairable(ItemStack item, ItemStack repair_material) { - if (repair_material.getItem() == repair_item) - return true; - return false; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/LoEItemMug.java b/src (1)/main/java/com/zivilon/cinder_loe/items/LoEItemMug.java deleted file mode 100644 index 5d39b8b..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/LoEItemMug.java +++ /dev/null @@ -1,103 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import com.zivilon.cinder_loe.LoECreativeTabs; -import com.zivilon.cinder_loe.potion.LoEPotions; - -import lotr.common.item.LOTRItemMug; -import lotr.common.item.LOTRItemMug.Vessel; -import lotr.client.render.LOTRDrinkIcons; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.item.ItemStack; -import net.minecraft.potion.Potion; -import net.minecraft.potion.PotionEffect; -import net.minecraft.util.IIcon; -import net.minecraft.world.World; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -public class LoEItemMug extends LOTRItemMug { - public boolean is_toxic = false; - - @SideOnly(Side.CLIENT) - public IIcon[] drinkIcons; - - @SideOnly(Side.CLIENT) - public IIcon liquidIcon; - - public LoEItemMug(boolean full, boolean food) { - super(full, food, false, 0.0F); - } - - public LoEItemMug(float alc) { - this(true, false, true, alc); - } - - public LoEItemMug(boolean full, boolean food, boolean brew, float alc) { - super(full, food, brew, alc); - setCreativeTab(LoECreativeTabs.tabFoodLoE); - } - - public void setTextureNameFromUnlocalizedName() { - String textureName = getUnlocalizedName().substring("item.".length()); // Strip the "item." prefix - this.setTextureName(textureName); - } - - public LoEItemMug addPotionEffect(int effect_id, int seconds) { - return (LoEItemMug)super.addPotionEffect(effect_id, seconds); - } - public LoEItemMug addPotionEffect(int effect_id, int seconds, int amplifier) { - this.potionEffects.add(new PotionEffect(effect_id, seconds * 20, amplifier)); - return this; - } - - public LoEItemMug setDrinkStats(int i, float f) { - return (LoEItemMug)super.setDrinkStats(i, f); - } - public void registerIcons(IIconRegister iconregister) { - if (this.isFullMug) { - this.drinkIcons = new IIcon[(Vessel.values()).length]; - for (int i = 0; i < (Vessel.values()).length; i++) { - this.drinkIcons[i] = LOTRDrinkIcons.registerDrinkIcon(iconregister, this, getIconString(), (Vessel.values()[i]).name); - } - this.liquidIcon = LOTRDrinkIcons.registerLiquidIcon(iconregister, this, getIconString()); - barrelGui_emptyBucketSlotIcon = iconregister.registerIcon("lotr:barrel_emptyBucketSlot"); - barrelGui_emptyMugSlotIcon = iconregister.registerIcon("lotr:barrel_emptyMugSlot"); - } else { - super.registerIcons(iconregister); - } - } - - public IIcon getIconFromDamage(int i) { - if (this.isFullMug) { - if (i == -1) - return this.liquidIcon; - int vessel = (getVessel(i)).id; - return this.drinkIcons[vessel]; - } - return super.getIconFromDamage(i); - } - - public static Vessel getVessel(int damage) { - int i = damage / vesselMeta; - return Vessel.forMeta(i); - } - public LoEItemMug toxic() { - is_toxic = true; - return this; - } - public ItemStack onEaten(ItemStack itemstack, World world, EntityPlayer entityplayer) { - if (is_toxic) - increment_toxin(entityplayer); - return super.onEaten(itemstack, world, entityplayer); - } - public void increment_toxin(EntityPlayer player) { - int effect_duration = 7200; // 360 seconds * 20 ticks - int effect_potency = 0; // Default to level 1 effect - PotionEffect potion = player.getActivePotionEffect(LoEPotions.herbal_poisoning); - if (potion != null) effect_potency = potion.getAmplifier() + 1; - player.addPotionEffect(new PotionEffect(LoEPotions.herbal_poisoning.id, effect_duration, effect_potency)); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/LoESpear.java b/src (1)/main/java/com/zivilon/cinder_loe/items/LoESpear.java deleted file mode 100644 index e875371..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/LoESpear.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import lotr.common.item.LOTRMaterial; -import lotr.common.item.LOTRItemSpear; -import com.zivilon.cinder_loe.LoECreativeTabs; -import net.minecraft.block.Block; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; - -public class LoESpear extends LOTRItemSpear { - public Item repair_item; - - public LoESpear(LOTRMaterial material) { - this(material, (Item) null); - } - public LoESpear(LOTRMaterial material, Block repair_block) { - this(material, Item.getItemFromBlock(repair_block)); - } - public LoESpear(LOTRMaterial material, Item item) { - super(material); - repair_item = item; - setCreativeTab(LoECreativeTabs.tabCombatLoE); - } - - @Override - public boolean getIsRepairable(ItemStack item, ItemStack repair_material) { - if (repair_material.getItem() == repair_item) - return true; - return false; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/LoESword.java b/src (1)/main/java/com/zivilon/cinder_loe/items/LoESword.java deleted file mode 100644 index 395f37a..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/LoESword.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import lotr.common.item.LOTRMaterial; -import lotr.common.item.LOTRItemSword; -import com.zivilon.cinder_loe.LoECreativeTabs; -import net.minecraft.block.Block; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; - -public class LoESword extends LOTRItemSword { - public Item repair_item; - - public LoESword(LOTRMaterial material) { - this(material, (Item) null); - } - public LoESword(LOTRMaterial material, Block repair_block) { - this(material, Item.getItemFromBlock(repair_block)); - } - public LoESword(LOTRMaterial material, Item item) { - super(material); - repair_item = item; - setCreativeTab(LoECreativeTabs.tabCombatLoE); - } - - public LoESword setWeaponDamage(float damage) { - this.lotrWeaponDamage = damage; - return this; - } - - @Override - public boolean getIsRepairable(ItemStack item, ItemStack repair_material) { - if (repair_material.getItem() == repair_item) - return true; - return false; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/PallandoStaff.java b/src (1)/main/java/com/zivilon/cinder_loe/items/PallandoStaff.java deleted file mode 100644 index 6c06934..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/PallandoStaff.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import cpw.mods.fml.common.network.simpleimpl.IMessage; -import java.util.List; -import lotr.common.LOTRCreativeTabs; -import lotr.common.LOTRLevelData; -import lotr.common.LOTRMod; -import lotr.common.fac.LOTRFaction; -import lotr.common.network.LOTRPacketHandler; -import lotr.common.network.LOTRPacketWeaponFX; - -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.EnumAction; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.potion.PotionEffect; -import net.minecraft.potion.Potion; -import net.minecraft.server.MinecraftServer; -import net.minecraft.util.DamageSource; -import net.minecraft.util.MathHelper; -import net.minecraft.world.World; - -import com.zivilon.cinder_loe.items.WizardStaff; - -public class PallandoStaff extends WizardStaff { - public PallandoStaff() { - super(); - } - - public ItemStack onEaten(ItemStack itemstack, World world, EntityPlayer entityplayer) { - entityplayer.swingItem(); - itemstack.damageItem(2, (EntityLivingBase)entityplayer); - world.playSoundAtEntity((Entity)entityplayer, "lotr:elf.woodElf_teleport", 2.0F, (Item.itemRand.nextFloat() - Item.itemRand.nextFloat()) * 0.2F + 1.0F); - LOTRFaction faction = getFaction(entityplayer); - if (!world.isRemote) { - List entities = world.getEntitiesWithinAABB(EntityLivingBase.class, ((Entity)entityplayer).boundingBox.expand(12.0D, 8.0D, 12.0D)); - if (!entities.isEmpty()) - for (int i = 0; i < entities.size(); i++) { - EntityLivingBase entity = entities.get(i); - if (entity != entityplayer) { - if (entity instanceof EntityLiving) { - EntityLiving entityliving = (EntityLiving)entity; - if (faction.isGoodRelation(LOTRMod.getNPCFaction((Entity)entityliving))) - continue; - } - if (entity instanceof EntityPlayer) - if (!MinecraftServer.getServer().isPVPEnabled() || LOTRLevelData.getData((EntityPlayer)entity).getAlignment(faction) > 0.0F) - continue; - - entity.addPotionEffect(new PotionEffect(Potion.weakness.id, 1200, 0)); - entity.addPotionEffect(new PotionEffect(Potion.moveSlowdown.id, 1200, 0)); - } - } - LOTRPacketWeaponFX packet = new LOTRPacketWeaponFX(LOTRPacketWeaponFX.Type.MACE_SAURON, (Entity)entityplayer); - LOTRPacketHandler.networkWrapper.sendToAllAround((IMessage)packet, LOTRPacketHandler.nearEntity((Entity)entityplayer, 64.0D)); - } - return itemstack; - } - - private LOTRFaction getFaction(EntityPlayer player) { - LOTRFaction faction = LOTRLevelData.getData(player).getPledgeFaction(); - if (faction == null) { - faction = LOTRFaction.RHUDEL; - } - return faction; - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/RadagastStaff.java b/src (1)/main/java/com/zivilon/cinder_loe/items/RadagastStaff.java deleted file mode 100644 index 8a469e9..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/RadagastStaff.java +++ /dev/null @@ -1,87 +0,0 @@ -package com.zivilon.cinder_loe.items; - - -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.passive.EntityAnimal; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.AxisAlignedBB; -import net.minecraft.world.World; - -import com.zivilon.cinder_loe.util.BlockPos; -import com.zivilon.cinder_loe.entity.npc.radagast.FangornBear; -import com.zivilon.cinder_loe.entity.npc.radagast.FangornWildBoar; -import com.zivilon.cinder_loe.entity.npc.radagast.FangornAuroch; -import com.zivilon.cinder_loe.entity.npc.radagast.FangornElk; -import com.zivilon.cinder_loe.entity.npc.radagast.FangornAnimal; - -import java.util.Random; - - -import java.util.List; - -public class RadagastStaff extends WizardStaff { - public RadagastStaff() { - super(); - } - - public ItemStack onEaten(ItemStack itemstack, World world, EntityPlayer entityplayer) { - entityplayer.swingItem(); - itemstack.damageItem(2, (EntityLivingBase)entityplayer); - if (!world.isRemote) { - BlockPos location = BlockPos.findSafeSpawnLocation(world, entityplayer); - if (location != null && !isAreaCrowded(world, entityplayer)) { - world.playSoundAtEntity((Entity)entityplayer, "lotr:ent.mallorn.summonEnt", 2.0F, (Item.itemRand.nextFloat() - Item.itemRand.nextFloat()) * 0.2F + 1.0F); - spawnAnimal(location, world); - } else { - world.playSoundAtEntity((Entity)entityplayer, "lotr:item.puff", 1.0F, 2.0F); - } - } - return itemstack; - } - - public boolean isAreaCrowded(World world, EntityPlayer player) { - int radius = 30; // Check within 30 blocks - int maxEntities = 10; // Maximum allowed nearby entities - - AxisAlignedBB checkArea = AxisAlignedBB.getBoundingBox( - player.posX - radius, player.posY - radius, player.posZ - radius, - player.posX + radius, player.posY + radius, player.posZ + radius - ); - List listAnimals = world.getEntitiesWithinAABB(EntityAnimal.class, checkArea); - List listFangornBear = world.getEntitiesWithinAABB(FangornAnimal.class, checkArea); - - // Combine counts from both lists - int totalAnimals = listAnimals.size() + listFangornBear.size(); - - return totalAnimals >= maxEntities; - } - - public void spawnAnimal(BlockPos location, World world) { - Random rand = new Random(); - int choice = rand.nextInt(4); // Generate a random number between 0 and 2 - - EntityLivingBase entity = null; - switch (choice) { - case 0: - entity = new FangornBear(world); // Assuming FangornBear is your entity class for bears - break; - case 1: - entity = new FangornWildBoar(world); // Replace with your wild boar entity class - break; - case 2: - entity = new FangornAuroch(world); // Replace with your auroch entity class - break; - case 3: - entity = new FangornElk(world); // Replace with your auroch entity class - break; - } - - if (entity != null) { - entity.setPosition(location.x + 0.5, location.y, location.z + 0.5); // Center the entity on the block - world.spawnEntityInWorld(entity); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/SarumanStaff.java b/src (1)/main/java/com/zivilon/cinder_loe/items/SarumanStaff.java deleted file mode 100644 index 46f3878..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/SarumanStaff.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import cpw.mods.fml.common.network.simpleimpl.IMessage; -import java.util.List; -import lotr.common.LOTRCreativeTabs; -import lotr.common.LOTRLevelData; -import lotr.common.LOTRMod; -import lotr.common.fac.LOTRFaction; -import lotr.common.network.LOTRPacketHandler; -import lotr.common.network.LOTRPacketWeaponFX; - -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.EnumAction; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.potion.PotionEffect; -import net.minecraft.potion.Potion; -import net.minecraft.server.MinecraftServer; -import net.minecraft.util.DamageSource; -import net.minecraft.util.MathHelper; -import net.minecraft.world.World; - -import com.zivilon.cinder_loe.items.WizardStaff; -import com.zivilon.cinder_loe.entity.SarumanFireball; - -public class SarumanStaff extends WizardStaff { - public SarumanStaff() { - super(); - } - - public ItemStack onEaten(ItemStack itemstack, World world, EntityPlayer entityplayer) { - entityplayer.swingItem(); - itemstack.damageItem(2, (EntityLivingBase)entityplayer); - world.playSoundAtEntity((Entity)entityplayer, "mob.ghast.fireball", 2.0F, (Item.itemRand.nextFloat() - Item.itemRand.nextFloat()) * 0.2F + 1.0F); - if (!world.isRemote) { - world.spawnEntityInWorld((Entity)new SarumanFireball(world, ((EntityLivingBase)entityplayer))); - LOTRPacketWeaponFX packet = new LOTRPacketWeaponFX(LOTRPacketWeaponFX.Type.MACE_SAURON, (Entity)entityplayer); - LOTRPacketHandler.networkWrapper.sendToAllAround((IMessage)packet, LOTRPacketHandler.nearEntity((Entity)entityplayer, 64.0D)); - } - return itemstack; - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/SarumanWhiteStaff.java b/src (1)/main/java/com/zivilon/cinder_loe/items/SarumanWhiteStaff.java deleted file mode 100644 index 68984f6..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/SarumanWhiteStaff.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import cpw.mods.fml.common.network.simpleimpl.IMessage; -import java.util.List; -import lotr.common.LOTRCreativeTabs; -import lotr.common.LOTRLevelData; -import lotr.common.LOTRMod; -import lotr.common.fac.LOTRFaction; -import lotr.common.network.LOTRPacketHandler; -import lotr.common.network.LOTRPacketWeaponFX; - -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.EnumAction; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.potion.PotionEffect; -import net.minecraft.potion.Potion; -import net.minecraft.server.MinecraftServer; -import net.minecraft.util.DamageSource; -import net.minecraft.util.MathHelper; -import net.minecraft.world.World; - -import com.zivilon.cinder_loe.items.WizardStaff; -import com.zivilon.cinder_loe.entity.SarumanWhiteFireball; - -public class SarumanWhiteStaff extends WizardStaff { - public SarumanWhiteStaff() { - super(); - } - - public ItemStack onEaten(ItemStack itemstack, World world, EntityPlayer entityplayer) { - entityplayer.swingItem(); - itemstack.damageItem(2, (EntityLivingBase)entityplayer); - world.playSoundAtEntity((Entity)entityplayer, "mob.ghast.fireball", 2.0F, (itemRand.nextFloat() - itemRand.nextFloat()) * 0.2F + 1.0F); - if (!world.isRemote) { - world.spawnEntityInWorld((Entity)new SarumanWhiteFireball(world, (EntityLivingBase)entityplayer)); - LOTRPacketWeaponFX packet = new LOTRPacketWeaponFX(LOTRPacketWeaponFX.Type.MACE_SAURON, (Entity)entityplayer); - LOTRPacketHandler.networkWrapper.sendToAllAround((IMessage)packet, LOTRPacketHandler.nearEntity((Entity)entityplayer, 64.0D)); - } - return itemstack; - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/UnnamedSpear.java b/src (1)/main/java/com/zivilon/cinder_loe/items/UnnamedSpear.java deleted file mode 100644 index 877da04..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/UnnamedSpear.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import lotr.common.item.LOTRItemSpear; -import lotr.common.item.LOTRItemSword; -import lotr.common.item.LOTRMaterial; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; - -public class UnnamedSpear extends LOTRItemSpear { - private static final double ARMOR_DAMAGE = 0.025; // Default is 5% - - public UnnamedSpear(LOTRMaterial material) { - super(material); - } - - @Override - public boolean hitEntity(ItemStack itemStack, EntityLivingBase target, EntityLivingBase attacker) { - if (target instanceof EntityPlayer) { - EntityPlayer player = (EntityPlayer) target; - for (int i = 0; i < 4; i++) { - ItemStack armorPiece = player.getCurrentArmor(i); - if (armorPiece != null) { - int currentDurabilty = armorPiece.getMaxDamage() - armorPiece.getItemDamage(); - int damageAmount = (int) (currentDurabilty * ARMOR_DAMAGE); - - if (damageAmount < 1) { - damageAmount = 1; - } - - armorPiece.damageItem(damageAmount, player); - } - } - } - return true; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/VoidDagger.java b/src (1)/main/java/com/zivilon/cinder_loe/items/VoidDagger.java deleted file mode 100644 index 96f7c06..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/VoidDagger.java +++ /dev/null @@ -1,177 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import com.zivilon.cinder_loe.entity.corrupt.*; -import lotr.common.LOTRLevelData; -import lotr.common.entity.npc.*; -import lotr.common.fac.LOTRFaction; -import lotr.common.item.LOTRItemDagger; -import lotr.common.item.LOTRItemSword; -import lotr.common.item.LOTRMaterial; -import lotr.common.item.LOTRWeaponStats; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IEntityLivingData; -import net.minecraft.entity.monster.EntityZombie; -import net.minecraft.entity.passive.EntityVillager; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.item.EnumAction; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.potion.Potion; -import net.minecraft.potion.PotionEffect; -import net.minecraft.world.EnumDifficulty; -import net.minecraft.world.World; - -public class VoidDagger extends LOTRItemDagger { - public VoidDagger(LOTRMaterial material) { - super(material); - } - private LOTRFaction getFaction(EntityPlayer player) { - LOTRFaction faction = LOTRLevelData.getData(player).getPledgeFaction(); - if (faction == null) { - faction = LOTRFaction.RUFFIAN; - } - return faction; - } - - @Override - public boolean hitEntity(ItemStack itemstack, EntityLivingBase target, EntityLivingBase attacker) { - itemstack.damageItem(1, attacker); - - // Check if the target is dead and call the onKillEntity method - if (target.getHealth() <= 0.0F) { - onKillEntity(target, attacker); - } - - return true; - } - public void onKillEntity(EntityLivingBase entityKilled, EntityLivingBase killer) { - if (killer instanceof EntityPlayer) { - EntityPlayer player = (EntityPlayer) killer; - LOTRFaction faction = getFaction(player); - entityKilled.worldObj.playSoundAtEntity(player, "mob.zombie.unfect", 1F,1F); - - if (!entityKilled.worldObj.isRemote && entityKilled instanceof LOTREntityOrc) { - CorruptOrc corruptOrc = new CorruptOrc(entityKilled.worldObj); - corruptOrc.copyLocationAndAnglesFrom(entityKilled); - - for (int i = 0; i < 4; i++) { - ItemStack armor = entityKilled.getEquipmentInSlot(i + 1); // Armor slots - corruptOrc.setCurrentItemOrArmor(i + 1, armor); - } - - ItemStack mainWeapon = ((LOTREntityOrc) entityKilled).npcItemsInv.getMeleeWeapon(); // Main hand weapon - corruptOrc.npcItemsInv.setIdleItem(mainWeapon); - corruptOrc.npcItemsInv.setMeleeWeapon(mainWeapon); - corruptOrc.setHealth(10); - corruptOrc.addPotionEffect(new PotionEffect(Potion.regeneration.id, 9999, 0)); - - entityKilled.worldObj.removeEntity(entityKilled); - corruptOrc.onSpawnWithEgg((IEntityLivingData) null); - - entityKilled.worldObj.spawnEntityInWorld(corruptOrc); - entityKilled.worldObj.playAuxSFXAtEntity(null, 1016, (int) corruptOrc.posX, (int) corruptOrc.posY, (int) corruptOrc.posZ, 0); - - } - if (!entityKilled.worldObj.isRemote && entityKilled instanceof LOTREntityMan && !(entityKilled instanceof LOTREntityHobbit)) { - - CorruptMan entity = new CorruptMan(entityKilled.worldObj); - entity.copyLocationAndAnglesFrom(entityKilled); - - for (int i = 0; i < 4; i++) { - ItemStack armor = entityKilled.getEquipmentInSlot(i + 1); // Armor slots - entity.setCurrentItemOrArmor(i + 1, armor); - } - - ItemStack mainWeapon = ((LOTREntityMan) entityKilled).npcItemsInv.getMeleeWeapon(); // Main hand weapon - entity.npcItemsInv.setIdleItem(mainWeapon); - entity.npcItemsInv.setMeleeWeapon(mainWeapon); - entity.setHealth(10); - entity.addPotionEffect(new PotionEffect(Potion.regeneration.id, 9999, 0)); - - entityKilled.worldObj.removeEntity(entityKilled); - entity.onSpawnWithEgg((IEntityLivingData) null); - - entityKilled.worldObj.spawnEntityInWorld(entity); - entityKilled.worldObj.playAuxSFXAtEntity(null, 1016, (int) entity.posX, (int) entity.posY, (int) entity.posZ, 0); - } - } - if (entityKilled instanceof LOTREntityHobbit) { - CorruptHobbit entity = new CorruptHobbit(entityKilled.worldObj); - entity.copyLocationAndAnglesFrom(entityKilled); - - for (int i = 0; i < 4; i++) { - ItemStack armor = entityKilled.getEquipmentInSlot(i + 1); // Armor slots - entity.setCurrentItemOrArmor(i + 1, armor); - } - - ItemStack mainWeapon = ((LOTREntityHobbit) entityKilled).npcItemsInv.getMeleeWeapon(); // Main hand weapon - entity.npcItemsInv.setIdleItem(mainWeapon); - entity.npcItemsInv.setMeleeWeapon(mainWeapon); - entity.setHealth(10); - entity.addPotionEffect(new PotionEffect(Potion.regeneration.id, 9999, 0)); - - entityKilled.worldObj.removeEntity(entityKilled); - entity.onSpawnWithEgg((IEntityLivingData) null); - - entityKilled.worldObj.spawnEntityInWorld(entity); - entityKilled.worldObj.playAuxSFXAtEntity(null, 1016, (int) entity.posX, (int) entity.posY, (int) entity.posZ, 0); - } - if (!entityKilled.worldObj.isRemote && entityKilled instanceof LOTREntityEnt) { - CorruptEnt entity = new CorruptEnt(entityKilled.worldObj); - entity.copyLocationAndAnglesFrom(entityKilled); - - entityKilled.worldObj.removeEntity(entityKilled); - entity.onSpawnWithEgg((IEntityLivingData) null); - entity.setHealth(10); - entity.addPotionEffect(new PotionEffect(Potion.regeneration.id, 9999, 0)); - - entityKilled.worldObj.spawnEntityInWorld(entity); - entityKilled.worldObj.playAuxSFXAtEntity(null, 1016, (int) entity.posX, (int) entity.posY, (int) entity.posZ, 0); - } - if (!entityKilled.worldObj.isRemote && entityKilled instanceof LOTREntityElf) { - CorruptElf entity = new CorruptElf(entityKilled.worldObj); - entity.copyLocationAndAnglesFrom(entityKilled); - - for (int i = 0; i < 4; i++) { - ItemStack armor = entityKilled.getEquipmentInSlot(i + 1); // Armor slots - entity.setCurrentItemOrArmor(i + 1, armor); - } - entity.setHealth(10); - entity.addPotionEffect(new PotionEffect(Potion.regeneration.id, 9999, 0)); - - ItemStack mainWeapon = ((LOTREntityElf) entityKilled).npcItemsInv.getMeleeWeapon(); // Main hand weapon - entity.npcItemsInv.setIdleItem(mainWeapon); - entity.npcItemsInv.setMeleeWeapon(mainWeapon); - - entityKilled.worldObj.removeEntity(entityKilled); - entity.onSpawnWithEgg((IEntityLivingData) null); - - entityKilled.worldObj.spawnEntityInWorld(entity); - entityKilled.worldObj.playAuxSFXAtEntity(null, 1016, (int) entity.posX, (int) entity.posY, (int) entity.posZ, 0); - } - if (!entityKilled.worldObj.isRemote && entityKilled instanceof LOTREntityDwarf) { - CorruptDwarf entity = new CorruptDwarf(entityKilled.worldObj); - entity.copyLocationAndAnglesFrom(entityKilled); - - - for (int i = 0; i < 4; i++) { - ItemStack armor = entityKilled.getEquipmentInSlot(i + 1); // Armor slots - entity.setCurrentItemOrArmor(i + 1, armor); - } - - ItemStack mainWeapon = ((LOTREntityDwarf) entityKilled).npcItemsInv.getMeleeWeapon(); // Main hand weapon - entity.npcItemsInv.setIdleItem(mainWeapon); - entity.npcItemsInv.setMeleeWeapon(mainWeapon); - entity.setHealth(10); - entity.addPotionEffect(new PotionEffect(Potion.regeneration.id, 9999, 0)); - - entityKilled.worldObj.removeEntity(entityKilled); - entity.onSpawnWithEgg((IEntityLivingData) null); - - entityKilled.worldObj.spawnEntityInWorld(entity); - entityKilled.worldObj.playAuxSFXAtEntity(null, 1016, (int) entity.posX, (int) entity.posY, (int) entity.posZ, 0); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/WarDart.java b/src (1)/main/java/com/zivilon/cinder_loe/items/WarDart.java deleted file mode 100644 index 02e0e13..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/WarDart.java +++ /dev/null @@ -1,164 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import com.zivilon.cinder_loe.entity.projectile.EntityWarDart; -import com.zivilon.cinder_loe.LoECreativeTabs; - -import lotr.common.dispenser.LOTRDispenseThrowingAxe; -import lotr.common.enchant.LOTREnchantment; -import lotr.common.enchant.LOTREnchantmentHelper; -import lotr.common.entity.projectile.LOTREntityThrowingAxe; -import lotr.common.item.LOTRMaterial; -import lotr.common.recipe.LOTRRecipes; -import net.minecraft.block.BlockDispenser; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.enchantment.Enchantment; -import net.minecraft.enchantment.EnchantmentHelper; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.EnumCreatureAttribute; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.util.IIcon; -import net.minecraft.util.EnumChatFormatting; -import net.minecraft.creativetab.CreativeTabs; -import java.util.List; - -public class WarDart extends Item { - public IIcon[] icons; - - public WarDart() { - this.setHasSubtypes(true); - setMaxStackSize(4); - this.setMaxDamage(0); - setCreativeTab(LoECreativeTabs.tabCombatLoE); - } - - @Override - public ItemStack onItemRightClick(ItemStack itemStack, World world, EntityPlayer player) { - if (itemStack.getItemDamage() > 0) { - if (!player.capabilities.isCreativeMode) { - --itemStack.stackSize; - } - - world.playSoundAtEntity(player, "lotr:item.dart", 1.0F, 1.0F / (itemRand.nextFloat() * 0.4F + 1.2F)); - - if (!world.isRemote) { - world.spawnEntityInWorld(new EntityWarDart(world, player, itemStack)); - } - } - return itemStack; - } - - @Override - public IIcon getIconFromDamage(int damage) { - if (damage < 0 || damage >= icons.length) { - damage = 0; - } - return this.icons[damage]; - } - - @Override - public void registerIcons(IIconRegister iconRegister) { - this.icons = new IIcon[15]; - this.icons[0] = iconRegister.registerIcon("lotr:war_dart_headless"); - this.icons[1] = iconRegister.registerIcon("lotr:war_dart_copper"); - this.icons[2] = iconRegister.registerIcon("lotr:war_dart_bronze"); - this.icons[3] = iconRegister.registerIcon("lotr:war_dart_iron"); - this.icons[4] = iconRegister.registerIcon("lotr:war_dart_orc"); - this.icons[5] = iconRegister.registerIcon("lotr:war_dart_dwarven"); - this.icons[6] = iconRegister.registerIcon("lotr:war_dart_uruk"); - this.icons[7] = iconRegister.registerIcon("lotr:war_dart_blue_dwarven"); - this.icons[8] = iconRegister.registerIcon("lotr:war_dart_black_uruk"); - this.icons[9] = iconRegister.registerIcon("lotr:war_dart_elven"); - this.icons[10] = iconRegister.registerIcon("lotr:war_dart_gilded_iron"); - this.icons[11] = iconRegister.registerIcon("lotr:war_dart_red_dwarven"); - this.icons[12] = iconRegister.registerIcon("lotr:war_dart_mithril"); - this.icons[13] = iconRegister.registerIcon("lotr:war_dart_ancient"); - this.icons[14] = iconRegister.registerIcon("lotr:war_dart_morgul"); - } - - public static String getDartMaterial(ItemStack item) { - switch(item.getItemDamage()) { - case 1: - return "copper"; - case 2: - return "bronze"; - case 3: - return "iron"; - case 4: - return "orc"; - case 5: - return "dwarven"; - case 6: - return "uruk"; - case 7: - return "blue_dwarven"; - case 8: - return "black_uruk"; - case 9: - return "elven"; - case 10: - return "gilded_iron"; - case 11: - return "red_dwarven"; - case 12: - return "mithril"; - case 13: - return "ancient"; - case 14: - return "morgul"; - default: - return "headless"; - } - } - - @Override - public String getUnlocalizedName(ItemStack item) { - return "item.war_dart_" + getDartMaterial(item); - } - - @Override - public int getMetadata(int damage) { - return damage; - } - - public static double getDamageFromMeta(int meta) { - switch(meta) { - case 1: return 5.5D; // Copper - case 2: return 5.5D; // Bronze - case 3: return 6.0D; // Iron - case 4: return 6.5D; // Orc - case 5: return 7.0D; // Dwarven - case 6: return 7.0D; // Uruk - case 7: return 7.0D; // Blue Dwarven - case 8: return 7.0D; // Black Uruk - case 9: return 7.0D; // Elven - case 10: return 6.5D; // Gilded Iron - case 11: return 7.0D; // Red Dwarven - case 12: return 9.0D; // Mithril - case 13: return 12.0D; // Ancient - case 14: return 6.5D; // Morgul - default: return 0.0D; - } - } - - @Override - public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean advanced) { - int damageMeta = stack.getItemDamage(); - if (damageMeta > 0) { - double damagePercent = getDamageFromMeta(damageMeta) * (1.0 / 8) * 100.0; - double roundedDamagePercent = 5 * Math.round(damagePercent / 5.0); - list.add(EnumChatFormatting.DARK_GREEN + "Ranged damage: " + roundedDamagePercent + "%"); - } - } - - @Override - public void getSubItems(Item item, CreativeTabs tab, List list) { - for (int i = 0; i < icons.length; i++) { - list.add(new ItemStack(item, 1, i)); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/WarDartHeads.java b/src (1)/main/java/com/zivilon/cinder_loe/items/WarDartHeads.java deleted file mode 100644 index e5f5abd..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/WarDartHeads.java +++ /dev/null @@ -1,89 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import com.zivilon.cinder_loe.LoECreativeTabs; - -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; - -import java.util.List; - -public class WarDartHeads extends Item { - public IIcon[] icons; - - public WarDartHeads() { - super(); - this.setCreativeTab(LoECreativeTabs.tabMiscLoE); - setHasSubtypes(true); - } - - @Override - public void registerIcons(IIconRegister iconRegister) { - icons = new IIcon[12]; - for (int i = 0; i < 6; i++) { - icons[i] = iconRegister.registerIcon("lotr:war_dart_heads_" + i); - } - for (int i = 0; i < 6; i++) { - icons[i + 6] = iconRegister.registerIcon("lotr:war_dart_heads_" + i + "_morgul"); - } - } - - @Override - public String getUnlocalizedName(ItemStack item) { - return "item.war_dart_heads_" + WarDart.getDartMaterial(item); - } - - @Override - public int getColorFromItemStack(ItemStack stack, int renderPass) { - int damage = stack.getItemDamage(); - - switch (damage) { - case 1: return 0xCA6C40; // Copper - case 2: return 0xC28336; // Bronze - case 3: return 0xD8D8D8; // Iron - case 4: return 0x5D685A; // Orc - case 5: return 0x6B787A; // Dwarven - case 6: return 0x4C4D34; // Uruk - case 7: return 0x577287; // Blue Dwarven - case 8: return 0x444138; // Black Uruk - case 9: return 0xD0C9AC; // Elven - case 10: return 0xFFFFB0; // Gilded Iron - case 11: return 0xFFC48B; // Red dwarven - case 12: return 0xAFB3D3; // Mithril - case 13: return 0x335753; // Ancient - case 14: return 16777215; // Morgul - default: return 0xFFFFFF; // Blank - } - } - - @Override - public IIcon getIconIndex(ItemStack item) { - return getIcon(item, 0); - } - - @Override - public IIcon getIcon(ItemStack stack, int renderPass) { - int count = stack.stackSize; - int dmg = stack.getItemDamage(); - - if (count > 5 || count < 1) { - if (dmg == 14) - return icons[6]; - return icons[0]; - } else { - if (dmg == 14) - return icons[count + 6]; - return icons[count]; - } - } - - @Override - public void getSubItems(Item item, CreativeTabs tab, List list) { - for (int i = 1; i < 15; i++) { - list.add(new ItemStack(item, 1, i)); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/Whip.java b/src (1)/main/java/com/zivilon/cinder_loe/items/Whip.java deleted file mode 100644 index dc08139..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/Whip.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import com.zivilon.cinder_loe.LoECreativeTabs; - -import java.util.ArrayList; -import java.util.List; - -import lotr.common.LOTRBannerProtection; -import lotr.common.LOTRMod; -import lotr.common.enchant.LOTREnchantment; -import lotr.common.enchant.LOTREnchantmentHelper; -import lotr.common.item.LOTRItemSword; -import lotr.common.item.LOTRMaterial; -import lotr.common.item.LOTRWeaponStats; - -import net.minecraft.block.Block; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Blocks; -import net.minecraft.init.Items; -import net.minecraft.item.EnumAction; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.AxisAlignedBB; -import net.minecraft.util.DamageSource; -import net.minecraft.util.MathHelper; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.util.Vec3; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -public class Whip extends LOTRItemSword { - public Whip() { - super(LOTRMaterial.FUR); - this.setCreativeTab(LoECreativeTabs.tabCombatLoE); - this.lotrWeaponDamage = 4.0F; - LOTRWeaponStats.registerMeleeReach(Whip.class, 1.5F); - } - - public boolean func_77644_a(ItemStack itemstack, EntityLivingBase hitEntity, EntityLivingBase user) { - super.hitEntity(itemstack, hitEntity, user); - launchWhip(user, hitEntity); - return true; - } - - public EnumAction getItemUseAction(ItemStack itemstack) { - return EnumAction.none; - } - - private void launchWhip(EntityLivingBase user, EntityLivingBase hitEntity) { - World world = ((Entity)user).worldObj; - world.playSoundAtEntity((Entity)user, "lotr:item.balrogWhip", 2.0F, 0.7F + Item.itemRand.nextFloat() * 0.6F); - } - - public boolean getIsRepairable(ItemStack itemstack, ItemStack repairItem) { - return (repairItem.getItem() == Items.leather); - } - - private void checkIncompatibleModifiers(ItemStack itemstack) {} -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/WizardStaff.java b/src (1)/main/java/com/zivilon/cinder_loe/items/WizardStaff.java deleted file mode 100644 index ffaa2df..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/WizardStaff.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import com.zivilon.cinder_loe.LoECreativeTabs; - -import cpw.mods.fml.common.network.simpleimpl.IMessage; -import lotr.common.entity.projectile.LOTREntityGandalfFireball; -import lotr.common.network.LOTRPacketHandler; -import lotr.common.network.LOTRPacketWeaponFX; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.EnumAction; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; - -import lotr.common.item.LOTRItemSword; -import lotr.common.item.LOTRStoryItem; - -import com.zivilon.cinder_loe.CinderLoE; - -public class WizardStaff extends LOTRItemSword implements LOTRStoryItem { - public WizardStaff() { - super(CinderLoE.getLOTRMaterialByName("WIZARD")); - this.setCreativeTab(LoECreativeTabs.tabCharacterLoE); - } - - public int getMaxItemUseDuration(ItemStack itemstack) { - return 40; - } - - public EnumAction getItemUseAction(ItemStack itemstack) { - return EnumAction.bow; - } - - public ItemStack onItemRightClick(ItemStack itemstack, World world, EntityPlayer entityplayer) { - entityplayer.setItemInUse(itemstack, getMaxItemUseDuration(itemstack)); - return itemstack; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/WoodElfRelic.java b/src (1)/main/java/com/zivilon/cinder_loe/items/WoodElfRelic.java deleted file mode 100644 index 60e0fe1..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/WoodElfRelic.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import com.zivilon.cinder_loe.CinderLoE; -import cpw.mods.fml.common.network.simpleimpl.IMessage; -import lotr.common.LOTRLevelData; -import lotr.common.LOTRMod; -import lotr.common.fac.LOTRFaction; -import lotr.common.item.LOTRItemSword; -import lotr.common.item.LOTRStoryItem; -import lotr.common.network.LOTRPacketHandler; -import lotr.common.network.LOTRPacketWeaponFX; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.potion.Potion; -import net.minecraft.potion.PotionEffect; -import net.minecraft.server.MinecraftServer; -import net.minecraft.world.World; - -import java.util.List; - -public class WoodElfRelic extends WizardStaff { - public WoodElfRelic() { - super(); - } - - - public ItemStack onEaten(ItemStack itemstack, World world, EntityPlayer entityplayer) { - entityplayer.swingItem(); - itemstack.damageItem(2, (EntityLivingBase) entityplayer); - world.playSoundAtEntity((Entity) entityplayer, "lotr:elf.woodElf_teleport", 2.0F, (Item.itemRand.nextFloat() - Item.itemRand.nextFloat()) * 0.2F + 1.0F); - LOTRFaction faction = LOTRLevelData.getData(entityplayer).getPledgeFaction(); - LOTRFaction woodElfFaction = LOTRFaction.WOOD_ELF; - - if (!world.isRemote) { - List entities = world.getEntitiesWithinAABB(EntityLivingBase.class, ((Entity) entityplayer).boundingBox.expand(12.0D, 8.0D, 12.0D)); - if (!entities.isEmpty()) { - for (EntityLivingBase entity : entities) { - if (entity != entityplayer) { - if (entity instanceof EntityLiving) { - EntityLiving entityliving = (EntityLiving) entity; - if (LOTRMod.getNPCFaction((Entity) entityliving) != woodElfFaction) { - continue; - } - } - - if (entity instanceof EntityPlayer) { - if (!MinecraftServer.getServer().isPVPEnabled() || LOTRLevelData.getData((EntityPlayer) entity).getAlignment(faction) < 0.0F) { - continue; - } - } - - entity.addPotionEffect(new PotionEffect(Potion.moveSpeed.id, 1200, 0)); - entity.addPotionEffect(new PotionEffect(Potion.damageBoost.id, 1200, 0)); - } - } - } - - LOTRPacketWeaponFX packet = new LOTRPacketWeaponFX(LOTRPacketWeaponFX.Type.MACE_SAURON, (Entity) entityplayer); - LOTRPacketHandler.networkWrapper.sendToAllAround((IMessage) packet, LOTRPacketHandler.nearEntity((Entity) entityplayer, 64.0D)); - } - return itemstack; - } -} \ No newline at end of file diff --git a/src (1)/main/java/com/zivilon/cinder_loe/items/unitLevelTool.java b/src (1)/main/java/com/zivilon/cinder_loe/items/unitLevelTool.java deleted file mode 100644 index cadb92f..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/items/unitLevelTool.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.zivilon.cinder_loe.items; - -import com.zivilon.cinder_loe.CinderLoE; -import com.zivilon.cinder_loe.LoECreativeTabs; -import lotr.common.entity.npc.LOTREntityNPC; -import lotr.common.entity.npc.LOTRHiredNPCInfo; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.EnumAction; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ChatComponentText; -import net.minecraft.util.EnumChatFormatting; -import net.minecraft.world.World; - -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.util.ArrayList; -import java.util.List; - -public class unitLevelTool extends Item { - - public unitLevelTool() { - setCreativeTab(LoECreativeTabs.tabMiscLoE); - } - - public EnumAction getItemUseAction(ItemStack itemstack) { - return EnumAction.bow; - } - - @Override - public ItemStack onItemRightClick(ItemStack itemStack, World world, EntityPlayer player) { - List hiredNPCs = this.findHiredNPCsNearPlayer(player); - - if (!hiredNPCs.isEmpty()) { - for (LOTREntityNPC hiredNPC : hiredNPCs) { - if (hiredNPC != null && hiredNPC.hiredNPCInfo != null) { - try { - LOTRHiredNPCInfo npcInfo = hiredNPC.hiredNPCInfo; - - Method addExperienceMethod = LOTRHiredNPCInfo.class.getDeclaredMethod("addExperience", int.class); - addExperienceMethod.setAccessible(true); - - int xpToAdd = 1; - - try { - xpToAdd = Integer.parseInt(itemStack.getDisplayName()); - } catch (NumberFormatException e) { - player.addChatMessage(new ChatComponentText(EnumChatFormatting.RED + "Tool name wasnt a number, applying 1 Xp instead")); - continue; - } - - addExperienceMethod.invoke(npcInfo, xpToAdd); - - - } catch (Exception e) { - throw new RuntimeException(e); - } - } - } - } - return itemStack; - } - - private List findHiredNPCsNearPlayer(EntityPlayer player) { - // Logic to find all nearby hired NPCs within a certain range - double range = 20.0D; // Set the range within which the NPCs should be found - List nearbyHiredNPCs = new ArrayList<>(); - - for (Object entity : player.worldObj.getEntitiesWithinAABB(LOTREntityNPC.class, player.boundingBox.expand(range, range, range))) { - LOTREntityNPC npc = (LOTREntityNPC) entity; - - // Check if the player has sufficient permission level (admin tool usage) - if (npc.hiredNPCInfo.getHiringPlayerUUID() != null && player.canCommandSenderUseCommand(2, "")) { - nearbyHiredNPCs.add(npc); - } - } - - return nearbyHiredNPCs; - } - - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinEnchantmentHelper.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinEnchantmentHelper.java deleted file mode 100644 index 230f580..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinEnchantmentHelper.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import lotr.common.item.LOTRWeaponStats; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.enchantment.EnchantmentHelper; -import net.minecraft.enchantment.Enchantment; -import lotr.common.enchant.LOTREnchantmentHelper; - -@Mixin(EnchantmentHelper.class) -public class MixinEnchantmentHelper { - - /** - * @author Shinare - * @reason Having full knockbackResistance attribute now negates bonus knockback as well - */ - @Overwrite - public static int getKnockbackModifier(EntityLivingBase attacker, EntityLivingBase target) { - int vanilla_ench_level = EnchantmentHelper.getEnchantmentLevel(Enchantment.knockback.effectId, attacker.getHeldItem()); - int base_extra_knockback = LOTRWeaponStats.getBaseExtraKnockback(attacker.getHeldItem()); - int modifier_extra_knockback = LOTREnchantmentHelper.calcExtraKnockback(attacker.getHeldItem()); - if (target.getEntityAttribute(SharedMonsterAttributes.knockbackResistance).getAttributeValue() == 1.0D) return 0; - return vanilla_ench_level + base_extra_knockback + modifier_extra_knockback; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinEntity.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinEntity.java deleted file mode 100644 index a1e4e4c..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinEntity.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import net.minecraft.entity.Entity; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.gen.Accessor; - -@Mixin(Entity.class) -public interface MixinEntity { - - @Accessor("invulnerable") - void setInvulnerable(boolean invulnerable); -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinEntityArrow.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinEntityArrow.java deleted file mode 100644 index bda8bc1..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinEntityArrow.java +++ /dev/null @@ -1,305 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.Overwrite; -import lotr.common.item.LOTRWeaponStats; -import net.minecraft.entity.projectile.EntityArrow; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.enchantment.EnchantmentHelper; -import net.minecraft.enchantment.Enchantment; -import lotr.common.enchant.LOTREnchantmentHelper; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.network.play.server.S2BPacketChangeGameState; -import net.minecraft.util.AxisAlignedBB; -import net.minecraft.util.DamageSource; -import net.minecraft.util.MathHelper; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.util.Vec3; -import net.minecraft.world.World; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import java.util.List; -import net.minecraft.entity.monster.EntityEnderman; - -@Mixin(EntityArrow.class) -public abstract class MixinEntityArrow extends Entity { - - public MixinEntityArrow(World world) { - super(world); - } - - @Shadow - public abstract void setIsCritical(boolean p_70243_1_); - @Shadow - public abstract boolean getIsCritical(); - - @Shadow - private Block field_145790_g; - @Shadow - private int field_145791_d; - @Shadow - private int field_145792_e; - @Shadow - private int field_145789_f; - @Shadow - private boolean inGround; - @Shadow - public int arrowShake; - @Shadow - private int inData; - @Shadow - private int ticksInGround; - @Shadow - private int ticksInAir; - @Shadow - public Entity shootingEntity; - @Shadow - private int knockbackStrength; - @Shadow - private double damage; - - /** - * @author Shinare - * @reason Having full knockbackResistance attribute now negates bonus knockback as well - */ - @Overwrite - public void onUpdate() { - super.onUpdate(); - - EntityArrow arrow = (EntityArrow)(Object)this; - - if (this.prevRotationPitch == 0.0F && this.prevRotationYaw == 0.0F) { - float f = MathHelper.sqrt_double(this.motionX * this.motionX + this.motionZ * this.motionZ); - this.prevRotationYaw = this.rotationYaw = (float)(Math.atan2(this.motionX, this.motionZ) * 180.0D / Math.PI); - this.prevRotationPitch = this.rotationPitch = (float)(Math.atan2(this.motionY, (double)f) * 180.0D / Math.PI); - } - - Block block = this.worldObj.getBlock(this.field_145791_d, this.field_145792_e, this.field_145789_f); - - if (block.getMaterial() != Material.air) { - block.setBlockBoundsBasedOnState(this.worldObj, this.field_145791_d, this.field_145792_e, this.field_145789_f); - AxisAlignedBB axisalignedbb = block.getCollisionBoundingBoxFromPool(this.worldObj, this.field_145791_d, this.field_145792_e, this.field_145789_f); - - if (axisalignedbb != null && axisalignedbb.isVecInside(Vec3.createVectorHelper(this.posX, this.posY, this.posZ))) { - this.inGround = true; - } - } - - if (this.arrowShake > 0) { - --this.arrowShake; - } - - if (this.inGround) { - int j = this.worldObj.getBlockMetadata(this.field_145791_d, this.field_145792_e, this.field_145789_f); - - if (block == this.field_145790_g && j == this.inData) { - ++this.ticksInGround; - - if (this.ticksInGround == 1200) { - this.setDead(); - } - } else { - this.inGround = false; - this.motionX *= (double)(this.rand.nextFloat() * 0.2F); - this.motionY *= (double)(this.rand.nextFloat() * 0.2F); - this.motionZ *= (double)(this.rand.nextFloat() * 0.2F); - this.ticksInGround = 0; - this.ticksInAir = 0; - } - } else { - ++this.ticksInAir; - Vec3 vec31 = Vec3.createVectorHelper(this.posX, this.posY, this.posZ); - Vec3 vec3 = Vec3.createVectorHelper(this.posX + this.motionX, this.posY + this.motionY, this.posZ + this.motionZ); - MovingObjectPosition movingobjectposition = this.worldObj.func_147447_a(vec31, vec3, false, true, false); - vec31 = Vec3.createVectorHelper(this.posX, this.posY, this.posZ); - vec3 = Vec3.createVectorHelper(this.posX + this.motionX, this.posY + this.motionY, this.posZ + this.motionZ); - - if (movingobjectposition != null) { - vec3 = Vec3.createVectorHelper(movingobjectposition.hitVec.xCoord, movingobjectposition.hitVec.yCoord, movingobjectposition.hitVec.zCoord); - } - - Entity entity = null; - List list = this.worldObj.getEntitiesWithinAABBExcludingEntity(this, this.boundingBox.addCoord(this.motionX, this.motionY, this.motionZ).expand(1.0D, 1.0D, 1.0D)); - double d0 = 0.0D; - int i; - float f1; - - for (i = 0; i < list.size(); ++i) { - Entity entity1 = (Entity)list.get(i); - - if (entity1.canBeCollidedWith() && (entity1 != this.shootingEntity || this.ticksInAir >= 5)) { - f1 = 0.3F; - AxisAlignedBB axisalignedbb1 = entity1.boundingBox.expand((double)f1, (double)f1, (double)f1); - MovingObjectPosition movingobjectposition1 = axisalignedbb1.calculateIntercept(vec31, vec3); - - if (movingobjectposition1 != null) { - double d1 = vec31.distanceTo(movingobjectposition1.hitVec); - - if (d1 < d0 || d0 == 0.0D) { - entity = entity1; - d0 = d1; - } - } - } - } - - if (entity != null) { - movingobjectposition = new MovingObjectPosition(entity); - } - - if (movingobjectposition != null && movingobjectposition.entityHit != null && movingobjectposition.entityHit instanceof EntityPlayer) { - EntityPlayer entityplayer = (EntityPlayer)movingobjectposition.entityHit; - - if (entityplayer.capabilities.disableDamage || this.shootingEntity instanceof EntityPlayer && !((EntityPlayer)this.shootingEntity).canAttackPlayer(entityplayer)) { - movingobjectposition = null; - } - } - - float f2; - float f4; - - if (movingobjectposition != null) { - if (movingobjectposition.entityHit != null) { - f2 = MathHelper.sqrt_double(this.motionX * this.motionX + this.motionY * this.motionY + this.motionZ * this.motionZ); - int k = MathHelper.ceiling_double_int((double)f2 * this.damage); - - if (this.getIsCritical()) { - k += this.rand.nextInt(k / 2 + 2); - } - - DamageSource damagesource = null; - - if (this.shootingEntity == null) { - damagesource = DamageSource.causeArrowDamage(arrow, this); - } else { - damagesource = DamageSource.causeArrowDamage(arrow, this.shootingEntity); - } - - if (arrow.isBurning() && !(movingobjectposition.entityHit instanceof EntityEnderman)) { - movingobjectposition.entityHit.setFire(5); - } - - if (movingobjectposition.entityHit.attackEntityFrom(damagesource, (float)k)) { - if (movingobjectposition.entityHit instanceof EntityLivingBase) { - EntityLivingBase entitylivingbase = (EntityLivingBase)movingobjectposition.entityHit; - - if (!this.worldObj.isRemote) { - entitylivingbase.setArrowCountInEntity(entitylivingbase.getArrowCountInEntity() + 1); - } - - - double knockback_resistance = entitylivingbase.getEntityAttribute(SharedMonsterAttributes.knockbackResistance).getAttributeValue(); - if (this.knockbackStrength > 0 && knockback_resistance < 1.0D) { - f4 = MathHelper.sqrt_double(this.motionX * this.motionX + this.motionZ * this.motionZ); - - if (f4 > 0.0F) { - entitylivingbase.addVelocity(this.motionX * (double)this.knockbackStrength * 0.6000000238418579D / (double)f4, 0.1D, this.motionZ * (double)this.knockbackStrength * 0.6000000238418579D / (double)f4); - } - } - - if (this.shootingEntity != null && this.shootingEntity instanceof EntityLivingBase) { - EnchantmentHelper.func_151384_a(entitylivingbase, this.shootingEntity); - EnchantmentHelper.func_151385_b((EntityLivingBase)this.shootingEntity, entitylivingbase); - } - - if (this.shootingEntity != null && entitylivingbase != this.shootingEntity && entitylivingbase instanceof EntityPlayer && this.shootingEntity instanceof EntityPlayerMP) { - ((EntityPlayerMP)this.shootingEntity).playerNetServerHandler.sendPacket(new S2BPacketChangeGameState(6, 0.0F)); - } - } - - arrow.playSound("random.bowhit", 1.0F, 1.2F / (this.rand.nextFloat() * 0.2F + 0.9F)); - - if (!(movingobjectposition.entityHit instanceof EntityEnderman)) { - arrow.setDead(); - } - } else { - this.motionX *= -0.10000000149011612D; - this.motionY *= -0.10000000149011612D; - this.motionZ *= -0.10000000149011612D; - this.rotationYaw += 180.0F; - this.prevRotationYaw += 180.0F; - this.ticksInAir = 0; - } - } else { - this.field_145791_d = movingobjectposition.blockX; - this.field_145792_e = movingobjectposition.blockY; - this.field_145789_f = movingobjectposition.blockZ; - this.field_145790_g = this.worldObj.getBlock(this.field_145791_d, this.field_145792_e, this.field_145789_f); - this.inData = arrow.worldObj.getBlockMetadata(this.field_145791_d, this.field_145792_e, this.field_145789_f); - this.motionX = (double)((float)(movingobjectposition.hitVec.xCoord - this.posX)); - this.motionY = (double)((float)(movingobjectposition.hitVec.yCoord - this.posY)); - this.motionZ = (double)((float)(movingobjectposition.hitVec.zCoord - this.posZ)); - f2 = MathHelper.sqrt_double(this.motionX * this.motionX + this.motionY * this.motionY + this.motionZ * this.motionZ); - this.posX -= this.motionX / (double)f2 * 0.05000000074505806D; - this.posY -= this.motionY / (double)f2 * 0.05000000074505806D; - this.posZ -= this.motionZ / (double)f2 * 0.05000000074505806D; - this.playSound("random.bowhit", 1.0F, 1.2F / (this.rand.nextFloat() * 0.2F + 0.9F)); - this.inGround = true; - this.arrowShake = 7; - this.setIsCritical(false); - - if (this.field_145790_g.getMaterial() != Material.air) { - this.field_145790_g.onEntityCollidedWithBlock(this.worldObj, this.field_145791_d, this.field_145792_e, this.field_145789_f, this); - } - } - } - - if (arrow.getIsCritical()) { - for (i = 0; i < 4; ++i) { - arrow.worldObj.spawnParticle("crit", arrow.posX + arrow.motionX * (double)i / 4.0D, arrow.posY + arrow.motionY * (double)i / 4.0D, arrow.posZ + arrow.motionZ * (double)i / 4.0D, -arrow.motionX, -arrow.motionY + 0.2D, -arrow.motionZ); - } - } - - arrow.posX += arrow.motionX; - arrow.posY += arrow.motionY; - arrow.posZ += arrow.motionZ; - f2 = MathHelper.sqrt_double(arrow.motionX * arrow.motionX + arrow.motionZ * arrow.motionZ); - arrow.rotationYaw = (float)(Math.atan2(arrow.motionX, arrow.motionZ) * 180.0D / Math.PI); - - for (arrow.rotationPitch = (float)(Math.atan2(arrow.motionY, (double)f2) * 180.0D / Math.PI); arrow.rotationPitch - arrow.prevRotationPitch < -180.0F; arrow.prevRotationPitch -= 360.0F) { - ; - } - - while (arrow.rotationPitch - arrow.prevRotationPitch >= 180.0F) { - arrow.prevRotationPitch += 360.0F; - } - - while (arrow.rotationYaw - arrow.prevRotationYaw < -180.0F) { - arrow.prevRotationYaw -= 360.0F; - } - - while (arrow.rotationYaw - arrow.prevRotationYaw >= 180.0F) { - arrow.prevRotationYaw += 360.0F; - } - - arrow.rotationPitch = arrow.prevRotationPitch + (arrow.rotationPitch - arrow.prevRotationPitch) * 0.2F; - arrow.rotationYaw = arrow.prevRotationYaw + (arrow.rotationYaw - arrow.prevRotationYaw) * 0.2F; - float f3 = 0.99F; - f1 = 0.05F; - - if (arrow.isInWater()) { - for (int l = 0; l < 4; ++l) { - f4 = 0.25F; - arrow.worldObj.spawnParticle("bubble", arrow.posX - arrow.motionX * (double)f4, arrow.posY - arrow.motionY * (double)f4, arrow.posZ - arrow.motionZ * (double)f4, arrow.motionX, arrow.motionY, arrow.motionZ); - } - - f3 = 0.8F; - } - - if (arrow.isWet()) { - arrow.extinguish(); - } - - arrow.motionX *= (double)f3; - arrow.motionY *= (double)f3; - arrow.motionZ *= (double)f3; - arrow.motionY -= (double)f1; - arrow.setPosition(arrow.posX, arrow.posY, arrow.posZ); - this.func_145775_I(); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinEntityLivingBase.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinEntityLivingBase.java deleted file mode 100644 index b767d9f..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinEntityLivingBase.java +++ /dev/null @@ -1,335 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.util.*; - -import org.spongepowered.asm.mixin.*; -import org.spongepowered.asm.mixin.injection.*; -import org.spongepowered.asm.mixin.injection.callback.*; - -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.effect.EntityLightningBolt; -import net.minecraft.entity.passive.EntityTameable; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.potion.Potion; -import net.minecraft.server.MinecraftServer; -import net.minecraft.util.ChatComponentText; -import net.minecraft.util.DamageSource; -import net.minecraft.util.EnumChatFormatting; -import net.minecraft.world.World; - -import net.minecraftforge.common.ForgeHooks; - -import java.lang.reflect.*; -import java.util.List; -import java.util.UUID; - -@Mixin(EntityLivingBase.class) -public abstract class MixinEntityLivingBase extends Entity implements IEntityLivingBase { - private static boolean checked_cauldron = false; - private static Method cauldron_method; - - public int despawn_timer = -1; - public UUID warband_uuid = null; - - @Shadow - protected int entityAge; - @Shadow - public int maxHurtTime; - @Shadow - public float attackedAtYaw; - @Shadow - protected EntityPlayer attackingPlayer; - @Shadow - protected int recentlyHit; - @Shadow - public int hurtTime; - @Shadow - public float prevHealth; - @Shadow - protected float lastDamage; - @Shadow - public int maxHurtResistantTime; - @Shadow - public float limbSwingAmount; - - @Shadow - protected abstract float getSoundPitch(); - @Shadow - protected abstract float getSoundVolume(); - @Shadow - protected abstract String getHurtSound(); - @Shadow - public abstract void onDeath(DamageSource source); - @Shadow - protected abstract String getDeathSound(); - @Shadow - public abstract float getHealth(); - @Shadow - public abstract void knockBack(Entity entity, float strength, double direction_x, double direction_z); - @Shadow - public abstract void setRevengeTarget(EntityLivingBase p_70604_1_); - @Shadow - protected abstract void damageEntity(DamageSource p_70665_1_, float p_70665_2_); - @Shadow - public abstract ItemStack getEquipmentInSlot(int p_71124_1_); - @Shadow - public abstract boolean isPotionActive(int p_82165_1_); - @Shadow - public abstract boolean isPotionActive(Potion p_70644_1_); - - public MixinEntityLivingBase(World world) { - super(world); - } - - /** - * @author Shinare - * @reason Adding damage event method - */ - @Overwrite - public boolean attackEntityFrom(DamageSource source, float damage) { - if (ForgeHooks.onLivingAttack((EntityLivingBase)(Object)this, source, damage)) return false; - if (this.isEntityInvulnerable()) return false; - if (this.worldObj.isRemote) return false; - this.entityAge = 0; - - if (this.getHealth() <= 0.0F) return false; - if (source.isFireDamage() && isPotionActive(Potion.fireResistance)) return false; - - if (!(checked_cauldron)) { - check_cauldron(); - checked_cauldron = true; - } - - DamageEvent event = new DamageEvent(source, damage, (EntityLivingBase)(Object)this, source.getEntity()); - Pair result = DamageEvent.run_events(event); - if (result.value) return false; - damage = result.key.damage; - - if (cauldron_method == null) { - if ((source == DamageSource.anvil || source == DamageSource.fallingBlock) && this.getEquipmentInSlot(4) != null) { - this.getEquipmentInSlot(4).damageItem((int)(damage * 4.0F + this.rand.nextFloat() * damage * 2.0F), (EntityLivingBase)(Object)this); - damage *= 0.75F; - } - } - - this.limbSwingAmount = 1.5F; - boolean flag = true; - - if (this.hurtResistantTime > (float)this.maxHurtResistantTime / 2.0F) { - if (damage <= this.lastDamage) return false; - if (cauldron_method != null) { - boolean cauldron_cancel = entitydamage_cauldron(source, damage - this.lastDamage); - if (!cauldron_cancel) return false; - } else { - this.damageEntity(source, damage - this.lastDamage); - } - this.lastDamage = damage; - flag = false; - } else { - if (cauldron_method != null) { - float previousHealth = getHealth(); - boolean cauldron_cancel = entitydamage_cauldron(source, damage); - if (!cauldron_cancel) return false; - - this.lastDamage = damage; - this.prevHealth = previousHealth; - this.hurtResistantTime = this.maxHurtResistantTime; - this.hurtTime = this.maxHurtTime = 10; - } else { - this.lastDamage = damage; - this.prevHealth = this.getHealth(); - this.hurtResistantTime = this.maxHurtResistantTime; - this.damageEntity(source, damage); - this.hurtTime = this.maxHurtTime = 10; - } - } - - this.attackedAtYaw = 0.0F; - Entity entity = source.getEntity(); - - if (entity != null) { - if (entity instanceof EntityLivingBase) - this.setRevengeTarget((EntityLivingBase)entity); - - if (entity instanceof EntityPlayer) { - this.recentlyHit = 100; - this.attackingPlayer = (EntityPlayer)entity; - } else if (entity instanceof EntityTameable) { - EntityTameable entitywolf = (EntityTameable)entity; - - if (entitywolf.isTamed()) { - this.recentlyHit = 100; - this.attackingPlayer = null; - } - } - } - - if (flag) { - this.worldObj.setEntityState((Entity)this, (byte)2); - if (source != DamageSource.drown) - this.setBeenAttacked(); - - if (entity != null) { - double d1 = entity.posX - this.posX; - double d0; - - for (d0 = entity.posZ - this.posZ; d1 * d1 + d0 * d0 < 1.0E-4D; d0 = (Math.random() - Math.random()) * 0.01D) - d1 = (Math.random() - Math.random()) * 0.01D; - - this.attackedAtYaw = (float)(Math.atan2(d0, d1) * 180.0D / Math.PI) - this.rotationYaw; - this.knockBack(entity, damage, d1, d0); - } else { - this.attackedAtYaw = (float)((int)(Math.random() * 2.0D) * 180); - } - } - - String sound; - - if (getHealth() <= 0.0F) { - sound = getDeathSound(); - - if (flag && sound != null) - this.playSound(sound, getSoundVolume(), getSoundPitch()); - - onDeath(source); - } else { - sound = getHurtSound(); - - if (flag && sound != null) - this.playSound(sound, getSoundVolume(), getSoundPitch()); - } - - return true; - } - - @Dynamic - private void check_cauldron() { - try { - Class target_class = EntityLivingBase.class; - Method[] methods = target_class.getDeclaredMethods(); - - for (Method method : methods) { - if (method.getName().equals("damageEntity_CB")) { - cauldron_method = method; - return; - } - } - } catch (Exception e) { - e.printStackTrace(); - } - - return; - } - - @Dynamic - public boolean entitydamage_cauldron(DamageSource source, float damage) { - boolean return_value = true; - if (cauldron_method != null) { - try { - Object result = cauldron_method.invoke(this, source, damage); - if (result instanceof Boolean) { // Check if the result is a boolean - return_value = (Boolean) result; - } - } catch (IllegalAccessException | InvocationTargetException e) { - } - } - return return_value; - } - - /** - * Add support for despawn after specified time loaded - * Add support for following a warband leader - */ - @Inject(method = "writeEntityToNBT", at = @At("TAIL")) - private void writeWarbandNBT(NBTTagCompound compound, CallbackInfo ci) { - compound.setInteger("DespawnTimer", despawn_timer); - compound.setString("WarbandLeader", warband_uuid != null ? warband_uuid.toString() : ""); - } - @Inject(method = "readEntityFromNBT", at = @At("TAIL")) - private void readWarbandNBT(NBTTagCompound compound, CallbackInfo ci) { - despawn_timer = compound.getInteger("DespawnTimer"); - if (compound.hasKey("WarbandLeader")) { - String idStr = compound.getString("WarbandLeader"); - if (!idStr.isEmpty()) warband_uuid = UUID.fromString(idStr); - } - - String sound; - - if (getHealth() <= 0.0F) { - sound = getDeathSound(); - - if (flag && sound != null) - this.playSound(sound, getSoundVolume(), getSoundPitch()); - - onDeath(source); - } else { - sound = getHurtSound(); - - if (flag && sound != null) - this.playSound(sound, getSoundVolume(), getSoundPitch()); - } - - return true; - } - - @Dynamic - private void check_cauldron() { - try { - Class target_class = EntityLivingBase.class; - Method[] methods = target_class.getDeclaredMethods(); - - for (Method method : methods) { - if (method.getName().equals("damageEntity_CB")) { - cauldron_method = method; - return; - } - } - } catch (Exception e) { - e.printStackTrace(); - } - - return; - } - - @Dynamic - public boolean entitydamage_cauldron(DamageSource source, float damage) { - boolean return_value = true; - if (cauldron_method != null) { - try { - Object result = cauldron_method.invoke(this, source, damage); - if (result instanceof Boolean) { // Check if the result is a boolean - return_value = (Boolean) result; - } - } catch (IllegalAccessException | InvocationTargetException e) { - } - } - return return_value; - } - @Inject(method = "onUpdate", at = @At("TAIL")) - private void onUpdate(CallbackInfo ci) { - if (despawn_timer > -1) { - despawn_timer--; - if (despawn_timer == 0) { - if (warband_uuid == ((EntityLivingBase)(Object)this).getUniqueID()) { - MinecraftServer.getServer().getConfigurationManager().sendChatMsg(new ChatComponentText(EnumChatFormatting.GRAY + "Warband has disbanded")); - } - ((EntityLivingBase)(Object)this).setDead(); - } - } - } - @Override - public void set_despawn_timer(int ticks) { - this.despawn_timer = ticks; - } - @Override - public void set_warband_uuid(UUID uuid) { - this.warband_uuid = uuid; - } - @Override - public UUID get_warband_uuid() { - return this.warband_uuid; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinEntityPlayer.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinEntityPlayer.java deleted file mode 100644 index 9625c7e..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinEntityPlayer.java +++ /dev/null @@ -1,332 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.CinderLoE; -import com.zivilon.cinder_loe.util.Pair; -import com.zivilon.cinder_loe.util.DamageEvent; -import com.zivilon.cinder_loe.util.IMixinEntityPlayer; -import com.zivilon.cinder_loe.potion.LoEPotions; -import com.zivilon.cinder_loe.potion.PotionHerbPoison; - -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.Redirect; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; - -import net.minecraft.enchantment.EnchantmentHelper; -import net.minecraft.entity.*; -import net.minecraft.entity.boss.EntityDragonPart; -import net.minecraft.entity.effect.EntityLightningBolt; -import net.minecraft.entity.player.*; -import net.minecraft.entity.projectile.EntityFishHook; -import net.minecraft.inventory.Container; -import net.minecraft.inventory.InventoryEnderChest; -import net.minecraft.item.ItemStack; -import net.minecraft.potion.Potion; -import net.minecraft.potion.PotionEffect; -import net.minecraft.stats.*; -import net.minecraft.util.*; -import net.minecraft.world.EnumDifficulty; -import net.minecraft.world.World; -import net.minecraft.enchantment.EnchantmentHelper; - -import net.minecraftforge.common.ForgeHooks; -import net.minecraftforge.common.ISpecialArmor.ArmorProperties; -import net.minecraftforge.common.MinecraftForge; -import net.minecraftforge.event.entity.player.AttackEntityEvent; - -import com.mojang.authlib.GameProfile; - -import java.util.HashMap; -import java.util.List; - -@Mixin(EntityPlayer.class) -public abstract class MixinEntityPlayer extends EntityLivingBase implements IMixinEntityPlayer { - public int last_pickpocket_attempt = 0; - - public MixinEntityPlayer(World world, GameProfile p_i45324_2_) { - super(world); - } - - @Shadow - public static final String PERSISTED_NBT_TAG = "PlayerPersisted"; - @Shadow - private HashMap spawnChunkMap; - @Shadow - private HashMap spawnForcedMap; - @Shadow - public InventoryPlayer inventory; - @Shadow - private InventoryEnderChest theInventoryEnderChest; - @Shadow - public Container inventoryContainer; - @Shadow - public Container openContainer; - @Shadow - protected FoodStats foodStats; - @Shadow - protected int flyToggleTimer; - @Shadow - public float prevCameraYaw; - @Shadow - public float cameraYaw; - @Shadow - public int xpCooldown; - @Shadow - protected boolean sleeping; - @Shadow - public ChunkCoordinates playerLocation; - @Shadow - private int sleepTimer; - @Shadow - private ChunkCoordinates spawnChunk; - @Shadow - private boolean spawnForced; - @Shadow - private ChunkCoordinates startMinecartRidingCoordinate; - @Shadow - public PlayerCapabilities capabilities; - @Shadow - public int experienceLevel; - @Shadow - public int experienceTotal; - @Shadow - public float experience; - @Shadow - private ItemStack itemInUse; - @Shadow - private int itemInUseCount; - @Shadow - protected float speedOnGround; - @Shadow - protected float speedInAir; - @Shadow - public EntityFishHook fishEntity; - @Shadow - public void destroyCurrentEquippedItem() {} - @Shadow - public void addStat(StatBase p_71064_1_, int p_71064_2_) {} - @Shadow - public ItemStack getCurrentEquippedItem() { return null;} - @Shadow - public void onEnchantmentCritical(Entity p_71047_1_) {} - @Shadow - public void onCriticalHit(Entity p_71009_1_) {} - @Shadow - public void triggerAchievement(StatBase p_71029_1_) {} - @Shadow - public abstract void addExhaustion(float p_71020_1_); - - /** - * @author Shinare - * @reason Removed vanilla blocking damage reduction - */ - @Overwrite - protected void damageEntity(DamageSource source, float damage) { - if (!this.isEntityInvulnerable()) - { - damage = ForgeHooks.onLivingHurt(this, source, damage); - if (damage <= 0) return; - - damage = ArmorProperties.ApplyArmor(this, inventory.armorInventory, source, damage); - if (damage <= 0) return; - damage = this.applyPotionDamageCalculations(source, damage); - float f1 = damage; - damage = Math.max(damage - this.getAbsorptionAmount(), 0.0F); - this.setAbsorptionAmount(this.getAbsorptionAmount() - (f1 - damage)); - - if (damage != 0.0F) - { - this.addExhaustion(source.getHungerDamage()); - float f2 = this.getHealth(); - this.setHealth(this.getHealth() - damage); - this.func_110142_aN().func_94547_a(source, f2, damage); - } - } - } - @Override - public void set_last_pickpocket_attempt(int i) { - this.last_pickpocket_attempt = i; - } - @Override - public int get_last_pickpocket_attempt() { - return this.last_pickpocket_attempt; - } - /* Proper solution for later - @Redirect( - method = "func_71059_n", - at = @At(value = "FIELD", target = "Lnet/minecraft/entity/Entity;field_70143_R:F", remap = false) - ) - private float redirectFallDistanceForCrit(Entity instance) { - if (instance instanceof EntityPlayer) { - PotionEffect poison = ((EntityPlayer) instance).getActivePotionEffect(LoEPotions.herbal_poisoning); - if (poison != null && poison.getAmplifier() >= 1) { - System.out.println("Setting fall distance to 0.0F"); - return 0.0F; // no fall distance = no crit - } - } - System.out.println("Preserving fall distance."); - return instance.fallDistance; - }*/ - - @Overwrite - public void attackTargetEntityWithCurrentItem(Entity p_71059_1_) - { - if (MinecraftForge.EVENT_BUS.post(new AttackEntityEvent(((EntityPlayer)(Object)this), p_71059_1_))) - { - return; - } - ItemStack stack = getCurrentEquippedItem(); - if (stack != null && stack.getItem().onLeftClickEntity(stack, ((EntityPlayer)(Object)this), p_71059_1_)) - { - return; - } - if (p_71059_1_.canAttackWithItem()) - { - if (!p_71059_1_.hitByEntity(this)) - { - float f = (float)this.getEntityAttribute(SharedMonsterAttributes.attackDamage).getAttributeValue(); - int i = 0; - float f1 = 0.0F; - - if (p_71059_1_ instanceof EntityLivingBase) - { - f1 = EnchantmentHelper.getEnchantmentModifierLiving(this, (EntityLivingBase)p_71059_1_); - i += EnchantmentHelper.getKnockbackModifier(this, (EntityLivingBase)p_71059_1_); - } - - if (this.isSprinting()) - { - ++i; - } - - if (f > 0.0F || f1 > 0.0F) - { - boolean flag = this.fallDistance > 0.0F && !this.onGround && !this.isOnLadder() && !this.isInWater() && !this.isPotionActive(Potion.blindness) && this.ridingEntity == null && p_71059_1_ instanceof EntityLivingBase; - System.out.println("Hello"); - if (PotionHerbPoison.should_cancel_crit((EntityPlayer)(Object)this)) { - flag = false; - } - - if (flag && f > 0.0F) - { - f *= 1.5F; - } - - f += f1; - boolean flag1 = false; - int j = EnchantmentHelper.getFireAspectModifier(((EntityPlayer)(Object)this)); - - if (p_71059_1_ instanceof EntityLivingBase && j > 0 && !p_71059_1_.isBurning()) - { - flag1 = true; - p_71059_1_.setFire(1); - } - - boolean flag2 = p_71059_1_.attackEntityFrom(DamageSource.causePlayerDamage(((EntityPlayer)(Object)this)), f); - - if (flag2) - { - if (i > 0) - { - p_71059_1_.addVelocity((double)(-MathHelper.sin(this.rotationYaw * (float)Math.PI / 180.0F) * (float)i * 0.5F), 0.1D, (double)(MathHelper.cos(((EntityPlayer)(Object)this).rotationYaw * (float)Math.PI / 180.0F) * (float)i * 0.5F)); - ((EntityPlayer)(Object)this).motionX *= 0.6D; - ((EntityPlayer)(Object)this).motionZ *= 0.6D; - ((EntityPlayer)(Object)this).setSprinting(false); - } - - if (flag) - { - this.onCriticalHit(p_71059_1_); - } - - if (f1 > 0.0F) - { - this.onEnchantmentCritical(p_71059_1_); - } - - if (f >= 18.0F) - { - this.triggerAchievement(AchievementList.overkill); - } - - ((EntityPlayer)(Object)this).setLastAttacker(p_71059_1_); - - if (p_71059_1_ instanceof EntityLivingBase) - { - EnchantmentHelper.func_151384_a((EntityLivingBase)p_71059_1_, ((EntityPlayer)(Object)this)); - } - - EnchantmentHelper.func_151385_b(((EntityPlayer)(Object)this), p_71059_1_); - ItemStack itemstack = ((EntityPlayer)(Object)this).getCurrentEquippedItem(); - Object object = p_71059_1_; - - if (p_71059_1_ instanceof EntityDragonPart) - { - IEntityMultiPart ientitymultipart = ((EntityDragonPart)p_71059_1_).entityDragonObj; - - if (ientitymultipart != null && ientitymultipart instanceof EntityLivingBase) - { - object = (EntityLivingBase)ientitymultipart; - } - } - - if (itemstack != null && object instanceof EntityLivingBase) - { - itemstack.hitEntity((EntityLivingBase)object, ((EntityPlayer)(Object)this)); - - if (itemstack.stackSize <= 0) - { - ((EntityPlayer)(Object)this).destroyCurrentEquippedItem(); - } - } - - if (p_71059_1_ instanceof EntityLivingBase) - { - this.addStat(StatList.damageDealtStat, Math.round(f * 10.0F)); - - if (j > 0) - { - p_71059_1_.setFire(j * 4); - } - } - - this.addExhaustion(0.3F); - } - else if (flag1) - { - p_71059_1_.extinguish(); - } - } - } - } - } - - @Inject(method = "onLivingUpdate", at = @At("TAIL")) - public void disableHotbarSlotsHerbalPoisoning(CallbackInfo ci) { - EntityPlayer player = (EntityPlayer)(Object)this; - PotionEffect effect = player.getActivePotionEffect(LoEPotions.herbal_poisoning); - - if (effect != null && effect.getAmplifier() >= 2) { - int slot = player.inventory.currentItem; - if (slot >= 3 && slot <= 8) { - player.inventory.currentItem = 0; - } - } - } - public boolean canAttackWithItem() { - EntityPlayer player = (EntityPlayer)(Object)this; - PotionEffect effect = player.getActivePotionEffect(LoEPotions.herbal_poisoning); - - if (effect != null && effect.getAmplifier() >= 2) { - int slot = player.inventory.currentItem; - if (slot >= 3 && slot <= 8) { - if (CinderLoE.DEBUG) System.out.println("ATTACK DENIED"); - return false; - } - } - return super.canAttackWithItem(); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinItemRenderer.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinItemRenderer.java deleted file mode 100644 index b44dd96..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinItemRenderer.java +++ /dev/null @@ -1,284 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.CinderLoE; -import com.zivilon.cinder_loe.CinderLoE_Config; -import com.zivilon.cinder_loe.client.render.item.RenderHelper; -import com.zivilon.cinder_loe.util.Utilities; - -import org.lwjgl.opengl.GL11; -import org.lwjgl.opengl.GL11; -import org.lwjgl.opengl.GL12; - -import org.spongepowered.asm.mixin.Dynamic; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; -import org.spongepowered.asm.mixin.injection.callback.LocalCapture; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.client.Minecraft; -import net.minecraft.client.entity.EntityClientPlayerMP; -import net.minecraft.client.entity.EntityPlayerSP; -import net.minecraft.client.renderer.ItemRenderer; -import net.minecraft.client.renderer.OpenGlHelper; -import net.minecraft.client.renderer.RenderBlocks; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.entity.Render; -import net.minecraft.client.renderer.entity.RenderItem; -import net.minecraft.client.renderer.entity.RenderManager; -import net.minecraft.client.renderer.entity.RenderPlayer; -import net.minecraft.client.renderer.texture.TextureManager; -import net.minecraft.client.renderer.texture.TextureMap; -import net.minecraft.client.renderer.texture.TextureUtil; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.init.Blocks; -import net.minecraft.init.Items; -import net.minecraft.item.EnumAction; -import net.minecraft.item.Item; -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemCloth; -import net.minecraft.item.ItemMap; -import net.minecraft.item.ItemStack; -import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; -import net.minecraft.util.MathHelper; -import net.minecraft.util.ResourceLocation; -import net.minecraft.world.storage.MapData; -import net.minecraftforge.client.ForgeHooksClient; -import net.minecraftforge.client.IItemRenderer; -import net.minecraftforge.client.IItemRenderer.ItemRenderType; -import net.minecraftforge.client.MinecraftForgeClient; - -import static net.minecraftforge.client.IItemRenderer.ItemRenderType.*; -import static net.minecraftforge.client.IItemRenderer.ItemRendererHelper.*; - -@Mixin(ItemRenderer.class) -public abstract class MixinItemRenderer { - - @Shadow - private static final ResourceLocation RES_ITEM_GLINT = new ResourceLocation("textures/misc/enchanted_item_glint.png"); - @Shadow - private ItemStack itemToRender; - @Shadow - private float equippedProgress; - @Shadow - private float prevEquippedProgress; - @Shadow - private RenderBlocks renderBlocksIr; - @Shadow - private Minecraft mc; - - /** - * Reimplements the default behavior of the renderItem method. - * - * @author Shinare - * @reason Added support for semi-transparent item textures - * @param p_78443_1_ Don't ask me it's default parameter - * @param p_78443_2_ Don't ask me it's default parameter - * @param type Don't ask me it's default parameter - */ - @Overwrite(remap = false) - public void renderItem(EntityLivingBase p_78443_1_, ItemStack p_78443_2_, int p_78443_3_, ItemRenderType type) { - GL11.glPushMatrix(); - TextureManager texturemanager = this.mc.getTextureManager(); - Item item = p_78443_2_.getItem(); - Block block = Block.getBlockFromItem(item); - - if (p_78443_2_ != null && block != null && block.getRenderBlockPass() != 0) { - GL11.glEnable(GL11.GL_BLEND); - GL11.glEnable(GL11.GL_CULL_FACE); - OpenGlHelper.glBlendFunc(770, 771, 1, 0); - } - IItemRenderer customRenderer = MinecraftForgeClient.getItemRenderer(p_78443_2_, type); - if (customRenderer != null) { - texturemanager.bindTexture(texturemanager.getResourceLocation(p_78443_2_.getItemSpriteNumber())); - ForgeHooksClient.renderEquippedItem(type, customRenderer, renderBlocksIr, p_78443_1_, p_78443_2_); - } - else - if (p_78443_2_.getItemSpriteNumber() == 0 && item instanceof ItemBlock && RenderBlocks.renderItemIn3d(block.getRenderType())) { - texturemanager.bindTexture(texturemanager.getResourceLocation(0)); - - if (p_78443_2_ != null && block != null && block.getRenderBlockPass() != 0) { - GL11.glDepthMask(false); - this.renderBlocksIr.renderBlockAsItem(block, p_78443_2_.getItemDamage(), 1.0F); - GL11.glDepthMask(true); - } - else { - this.renderBlocksIr.renderBlockAsItem(block, p_78443_2_.getItemDamage(), 1.0F); - } - } - else { - IIcon iicon = p_78443_1_.getItemIcon(p_78443_2_, p_78443_3_); - - if (iicon == null) { - GL11.glPopMatrix(); - return; - } - - texturemanager.bindTexture(texturemanager.getResourceLocation(p_78443_2_.getItemSpriteNumber())); - TextureUtil.func_152777_a(false, false, 1.0F); - Tessellator tessellator = Tessellator.instance; - float f = iicon.getMinU(); - float f1 = iicon.getMaxU(); - float f2 = iicon.getMinV(); - float f3 = iicon.getMaxV(); - float f4 = 0.0F; - float f5 = 0.3F; - GL11.glEnable(GL12.GL_RESCALE_NORMAL); - GL11.glTranslatef(-f4, -f5, 0.0F); - float f6 = 1.5F; - GL11.glScalef(f6, f6, f6); - GL11.glRotatef(50.0F, 0.0F, 1.0F, 0.0F); - GL11.glRotatef(335.0F, 0.0F, 0.0F, 1.0F); - GL11.glTranslatef(-0.9375F, -0.0625F, 0.0F); - - RenderHelper.customRenderItemIn2D(tessellator, f1, f2, f, f3, iicon.getIconWidth(), iicon.getIconHeight(), 0.0625F, false); - - if (p_78443_2_.hasEffect(p_78443_3_)) { - GL11.glDepthFunc(GL11.GL_EQUAL); - GL11.glDisable(GL11.GL_LIGHTING); - texturemanager.bindTexture(RES_ITEM_GLINT); - GL11.glEnable(GL11.GL_BLEND); - OpenGlHelper.glBlendFunc(768, 1, 1, 0); - GL11.glColor4f(CinderLoE_Config.enchantment_color_red, CinderLoE_Config.enchantment_color_green, CinderLoE_Config.enchantment_color_blue, 1.0F); - GL11.glMatrixMode(GL11.GL_TEXTURE); - GL11.glPushMatrix(); - float f8 = 0.125F; - GL11.glScalef(f8, f8, f8); - float f9 = (float)(Minecraft.getSystemTime() % 3000L) / 3000.0F * 8.0F; - GL11.glTranslatef(f9, 0.0F, 0.0F); - GL11.glRotatef(-50.0F, 0.0F, 0.0F, 1.0F); - - RenderHelper.customRenderItemIn2D(tessellator, 0.0F, 0.0F, 1.0F, 1.0F, 256, 256, 0.0625F, true); - - - GL11.glPopMatrix(); - GL11.glPushMatrix(); - GL11.glScalef(f8, f8, f8); - f9 = (float)(Minecraft.getSystemTime() % 4873L) / 4873.0F * 8.0F; - GL11.glTranslatef(-f9, 0.0F, 0.0F); - GL11.glRotatef(10.0F, 0.0F, 0.0F, 1.0F); - - RenderHelper.customRenderItemIn2D(tessellator, 0.0F, 0.0F, 1.0F, 1.0F, 256, 256, 0.0625F, true); - - GL11.glPopMatrix(); - GL11.glMatrixMode(GL11.GL_MODELVIEW); - GL11.glDisable(GL11.GL_BLEND); - GL11.glEnable(GL11.GL_LIGHTING); - GL11.glDepthFunc(GL11.GL_LEQUAL); - } - - GL11.glDisable(GL12.GL_RESCALE_NORMAL); - texturemanager.bindTexture(texturemanager.getResourceLocation(p_78443_2_.getItemSpriteNumber())); - TextureUtil.func_147945_b(); - } - - if (p_78443_2_ != null && block != null && block.getRenderBlockPass() != 0) { - GL11.glDisable(GL11.GL_BLEND); - } - - GL11.glPopMatrix(); - } - - private void customRenderItemIn2D(Tessellator p_78439_0_, float p_78439_1_, float p_78439_2_, float p_78439_3_, float p_78439_4_, int p_78439_5_, int p_78439_6_, float p_78439_7_, boolean enchant) { - if (!enchant) GL11.glPushMatrix(); // Save the current OpenGL state - if (!enchant) GL11.glEnable(GL11.GL_BLEND); // Enable blending - if (!enchant) OpenGlHelper.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA, GL11.GL_ONE, GL11.GL_ZERO); // Apply your custom blend function for semi-transparency - - p_78439_0_.startDrawingQuads(); - p_78439_0_.setNormal(0.0F, 0.0F, 1.0F); - p_78439_0_.addVertexWithUV(0.0D, 0.0D, 0.0D, (double)p_78439_1_, (double)p_78439_4_); - p_78439_0_.addVertexWithUV(1.0D, 0.0D, 0.0D, (double)p_78439_3_, (double)p_78439_4_); - p_78439_0_.addVertexWithUV(1.0D, 1.0D, 0.0D, (double)p_78439_3_, (double)p_78439_2_); - p_78439_0_.addVertexWithUV(0.0D, 1.0D, 0.0D, (double)p_78439_1_, (double)p_78439_2_); - p_78439_0_.draw(); - p_78439_0_.startDrawingQuads(); - p_78439_0_.setNormal(0.0F, 0.0F, -1.0F); - p_78439_0_.addVertexWithUV(0.0D, 1.0D, (double)(0.0F - p_78439_7_), (double)p_78439_1_, (double)p_78439_2_); - p_78439_0_.addVertexWithUV(1.0D, 1.0D, (double)(0.0F - p_78439_7_), (double)p_78439_3_, (double)p_78439_2_); - p_78439_0_.addVertexWithUV(1.0D, 0.0D, (double)(0.0F - p_78439_7_), (double)p_78439_3_, (double)p_78439_4_); - p_78439_0_.addVertexWithUV(0.0D, 0.0D, (double)(0.0F - p_78439_7_), (double)p_78439_1_, (double)p_78439_4_); - p_78439_0_.draw(); - - - float f5 = 0.5F * (p_78439_1_ - p_78439_3_) / (float)p_78439_5_; - float f6 = 0.5F * (p_78439_4_ - p_78439_2_) / (float)p_78439_6_; - p_78439_0_.startDrawingQuads(); - p_78439_0_.setNormal(-1.0F, 0.0F, 0.0F); - int k; - float f7; - float f8; - - for (k = 0; k < p_78439_5_; ++k) { - f7 = (float)k / (float)p_78439_5_; - f8 = p_78439_1_ + (p_78439_3_ - p_78439_1_) * f7 - f5; - p_78439_0_.addVertexWithUV((double)f7, 0.0D, (double)(0.0F - p_78439_7_), (double)f8, (double)p_78439_4_); - p_78439_0_.addVertexWithUV((double)f7, 0.0D, 0.0D, (double)f8, (double)p_78439_4_); - p_78439_0_.addVertexWithUV((double)f7, 1.0D, 0.0D, (double)f8, (double)p_78439_2_); - p_78439_0_.addVertexWithUV((double)f7, 1.0D, (double)(0.0F - p_78439_7_), (double)f8, (double)p_78439_2_); - } - - p_78439_0_.draw(); - p_78439_0_.startDrawingQuads(); - p_78439_0_.setNormal(1.0F, 0.0F, 0.0F); - float f9; - - for (k = 0; k < p_78439_5_; ++k) { - f7 = (float)k / (float)p_78439_5_; - f8 = p_78439_1_ + (p_78439_3_ - p_78439_1_) * f7 - f5; - f9 = f7 + 1.0F / (float)p_78439_5_; - p_78439_0_.addVertexWithUV((double)f9, 1.0D, (double)(0.0F - p_78439_7_), (double)f8, (double)p_78439_2_); - p_78439_0_.addVertexWithUV((double)f9, 1.0D, 0.0D, (double)f8, (double)p_78439_2_); - p_78439_0_.addVertexWithUV((double)f9, 0.0D, 0.0D, (double)f8, (double)p_78439_4_); - p_78439_0_.addVertexWithUV((double)f9, 0.0D, (double)(0.0F - p_78439_7_), (double)f8, (double)p_78439_4_); - } - - p_78439_0_.draw(); - p_78439_0_.startDrawingQuads(); - p_78439_0_.setNormal(0.0F, 1.0F, 0.0F); - - for (k = 0; k < p_78439_6_; ++k) { - f7 = (float)k / (float)p_78439_6_; - f8 = p_78439_4_ + (p_78439_2_ - p_78439_4_) * f7 - f6; - f9 = f7 + 1.0F / (float)p_78439_6_; - p_78439_0_.addVertexWithUV(0.0D, (double)f9, 0.0D, (double)p_78439_1_, (double)f8); - p_78439_0_.addVertexWithUV(1.0D, (double)f9, 0.0D, (double)p_78439_3_, (double)f8); - p_78439_0_.addVertexWithUV(1.0D, (double)f9, (double)(0.0F - p_78439_7_), (double)p_78439_3_, (double)f8); - p_78439_0_.addVertexWithUV(0.0D, (double)f9, (double)(0.0F - p_78439_7_), (double)p_78439_1_, (double)f8); - } - - p_78439_0_.draw(); - p_78439_0_.startDrawingQuads(); - p_78439_0_.setNormal(0.0F, -1.0F, 0.0F); - - for (k = 0; k < p_78439_6_; ++k) { - f7 = (float)k / (float)p_78439_6_; - f8 = p_78439_4_ + (p_78439_2_ - p_78439_4_) * f7 - f6; - p_78439_0_.addVertexWithUV(1.0D, (double)f7, 0.0D, (double)p_78439_3_, (double)f8); - p_78439_0_.addVertexWithUV(0.0D, (double)f7, 0.0D, (double)p_78439_1_, (double)f8); - p_78439_0_.addVertexWithUV(0.0D, (double)f7, (double)(0.0F - p_78439_7_), (double)p_78439_1_, (double)f8); - p_78439_0_.addVertexWithUV(1.0D, (double)f7, (double)(0.0F - p_78439_7_), (double)p_78439_3_, (double)f8); - } - - p_78439_0_.draw(); - if (!enchant) GL11.glPopMatrix(); // Restore the saved OpenGL state - } - - /** - * @author Shinare - * @reason Failsafe in case some @Redirect fails - */ - @Overwrite - public static void renderItemIn2D(Tessellator p_78439_0_, float p_78439_1_, float p_78439_2_, float p_78439_3_, float p_78439_4_, int p_78439_5_, int p_78439_6_, float p_78439_7_) { - // Redirect to new custom renderer. This should not be necessary but works as failsafe - RenderHelper.customRenderItemIn2D(p_78439_0_, p_78439_1_, p_78439_2_, p_78439_3_, p_78439_4_, p_78439_5_, p_78439_6_, p_78439_7_, false); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRArmorModels.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRArmorModels.java deleted file mode 100644 index 46bd3d1..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRArmorModels.java +++ /dev/null @@ -1,114 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.CinderLoE; -import com.zivilon.cinder_loe.client.model.*; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; - -import java.util.HashMap; -import java.util.Map; - -import lotr.client.model.LOTRArmorModels; -import lotr.client.model.LOTRModelArnorHelmet; -import lotr.client.model.LOTRModelBlackNumenoreanHelmet; -import lotr.client.model.LOTRModelBlackUrukHelmet; -import lotr.client.model.LOTRModelDorwinionElfHelmet; -import lotr.client.model.LOTRModelEasterlingHelmet; -import lotr.client.model.LOTRModelGaladhrimHelmet; -import lotr.client.model.LOTRModelGemsbokHelmet; -import lotr.client.model.LOTRModelGondolinHelmet; -import lotr.client.model.LOTRModelGondorHelmet; -import lotr.client.model.LOTRModelGulfChestplate; -import lotr.client.model.LOTRModelGundabadUrukHelmet; -import lotr.client.model.LOTRModelHaradRobes; -import lotr.client.model.LOTRModelHaradTurban; -import lotr.client.model.LOTRModelHarnedorChestplate; -import lotr.client.model.LOTRModelHarnedorHelmet; -import lotr.client.model.LOTRModelHeadPlate; -import lotr.client.model.LOTRModelHighElvenHelmet; -import lotr.client.model.LOTRModelLeatherHat; -import lotr.client.model.LOTRModelMoredainLionHelmet; -import lotr.client.model.LOTRModelMorgulHelmet; -import lotr.client.model.LOTRModelNearHaradWarlordHelmet; -import lotr.client.model.LOTRModelPartyHat; -import lotr.client.model.LOTRModelRohanMarshalHelmet; -import lotr.client.model.LOTRModelSwanChestplate; -import lotr.client.model.LOTRModelSwanHelmet; -import lotr.client.model.LOTRModelTauredainChieftainHelmet; -import lotr.client.model.LOTRModelTauredainGoldHelmet; -import lotr.client.model.LOTRModelUmbarHelmet; -import lotr.client.model.LOTRModelUrukHelmet; -import lotr.client.model.LOTRModelWingedHelmet; -import lotr.common.LOTRMod; - -import net.minecraft.client.model.ModelBiped; -import net.minecraft.item.Item; - -@Mixin(LOTRArmorModels.class) -public class MixinLOTRArmorModels { - - @Shadow(remap = false) - private Map> specialArmorModels; - - @Shadow(remap = false) - public void copyModelRotations(ModelBiped target, ModelBiped src) { - } - - private Map getSpecialModels(ModelBiped key) { - Map map = this.specialArmorModels.get(key); - if (map == null) { - map = new HashMap(); - map.put(LOTRMod.leatherHat, new LOTRModelLeatherHat()); - map.put(LOTRMod.helmetGondor, new LOTRModelGondorHelmet(1.0F)); - map.put(LOTRMod.helmetElven, new LOTRModelGaladhrimHelmet(1.0F)); - map.put(LOTRMod.helmetGondorWinged, new LOTRModelWingedHelmet(1.0F)); - map.put(LOTRMod.helmetMorgul, new LOTRModelMorgulHelmet(1.0F)); - map.put(LOTRMod.helmetGemsbok, new LOTRModelGemsbokHelmet(1.0F)); - map.put(LOTRMod.helmetHighElven, new LOTRModelHighElvenHelmet(1.0F)); - map.put(LOTRMod.helmetBlackUruk, new LOTRModelBlackUrukHelmet(1.0F)); - map.put(LOTRMod.helmetUruk, new LOTRModelUrukHelmet(1.0F)); - map.put(LOTRMod.helmetNearHaradWarlord, new LOTRModelNearHaradWarlordHelmet(1.0F)); - map.put(LOTRMod.helmetDolAmroth, new LOTRModelSwanHelmet(1.0F)); - map.put(LOTRMod.bodyDolAmroth, new LOTRModelSwanChestplate(1.0F)); - map.put(LOTRMod.helmetMoredainLion, new LOTRModelMoredainLionHelmet(1.0F)); - map.put(LOTRMod.helmetHaradRobes, new LOTRModelHaradTurban()); - map.put(LOTRMod.bodyHaradRobes, new LOTRModelHaradRobes(1.0F)); - map.put(LOTRMod.legsHaradRobes, new LOTRModelHaradRobes(0.5F)); - map.put(LOTRMod.bootsHaradRobes, new LOTRModelHaradRobes(1.0F)); - map.put(LOTRMod.helmetGondolin, new LOTRModelGondolinHelmet(1.0F)); - map.put(LOTRMod.helmetRohanMarshal, new LOTRModelRohanMarshalHelmet(1.0F)); - map.put(LOTRMod.helmetTauredainChieftain, new LOTRModelTauredainChieftainHelmet(1.0F)); - map.put(LOTRMod.helmetTauredainGold, new LOTRModelTauredainGoldHelmet(1.0F)); - map.put(LOTRMod.helmetGundabadUruk, new LOTRModelGundabadUrukHelmet(1.0F)); - map.put(LOTRMod.helmetUrukBerserker, new LOTRModelUrukHelmet(1.0F)); - map.put(LOTRMod.helmetDorwinionElf, new LOTRModelDorwinionElfHelmet(1.0F)); - map.put(LOTRMod.partyHat, new LOTRModelPartyHat(0.6F)); - map.put(LOTRMod.helmetArnor, new LOTRModelArnorHelmet(1.0F)); - map.put(LOTRMod.helmetRhunGold, new LOTRModelEasterlingHelmet(1.0F, false)); - map.put(LOTRMod.helmetRhunWarlord, new LOTRModelEasterlingHelmet(1.0F, true)); - map.put(LOTRMod.helmetRivendell, new LOTRModelHighElvenHelmet(1.0F)); - map.put(LOTRMod.bodyGulfHarad, new LOTRModelGulfChestplate(1.0F)); - map.put(LOTRMod.helmetUmbar, new LOTRModelUmbarHelmet(1.0F)); - map.put(LOTRMod.helmetHarnedor, new LOTRModelHarnedorHelmet(1.0F)); - map.put(LOTRMod.bodyHarnedor, new LOTRModelHarnedorChestplate(1.0F)); - map.put(LOTRMod.helmetBlackNumenorean, new LOTRModelBlackNumenoreanHelmet(1.0F)); - map.put(CinderLoE.helmetRedDwarf, new ModelRedDwarfHelmet(1.0F)); - map.put(CinderLoE.helmetBreeKettle, new ModelBreeKettleHelmet(1.0F)); - map.put(CinderLoE.helmetbrokenhalo, new ModelBrokenHalo(1.0F)); - map.put(CinderLoE.helmetRhudaur, new ModelRhudaurHelmet(1.0F)); - map.put(CinderLoE.bodyserpent, new ModelBodySerpent(1.0F)); - map.put(CinderLoE.helmetUsurper, new ModelUsurperHelmet(1.0F)); - map.put(CinderLoE.helmetWarlord, new ModelWarlordHelmet(1.0f)); - map.put(CinderLoE.bodyJade, new ModelBodyJade(1.0f)); - map.put(CinderLoE.legsJade, new ModelLegsJade(1.0f)); - map.put(CinderLoE.helmetJade, new ModelJadeHelmet(1.0f)); - map.put(LOTRMod.plate, new LOTRModelHeadPlate()); - map.put(LOTRMod.woodPlate, new LOTRModelHeadPlate()); - map.put(LOTRMod.ceramicPlate, new LOTRModelHeadPlate()); - for (ModelBiped armorModel : map.values()) - copyModelRotations(armorModel, key); - this.specialArmorModels.put(key, map); - } - return map; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRBrewingRecipes.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRBrewingRecipes.java deleted file mode 100644 index d82b743..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRBrewingRecipes.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import lotr.common.recipe.LOTRBrewingRecipes; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.gen.Invoker; -import net.minecraft.item.ItemStack; - -@Mixin(LOTRBrewingRecipes.class) -public interface MixinLOTRBrewingRecipes { - - @Invoker(value = "addBrewingRecipe", remap = false) - static void addRecipe(ItemStack result, Object... ingredients) { - throw new UnsupportedOperationException(); // This is just to satisfy the compiler; it won't be used. - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRClientProxy.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRClientProxy.java deleted file mode 100644 index 15bf487..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRClientProxy.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.client.render.item.RenderHelper; -import com.zivilon.cinder_loe.CinderLoE_Config; -import org.lwjgl.opengl.GL11; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; - -import lotr.client.LOTRClientProxy; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.texture.TextureManager; -import net.minecraft.util.ResourceLocation; - -@Mixin(LOTRClientProxy.class) -public abstract class MixinLOTRClientProxy { - @Shadow(remap = false) - public static final ResourceLocation enchantmentTexture = new ResourceLocation("textures/misc/enchanted_item_glint.png"); - - /** - * @author Shinare - * @reason Added support for semi-transparent item textures - */ - @Overwrite(remap = false) - public static void renderEnchantmentEffect() { - Tessellator tessellator = Tessellator.instance; - TextureManager texturemanager = Minecraft.getMinecraft().getTextureManager(); - GL11.glDepthFunc(514); - GL11.glDisable(2896); - texturemanager.bindTexture(enchantmentTexture); - GL11.glEnable(3042); - GL11.glBlendFunc(768, 1); - GL11.glColor4f(CinderLoE_Config.enchantment_color_red, CinderLoE_Config.enchantment_color_green, CinderLoE_Config.enchantment_color_blue, 1.0F); - GL11.glMatrixMode(5890); - GL11.glPushMatrix(); - float scale = 0.125F; - GL11.glScalef(scale, scale, scale); - float randomShift = (float)(Minecraft.getSystemTime() % 3000L) / 3000.0F * 8.0F; - GL11.glTranslatef(randomShift, 0.0F, 0.0F); - GL11.glRotatef(-50.0F, 0.0F, 0.0F, 1.0F); - RenderHelper.customRenderItemIn2D(tessellator, 0.0F, 0.0F, 1.0F, 1.0F, 256, 256, 0.0625F, true); - GL11.glPopMatrix(); - GL11.glPushMatrix(); - GL11.glScalef(scale, scale, scale); - randomShift = (float)(Minecraft.getSystemTime() % 4873L) / 4873.0F * 8.0F; - GL11.glTranslatef(-randomShift, 0.0F, 0.0F); - GL11.glRotatef(10.0F, 0.0F, 0.0F, 1.0F); - RenderHelper.customRenderItemIn2D(tessellator, 0.0F, 0.0F, 1.0F, 1.0F, 256, 256, 0.0625F, true); - GL11.glPopMatrix(); - GL11.glMatrixMode(5888); - GL11.glDisable(3042); - GL11.glEnable(2896); - GL11.glDepthFunc(515); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRContainerAnvil.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRContainerAnvil.java deleted file mode 100644 index fe07af1..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRContainerAnvil.java +++ /dev/null @@ -1,537 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.Shadow; - -import lotr.common.LOTRConfig; -import lotr.common.LOTRMod; -import lotr.common.enchant.LOTREnchantment; -import lotr.common.enchant.LOTREnchantmentCombining; -import lotr.common.enchant.LOTREnchantmentHelper; -import lotr.common.entity.npc.LOTREntityScrapTrader; -import lotr.common.entity.npc.LOTRTradeable; -import lotr.common.inventory.LOTRContainerAnvil; -import lotr.common.item.AnvilNameColorProvider; -import lotr.common.item.LOTRItemEnchantment; -import lotr.common.item.LOTRItemModifierTemplate; -import lotr.common.item.LOTRMaterial; -import lotr.common.recipe.LOTRRecipePoisonWeapon; -import net.minecraft.init.Items; -import net.minecraft.inventory.IInventory; -import net.minecraft.enchantment.Enchantment; -import net.minecraft.enchantment.EnchantmentHelper; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemArmor; -import net.minecraft.item.ItemStack; -import net.minecraft.item.ItemSword; -import net.minecraft.item.ItemTool; -import net.minecraft.util.EnumChatFormatting; -import net.minecraft.util.MathHelper; - -import com.zivilon.cinder_loe.CinderLoE; -import com.zivilon.cinder_loe.util.Utilities; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Objects; - -import org.apache.commons.lang3.StringUtils; - -@Mixin(LOTRContainerAnvil.class) -public abstract class MixinLOTRContainerAnvil { - @Shadow - public IInventory invInput; - @Shadow - public IInventory invOutput; - @Shadow - public LOTRTradeable theTrader; - @Shadow - public EntityPlayer thePlayer; - @Shadow - public int materialCost; - @Shadow - public int reforgeCost; - @Shadow - public int engraveOwnerCost; - @Shadow - public boolean isSmithScrollCombine; - @Shadow - public boolean isTrader; - @Shadow - private String repairedItemName; - @Shadow - abstract void detectAndSendChanges(); - @Shadow - abstract float getTraderMaterialPrice(ItemStack inputItem); - @Shadow - static boolean costsToRename(ItemStack itemstack) { - return false; - } - @Shadow - static String stripFormattingCodes(String name) { - return null; - } - @Shadow - static String applyFormattingCodes(String name, List colors) { - return null; - } - @Shadow - static List getAppliedFormattingCodes(String name) { - return null; - } - - - /** - * @author Shinare - * @reason KeyLime - */ - @Overwrite(remap = false) - public boolean isRepairMaterial(ItemStack inputItem, ItemStack materialItem) { - if (inputItem.getItem().getIsRepairable(inputItem, materialItem)) - return true; - Item item = inputItem.getItem(); - if (item == Items.bow && LOTRMod.rohanBow.getIsRepairable(inputItem, materialItem)) - return true; - if (item instanceof net.minecraft.item.ItemFishingRod && materialItem.getItem() == Items.string) - return true; - if (item instanceof net.minecraft.item.ItemShears && materialItem.getItem() == Items.iron_ingot) - return true; - if (item instanceof lotr.common.item.LOTRItemChisel && materialItem.getItem() == Items.iron_ingot) - return true; - if (item instanceof net.minecraft.item.ItemEnchantedBook && materialItem.getItem() == Items.paper) - return true; - Item.ToolMaterial material = null; - if (item instanceof ItemTool) { - material = Item.ToolMaterial.valueOf(((ItemTool)item).getToolMaterialName()); - } else if (item instanceof ItemSword) { - material = Item.ToolMaterial.valueOf(((ItemSword)item).getToolMaterialName()); - } - if (material == Item.ToolMaterial.WOOD || material == LOTRMaterial.MOREDAIN_WOOD.toToolMaterial()) - return LOTRMod.isOreNameEqual(materialItem, "plankWood"); - if (material == LOTRMaterial.MALLORN.toToolMaterial()) - return (materialItem.getItem() == Item.getItemFromBlock(LOTRMod.planks) && materialItem.getItemDamage() == 1); - if (material == LOTRMaterial.MALLORN_MACE.toToolMaterial()) - return (materialItem.getItem() == Item.getItemFromBlock(LOTRMod.wood) && materialItem.getItemDamage() == 1); - if (material == CinderLoE.MATERIAL_RED_DWARF.toToolMaterial()) - return (materialItem.getItem() == CinderLoE.redDwarfSteel); - if (material == CinderLoE.MATERIAL_ASH.toToolMaterial()) - return (materialItem.getItem() == CinderLoE.ingotAsh); - if (material == CinderLoE.MATERIAL_BONEMOLD.toToolMaterial()) - return (materialItem.getItem() == CinderLoE.bonemold); - if (material == CinderLoE.EVENT.toToolMaterial()) - return LOTRMod.isOreNameEqual(materialItem, "ice"); - if (material == CinderLoE.MATERIAL_BREE.toToolMaterial()) - return (materialItem.getItem() == Items.iron_ingot); - if (material == CinderLoE.MATERIAL_WARLORD.toToolMaterial()) - return (materialItem.getItem() == LOTRMod.bronze); - if (item instanceof ItemArmor armor) { - ItemArmor.ArmorMaterial armorMaterial = armor.getArmorMaterial(); - if (armorMaterial == LOTRMaterial.BONE.toArmorMaterial()) - return LOTRMod.isOreNameEqual(materialItem, "bone"); - if (armorMaterial == CinderLoE.MATERIAL_RED_DWARF.toArmorMaterial()) - return (materialItem.getItem() == CinderLoE.redDwarfSteel); - if (armorMaterial == CinderLoE.MATERIAL_LIMWAITH_WOOD.toArmorMaterial()) - return (materialItem.getItem() == Item.getItemFromBlock(LOTRMod.planks) && materialItem.getItemDamage() == 15); - if (armorMaterial == CinderLoE.MATERIAL_BREE.toArmorMaterial()) - return (materialItem.getItem() == Items.iron_ingot); - if (armorMaterial == CinderLoE.MATERIAL_BATTLENUN.toArmorMaterial()) - return (materialItem.getItem() == Items.iron_ingot); - if (armorMaterial == CinderLoE.MATERIAL_BONEMOLD.toArmorMaterial()) - return (materialItem.getItem() == CinderLoE.bonemold); - if (armorMaterial == CinderLoE.MATERIAL_RHUDAUR.toArmorMaterial()) - return (materialItem.getItem() == Items.iron_ingot); - if (armorMaterial == CinderLoE.MATERIAL_JADE.toArmorMaterial()) - return (materialItem.getItem() == LOTRMod.emerald); - if (armorMaterial == CinderLoE.MATERIAL_SERPENT.toArmorMaterial()) - return (materialItem.getItem() == LOTRMod.bronze); - if (armorMaterial == CinderLoE.MATERIAL_WARLORD.toArmorMaterial()) - return (materialItem.getItem() == LOTRMod.bronze); - if (armorMaterial == CinderLoE.MATERIAL_USURPER.toArmorMaterial()) - return (materialItem.getItem() == Items.iron_ingot); - } - - return false; - } - - /** - * @author Shinare - * @reason Adding repair kits and removing bad modifiers from 3 modifier limit - **/ - @Overwrite(remap = false) - private void updateRepairOutput() { - ItemStack inputItem = this.invInput.getStackInSlot(0); - this.materialCost = 0; - this.reforgeCost = 0; - this.engraveOwnerCost = 0; - this.isSmithScrollCombine = false; - int baseAnvilCost = 0; - int repairCost = 0; - int combineCost = 0; - int renameCost = 0; - if (inputItem == null) { - this.invOutput.setInventorySlotContents(0, null); - this.materialCost = 0; - } else { - ItemStack inputCopy = inputItem.copy(); - ItemStack combinerItem = this.invInput.getStackInSlot(1); - ItemStack materialItem = this.isTrader ? null : this.invInput.getStackInSlot(2); - Map inputEnchants = EnchantmentHelper.getEnchantments(inputCopy); - boolean enchantingWithBook = false; - List inputModifiers = LOTREnchantmentHelper.getEnchantList(inputCopy); - baseAnvilCost = LOTREnchantmentHelper.getAnvilCost(inputItem) + ((combinerItem == null) ? 0 : LOTREnchantmentHelper.getAnvilCost(combinerItem)); - this.materialCost = 0; - String previousDisplayName = inputCopy.getDisplayName(); - String defaultItemName = inputCopy.getItem().getItemStackDisplayName(inputCopy); - String nameToApply = this.repairedItemName; - String formattedNameToApply = nameToApply; - List colorsToApply = new ArrayList(); - colorsToApply.addAll(getAppliedFormattingCodes(inputCopy.getDisplayName())); - boolean alteringNameColor = false; - if (costsToRename(inputItem) && combinerItem != null) { - if (combinerItem.getItem() instanceof AnvilNameColorProvider) { - AnvilNameColorProvider nameColorProvider = (AnvilNameColorProvider)combinerItem.getItem(); - EnumChatFormatting newColor = nameColorProvider.getAnvilNameColor(); - boolean isDifferentColor = !colorsToApply.contains(newColor); - if (isDifferentColor) { - for (EnumChatFormatting ecf : EnumChatFormatting.values()) { - if (ecf.isColor()) - while (colorsToApply.contains(ecf)) - colorsToApply.remove(ecf); - } - colorsToApply.add(newColor); - alteringNameColor = true; - } - } else if (combinerItem.getItem() == Items.flint) { - if (!colorsToApply.isEmpty()) { - colorsToApply.clear(); - alteringNameColor = true; - } - } - if (alteringNameColor) - renameCost++; - } - if (!colorsToApply.isEmpty()) { - if (StringUtils.isBlank(formattedNameToApply)) - formattedNameToApply = defaultItemName; - formattedNameToApply = applyFormattingCodes(formattedNameToApply, colorsToApply); - } - boolean nameChange = false; - if (formattedNameToApply != null && !formattedNameToApply.equals(previousDisplayName)) - if (StringUtils.isBlank(formattedNameToApply) || formattedNameToApply.equals(defaultItemName)) { - if (inputCopy.hasDisplayName()) { - inputCopy.func_135074_t(); - if (!stripFormattingCodes(previousDisplayName).equals(stripFormattingCodes(formattedNameToApply))) - nameChange = true; - } - } else { - inputCopy.setStackDisplayName(formattedNameToApply); - if (!stripFormattingCodes(previousDisplayName).equals(stripFormattingCodes(formattedNameToApply))) - nameChange = true; - } - if (nameChange) { - boolean costRename = costsToRename(inputItem); - if (costRename) - renameCost++; - } - if (this.isTrader) { - LOTREnchantmentCombining.CombineRecipe scrollCombine = LOTREnchantmentCombining.getCombinationResult(inputItem, combinerItem); - if (scrollCombine != null) { - this.invOutput.setInventorySlotContents(0, scrollCombine.createOutputItem()); - this.materialCost = scrollCombine.cost; - this.reforgeCost = 0; - this.engraveOwnerCost = 0; - this.isSmithScrollCombine = true; - return; - } - } - boolean combining = false; - if (combinerItem != null) { - enchantingWithBook = (combinerItem.getItem() == Items.enchanted_book && Items.enchanted_book.func_92110_g(combinerItem).tagCount() > 0); - if (enchantingWithBook && !LOTRConfig.enchantingVanilla) { - this.invOutput.setInventorySlotContents(0, null); - this.materialCost = 0; - return; - } - LOTREnchantment combinerItemEnchant = null; - if (combinerItem.getItem() instanceof LOTRItemEnchantment) { - combinerItemEnchant = ((LOTRItemEnchantment)combinerItem.getItem()).theEnchant; - } else if (combinerItem.getItem() instanceof LOTRItemModifierTemplate) { - combinerItemEnchant = LOTRItemModifierTemplate.getModifier(combinerItem); - } - if (!enchantingWithBook && combinerItemEnchant == null) - if (inputCopy.isItemStackDamageable() && inputCopy.getItem() == combinerItem.getItem()) { - int inputUseLeft = inputItem.getMaxDamage() - inputItem.getItemDamageForDisplay(); - int combinerUseLeft = combinerItem.getMaxDamage() - combinerItem.getItemDamageForDisplay(); - int restoredUses = combinerUseLeft + inputCopy.getMaxDamage() * 12 / 100; - int newUsesLeft = inputUseLeft + restoredUses; - int newDamage = inputCopy.getMaxDamage() - newUsesLeft; - newDamage = Math.max(newDamage, 0); - if (newDamage < inputCopy.getItemDamage()) { - inputCopy.setItemDamage(newDamage); - int restoredUses1 = inputCopy.getMaxDamage() - inputUseLeft; - int restoredUses2 = inputCopy.getMaxDamage() - combinerUseLeft; - combineCost += Math.max(0, Math.min(restoredUses1, restoredUses2) / 100); - } - combining = true; - } else if (!alteringNameColor && combinerItem.getItem() != CinderLoE.forgingKit) { - this.invOutput.setInventorySlotContents(0, null); - this.materialCost = 0; - return; - } - Map outputEnchants = new HashMap(inputEnchants); - if (LOTRConfig.enchantingVanilla) { - Map combinerEnchants = EnchantmentHelper.getEnchantments(combinerItem); - for (Object obj : combinerEnchants.keySet()) { - int combinedEnchLevel, combinerEnchID = ((Integer)obj).intValue(); - Enchantment combinerEnch = Enchantment.enchantmentsList[combinerEnchID]; - int inputEnchLevel = 0; - if (outputEnchants.containsKey(Integer.valueOf(combinerEnchID))) - inputEnchLevel = ((Integer)outputEnchants.get(Integer.valueOf(combinerEnchID))).intValue(); - int combinerEnchLevel = ((Integer)combinerEnchants.get(Integer.valueOf(combinerEnchID))).intValue(); - if (inputEnchLevel == combinerEnchLevel) { - combinedEnchLevel = ++combinerEnchLevel; - } else { - combinedEnchLevel = Math.max(combinerEnchLevel, inputEnchLevel); - } - combinerEnchLevel = combinedEnchLevel; - int levelsAdded = combinerEnchLevel - inputEnchLevel; - boolean canApply = combinerEnch.canApply(inputItem); - if (this.thePlayer.capabilities.isCreativeMode || inputItem.getItem() == Items.enchanted_book) - canApply = true; - for (Object objIn : outputEnchants.keySet()) { - int inputEnchID = ((Integer)objIn).intValue(); - Enchantment inputEnch = Enchantment.enchantmentsList[inputEnchID]; - if (inputEnchID != combinerEnchID) - if (!combinerEnch.canApplyTogether(inputEnch) || !inputEnch.canApplyTogether(combinerEnch)) { - canApply = false; - combineCost += levelsAdded; - } - } - if (canApply) { - combinerEnchLevel = Math.min(combinerEnchLevel, combinerEnch.getMaxLevel()); - outputEnchants.put(Integer.valueOf(combinerEnchID), Integer.valueOf(combinerEnchLevel)); - int costPerLevel = 0; - int enchWeight = combinerEnch.getWeight(); - if (enchWeight == 1) { - costPerLevel = 8; - } else if (enchWeight == 2) { - costPerLevel = 4; - } else if (enchWeight == 5) { - costPerLevel = 2; - } else if (enchWeight == 10) { - costPerLevel = 1; - } - combineCost += costPerLevel * levelsAdded; - } - } - } else { - outputEnchants.clear(); - } - EnchantmentHelper.setEnchantments(outputEnchants, inputCopy); - int maxMods = 3; - List outputMods = new ArrayList(); - outputMods.addAll(inputModifiers); - List combinerMods = LOTREnchantmentHelper.getEnchantList(combinerItem); - if (combinerItemEnchant != null) { - combinerMods.add(combinerItemEnchant); - if (combinerItemEnchant == LOTREnchantment.fire) { - Item item = inputCopy.getItem(); - if (LOTRRecipePoisonWeapon.poisonedToInput.containsKey(item)) { - Item unpoisoned = (Item)LOTRRecipePoisonWeapon.poisonedToInput.get(item); - inputCopy.func_150996_a(unpoisoned); - } - } - } - for (LOTREnchantment combinerMod : combinerMods) { - boolean canApply = combinerMod.canApply(inputItem, false); - if (canApply) - for (LOTREnchantment mod : outputMods) { - if (!mod.isCompatibleWith(combinerMod) || !combinerMod.isCompatibleWith(mod)) - canApply = false; - } - int numOutputMods = 0; - for (LOTREnchantment mod : outputMods) { - if (!mod.bypassAnvilLimit()) - numOutputMods++; - } - if (!combinerMod.bypassAnvilLimit() && numOutputMods >= maxMods) - canApply = false; - if (canApply) { - outputMods.add(combinerMod); - if (combinerMod.isBeneficial()) - combineCost += Math.max(1, (int)combinerMod.getValueModifier()); - } - } - if (combinerItem.getItem() == CinderLoE.forgingKit) { - List newMods = new ArrayList(); - if (combinerItem.getItemDamage() == 0) { - for (LOTREnchantment mod : outputMods) { - if (Utilities.isBadEnch(mod)) { - combineCost += 2; - } else { - newMods.add(mod); - } - } - } else { - for (LOTREnchantment mod : outputMods) { - if (Utilities.upgradedEnchants.containsKey(mod.enchantName)) { - combineCost += 2; - newMods.add(Utilities.upgradeEnch(inputCopy, mod)); - } else { - newMods.add(mod); - } - } - } - outputMods = newMods; - } - LOTREnchantmentHelper.setEnchantList(inputCopy, outputMods); - } - if (combineCost > 0) - combining = true; - int numEnchants = 0; - for (Object obj : inputEnchants.keySet()) { - int enchID = ((Integer)obj).intValue(); - Enchantment ench = Enchantment.enchantmentsList[enchID]; - int enchLevel = ((Integer)inputEnchants.get(Integer.valueOf(enchID))).intValue(); - numEnchants++; - int costPerLevel = 0; - int enchWeight = ench.getWeight(); - if (enchWeight == 1) { - costPerLevel = 8; - } else if (enchWeight == 2) { - costPerLevel = 4; - } else if (enchWeight == 5) { - costPerLevel = 2; - } else if (enchWeight == 10) { - costPerLevel = 1; - } - baseAnvilCost += numEnchants + enchLevel * costPerLevel; - } - if (enchantingWithBook && !inputCopy.getItem().isBookEnchantable(inputCopy, combinerItem)) - inputCopy = null; - for (LOTREnchantment mod : inputModifiers) { - if (mod.isBeneficial()) - baseAnvilCost += Math.max(1, (int)mod.getValueModifier()); - } - if (inputCopy.isItemStackDamageable()) { - boolean canRepair = false; - int availableMaterials = 0; - if (this.isTrader) { - canRepair = (getTraderMaterialPrice(inputItem) > 0.0F); - availableMaterials = Integer.MAX_VALUE; - } else { - canRepair = (materialItem != null && isRepairMaterial(inputItem, materialItem)); - if (materialItem != null) - availableMaterials = materialItem.stackSize - combineCost - renameCost; - } - int oneItemRepair = Math.min(inputCopy.getItemDamageForDisplay(), inputCopy.getMaxDamage() / 4); - if (canRepair && availableMaterials > 0 && oneItemRepair > 0) { - availableMaterials -= baseAnvilCost; - if (availableMaterials > 0) { - int usedMaterials = 0; - while (oneItemRepair > 0 && usedMaterials < availableMaterials) { - int newDamage = inputCopy.getItemDamageForDisplay() - oneItemRepair; - inputCopy.setItemDamage(newDamage); - oneItemRepair = Math.min(inputCopy.getItemDamageForDisplay(), inputCopy.getMaxDamage() / 4); - usedMaterials++; - } - repairCost += usedMaterials; - } else if (!nameChange && !combining) { - repairCost = 1; - int newDamage = inputCopy.getItemDamageForDisplay() - oneItemRepair; - inputCopy.setItemDamage(newDamage); - } - } - } - boolean repairing = (repairCost > 0); - if (combining || repairing) { - this.materialCost = baseAnvilCost; - this.materialCost += combineCost + repairCost; - } else { - this.materialCost = 0; - } - this.materialCost += renameCost; - if (inputCopy != null) { - int nextAnvilCost = LOTREnchantmentHelper.getAnvilCost(inputItem); - if (combinerItem != null) { - int combinerAnvilCost = LOTREnchantmentHelper.getAnvilCost(combinerItem); - nextAnvilCost = Math.max(nextAnvilCost, combinerAnvilCost); - } - if (combining) { - nextAnvilCost += 2; - } else if (repairing) { - nextAnvilCost++; - } - nextAnvilCost = Math.max(nextAnvilCost, 0); - if (nextAnvilCost > 0) - LOTREnchantmentHelper.setAnvilCost(inputCopy, nextAnvilCost); - } - if (LOTREnchantmentHelper.isReforgeable(inputItem)) { - this.reforgeCost = 2; - if (inputItem.getItem() instanceof ItemArmor) - this.reforgeCost = 3; - if (inputItem.isItemStackDamageable()) { - ItemStack reforgeCopy = inputItem.copy(); - int oneItemRepair = Math.min(reforgeCopy.getItemDamageForDisplay(), reforgeCopy.getMaxDamage() / 4); - if (oneItemRepair > 0) { - int usedMaterials = 0; - while (oneItemRepair > 0) { - int newDamage = reforgeCopy.getItemDamageForDisplay() - oneItemRepair; - reforgeCopy.setItemDamage(newDamage); - oneItemRepair = Math.min(reforgeCopy.getItemDamageForDisplay(), reforgeCopy.getMaxDamage() / 4); - usedMaterials++; - } - this.reforgeCost += usedMaterials; - } - } - this.engraveOwnerCost = 2; - } else { - this.reforgeCost = 0; - this.engraveOwnerCost = 0; - } - if (isRepairMaterial(inputItem, new ItemStack(Items.string))) { - int stringFactor = 3; - this.materialCost *= stringFactor; - this.reforgeCost *= stringFactor; - this.engraveOwnerCost *= stringFactor; - } - if (this.isTrader) { - boolean isCommonRenameOnly = (nameChange && this.materialCost == 0); - float materialPrice = getTraderMaterialPrice(inputItem); - if (materialPrice > 0.0F) { - this.materialCost = Math.round(this.materialCost * materialPrice); - this.materialCost = Math.max(this.materialCost, 1); - this.reforgeCost = Math.round(this.reforgeCost * materialPrice); - this.reforgeCost = Math.max(this.reforgeCost, 1); - this.engraveOwnerCost = Math.round(this.engraveOwnerCost * materialPrice); - this.engraveOwnerCost = Math.max(this.engraveOwnerCost, 1); - if (this.theTrader instanceof LOTREntityScrapTrader) { - this.materialCost = MathHelper.ceiling_float_int(this.materialCost * 0.5F); - this.materialCost = Math.max(this.materialCost, 1); - this.reforgeCost = MathHelper.ceiling_float_int(this.reforgeCost * 0.5F); - this.reforgeCost = Math.max(this.reforgeCost, 1); - this.engraveOwnerCost = MathHelper.ceiling_float_int(this.engraveOwnerCost * 0.5F); - this.engraveOwnerCost = Math.max(this.engraveOwnerCost, 1); - } - } else if (!isCommonRenameOnly) { - this.invOutput.setInventorySlotContents(0, null); - this.materialCost = 0; - this.reforgeCost = 0; - this.engraveOwnerCost = 0; - return; - } - } - if (combining || repairing || nameChange || alteringNameColor) { - this.invOutput.setInventorySlotContents(0, inputCopy); - } else { - this.invOutput.setInventorySlotContents(0, null); - this.materialCost = 0; - } - detectAndSendChanges(); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREnchantment.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREnchantment.java deleted file mode 100644 index c08d748..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREnchantment.java +++ /dev/null @@ -1,92 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.enchants.LOTREnchantmentWeakProtectionRanged; -import com.zivilon.cinder_loe.enchants.LOTREnchantmentArmorSpecial; -import com.zivilon.cinder_loe.util.Utilities; -import lotr.common.enchant.*; -import net.minecraft.item.ItemStack; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; - -import java.lang.reflect.Field; -import java.util.Map; - -@Mixin(LOTREnchantment.class) -public class MixinLOTREnchantment { - @Shadow - private boolean bypassAnvilLimit; - - @Inject(method = "", at = @At("TAIL")) - private static void onStaticInit(CallbackInfo ci) { - // Add your new enchantments here - try { - LOTREnchantment protectRangedWeak1 = new LOTREnchantmentWeakProtectionRanged("protectRangedWeak1", -1).setEnchantWeight(0); - LOTREnchantment protectRangedWeak2 = new LOTREnchantmentWeakProtectionRanged("protectRangedWeak2", -2).setEnchantWeight(0); - LOTREnchantment rangedWeak3 = new LOTREnchantmentRangedDamage("rangedWeak3", 0.25f); - LOTREnchantment weak4 = new LOTREnchantmentDamage("weak4", -3.0f).setEnchantWeight(0); - LOTREnchantment chill = new LOTREnchantmentDamage("strong5", 3.25f).setEnchantWeight(0); - LOTREnchantment rangedStrong4 = new LOTREnchantmentRangedDamage("rangedStrong4", 1.4f).setEnchantWeight(0).setSkilful(); - LOTREnchantment meleeReach2 = new LOTREnchantmentMeleeReach("meleeReach2", 1.33f).setEnchantWeight(0).setSkilful(); - LOTREnchantment meleeSpeed2 = new LOTREnchantmentMeleeSpeed("meleeSpeed2", 1.33f).setEnchantWeight(0).setSkilful(); - LOTREnchantment Shinare = new LOTREnchantmentArmorSpecial("Shinare").setEnchantWeight(0).setSkilful(); - LOTREnchantment swiftness = new LOTREnchantmentArmorSpecial("swiftness").setEnchantWeight(0).setSkilful(); - LOTREnchantment fireRepair = new LOTREnchantmentArmorSpecial("fireRepair").setEnchantWeight(0).setSkilful(); - LOTREnchantment mountArmor = new LOTREnchantmentArmorSpecial("mountArmor").setEnchantWeight(0).setSkilful(); - LOTREnchantment stealth = new LOTREnchantmentArmorSpecial("stealth").setEnchantWeight(0).setSkilful(); - - - LOTREnchantment.allEnchantments.add(protectRangedWeak1); - LOTREnchantment.allEnchantments.add(protectRangedWeak2); - rangedWeak3.allEnchantments.add(rangedWeak3); - LOTREnchantment.allEnchantments.add(weak4); - LOTREnchantment.allEnchantments.add(chill); - LOTREnchantment.allEnchantments.add(rangedStrong4); - LOTREnchantment.allEnchantments.add(meleeReach2); - LOTREnchantment.allEnchantments.add(meleeSpeed2); - LOTREnchantment.allEnchantments.add(Shinare); - LOTREnchantment.allEnchantments.add(swiftness); - LOTREnchantment.allEnchantments.add(fireRepair); - LOTREnchantment.allEnchantments.add(mountArmor); - LOTREnchantment.allEnchantments.add(stealth); - - Field enchantsByNameField = LOTREnchantment.class.getDeclaredField("enchantsByName"); - enchantsByNameField.setAccessible(true); - @SuppressWarnings("unchecked") - Map enchantsByName = (Map) enchantsByNameField.get(null); - - enchantsByName.put(protectRangedWeak1.enchantName, protectRangedWeak1); - enchantsByName.put(protectRangedWeak2.enchantName, protectRangedWeak2); - enchantsByName.put(rangedWeak3.enchantName, rangedWeak3); - enchantsByName.put(weak4.enchantName, weak4); - enchantsByName.put(chill.enchantName, chill); - enchantsByName.put(rangedStrong4.enchantName, rangedStrong4); - enchantsByName.put(meleeReach2.enchantName, meleeReach2); - enchantsByName.put(meleeSpeed2.enchantName, meleeSpeed2); - enchantsByName.put(Shinare.enchantName, Shinare); - enchantsByName.put(swiftness.enchantName, swiftness); - enchantsByName.put(fireRepair.enchantName, fireRepair); - enchantsByName.put(mountArmor.enchantName, mountArmor); - enchantsByName.put(stealth.enchantName, stealth); - - } catch (NoSuchFieldException | IllegalAccessException e) { - e.printStackTrace(); - } - } - - /** - * @author MrJeep20 - * @reason Bad enchantments will not count towards 3 modifier limit now - **/ - @Overwrite(remap = false) - public boolean bypassAnvilLimit() { - if (Utilities.isBadEnch((LOTREnchantment)(Object)this)) - return true; - return this.bypassAnvilLimit; - } - -} - diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREnchantmentType.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREnchantmentType.java deleted file mode 100644 index e871d08..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREnchantmentType.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.util.LOTREnchantmentExclusions; - -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; - -import lotr.common.enchant.LOTREnchantmentType; -import lotr.common.item.LOTRWeaponStats; -import net.minecraft.item.Item; -import net.minecraft.item.ItemArmor; -import net.minecraft.item.ItemStack; - -@Mixin(LOTREnchantmentType.class) -public class MixinLOTREnchantmentType { - - @Inject(method = "canApply", at = @At("HEAD"), cancellable = true, remap = false) - public void onCanApply(ItemStack itemstack, boolean considering, CallbackInfoReturnable cir) { - Item item = itemstack.getItem(); - if (LOTREnchantmentExclusions.exclusions.contains(item)) { - cir.setReturnValue(false); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityAINearestAttackableTargetBasic.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityAINearestAttackableTargetBasic.java deleted file mode 100644 index a3e8f1f..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityAINearestAttackableTargetBasic.java +++ /dev/null @@ -1,119 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.entity.Renegade; -import com.zivilon.cinder_loe.potion.LoEPotions; -import com.zivilon.cinder_loe.util.IEntityLivingBase; - -import lotr.common.LOTRLevelData; -import lotr.common.LOTRMod; -import lotr.common.entity.ai.LOTREntityAINearestAttackableTargetBasic; -import lotr.common.entity.ai.LOTREntityAINearestAttackableTargetBasic.TargetSorter; -import lotr.common.entity.npc.LOTREntityNPC; -import lotr.common.entity.npc.LOTREntityNPCRideable; - -import net.minecraft.command.IEntitySelector; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityCreature; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.ai.EntityAITarget; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.world.World; - -import org.spongepowered.asm.mixin.*; -import org.spongepowered.asm.mixin.injection.*; -import org.spongepowered.asm.mixin.injection.callback.*; - -import java.util.UUID; -import java.util.Collections; -import java.util.List; - -@Mixin(LOTREntityAINearestAttackableTargetBasic.class) -public abstract class MixinLOTREntityAINearestAttackableTargetBasic extends EntityAITarget { - @Shadow - private final Class targetClass; - @Shadow - private EntityLivingBase targetEntity; - @Shadow - private final TargetSorter targetSorter; - @Shadow - private final IEntitySelector targetSelector; - @Shadow - private final int targetChance; - - public MixinLOTREntityAINearestAttackableTargetBasic(EntityCreature p_i1669_1_, boolean p_i1669_2_) { - super(p_i1669_1_, p_i1669_2_); - targetClass = null; // Should never get applied because constructors can't be overwritten - targetEntity = null; - targetSorter = null; - targetSelector = null; - targetChance = 0; - } - - @Overwrite(remap = true) - public boolean shouldExecute() { - EntityCreature self = taskOwner; - - if (!(self instanceof IEntityLivingBase)) return original_should_execute(); - - UUID leader_id = ((IEntityLivingBase) self).get_warband_uuid(); - if (leader_id == null) return original_should_execute(); - - Entity leader = find_entity_by_uuid(self.worldObj, leader_id); - if (leader == null) return original_should_execute(); - - double distance_squared = self.getDistanceSqToEntity(leader); - if (distance_squared > 576.0D) { - self.setAttackTarget(null); - self.getNavigator().tryMoveToEntityLiving(leader, 1.3D); - return false; - } - return original_should_execute(); - } - - public boolean original_should_execute() { - if (this.targetChance > 0 && this.taskOwner.getRNG().nextInt(this.targetChance) != 0) - return false; - if (this.taskOwner instanceof LOTREntityNPC) { - LOTREntityNPC npc = (LOTREntityNPC)this.taskOwner; - if (npc.hiredNPCInfo.isActive && npc.hiredNPCInfo.isHalted()) - return false; - if (npc.isChild()) - return false; - } - if (this.taskOwner instanceof LOTREntityNPCRideable) { - LOTREntityNPCRideable rideable = (LOTREntityNPCRideable)this.taskOwner; - if (rideable.isNPCTamed() || rideable.riddenByEntity instanceof EntityPlayer) - return false; - } - double range = getTargetDistance(); - double rangeY = Math.min(range, 8.0D); - List entities = this.taskOwner.worldObj.selectEntitiesWithinAABB(this.targetClass, this.taskOwner.boundingBox.expand(range, rangeY, range), this.targetSelector); - List entity_list = (List)entities; - Collections.sort(entity_list, this.targetSorter); - if (entities.isEmpty()) - return false; - this.targetEntity = (EntityLivingBase)entities.get(0); - return true; - } - - private Entity find_entity_by_uuid(World world, UUID uuid) { - for (Object obj : world.loadedEntityList) { - if (obj instanceof Entity && uuid.equals(((Entity) obj).getUniqueID())) { - return (Entity)obj; - } - } - return null; - } - - /** - * @author Shinare - * @reason Added corrupting potion effect that makes all NPCs hostile - */ - @Overwrite(remap = false) - protected boolean isPlayerSuitableAlignmentTarget(EntityPlayer entityplayer) { - float alignment = LOTRLevelData.getData(entityplayer).getAlignment(LOTRMod.getNPCFaction((Entity)this.taskOwner)); - if (entityplayer == null || LoEPotions.corrupting == null) return alignment < 0.0F; - boolean corrupting = entityplayer.isPotionActive(LoEPotions.corrupting); // Needs to be implemented - return (alignment < 0.0F || corrupting); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityBear.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityBear.java deleted file mode 100644 index 99d81f2..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityBear.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.CinderLoE; -import lotr.common.LOTRMod; -import lotr.common.entity.animal.LOTREntityBear; -import lotr.common.entity.npc.LOTREntityWarg; -import net.minecraft.entity.Entity; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.Shadow; - - -@Mixin(LOTREntityBear.class) -public abstract class MixinLOTREntityBear extends Entity { - - public MixinLOTREntityBear(World worldIn) { - super(worldIn); - } - - /** - * @author KeyLime17 - * @reason Mevans - */ - - @Shadow - public abstract LOTREntityBear.BearType getBearType(); - - @Overwrite(remap = false) - protected void func_70628_a(boolean flag, int i) { - Item furItem = null; - int furMeta = 0; - switch(getBearType().bearID) { - case 0: - furItem = LOTRMod.fur; - break; - case 1: - furItem = CinderLoE.cinderFurItem; - furMeta = 5; - break; - case 2: - furItem = CinderLoE.cinderFurItem; - furMeta = 4; - break; - } - - int furs = 1 + this.rand.nextInt(3) + this.rand.nextInt(i + 1); - for (int l = 0; l < furs; l++) - entityDropItem(new ItemStack(furItem, 1, furMeta), 0.0F); - int bones = 2 + this.rand.nextInt(2) + this.rand.nextInt(i + 1); - for (int j = 0; j < bones; j++) - dropItem(LOTRMod.wargBone, 1); - if (flag) { - int rugChance = 50 - i * 8; - rugChance = Math.max(rugChance, 1); - if (this.rand.nextInt(rugChance) == 0) - entityDropItem(new ItemStack(LOTRMod.wargskinRug, 1, (getBearType()).bearID), 0.0F); - } - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityLioness.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityLioness.java deleted file mode 100644 index 76d5261..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityLioness.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.CinderLoE; -import lotr.common.LOTRMod; -import lotr.common.entity.animal.LOTREntityBear; -import lotr.common.item.LOTRItemLionRug; -import net.minecraft.entity.Entity; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.Shadow; - - -@Mixin(LOTREntityBear.class) -public abstract class MixinLOTREntityLioness extends Entity { - - public MixinLOTREntityLioness(World worldIn) { - super(worldIn); - } - - /** - * @author KeyLime17 - * @reason Mevans - */ - - - protected LOTRItemLionRug.LionRugType getLionRugType() { - return LOTRItemLionRug.LionRugType.LIONESS; - } - - @Overwrite(remap = false) - protected void func_70628_a(boolean flag, int i) { - Item furItem = CinderLoE.cinderFurItem; - int furMeta = 6; - - int furs = 1 + this.rand.nextInt(3) + this.rand.nextInt(i + 1); - for (int l = 0; l < furs; l++) - entityDropItem(new ItemStack(furItem, 1, furMeta), 0.0F); - if (flag) { - int rugChance = 50 - i * 8; - rugChance = Math.max(rugChance, 1); - if (this.rand.nextInt(rugChance) == 0) - entityDropItem(new ItemStack(LOTRMod.lionRug, 1, (getLionRugType()).lionID), 0.0F); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityProjectileBase.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityProjectileBase.java deleted file mode 100644 index 47862ab..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityProjectileBase.java +++ /dev/null @@ -1,261 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.Overwrite; - -import lotr.common.item.LOTRWeaponStats; -import lotr.common.enchant.LOTREnchantmentHelper; -import lotr.common.entity.projectile.LOTREntityProjectileBase; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IProjectile; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.entity.monster.EntityEnderman; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.enchantment.EnchantmentHelper; -import net.minecraft.enchantment.Enchantment; -import net.minecraft.init.Blocks; -import net.minecraft.item.ItemStack; -import net.minecraft.network.Packet; -import net.minecraft.network.play.server.S2BPacketChangeGameState; -import net.minecraft.util.AxisAlignedBB; -import net.minecraft.util.DamageSource; -import net.minecraft.util.MathHelper; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.util.Vec3; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -import java.util.List; - -@Mixin(LOTREntityProjectileBase.class) -public abstract class MixinLOTREntityProjectileBase extends Entity { - - public MixinLOTREntityProjectileBase(World world) { - super(world); - } - - @Shadow(remap = false) - public abstract void setIsCritical(boolean p_70243_1_); - @Shadow(remap = false) - public abstract boolean getIsCritical(); - @Shadow(remap = false) - public abstract float getSpeedReduction(); - @Shadow(remap = false) - public abstract String getImpactSound(); - @Shadow(remap = false) - protected abstract void onCollideWithTarget(Entity entity); - @Shadow(remap = false) - protected abstract float getKnockbackFactor(); - @Shadow(remap = false) - public abstract ItemStack getProjectileItem(); - @Shadow(remap = false) - public abstract DamageSource getDamageSource(); - @Shadow(remap = false) - public abstract int maxTicksInGround(); - @Shadow(remap = false) - public abstract float getBaseImpactDamage(Entity paramEntity, ItemStack paramItemStack); - - @Shadow(remap = false) - private int xTile = -1; - @Shadow(remap = false) - private int yTile = -1; - @Shadow(remap = false) - private int zTile = -1; - @Shadow(remap = false) - private Block inTile; - @Shadow(remap = false) - private int inData; - @Shadow(remap = false) - private boolean inGround; - @Shadow(remap = false) - public int shake; - @Shadow(remap = false) - public Entity shootingEntity; - @Shadow(remap = false) - private int ticksInGround; - @Shadow(remap = false) - private int ticksInAir; - @Shadow(remap = false) - private int knockbackStrength; - - - /** - * @author Shinare - * @reason Having full knockbackResistance attribute now negates bonus knockback as well - */ - @Overwrite(remap = false) - public void func_70071_h_() { - super.onUpdate(); - if (this.prevRotationPitch == 0.0F && this.prevRotationYaw == 0.0F) { - float f = MathHelper.sqrt_double(this.motionX * this.motionX + this.motionZ * this.motionZ); - this.prevRotationYaw = this.rotationYaw = (float)(Math.atan2(this.motionX, this.motionZ) * 180.0D / Math.PI); - this.prevRotationPitch = this.rotationPitch = (float)(Math.atan2(this.motionY, f) * 180.0D / Math.PI); - } - Block block = this.worldObj.getBlock(this.xTile, this.yTile, this.zTile); - if (block != Blocks.air) { - block.setBlockBoundsBasedOnState((IBlockAccess)this.worldObj, this.xTile, this.yTile, this.zTile); - AxisAlignedBB axisalignedbb = block.getCollisionBoundingBoxFromPool(this.worldObj, this.xTile, this.yTile, this.zTile); - if (axisalignedbb != null && axisalignedbb.isVecInside(Vec3.createVectorHelper(this.posX, this.posY, this.posZ))) - this.inGround = true; - } - if (this.shake > 0) - this.shake--; - if (this.inGround) { - Block j = this.worldObj.getBlock(this.xTile, this.yTile, this.zTile); - int k = this.worldObj.getBlockMetadata(this.xTile, this.yTile, this.zTile); - if (j == this.inTile && k == this.inData) { - this.ticksInGround++; - if (this.ticksInGround >= maxTicksInGround()) - setDead(); - } else { - this.inGround = false; - this.motionX *= (this.rand.nextFloat() * 0.2F); - this.motionY *= (this.rand.nextFloat() * 0.2F); - this.motionZ *= (this.rand.nextFloat() * 0.2F); - this.ticksInGround = 0; - this.ticksInAir = 0; - } - } else { - this.ticksInAir++; - Vec3 vec3d = Vec3.createVectorHelper(this.posX, this.posY, this.posZ); - Vec3 vec3d1 = Vec3.createVectorHelper(this.posX + this.motionX, this.posY + this.motionY, this.posZ + this.motionZ); - MovingObjectPosition movingobjectposition = this.worldObj.func_147447_a(vec3d, vec3d1, false, true, false); - vec3d = Vec3.createVectorHelper(this.posX, this.posY, this.posZ); - vec3d1 = Vec3.createVectorHelper(this.posX + this.motionX, this.posY + this.motionY, this.posZ + this.motionZ); - if (movingobjectposition != null) - vec3d1 = Vec3.createVectorHelper(movingobjectposition.hitVec.xCoord, movingobjectposition.hitVec.yCoord, movingobjectposition.hitVec.zCoord); - Entity entity = null; - List list = this.worldObj.getEntitiesWithinAABBExcludingEntity(this, this.boundingBox.addCoord(this.motionX, this.motionY, this.motionZ).expand(1.0D, 1.0D, 1.0D)); - double d = 0.0D; - int l; - for (l = 0; l < list.size(); l++) { - Entity entity1 = list.get(l); - if (entity1.canBeCollidedWith() && (entity1 != this.shootingEntity || this.ticksInAir >= 5)) { - float f5 = 0.3F; - AxisAlignedBB axisalignedbb1 = entity1.boundingBox.expand(f5, f5, f5); - MovingObjectPosition movingobjectposition1 = axisalignedbb1.calculateIntercept(vec3d, vec3d1); - if (movingobjectposition1 != null) { - double d1 = vec3d.distanceTo(movingobjectposition1.hitVec); - if (d1 < d || d == 0.0D) { - entity = entity1; - d = d1; - } - } - } - } - if (entity != null) - movingobjectposition = new MovingObjectPosition(entity); - if (movingobjectposition != null && movingobjectposition.entityHit instanceof EntityPlayer) { - EntityPlayer entityplayer = (EntityPlayer)movingobjectposition.entityHit; - if (entityplayer.capabilities.disableDamage || (this.shootingEntity instanceof EntityPlayer && !((EntityPlayer)this.shootingEntity).canAttackPlayer(entityplayer))) - movingobjectposition = null; - } - if (movingobjectposition != null) { - Entity hitEntity = movingobjectposition.entityHit; - if (hitEntity != null) { - ItemStack itemstack = getProjectileItem(); - int damageInt = MathHelper.ceiling_double_int(getBaseImpactDamage(hitEntity, itemstack)); - int fireAspect = 0; - if (itemstack != null) - if (this.shootingEntity instanceof EntityLivingBase && hitEntity instanceof EntityLivingBase) { - this.knockbackStrength += EnchantmentHelper.getKnockbackModifier((EntityLivingBase)this.shootingEntity, (EntityLivingBase)hitEntity); - } else { - this.knockbackStrength += LOTRWeaponStats.getTotalKnockback(itemstack); - } - if (getIsCritical()) - damageInt += this.rand.nextInt(damageInt / 2 + 2); - double[] prevMotion = { hitEntity.motionX, hitEntity.motionY, hitEntity.motionZ }; - DamageSource damagesource = getDamageSource(); - if (hitEntity.attackEntityFrom(damagesource, damageInt)) { - double[] newMotion = { hitEntity.motionX, hitEntity.motionY, hitEntity.motionZ }; - float kbf = getKnockbackFactor(); - hitEntity.motionX = prevMotion[0] + (newMotion[0] - prevMotion[0]) * kbf; - hitEntity.motionY = prevMotion[1] + (newMotion[1] - prevMotion[1]) * kbf; - hitEntity.motionZ = prevMotion[2] + (newMotion[2] - prevMotion[2]) * kbf; - if (isBurning()) - hitEntity.setFire(5); - if (hitEntity instanceof EntityLivingBase) { - EntityLivingBase hitEntityLiving = (EntityLivingBase)hitEntity; - double knockback_resistance = hitEntityLiving.getEntityAttribute(SharedMonsterAttributes.knockbackResistance).getAttributeValue(); - if (this.knockbackStrength > 0 && knockback_resistance < 1.0D) { - float knockback = MathHelper.sqrt_double(this.motionX * this.motionX + this.motionZ * this.motionZ); - if (knockback > 0.0F) - hitEntityLiving.addVelocity(this.motionX * this.knockbackStrength * 0.6D / knockback, 0.1D, this.motionZ * this.knockbackStrength * 0.6D / knockback); - } - if (fireAspect > 0) - hitEntityLiving.setFire(fireAspect * 4); - if (this.shootingEntity instanceof EntityLivingBase) { - EnchantmentHelper.func_151384_a(hitEntityLiving, this.shootingEntity); - EnchantmentHelper.func_151385_b((EntityLivingBase)this.shootingEntity, (Entity)hitEntityLiving); - } - if (this.shootingEntity instanceof EntityPlayerMP && hitEntityLiving instanceof EntityPlayer) - ((EntityPlayerMP)this.shootingEntity).playerNetServerHandler.sendPacket((Packet)new S2BPacketChangeGameState(6, 0.0F)); - } - this.worldObj.playSoundAtEntity(this, getImpactSound(), 1.0F, 1.2F / (this.rand.nextFloat() * 0.2F + 0.9F)); - onCollideWithTarget(hitEntity); - } else { - this.motionX *= -0.1D; - this.motionY *= -0.1D; - this.motionZ *= -0.1D; - this.rotationYaw += 180.0F; - this.prevRotationYaw += 180.0F; - this.ticksInAir = 0; - } - } else { - this.xTile = movingobjectposition.blockX; - this.yTile = movingobjectposition.blockY; - this.zTile = movingobjectposition.blockZ; - this.inTile = this.worldObj.getBlock(this.xTile, this.yTile, this.zTile); - this.inData = this.worldObj.getBlockMetadata(this.xTile, this.yTile, this.zTile); - this.motionX = (float)(movingobjectposition.hitVec.xCoord - this.posX); - this.motionY = (float)(movingobjectposition.hitVec.yCoord - this.posY); - this.motionZ = (float)(movingobjectposition.hitVec.zCoord - this.posZ); - float f2 = MathHelper.sqrt_double(this.motionX * this.motionX + this.motionY * this.motionY + this.motionZ * this.motionZ); - this.posX -= this.motionX / f2 * 0.05D; - this.posY -= this.motionY / f2 * 0.05D; - this.posZ -= this.motionZ / f2 * 0.05D; - this.worldObj.playSoundAtEntity(this, getImpactSound(), 1.0F, 1.2F / (this.rand.nextFloat() * 0.2F + 0.9F)); - this.inGround = true; - this.shake = 7; - setIsCritical(false); - if (this.inTile.getMaterial() != Material.air) - this.inTile.onEntityCollidedWithBlock(this.worldObj, this.xTile, this.yTile, this.zTile, this); - } - } - if (getIsCritical()) - for (l = 0; l < 4; l++) - this.worldObj.spawnParticle("crit", this.posX + this.motionX * l / 4.0D, this.posY + this.motionY * l / 4.0D, this.posZ + this.motionZ * l / 4.0D, -this.motionX, -this.motionY + 0.2D, -this.motionZ); - this.posX += this.motionX; - this.posY += this.motionY; - this.posZ += this.motionZ; - float f3 = MathHelper.sqrt_double(this.motionX * this.motionX + this.motionZ * this.motionZ); - this.rotationYaw = (float)(Math.atan2(this.motionX, this.motionZ) * 180.0D / Math.PI); - for (this.rotationPitch = (float)(Math.atan2(this.motionY, f3) * 180.0D / Math.PI); this.rotationPitch - this.prevRotationPitch < -180.0F; this.prevRotationPitch -= 360.0F); - for (; this.rotationPitch - this.prevRotationPitch >= 180.0F; this.prevRotationPitch += 360.0F); - for (; this.rotationYaw - this.prevRotationYaw < -180.0F; this.prevRotationYaw -= 360.0F); - for (; this.rotationYaw - this.prevRotationYaw >= 180.0F; this.prevRotationYaw += 360.0F); - this.rotationPitch = this.prevRotationPitch + (this.rotationPitch - this.prevRotationPitch) * 0.2F; - this.rotationYaw = this.prevRotationYaw + (this.rotationYaw - this.prevRotationYaw) * 0.2F; - float f4 = getSpeedReduction(); - if (isInWater()) { - for (int k1 = 0; k1 < 4; k1++) { - float f7 = 0.25F; - this.worldObj.spawnParticle("bubble", this.posX - this.motionX * f7, this.posY - this.motionY * f7, this.posZ - this.motionZ * f7, this.motionX, this.motionY, this.motionZ); - } - f4 = 0.8F; - } - this.motionX *= f4; - this.motionY *= f4; - this.motionZ *= f4; - this.motionY -= 0.05000000074505806D; - setPosition(this.posX, this.posY, this.posZ); - func_145775_I(); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntitySauron.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntitySauron.java deleted file mode 100644 index e0cba86..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntitySauron.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.Shadow; - -import lotr.common.entity.npc.LOTREntityNPC; -import lotr.common.entity.npc.LOTREntitySauron; - -import net.minecraft.world.World; - -@Mixin(LOTREntitySauron.class) -public abstract class MixinLOTREntitySauron extends LOTREntityNPC { - MixinLOTREntitySauron(World world) { - super(world); - } - - public void setupNPCName() { - this.familyInfo.setName("Sauron"); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityWarg.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityWarg.java deleted file mode 100644 index 895c0d1..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityWarg.java +++ /dev/null @@ -1,77 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.CinderLoE; -import lotr.common.LOTRMod; -import lotr.common.entity.npc.LOTREntityWarg; -import net.minecraft.entity.Entity; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.Shadow; - - -@Mixin(LOTREntityWarg.class) -public abstract class MixinLOTREntityWarg extends Entity { - - public MixinLOTREntityWarg(World worldIn) { - super(worldIn); - } - - /** - * @author KeyLime17 - * @reason Mevans - */ - - @Shadow - public abstract LOTREntityWarg.WargType getWargType(); - - @Overwrite(remap = false) - protected void func_70628_a(boolean flag, int i) { - Item furItem = null; - int furMeta = 0; - switch(getWargType().wargID) { - case 0: - furItem = LOTRMod.fur; - break; - case 1: - furItem = CinderLoE.cinderFurItem; - break; - case 2: - furItem = CinderLoE.cinderFurItem; - furMeta = 1; - break; - case 3: - furItem = CinderLoE.cinderFurItem; - furMeta = 2; - break; - case 4: - furItem = CinderLoE.cinderFurItem; - furMeta = 0; // Needs ice fur to be added - break; - case 5: - furItem = CinderLoE.cinderFurItem; - furMeta = 3; - break; - case 6: - furItem = CinderLoE.cinderFurItem; - furMeta = 0; // Needs fire fur to be added - break; - } - - int furs = 1 + this.rand.nextInt(3) + this.rand.nextInt(i + 1); - for (int l = 0; l < furs; l++) - entityDropItem(new ItemStack(furItem, 1, furMeta), 0.0F); - int bones = 2 + this.rand.nextInt(2) + this.rand.nextInt(i + 1); - for (int j = 0; j < bones; j++) - dropItem(LOTRMod.wargBone, 1); - if (flag) { - int rugChance = 50 - i * 8; - rugChance = Math.max(rugChance, 1); - if (this.rand.nextInt(rugChance) == 0) - entityDropItem(new ItemStack(LOTRMod.wargskinRug, 1, (getWargType()).wargID), 0.0F); - } - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRIntCache.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRIntCache.java deleted file mode 100644 index eca9684..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRIntCache.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.Shadow; -import lotr.common.world.genlayer.LOTRIntCache; -import com.zivilon.cinder_loe.util.Utilities; - -import java.util.List; - -@Mixin(LOTRIntCache.class) -public abstract class MixinLOTRIntCache { - - @Shadow(remap = false) - private static LOTRIntCache SERVER; - @Shadow(remap = false) - private static LOTRIntCache CLIENT; - @Shadow(remap = false) - private int intCacheSize = 256; - @Shadow(remap = false) - private List freeSmallArrays; - @Shadow(remap = false) - private List inUseSmallArrays; - @Shadow(remap = false) - private List freeLargeArrays; - @Shadow(remap = false) - private List inUseLargeArrays; - - /** - * @author Shinare - * @reason Unsuccessfully trying to patch a crash bug - */ - @Overwrite(remap = false) - public int[] getIntArray(int size) { - try { - if (size <= 256) { - if (this.freeSmallArrays.isEmpty()) { - int[] arrayOfInt1 = new int[256]; - this.inUseSmallArrays.add(arrayOfInt1); - return cacheInts(arrayOfInt1); - } - int[] arrayOfInt = this.freeSmallArrays.remove(this.freeSmallArrays.size() - 1); - this.inUseSmallArrays.add(arrayOfInt); - return cacheInts(arrayOfInt); - } - if (size > this.intCacheSize) { - this.intCacheSize = size; - this.freeLargeArrays.clear(); - this.inUseLargeArrays.clear(); - int[] arrayOfInt = new int[this.intCacheSize]; - this.inUseLargeArrays.add(arrayOfInt); - return cacheInts(arrayOfInt); - } - if (this.freeLargeArrays.isEmpty()) { - int[] arrayOfInt = new int[this.intCacheSize]; - this.inUseLargeArrays.add(arrayOfInt); - return cacheInts(arrayOfInt); - } - int[] ints = this.freeLargeArrays.remove(this.freeLargeArrays.size() - 1); - this.inUseLargeArrays.add(ints); - return cacheInts(ints); - } catch (IndexOutOfBoundsException e) { - System.err.println("Caught IndexOutOfBoundsException in getIntArray: " + e.getMessage()); - return new int[size]; - } - } - - private int[] cacheInts(int[] ints) { - Utilities.LOTRIntCache = ints; - return ints; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRNPCRendering.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRNPCRendering.java deleted file mode 100644 index 24b7fcd..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRNPCRendering.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.client.render.item.RenderHelper; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; - -import lotr.client.render.entity.LOTRNPCRendering; - -import net.minecraft.client.renderer.Tessellator; - -@Mixin(LOTRNPCRendering.class) -public abstract class MixinLOTRNPCRendering { - @Redirect(method = "renderQuestBook(Llotr/common/entity/npc/LOTREntityNPC;DDD)V", remap = false, - at = @At(value = "INVOKE", - target = "Lnet/minecraft/client/renderer/ItemRenderer;func_78439_a(Lnet/minecraft/client/renderer/Tessellator;FFFFIIF)V")) - private static void onRenderItemIn2D(Tessellator tessellator, float f1, float f2, float f, float f3, int width, int height, float thickness) { - RenderHelper.customRenderItemIn2D(tessellator, f1, f2, f, f3, width, height, thickness, false); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderArmorStand.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderArmorStand.java deleted file mode 100644 index aab91db..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderArmorStand.java +++ /dev/null @@ -1,154 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.CinderLoE_Config; -import org.lwjgl.opengl.GL11; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.Shadow; - -import io.gitlab.dwarfyassassin.lotrucp.client.util.FakeArmorStandEntity; - -import lotr.client.LOTRClientProxy; -import lotr.client.model.LOTRArmorModels; -import lotr.client.model.LOTRModelBiped; -import lotr.client.render.tileentity.LOTRRenderArmorStand; -import lotr.common.tileentity.LOTRTileEntityArmorStand; - -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelBiped; -import net.minecraft.client.renderer.entity.RenderBiped; -import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemArmor; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.ForgeHooksClient; - -@Mixin(LOTRRenderArmorStand.class) -public abstract class MixinLOTRRenderArmorStand extends TileEntitySpecialRenderer { - - @Shadow(remap = false) - private static ModelBase standModel; - @Shadow(remap = false) - private static ResourceLocation standTexture; - @Shadow(remap = false) - private static ModelBiped modelBipedMain; - @Shadow(remap = false) - private static ModelBiped modelBiped1; - @Shadow(remap = false) - private static ModelBiped modelBiped2; - @Shadow(remap = false) - private static float BIPED_ARM_ROTATION; - @Shadow(remap = false) - private static float BIPED_TICKS_EXISTED; - - - /** - * @author Shinare - * @reason Added support configurable enchantment colour - */ - @Overwrite(remap = false) - public void func_147500_a(TileEntity tileentity, double d, double d1, double d2, float f) { - LOTRTileEntityArmorStand armorStand = (LOTRTileEntityArmorStand)tileentity; - FakeArmorStandEntity fakeArmorStandEntity = FakeArmorStandEntity.INSTANCE; - GL11.glPushMatrix(); - GL11.glDisable(2884); - GL11.glEnable(32826); - GL11.glEnable(3008); - GL11.glTranslatef((float)d + 0.5F, (float)d1 + 1.5F, (float)d2 + 0.5F); - switch (armorStand.getBlockMetadata() & 0x3) { - case 0: - GL11.glRotatef(0.0F, 0.0F, 1.0F, 0.0F); - break; - case 1: - GL11.glRotatef(270.0F, 0.0F, 1.0F, 0.0F); - break; - case 2: - GL11.glRotatef(180.0F, 0.0F, 1.0F, 0.0F); - break; - case 3: - GL11.glRotatef(90.0F, 0.0F, 1.0F, 0.0F); - break; - } - GL11.glScalef(-1.0F, -1.0F, 1.0F); - float scale = 0.0625F; - bindTexture(standTexture); - standModel.render((Entity)fakeArmorStandEntity, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, scale); - LOTRArmorModels.INSTANCE.setupModelForRender(modelBipedMain, null, (EntityLivingBase)fakeArmorStandEntity); - GL11.glTranslatef(0.0F, -0.1875F, 0.0F); - for (int slot = 0; slot < 4; slot++) { - ItemStack itemstack = armorStand.func_70301_a(slot); - if (itemstack != null && (itemstack.getItem() instanceof ItemArmor || itemstack.getItem() instanceof lotr.common.item.LOTRItemPlate)) { - boolean isArmor = itemstack.getItem() instanceof ItemArmor; - if (isArmor) - bindTexture(RenderBiped.getArmorResource((Entity)fakeArmorStandEntity, itemstack, slot, null)); - ModelBiped armorModel = (slot == 2) ? modelBiped2 : modelBiped1; - LOTRArmorModels.INSTANCE.setupArmorForSlot(armorModel, slot); - armorModel = ForgeHooksClient.getArmorModel((EntityLivingBase)fakeArmorStandEntity, itemstack, slot, armorModel); - ModelBiped specialModel = LOTRArmorModels.INSTANCE.getSpecialArmorModel(itemstack, slot, (EntityLivingBase)fakeArmorStandEntity, modelBipedMain); - if (specialModel != null) - armorModel = specialModel; - LOTRArmorModels.INSTANCE.setupModelForRender(armorModel, null, (EntityLivingBase)fakeArmorStandEntity); - float f1 = 1.0F; - boolean isColoredArmor = false; - if (isArmor) { - int j = ((ItemArmor)itemstack.getItem()).getColor(itemstack); - if (j != -1) { - float f2 = (j >> 16 & 0xFF) / 255.0F; - float f3 = (j >> 8 & 0xFF) / 255.0F; - float f4 = (j & 0xFF) / 255.0F; - GL11.glColor3f(f1 * f2, f1 * f3, f1 * f4); - isColoredArmor = true; - } else { - GL11.glColor3f(f1, f1, f1); - } - } else { - GL11.glColor3f(f1, f1, f1); - } - armorModel.render((Entity)fakeArmorStandEntity, BIPED_ARM_ROTATION, 0.0F, BIPED_TICKS_EXISTED, 0.0F, 0.0F, scale); - if (isColoredArmor) { - bindTexture(RenderBiped.getArmorResource(null, itemstack, slot, "overlay")); - f1 = 1.0F; - GL11.glColor3f(f1, f1, f1); - armorModel.render((Entity)fakeArmorStandEntity, BIPED_ARM_ROTATION, 0.0F, BIPED_TICKS_EXISTED, 0.0F, 0.0F, scale); - } - if (itemstack.isItemEnchanted()) { - float f2 = armorStand.ticksExisted + f; - bindTexture(LOTRClientProxy.enchantmentTexture); - GL11.glEnable(3042); - float f3 = 0.5F; - GL11.glColor4f(f3, f3, f3, 1.0F); - GL11.glDepthFunc(514); - GL11.glDepthMask(false); - for (int k = 0; k < 2; k++) { - GL11.glDisable(2896); - GL11.glColor4f(CinderLoE_Config.enchantment_color_red, CinderLoE_Config.enchantment_color_green, CinderLoE_Config.enchantment_color_blue, 1.0F); - GL11.glBlendFunc(768, 1); - GL11.glMatrixMode(5890); - GL11.glLoadIdentity(); - float f5 = 0.33333334F; - GL11.glScalef(f5, f5, f5); - GL11.glRotatef(30.0F - k * 60.0F, 0.0F, 0.0F, 1.0F); - float f6 = f2 * (0.001F + k * 0.003F) * 20.0F; - GL11.glTranslatef(0.0F, f6, 0.0F); - GL11.glMatrixMode(5888); - armorModel.render((Entity)fakeArmorStandEntity, BIPED_ARM_ROTATION, 0.0F, BIPED_TICKS_EXISTED, 0.0F, 0.0F, scale); - } - GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); - GL11.glMatrixMode(5890); - GL11.glDepthMask(true); - GL11.glLoadIdentity(); - GL11.glMatrixMode(5888); - GL11.glEnable(2896); - GL11.glDisable(3042); - GL11.glDepthFunc(515); - } - } - } - GL11.glEnable(2884); - GL11.glDisable(32826); - GL11.glPopMatrix(); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderBlownItem.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderBlownItem.java deleted file mode 100644 index 3a426f7..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderBlownItem.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.client.render.item.RenderHelper; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; - -import lotr.client.render.item.LOTRRenderBlownItem; - -import net.minecraft.client.renderer.Tessellator; - -@Mixin(LOTRRenderBlownItem.class) -public abstract class MixinLOTRRenderBlownItem { - @Redirect(method = "renderItem(Lnet/minecraftforge/client/IItemRenderer$ItemRenderType;Lnet/minecraft/item/ItemStack;[Ljava/lang/Object;)V", remap = false, - at = @At(value = "INVOKE", - target = "Lnet/minecraft/client/renderer/ItemRenderer;func_78439_a(Lnet/minecraft/client/renderer/Tessellator;FFFFIIF)V")) - private void onRenderItemIn2D(Tessellator tessellator, float f1, float f2, float f, float f3, int width, int height, float thickness) { - RenderHelper.customRenderItemIn2D(tessellator, f1, f2, f, f3, width, height, thickness, false); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderBow.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderBow.java deleted file mode 100644 index 5733c81..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderBow.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.client.render.item.RenderHelper; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; - -import lotr.client.render.item.LOTRRenderBow; - -import net.minecraft.client.renderer.Tessellator; - -@Mixin(LOTRRenderBow.class) -public abstract class MixinLOTRRenderBow { - @Redirect(method = "renderItem(Lnet/minecraftforge/client/IItemRenderer$ItemRenderType;Lnet/minecraft/item/ItemStack;[Ljava/lang/Object;)V", remap = false, - at = @At(value = "INVOKE", - target = "Lnet/minecraft/client/renderer/ItemRenderer;func_78439_a(Lnet/minecraft/client/renderer/Tessellator;FFFFIIF)V")) - private void onRenderItemIn2D(Tessellator tessellator, float f1, float f2, float f, float f3, int width, int height, float thickness) { - RenderHelper.customRenderItemIn2D(tessellator, f1, f2, f, f3, width, height, thickness, false); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderCrossbow.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderCrossbow.java deleted file mode 100644 index 73300bb..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderCrossbow.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.client.render.item.RenderHelper; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; - -import lotr.client.render.item.LOTRRenderCrossbow; - -import net.minecraft.client.renderer.Tessellator; - -@Mixin(LOTRRenderCrossbow.class) -public abstract class MixinLOTRRenderCrossbow { - @Redirect(method = "renderItem(Lnet/minecraftforge/client/IItemRenderer$ItemRenderType;Lnet/minecraft/item/ItemStack;[Ljava/lang/Object;)V", remap = false, - at = @At(value = "INVOKE", - target = "Lnet/minecraft/client/renderer/ItemRenderer;func_78439_a(Lnet/minecraft/client/renderer/Tessellator;FFFFIIF)V")) - private void onRenderItemIn2D(Tessellator tessellator, float f1, float f2, float f, float f3, int width, int height, float thickness) { - RenderHelper.customRenderItemIn2D(tessellator, f1, f2, f, f3, width, height, thickness, false); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderDart.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderDart.java deleted file mode 100644 index 57502ae..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderDart.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.client.render.item.RenderHelper; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; - -import lotr.client.render.entity.LOTRRenderDart; - -import net.minecraft.client.renderer.Tessellator; - -@Mixin(LOTRRenderDart.class) -public abstract class MixinLOTRRenderDart { - @Redirect(method = "func_76986_a(Lnet/minecraft/entity/Entity;DDDFF)V", remap = false, - at = @At(value = "INVOKE", - target = "Lnet/minecraft/client/renderer/ItemRenderer;func_78439_a(Lnet/minecraft/client/renderer/Tessellator;FFFFIIF)V")) - private void onRenderItemIn2D(Tessellator tessellator, float f1, float f2, float f, float f3, int width, int height, float thickness) { - RenderHelper.customRenderItemIn2D(tessellator, f1, f2, f, f3, width, height, thickness, false); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderElf.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderElf.java deleted file mode 100644 index 0c98d8d..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderElf.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.client.render.item.RenderHelper; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; - -import lotr.client.render.entity.LOTRRenderElf; - -import net.minecraft.client.renderer.Tessellator; - -@Mixin(LOTRRenderElf.class) -public abstract class MixinLOTRRenderElf { - @Redirect(method = "func_77029_c(Lnet/minecraft/entity/EntityLivingBase;F)V", remap = false, - at = @At(value = "INVOKE", - target = "Lnet/minecraft/client/renderer/ItemRenderer;func_78439_a(Lnet/minecraft/client/renderer/Tessellator;FFFFIIF)V")) - private void onRenderItemIn2D(Tessellator tessellator, float f1, float f2, float f, float f3, int width, int height, float thickness) { - RenderHelper.customRenderItemIn2D(tessellator, f1, f2, f, f3, width, height, thickness, false); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderElvenBlade.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderElvenBlade.java deleted file mode 100644 index 02d86b7..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderElvenBlade.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.client.render.item.RenderHelper; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; - -import lotr.client.render.item.LOTRRenderElvenBlade; - -import net.minecraft.client.renderer.Tessellator; - -@Mixin(LOTRRenderElvenBlade.class) -public abstract class MixinLOTRRenderElvenBlade { - @Redirect(method = "renderItem(Lnet/minecraftforge/client/IItemRenderer$ItemRenderType;Lnet/minecraft/item/ItemStack;[Ljava/lang/Object;)V", remap = false, - at = @At(value = "INVOKE", - target = "Lnet/minecraft/client/renderer/ItemRenderer;func_78439_a(Lnet/minecraft/client/renderer/Tessellator;FFFFIIF)V")) - private void onRenderItemIn2D(Tessellator tessellator, float f1, float f2, float f, float f3, int width, int height, float thickness) { - RenderHelper.customRenderItemIn2D(tessellator, f1, f2, f, f3, width, height, thickness, false); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderLargeItem.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderLargeItem.java deleted file mode 100644 index e7d994e..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderLargeItem.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.client.render.item.RenderHelper; - -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; - -import lotr.client.render.item.LOTRRenderLargeItem; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.client.resources.IResource; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.StringUtils; - -import net.minecraftforge.client.IItemRenderer; - -import java.io.IOException; -import java.util.Map; - -@Mixin(LOTRRenderLargeItem.class) -public abstract class MixinLOTRRenderLargeItem { - - /** - * @author Shinare - * @reason Added support for transparent textures - */ - @Redirect(method = "renderLargeItem(Lnet/minecraft/util/IIcon;)V", remap = false, - at = @At(value = "INVOKE", - target = "Lnet/minecraft/client/renderer/ItemRenderer;func_78439_a(Lnet/minecraft/client/renderer/Tessellator;FFFFIIF)V")) - private void onRenderItemIn2D(Tessellator tessellator, float f1, float f2, float f, float f3, int width, int height, float thickness) { - RenderHelper.customRenderItemIn2D(tessellator, f1, f2, f, f3, width, height, thickness, false); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderNPCRespawner.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderNPCRespawner.java deleted file mode 100644 index 4e99bd0..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderNPCRespawner.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.client.render.item.RenderHelper; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; - -import lotr.client.render.entity.LOTRRenderNPCRespawner; - -import net.minecraft.client.renderer.Tessellator; - -@Mixin(LOTRRenderNPCRespawner.class) -public abstract class MixinLOTRRenderNPCRespawner { - @Redirect(method = "func_76986_a(Lnet/minecraft/entity/Entity;DDDFF)V", remap = false, - at = @At(value = "INVOKE", - target = "Lnet/minecraft/client/renderer/ItemRenderer;func_78439_a(Lnet/minecraft/client/renderer/Tessellator;FFFFIIF)V")) - private void onRenderItemIn2D(Tessellator tessellator, float f1, float f2, float f, float f3, int width, int height, float thickness) { - RenderHelper.customRenderItemIn2D(tessellator, f1, f2, f, f3, width, height, thickness, false); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderPlateFood.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderPlateFood.java deleted file mode 100644 index 697587c..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderPlateFood.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.client.render.item.RenderHelper; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; - -import lotr.client.render.tileentity.LOTRRenderPlateFood; - -import net.minecraft.client.renderer.Tessellator; - -@Mixin(LOTRRenderPlateFood.class) -public abstract class MixinLOTRRenderPlateFood { - @Redirect(method = "func_147500_a(Lnet/minecraft/tileentity/TileEntity;DDDF)V", remap = false, - at = @At(value = "INVOKE", - target = "Lnet/minecraft/client/renderer/ItemRenderer;func_78439_a(Lnet/minecraft/client/renderer/Tessellator;FFFFIIF)V")) - private void onRenderItemIn2D(Tessellator tessellator, float f1, float f2, float f, float f3, int width, int height, float thickness) { - RenderHelper.customRenderItemIn2D(tessellator, f1, f2, f, f3, width, height, thickness, false); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderThrowingAxe.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderThrowingAxe.java deleted file mode 100644 index 94929d2..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderThrowingAxe.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.client.render.item.RenderHelper; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; - -import lotr.client.render.entity.LOTRRenderThrowingAxe; - -import net.minecraft.client.renderer.Tessellator; - -@Mixin(LOTRRenderThrowingAxe.class) -public abstract class MixinLOTRRenderThrowingAxe { - @Redirect(method = "func_76986_a(Lnet/minecraft/entity/Entity;DDDFF)V", remap = false, - at = @At(value = "INVOKE", - target = "Lnet/minecraft/client/renderer/ItemRenderer;func_78439_a(Lnet/minecraft/client/renderer/Tessellator;FFFFIIF)V")) - private void onRenderItemIn2D(Tessellator tessellator, float f1, float f2, float f, float f3, int width, int height, float thickness) { - RenderHelper.customRenderItemIn2D(tessellator, f1, f2, f, f3, width, height, thickness, false); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderTraderRespawn.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderTraderRespawn.java deleted file mode 100644 index dabe6e2..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRRenderTraderRespawn.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.client.render.item.RenderHelper; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; - -import lotr.client.render.entity.LOTRRenderTraderRespawn; - -import net.minecraft.client.renderer.Tessellator; - -@Mixin(LOTRRenderTraderRespawn.class) -public abstract class MixinLOTRRenderTraderRespawn { - @Redirect(method = "func_76986_a(Lnet/minecraft/entity/Entity;DDDFF)V", remap = false, - at = @At(value = "INVOKE", - target = "Lnet/minecraft/client/renderer/ItemRenderer;func_78439_a(Lnet/minecraft/client/renderer/Tessellator;FFFFIIF)V")) - private void onRenderItemIn2D(Tessellator tessellator, float f1, float f2, float f, float f3, int width, int height, float thickness) { - RenderHelper.customRenderItemIn2D(tessellator, f1, f2, f, f3, width, height, thickness, false); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRTileEntityDwarvenForge.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRTileEntityDwarvenForge.java deleted file mode 100644 index 280162a..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRTileEntityDwarvenForge.java +++ /dev/null @@ -1,74 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import net.minecraft.init.Blocks; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.init.Items; - -import net.minecraftforge.oredict.OreDictionary; - -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.Overwrite; - -import lotr.common.tileentity.LOTRTileEntityDwarvenForge; - -import java.lang.reflect.Constructor; -import java.lang.reflect.Method; -import java.lang.reflect.Field; - -import com.zivilon.cinder_loe.CinderLoE; -import lotr.common.LOTRMod; -import org.spongepowered.asm.mixin.Unique; - -@Mixin(LOTRTileEntityDwarvenForge.class) -public abstract class MixinLOTRTileEntityDwarvenForge { - protected boolean isCopper(ItemStack itemstack) { - return (LOTRMod.isOreNameEqual(itemstack, "oreCopper") || LOTRMod.isOreNameEqual(itemstack, "ingotCopper")); - } - - protected boolean isTin(ItemStack itemstack) { - return (LOTRMod.isOreNameEqual(itemstack, "oreTin") || LOTRMod.isOreNameEqual(itemstack, "ingotTin")); - } - - protected boolean isIron(ItemStack itemstack) { - return (LOTRMod.isOreNameEqual(itemstack, "oreIron") || LOTRMod.isOreNameEqual(itemstack, "ingotIron")); - } - - protected boolean isCoal(ItemStack itemstack) { - return (itemstack.getItem() == Items.coal); - } - - protected boolean isMithril(ItemStack itemstack) { - return itemstack.getItem() == Item.getItemFromBlock(LOTRMod.oreMithril) || itemstack.getItem() == LOTRMod.mithril; - } - - protected boolean isCoalBlock(ItemStack itemstack) { - return itemstack.getItem() == Item.getItemFromBlock(Blocks.coal_block); - } - - protected boolean isGoldNugget(ItemStack itemstack) { - return (itemstack.getItem() == Items.gold_nugget); - } - - /** - * @author Shinare - * @reason Added recipe for CinderLoE.ingotAsh and CinderLoE.redDwarfSteel - */ - @Overwrite(remap = false) - protected ItemStack getAlloySmeltingResult(ItemStack itemstack, ItemStack alloyItem) { - if (isIron(itemstack) && isCoal(alloyItem)) - return new ItemStack(LOTRMod.dwarfSteel); - if (isIron(itemstack) && alloyItem.getItem() == LOTRMod.quenditeCrystal) - return new ItemStack(LOTRMod.galvorn); - if (isIron(itemstack) && alloyItem.getItem() == Item.getItemFromBlock(LOTRMod.rock) && alloyItem.getItemDamage() == 3) - return new ItemStack(LOTRMod.blueDwarfSteel); - if (isCopper(itemstack) && alloyItem.getItem() == Item.getItemById(371)) - return new ItemStack(CinderLoE.redDwarfSteel); - if ((isCopper(itemstack) && isTin(alloyItem)) || (isTin(itemstack) && isCopper(alloyItem))) - return new ItemStack(LOTRMod.bronze, 2); - if (this.isMithril(itemstack) && this.isCoalBlock(alloyItem)) - return new ItemStack(CinderLoE.ingotAsh, 1); - return null; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRTileEntityForgeBase.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRTileEntityForgeBase.java deleted file mode 100644 index 458892e..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRTileEntityForgeBase.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.CinderLoE; -import lotr.common.LOTRMod; -import lotr.common.tileentity.LOTRTileEntityAlloyForgeBase; -import net.minecraft.init.Blocks; -import net.minecraft.init.Items; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.Unique; - -@Mixin(LOTRTileEntityAlloyForgeBase.class) -public abstract class MixinLOTRTileEntityForgeBase { - @Unique - protected boolean cinderLoE_Git$isMithril(ItemStack itemstack) { - return itemstack.getItem() == Item.getItemFromBlock(LOTRMod.oreMithril) || itemstack.getItem() == LOTRMod.mithril; - } - - @Unique - protected boolean cinderLoE_Git$isCoalBlock(ItemStack itemstack) { - return itemstack.getItem() == Item.getItemFromBlock(Blocks.coal_block); - } - protected boolean isCopper(ItemStack itemstack) { - return (LOTRMod.isOreNameEqual(itemstack, "oreCopper") || LOTRMod.isOreNameEqual(itemstack, "ingotCopper")); - } - protected boolean isTin(ItemStack itemstack) { - return (LOTRMod.isOreNameEqual(itemstack, "oreTin") || LOTRMod.isOreNameEqual(itemstack, "ingotTin")); - } - protected boolean isGoldNugget(ItemStack itemstack) { - return (itemstack.getItem() == Items.gold_nugget); - } - - /** - * @author Keylime - * @reason IDE demands it - */ - @Overwrite(remap = false) - protected ItemStack getAlloySmeltingResult(ItemStack itemstack, ItemStack alloyItem) { - if (this.cinderLoE_Git$isMithril(itemstack) && this.cinderLoE_Git$isCoalBlock(alloyItem)) - return new ItemStack(CinderLoE.ingotAsh, 1); - if ((isCopper(itemstack) && isTin(alloyItem)) || (isTin(itemstack) && isCopper(alloyItem))) - return new ItemStack(LOTRMod.bronze, 2); - return null; - } -} - - - diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRTradeEntries.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRTradeEntries.java deleted file mode 100644 index 580d433..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRTradeEntries.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.gen.Invoker; - -import lotr.common.entity.npc.LOTRTradeEntries; -import lotr.common.LOTRFoods; - -@Mixin(LOTRTradeEntries.class) -public interface MixinLOTRTradeEntries { - - @Invoker(value = "setVessels", remap = false) - public abstract LOTRTradeEntries vessels(LOTRFoods foods); -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRWorldGenMumakSkeleton.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRWorldGenMumakSkeleton.java deleted file mode 100644 index 89e5633..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRWorldGenMumakSkeleton.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.Shadow; - -import lotr.common.world.structure2.LOTRWorldGenMumakSkeleton; - -import net.minecraft.block.Block; - -import java.util.Random; - -import com.zivilon.cinder_loe.CinderLoE; - -@Mixin(LOTRWorldGenMumakSkeleton.class) -public class MixinLOTRWorldGenMumakSkeleton { - - @Shadow(remap = false) - protected Block boneBlock; - - @Shadow(remap = false) - protected int boneMeta; - - /** - * @author Shinare - * @reason Replaces bone blocks with ivory blocks to make these structures unique - */ - @Overwrite(remap = false) - protected void setupRandomBlocks(Random random) { - this.boneBlock = CinderLoE.ivoryBlock; - this.boneMeta = 3; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinRenderItem.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinRenderItem.java deleted file mode 100644 index 2abbc2e..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinRenderItem.java +++ /dev/null @@ -1,246 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.CinderLoE_Config; -import com.zivilon.cinder_loe.client.render.item.RenderHelper; -import com.zivilon.cinder_loe.util.Utilities; -import org.lwjgl.opengl.GL11; -import org.lwjgl.opengl.GL12; -import org.spongepowered.asm.mixin.Dynamic; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; -import org.spongepowered.asm.mixin.injection.callback.LocalCapture; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -import java.util.Random; -import java.util.concurrent.Callable; - -import net.minecraft.block.Block; -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.FontRenderer; -import net.minecraft.client.renderer.ItemRenderer; -import net.minecraft.client.renderer.OpenGlHelper; -import net.minecraft.client.renderer.RenderBlocks; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.entity.Render; -import net.minecraft.client.renderer.entity.RenderItem; -import net.minecraft.client.renderer.texture.TextureManager; -import net.minecraft.client.renderer.texture.TextureMap; -import net.minecraft.client.renderer.texture.TextureUtil; -import net.minecraft.crash.CrashReport; -import net.minecraft.crash.CrashReportCategory; -import net.minecraft.entity.Entity; -import net.minecraft.entity.item.EntityItem; -import net.minecraft.item.Item; -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemCloth; -import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; -import net.minecraft.util.MathHelper; -import net.minecraft.util.ReportedException; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.ForgeHooksClient; - -@Mixin(RenderItem.class) -public abstract class MixinRenderItem extends Render { - @Shadow - private static final ResourceLocation RES_ITEM_GLINT = new ResourceLocation("textures/misc/enchanted_item_glint.png"); - - @Shadow - private Random random; - - @Shadow - public static boolean renderInFrame; - - @Shadow(remap = false) - public byte getMiniBlockCount(ItemStack stack, byte original) { - return 0; - } - - @Shadow(remap = false) - public byte getMiniItemCount(ItemStack stack, byte original) { - return 0; - } - - @Shadow(remap = false) - public boolean shouldSpreadItems() { - return false; - } - - @Shadow - private void renderGlint(int p_77018_1_, int p_77018_2_, int p_77018_3_, int p_77018_4_, int p_77018_5_) {} - - /** - * Reimplements the default behavior of the renderDroppedItem method. - * - * @author Shinare - * @reason Added support for semi-transparent item textures - * @param p_77020_1_ Don't ask me it's default parameter - * @param p_77020_2_ Don't ask me it's default parameter - * @param p_77020_3_ Don't ask me it's default parameter - * @param p_77020_4_ Don't ask me it's default parameter - * @param p_77020_5_ Don't ask me it's default parameter - * @param p_77020_6_ Don't ask me it's default parameter - * @param p_77020_7_ Don't ask me it's default parameter - * @param pass Don't ask me it's default parameter - */ - @Overwrite(remap = false) - private void renderDroppedItem(EntityItem p_77020_1_, IIcon p_77020_2_, int p_77020_3_, float p_77020_4_, float p_77020_5_, float p_77020_6_, float p_77020_7_, int pass) { - Tessellator tessellator = Tessellator.instance; - - if (p_77020_2_ == null) { - TextureManager texturemanager = Minecraft.getMinecraft().getTextureManager(); - ResourceLocation resourcelocation = texturemanager.getResourceLocation(p_77020_1_.getEntityItem().getItemSpriteNumber()); - p_77020_2_ = ((TextureMap)texturemanager.getTexture(resourcelocation)).getAtlasSprite("missingno"); - } - - float f14 = ((IIcon)p_77020_2_).getMinU(); - float f15 = ((IIcon)p_77020_2_).getMaxU(); - float f4 = ((IIcon)p_77020_2_).getMinV(); - float f5 = ((IIcon)p_77020_2_).getMaxV(); - float f6 = 1.0F; - float f7 = 0.5F; - float f8 = 0.25F; - float f10; - - if (this.renderManager.options.fancyGraphics) { - GL11.glPushMatrix(); - - if (renderInFrame) { - GL11.glRotatef(180.0F, 0.0F, 1.0F, 0.0F); - } - else { - GL11.glRotatef((((float)p_77020_1_.age + p_77020_4_) / 20.0F + p_77020_1_.hoverStart) * (180F / (float)Math.PI), 0.0F, 1.0F, 0.0F); - } - - float f9 = 0.0625F; - f10 = 0.021875F; - ItemStack itemstack = p_77020_1_.getEntityItem(); - int j = itemstack.stackSize; - byte b0; - - if (j < 2) { - b0 = 1; - } - else if (j < 16) { - b0 = 2; - } - else if (j < 32) { - b0 = 3; - } - else { - b0 = 4; - } - - b0 = getMiniItemCount(itemstack, b0); - - GL11.glTranslatef(-f7, -f8, -((f9 + f10) * (float)b0 / 2.0F)); - - for (int k = 0; k < b0; ++k) { - // Makes items offset when in 3D, like when in 2D, looks much better. Considered a vanilla bug... - if (k > 0 && shouldSpreadItems()) { - float x = (random.nextFloat() * 2.0F - 1.0F) * 0.3F / 0.5F; - float y = (random.nextFloat() * 2.0F - 1.0F) * 0.3F / 0.5F; - float z = (random.nextFloat() * 2.0F - 1.0F) * 0.3F / 0.5F; - GL11.glTranslatef(x, y, f9 + f10); - } - else { - GL11.glTranslatef(0f, 0f, f9 + f10); - } - - if (itemstack.getItemSpriteNumber() == 0) { - this.bindTexture(TextureMap.locationBlocksTexture); - } - else { - this.bindTexture(TextureMap.locationItemsTexture); - } - - GL11.glColor4f(p_77020_5_, p_77020_6_, p_77020_7_, 1.0F); - RenderHelper.customRenderItemIn2D(tessellator, f15, f4, f14, f5, ((IIcon)p_77020_2_).getIconWidth(), ((IIcon)p_77020_2_).getIconHeight(), f9, false); - - if (itemstack.hasEffect(pass)) { - GL11.glDepthFunc(GL11.GL_EQUAL); - GL11.glDisable(GL11.GL_LIGHTING); - this.renderManager.renderEngine.bindTexture(RES_ITEM_GLINT); - GL11.glEnable(GL11.GL_BLEND); - GL11.glBlendFunc(GL11.GL_SRC_COLOR, GL11.GL_ONE); - GL11.glColor4f(CinderLoE_Config.enchantment_color_red, CinderLoE_Config.enchantment_color_green, CinderLoE_Config.enchantment_color_blue, 1.0F); - GL11.glMatrixMode(GL11.GL_TEXTURE); - GL11.glPushMatrix(); - float f12 = 0.125F; - GL11.glScalef(f12, f12, f12); - float f13 = (float)(Minecraft.getSystemTime() % 3000L) / 3000.0F * 8.0F; - GL11.glTranslatef(f13, 0.0F, 0.0F); - GL11.glRotatef(-50.0F, 0.0F, 0.0F, 1.0F); - RenderHelper.customRenderItemIn2D(tessellator, 0.0F, 0.0F, 1.0F, 1.0F, 255, 255, f9, true); - GL11.glPopMatrix(); - GL11.glPushMatrix(); - GL11.glScalef(f12, f12, f12); - f13 = (float)(Minecraft.getSystemTime() % 4873L) / 4873.0F * 8.0F; - GL11.glTranslatef(-f13, 0.0F, 0.0F); - GL11.glRotatef(10.0F, 0.0F, 0.0F, 1.0F); - RenderHelper.customRenderItemIn2D(tessellator, 0.0F, 0.0F, 1.0F, 1.0F, 255, 255, f9, true); - GL11.glPopMatrix(); - GL11.glMatrixMode(GL11.GL_MODELVIEW); - GL11.glDisable(GL11.GL_BLEND); - GL11.glEnable(GL11.GL_LIGHTING); - GL11.glDepthFunc(GL11.GL_LEQUAL); - } - } - - GL11.glPopMatrix(); - } - else { - for (int l = 0; l < p_77020_3_; ++l) { - GL11.glPushMatrix(); - - if (l > 0) { - f10 = (this.random.nextFloat() * 2.0F - 1.0F) * 0.3F; - float f16 = (this.random.nextFloat() * 2.0F - 1.0F) * 0.3F; - float f17 = (this.random.nextFloat() * 2.0F - 1.0F) * 0.3F; - GL11.glTranslatef(f10, f16, f17); - } - - if (!renderInFrame) { - GL11.glRotatef(180.0F - this.renderManager.playerViewY, 0.0F, 1.0F, 0.0F); - } - - GL11.glColor4f(p_77020_5_, p_77020_6_, p_77020_7_, 1.0F); - tessellator.startDrawingQuads(); - tessellator.setNormal(0.0F, 1.0F, 0.0F); - tessellator.addVertexWithUV((double)(0.0F - f7), (double)(0.0F - f8), 0.0D, (double)f14, (double)f5); - tessellator.addVertexWithUV((double)(f6 - f7), (double)(0.0F - f8), 0.0D, (double)f15, (double)f5); - tessellator.addVertexWithUV((double)(f6 - f7), (double)(1.0F - f8), 0.0D, (double)f15, (double)f4); - tessellator.addVertexWithUV((double)(0.0F - f7), (double)(1.0F - f8), 0.0D, (double)f14, (double)f4); - tessellator.draw(); - GL11.glPopMatrix(); - } - } - } - - /** - * @author Shinare - * @reason Added support for semi-transparent item textures - */ - @Overwrite(remap = false) - public void renderEffect(TextureManager manager, int x, int y) { - GL11.glDepthFunc(GL11.GL_EQUAL); - GL11.glDisable(GL11.GL_LIGHTING); - GL11.glDepthMask(false); - manager.bindTexture(RES_ITEM_GLINT); - GL11.glEnable(GL11.GL_ALPHA_TEST); - GL11.glEnable(GL11.GL_BLEND); - GL11.glColor4f(CinderLoE_Config.enchantment_color_red, CinderLoE_Config.enchantment_color_green, CinderLoE_Config.enchantment_color_blue, 1.0F); - this.renderGlint(x * 431278612 + y * 32178161, x - 2, y - 2, 20, 20); - GL11.glDepthMask(true); - GL11.glDisable(GL11.GL_BLEND); - GL11.glDisable(GL11.GL_ALPHA_TEST); - GL11.glEnable(GL11.GL_LIGHTING); - GL11.glDepthFunc(GL11.GL_LEQUAL); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinRendererLivingEntity.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinRendererLivingEntity.java deleted file mode 100644 index 03b56fc..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinRendererLivingEntity.java +++ /dev/null @@ -1,306 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.CinderLoE_Config; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; -import org.lwjgl.opengl.GL11; -import org.lwjgl.opengl.GL12; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.Shadow; - -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.renderer.OpenGlHelper; -import net.minecraft.client.renderer.entity.Render; -import net.minecraft.client.renderer.entity.RendererLivingEntity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.util.MathHelper; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.event.RenderLivingEvent; -import net.minecraftforge.common.MinecraftForge; - -@Mixin(RendererLivingEntity.class) -public abstract class MixinRendererLivingEntity extends Render { - - @Shadow - protected ModelBase renderPassModel; - - @Shadow - protected ModelBase mainModel; - - @Shadow - private static final ResourceLocation RES_ITEM_GLINT = new ResourceLocation("textures/misc/enchanted_item_glint.png"); - - @Shadow - private static final Logger logger = LogManager.getLogger(); - - @Shadow - protected int inheritRenderPass(EntityLivingBase p_77035_1_, int p_77035_2_, float p_77035_3_) { - return 0; - } - - @Shadow - protected int getColorMultiplier(EntityLivingBase p_77030_1_, float p_77030_2_, float p_77030_3_) { - return 0; - } - - @Shadow - protected void func_82408_c(EntityLivingBase p_82408_1_, int p_82408_2_, float p_82408_3_) {} - - @Shadow - protected void renderEquippedItems(EntityLivingBase p_77029_1_, float p_77029_2_) {} - - @Shadow - protected float handleRotationFloat(EntityLivingBase p_77044_1_, float p_77044_2_) { - return 0.0F; - } - - @Shadow - protected void rotateCorpse(EntityLivingBase p_77043_1_, float p_77043_2_, float p_77043_3_, float p_77043_4_) {} - - @Shadow - protected void renderLivingAt(EntityLivingBase p_77039_1_, double p_77039_2_, double p_77039_4_, double p_77039_6_) {} - - @Shadow - protected void passSpecialRender(EntityLivingBase p_77033_1_, double p_77033_2_, double p_77033_4_, double p_77033_6_) {} - - @Shadow - protected int shouldRenderPass(EntityLivingBase p_77032_1_, int p_77032_2_, float p_77032_3_) { - return 0; - } - - @Shadow - protected void preRenderCallback(EntityLivingBase p_77041_1_, float p_77041_2_) {} - - @Shadow - private float interpolateRotation(float p_77034_1_, float p_77034_2_, float p_77034_3_) { - return 0.0F; - } - - @Shadow - protected void renderModel(EntityLivingBase p_77036_1_, float p_77036_2_, float p_77036_3_, float p_77036_4_, float p_77036_5_, float p_77036_6_, float p_77036_7_) {} - - @Shadow - protected float renderSwingProgress(EntityLivingBase p_77040_1_, float p_77040_2_) { - return 0.0F; - } - - /** - * @author Shinare - * @reason Added support for configurable enchantment colour - */ - @Overwrite - public void doRender(EntityLivingBase p_76986_1_, double p_76986_2_, double p_76986_4_, double p_76986_6_, float p_76986_8_, float p_76986_9_) - { - if (MinecraftForge.EVENT_BUS.post(new RenderLivingEvent.Pre(p_76986_1_, (RendererLivingEntity)(Object)this, p_76986_2_, p_76986_4_, p_76986_6_))) return; - GL11.glPushMatrix(); - GL11.glDisable(GL11.GL_CULL_FACE); - this.mainModel.onGround = this.renderSwingProgress(p_76986_1_, p_76986_9_); - - if (this.renderPassModel != null) - { - this.renderPassModel.onGround = this.mainModel.onGround; - } - - this.mainModel.isRiding = p_76986_1_.isRiding(); - - if (this.renderPassModel != null) - { - this.renderPassModel.isRiding = this.mainModel.isRiding; - } - - this.mainModel.isChild = p_76986_1_.isChild(); - - if (this.renderPassModel != null) - { - this.renderPassModel.isChild = this.mainModel.isChild; - } - - try - { - float f2 = this.interpolateRotation(p_76986_1_.prevRenderYawOffset, p_76986_1_.renderYawOffset, p_76986_9_); - float f3 = this.interpolateRotation(p_76986_1_.prevRotationYawHead, p_76986_1_.rotationYawHead, p_76986_9_); - float f4; - - if (p_76986_1_.isRiding() && p_76986_1_.ridingEntity instanceof EntityLivingBase) - { - EntityLivingBase entitylivingbase1 = (EntityLivingBase)p_76986_1_.ridingEntity; - f2 = this.interpolateRotation(entitylivingbase1.prevRenderYawOffset, entitylivingbase1.renderYawOffset, p_76986_9_); - f4 = MathHelper.wrapAngleTo180_float(f3 - f2); - - if (f4 < -85.0F) - { - f4 = -85.0F; - } - - if (f4 >= 85.0F) - { - f4 = 85.0F; - } - - f2 = f3 - f4; - - if (f4 * f4 > 2500.0F) - { - f2 += f4 * 0.2F; - } - } - - float f13 = p_76986_1_.prevRotationPitch + (p_76986_1_.rotationPitch - p_76986_1_.prevRotationPitch) * p_76986_9_; - this.renderLivingAt(p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_); - f4 = this.handleRotationFloat(p_76986_1_, p_76986_9_); - this.rotateCorpse(p_76986_1_, f4, f2, p_76986_9_); - float f5 = 0.0625F; - GL11.glEnable(GL12.GL_RESCALE_NORMAL); - GL11.glScalef(-1.0F, -1.0F, 1.0F); - this.preRenderCallback(p_76986_1_, p_76986_9_); - GL11.glTranslatef(0.0F, -24.0F * f5 - 0.0078125F, 0.0F); - float f6 = p_76986_1_.prevLimbSwingAmount + (p_76986_1_.limbSwingAmount - p_76986_1_.prevLimbSwingAmount) * p_76986_9_; - float f7 = p_76986_1_.limbSwing - p_76986_1_.limbSwingAmount * (1.0F - p_76986_9_); - - if (p_76986_1_.isChild()) - { - f7 *= 3.0F; - } - - if (f6 > 1.0F) - { - f6 = 1.0F; - } - - GL11.glEnable(GL11.GL_ALPHA_TEST); - this.mainModel.setLivingAnimations(p_76986_1_, f7, f6, p_76986_9_); - this.renderModel(p_76986_1_, f7, f6, f4, f3 - f2, f13, f5); - int j; - float f8; - float f9; - float f10; - - for (int i = 0; i < 4; ++i) - { - j = this.shouldRenderPass(p_76986_1_, i, p_76986_9_); - - if (j > 0) - { - this.renderPassModel.setLivingAnimations(p_76986_1_, f7, f6, p_76986_9_); - this.renderPassModel.render(p_76986_1_, f7, f6, f4, f3 - f2, f13, f5); - - if ((j & 240) == 16) - { - this.func_82408_c(p_76986_1_, i, p_76986_9_); - this.renderPassModel.render(p_76986_1_, f7, f6, f4, f3 - f2, f13, f5); - } - - if ((j & 15) == 15) - { - f8 = (float)p_76986_1_.ticksExisted + p_76986_9_; - this.bindTexture(RES_ITEM_GLINT); - GL11.glEnable(GL11.GL_BLEND); - f9 = 0.5F; - GL11.glColor4f(f9, f9, f9, 1.0F); - GL11.glDepthFunc(GL11.GL_EQUAL); - GL11.glDepthMask(false); - - for (int k = 0; k < 2; ++k) - { - GL11.glDisable(GL11.GL_LIGHTING); - GL11.glColor4f(CinderLoE_Config.enchantment_color_red, CinderLoE_Config.enchantment_color_green, CinderLoE_Config.enchantment_color_blue, 1.0F); - GL11.glBlendFunc(GL11.GL_SRC_COLOR, GL11.GL_ONE); - GL11.glMatrixMode(GL11.GL_TEXTURE); - GL11.glLoadIdentity(); - float f11 = f8 * (0.001F + (float)k * 0.003F) * 20.0F; - float f12 = 0.33333334F; - GL11.glScalef(f12, f12, f12); - GL11.glRotatef(30.0F - (float)k * 60.0F, 0.0F, 0.0F, 1.0F); - GL11.glTranslatef(0.0F, f11, 0.0F); - GL11.glMatrixMode(GL11.GL_MODELVIEW); - this.renderPassModel.render(p_76986_1_, f7, f6, f4, f3 - f2, f13, f5); - } - - GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); - GL11.glMatrixMode(GL11.GL_TEXTURE); - GL11.glDepthMask(true); - GL11.glLoadIdentity(); - GL11.glMatrixMode(GL11.GL_MODELVIEW); - GL11.glEnable(GL11.GL_LIGHTING); - GL11.glDisable(GL11.GL_BLEND); - GL11.glDepthFunc(GL11.GL_LEQUAL); - } - - GL11.glDisable(GL11.GL_BLEND); - GL11.glEnable(GL11.GL_ALPHA_TEST); - } - } - - GL11.glDepthMask(true); - this.renderEquippedItems(p_76986_1_, p_76986_9_); - float f14 = p_76986_1_.getBrightness(p_76986_9_); - j = this.getColorMultiplier(p_76986_1_, f14, p_76986_9_); - OpenGlHelper.setActiveTexture(OpenGlHelper.lightmapTexUnit); - GL11.glDisable(GL11.GL_TEXTURE_2D); - OpenGlHelper.setActiveTexture(OpenGlHelper.defaultTexUnit); - - if ((j >> 24 & 255) > 0 || p_76986_1_.hurtTime > 0 || p_76986_1_.deathTime > 0) - { - GL11.glDisable(GL11.GL_TEXTURE_2D); - GL11.glDisable(GL11.GL_ALPHA_TEST); - GL11.glEnable(GL11.GL_BLEND); - GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); - GL11.glDepthFunc(GL11.GL_EQUAL); - - if (p_76986_1_.hurtTime > 0 || p_76986_1_.deathTime > 0) - { - GL11.glColor4f(f14, 0.0F, 0.0F, 0.4F); - this.mainModel.render(p_76986_1_, f7, f6, f4, f3 - f2, f13, f5); - - for (int l = 0; l < 4; ++l) - { - if (this.inheritRenderPass(p_76986_1_, l, p_76986_9_) >= 0) - { - GL11.glColor4f(f14, 0.0F, 0.0F, 0.4F); - this.renderPassModel.render(p_76986_1_, f7, f6, f4, f3 - f2, f13, f5); - } - } - } - - if ((j >> 24 & 255) > 0) - { - f8 = (float)(j >> 16 & 255) / 255.0F; - f9 = (float)(j >> 8 & 255) / 255.0F; - float f15 = (float)(j & 255) / 255.0F; - f10 = (float)(j >> 24 & 255) / 255.0F; - GL11.glColor4f(f8, f9, f15, f10); - this.mainModel.render(p_76986_1_, f7, f6, f4, f3 - f2, f13, f5); - - for (int i1 = 0; i1 < 4; ++i1) - { - if (this.inheritRenderPass(p_76986_1_, i1, p_76986_9_) >= 0) - { - GL11.glColor4f(f8, f9, f15, f10); - this.renderPassModel.render(p_76986_1_, f7, f6, f4, f3 - f2, f13, f5); - } - } - } - - GL11.glDepthFunc(GL11.GL_LEQUAL); - GL11.glDisable(GL11.GL_BLEND); - GL11.glEnable(GL11.GL_ALPHA_TEST); - GL11.glEnable(GL11.GL_TEXTURE_2D); - } - - GL11.glDisable(GL12.GL_RESCALE_NORMAL); - } - catch (Exception exception) - { - logger.error("Couldn\'t render entity", exception); - } - - OpenGlHelper.setActiveTexture(OpenGlHelper.lightmapTexUnit); - GL11.glEnable(GL11.GL_TEXTURE_2D); - OpenGlHelper.setActiveTexture(OpenGlHelper.defaultTexUnit); - GL11.glEnable(GL11.GL_CULL_FACE); - GL11.glPopMatrix(); - this.passSpecialRender(p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_); - MinecraftForge.EVENT_BUS.post(new RenderLivingEvent.Post(p_76986_1_, (RendererLivingEntity)(Object)this, p_76986_2_, p_76986_4_, p_76986_6_)); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinSlotCrafting.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinSlotCrafting.java deleted file mode 100644 index 2a8148c..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinSlotCrafting.java +++ /dev/null @@ -1,95 +0,0 @@ -package com.zivilon.cinder_loe.mixins; - -import com.zivilon.cinder_loe.util.DurableItemCrafter; -import cpw.mods.fml.common.FMLCommonHandler; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.InventoryCrafting; -import net.minecraft.inventory.IInventory; -import net.minecraft.inventory.SlotCrafting; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraftforge.common.MinecraftForge; -import net.minecraftforge.event.entity.player.PlayerDestroyItemEvent; -import org.spongepowered.asm.mixin.Dynamic; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.Overwrite; - -import com.zivilon.cinder_loe.CinderLoE; - -@Mixin(SlotCrafting.class) -public abstract class MixinSlotCrafting { - @Shadow - private final IInventory craftMatrix; - @Shadow - private EntityPlayer thePlayer; - @Shadow - protected void onCrafting(ItemStack p_75210_1_) {} - - public MixinSlotCrafting() { - craftMatrix = null; - } - - /** - * @author Shinare - * @reason Added support for crafting with item durability. To register items for durability crafting, refer to com.zivilon.cinder_loe.util.DurableItemCrafter - */ - - @Overwrite - public void onPickupFromSlot(EntityPlayer p_82870_1_, ItemStack p_82870_2_) { - FMLCommonHandler.instance().firePlayerCraftingEvent(p_82870_1_, p_82870_2_, craftMatrix); - onCrafting(p_82870_2_); - boolean hasExceptionItem = false; - int arrow_count = 0; - - for (int i = 0; i < craftMatrix.getSizeInventory(); ++i) { - ItemStack itemstack1 = craftMatrix.getStackInSlot(i); - - if (itemstack1 != null && DurableItemCrafter.exceptionItems.contains(itemstack1.getItem())) { - hasExceptionItem = true; - } - if (itemstack1 != null && itemstack1.getItem() == Items.arrow) { - arrow_count++; - } - } - - for (int i = 0; i < craftMatrix.getSizeInventory(); ++i) { - ItemStack itemstack1 = craftMatrix.getStackInSlot(i); - - if (itemstack1 != null) { - if (!hasExceptionItem && DurableItemCrafter.customItems.contains(itemstack1.getItem())) { - damage_item(itemstack1, i, 1, craftMatrix); - } else { - craftMatrix.decrStackSize(i, 1); - } - - if (itemstack1 != null && itemstack1.getItem().hasContainerItem(itemstack1)) { - ItemStack itemstack2 = itemstack1.getItem().getContainerItem(itemstack1); - - if (itemstack2 != null && itemstack2.isItemStackDamageable() && itemstack2.getItemDamage() > itemstack2.getMaxDamage()) { - MinecraftForge.EVENT_BUS.post(new PlayerDestroyItemEvent(thePlayer, itemstack2)); - continue; - } - - if (!itemstack1.getItem().doesContainerItemLeaveCraftingGrid(itemstack1) || !thePlayer.inventory.addItemStackToInventory(itemstack2)) { - if (craftMatrix.getStackInSlot(i) == null) { - craftMatrix.setInventorySlotContents(i, itemstack2); - } else { - thePlayer.dropPlayerItemWithRandomChoice(itemstack2, false); - } - } - } - } - } - } - - @Dynamic - public void damage_item(ItemStack item, int i, int damage, IInventory matrix) { - item.setItemDamage(item.getItemDamage() + damage); - if (item.getItemDamage() >= item.getMaxDamage()) { - matrix.setInventorySlotContents(i, null); // Item breaks and is removed - } else { - matrix.setInventorySlotContents(i, item); - } - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRHiredNPCInfo.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRHiredNPCInfo.java deleted file mode 100644 index 0935a31..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRHiredNPCInfo.java +++ /dev/null @@ -1,154 +0,0 @@ -package com.zivilon.cinder_loe.mixins.overrides; - -import lotr.common.entity.npc.LOTREntityNPC; -import lotr.common.entity.npc.LOTRHiredNPCInfo; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.entity.ai.attributes.IAttribute; -import net.minecraft.entity.ai.attributes.IAttributeInstance; -import net.minecraft.entity.ai.attributes.RangedAttribute; -import net.minecraft.entity.item.EntityFireworkRocket; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTBase; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.nbt.NBTTagList; -import net.minecraft.util.ChatComponentTranslation; -import net.minecraft.util.IChatComponent; -import net.minecraft.world.World; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.Unique; - -import java.util.UUID; - -@Mixin(LOTRHiredNPCInfo.class) -public class MixinLOTRHiredNPCInfo { - @Shadow - private LOTREntityNPC theEntity; - @Shadow - private UUID hiringPlayerUUID; - @Shadow - public int xpLevel = 1; - @Unique - public int levelUpCounter = 0; - - /** - * @author - * @reason - */ - @Overwrite(remap = false) - public void onLevelUp() { - EntityPlayer hirer; - rotateLevelUpStat(); - - Entity mount = this.theEntity.ridingEntity; - if (mount instanceof EntityLivingBase && !(mount instanceof LOTREntityNPC)) { - this.addLevelUpHealthGain((EntityLivingBase)mount); - } - if ((hirer = this.getHiringPlayer()) != null) { - hirer.addChatMessage((IChatComponent)new ChatComponentTranslation("lotr.hiredNPC.levelUp", new Object[]{this.theEntity.getCommandSenderName(), this.xpLevel})); - } - this.spawnLevelUpFireworks(); - } - - - public void rotateLevelUpStat() { - EntityLivingBase entity = (EntityLivingBase) this.theEntity; - - switch (levelUpCounter) { - case 0: - // +1 HP - this.addLevelUpHealthGain(entity); - break; - case 1: - // +0.25 Damage - this.increaseDamageGain(entity); - break; - case 2: - // +0.005 movement Speed - this.increaseMovementGain(entity); - break; - case 3: - // +0.1 knockback resistance - this.increaseKnockbackGain(entity); - break; - } - levelUpCounter = (levelUpCounter +1) % 4; - } - - /** - * @author - * @reason - */ - @Overwrite(remap = false) - public void addLevelUpHealthGain(EntityLivingBase gainingEntity) { - float healthBoost = 1.0f; - IAttributeInstance attrHealth = gainingEntity.getEntityAttribute(SharedMonsterAttributes.maxHealth); - attrHealth.setBaseValue(attrHealth.getBaseValue() + (double)healthBoost); - gainingEntity.heal(healthBoost); - } - - public void increaseDamageGain(EntityLivingBase gainingEntity) { - float damageBoost = 0.25f; - IAttributeInstance attribute = gainingEntity.getEntityAttribute(LOTREntityNPC.npcAttackDamage); - attribute.setBaseValue(attribute.getBaseValue() + (double)damageBoost); - } - - public void increaseMovementGain(EntityLivingBase gainingEntity) { - float movementBoost = 0.0025f; - IAttributeInstance attribute = gainingEntity.getEntityAttribute(SharedMonsterAttributes.movementSpeed); - attribute.setBaseValue(attribute.getBaseValue() + (double)movementBoost); - } - - public void increaseKnockbackGain(EntityLivingBase gainingEntity) { - float kbResBoost = 0.1f; - IAttributeInstance attribute = gainingEntity.getEntityAttribute(SharedMonsterAttributes.knockbackResistance); - attribute.setBaseValue(attribute.getBaseValue() + (double)kbResBoost); - } - - /** - * @author - * @reason - */ - @Overwrite(remap = false) - public EntityPlayer getHiringPlayer() { - if (this.hiringPlayerUUID == null) { - return null; - } - return this.theEntity.worldObj.func_152378_a(this.hiringPlayerUUID); - } - - public void spawnLevelUpFireworks() { - boolean bigLvlUp = this.xpLevel % 5 == 0; - World world = this.theEntity.worldObj; - ItemStack itemstack = new ItemStack(Items.fireworks); - NBTTagCompound itemData = new NBTTagCompound(); - NBTTagCompound fireworkData = new NBTTagCompound(); - NBTTagList explosionsList = new NBTTagList(); - int explosions = 1; - for (int l = 0; l < explosions; ++l) { - NBTTagCompound explosionData = new NBTTagCompound(); - explosionData.setBoolean("Flicker", true); - explosionData.setBoolean("Trail", bigLvlUp); - int[] colors = new int[]{0xFF5500, this.theEntity.getFaction().getFactionColor()}; - explosionData.setIntArray("Colors", colors); - boolean effectType = bigLvlUp; - explosionData.setByte("Type", (byte)(effectType ? 1 : 0)); - explosionsList.appendTag((NBTBase)explosionData); - } - fireworkData.setTag("Explosions", (NBTBase)explosionsList); - itemData.setTag("Fireworks", (NBTBase)fireworkData); - itemstack.setTagCompound(itemData); - EntityFireworkRocket firework = new EntityFireworkRocket(world, this.theEntity.posX, this.theEntity.boundingBox.minY + (double)this.theEntity.height, this.theEntity.posZ, itemstack); - NBTTagCompound fireworkNBT = new NBTTagCompound(); - firework.writeEntityToNBT(fireworkNBT); - fireworkNBT.setInteger("LifeTime", bigLvlUp ? 20 : 15); - firework.readEntityFromNBT(fireworkNBT); - world.spawnEntityInWorld((Entity)firework); - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRItemEntDraught.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRItemEntDraught.java deleted file mode 100644 index d361b78..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRItemEntDraught.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.zivilon.cinder_loe.mixins.overrides; - -import lotr.common.LOTRAchievement; -import lotr.common.LOTRLevelData; -import lotr.common.block.LOTRBlockSaplingBase; -import lotr.common.entity.npc.LOTREntityDarkHuorn; -import lotr.common.entity.npc.LOTREntityHuorn; -import lotr.common.entity.npc.LOTREntityTree; -import lotr.common.entity.npc.LOTRHiredNPCInfo; -import lotr.common.fac.LOTRAlignmentValues; -import lotr.common.fac.LOTRFaction; -import lotr.common.item.LOTRItemEntDraught; -import lotr.common.item.LOTRItemPotion; -import lotr.common.item.LOTRPoisonedDrinks; -import net.minecraft.block.Block; -import net.minecraft.block.BlockSapling; -import net.minecraft.entity.Entity; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.init.Items; - -import net.minecraft.potion.Potion; -import net.minecraft.potion.PotionEffect; -import net.minecraft.util.*; -import net.minecraft.world.World; - -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; - -import java.util.List; -import java.util.Random; - -@Mixin(LOTRItemEntDraught.class) -public abstract class MixinLOTRItemEntDraught { - - - private LOTRItemEntDraught.DraughtInfo getDraughtInfo(ItemStack itemstack) { - int i = itemstack.getItemDamage(); - if (i >= LOTRItemEntDraught.draughtTypes.length) { - i = 0; - } - return LOTRItemEntDraught.draughtTypes[i]; - } - - - /** - * @author KeyLime17 - * @reason ??? - */ - @Overwrite(remap = false) - public ItemStack func_77654_b(ItemStack itemstack, World world, EntityPlayer entityplayer) { - - final Random rand = new Random(); - int chance = rand.nextInt(100); - - if (chance < 20) { - if (!world.isRemote) { - entityplayer.addPotionEffect(new PotionEffect(Potion.poison.id, 400)); - ChatComponentText message = new ChatComponentText("As you drink, you taste the bitter tears of Yavanna's Shepherds..."); - ChatStyle style = new ChatStyle(); - style.setColor(EnumChatFormatting.RED); // Set color to red - message.setChatStyle(style); - entityplayer.addChatMessage(message); - } - } else { - if (entityplayer.canEat(false)) { - entityplayer.getFoodStats().addStats(this.getDraughtInfo((ItemStack)itemstack).heal, this.getDraughtInfo((ItemStack)itemstack).saturation); - } - if (!world.isRemote) { - List effects = this.getDraughtInfo((ItemStack)itemstack).effects; - for (int i = 0; i < effects.size(); ++i) { - PotionEffect effect = (PotionEffect)effects.get(i); - entityplayer.addPotionEffect(new PotionEffect(effect.getPotionID(), effect.getDuration())); - } - } - if (!world.isRemote && entityplayer.getCurrentEquippedItem() == itemstack) { - LOTRLevelData.getData(entityplayer).addAchievement(LOTRAchievement.drinkEntDraught); - } - } - return !entityplayer.capabilities.isCreativeMode ? new ItemStack(Items.bowl) : itemstack; - } - - /** - * @author KeyLime17 - * @reason ??? - */ - @Overwrite(remap = false) - public boolean func_77648_a(ItemStack itemstack, EntityPlayer entityplayer, World world, int i, int j, int k, int side, float f, float f1, float f2) { - if (this.getDraughtInfo((ItemStack)itemstack).name.equals("gold")) { - if (LOTRLevelData.getData(entityplayer).getAlignment(LOTRFaction.FANGORN) < 500.0f) { - if (!world.isRemote) { - LOTRAlignmentValues.notifyAlignmentNotHighEnough(entityplayer, 500.0f, LOTRFaction.FANGORN); - } - return false; - } - Block block = world.getBlock(i, j, k); - int meta = world.getBlockMetadata(i, j, k); - if (block instanceof BlockSapling || block instanceof LOTRBlockSaplingBase) { - meta &= 7; - for (int huornType = 0; huornType < LOTREntityTree.TYPES.length; ++huornType) { - if (block != LOTREntityTree.SAPLING_BLOCKS[huornType] || meta != LOTREntityTree.SAPLING_META[huornType]) continue; - LOTREntityDarkHuorn darkhuorn = new LOTREntityDarkHuorn(world); - darkhuorn.setTreeType(huornType); - darkhuorn.isNPCPersistent = true; - darkhuorn.liftSpawnRestrictions = true; - darkhuorn.setLocationAndAngles((double)i + 0.5, j, (double)k + 0.5, 0.0f, 0.0f); - if (!darkhuorn.getCanSpawnHere()) continue; - if (!world.isRemote) { - world.spawnEntityInWorld((Entity)darkhuorn); - ChatComponentText message = new ChatComponentText("You have raised a Huorn.. However it cries for the deaths of its kin"); - ChatStyle style = new ChatStyle(); - style.setColor(EnumChatFormatting.RED); // Set color to red - message.setChatStyle(style); - entityplayer.addChatMessage(message); - LOTRLevelData.getData(entityplayer).addAchievement(LOTRAchievement.summonHuorn); - } - for (int l = 0; l < 24; ++l) { - double d = (double)i + 0.5 - world.rand.nextDouble() * 2.0 + world.rand.nextDouble() * 2.0; - double d1 = (double)j + world.rand.nextDouble() * 4.0; - double d2 = (double)k + 0.5 - world.rand.nextDouble() * 2.0 + world.rand.nextDouble() * 2.0; - world.spawnParticle("angryVillager", d, d1, d2, 0.0, 0.0, 0.0); - } - if (!entityplayer.capabilities.isCreativeMode) { - entityplayer.inventory.setInventorySlotContents(entityplayer.inventory.currentItem, new ItemStack(Items.bowl)); - } - return true; - } - } - } - return false; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRReplacedMethods.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRReplacedMethods.java deleted file mode 100644 index 772d827..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRReplacedMethods.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.zivilon.cinder_loe.mixins.overrides; - -import lotr.common.coremod.LOTRReplacedMethods; -import lotr.common.enchant.LOTREnchantmentHelper; -import net.minecraft.item.ItemStack; -import net.minecraft.util.DamageSource; -import net.minecraft.util.MathHelper; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; - -@Mixin(LOTRReplacedMethods.Enchants.class) -public class MixinLOTRReplacedMethods { - - /** - * @author Keylime - * @reason because Mixins complains - */ - @Overwrite(remap = false) - public static int getSpecialArmorProtection(int base, ItemStack[] armor, DamageSource source) { - int i = base; - i += LOTREnchantmentHelper.calcSpecialArmorSetProtection(armor, source); - //i = MathHelper.clamp_int(i, -25, 25); - return i; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRTradeEntriesOverrides.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRTradeEntriesOverrides.java deleted file mode 100644 index a994822..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRTradeEntriesOverrides.java +++ /dev/null @@ -1,756 +0,0 @@ -package com.zivilon.cinder_loe.mixins.overrides; - -import com.zivilon.cinder_loe.CinderLoE; -import com.zivilon.cinder_loe.mixins.MixinLOTRTradeEntries; -import lotr.common.LOTRFoods; -import lotr.common.LOTRMod; -import lotr.common.entity.npc.LOTRTradeEntries; -import lotr.common.entity.npc.LOTRTradeEntry; -import lotr.common.entity.npc.LOTRTradeEntryBarrel; -import lotr.common.item.LOTRItemBanner; -import net.minecraft.block.Block; -import net.minecraft.init.Blocks; -import net.minecraft.init.Items; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.Unique; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; - -import java.util.Arrays; - -import static lotr.common.entity.npc.LOTRTradeEntries.*; -import static lotr.common.entity.npc.LOTRTradeEntries.MOREDAIN_HUNTSMAN_BUY; - -@Mixin(LOTRTradeEntries.class) -public abstract class MixinLOTRTradeEntriesOverrides { - @Shadow - private LOTRTradeEntries setVessels(LOTRFoods foods) { - return null; - } - - @Shadow public static LOTRTradeEntries MORDOR_TRADER_BUY; - - @Shadow public static LOTRTradeEntries MORDOR_TRADER_SELL; - - @Shadow public static LOTRTradeEntries GONDOR_BLACKSMITH_SELL; - - @Shadow public static LOTRTradeEntries GALADHRIM_TRADER_BUY; - - @Shadow public static LOTRTradeEntries GALADHRIM_TRADER_SELL; - - @Shadow public static LOTRTradeEntries URUK_HAI_TRADER_SELL; - - @Shadow public static LOTRTradeEntries DWARF_MINER_BUY; - - @Shadow public static LOTRTradeEntries DWARF_MINER_SELL; - - @Shadow public static LOTRTradeEntries ROHAN_BLACKSMITH_SELL; - - @Shadow public static LOTRTradeEntries DUNLENDING_BARTENDER_BUY; - - @Shadow public static LOTRTradeEntries ROHAN_MEADHOST_BUY; - - @Shadow public static LOTRTradeEntries DUNLENDING_BARTENDER_SELL; - - @Shadow public static LOTRTradeEntries ROHAN_MEADHOST_SELL; - - @Shadow public static LOTRTradeEntries HOBBIT_ORCHARDER_BUY; - - @Shadow public static LOTRTradeEntries HOBBIT_ORCHARDER_SELL; - - @Shadow public static LOTRTradeEntries HOBBIT_FARMER_BUY; - - @Shadow public static LOTRTradeEntries HOBBIT_FARMER_SELL; - - @Shadow public static LOTRTradeEntries BLUE_DWARF_MINER_BUY; - - @Shadow public static LOTRTradeEntries BLUE_DWARF_MINER_SELL; - - @Shadow public static LOTRTradeEntries BLUE_DWARF_MERCHANT_BUY; - - @Shadow public static LOTRTradeEntries BLUE_DWARF_MERCHANT_SELL; - - @Shadow public static LOTRTradeEntries NEAR_HARAD_MERCHANT_BUY; - - @Shadow public static LOTRTradeEntries NEAR_HARAD_MERCHANT_SELL; - - @Shadow public static LOTRTradeEntries ANGMAR_TRADER_BUY; - - @Shadow public static LOTRTradeEntries ANGMAR_TRADER_SELL; - - @Shadow public static LOTRTradeEntries DOL_GULDUR_TRADER_BUY; - - @Shadow public static LOTRTradeEntries DOL_GULDUR_TRADER_SELL; - - @Shadow public static LOTRTradeEntries HALF_TROLL_SCAVENGER_BUY; - - @Shadow public static LOTRTradeEntries HALF_TROLL_SCAVENGER_SELL; - - @Shadow public static LOTRTradeEntries HIGH_ELF_SMITH_BUY; - - @Shadow public static LOTRTradeEntries HIGH_ELF_SMITH_SELL; - - @Shadow public static LOTRTradeEntries WOOD_ELF_SMITH_BUY; - - @Shadow public static LOTRTradeEntries MOREDAIN_HUNTSMAN_BUY; - - @Shadow public static LOTRTradeEntries MOREDAIN_HUTMAKER_BUY; - - @Shadow public static LOTRTradeEntries MOREDAIN_HUTMAKER_SELL; - - @Shadow public static LOTRTradeEntries IRON_HILLS_MERCHANT_BUY; - - @Shadow public static LOTRTradeEntries IRON_HILLS_MERCHANT_SELL; - - @Shadow public static LOTRTradeEntries TAUREDAIN_SHAMAN_BUY; - - @Shadow public static LOTRTradeEntries TAUREDAIN_SHAMAN_SELL; - - @Shadow public static LOTRTradeEntries TAUREDAIN_FARMER_BUY; - - @Shadow public static LOTRTradeEntries TAUREDAIN_FARMER_SELL; - - @Shadow public static LOTRTradeEntries DWARF_SMITH_BUY; - - @Shadow public static LOTRTradeEntries DWARF_SMITH_SELL; - - @Shadow public static LOTRTradeEntries BLUE_DWARF_SMITH_BUY; - - @Shadow public static LOTRTradeEntries DALE_BLACKSMITH_BUY; - - @Shadow public static LOTRTradeEntries DALE_BLACKSMITH_SELL; - - @Shadow public static LOTRTradeEntries WICKED_DWARF_BUY; - - /** - * @author - * @reason - */ - @Inject(method = "setupTrades1", at = @At("RETURN"), remap = false) - private static void newTrades(CallbackInfo ci) { - MORDOR_TRADER_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.morgulTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetOrc), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyOrc), 30), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsOrc), 26), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsOrc), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.scimitarOrc), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.polearmOrc), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearOrc), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerOrc), 10), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerOrcPoisoned), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.battleaxeOrc), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.orcBomb), 30), - new LOTRTradeEntry(new ItemStack(LOTRMod.mugOrcDraught, 1, 9999), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.fur), 4), - new LOTRTradeEntry(new ItemStack(LOTRMod.orcBow), 16), - new LOTRTradeEntry(new ItemStack(Items.arrow, 4), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.pickaxeOrc), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.axeOrc), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.hammerOrc), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.maggotyBread), 4), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetFur), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyFur), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsFur), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsFur), 12), - new LOTRTradeEntry(new ItemStack(LOTRMod.wargArmorMordor), 25), - new LOTRTradeEntry(new ItemStack(CinderLoE.cinderFurItem, 1, 1), 2), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200)); - ((MixinLOTRTradeEntriesOverrides)(Object)MORDOR_TRADER_BUY).setVessels(LOTRFoods.ORC_DRINK); - GONDOR_BLACKSMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.gondorianTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordGondor), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerGondor), 9), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearGondor), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetGondor), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyGondor), 32), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsGondor), 26), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsGondor), 17), - new LOTRTradeEntry(new ItemStack(LOTRMod.blacksmithHammer), 18), - new LOTRTradeEntry(new ItemStack(Blocks.iron_bars, 8), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeBars, 8), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.hammerGondor), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.crossbowBolt, 4), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.ironCrossbow), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.horseArmorGondor), 25), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200)); - ((MixinLOTRTradeEntriesOverrides)(Object)GONDOR_BLACKSMITH_BUY).setVessels(LOTRFoods.GONDOR_DRINK); - URUK_HAI_TRADER_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.urukTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetUruk), 24), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyUruk), 36), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsUruk), 30), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsUruk), 22), - new LOTRTradeEntry(new ItemStack(LOTRMod.scimitarUruk), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearUruk), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerUruk), 9), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerUrukPoisoned), 11), - new LOTRTradeEntry(new ItemStack(LOTRMod.battleaxeUruk), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.hammerUruk), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.pikeUruk), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.orcBomb), 30), - new LOTRTradeEntry(new ItemStack(LOTRMod.mugOrcDraught, 1, 9999), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.fur), 4), - new LOTRTradeEntry(new ItemStack(LOTRMod.urukCrossbow), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.crossbowBolt, 4), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.pickaxeUruk), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.axeUruk), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.maggotyBread), 4), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetFur), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyFur), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsFur), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsFur), 12), - new LOTRTradeEntry(new ItemStack(CinderLoE.cinderFurItem, 1, 1), 2), - new LOTRTradeEntry(new ItemStack(CinderLoE.cinderFurItem, 1, 0), 2), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(LOTRMod.wargArmorUruk), 25)); - ((MixinLOTRTradeEntriesOverrides)(Object)URUK_HAI_TRADER_BUY).setVessels(LOTRFoods.ORC_DRINK); - ROHAN_BLACKSMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.rohirricTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordRohan), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.battleaxeRohan), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerRohan), 9), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearRohan), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetRohan), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyRohan), 28), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsRohan), 24), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsRohan), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetRohanMarshal), 45), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyRohanMarshal), 60), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsRohanMarshal), 55), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsRohanMarshal), 40), - new LOTRTradeEntry(new ItemStack(LOTRMod.blacksmithHammer), 18), - new LOTRTradeEntry(new ItemStack(Blocks.iron_bars, 8), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeBars, 8), 20), - new LOTRTradeEntry(new ItemStack(Items.saddle), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.crossbowBolt, 4), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.ironCrossbow), 15), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(LOTRMod.horseArmorRohan), 25)); - ((MixinLOTRTradeEntriesOverrides)(Object)ROHAN_BLACKSMITH_BUY).setVessels(LOTRFoods.ROHAN_DRINK); - - ANGMAR_TRADER_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.angmarTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetAngmar), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyAngmar), 30), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsAngmar), 26), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsAngmar), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordAngmar), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearAngmar), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerAngmar), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerAngmarPoisoned), 10), - new LOTRTradeEntry(new ItemStack(LOTRMod.battleaxeAngmar), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.polearmAngmar), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.orcBomb), 30), - new LOTRTradeEntry(new ItemStack(LOTRMod.mugOrcDraught, 1, 9999), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.fur), 4), - new LOTRTradeEntry(new ItemStack(LOTRMod.orcBow), 16), - new LOTRTradeEntry(new ItemStack(Items.arrow, 4), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.pickaxeAngmar), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.axeAngmar), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.hammerAngmar), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.maggotyBread), 4), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetFur), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyFur), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsFur), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsFur), 12), - new LOTRTradeEntry(new ItemStack(CinderLoE.cinderFurItem, 1, 0), 2), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(LOTRMod.wargArmorAngmar), 25)); - - DOL_GULDUR_TRADER_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.dolGuldurTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetDolGuldur), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyDolGuldur), 30), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsDolGuldur), 26), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsDolGuldur), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordDolGuldur), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearDolGuldur), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerDolGuldur), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerDolGuldurPoisoned), 10), - new LOTRTradeEntry(new ItemStack(LOTRMod.battleaxeDolGuldur), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.pikeDolGuldur), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.orcBomb), 30), - new LOTRTradeEntry(new ItemStack(LOTRMod.mugOrcDraught, 1, 9999), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.orcBow), 16), - new LOTRTradeEntry(new ItemStack(Items.arrow, 4), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.pickaxeDolGuldur), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.axeDolGuldur), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.hammerDolGuldur), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.maggotyBread), 4), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(Items.string), 2)); - ((MixinLOTRTradeEntriesOverrides)(Object)ANGMAR_TRADER_BUY).setVessels(LOTRFoods.ORC_DRINK); - ((MixinLOTRTradeEntriesOverrides)(Object)DOL_GULDUR_TRADER_BUY).setVessels(LOTRFoods.ORC_DRINK); - GALADHRIM_SMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.elvenTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordElven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerElven), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearElven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.polearmElven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.longspearElven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.axeElven), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.pickaxeElven), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.shovelElven), 12), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetElven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyElven), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsElven), 22), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsElven), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.horseArmorGaladhrim), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.elvenBow), 20), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(Items.arrow, 4), 3)); - - HIGH_ELF_SMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.highElvenTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordHighElven), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.polearmHighElven), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.longspearHighElven), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerHighElven), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearHighElven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.axeHighElven), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.pickaxeHighElven), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.shovelHighElven), 12), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetHighElven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyHighElven), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsHighElven), 22), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsHighElven), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.horseArmorHighElven), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.highElvenBow), 20), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(Items.arrow, 4), 3)); - ((MixinLOTRTradeEntriesOverrides)(Object)GALADHRIM_SMITH_BUY).setVessels(LOTRFoods.ELF_DRINK); - ((MixinLOTRTradeEntriesOverrides)(Object)HIGH_ELF_SMITH_BUY).setVessels(LOTRFoods.ELF_DRINK); - ((MixinLOTRTradeEntriesOverrides)(Object)WOOD_ELF_SMITH_BUY).setVessels(LOTRFoods.WOOD_ELF_DRINK); - WOOD_ELF_SMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.woodElvenTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordWoodElven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerWoodElven), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearWoodElven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.polearmWoodElven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.longspearWoodElven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.axeWoodElven), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.pickaxeWoodElven), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.shovelWoodElven), 12), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetWoodElven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyWoodElven), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsWoodElven), 22), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsWoodElven), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.elkArmorWoodElven), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.mirkwoodBow), 15), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(Items.arrow, 4), 3)); - - DWARF_SMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.dwarvenTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.blacksmithHammer), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.dwarvenRing), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordDwarven), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearDwarven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.battleaxeDwarven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.hammerDwarven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.pikeDwarven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerDwarven), 13), - new LOTRTradeEntry(new ItemStack(LOTRMod.axeDwarven), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.pickaxeDwarven), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.shovelDwarven), 12), - new LOTRTradeEntry(new ItemStack(LOTRMod.mattockDwarven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.throwingAxeDwarven), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetDwarven), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyDwarven), 36), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsDwarven), 30), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsDwarven), 22), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetDwarvenSilver), 50), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyDwarvenSilver), 60), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsDwarvenSilver), 55), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsDwarvenSilver), 50), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetDwarvenGold), 70), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyDwarvenGold), 80), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsDwarvenGold), 75), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsDwarvenGold), 70), - new LOTRTradeEntry(new ItemStack(LOTRMod.boarArmorDwarven), 25), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(LOTRMod.dwarfBars, 8), 20)); - BLUE_DWARF_SMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.blueDwarvenTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.blacksmithHammer), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.dwarvenRing), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordBlueDwarven), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearBlueDwarven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.battleaxeBlueDwarven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.hammerBlueDwarven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.pikeBlueDwarven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerBlueDwarven), 13), - new LOTRTradeEntry(new ItemStack(LOTRMod.axeBlueDwarven), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.pickaxeBlueDwarven), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.shovelBlueDwarven), 12), - new LOTRTradeEntry(new ItemStack(LOTRMod.mattockBlueDwarven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.throwingAxeBlueDwarven), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetBlueDwarven), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyBlueDwarven), 36), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsBlueDwarven), 30), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsBlueDwarven), 22), - new LOTRTradeEntry(new ItemStack(LOTRMod.boarArmorBlueDwarven), 25), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(LOTRMod.blueDwarfBars, 8), 20)); - ((MixinLOTRTradeEntriesOverrides)(Object)DWARF_SMITH_BUY).setVessels(LOTRFoods.DWARF_DRINK); - ((MixinLOTRTradeEntriesOverrides)(Object)BLUE_DWARF_SMITH_BUY).setVessels(LOTRFoods.DWARF_DRINK); - - DALE_BLACKSMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.daleTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordDale), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.battleaxeDale), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerDale), 9), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearDale), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.pikeDale), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetDale), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyDale), 28), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsDale), 24), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsDale), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.blacksmithHammer), 18), - new LOTRTradeEntry(new ItemStack(Blocks.iron_bars, 8), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeBars, 8), 20), - new LOTRTradeEntry(new ItemStack(Items.saddle), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.crossbowBolt, 4), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.ironCrossbow), 15), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(LOTRMod.horseArmorDale), 25)); - ((MixinLOTRTradeEntriesOverrides)(Object)DALE_BLACKSMITH_BUY).setVessels(LOTRFoods.DALE_DRINK); - - - DUNEDAIN_BLACKSMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.rangerTable), 100), - new LOTRTradeEntry(new ItemStack(Items.iron_sword), 12), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerIron), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearIron), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.battleaxeIron), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordBronze), 10), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerBronze), 7), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearBronze), 13), - new LOTRTradeEntry(new ItemStack(LOTRMod.battleaxeBronze), 13), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetRanger), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyRanger), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsRanger), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsRanger), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.blacksmithHammer), 16), - new LOTRTradeEntry(new ItemStack(Blocks.iron_bars, 8), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeBars, 8), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.crossbowBolt, 4), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.ironCrossbow), 15), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeCrossbow), 12)); - ((MixinLOTRTradeEntriesOverrides)(Object)DUNEDAIN_BLACKSMITH_BUY).setVessels(LOTRFoods.RANGER_DRINK); - - RHUN_BLACKSMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.rhunTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordRhun), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerRhun), 9), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearRhun), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.pikeRhun), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.polearmRhun), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.battleaxeRhun), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetRhun), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyRhun), 32), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsRhun), 26), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsRhun), 17), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetRhunGold), 30), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyRhunGold), 45), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsRhunGold), 35), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsRhunGold), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.blacksmithHammer), 18), - new LOTRTradeEntry(new ItemStack(Blocks.iron_bars, 8), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeBars, 8), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.crossbowBolt, 4), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.ironCrossbow), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeCrossbow), 12), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(LOTRMod.horseArmorRhunGold), 25)); - ((MixinLOTRTradeEntriesOverrides)(Object)RHUN_BLACKSMITH_BUY).setVessels(LOTRFoods.RHUN_DRINK); - - - RIVENDELL_SMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.rivendellTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordRivendell), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.polearmRivendell), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.longspearRivendell), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerRivendell), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearRivendell), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.axeRivendell), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.pickaxeRivendell), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.shovelRivendell), 12), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetRivendell), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyRivendell), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsRivendell), 22), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsRivendell), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.horseArmorRivendell), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.rivendellBow), 20), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(Items.arrow, 4), 3)); - ((MixinLOTRTradeEntriesOverrides)(Object)RIVENDELL_SMITH_BUY).setVessels(LOTRFoods.ELF_DRINK); - GUNDABAD_TRADER_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.gundabadTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetBronze), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyBronze), 30), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsBronze), 26), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsBronze), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordBronze), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearBronze), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerBronze), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerBronzePoisoned), 10), - new LOTRTradeEntry(new ItemStack(LOTRMod.battleaxeBronze), 18), - new LOTRTradeEntry(new ItemStack(Items.iron_sword), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearIron), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerIron), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerIronPoisoned), 10), - new LOTRTradeEntry(new ItemStack(LOTRMod.battleaxeIron), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.mugOrcDraught, 1, 9999), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.fur), 4), - new LOTRTradeEntry(new ItemStack(LOTRMod.orcBow), 16), - new LOTRTradeEntry(new ItemStack(Items.arrow, 4), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.pickaxeBronze), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.axeBronze), 14), - new LOTRTradeEntry(new ItemStack(Items.iron_pickaxe), 14), - new LOTRTradeEntry(new ItemStack(Items.iron_axe), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.maggotyBread), 4), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetFur), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyFur), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsFur), 16), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.cinderFurItem, 1, 1), 2), - new LOTRTradeEntry(new ItemStack(CinderLoE.cinderFurItem, 1, 0), 2), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsFur), 12)); - ((MixinLOTRTradeEntriesOverrides)(Object)GUNDABAD_TRADER_BUY).setVessels(LOTRFoods.ORC_DRINK); - } - - /** - * @author - * @reason - */ - @Inject(method = "setupTrades2", at = @At("RETURN"), remap = false) - private static void newTrades2(CallbackInfo ci) { - NEAR_HARAD_BLACKSMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.nearHaradTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.scimitarNearHarad), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerNearHarad), 9), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerNearHaradPoisoned), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearNearHarad), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.pikeNearHarad), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.poleaxeNearHarad), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.maceNearHarad), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordHarad), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerHarad), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerHaradPoisoned), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearHarad), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.pikeHarad), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetNearHarad), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyNearHarad), 32), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsNearHarad), 26), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsNearHarad), 17), - new LOTRTradeEntry(new ItemStack(LOTRMod.blacksmithHammer), 18), - new LOTRTradeEntry(new ItemStack(Blocks.iron_bars, 8), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeBars, 8), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.crossbowBolt, 4), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.ironCrossbow), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeCrossbow), 12), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(LOTRMod.horseArmorNearHarad), 25)); - ((MixinLOTRTradeEntriesOverrides)(Object)NEAR_HARAD_BLACKSMITH_BUY).setVessels(LOTRFoods.SOUTHRON_DRINK); - HARNEDOR_BLACKSMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.nearHaradTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordHarad), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerHarad), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerHaradPoisoned), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearHarad), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.pikeHarad), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetHarnedor), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyHarnedor), 32), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsHarnedor), 26), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsHarnedor), 17), - new LOTRTradeEntry(new ItemStack(LOTRMod.blacksmithHammer), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeBars, 8), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.crossbowBolt, 4), 3), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeCrossbow), 12)); - ((MixinLOTRTradeEntriesOverrides)(Object)HARNEDOR_BLACKSMITH_BUY).setVessels(LOTRFoods.HARNEDOR_DRINK); - UMBAR_BLACKSMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.umbarTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.scimitarNearHarad), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerNearHarad), 9), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerNearHaradPoisoned), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearNearHarad), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.pikeNearHarad), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.poleaxeNearHarad), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.maceNearHarad), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetUmbar), 22), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyUmbar), 35), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsUmbar), 29), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsUmbar), 19), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordCorsair), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerCorsair), 9), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerCorsairPoisoned), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearCorsair), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.battleaxeCorsair), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetCorsair), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyCorsair), 32), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsCorsair), 26), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsCorsair), 17), - new LOTRTradeEntry(new ItemStack(LOTRMod.blacksmithHammer), 18), - new LOTRTradeEntry(new ItemStack(Blocks.iron_bars, 8), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeBars, 8), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.crossbowBolt, 4), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.ironCrossbow), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeCrossbow), 12), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(LOTRMod.horseArmorUmbar), 25)); - ((MixinLOTRTradeEntriesOverrides)(Object)UMBAR_BLACKSMITH_BUY).setVessels(LOTRFoods.SOUTHRON_DRINK); - GULF_BLACKSMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.gulfTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordGulfHarad), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerHarad), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerHaradPoisoned), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearHarad), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.pikeHarad), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetGulfHarad), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyGulfHarad), 32), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsGulfHarad), 26), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsGulfHarad), 17), - new LOTRTradeEntry(new ItemStack(LOTRMod.blacksmithHammer), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeBars, 8), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.crossbowBolt, 4), 3), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeCrossbow), 12)); - ((MixinLOTRTradeEntriesOverrides)(Object)GULF_BLACKSMITH_BUY).setVessels(LOTRFoods.SOUTHRON_DRINK); - NOMAD_ARMOURER_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.nearHaradTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordHarad), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerHarad), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerHaradPoisoned), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearHarad), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.pikeHarad), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetNomad), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyNomad), 30), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsNomad), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsNomad), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetHaradRobes), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyHaradRobes), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsHaradRobes), 22), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsHaradRobes), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.blacksmithHammer), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeBars, 8), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.crossbowBolt, 4), 3), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeCrossbow), 12)); - ((MixinLOTRTradeEntriesOverrides)(Object)NOMAD_ARMOURER_BUY).setVessels(LOTRFoods.NOMAD_DRINK); - - TAUREDAIN_SMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.tauredainTable), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.blacksmithHammer), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordTauredain), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerTauredain), 12), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearTauredain), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.battleaxeTauredain), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.hammerTauredain), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.pikeTauredain), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetTauredain), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bodyTauredain), 32), - new LOTRTradeEntry(new ItemStack(LOTRMod.legsTauredain), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.bootsTauredain), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.helmetTauredainChieftain), 40), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeBars, 8), 20)); - ((MixinLOTRTradeEntriesOverrides)(Object)TAUREDAIN_SMITH_BUY).setVessels(LOTRFoods.TAUREDAIN_DRINK); - WICKED_DWARF_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.blacksmithHammer), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordDwarven), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.battleaxeDwarven), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.hammerDwarven), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerDwarven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.pickaxeDwarven), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.mattockDwarven), 25), - new LOTRTradeEntry(new ItemStack(LOTRMod.throwingAxeDwarven), 18), - new LOTRTradeEntry(new ItemStack(LOTRMod.dwarfBars, 8), 30), - new LOTRTradeEntry(new ItemStack(LOTRMod.dwarvenForge), 100), - new LOTRTradeEntry(new ItemStack(LOTRMod.mugDwarvenAle, 1, 9999), 10), - new LOTRTradeEntry(new ItemStack(LOTRMod.mugDwarvenTonic, 1, 9999), 30), - new LOTRTradeEntry(new ItemStack(LOTRMod.brick, 8, 6), 5), - new LOTRTradeEntry(new ItemStack(LOTRMod.slabSingle, 16, 7), 5), - new LOTRTradeEntry(new ItemStack(LOTRMod.stairsDwarvenBrick, 5, 0), 5), - new LOTRTradeEntry(new ItemStack(LOTRMod.wall, 8, 7), 5), - new LOTRTradeEntry(new ItemStack(LOTRMod.brick2, 1, 12), 5), - new LOTRTradeEntry(new ItemStack(LOTRMod.pillar, 4, 0), 5), - new LOTRTradeEntry(new ItemStack(LOTRMod.slabSingle2, 8, 0), 5), - new LOTRTradeEntry(new ItemStack(LOTRMod.brick4, 8, 5), 2), - new LOTRTradeEntry(new ItemStack(LOTRMod.slabSingle7, 16, 6), 2), - new LOTRTradeEntry(new ItemStack(LOTRMod.stairsDwarvenBrickCracked, 5, 0), 2), - new LOTRTradeEntry(new ItemStack(LOTRMod.wall4, 8, 5), 2), - new LOTRTradeEntry(new ItemStack(LOTRMod.pillar2, 4, 0), 2), - new LOTRTradeEntry(new ItemStack(LOTRMod.slabSingle7, 8, 7), 2), - new LOTRTradeEntry(new ItemStack(LOTRMod.brick, 1, 8), 4), - new LOTRTradeEntry(new ItemStack(LOTRMod.brick, 1, 9), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.brick3, 1, 12), 4), - new LOTRTradeEntry(new ItemStack(LOTRMod.brick4, 8, 14), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.slabSingle8, 16, 6), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.stairsDwarvenBrickObsidian, 5, 0), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.wall4, 8, 6), 8), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(LOTRMod.gateDwarven, 1, 0), 12)); - ((MixinLOTRTradeEntriesOverrides)(Object)WICKED_DWARF_BUY).setVessels(LOTRFoods.DWARF_DRINK); - BREE_BLACKSMITH_BUY = new LOTRTradeEntries(TradeType.BUY, - new LOTRTradeEntry(new ItemStack(LOTRMod.breeTable), 100), - new LOTRTradeEntry(new ItemStack(Items.iron_sword), 12), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerIron), 8), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearIron), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.battleaxeIron), 15), - new LOTRTradeEntry(new ItemStack(LOTRMod.pikeIron), 16), - new LOTRTradeEntry(new ItemStack(LOTRMod.swordBronze), 10), - new LOTRTradeEntry(new ItemStack(LOTRMod.daggerBronze), 7), - new LOTRTradeEntry(new ItemStack(LOTRMod.spearBronze), 13), - new LOTRTradeEntry(new ItemStack(LOTRMod.battleaxeBronze), 13), - new LOTRTradeEntry(new ItemStack((Item)Items.iron_helmet), 16), - new LOTRTradeEntry(new ItemStack((Item)Items.iron_chestplate), 22), - new LOTRTradeEntry(new ItemStack((Item)Items.iron_leggings), 18), - new LOTRTradeEntry(new ItemStack((Item)Items.iron_boots), 14), - new LOTRTradeEntry(new ItemStack(CinderLoE.helmetBree), 16), - new LOTRTradeEntry(new ItemStack(CinderLoE.bodyBree), 22), - new LOTRTradeEntry(new ItemStack(CinderLoE.legsBree), 18), - new LOTRTradeEntry(new ItemStack(CinderLoE.bootsBree), 14), - new LOTRTradeEntry(new ItemStack(LOTRMod.blacksmithHammer), 16), - new LOTRTradeEntry(new ItemStack(Blocks.iron_bars, 8), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeBars, 8), 20), - new LOTRTradeEntry(new ItemStack(LOTRMod.crossbowBolt, 4), 3), - new LOTRTradeEntry(new ItemStack(LOTRMod.ironCrossbow), 15), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 1), 200), - new LOTRTradeEntry(new ItemStack(CinderLoE.forgingKit, 1, 0), 200), - new LOTRTradeEntry(new ItemStack(LOTRMod.bronzeCrossbow), 12)); - ((MixinLOTRTradeEntriesOverrides)(Object)BREE_BLACKSMITH_BUY).setVessels(LOTRFoods.BREE_DRINK); - } -} - diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRUnitTradeEntries.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRUnitTradeEntries.java deleted file mode 100644 index 5070c85..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRUnitTradeEntries.java +++ /dev/null @@ -1,376 +0,0 @@ -package com.zivilon.cinder_loe.mixins.overrides; - -import com.zivilon.cinder_loe.CinderUnitTradeEntry; -import com.zivilon.cinder_loe.entity.npc.HobbitBannerBearer; -import com.zivilon.cinder_loe.entity.npc.elf.Sirrandrai; -import com.zivilon.cinder_loe.entity.npc.evil_human.RhudaurSoldier; -import com.zivilon.cinder_loe.entity.npc.good_human.BattleNun; -import com.zivilon.cinder_loe.entity.npc.good_human.EsgarothSoldier; -import com.zivilon.cinder_loe.entity.npc.good_human.TauredainTrueBlood; -import com.zivilon.cinder_loe.entity.npc.orc.MorgulOrc; -import com.zivilon.cinder_loe.entity.npc.orc.NorthernOrc; -import lotr.common.LOTRMod; -import lotr.common.entity.animal.*; -import lotr.common.entity.npc.*; -import org.spongepowered.asm.mixin.Final; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; - -@Mixin(LOTRUnitTradeEntries.class) -public class MixinLOTRUnitTradeEntries { - - @Shadow - public static LOTRUnitTradeEntries MORDOR_ORC_MERCENARY_CAPTAIN = new LOTRUnitTradeEntries(150.0f, - new LOTRUnitTradeEntry(LOTREntityMordorOrc.class, 150, 0.0f), - new LOTRUnitTradeEntry(LOTREntityMordorOrcArcher.class, 150, 50.0f), - new LOTRUnitTradeEntry(LOTREntityMordorOrcBombardier.class, 250, 400.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityMordorWarg.class, 100, 0.0f), - new LOTRUnitTradeEntry(LOTREntityMordorOrc.class, LOTREntityMordorWarg.class, "MordorOrc_Warg", 250, 100.0f).setMountArmor(LOTRMod.wargArmorMordor, 0.5f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityMordorOrcArcher.class, LOTREntityMordorWarg.class, "MordorOrcArcher_Warg", 250, 150.0f).setMountArmor(LOTRMod.wargArmorMordor, 0.5f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityMordorWargBombardier.class, 400, 250.0f), - new LOTRUnitTradeEntry(LOTREntityOlogHai.class, 800, 350.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityMordorBannerBearer.class, 150, 150.0f), - new LOTRUnitTradeEntry(LOTREntityMordorBannerBearer.class, LOTREntityMordorWarg.class, "Banner_Warg", 150, 250.0f).setMountArmor(LOTRMod.wargArmorMordor, 0.5f).setPledgeExclusive(), - new LOTRUnitTradeEntry(MorgulOrc.class, 130, 750.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(MorgulOrc.class, LOTREntityMordorWarg.class, "MordorOrc_Warg", 230, 750.0f).setPledgeExclusive().setMountArmor(LOTRMod.wargArmorMordor, 1.0f), - new LOTRUnitTradeEntry(LOTREntityMinasMorgulBannerBearer.class, 130, 150.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityMinasMorgulBannerBearer.class, LOTREntityMordorWarg.class, "Banner_Warg", 230, 750.0f).setPledgeExclusive().setMountArmor(LOTRMod.wargArmorMordor, 1.0f)); - @Shadow - public static LOTRUnitTradeEntries GONDORIAN_CAPTAIN = new LOTRUnitTradeEntries(200.0f, - new LOTRUnitTradeEntry(LOTREntityGondorLevyman.class, 150, 0.0f), - new LOTRUnitTradeEntry(LOTREntityGondorSoldier.class, 250, 50.0f), - new LOTRUnitTradeEntry(LOTREntityGondorArcher.class, 250, 100.0f), - new LOTRUnitTradeEntry(LOTREntityGondorSoldier.class, LOTREntityHorse.class, "GondorSoldier_Horse", 350, 150.0f).setMountArmor(LOTRMod.horseArmorGondor).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityGondorTowerGuard.class, 500, 250.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityGondorBannerBearer.class, 250, 200.0f), - new LOTRUnitTradeEntry(LOTREntityGondorBannerBearer.class, LOTREntityHorse.class, "Banner_Horse", 350, 300.0f).setMountArmor(LOTRMod.horseArmorGondor).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries DWARF_COMMANDER = new LOTRUnitTradeEntries(200.0f, - new LOTRUnitTradeEntry(LOTREntityDwarf.class, 60, 0.0f), - new LOTRUnitTradeEntry(LOTREntityDwarfWarrior.class, 400, 50.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityDwarfAxeThrower.class, 400, 100.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityDwarfWarrior.class, LOTREntityWildBoar.class, "DwarfWarrior_Boar", 500, 150.0f).setMountArmor(LOTRMod.boarArmorDwarven).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityDwarfAxeThrower.class, LOTREntityWildBoar.class, "DwarfAxeThrower_Boar", 500, 200.0f).setMountArmor(LOTRMod.boarArmorDwarven).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityDwarfBannerBearer.class, 400, 200.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityDwarfBannerBearer.class, LOTREntityWildBoar.class, "Banner_Horse", 500, 300.0f).setMountArmor(LOTRMod.boarArmorDwarven).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries URUK_HAI_MERCENARY_CAPTAIN = new LOTRUnitTradeEntries(150.0f, - new LOTRUnitTradeEntry(LOTREntityIsengardSnaga.class, 100, 0.0f), - new LOTRUnitTradeEntry(LOTREntityIsengardSnagaArcher.class, 100, 50.0f), - new LOTRUnitTradeEntry(LOTREntityUrukHai.class, 500, 0.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityUrukHaiCrossbower.class, 500, 50.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityUrukHaiSapper.class, 600, 100.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityUrukHaiBerserker.class, 600, 150.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityUrukWarg.class, 100, 0.0f), - new LOTRUnitTradeEntry(LOTREntityIsengardSnaga.class, LOTREntityUrukWarg.class, "IsengardSnaga_Warg", 200, 100.0f).setMountArmor(LOTRMod.wargArmorUruk, 0.5f), - new LOTRUnitTradeEntry(LOTREntityIsengardSnagaArcher.class, LOTREntityUrukWarg.class, "IsengardSnagaArcher_Warg", 200, 150.0f).setMountArmor(LOTRMod.wargArmorUruk, 0.5f), - new LOTRUnitTradeEntry(LOTREntityUrukWargBombardier.class, 400, 250.0f), - new LOTRUnitTradeEntry(LOTREntityUrukHaiBannerBearer.class, 500, 150.0f).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries ELF_LORD = new LOTRUnitTradeEntries(300.0f, - new LOTRUnitTradeEntry(LOTREntityGaladhrimElf.class, 60, 0.0f), - new LOTRUnitTradeEntry(LOTREntityGaladhrimWarden.class, 250, 50.0f), - new LOTRUnitTradeEntry(LOTREntityGaladhrimWarrior.class, 500, 100.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityGaladhrimWarrior.class, LOTREntityHorse.class, "GaladhrimWarrior_Horse", 600, 200.0f).setMountArmor(LOTRMod.horseArmorGaladhrim).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityGaladhrimBannerBearer.class, 500, 250.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityGaladhrimBannerBearer.class, LOTREntityHorse.class, "Banner_Horse", 600, 350.0f).setMountArmor(LOTRMod.horseArmorGaladhrim).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries ROHIRRIM_MARSHAL = new LOTRUnitTradeEntries(150.0f, - new LOTRUnitTradeEntry(LOTREntityRohirrimWarrior.class, 250, 0.0f), - new LOTRUnitTradeEntry(LOTREntityRohirrimArcher.class, 250, 50.0f), - new LOTRUnitTradeEntry(LOTREntityRohirrimWarrior.class, LOTREntityHorse.class, "Rohirrim_Horse", 350, 100.0f).setMountArmor(LOTRMod.horseArmorRohan).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityRohirrimArcher.class, LOTREntityHorse.class, "RohirrimArcher_Horse", 350, 150.0f).setMountArmor(LOTRMod.horseArmorRohan).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityRohanBannerBearer.class, 250, 150.0f), - new LOTRUnitTradeEntry(LOTREntityRohanBannerBearer.class, LOTREntityHorse.class, "Banner_Horse", 350, 250.0f).setMountArmor(LOTRMod.horseArmorRohan).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries HOBBIT_SHIRRIFF = new LOTRUnitTradeEntries(50.0f, - new LOTRUnitTradeEntry(LOTREntityHobbitBounder.class, 60, 0.0f), - new LOTRUnitTradeEntry(LOTREntityHobbitBounder.class, LOTREntityShirePony.class, "HobbitBounder_Pony", 160, 50.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(HobbitBannerBearer.class, 60, 100.0f), - new LOTRUnitTradeEntry(HobbitBannerBearer.class, LOTREntityShirePony.class, "Banner_Horse", 160, 200.0f).setPledgeExclusive() - ); - @Shadow - public static LOTRUnitTradeEntries DUNLENDING_WARLORD = new LOTRUnitTradeEntries(100.0f, - new LOTRUnitTradeEntry(LOTREntityDunlending.class, 60, 0.0f), - new LOTRUnitTradeEntry(LOTREntityDunlendingWarrior.class, 250, 50.0f), - new LOTRUnitTradeEntry(LOTREntityDunlendingArcher.class, 250, 100.0f), - new LOTRUnitTradeEntry(LOTREntityDunlendingAxeThrower.class, 250, 100.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityDunlendingBerserker.class, 400, 200.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityDunlendingBannerBearer.class, 250, 200.0f)); - @Shadow - public static LOTRUnitTradeEntries WOOD_ELF_CAPTAIN = new LOTRUnitTradeEntries(250.0f, - new LOTRUnitTradeEntry(LOTREntityWoodElf.class, 60, 0.0f), - new LOTRUnitTradeEntry(LOTREntityWoodElfScout.class, 250, 50.0f), - new LOTRUnitTradeEntry(LOTREntityWoodElfWarrior.class, 500, 100.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityWoodElfWarrior.class, LOTREntityElk.class, "WoodElfWarrior_Elk", 600, 200.0f).setMountArmor(LOTRMod.elkArmorWoodElven).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityWoodElfBannerBearer.class, 500, 250.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityWoodElfBannerBearer.class, LOTREntityElk.class, "Banner_Horse", 600, 350.0f).setMountArmor(LOTRMod.elkArmorWoodElven).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries ANGMAR_ORC_MERCENARY_CAPTAIN = new LOTRUnitTradeEntries(150.0f, - new LOTRUnitTradeEntry(LOTREntityAngmarOrc.class, 150, 0.0f), - new LOTRUnitTradeEntry(LOTREntityAngmarOrcArcher.class, 150, 50.0f), - new LOTRUnitTradeEntry(LOTREntityAngmarOrcBombardier.class, 250, 100.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityAngmarWarg.class, 100, 0.0f), - new LOTRUnitTradeEntry(LOTREntityAngmarOrc.class, LOTREntityAngmarWarg.class, "AngmarOrc_Warg", 250, 100.0f).setMountArmor(LOTRMod.wargArmorAngmar, 0.5f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityAngmarOrcArcher.class, LOTREntityAngmarWarg.class, "AngmarOrcArcher_Warg", 250, 150.0f).setMountArmor(LOTRMod.wargArmorAngmar, 0.5f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityAngmarWargBombardier.class, 400, 250.0f), - new LOTRUnitTradeEntry(LOTREntityTroll.class, 500, 250.0f), - new LOTRUnitTradeEntry(LOTREntityMountainTroll.class, 600, 350.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityAngmarBannerBearer.class, 150, 150.0f), - new LOTRUnitTradeEntry(LOTREntityAngmarBannerBearer.class, LOTREntityAngmarWarg.class, "Banner_Warg", 250, 250.0f).setMountArmor(LOTRMod.wargArmorAngmar, 0.5f).setPledgeExclusive(), - (new CinderUnitTradeEntry(NorthernOrc.class, 500, 400.0F).setObjective("Angmar").setExtraInfo("Angmar")).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries MORDOR_ORC_SLAVER = new LOTRUnitTradeEntries(200.0f, - new LOTRUnitTradeEntry(LOTREntityNurnSlave.class, 100, 0.0f).setTask(LOTRHiredNPCInfo.Task.FARMER)); - @Shadow - public static LOTRUnitTradeEntries MORDOR_ORC_SPIDER_KEEPER = new LOTRUnitTradeEntries(250.0f, - new LOTRUnitTradeEntry(LOTREntityMordorSpider.class, 100, 0.0f), - new LOTRUnitTradeEntry(LOTREntityMordorOrc.class, 150, 0.0f), - new LOTRUnitTradeEntry(LOTREntityMordorOrcArcher.class, 150, 0.0f), - new LOTRUnitTradeEntry(LOTREntityMordorOrc.class, LOTREntityMordorSpider.class, "MordorOrc_Spider", 250, 50.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityMordorOrcArcher.class, LOTREntityMordorSpider.class, "MordorOrcArcher_Spider", 250, 100.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityNanUngolBannerBearer.class, 150, 150.0f), - new LOTRUnitTradeEntry(LOTREntityNanUngolBannerBearer.class, LOTREntityMordorSpider.class, "MordorOrcArcher_Spider", 250, 250.0f).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries GUNDABAD_ORC_MERCENARY_CAPTAIN = new LOTRUnitTradeEntries(100.0f, - new LOTRUnitTradeEntry(LOTREntityGundabadOrc.class, 100, 0.0f), - new LOTRUnitTradeEntry(LOTREntityGundabadOrcArcher.class, 100, 50.0f), - new LOTRUnitTradeEntry(LOTREntityGundabadWarg.class, 100, 50.0f), - new LOTRUnitTradeEntry(LOTREntityGundabadOrc.class, LOTREntityGundabadWarg.class, "GundabadOrc_Warg", 200, 100.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityGundabadOrcArcher.class, LOTREntityGundabadWarg.class, "GundabadOrcArcher_Warg", 200, 150.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityGundabadUruk.class, 500, 250.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityGundabadUrukArcher.class, 500, 300.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityGundabadBannerBearer.class, 100, 150.0f), - new LOTRUnitTradeEntry(LOTREntityGundabadBannerBearer.class, LOTREntityGundabadWarg.class, "Banner_Warg", 200, 250.0f).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries RANGER_NORTH_CAPTAIN = new LOTRUnitTradeEntries(300.0f, - new LOTRUnitTradeEntry(LOTREntityRangerNorth.class, 250, 0.0f), - new LOTRUnitTradeEntry(LOTREntityRangerNorth.class, LOTREntityHorse.class, "RangerNorth_Horse", 350, 100.0f), - new LOTRUnitTradeEntry(LOTREntityRangerNorthBannerBearer.class, 250, 150.0f)); - @Shadow - public static LOTRUnitTradeEntries HOBBIT_FARMER = new LOTRUnitTradeEntries(0.0f, - new LOTRUnitTradeEntry(LOTREntityHobbitFarmhand.class, 100, 50.0f).setTask(LOTRHiredNPCInfo.Task.FARMER)); - @Shadow - public static LOTRUnitTradeEntries HIGH_ELF_LORD = new LOTRUnitTradeEntries(300.0f, - new LOTRUnitTradeEntry(LOTREntityHighElf.class, 60, 0.0f), - new LOTRUnitTradeEntry(LOTREntityHighElfWarrior.class, 500, 100.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityHighElfWarrior.class, LOTREntityHorse.class, "HighElfWarrior_Horse", 600, 200.0f).setMountArmor(LOTRMod.horseArmorHighElven).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityHighElfBannerBearer.class, 500, 250.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityHighElfBannerBearer.class, LOTREntityHorse.class, "Banner_Horse", 600, 350.0f).setMountArmor(LOTRMod.horseArmorHighElven).setPledgeExclusive(), - (new CinderUnitTradeEntry(Sirrandrai.class, LOTREntityHorse.class, "Sirrandrai", 600, 400.0F).setObjective("Lindon").setExtraInfo("Lindon")).setPledgeExclusive().setMountArmor(LOTRMod.horseArmorHighElven)); - @Shadow - public static LOTRUnitTradeEntries NEAR_HARADRIM_WARLORD = new LOTRUnitTradeEntries(150.0f, - new LOTRUnitTradeEntry(LOTREntityNearHaradrimWarrior.class, 250, 0.0f), - new LOTRUnitTradeEntry(LOTREntityNearHaradrimArcher.class, 250, 50.0f), - new LOTRUnitTradeEntry(LOTREntitySouthronChampion.class, LOTREntityHorse.class, "SouthronChampion_Horse", 350, 100.0f).setMountArmor(LOTRMod.horseArmorNearHarad).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityNearHaradBannerBearer.class, 250, 150.0f), - new LOTRUnitTradeEntry(LOTREntityNearHaradBannerBearer.class, LOTREntityHorse.class, "Banner_Horse", 350, 250.0f).setMountArmor(LOTRMod.horseArmorNearHarad).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries BLUE_DWARF_COMMANDER = new LOTRUnitTradeEntries(200.0f, - new LOTRUnitTradeEntry(LOTREntityBlueDwarf.class, 60, 0.0f), - new LOTRUnitTradeEntry(LOTREntityBlueDwarfWarrior.class, 400, 50.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityBlueDwarfAxeThrower.class, 400, 100.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityBlueDwarfWarrior.class, LOTREntityWildBoar.class, "BlueDwarfWarrior_Boar", 500, 150.0f).setMountArmor(LOTRMod.boarArmorBlueDwarven).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityBlueDwarfAxeThrower.class, LOTREntityWildBoar.class, "BlueDwarfAxeThrower_Boar", 500, 200.0f).setMountArmor(LOTRMod.boarArmorBlueDwarven).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityBlueDwarfBannerBearer.class, 400, 200.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityBlueDwarfBannerBearer.class, LOTREntityWildBoar.class, "Banner_Horse", 500, 300.0f).setMountArmor(LOTRMod.boarArmorBlueDwarven).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries DOL_GULDUR_CAPTAIN = new LOTRUnitTradeEntries(150.0f, - new LOTRUnitTradeEntry(LOTREntityDolGuldurOrc.class, 150, 0.0f), - new LOTRUnitTradeEntry(LOTREntityDolGuldurOrcArcher.class, 150, 50.0f), - new LOTRUnitTradeEntry(LOTREntityMirkwoodSpider.class, 100, 0.0f), - new LOTRUnitTradeEntry(LOTREntityDolGuldurOrc.class, LOTREntityMirkwoodSpider.class, "DolGuldurOrc_Spider", 250, 100.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityDolGuldurOrcArcher.class, LOTREntityMirkwoodSpider.class, "DolGuldurOrcArcher_Spider", 250, 150.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityMirkTroll.class, 750, 350.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityDolGuldurBannerBearer.class, 150, 0.0f), - new LOTRUnitTradeEntry(LOTREntityDolGuldurBannerBearer.class, LOTREntityMirkwoodSpider.class, "DolGuldurOrc_Spider", 250, 100.0f).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries RANGER_ITHILIEN_CAPTAIN = new LOTRUnitTradeEntries(300.0f, - new LOTRUnitTradeEntry(LOTREntityRangerIthilien.class, 50, 0.0f), - new LOTRUnitTradeEntry(LOTREntityRangerIthilienBannerBearer.class, 70, 150.0f)); - @Shadow - public static LOTRUnitTradeEntries HALF_TROLL_WARLORD = new LOTRUnitTradeEntries(200.0f, - new LOTRUnitTradeEntry(LOTREntityHalfTroll.class, 100, 0.0f), - new LOTRUnitTradeEntry(LOTREntityHalfTrollWarrior.class, 400, 100.0f), - new LOTRUnitTradeEntry(LOTREntityHalfTrollWarrior.class, LOTREntityRhino.class, "HalfTrollWarrior_Rhino", 500, 200.0f).setMountArmor(LOTRMod.rhinoArmorHalfTroll, 0.5f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityHalfTrollBannerBearer.class, 400, 150.0f), - new LOTRUnitTradeEntry(LOTREntityHalfTrollBannerBearer.class, LOTREntityRhino.class, "Banner_Horse", 500, 250.0f).setMountArmor(LOTRMod.rhinoArmorHalfTroll, 0.5f).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries DOL_AMROTH_CAPTAIN = new LOTRUnitTradeEntries(200.0f, - new LOTRUnitTradeEntry(LOTREntityDolAmrothSoldier.class, 150, 0.0f), - new LOTRUnitTradeEntry(LOTREntityDolAmrothArcher.class, 150, 50.0f), - new LOTRUnitTradeEntry(LOTREntitySwanKnight.class, 500, 100.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityDolAmrothSoldier.class, LOTREntityHorse.class, "DolAmrothSoldier_Horse", 250, 100.0f).setMountArmor(LOTRMod.horseArmorDolAmroth, 0.5f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntitySwanKnight.class, LOTREntityHorse.class, "SwanKnight_Horse", 600, 200.0f).setMountArmor(LOTRMod.horseArmorDolAmroth).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityDolAmrothBannerBearer.class, 150, 150.0f), - new LOTRUnitTradeEntry(LOTREntityDolAmrothBannerBearer.class, LOTREntityHorse.class, "Banner_Horse", 250, 250.0f).setMountArmor(LOTRMod.horseArmorDolAmroth, 0.5f).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries MOREDAIN_CHIEFTAIN = new LOTRUnitTradeEntries(150.0f, - new LOTRUnitTradeEntry(LOTREntityMoredainWarrior.class, 250, 0.0f), - new LOTRUnitTradeEntry(LOTREntityMoredainWarrior.class, LOTREntityZebra.class, "MoredainWarrior_Zebra", 350, 100.0f), - new LOTRUnitTradeEntry(LOTREntityMoredainBannerBearer.class, 250, 150.0f), - new LOTRUnitTradeEntry(LOTREntityMoredainBannerBearer.class, LOTREntityZebra.class, "Banner_Horse", 350, 250.0f)); - @Shadow - public static LOTRUnitTradeEntries ANGMAR_HILLMAN_CHIEFTAIN = new LOTRUnitTradeEntries(100.0f, - new LOTRUnitTradeEntry(LOTREntityAngmarHillman.class, 60, 0.0f), - new LOTRUnitTradeEntry(LOTREntityAngmarHillmanWarrior.class, 150, 50.0f), - new LOTRUnitTradeEntry(LOTREntityAngmarHillmanAxeThrower.class, 150, 100.0f), - new LOTRUnitTradeEntry(LOTREntityAngmarHillman.class, LOTREntityAngmarWarg.class, "AngmarHillman_Warg", 250, 100.0f), - new LOTRUnitTradeEntry(LOTREntityAngmarHillmanWarrior.class, LOTREntityAngmarWarg.class, "AngmarHillmanWarrior_Warg", 250, 150.0f).setMountArmor(LOTRMod.wargArmorAngmar, 0.3f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityAngmarHillmanAxeThrower.class, LOTREntityAngmarWarg.class, "AngmarHillmanAxeThrower_Warg", 250, 200.0f).setMountArmor(LOTRMod.wargArmorAngmar, 0.3f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityAngmarHillmanBannerBearer.class, 150, 200.0f), - new LOTRUnitTradeEntry(LOTREntityAngmarHillmanBannerBearer.class, LOTREntityAngmarWarg.class, "Banner_Warg", 250, 300.0f).setMountArmor(LOTRMod.wargArmorAngmar, 0.5f).setPledgeExclusive(), - (new CinderUnitTradeEntry(RhudaurSoldier.class, 500, 400.0F).setObjective("Rhudaur").setExtraInfo("Rhudaur"))); - @Shadow - public static LOTRUnitTradeEntries TAUREDAIN_CHIEFTAIN = new LOTRUnitTradeEntries(200.0f, - new LOTRUnitTradeEntry(LOTREntityTauredainWarrior.class, 250, 0.0f), - new LOTRUnitTradeEntry(LOTREntityTauredainBlowgunner.class, 250, 50.0f), - new LOTRUnitTradeEntry(LOTREntityTauredainBannerBearer.class, 250, 150.0f), - new LOTRUnitTradeEntry(TauredainTrueBlood.class, 500, 800.0f).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries TAUREDAIN_FARMER = new LOTRUnitTradeEntries(0.0f, - new LOTRUnitTradeEntry(LOTREntityTauredainFarmhand.class, 100, 50.0f).setTask(LOTRHiredNPCInfo.Task.FARMER)); - @Shadow - public static LOTRUnitTradeEntries DALE_CAPTAIN = new LOTRUnitTradeEntries(100.0f, - new LOTRUnitTradeEntry(LOTREntityDaleLevyman.class, 150, 0.0f), - new LOTRUnitTradeEntry(LOTREntityDaleSoldier.class, 250, 50.0f), - new LOTRUnitTradeEntry(LOTREntityDaleArcher.class, 250, 100.0f), - new LOTRUnitTradeEntry(LOTREntityDaleSoldier.class, LOTREntityHorse.class, "DaleSoldier_Horse", 350, 150.0f).setMountArmor(LOTRMod.horseArmorDale).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityDaleBannerBearer.class, 250, 200.0f), - new LOTRUnitTradeEntry(LOTREntityDaleBannerBearer.class, LOTREntityHorse.class, "Banner_Horse", 350, 300.0f).setMountArmor(LOTRMod.horseArmorDale).setPledgeExclusive(), - (new CinderUnitTradeEntry(EsgarothSoldier.class, 500, 400.0F).setObjective("Dale").setExtraInfo("Dale")), - (new CinderUnitTradeEntry(LOTREntityEsgarothBannerBearer.class, 500, 400.0F).setObjective("Dale").setExtraInfo("Dale"))); - @Shadow - public static LOTRUnitTradeEntries DORWINION_CAPTAIN = new LOTRUnitTradeEntries(150.0f, - new LOTRUnitTradeEntry(LOTREntityDorwinionGuard.class, 250, 0.0f), - new LOTRUnitTradeEntry(LOTREntityDorwinionCrossbower.class, 250, 50.0f), - new LOTRUnitTradeEntry(LOTREntityDorwinionBannerBearer.class, 250, 150.0f)); - @Shadow - public static LOTRUnitTradeEntries DORWINION_ELF_CAPTAIN = new LOTRUnitTradeEntries(250.0f, - new LOTRUnitTradeEntry(LOTREntityDorwinionElfWarrior.class, 500, 0.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityDorwinionElfArcher.class, 500, 50.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityDorwinionElfBannerBearer.class, 500, 150.0f).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries DORWINION_VINEKEEPER = new LOTRUnitTradeEntries(0.0f, - new LOTRUnitTradeEntry(LOTREntityDorwinionVinehand.class, 100, 50.0f).setTask(LOTRHiredNPCInfo.Task.FARMER)); - @Shadow - public static LOTRUnitTradeEntries LOSSARNACH_CAPTAIN = new LOTRUnitTradeEntries(150.0f, - new LOTRUnitTradeEntry(LOTREntityGondorLevyman.class, 150, 0.0f), - new LOTRUnitTradeEntry(LOTREntityLossarnachAxeman.class, 250, 50.0f), - new LOTRUnitTradeEntry(LOTREntityLossarnachBannerBearer.class, 250, 200.0f)); - @Shadow - public static LOTRUnitTradeEntries PELARGIR_CAPTAIN = new LOTRUnitTradeEntries(200.0f, - new LOTRUnitTradeEntry(LOTREntityLebenninLevyman.class, 150, 0.0f), - new LOTRUnitTradeEntry(LOTREntityPelargirMarine.class, 200, 50.0f), - new LOTRUnitTradeEntry(LOTREntityPelargirBannerBearer.class, 250, 200.0f)); - @Shadow - public static LOTRUnitTradeEntries PINNATH_GELIN_CAPTAIN = new LOTRUnitTradeEntries(200.0f, - new LOTRUnitTradeEntry(LOTREntityGondorLevyman.class, 150, 0.0f), - new LOTRUnitTradeEntry(LOTREntityPinnathGelinSoldier.class, 200, 50.0f), - new LOTRUnitTradeEntry(LOTREntityPinnathGelinSoldier.class, LOTREntityHorse.class, "PinnathGelinSoldier_Horse", 350, 150.0f).setMountArmor(LOTRMod.horseArmorGondor).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityPinnathGelinBannerBearer.class, 250, 200.0f), - new LOTRUnitTradeEntry(LOTREntityPinnathGelinBannerBearer.class, LOTREntityHorse.class, "Banner_Horse", 350, 300.0f).setMountArmor(LOTRMod.horseArmorGondor).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries BLACKROOT_CAPTAIN = new LOTRUnitTradeEntries(150.0f, - new LOTRUnitTradeEntry(LOTREntityGondorLevyman.class, 150, 0.0f), - new LOTRUnitTradeEntry(LOTREntityBlackrootSoldier.class, 250, 50.0f), - new LOTRUnitTradeEntry(LOTREntityBlackrootArcher.class, 200, 100.0f), - new LOTRUnitTradeEntry(LOTREntityBlackrootSoldier.class, LOTREntityHorse.class, "BlackrootSoldier_Horse", 350, 150.0f).setMountArmor(LOTRMod.horseArmorGondor).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityBlackrootBannerBearer.class, 250, 200.0f), - new LOTRUnitTradeEntry(LOTREntityBlackrootBannerBearer.class, LOTREntityHorse.class, "Banner_Horse", 350, 300.0f).setMountArmor(LOTRMod.horseArmorGondor).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries GONDOR_FARMER = new LOTRUnitTradeEntries(0.0f, - new LOTRUnitTradeEntry(LOTREntityGondorFarmhand.class, 100, 50.0f).setTask(LOTRHiredNPCInfo.Task.FARMER)); - @Shadow - public static LOTRUnitTradeEntries LEBENNIN_CAPTAIN = new LOTRUnitTradeEntries(150.0f, - new LOTRUnitTradeEntry(LOTREntityLebenninLevyman.class, 100, 0.0f), - new LOTRUnitTradeEntry(LOTREntityGondorSoldier.class, 250, 50.0f), - new LOTRUnitTradeEntry(LOTREntityGondorArcher.class, 250, 100.0f), - new LOTRUnitTradeEntry(LOTREntityLebenninBannerBearer.class, 150, 150.0f)); - @Shadow - public static LOTRUnitTradeEntries LAMEDON_CAPTAIN = new LOTRUnitTradeEntries(200.0f, - new LOTRUnitTradeEntry(LOTREntityLamedonHillman.class, 150, 0.0f), - new LOTRUnitTradeEntry(LOTREntityLamedonSoldier.class, 200, 50.0f), - new LOTRUnitTradeEntry(LOTREntityLamedonArcher.class, 250, 100.0f), - new LOTRUnitTradeEntry(LOTREntityLamedonSoldier.class, LOTREntityHorse.class, "LamedonSoldier_Horse", 300, 150.0f).setMountArmor(LOTRMod.horseArmorLamedon).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityLamedonBannerBearer.class, 250, 200.0f), - new LOTRUnitTradeEntry(LOTREntityLamedonBannerBearer.class, LOTREntityHorse.class, "Banner_Horse", 300, 300.0f).setMountArmor(LOTRMod.horseArmorLamedon).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries ROHAN_FARMER = new LOTRUnitTradeEntries(0.0f, - new LOTRUnitTradeEntry(LOTREntityRohanFarmhand.class, 100, 50.0f).setTask(LOTRHiredNPCInfo.Task.FARMER)); - @Shadow - public static LOTRUnitTradeEntries EASTERLING_WARLORD = new LOTRUnitTradeEntries(150.0f, - new LOTRUnitTradeEntry(LOTREntityEasterlingLevyman.class, 150, 0.0f), - new LOTRUnitTradeEntry(LOTREntityEasterlingWarrior.class, 250, 50.0f), - new LOTRUnitTradeEntry(LOTREntityEasterlingArcher.class, 250, 100.0f), - new LOTRUnitTradeEntry(LOTREntityEasterlingGoldWarrior.class, 500, 200.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityEasterlingWarrior.class, LOTREntityHorse.class, "EasterlingWarrior_Horse", 350, 150.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityEasterlingArcher.class, LOTREntityHorse.class, "EasterlingArcher_Horse", 350, 200.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityEasterlingGoldWarrior.class, LOTREntityHorse.class, "EasterlingGoldWarrior_Horse", 600, 300.0f).setMountArmor(LOTRMod.horseArmorRhunGold).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityEasterlingFireThrower.class, 260, 150.0f), - new LOTRUnitTradeEntry(LOTREntityEasterlingBannerBearer.class, 250, 200.0f), - new LOTRUnitTradeEntry(LOTREntityEasterlingBannerBearer.class, LOTREntityHorse.class, "Banner_Horse", 350, 150.0f).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries EASTERLING_FARMER = new LOTRUnitTradeEntries(0.0f, - new LOTRUnitTradeEntry(LOTREntityEasterlingFarmhand.class, 100, 50.0f).setTask(LOTRHiredNPCInfo.Task.FARMER)); - @Shadow - public static LOTRUnitTradeEntries RIVENDELL_LORD = new LOTRUnitTradeEntries(300.0f, - new LOTRUnitTradeEntry(LOTREntityRivendellElf.class, 60, 0.0f), - new LOTRUnitTradeEntry(LOTREntityRivendellWarrior.class, 500, 100.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityRivendellWarrior.class, LOTREntityHorse.class, "RivendellWarrior_Horse", 600, 200.0f).setMountArmor(LOTRMod.horseArmorRivendell).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityRivendellBannerBearer.class, 500, 250.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityRivendellBannerBearer.class, LOTREntityHorse.class, "Banner_Horse", 600, 350.0f).setMountArmor(LOTRMod.horseArmorRivendell).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries HARNEDOR_WARLORD = new LOTRUnitTradeEntries(150.0f, - new LOTRUnitTradeEntry(LOTREntityHarnedorWarrior.class, 250, 0.0f), - new LOTRUnitTradeEntry(LOTREntityHarnedorArcher.class, 200, 50.0f), - new LOTRUnitTradeEntry(LOTREntityHarnedorWarrior.class, LOTREntityHorse.class, "HarnedorWarrior_Horse", 350, 100.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityHarnedorArcher.class, LOTREntityHorse.class, "HarnedorArcher_Horse", 300, 150.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityHarnedorBannerBearer.class, 250, 150.0f), - new LOTRUnitTradeEntry(LOTREntityHarnedorBannerBearer.class, LOTREntityHorse.class, "Banner_Horse", 350, 250.0f).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries UMBAR_CAPTAIN = new LOTRUnitTradeEntries(150.0f, - new LOTRUnitTradeEntry(LOTREntityUmbarWarrior.class, 250, 0.0f), - new LOTRUnitTradeEntry(LOTREntityUmbarArcher.class, 250, 50.0f), - new LOTRUnitTradeEntry(LOTREntityUmbarWarrior.class, LOTREntityHorse.class, "UmbarWarrior_Horse", 350, 100.0f).setMountArmor(LOTRMod.horseArmorUmbar).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityUmbarBannerBearer.class, 250, 150.0f), - new LOTRUnitTradeEntry(LOTREntityUmbarBannerBearer.class, LOTREntityHorse.class, "Banner_Horse", 350, 250.0f).setMountArmor(LOTRMod.horseArmorUmbar).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries CORSAIR_CAPTAIN = new LOTRUnitTradeEntries(150.0f, - new LOTRUnitTradeEntry(LOTREntityCorsair.class, 200, 0.0f).setExtraInfo("Corsair")); - @Shadow - public static LOTRUnitTradeEntries NOMAD_WARLORD = new LOTRUnitTradeEntries(150.0f, - new LOTRUnitTradeEntry(LOTREntityNomadWarrior.class, 150, 0.0f), - new LOTRUnitTradeEntry(LOTREntityNomadArcher.class, 150, 50.0f), - new LOTRUnitTradeEntry(LOTREntityNomadWarrior.class, LOTREntityCamel.class, "NomadWarrior_Camel", 250, 100.0f), - new LOTRUnitTradeEntry(LOTREntityNomadArcher.class, LOTREntityCamel.class, "NomadArcher_Camel", 250, 150.0f), - new LOTRUnitTradeEntry(LOTREntityNomadBannerBearer.class, 150, 150.0f), - new LOTRUnitTradeEntry(LOTREntityNomadBannerBearer.class, LOTREntityCamel.class, "Banner_Horse", 250, 250.0f)); - @Shadow - public static LOTRUnitTradeEntries GULF_WARLORD = new LOTRUnitTradeEntries(150.0f, - new LOTRUnitTradeEntry(LOTREntityGulfHaradWarrior.class, 200, 0.0f), - new LOTRUnitTradeEntry(LOTREntityGulfHaradArcher.class, 250, 50.0f), - new LOTRUnitTradeEntry(LOTREntityGulfHaradWarrior.class, LOTREntityHorse.class, "GulfWarrior_Horse", 300, 100.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityGulfHaradArcher.class, LOTREntityHorse.class, "GulfArcher_Horse", 350, 150.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityGulfHaradBannerBearer.class, 250, 150.0f), - new LOTRUnitTradeEntry(LOTREntityGulfHaradBannerBearer.class, LOTREntityHorse.class, "GulfWarrior_Horse", 350, 250.0f).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries CORSAIR_SLAVER = new LOTRUnitTradeEntries(0.0f, - new LOTRUnitTradeEntry(LOTREntityHaradSlave.class, 100, 0.0f).setTask(LOTRHiredNPCInfo.Task.FARMER)); - @Shadow - public static LOTRUnitTradeEntries HARNEDOR_FARMER = new LOTRUnitTradeEntries(0.0f, - new LOTRUnitTradeEntry(LOTREntityHarnedorFarmhand.class, 100, 50.0f).setTask(LOTRHiredNPCInfo.Task.FARMER)); - @Shadow - public static LOTRUnitTradeEntries BLACK_URUK_CAPTAIN = new LOTRUnitTradeEntries(400.0f, - new LOTRUnitTradeEntry(LOTREntityBlackUruk.class, 500, 250.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityBlackUrukArcher.class, 500, 300.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityOlogHai.class, 800, 350.0f).setPledgeExclusive(), - new LOTRUnitTradeEntry(LOTREntityBlackUrukBannerBearer.class, 500, 400.0f).setPledgeExclusive()); - @Shadow - public static LOTRUnitTradeEntries BREE_FARMER = new LOTRUnitTradeEntries(0.0f, - new LOTRUnitTradeEntry(LOTREntityBreeFarmhand.class, 40, 50.0f).setTask(LOTRHiredNPCInfo.Task.FARMER)); - @Final - @Shadow - public static final int MOREDAIN_MERCENARY_COST = 200; - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinSepiaOverride.java b/src (1)/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinSepiaOverride.java deleted file mode 100644 index ae02778..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinSepiaOverride.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.zivilon.cinder_loe.mixins.overrides; - -import lotr.client.gui.LOTRGuiMap; -import net.minecraft.util.ResourceLocation; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; - - -@Mixin(LOTRGuiMap.class) -public class MixinSepiaOverride { - - - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/potion/LoEPotions.java b/src (1)/main/java/com/zivilon/cinder_loe/potion/LoEPotions.java deleted file mode 100644 index e9a0678..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/potion/LoEPotions.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.zivilon.cinder_loe.potion; - -import net.minecraft.potion.Potion; -import net.minecraft.potion.PotionEffect; -import net.minecraft.entity.EntityLivingBase; - -public class LoEPotions { - public static Potion corrupting; - public static Potion herbal_poisoning; - - public static void registerPotions() { - corrupting = new PotionCorrupting(31, false, 0x7F0000).setPotionName("potion.corrupting"); - herbal_poisoning = new PotionHerbPoison(29, false, 0x114023).setPotionName("potion.herbal_poisoning"); - } -} - diff --git a/src (1)/main/java/com/zivilon/cinder_loe/recipes.java b/src (1)/main/java/com/zivilon/cinder_loe/recipes.java deleted file mode 100644 index 4f8fcdc..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/recipes.java +++ /dev/null @@ -1,423 +0,0 @@ -package com.zivilon.cinder_loe; - -import cpw.mods.fml.common.registry.GameRegistry; -import lotr.common.LOTRMod; -import lotr.common.recipe.*; -import com.zivilon.cinder_loe.CinderLoE; -import com.zivilon.cinder_loe.mixins.MixinLOTRBrewingRecipes; -import com.zivilon.cinder_loe.recipe.CinderBrewingRecipes; - -import lotr.common.item.LOTRItemFood; -import net.minecraft.init.Blocks; -import net.minecraft.item.Item; -import net.minecraft.item.crafting.IRecipe; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraftforge.oredict.OreDictionary; -import net.minecraftforge.oredict.ShapedOreRecipe; -import net.minecraftforge.oredict.ShapelessOreRecipe; -import net.minecraftforge.oredict.RecipeSorter; -import net.minecraftforge.oredict.RecipeSorter.Category; - -import static lotr.common.recipe.LOTRBrewingRecipes.BARREL_CAPACITY; - -public class recipes { - - - public static void registerRecipes() { - // Register a block recipe - System.out.println("[CinderLoE] Registering recipes..."); - registerGeneralRecipes(); - registerRedDwarvenRecipes(); - registerLimwaithRecipes(); - registerBreeRecipes(); - registerArnorRecipes(); - registerAngmarRecipes(); - registerBrewingRecipes(); - registerMillstoneRecipes(); - } - - public static void registerGeneralRecipes() { - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.bowAsh), " XS", "X S", " XS", - 'X', CinderLoE.ingotAsh, 'S', Items.string)); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.spearAsh), " X", " Y ", "Y ", - 'X', CinderLoE.ingotAsh, 'Y', "stickWood")); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.swordAsh), " X ", " X ", " Y ", - 'X', CinderLoE.ingotAsh, 'Y', "stickWood")); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.staffAsh), " XX", " YX", "Y ", - 'X', CinderLoE.ingotAsh, 'Y', "stickWood")); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.battleaxeAsh), "XXX", "XYX", " Y ", - 'X', CinderLoE.ingotAsh, 'Y', "stickWood")); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.pikeAsh), " X", " YX", "Y ", - 'X', CinderLoE.ingotAsh, 'Y', "stickWood")); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.hammerAsh), "XYX", "XYX", " Y ", - 'X', CinderLoE.ingotAsh, 'Y', "stickWood")); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.daggerAsh), "X ", "Y ", - 'X', CinderLoE.ingotAsh, 'Y', "stickWood")); - - GameRegistry.addRecipe((IRecipe)new ShapedOreRecipe(new ItemStack(CinderLoE.bowAsh), new Object[] { " XS", "X S", " XS", - Character.valueOf('X'), CinderLoE.ingotAsh, Character.valueOf('S'), Items.string })); - GameRegistry.addRecipe((IRecipe)new ShapedOreRecipe(new ItemStack(CinderLoE.spearAsh), new Object[] { " X", " Y ", "Y ", - Character.valueOf('X'), CinderLoE.ingotAsh, Character.valueOf('Y'), "stickWood" })); - GameRegistry.addRecipe((IRecipe)new ShapedOreRecipe(new ItemStack(CinderLoE.swordAsh), new Object[] { " X ", " X ", " Y ", - Character.valueOf('X'), CinderLoE.ingotAsh, Character.valueOf('Y'), "stickWood" })); - GameRegistry.addRecipe((IRecipe)new ShapedOreRecipe(new ItemStack(CinderLoE.staffAsh), new Object[] { " XX", " YX", "Y ", - Character.valueOf('X'), CinderLoE.ingotAsh, Character.valueOf('Y'), "stickWood" })); - GameRegistry.addRecipe((IRecipe)new ShapedOreRecipe(new ItemStack(CinderLoE.battleaxeAsh), new Object[] { "XXX", "XYX", " Y ", - Character.valueOf('X'), CinderLoE.ingotAsh, Character.valueOf('Y'), "stickWood" })); - GameRegistry.addRecipe((IRecipe)new ShapedOreRecipe(new ItemStack(CinderLoE.pikeAsh), new Object[] { " X", " YX", "Y ", - Character.valueOf('X'), CinderLoE.ingotAsh, Character.valueOf('Y'), "stickWood" })); - GameRegistry.addRecipe((IRecipe)new ShapedOreRecipe(new ItemStack(CinderLoE.hammerAsh), new Object[] { "XYX", "XYX", " Y ", - Character.valueOf('X'), CinderLoE.ingotAsh, Character.valueOf('Y'), "stickWood" })); - GameRegistry.addRecipe((IRecipe)new ShapedOreRecipe(new ItemStack(CinderLoE.daggerAsh), new Object[] { "X ", "Y ", - Character.valueOf('X'), CinderLoE.ingotAsh, Character.valueOf('Y'), "stickWood" })); - - GameRegistry.addRecipe((IRecipe)new ShapedOreRecipe(new ItemStack(CinderLoE.warDart, 1, 0), new Object[] { " Y", "X ", - Character.valueOf('X'), "feather", Character.valueOf('Y'), "stickWood" })); - - GameRegistry.addRecipe((IRecipe)new ShapedOreRecipe(new ItemStack(CinderLoE.warDart, 1, 0), new Object[] { " Y", "X ", - Character.valueOf('X'), "feather", Character.valueOf('Y'), "stickWood" })); - - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.spicedHam), CinderLoE.spice, Items.cooked_porkchop)); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDartHeads, 2, 1), LOTRMod.copper, new ItemStack(LOTRMod.chisel, 1, OreDictionary.WILDCARD_VALUE))); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDartHeads, 2, 2), LOTRMod.bronze, new ItemStack(LOTRMod.chisel, 1, OreDictionary.WILDCARD_VALUE))); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDartHeads, 2, 3), Items.iron_ingot, new ItemStack(LOTRMod.chisel, 1, OreDictionary.WILDCARD_VALUE))); -// GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDartHeads, 2, 4), LOTRMod.orcSteel, new ItemStack(LOTRMod.chisel, 1, OreDictionary.WILDCARD_VALUE))); -// GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDartHeads, 2, 5), LOTRMod.dwarfSteel, new ItemStack(LOTRMod.chisel, 1, OreDictionary.WILDCARD_VALUE))); -// GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDartHeads, 2, 6), LOTRMod.urukSteel, new ItemStack(LOTRMod.chisel, 1, OreDictionary.WILDCARD_VALUE))); -// GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDartHeads, 2, 7), LOTRMod.blueDwarfSteel, new ItemStack(LOTRMod.chisel, 1, OreDictionary.WILDCARD_VALUE))); -// GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDartHeads, 2, 8), LOTRMod.blackUrukSteel, new ItemStack(LOTRMod.chisel, 1, OreDictionary.WILDCARD_VALUE))); -// GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDartHeads, 2, 9), LOTRMod.elfSteel, new ItemStack(LOTRMod.chisel, 1, OreDictionary.WILDCARD_VALUE))); -// GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDartHeads, 2, 10), LOTRMod.gildedIron, new ItemStack(LOTRMod.chisel, 1, OreDictionary.WILDCARD_VALUE))); -// GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDartHeads, 2, 11), CinderLoE.redDwarfSteel, new ItemStack(LOTRMod.chisel, 1, OreDictionary.WILDCARD_VALUE))); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDartHeads, 2, 12), LOTRMod.mithril, new ItemStack(LOTRMod.chisel, 1, OreDictionary.WILDCARD_VALUE))); -// GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDartHeads, 2, 14), LOTRMod.morgulSteel, new ItemStack(LOTRMod.chisel, 1, OreDictionary.WILDCARD_VALUE))); - - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDart, 1, 1), new ItemStack(CinderLoE.warDart, 1, 0), new ItemStack(CinderLoE.warDartHeads, 1, 1))); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDart, 1, 2), new ItemStack(CinderLoE.warDart, 1, 0), new ItemStack(CinderLoE.warDartHeads, 1, 2))); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDart, 1, 3), new ItemStack(CinderLoE.warDart, 1, 0), new ItemStack(CinderLoE.warDartHeads, 1, 3))); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDart, 1, 4), new ItemStack(CinderLoE.warDart, 1, 0), new ItemStack(CinderLoE.warDartHeads, 1, 4))); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDart, 1, 5), new ItemStack(CinderLoE.warDart, 1, 0), new ItemStack(CinderLoE.warDartHeads, 1, 5))); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDart, 1, 6), new ItemStack(CinderLoE.warDart, 1, 0), new ItemStack(CinderLoE.warDartHeads, 1, 6))); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDart, 1, 7), new ItemStack(CinderLoE.warDart, 1, 0), new ItemStack(CinderLoE.warDartHeads, 1, 7))); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDart, 1, 8), new ItemStack(CinderLoE.warDart, 1, 0), new ItemStack(CinderLoE.warDartHeads, 1, 8))); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDart, 1, 9), new ItemStack(CinderLoE.warDart, 1, 0), new ItemStack(CinderLoE.warDartHeads, 1, 9))); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDart, 1, 10), new ItemStack(CinderLoE.warDart, 1, 0), new ItemStack(CinderLoE.warDartHeads, 1, 10))); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDart, 1, 11), new ItemStack(CinderLoE.warDart, 1, 0), new ItemStack(CinderLoE.warDartHeads, 1, 11))); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDart, 1, 12), new ItemStack(CinderLoE.warDart, 1, 0), new ItemStack(CinderLoE.warDartHeads, 1, 12))); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDart, 1, 13), new ItemStack(CinderLoE.warDart, 1, 0), new ItemStack(CinderLoE.warDartHeads, 1, 13))); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.warDart, 1, 14), new ItemStack(CinderLoE.warDart, 1, 0), new ItemStack(CinderLoE.warDartHeads, 1, 14))); - - OreDictionary.registerOre("vegetable1", CinderLoE.onion); - OreDictionary.registerOre("vegetable1", LOTRMod.leek); - OreDictionary.registerOre("vegetable2", CinderLoE.cabbage); - OreDictionary.registerOre("vegetable2", LOTRMod.lettuce); - OreDictionary.registerOre("vegetable3", Items.carrot); - OreDictionary.registerOre("vegetable3", Items.potato); - OreDictionary.registerOre("vegetable3", LOTRMod.turnip); - - OreDictionary.registerOre("fruit1", Items.apple); - OreDictionary.registerOre("fruit1", LOTRMod.pear); - OreDictionary.registerOre("fruit1", LOTRMod.appleGreen); - OreDictionary.registerOre("fruit1", LOTRMod.mango); - OreDictionary.registerOre("fruit1", LOTRMod.orange); - OreDictionary.registerOre("fruit2", LOTRMod.cherry); - OreDictionary.registerOre("fruit2", Items.melon); - OreDictionary.registerOre("fruit2", LOTRMod.banana); - OreDictionary.registerOre("fruit2", LOTRMod.pomegranate); - OreDictionary.registerOre("fruit3", LOTRMod.blueberry); - OreDictionary.registerOre("fruit3", LOTRMod.raspberry); - OreDictionary.registerOre("fruit3", LOTRMod.cranberry); - OreDictionary.registerOre("fruit3", LOTRMod.blackberry); - OreDictionary.registerOre("fruit3", LOTRMod.grapeRed); - OreDictionary.registerOre("fruit3", LOTRMod.grapeWhite); - - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.lightStew), Items.bowl, "vegetable1", "vegetable2", "vegetable3")); - - OreDictionary.registerOre("meat", Items.cooked_beef); - OreDictionary.registerOre("meat", Items.cooked_chicken); - OreDictionary.registerOre("meat", Items.cooked_porkchop); - OreDictionary.registerOre("meat", LOTRMod.camelCooked); - OreDictionary.registerOre("meat", LOTRMod.deerCooked); - OreDictionary.registerOre("meat", LOTRMod.muttonCooked); - OreDictionary.registerOre("meat", LOTRMod.lionCooked); - OreDictionary.registerOre("meat", LOTRMod.rhinoCooked); - OreDictionary.registerOre("meat", LOTRMod.rabbitCooked); - OreDictionary.registerOre("meat", LOTRMod.zebraCooked); - - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.fruitsalad), Items.bowl, "fruit1", "fruit2", "fruit3")); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.pasta, 4), new ItemStack(LOTRMod.rollingPin, 1, OreDictionary.WILDCARD_VALUE), CinderLoE.dough, CinderLoE.dough)); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.halva), Items.sugar, CinderLoE.dough, CinderLoE.spice, LOTRMod.almond)); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.doner_kebab), CinderLoE.dough, "vegetable2", CinderLoE.spice, LOTRMod.kebab)); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.chocolatebar, 2), LOTRMod.mugChocolate)); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(CinderLoE.pelmen), Items.wheat, "meat", LOTRMod.salt)); - GameRegistry.addRecipe(new LOTRRecipesPoisonDrinks()); - - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.cinderBlock), "XXX", "XYX", "XXX", - 'X', Blocks.stone, 'Y', LOTRMod.balrogFire)); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.reedBale), "XXX", "XXX", "XXX", - 'X', LOTRMod.reeds)); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.leatherBundle), "XXX", "XXX", "XXX", - 'X', Items.leather)); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.pretzel, 2), "XYX", " X ", - 'X', CinderLoE.dough, 'Y', LOTRMod.salt)); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.dough, 8), "XXX", "XYX", "XXX", - 'X', CinderLoE.flour, 'Y', Items.water_bucket)); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.fishBarrel), "XXX", "XXX", "XXX", - 'X', Items.fish)); - //GameRegistry.addRecipe((IRecipe)new ShapedOreRecipe(new ItemStack(CinderLoE.rustedsword, 8), new Object[] { "X", "y", "y", - //Character.valueOf('Y'), Items.iron_ingot, Character.valueOf('X'), "stickWood"})); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.silverChain, 8), "X", "X", "X", - 'X', LOTRMod.silver)); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.goldChain, 8), "X", "X", "X", - 'X', Items.gold_ingot)); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.ironChain, 8), "X", "X", "X", - 'X', Items.iron_ingot)); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.bronzeChain, 8), "X", "X", "X", - 'X', LOTRMod.bronze)); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.cindercobble, 4, 0), "XX", "XX", - 'X', LOTRMod.cobblebrick)); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.cutDrystone, 4), "XX", "XX", - 'X', new ItemStack(CinderLoE.cindercobble, 1, 0))); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(LOTRMod.cobblebrick, 4, 0), "XX", "XX", - 'X', CinderLoE.cutDrystone)); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.reeflessCoral, 1), "X", - 'X', LOTRMod.coralReef)); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.plaster, 4), "XYX", "YXY", "XYX", - 'X', Items.paper, 'Y', Blocks.clay)); - // Cinder Stony Blocks - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.cindercobble, 4, 1), "XY", "YX", - 'X', new ItemStack(LOTRMod.rock, 1, 0), 'Y', LOTRMod.mordorGravel)); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.cindercobble, 4, 2), "XX", "XX", - 'X', new ItemStack(LOTRMod.silver))); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.cindercobble, 4, 3), "XX", "XX", - 'X', new ItemStack(CinderLoE.cindercobble, 1, 2))); - - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(LOTRMod.banner, 1, 44), " Y ", " X ", " Z ", - 'X', "stickWood", 'Y', new ItemStack(Blocks.wool, 1, 14), 'Z', "plankWood")); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(LOTRMod.banner, 1, 45), " Y ", " X ", " Z ", - 'X', "stickWood", 'Y', new ItemStack(Blocks.wool, 1, 11), 'Z', "plankWood")); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(LOTRMod.banner, 1, 46), " Y ", " X ", " Z ", - 'X', "stickWood", 'Y', new ItemStack(Blocks.wool, 1, 13), 'Z', "plankWood")); - - // Furs and then carpets - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.cinderfur, 2, 0), "XX", "XX", - 'X', new ItemStack(LOTRMod.fur, 1))); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.furCarpet, 3, 0), "XX", - 'X', new ItemStack(CinderLoE.cinderfur, 1, 0))); - - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.cinderfur, 2, 1), "XX", "XX", - 'X', new ItemStack(CinderLoE.cinderFurItem, 1, 0))); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.furCarpet, 3, 1), "XX", - 'X', new ItemStack(CinderLoE.cinderfur, 1, 1))); - - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.cinderfur, 2, 2), "XX", "XX", - 'X', new ItemStack(CinderLoE.cinderFurItem, 1, 1))); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.furCarpet, 3, 2), "XX", - 'X', new ItemStack(CinderLoE.cinderfur, 1, 2))); - - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.cinderfur, 2, 3), "XX", "XX", - 'X', new ItemStack(CinderLoE.cinderFurItem, 1, 2))); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.furCarpet, 3, 3), "XX", - 'X', new ItemStack(CinderLoE.cinderfur, 1, 3))); - - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.cinderfur, 2, 4), "XX", "XX", - 'X', new ItemStack(CinderLoE.cinderFurItem, 1, 3))); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.furCarpet, 3, 4), "XX", - 'X', new ItemStack(CinderLoE.cinderfur, 1, 4))); - - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.cinderfur, 2, 5), "XX", "XX", - 'X', new ItemStack(CinderLoE.cinderFurItem, 1, 4))); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.furCarpet, 3, 5), "XX", - 'X', new ItemStack(CinderLoE.cinderfur, 1, 5))); - - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.cinderfur, 2, 6), "XX", "XX", - 'X', new ItemStack(CinderLoE.cinderFurItem, 1, 5))); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.furCarpet, 3, 6), "XX", - 'X', new ItemStack(CinderLoE.cinderfur, 1, 6))); - - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.cinderfur, 2, 7), "XX", "XX", - 'X', new ItemStack(LOTRMod.lionFur, 1))); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.furCarpet, 3, 7), "XX", - 'X', new ItemStack(CinderLoE.cinderfur, 1, 7))); - - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.cinderfur, 2, 8), "XX", "XX", - 'X', new ItemStack(CinderLoE.cinderFurItem, 1, 6))); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.furCarpet, 3, 8), "XX", - 'X', new ItemStack(CinderLoE.cinderfur, 1, 8))); - - - } - public static void registerRedDwarvenRecipes() { - LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.helmetRedDwarf), "XXX", "X X", - Character.valueOf('X'), CinderLoE.redDwarfSteel)); - LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.bodyRedDwarf), "X X", "XXX", "XXX", - Character.valueOf('X'), CinderLoE.redDwarfSteel)); - LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.legsRedDwarf), "XXX", "X X", "X X", - Character.valueOf('X'), CinderLoE.redDwarfSteel)); - LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.bootsRedDwarf), "X X", "X X", - Character.valueOf('X'), CinderLoE.redDwarfSteel)); - LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.spearRedDwarf), " X", " Y ", "Y ", - Character.valueOf('X'), CinderLoE.redDwarfSteel, Character.valueOf('Y'), "stickWood")); - LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.swordRedDwarf), " X ", " X ", " Y ", - Character.valueOf('X'), CinderLoE.redDwarfSteel, Character.valueOf('Y'), "stickWood")); - LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.battleaxeRedDwarf), "XXX", "XYX", " Y ", - Character.valueOf('X'), CinderLoE.redDwarfSteel, Character.valueOf('Y'), "stickWood")); - LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.pikeRedDwarf), " X", " YX", "Y ", - Character.valueOf('X'), CinderLoE.redDwarfSteel, Character.valueOf('Y'), "stickWood")); - LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.hammerRedDwarf), "XYX", "XYX", " Y ", - Character.valueOf('X'), CinderLoE.redDwarfSteel, Character.valueOf('Y'), "stickWood")); - LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.daggerRedDwarf), "X ", "Y ", - Character.valueOf('X'), CinderLoE.redDwarfSteel, Character.valueOf('Y'), "stickWood")); - LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.crossbowRedDwarf), "XXY", "ZYX", "YZX", - Character.valueOf('X'), CinderLoE.redDwarfSteel, Character.valueOf('Y'), "stickWood", Character.valueOf('Z'), "string")); - LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.boarArmorRedDwarf), "X ", "XYX", "XXX", - Character.valueOf('X'), CinderLoE.redDwarfSteel, Character.valueOf('Y'), "leather")); - LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.blockRedDwarfSteel), "XXX", "XXX", "XXX", - Character.valueOf('X'), CinderLoE.redDwarfSteel)); - LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.redDwarfSteel), "X ", " ", - Character.valueOf('X'), CinderLoE.redDwarfSteel)); - LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.chandelierRedDwarf, 2), " X ", "ZYZ", " ", - Character.valueOf('X'), "stickWood", Character.valueOf('Y'), CinderLoE.redDwarfSteel, Character.valueOf('Z'), Blocks.torch)); - LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.barsRedDwarf, 16), "XXX", "XXX", " ", - Character.valueOf('X'), CinderLoE.redDwarfSteel)); - LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.dwarvenBrickRuned, 4), " X ", "XYX", " X ", - Character.valueOf('X'), new ItemStack(LOTRMod.brick, 1, 6), Character.valueOf('Y'), Items.gold_nugget)); - GameRegistry.addShapelessRecipe(new ItemStack(CinderLoE.redDwarfSteel, 9), new ItemStack(CinderLoE.blockRedDwarfSteel)); - GameRegistry.addRecipe(new ItemStack(CinderLoE.blockRedDwarfSteel, 1), "XXX", "XXX", "XXX", - Character.valueOf('X'), CinderLoE.redDwarfSteel); - LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(LOTRMod.banner, 1, 42), " YR", " X ", " Z ", - Character.valueOf('X'), "stickWood", Character.valueOf('Y'), Blocks.wool, Character.valueOf('Z'), "plankWood", Character.valueOf('R'), "dyeRed")); - GameRegistry.addRecipe(new LOTRRecipePoisonWeapon(CinderLoE.daggerRedDwarf, CinderLoE.daggerRedDwarfPoisoned)); - } - - public static void registerLimwaithRecipes() { - - OreDictionary.registerOre("bone", Items.bone); - OreDictionary.registerOre("bone", LOTRMod.elfBone); - OreDictionary.registerOre("bone", LOTRMod.dwarfBone); - OreDictionary.registerOre("bone", LOTRMod.hobbitBone); - OreDictionary.registerOre("bone", LOTRMod.orcBone); - OreDictionary.registerOre("bone", LOTRMod.trollBone); - OreDictionary.registerOre("bone", LOTRMod.wargBone); - - LOTRRecipes.moredainRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.helmetLimwaith), "XXX", "Y Y", - Character.valueOf('X'), LOTRMod.driedReeds, Character.valueOf('Y'), new ItemStack(LOTRMod.planks, 1, 15))); - LOTRRecipes.moredainRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.bodyLimwaith), "X X", "YYY", "XXX", - Character.valueOf('X'), LOTRMod.driedReeds, Character.valueOf('Y'), new ItemStack(LOTRMod.planks, 1, 15))); - LOTRRecipes.moredainRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.legsLimwaith), "XXX", "Y Y", "X X", - Character.valueOf('X'), LOTRMod.driedReeds, Character.valueOf('Y'), new ItemStack(LOTRMod.planks, 1, 15))); - LOTRRecipes.moredainRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.bootsLimwaith), "Y Y", "X X", - Character.valueOf('X'), LOTRMod.driedReeds, Character.valueOf('Y'), new ItemStack(LOTRMod.planks, 1, 15))); - LOTRRecipes.moredainRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.spearLimwaith), " X", " Y ", "Y ", - Character.valueOf('X'), "bone", Character.valueOf('Y'), "stickWood")); - LOTRRecipes.moredainRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.truncheonLimwaith), " X ", " X ", " Y ", - Character.valueOf('X'), "bone", Character.valueOf('Y'), "stickWood")); - LOTRRecipes.moredainRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.battleaxeLimwaith), "XXX", "XYX", " Y ", - Character.valueOf('X'), "bone", Character.valueOf('Y'), "stickWood")); - LOTRRecipes.moredainRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.tridentLimwaith), " XX", " YX", "Y ", - Character.valueOf('X'), "bone", Character.valueOf('Y'), "stickWood")); - LOTRRecipes.moredainRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.daggerLimwaith), "X ", "Y ", - Character.valueOf('X'), "bone", Character.valueOf('Y'), "stickWood")); - LOTRRecipes.moredainRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.blowgunLimwaith), "YXX", " ", " ", - Character.valueOf('X'), LOTRMod.reeds, Character.valueOf('Y'), "stickWood")); - GameRegistry.addRecipe(new LOTRRecipePoisonWeapon(CinderLoE.daggerLimwaith, CinderLoE.daggerLimwaithPoisoned)); - LOTRRecipes.moredainRecipes.add(new ShapelessOreRecipe(new ItemStack(CinderLoE.bonemold), "bone", new ItemStack(Items.dye, 1, 15), new ItemStack(Items.dye, 1, 15))); - - LOTRRecipes.moredainRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.helmetboneLimwaith), "XXX", "Y Y", - Character.valueOf('X'), "bone", Character.valueOf('Y'), CinderLoE.bonemold)); - LOTRRecipes.moredainRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.bodyboneLimwaith), "X X", "YYY", "XXX", - Character.valueOf('X'), "bone", Character.valueOf('Y'), CinderLoE.bonemold)); - LOTRRecipes.moredainRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.legsboneLimwaith), "XXX", "Y Y", "X X", - Character.valueOf('X'), "bone", Character.valueOf('Y'), CinderLoE.bonemold)); - LOTRRecipes.moredainRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.bootsboneLimwaith), "Y Y", "X X", - Character.valueOf('X'), "bone", Character.valueOf('Y'), CinderLoE.bonemold)); - LOTRRecipes.moredainRecipes.add(new ShapedOreRecipe(new ItemStack(LOTRMod.banner, 1, 43), " YR", " X ", " Z ", - Character.valueOf('X'), "stickWood", Character.valueOf('Y'), Blocks.wool, Character.valueOf('Z'), "plankWood", Character.valueOf('R'), LOTRMod.reeds)); - } - - public static void registerBreeRecipes() { - LOTRRecipes.breeRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.helmetBreeKettle), "XYX", - Character.valueOf('X'), Items.iron_ingot, Character.valueOf('Y'), CinderLoE.helmetBree)); - LOTRRecipes.breeRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.helmetBree), "XXX", "X X", - Character.valueOf('X'), Items.iron_ingot)); - LOTRRecipes.breeRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.bodyBree), "X X", "XXX", "XXX", - Character.valueOf('X'), Items.iron_ingot)); - LOTRRecipes.breeRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.legsBree), "XXX", "X X", "X X", - Character.valueOf('X'), Items.iron_ingot)); - LOTRRecipes.breeRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.bootsBree), "X X", "X X", - Character.valueOf('X'), Items.iron_ingot)); - LOTRRecipes.breeRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.swordBree), " X ", " X ", " Y ", - Character.valueOf('X'), Items.iron_ingot, Character.valueOf('Y'), "stickWood")); - } - - public static void registerAngmarRecipes() { - LOTRRecipes.angmarRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.helmetRhudaur), "XXX", "X X", - Character.valueOf('X'), Items.iron_ingot)); - LOTRRecipes.angmarRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.bodyRhudaur), "X X", "XXX", "XXX", - Character.valueOf('X'), Items.iron_ingot)); - LOTRRecipes.angmarRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.legsRhudaur), "XXX", "X X", "X X", - Character.valueOf('X'), Items.iron_ingot)); - LOTRRecipes.angmarRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.bootsRhudaur), "X X", "X X", - Character.valueOf('X'), Items.iron_ingot)); - } - public static void registerArnorRecipes() { - LOTRRecipes.rangerRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.helmetArnorBanner), "YYY", "Y Y", - Character.valueOf('X'), Items.iron_ingot, Character.valueOf('Y'), Items.leather)); - LOTRRecipes.rangerRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.bodyArnorBanner), "Y Y", "XXX", "YYY", - Character.valueOf('X'), Items.iron_ingot, Character.valueOf('Y'), Items.leather)); - LOTRRecipes.rangerRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.legsArnorBanner), "YYY", "X X", "Y Y", - Character.valueOf('X'), Items.iron_ingot, Character.valueOf('Y'), Items.leather)); - LOTRRecipes.rangerRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.bootsArnorBanner), "X X", "X X", - Character.valueOf('X'), Items.iron_ingot, Character.valueOf('Y'), Items.leather)); - LOTRRecipes.rangerRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.maceArnor), " XX", " XX", "Y ", - Character.valueOf('X'), Items.iron_ingot, Character.valueOf('Y'), "stickWood")); - } - public static void registerBrewingRecipes() { - System.out.println("[CinderLoE] Registering Brewing recipes... We like to drink! jk I hate alcohol"); - - CinderBrewingRecipes.addCustomBrewingRecipe(new ItemStack(LOTRMod.mugTauredainCocoa, BARREL_CAPACITY), - new ItemStack(Items.dye, 1, 3), - new ItemStack(Items.dye, 1, 3), - new ItemStack(Items.dye, 1, 3), - new ItemStack(LOTRMod.doubleFlower, 1, 2), - new ItemStack(LOTRMod.doubleFlower, 1, 3), - new ItemStack(LOTRMod.mugMilk)); - CinderBrewingRecipes.addCustomBrewingRecipe(new ItemStack(CinderLoE.mugElfBrew, BARREL_CAPACITY), - new ItemStack(LOTRMod.elanor), - new ItemStack(LOTRMod.niphredil), - new ItemStack(LOTRMod.mallornNut), - new ItemStack(LOTRMod.mallornNut), - new ItemStack(CinderLoE.spiceElven), - new ItemStack(CinderLoE.spiceElven)); - CinderBrewingRecipes.addCustomBrewingRecipe(new ItemStack(CinderLoE.mugHumanBrew, BARREL_CAPACITY), - new ItemStack(LOTRMod.athelas), - new ItemStack(LOTRMod.athelas), - new ItemStack(LOTRMod.athelas), - new ItemStack(LOTRMod.athelas), - new ItemStack(CinderLoE.spiceHuman), - new ItemStack(CinderLoE.spiceHuman)); - CinderBrewingRecipes.addCustomBrewingRecipe(new ItemStack(CinderLoE.mugOrcBrew, BARREL_CAPACITY), - new ItemStack(LOTRMod.morgulShroom), - new ItemStack(LOTRMod.nauriteGem), - new ItemStack(LOTRMod.morgulShroom), - new ItemStack(LOTRMod.guldurilCrystal), - new ItemStack(CinderLoE.spiceOrcish), - new ItemStack(CinderLoE.spiceOrcish)); - CinderBrewingRecipes.addCustomBrewingRecipe(new ItemStack(CinderLoE.mugDwarfBrew, BARREL_CAPACITY), - new ItemStack(LOTRMod.dwarfHerb), - new ItemStack(LOTRMod.dwarfHerb), - new ItemStack(LOTRMod.dwarfHerb), - new ItemStack(LOTRMod.dwarfHerb), - new ItemStack(CinderLoE.spiceDwarven), - new ItemStack(CinderLoE.spiceDwarven)); - } - - public static void registerMillstoneRecipes() { - System.out.println("[CinderLoE] Registering Millstone recipes..."); - - LOTRMillstoneRecipes.addRecipe(Items.wheat, new ItemStack(CinderLoE.flour)); - LOTRMillstoneRecipes.addRecipe(LOTRMod.corn, new ItemStack(CinderLoE.flour)); - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/tileentity/TileEntityMistBlock.java b/src (1)/main/java/com/zivilon/cinder_loe/tileentity/TileEntityMistBlock.java deleted file mode 100644 index 0f2f3c2..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/tileentity/TileEntityMistBlock.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.zivilon.cinder_loe.tileentity; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -import java.util.List; - -import lotr.common.LOTRDimension; -import lotr.common.LOTRGuiMessageTypes; -import lotr.common.LOTRLevelData; -import lotr.common.LOTRMod; -import lotr.common.tileentity.LOTRTileEntityUtumnoPortal; -import lotr.common.world.LOTRTeleporterUtumno; - -import net.minecraft.entity.Entity; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.server.MinecraftServer; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.AxisAlignedBB; -import net.minecraft.util.MathHelper; -import net.minecraft.world.Teleporter; -import net.minecraft.world.World; - -public class TileEntityMistBlock extends LOTRTileEntityUtumnoPortal { - public float color_red; - public float color_green; - public float color_blue; - - public TileEntityMistBlock() { - this(0.0F, 0.0F, 0.0F); - } - - public TileEntityMistBlock(float r, float g, float b) { - color_red = r; - color_green = g; - color_blue = b; - } - - public void func_149670_a(World world, int i, int j, int k, Entity entity) {} - - public void writeToNBT(NBTTagCompound nbt) { - super.writeToNBT(nbt); - nbt.setFloat("red", this.color_red); - nbt.setFloat("green", this.color_green); - nbt.setFloat("blue", this.color_blue); - } - - public void readFromNBT(NBTTagCompound nbt) { - super.readFromNBT(nbt); - this.color_red = nbt.getFloat("red"); - this.color_green = nbt.getFloat("green"); - this.color_blue = nbt.getFloat("blue"); - } - - @Override - public void func_145845_h() {} - - @Override - public void transferEntity(Entity entity) {} - - private LOTRTileEntityUtumnoPortal findActingTargetingPortal() { - return null; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/util/BlockPos.java b/src (1)/main/java/com/zivilon/cinder_loe/util/BlockPos.java deleted file mode 100644 index e6558a9..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/util/BlockPos.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.zivilon.cinder_loe.util; - -import net.minecraft.block.Block; -import net.minecraft.block.BlockBush; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.util.MathHelper; -import net.minecraft.world.World; -import java.util.ArrayList; -import java.util.Random; - -public class BlockPos { - public int x, y, z; - - public BlockPos(int x, int y, int z) { - this.x = x; - this.y = y; - this.z = z; - } - - public BlockPos down() { - return new BlockPos(x, y - 1, z); - } - - public static BlockPos findSafeSpawnLocation(World world, EntityPlayer entityPlayer) { - Random rand = new Random(); - ArrayList validPositions = new ArrayList(); - int radius = 5; // 5-block radius - - int originX = MathHelper.floor_double(entityPlayer.posX); - int originY = MathHelper.floor_double(entityPlayer.posY); - int originZ = MathHelper.floor_double(entityPlayer.posZ); - - for (int x = originX - radius; x <= originX + radius; x++) { - for (int z = originZ - radius; z <= originZ + radius; z++) { - for (int y = originY - radius; y <= originY + radius; y++) { - Block block = world.getBlock(x, y, z); - Block blockAbove = world.getBlock(x, y + 1, z); - - // Check if the block is solid and there's air above it - if (!block.isAir(world, x, y, z) && !(block instanceof BlockBush) && (blockAbove.isAir(world, x, y + 1, z) || (blockAbove instanceof BlockBush))) { - validPositions.add(new BlockPos(x, y + 1, z)); // Add the position above the solid block - } - } - } - } - if (validPositions.isEmpty()) { - return null; // No valid position found - } - - // Select a random valid position - return validPositions.get(rand.nextInt(validPositions.size())); - } - -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/util/DamageEvent.java b/src (1)/main/java/com/zivilon/cinder_loe/util/DamageEvent.java deleted file mode 100644 index 20c1e6d..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/util/DamageEvent.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.zivilon.cinder_loe.util; - -import net.minecraft.entity.*; -import net.minecraft.entity.player.*; -import net.minecraft.util.DamageSource; - -import com.zivilon.cinder_loe.mixins.MixinLOTREnchantment; -import lotr.common.enchant.LOTREnchantment; -import lotr.common.enchant.LOTREnchantmentHelper; - -import lotr.common.item.*; -import net.minecraft.item.*; -import net.minecraft.world.World; - -public class DamageEvent { - public DamageSource source; - public float damage; - public EntityLivingBase defender; - public Entity attacker; - - public DamageEvent(DamageSource source, float damage, EntityLivingBase defender, Entity attacker) { - this.source = source; - this.damage = damage; - this.defender = defender; - this.attacker = attacker; - } - - public static Pair run_events(DamageEvent event) { - boolean cancel = false; - World world = event.defender.worldObj; - - if (event.defender instanceof EntityPlayer && !event.source.isUnblockable()) { - EntityPlayerMP player = (EntityPlayerMP) event.defender; - ItemStack sword = player.getHeldItem(); - if (!(event.attacker instanceof EntityLivingBase)) return new Pair<>(event, cancel); - EntityLivingBase attacker = (EntityLivingBase)event.attacker; - - float playerYaw = player.getRotationYawHead(); - float attackerYaw = attacker.getRotationYawHead(); - - // Normalize both angles to be within 0 - 360 - playerYaw = (playerYaw + 360) % 360; - attackerYaw = (attackerYaw + 360) % 360; - - // Calculate the angle difference - float angleDifference = Math.abs(playerYaw - attackerYaw); - - if (angleDifference > 180) { - angleDifference = 360 - angleDifference; - } - ItemStack weapon = attacker.getHeldItem(); - if (weapon != null) { - if (player.isBlocking() && angleDifference >= 135 && angleDifference <=225) { - - if (weapon.getItem() instanceof ItemAxe || weapon.getItem() instanceof LOTRItemAxe || weapon.getItem() instanceof LOTRItemBattleaxe) { - sword.damageItem((int) (event.damage *1.5), player); // Axes deal 150% the Durability damage - player.clearItemInUse(); - world.playSoundAtEntity(player, "random.anvil_land", 1F, 2F); - event.damage *= 0.25f; // Only 25% Passes through - } else if (weapon.getItem() instanceof LOTRItemHammer) { - sword.damageItem((int) event.damage, player); // Hammers bypass the block better, but only deal 100% of the durability damage - player.clearItemInUse(); - world.playSoundAtEntity(player, "random.anvil_land", 1F, 2F); - event.damage *= 0.5f; // Only 50% Passes through - } else { - sword.damageItem((int) (event.damage/2), player); //Swords only deal 50% of durability damage - player.clearItemInUse(); - world.playSoundAtEntity(player, "random.anvil_land", 1F, 2F); - event.damage = 0.0f; - cancel = true; - } - } - } - } - if (event.source.isFireDamage() && event.defender instanceof EntityPlayer) { - EntityPlayer player = (EntityPlayer) event.defender; - for (ItemStack armor : player.inventory.armorInventory) { - if (armor != null && LOTREnchantmentHelper.hasEnchant(armor, LOTREnchantment.getEnchantmentByName("fireRepair"))) { - int currentDamage = armor.getItemDamage(); - int reduction = (int) event.damage; - int newDamage = currentDamage - 2*reduction; - - if (newDamage < 0) { - newDamage = 0; - } - - armor.setItemDamage(newDamage); - } - } - } - return new Pair<>(event, cancel); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/util/DurableItemCrafter.java b/src (1)/main/java/com/zivilon/cinder_loe/util/DurableItemCrafter.java deleted file mode 100644 index e91aedb..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/util/DurableItemCrafter.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.zivilon.cinder_loe.util; - -import net.minecraft.item.Item; -import java.util.ArrayList; -import java.util.List; - -import lotr.common.LOTRMod; -import com.zivilon.cinder_loe.CinderLoE; - -public class DurableItemCrafter { - public static List customItems = new ArrayList<>(); - public static List exceptionItems = new ArrayList<>(); - - static { - customItems.add(LOTRMod.rollingPin); - customItems.add(LOTRMod.chisel); - customItems.add(CinderLoE.cleaver); - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/util/LOTREnchantmentExclusions.java b/src (1)/main/java/com/zivilon/cinder_loe/util/LOTREnchantmentExclusions.java deleted file mode 100644 index 7c811cf..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/util/LOTREnchantmentExclusions.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.zivilon.cinder_loe.util; - -import net.minecraft.item.Item; -import java.util.ArrayList; -import java.util.List; - -import lotr.common.LOTRMod; -import com.zivilon.cinder_loe.CinderLoE; - -public class LOTREnchantmentExclusions { - public static List exclusions = new ArrayList<>(); - static { - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/util/Pair.java b/src (1)/main/java/com/zivilon/cinder_loe/util/Pair.java deleted file mode 100644 index a0514f6..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/util/Pair.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.zivilon.cinder_loe.util; - -public class Pair { - public K key; - public V value; - - public Pair(K key, V value) { - this.key = key; - this.value = value; - } - - public K getKey() { - return key; - } - public V getValue() { - return value; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/util/Utilities.java b/src (1)/main/java/com/zivilon/cinder_loe/util/Utilities.java deleted file mode 100644 index 5f9c676..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/util/Utilities.java +++ /dev/null @@ -1,331 +0,0 @@ -package com.zivilon.cinder_loe.util; - -import com.zivilon.cinder_loe.CinderLoE; -import com.zivilon.cinder_loe.client.render.item.RenderHelper; -import com.zivilon.cinder_loe.mixins.MixinEntity; - -import java.io.BufferedWriter; -import java.io.FileOutputStream; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.lang.reflect.*; -import java.time.LocalDateTime; -import java.time.format.DateTimeFormatter; -import java.util.Arrays; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Vector; -import java.util.UUID; - -import lotr.common.LOTRCreativeTabs; -import lotr.common.world.biome.LOTRBiome; -import lotr.common.item.LOTRItemArmor; -import lotr.common.item.LOTRMaterial; -import lotr.common.enchant.LOTREnchantment; -import lotr.common.enchant.LOTREnchantmentHelper; - -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.enchantment.EnchantmentHelper; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.SharedMonsterAttributes; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.item.ItemArmor; -import net.minecraft.item.ItemStack; -import net.minecraft.item.ItemSword; -import net.minecraft.nbt.NBTBase; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.nbt.NBTTagList; -import net.minecraft.nbt.NBTTagString; -import net.minecraft.potion.Potion; -import net.minecraft.potion.PotionEffect; -import net.minecraft.server.MinecraftServer; - - -public class Utilities { - - public static int[] LOTRIntCache = null; - public static LOTRBiome reflected_river; - public static LOTRBiome reflected_taiga; - public static LOTRCreativeTabs reflected_tab_block; - public static List badEnchants = new ArrayList<>(); - public static Map upgradedEnchants = new HashMap<>(); - - static { - badEnchants.add("weak1"); - badEnchants.add("weak2"); - badEnchants.add("weak3"); - badEnchants.add("weak4"); - badEnchants.add("meleeSlow1"); - badEnchants.add("meleeUnreach1"); - badEnchants.add("toolSlow1"); - badEnchants.add("protectWeak1"); - badEnchants.add("protectWeak2"); - badEnchants.add("rangedWeak1"); - badEnchants.add("rangedWeak2"); - badEnchants.add("rangedWeak3"); - badEnchants.add("protectRangedWeak1"); - badEnchants.add("protectRangedWeak2"); - upgradedEnchants.put("strong1", LOTREnchantment.strong1); - upgradedEnchants.put("strong2", LOTREnchantment.strong3); - upgradedEnchants.put("strong3", LOTREnchantment.strong4); - upgradedEnchants.put("durable1", LOTREnchantment.durable2); - upgradedEnchants.put("durable2", LOTREnchantment.durable3); - upgradedEnchants.put("knockback1", LOTREnchantment.knockback2); - upgradedEnchants.put("toolSpeed1", LOTREnchantment.toolSpeed2); - upgradedEnchants.put("toolSpeed2", LOTREnchantment.toolSpeed3); - upgradedEnchants.put("toolSpeed3", LOTREnchantment.toolSpeed4); - upgradedEnchants.put("looting1", LOTREnchantment.looting2); - upgradedEnchants.put("looting2", LOTREnchantment.looting3); - upgradedEnchants.put("protect1", LOTREnchantment.protect2); - upgradedEnchants.put("protectFire1", LOTREnchantment.protectFire2); - upgradedEnchants.put("protectFire2", LOTREnchantment.protectFire3); - upgradedEnchants.put("protectFall1", LOTREnchantment.protectFall2); - upgradedEnchants.put("protectFall2", LOTREnchantment.protectFall3); - upgradedEnchants.put("protectRanged1", LOTREnchantment.protectRanged2); - upgradedEnchants.put("protectRanged2", LOTREnchantment.protectRanged3); - upgradedEnchants.put("rangedStrong1", LOTREnchantment.rangedStrong2); - upgradedEnchants.put("rangedStrong2", LOTREnchantment.rangedStrong3); - upgradedEnchants.put("rangedKnockback1", LOTREnchantment.rangedKnockback2); - } - - public static void initialize_reflects() { - try { - Field river_field = LOTRBiome.class.getField("river"); - reflected_river = (LOTRBiome)river_field.get(null); - Field taiga_field = LOTRBiome.class.getField("taiga"); - reflected_taiga = (LOTRBiome)taiga_field.get(null); - - } catch (NoSuchFieldException | IllegalAccessException e) { - e.printStackTrace(); - } - } - - public static void pre_init_reflects() { - try { - Field tabBlockField = LOTRCreativeTabs.class.getField("tabBlock"); - reflected_tab_block = (LOTRCreativeTabs)tabBlockField.get(null); - } catch (NoSuchFieldException | IllegalAccessException e) { - e.printStackTrace(); - } - } - - public static EntityPlayerMP getPlayerByUUID(UUID playerUUID) { - MinecraftServer server = MinecraftServer.getServer(); // Get the server instance - if (server == null) { - return null; // Server instance is not available - } - - // Iterate through the list of online players and match UUID - for (Object obj : server.getConfigurationManager().playerEntityList) { - if (obj instanceof EntityPlayerMP) { - EntityPlayerMP player = (EntityPlayerMP) obj; - if (player.getUniqueID().equals(playerUUID)) { - return player; - } - } else { - System.err.println("[CinderCore] Player list having non-players, WHAT?!?!?!"); - } - } - return null; // Player not found or not online - } - - public static String toSnakeCase(String input) { - if (input == null || input.isEmpty()) { - return input; - } - - StringBuilder builder = new StringBuilder(); - char[] chars = input.toCharArray(); - - builder.append(Character.toLowerCase(chars[0])); - for (int i = 1; i < chars.length; i++) { - char c = chars[i]; - if (Character.isUpperCase(c)) { - builder.append('_').append(Character.toLowerCase(c)); - } else { - builder.append(c); - } - } - - return builder.toString(); - } - - public static void writeLog(String message) { - try (BufferedWriter writer = new BufferedWriter(new FileWriter("custom_log.txt", true))) { - LocalDateTime now = LocalDateTime.now(); - String timestamp = now.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); - writer.write(timestamp + " - " + message + "\n"); - } catch (IOException e) { - e.printStackTrace(); - } - } - - public static EntityPlayer getPlayerByName(String player_name) { - MinecraftServer server = MinecraftServer.getServer(); - if (server == null) { - return null; - } - - for (Object obj : server.getConfigurationManager().playerEntityList) { - if (obj instanceof EntityPlayerMP) { - EntityPlayer player = (EntityPlayer)obj; - String found_name = player.getCommandSenderName(); - if (found_name.equals(player_name)) { - return player; - } - } - } - return null; // Player not found or not online - } - - public static boolean hasFireWeapon(String player_name) { - EntityPlayer player = getPlayerByName(player_name); - - if (player == null) { - System.out.println("[CinderLoE] Warning! Player not found: " + player_name); - return false; - } - - ItemStack held_item = player.getHeldItem(); - boolean has_fire = LOTREnchantmentHelper.hasEnchant(held_item, LOTREnchantment.fire); - return has_fire; - } - - public static boolean has_fire_weapon(Entity entity) { - if (!(entity instanceof EntityLivingBase)) return false; - ItemStack held_item = ((EntityLivingBase)entity).getHeldItem(); - return LOTREnchantmentHelper.hasEnchant(held_item, LOTREnchantment.fire); - } - - public static double calculate_melee_damage_on_entity(EntityLivingBase target, EntityLivingBase attacker) { - if (attacker == null) return 0.0D; - if (attacker.getEntityAttribute(SharedMonsterAttributes.attackDamage) == null) return 0.0D; - - double attribute = attacker.getEntityAttribute(SharedMonsterAttributes.attackDamage).getAttributeValue(); - double enchantments = EnchantmentHelper.getEnchantmentModifierLiving(attacker, target); - boolean is_critical = !attacker.onGround && attacker.motionY < 0.0D && !attacker.isInWater() && !attacker.isRiding(); - double critical = 0.0D; - if (is_critical) { - PotionEffect strength_effect = attacker.getActivePotionEffect(Potion.damageBoost); - if (strength_effect == null) { - critical = Math.min((attribute + enchantments) * 1.5D, 7.0D); - } else { - int level = strength_effect.getAmplifier() + 1; - critical = Math.min((attribute + enchantments) * 1.5D, 7.0D * (1.0D + 0.5D * level)); - } - } - return attribute + enchantments + critical; - } - - public static boolean isArrayEmpty(int[] array) { - for (int value : array) { - if (value != 0) return false; - } - return true; - } - - public static void setInvulnerable(Entity entity, boolean invulnerable) { - ((MixinEntity)entity).setInvulnerable(invulnerable); - } - - public static void setLOTREnchant(ItemStack itemstack, LOTREnchantment ench) { - NBTTagList tags = getItemEnchantTags(itemstack, true); - if (tags != null) { - String enchName = ench.enchantName; - tags.appendTag((NBTBase)new NBTTagString(enchName)); - } - } - - public static NBTTagList getItemEnchantTags(ItemStack itemstack, boolean create) { - NBTTagCompound itemData = itemstack.getTagCompound(); - NBTTagList tags = null; - if (itemData != null && itemData.hasKey("LOTREnch")) { - tags = itemData.getTagList("LOTREnch", 8); - } else if (create) { - if (itemData == null) { - itemData = new NBTTagCompound(); - itemstack.setTagCompound(itemData); - } - tags = new NBTTagList(); - itemData.setTag("LOTREnch", (NBTBase)tags); - } - return tags; - } - - public static void setAppliedRandomEnchants(ItemStack itemstack) { - if (!itemstack.hasTagCompound()) - itemstack.setTagCompound(new NBTTagCompound()); - itemstack.getTagCompound().setBoolean("LOTRRandomEnch", true); - } - - public static void knockback(EntityLivingBase target, EntityLivingBase attacker, double knockback_strength) { - // Calculate direction of knockback - double dx = attacker.posX - target.posX; - double dz = attacker.posZ - target.posZ; - - // Normalize the direction vector - double distance = Math.sqrt(dx * dx + dz * dz); - if (distance != 0) { - dx /= distance; - dz /= distance; - } - - // Apply knockback manually - target.motionX -= dx * knockback_strength; - target.motionZ -= dz * knockback_strength; - - // Ensure the motion is applied - target.velocityChanged = true; - } - - public static boolean isBadEnch(LOTREnchantment ench) { - if (ench == null) return false; - String ench_name = ench.enchantName; - if (badEnchants.contains(ench_name)) { - return true; - } - return false; - } - public static LOTREnchantment upgradeEnch(ItemStack item, LOTREnchantment ench) { - if (ench == null) return ench; - if (ench != LOTREnchantment.protect1) { - LOTREnchantment return_ench = upgradedEnchants.get(ench.enchantName); - if (return_ench == null) return_ench = ench; - return return_ench; - } - int armor_piece = ((ItemArmor)item.getItem()).armorType; - int prot = ((ItemArmor)item.getItem()).damageReduceAmount; - LOTREnchantment return_value = ench; - switch(armor_piece) { - case 0: - if (prot < 2) return_value = upgradedEnchants.get(ench.enchantName); - break; - case 1: - if (prot < 7) return_value = upgradedEnchants.get(ench.enchantName); - break; - case 2: - if (prot < 5) return_value = upgradedEnchants.get(ench.enchantName); - break; - case 3: - if (prot < 2) return_value = upgradedEnchants.get(ench.enchantName); - break; - default: - break; - } - return return_value; - } - public static boolean array_contains_array(T[] superarray, T[] subarray) { - for (T subobj : subarray) { - if (subobj == null || Arrays.stream(superarray).anyMatch(subobj::equals)) continue; - return false; - } - return true; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/util/VT_additions.java b/src (1)/main/java/com/zivilon/cinder_loe/util/VT_additions.java deleted file mode 100644 index cc34e81..0000000 --- a/src (1)/main/java/com/zivilon/cinder_loe/util/VT_additions.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.zivilon.cinder_loe.util; - -public class VT_additions { - public static String applyCustomPlaceholders(String scriptLine) { -/* scriptLine = scriptLine.replace("", String.valueOf(Nex.get_nex_phase())); - scriptLine = scriptLine.replace("", String.valueOf(Nex.get_nex_health()));*/ - return scriptLine; - } -} diff --git a/src (1)/main/resources/LICENSE b/src (1)/main/resources/LICENSE deleted file mode 100644 index e69de29..0000000 diff --git a/src (1)/main/resources/assets/cinder_loe/lang/en_GB.lang b/src (1)/main/resources/assets/cinder_loe/lang/en_GB.lang deleted file mode 100644 index 2b6899c..0000000 --- a/src (1)/main/resources/assets/cinder_loe/lang/en_GB.lang +++ /dev/null @@ -1,3 +0,0 @@ -item.lotr:sarumanStaff.name=Staff of Saruman of Many Colours -item.lotr:sarumanWhiteStaff.name=Staff of Saruman the White -item.lotr:boarArmorRedDwarf.name=Red Dwarven Boar Armour diff --git a/src (1)/main/resources/assets/cinder_loe/lang/en_US.lang b/src (1)/main/resources/assets/cinder_loe/lang/en_US.lang deleted file mode 100644 index 7f12bdb..0000000 --- a/src (1)/main/resources/assets/cinder_loe/lang/en_US.lang +++ /dev/null @@ -1,373 +0,0 @@ -tile.lotr:cinderBlock.name=Cinder Block -tile.lotr:ironChain.name=Iron Chain -tile.lotr:silverChain.name=Silver Chain -tile.lotr:goldChain.name=Gold Chain -tile.lotr:bronzeChain.name=Bronze Chain -tile.lotr:blockRedDwarfSteel.name=Red Dwarven Steel Block -tile.lotr:chandelierRedDwarf.name=Red Dwarven Chandelier -tile.lotr:barsRedDwarf.name=Red Dwarven Bars -tile.lotr:reedBale.name=Reed Bale -tile.lotr:leatherBundle.name=Leather Bundle -tile.lotr:furBundle.name=Fur Bundle -tile.lotr:dwarvenBrickRuned.name=Runed Dwarven Brick -tile.lotr:ivoryBlock.name=Ivory Block -tile.lotr:mistBlock.name=Mist -tile.lotr:fishbarrel.name=Barrel of Fish -tile.lotr:reeflessCoral.name=Cut Coral -tile.lotr:cutDrystone.name=Cut Drystone -tile.lotr:plaster.name=Plaster -tile.lotr:voidblock.name=Void -tile.lotr:cindercobble.0.name=Cobbled Drystone -tile.lotr:cindercobble.1.name=Cobbled Mordor Rock -tile.lotr:cindercobble.2.name=Silver Brick -tile.lotr:cindercobble.3.name=Silver Smallbrick -tile.lotr:enchantedIce.name=Enchanted Ice -tile.lotr:iceCage.name=Ice Cage -tile.forging_station.name=Forging Station -tile.lotr:woodpanel.name=Wood Panel - -tile.lotr:cinderfur.0.name=Brown Warg Fur Block -tile.lotr:cinderfur.1.name=Gray Warg Fur Block -tile.lotr:cinderfur.2.name=Black Warg Fur Block -tile.lotr:cinderfur.3.name=White Warg Fur Block -tile.lotr:cinderfur.4.name=Obsidian Warg Fur Block -tile.lotr:cinderfur.5.name=Black Bear Fur Block -tile.lotr:cinderfur.6.name=Brown Bear Fur Block -tile.lotr:cinderfur.7.name=Lion Fur Block -tile.lotr:cinderfur.8.name=Lioness Fur Block - -tile.lotr:cinderfurcarpet.0.name=Brown Warg Fur Carpet -tile.lotr:cinderfurcarpet.1.name=Gray Warg Fur Carpet -tile.lotr:cinderfurcarpet.2.name=Black Warg Fur Carpet -tile.lotr:cinderfurcarpet.3.name=White Warg Carpet -tile.lotr:cinderfurcarpet.4.name=Obsidian Warg Fur Carpet -tile.lotr:cinderfurcarpet.5.name=Black Bear Fur Carpet -tile.lotr:cinderfurcarpet.6.name=Brown Bear Fur Carpet -tile.lotr:cinderfurcarpet.7.name=Lion Fur Carpet -tile.lotr:cinderfurcarpet.8.name=Lioness Fur Carpet - -item.repair_kit.name=Repair Kit -item.upgrade_kit.name=Upgrade Kit -item.cinder_fur_item_0.name=Gray Warg Fur -item.cinder_fur_item_1.name=Black Warg Fur -item.cinder_fur_item_2.name=White Warg Fur -item.cinder_fur_item_3.name=Obsidian Warg Fur -item.cinder_fur_item_4.name=Black Bear Fur -item.cinder_fur_item_5.name=Brown Bear Fur -item.cinder_fur_item_6.name=Lioness Fur - -item.lotr:helmetJade.name=Jade Helmet -item.lotr:bodyJade.name=Jade Chestplate -item.lotr:legsJade.name=Jade Leggings -item.lotr:bootsJade.name=Jade Boots -item.lotr:helmetRhudaur.name=Rhudaur Helmet -item.lotr:bodyRhudaur.name=Rhudaur Chestplate -item.lotr:legsRhudaur.name=Rhudaur Leggings -item.lotr:bootsRhudaur.name=Rhudaur Boots - -item.lotr:helmetserpent.name=Serpent Hood -item.lotr:bodyserpent.name=Serpent Cloak -item.lotr:legsserpent.name=Serpent Leggings -item.lotr:bootsserpent.name=Serpent Boots -item.lotr:helmetUsurper.name=Usurper Helmet -item.lotr:bodyUsurper.name=Usurper Chestplate -item.lotr:legsUsurper.name=Usurper Leggings -item.lotr:bootsUsurper.name=Usurper Boots -item.lotr:helmetWarlord.name=Warlord Headdress -item.lotr:bodyWarlord.name=Warlord Chestplate -item.lotr:legsWarlord.name=Warlord Leggings -item.lotr:bootsWarlord.name=Warlord Boots -item.lotr:cleaver.name=Cleaver -item.lotr:spearUnnamed.name=Drannach Oriour -item.lotr:frostblade.name=Frostblade -item.lotr:whip.name=Whip -item.lotr:daggerVoid.name=Voidal Dagger -item.lotr:spearsolidgold.name=Solid Gold Spear -item.lotr:helmetRedDwarf.name=Red Dwarven Helmet -item.lotr:bodyRedDwarf.name=Red Dwarven Chestplate -item.lotr:legsRedDwarf.name=Red Dwarven Leggings -item.lotr:bootsRedDwarf.name=Red Dwarven Boots -item.lotr:redDwarfSteel.name=Red Dwarven Steel Ingot -item.lotr:spearRedDwarf.name=Red Dwarven Spear -item.lotr:swordRedDwarf.name=Red Dwarven Sword -item.lotr:battleaxeRedDwarf.name=Red Dwarven Battleaxe -item.lotr:pikeRedDwarf.name=Red Dwarven Pike -item.lotr:hammerRedDwarf.name=Red Dwarven Hammer -item.lotr:daggerRedDwarf.name=Red Dwarven Dagger -item.lotr:daggerRedDwarfPoisoned.name=Poisoned Red Dwarven Dagger -item.lotr:crossbowRedDwarf.name=Red Dwarven Crossbow -item.lotr:boarArmorRedDwarf.name=Red Dwarven Boar Armor - -item.lotr:radagastStaff.name=Staff of Radagast the Brown -item.lotr:pallandoStaff.name=Staff of Pallando the Blue -item.lotr:alatarStaff.name=Staff of Alatar the Blue -item.lotr:sarumanStaff.name=Staff of Saruman of Many Colors -item.lotr:sarumanWhiteStaff.name=Staff of Saruman the White - -item.lotr:welfRelic.name=Horn of the Greenwood Stag - -item.lotr:onion.name=Onion -item.lotr:cabbage.name=Cabbage -item.lotr:pelmen.name=Pelmeni -item.lotr:lightStew.name=Light Stew -item.lotr:spice.name=Spices -item.lotr:spicedHam.name=Spiced Ham -item.lotr:chocolatebar.name=Chocolate Bar -item.lotr:fruitsalad.name=Fruid Salad -item.lotr:flour.name=Flour -item.lotr:dough.name=Dough -item.lotr:pasta.name=Pasta -item.lotr:pretzel.name=Pretzel -item.lotr:halva.name=Halva -item.lotr:doner_kebab.name=Döner Kebab - -item.lotr:bonemold.name=Bonemold -item.lotr:helmetLimwaith.name=Limwaith Helmet -item.lotr:bodyLimwaith.name=Limwaith Chestplate -item.lotr:legsLimwaith.name=Limwaith Leggings -item.lotr:bootsLimwaith.name=Limwaith Boots -item.lotr:helmetboneLimwaith.name=Bonemold Helmet -item.lotr:bodyboneLimwaith.name=Bonemold Chestplate -item.lotr:legsboneLimwaith.name=Bonemold Leggings -item.lotr:bootsboneLimwaith.name=Bonemold Boots -item.lotr:spearLimwaith.name=Limwaith Spear -item.lotr:tridentLimwaith.name=Limwaith Trident -item.lotr:battleaxeLimwaith.name=Limwaith Battleaxe -item.lotr:truncheonLimwaith.name=Limwaith Truncheon -item.lotr:daggerLimwaith.name=Limwaith Dagger -item.lotr:daggerLimwaithPoisoned.name=Poisoned Limwaith Dagger -item.lotr:blowgunLimwaith.name=Limwaith Blowgun - -item.lotr:helmetBreeKettle.name=Bree-land Kettle Helmet -item.lotr:helmetBree.name=Bree-land Helmet -item.lotr:bodyBree.name=Bree-land Chestplate -item.lotr:legsBree.name=Bree-land Leggings -item.lotr:bootsBree.name=Bree-land Boots -item.lotr:swordBree.name=Bree-land Sword - -item.lotr:helmetArnorBanner.name=Arnorian Hood -item.lotr:bodyArnorBanner.name=Light Arnorian Chestplate -item.lotr:legsArnorBanner.name=Light Arnorian Leggings -item.lotr:bootsArnorBanner.name=Light Arnorian Boots -item.lotr:maceArnor.name=Arnorian Mace - -item.lotr:ingotAsh.name=Ashen Ingot -item.lotr:swordAsh.name=Ash-Forged Sword -item.lotr:staffAsh.name=Ash-Forged Bardiche -item.lotr:daggerAsh.name=Ash-Forged Dagger -item.lotr:hammerAsh.name=Ash-Forged Mace -item.lotr:battleaxeAsh.name=Ash-Forged Axe -item.lotr:bowAsh.name=Ash-Forged Bow -item.lotr:pikeAsh.name=Ash-Forged Pike -item.lotr:spearAsh.name=Ash-Forged Spear - -item.lotr:banner.redDwarf.name=Banner of the Orocani -item.lotr:banner.limwaith.name=Banner of the Limwaith -item.lotr:banner.red.name=Red Flag -item.lotr:banner.blue.name=Blue Flag -item.lotr:banner.green.name=Green Flag - -item.war_dart_headless.name=Headless Dart -item.war_dart_copper.name=Copper Dart -item.war_dart_bronze.name=Bronze Dart -item.war_dart_iron.name=Iron Dart -item.war_dart_orc.name=Orc Dart -item.war_dart_dwarven.name=Dwarven Dart -item.war_dart_uruk.name=Uruk Dart -item.war_dart_blue_dwarven.name=Blue Dwarven Dart -item.war_dart_black_uruk.name=Black Uruk Dart -item.war_dart_elven.name=Elven Dart -item.war_dart_gilded_iron.name=Gilded Iron Dart -item.war_dart_red_dwarven.name=Red Dwarven Dart -item.war_dart_mithril.name=Mithril Dart -item.war_dart_ancient.name=Ancient Dart -item.war_dart_morgul.name=Morgul Dart - -item.war_dart_heads_headless.name=??? Dart Heads -item.war_dart_heads_copper.name=Copper Dart Heads -item.war_dart_heads_bronze.name=Bronze Dart Heads -item.war_dart_heads_iron.name=Iron Dart Heads -item.war_dart_heads_orc.name=Orc Dart Heads -item.war_dart_heads_dwarven.name=Dwarven Dart Heads -item.war_dart_heads_uruk.name=Uruk Dart Heads -item.war_dart_heads_blue_dwarven.name=Blue Dwarven Dart Heads -item.war_dart_heads_black_uruk.name=Black Uruk Dart Heads -item.war_dart_heads_elven.name=Elven Dart Heads -item.war_dart_heads_gilded_iron.name=Gilded Iron Dart Heads -item.war_dart_heads_red_dwarven.name=Red Dwarven Dart Heads -item.war_dart_heads_mithril.name=Mithril Dart Heads -item.war_dart_heads_ancient.name=Ancient Dart Heads -item.war_dart_heads_morgul.name=Morgul Dart Heads - -item.lotr.toxicCore.name=Toxic Core -item.lotr:celeiniss.name=Celeiniss -lotr:nimveil.name=Nimveil -item.nimveil_gem.name=Nimveil Gem -item.nimveil_blade.name=Nimveil Blade -item.nimveil_hilt.name=Nimveil Hilt -item.blessed_hammer.name=Hammer of Aulendur -item.ice_thawer.name=Ice Thawer -item.deceiver_blade.name=Deceiver's Blade -item.anarore_bow.name=Anarórë's Bow -item.troll_chieftain_club.name=Troll Chieftain Club -item.glaechir_spear.name=Glaechír's Spear -item.deceiver_blade_blade.name=Cursed Blade -item.deceiver_blade_guard.name=Deceiver's Guard -item.deceiver_blade_hilt.name=Dark Hilt -item.anarore_bow_top.name=Anarórë's Bow Top -item.anarore_bow_bottom.name=Anarórë's Bow Bottom -item.anarore_bow_bowstring.name=Blessed Bowstring -item.troll_chieftain_club_club.name=Troll Club -item.troll_chieftain_club_spikes.name=Serrated Spikes -item.troll_chieftain_club_???.name=??? -item.glaechir_spear_tip.name=Fine Bronze Spear Tip -item.glaechir_spear_shaft.name=Heraldic Spear Shaft -item.glaechir_spear_???.name=??? - -item.lotr:helmetNexShadow=Ancient Shadow Hood -item.lotr:bodyNexShadow=Ancient Shadow Robe Top -item.lotr:legsNexShadow=Ancient Shadow Robe Bottom -item.lotr:bootsNexShadow=Ancient Shadow Boots -item.lotr:helmetNexToxic=Ancient Toxic Hood -item.lotr:bodyNexToxic=Ancient Toxic Robe Top -item.lotr:legsNexToxic=Ancient Toxic Robe Bottom -item.lotr:bootsNexToxic=Ancient Toxic Boots -item.lotr:helmetNexFire=Ancient Fire Hood -item.lotr:bodyNexFire=Ancient Fire Robe Top -item.lotr:legsNexFire=Ancient Fire Robe Bottom -item.lotr:bootsNexFire=Ancient Fire Boots -item.lotr:helmetNexIce=Ancient Ice Hood -item.lotr:bodyNexIce=Ancient Ice Robe Top -item.lotr:legsNexIce=Ancient Ice Robe Bottom -item.lotr:bootsNexIce=Ancient Ice Boots - -item.spawn_egg_FangornAuroch.name=Spawn Fangorn Auroch -item.spawn_egg_FangornBear.name=Spawn Fangorn Bear -item.spawn_egg_FangornWildBoar.name=Spawn Fangorn Wild Boar -item.spawn_egg_FangornElk.name=Spawn Fangorn Elk -item.spawn_egg_FangornWolf.name=Spawn Fangorn Wolf -item.spawn_egg_RedDwarfWarrior.name=Spawn Red Dwarf Warrior -item.spawn_egg_RedDwarfArbalest.name=Spawn Red Dwarf Arbalest -item.spawn_egg_RedDwarfBannerBearer.name=Spawn Red Dwarf Banner Bearer -item.spawn_egg_RedDwarfCommander.name=Spawn Red Dwarf Commander -item.spawn_egg_RedDwarfSmith.name=Red Dwarven Smith -item.spawn_egg_LimwaithWarrior.name=Spawn Limwaith Clansman -item.spawn_egg_LimwaithBlowgunner.name=Spawn Limwaith Blowgunner -item.spawn_egg_LimwaithBannerBearer.name=Spawn Limwaith Banner Bearer -item.spawn_egg_LimwaithChieftain.name=Spawn Limwaith Chieftain -item.spawn_egg_Renegade.name=Spawn Renegade -item.spawn_egg_RenegadeCaptain.name=Spawn Renegade Captain -item.spawn_egg_Wraith.name=Spawn Wraith -item.spawn_egg_LOTREntitySauron.name=Spawn Sauron -item.spawn_egg_ArnorSoldier.name=Spawn Arnorian Soldier -item.spawn_egg_ArnorSoldierArcher.name=Spawn Arnorian Archer -item.spawn_egg_ArnorCaptain.name=Spawn Arnorian Captain -item.spawn_egg_ArnorBannerBearer.name=Spawn Arnorian Banner Bearer -item.spawn_egg_BattleNun.name=Spawn Keeper of the Elendilmir -item.spawn_egg_BreeSoldier.name=Spawn Bree-Land Soldier -item.spawn_egg_BreeCrossbowman.name=Spawn Bree-Land Crossbowman -item.spawn_egg_BreeCaptain.name=Spawn Bree-Land Captain -item.spawn_egg_BreeSoldierBannerBearer.name=Spawn Bree-Land Bannerbearer -item.spawn_egg_BreeOutrider.name=Spawn Bree-Land Outrider -item.spawn_egg_UtumnoSlaveTrader.name=Spawn Utumno Slave -item.spawn_egg_Limwaith.name=Spawn Limwaith -item.spawn_egg_LimwaithShaman.name=Spawn Limwaith Shaman -item.spawn_egg_LimwaithFishmonger.name=Spawn Limwaith Fishmonger -item.spawn_egg_LimwaithBoneWarrior.name=Spawn Limwaith Warrior -item.spawn_egg_DarkSpider.name=Spawn Dark Spider -item.spawn_egg_BladorthinSmith.name=Spawn Bladorthin Smith - -entity.cinder_loe.DarkSpider.name=Dark Spider -entity.cinder_loe.CorruptMan.name=Corrupt Man -entity.cinder_loe.CorruptDwarf.name=Corrupt Dwarf -entity.cinder_loe.CorruptElf.name=Corrupt Elf -entity.cinder_loe.CorruptEnt.name=Corrupt Ent -entity.cinder_loe.CorruptHobit.name=Corrupt Hobbit -entity.cinder_loe.CorruptOrc.name=Corrupt Orc -entity.cinder_loe.CorruptSkeleton.name=Restless Undead -entity.cinder_loe.CorruptSkeletonArcher.name=Restless Undead - -entity.cinder_loe.BladorthinSmith.name=Bladorthin Smith - -entity.cinder_loe.RedDwarfSmith.name=Red Dwarf Smith -entity.cinder_loe.RedDwarfWarrior.name=Red Dwarf Warrior -entity.cinder_loe.RedDwarfArbalest.name=Red Dwarf Arbalest -entity.cinder_loe.RedDwarfBannerBearer.name=Red Dwarf Banner Bearer -entity.cinder_loe.RedDwarfCommander.name=Red Dwarf Commander -entity.cinder_loe.Limwaith.name=Limwaith -entity.cinder_loe.LimwaithFishmonger.name=Limwaith Fisherman -entity.cinder_loe.LimwaithShaman.name=Limwaith Shaman -entity.cinder_loe.LimwaithWarrior.name=Limwaith Clansman -entity.cinder_loe.LimwaithBoneWarrior.name=Limwaith Warrior -entity.cinder_loe.LimwaithBlowgunner.name=Limwaith Blowgunner -entity.cinder_loe.LimwaithBannerBearer.name=Limwaith Banner Bearer -entity.cinder_loe.LimwaithChieftain.name=Limwaith Chieftain -entity.cinder_loe.Renegade.entityName=%s the Renegade -entity.cinder_loe.RenegadeCaptain.name=Renegade Captain -entity.cinder_loe.FangornBear.name=Bear -entity.cinder_loe.FangornElk.name=Elk -entity.cinder_loe.FangornAuroch.name=Auroch -entity.cinder_loe.FangornWildBoar.name=Wild Boar -entity.cinder_loe.FangornWolf.name=Wolf -lotr.unit.RedDwarfWarrior_Boar=Boar Rider -lotr.unit.RedDwarfArbalest_Boar=Boar Arbalest Rider -entity.cinder_loe.ArnorSoldier.name=Arnorian Soldier -entity.cinder_loe.ArnorSoldierArcher.name=Arnorian Archer -entity.cinder_loe.ArnorBannerBearer.name=Arnorian Banner Bearer -entity.cinder_loe.ArnorCaptain.name=Captain of Arnor -entity.cinder_loe.BattleNun.name=Keeper of the Elendilmir -lotr.unit.Arnor_Horse=Arnorian Knight -entity.cinder_loe.BreeSoldier.name=Bree-land Soldier -entity.cinder_loe.BreeOutrider.name=Bree-land Outrider -entity.cinder_loe.BreeCrossbowman.name=Bree-land Crossbowman -entity.cinder_loe.BreeSoldierBannerBearer.name=Bree-land Banner Bearer -entity.cinder_loe.BreeCaptain.name=Bree-land Captain -lotr.unit.Bree_Horse=Bree-land Outrider -entity.cinder_loe.LOTREntitySauron.name=Sauron -entity.cinder_loe.UtumnoSlaveTrader.bound.name=Slave Mule -entity.cinder_loe.UtumnoSlaveTrader.name=Freed Utumno Trader -entity.cinder_loe.HobbitBannerBearer.name=Hobbit Banner Bearer -entity.cinder_loe.MorgulOrc.name=Minas Morgul Orc -entity.cinder_loe.EsgarothSoldier.name=Esgarothi Soldier -entity.cinder_loe.RhudaurSoldier.name=Rhudaur Soldier -entity.cinder_loe.TauredainTrueBlood.name=Taurethrim True-Blood -entity.cinder_loe.Sirrandrai.name=Rider of Sirrandrai -entity.cinder_loe.NorthernOrc.name=Northern Orc - -lotr.enchant.protectWeak1=Dented -lotr.enchant.protectWeak2=Defective -lotr.enchant.protectRangedWeak1=Punctured -lotr.enchant.protectRangedWeak2=Pierced -lotr.enchant.weak4=Bent -lotr.enchant.rangedWeak3=Cracked -lotr.enchant.strong5=Infused -lotr.enchant.meleeReach2=Lengthy -lotr.enchant.meleeSpeed2=Rapid -lotr.enchant.rangedStrong4=Forceful -lotr.enchant.fireRepair=Ashen -lotr.enchant.fireRepair.desc=Repairs armor durability while on fire -lotr.enchant.swiftness=Windy -lotr.enchant.swiftness.desc=+5% speed per armor piece - -lotr.unit.Banner_Warg=Warg Rider Banner -lotr.unit.Banner_Horse=Mounted Banner Bearer -lotr.unit.TestMob=Test Mob -lotr.unit.Sirrandrai=Rider of Sirrandrai - - -lotr.unitinfo.Angmar=To Hire this unit you must have the Angmar Objective complete. -lotr.unitinfo.Arnor=To Hire this unit you must have the Arnor Objective complete. -lotr.unitinfo.Rhudaur=To Hire this unit you must have the Rhudaur Objective complete. -lotr.unitinfo.Dale=To Hire this unit you must have the Dalish Objective complete. -lotr.unitinfo.Lindon=To Hire this unit you must have the Lindon Objective complete. - -warband.found=Warband of %s has been found %s of %s -warband.fac.MORGUL_VALE=Morgul Vale -warband.fac.WOOD_ELF_SCOUT=Woodland Realm scouts -warband.fac.RED_MOUNTAINS=Red Mountains -warband.fac.RHUDEL_GOLDEN=Golden Easterlings -warband.fac.LIMWAITH=Limwaith -warband.fac.RENEGADE=renegades - -pickpocket.cooldown=You need to wait before pickpocketing again. -pickpocket.cooldown_alt=Maybe get your hands out of his pants first. diff --git a/src (1)/main/resources/assets/cinder_loe/misc/particles.png b/src (1)/main/resources/assets/cinder_loe/misc/particles.png deleted file mode 100644 index 4c77142..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/misc/particles.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/arnorNun/arnorNun_female/0.png b/src (1)/main/resources/assets/cinder_loe/mob/arnorNun/arnorNun_female/0.png deleted file mode 100644 index 90a331b..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/arnorNun/arnorNun_female/0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/dwarf/0.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/dwarf/0.png deleted file mode 100644 index c9399b3..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/dwarf/0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/dwarf/1.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/dwarf/1.png deleted file mode 100644 index 634e017..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/dwarf/1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/elf_female/0.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/elf_female/0.png deleted file mode 100644 index f253d46..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/elf_female/0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/elf_female/1.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/elf_female/1.png deleted file mode 100644 index e7b78d6..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/elf_female/1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/elf_female/2.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/elf_female/2.png deleted file mode 100644 index a9264b4..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/elf_female/2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/elf_male/0.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/elf_male/0.png deleted file mode 100644 index 3bc81be..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/elf_male/0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/elf_male/1.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/elf_male/1.png deleted file mode 100644 index 7f3f0b9..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/elf_male/1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/elf_male/2.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/elf_male/2.png deleted file mode 100644 index a854dcb..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/elf_male/2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/ent/beech.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/ent/beech.png deleted file mode 100644 index 423d411..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/ent/beech.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/ent/birch.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/ent/birch.png deleted file mode 100644 index e3d5a56..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/ent/birch.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/ent/oak.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/ent/oak.png deleted file mode 100644 index 0f0b368..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/ent/oak.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/hobbit_female/0.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/hobbit_female/0.png deleted file mode 100644 index eb60cd3..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/hobbit_female/0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/hobbit_female/1.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/hobbit_female/1.png deleted file mode 100644 index dd3c554..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/hobbit_female/1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/hobbit_male/0.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/hobbit_male/0.png deleted file mode 100644 index 35bec49..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/hobbit_male/0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/hobbit_male/1.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/hobbit_male/1.png deleted file mode 100644 index 7da29df..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/hobbit_male/1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_female/0.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_female/0.png deleted file mode 100644 index 306b75d..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_female/0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_female/1.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_female/1.png deleted file mode 100644 index 92b57cb..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_female/1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_female/2.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_female/2.png deleted file mode 100644 index 480279d..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_female/2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_male/0.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_male/0.png deleted file mode 100644 index 7d3734c..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_male/0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_male/1.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_male/1.png deleted file mode 100644 index 3b5b3ad..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_male/1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_male/2.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_male/2.png deleted file mode 100644 index 23acbcb..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_male/2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_male/3.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_male/3.png deleted file mode 100644 index 64aa1b4..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/human_male/3.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/orc/0.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/orc/0.png deleted file mode 100644 index 8c52f50..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/orc/0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/orc/1.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/orc/1.png deleted file mode 100644 index 88ea719..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/orc/1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/orc/2.png b/src (1)/main/resources/assets/cinder_loe/mob/corrupt/orc/2.png deleted file mode 100644 index 67a5b60..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/corrupt/orc/2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/green.png b/src (1)/main/resources/assets/cinder_loe/mob/green.png deleted file mode 100644 index afd0c26..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/green.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/halfTroll/halfTroll/0.png b/src (1)/main/resources/assets/cinder_loe/mob/halfTroll/halfTroll/0.png deleted file mode 100644 index d3f354c..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/halfTroll/halfTroll/0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/halfTroll/halfTroll/1.png b/src (1)/main/resources/assets/cinder_loe/mob/halfTroll/halfTroll/1.png deleted file mode 100644 index edc4568..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/halfTroll/halfTroll/1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/halfTroll/halfTroll/2.png b/src (1)/main/resources/assets/cinder_loe/mob/halfTroll/halfTroll/2.png deleted file mode 100644 index 877e6c8..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/halfTroll/halfTroll/2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/halfTroll/half_troll_1.png b/src (1)/main/resources/assets/cinder_loe/mob/halfTroll/half_troll_1.png deleted file mode 100644 index 3019647..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/halfTroll/half_troll_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/halfTroll/half_troll_2.png b/src (1)/main/resources/assets/cinder_loe/mob/halfTroll/half_troll_2.png deleted file mode 100644 index e43aa12..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/halfTroll/half_troll_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/halfTroll/scavenger.png b/src (1)/main/resources/assets/cinder_loe/mob/halfTroll/scavenger.png deleted file mode 100644 index ab48769..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/halfTroll/scavenger.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_female/0.png b/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_female/0.png deleted file mode 100644 index db405db..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_female/0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_female/1.png b/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_female/1.png deleted file mode 100644 index 2439ab5..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_female/1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_female/2.png b/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_female/2.png deleted file mode 100644 index e6f4144..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_female/2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_male/0.png b/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_male/0.png deleted file mode 100644 index b02b20c..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_male/0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_male/1.png b/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_male/1.png deleted file mode 100644 index 326a144..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_male/1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_male/2.png b/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_male/2.png deleted file mode 100644 index 7008447..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_male/2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_male/3.png b/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_male/3.png deleted file mode 100644 index ef8ce6d..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/limwaith/limwaith_male/3.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/limwaith/shaman_outfit/0.png b/src (1)/main/resources/assets/cinder_loe/mob/limwaith/shaman_outfit/0.png deleted file mode 100644 index 0701de5..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/limwaith/shaman_outfit/0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/nex/fire.png b/src (1)/main/resources/assets/cinder_loe/mob/nex/fire.png deleted file mode 100644 index f3837fc..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/nex/fire.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/nex/ice.png b/src (1)/main/resources/assets/cinder_loe/mob/nex/ice.png deleted file mode 100644 index aa7762c..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/nex/ice.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/nex/shadow.png b/src (1)/main/resources/assets/cinder_loe/mob/nex/shadow.png deleted file mode 100644 index 7c7f175..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/nex/shadow.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/nex/toxin.png b/src (1)/main/resources/assets/cinder_loe/mob/nex/toxin.png deleted file mode 100644 index 8bf70d8..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/nex/toxin.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/headwear_female/0.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/headwear_female/0.png deleted file mode 100644 index e13c741..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/headwear_female/0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/0.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/0.png deleted file mode 100644 index 6428958..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/1.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/1.png deleted file mode 100644 index e116169..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/2.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/2.png deleted file mode 100644 index d4bedf3..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/3.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/3.png deleted file mode 100644 index f442b73..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/3.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/4.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/4.png deleted file mode 100644 index 2807638..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/4.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/5.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/5.png deleted file mode 100644 index 8714484..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/5.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/6.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/6.png deleted file mode 100644 index ab8815a..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/6.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/7.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/7.png deleted file mode 100644 index c623dba..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_female/7.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/0.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/0.png deleted file mode 100644 index 775d84f..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/1.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/1.png deleted file mode 100644 index dfd0311..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/10.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/10.png deleted file mode 100644 index ed4ebef..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/10.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/11.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/11.png deleted file mode 100644 index 6a47a16..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/11.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/12.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/12.png deleted file mode 100644 index 6b8abbd..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/12.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/13.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/13.png deleted file mode 100644 index 9577f8e..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/13.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/2.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/2.png deleted file mode 100644 index f3ca034..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/3.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/3.png deleted file mode 100644 index 9d462c2..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/3.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/4.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/4.png deleted file mode 100644 index 848293f..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/4.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/5.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/5.png deleted file mode 100644 index c6dca42..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/5.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/6.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/6.png deleted file mode 100644 index 795a45c..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/6.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/7.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/7.png deleted file mode 100644 index 256ac7f..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/7.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/8.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/8.png deleted file mode 100644 index 02a3f2d..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/8.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/9.png b/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/9.png deleted file mode 100644 index c98b746..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/renegade/renegade_male/9.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/spider/spider_dark.png b/src (1)/main/resources/assets/cinder_loe/mob/spider/spider_dark.png deleted file mode 100644 index 4f70135..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/spider/spider_dark.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/mob/wraith/wraith.png b/src (1)/main/resources/assets/cinder_loe/mob/wraith/wraith.png deleted file mode 100644 index 3276887..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/mob/wraith/wraith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/sounds.json b/src (1)/main/resources/assets/cinder_loe/sounds.json deleted file mode 100644 index 92c1501..0000000 --- a/src (1)/main/resources/assets/cinder_loe/sounds.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "boss.Battle": - { - "category": "neutral", - "sounds": - [ - "boss/battle" - ] - }, - "boss.Battle2": - { - "category": "neutral", - "sounds": - [ - "boss/combat" - ] - }, - "boss.Victory": - { - "category": "neutral", - "sounds": - [ - "boss/victory" - ] - }, - "boss.Spiders": - { - "category": "neutral", - "sounds": - [ - "boss/spiders" - ] - } -} diff --git a/src (1)/main/resources/assets/cinder_loe/sounds/boss/battle.ogg b/src (1)/main/resources/assets/cinder_loe/sounds/boss/battle.ogg deleted file mode 100644 index da8aeb5..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/sounds/boss/battle.ogg and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/sounds/boss/combat.ogg b/src (1)/main/resources/assets/cinder_loe/sounds/boss/combat.ogg deleted file mode 100644 index 0a78d53..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/sounds/boss/combat.ogg and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/sounds/boss/spiders.ogg b/src (1)/main/resources/assets/cinder_loe/sounds/boss/spiders.ogg deleted file mode 100644 index 803ceb9..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/sounds/boss/spiders.ogg and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/sounds/boss/victory.ogg b/src (1)/main/resources/assets/cinder_loe/sounds/boss/victory.ogg deleted file mode 100644 index 0201b86..0000000 Binary files a/src (1)/main/resources/assets/cinder_loe/sounds/boss/victory.ogg and /dev/null differ diff --git a/src (1)/main/resources/assets/cinder_loe/speech/arnorSoldier/captain/friendly.txt b/src (1)/main/resources/assets/cinder_loe/speech/arnorSoldier/captain/friendly.txt deleted file mode 100644 index b89983a..0000000 --- a/src (1)/main/resources/assets/cinder_loe/speech/arnorSoldier/captain/friendly.txt +++ /dev/null @@ -1,11 +0,0 @@ -Do you seek to command the Dúnedain of the North, friend #? -These Dúnedain will follow your leadership for a small price, #. -Bring some silver coins and you can have some soldiers under your command. -Are you here with the intention of hiring Rangers of the North? -I can grant you the leadership of some excellent Dúnedain Soldiers in return for silver coins. -The Rangers of the North now respect you enough to follow your command, #. -The men of Arnor only follow good and valiant Men into battle. You are worthy to lead us. -My men are the finest warriors in all of the North! -I will give you some of my men for a dozen silver coins. -Such great warriors as my men do not fight for nothing, #! They require payment. -You are worthy enough to command my valiant Soldiers. \ No newline at end of file diff --git a/src (1)/main/resources/assets/cinder_loe/speech/arnorSoldier/captain/neutral.txt b/src (1)/main/resources/assets/cinder_loe/speech/arnorSoldier/captain/neutral.txt deleted file mode 100644 index 5d7c7e4..0000000 --- a/src (1)/main/resources/assets/cinder_loe/speech/arnorSoldier/captain/neutral.txt +++ /dev/null @@ -1,12 +0,0 @@ -Only the strongest friends of the Dúnedain may fight with us in battle, #. -If you wish to captain the warriors of Arnor, you must prove your trust. -Are you friend or foe, #? -They say you are a friend of the Dúnedain, but I cannot be sure until you have done more good. -One does not simply command the men of Arnor without gaining some reputation first. -You are not yet thought of highly enough to fight with my warriors in battle, #. -Show us that you can be trusted, #, and we will fight alongside you. -You will have to prove yourself to our kin, if you wish to command some of our mighty warriors. -We Dúnedain do not follow any stranger into battle. You will have to prove that you truly fight for good in this world. -Prove your allegiance to us, and we shall ally with you. -You must prove yourself worthy first, if you wish to lead us to battle. -Only a true friend of our folk may lead us against the servants of evil. \ No newline at end of file diff --git a/src (1)/main/resources/assets/cinder_loe/speech/arnorSoldier/soldier/friendly.txt b/src (1)/main/resources/assets/cinder_loe/speech/arnorSoldier/soldier/friendly.txt deleted file mode 100644 index 505b7d7..0000000 --- a/src (1)/main/resources/assets/cinder_loe/speech/arnorSoldier/soldier/friendly.txt +++ /dev/null @@ -1,23 +0,0 @@ -Long have we guarded these lands, #. -We Arnorians have watched over these lands for generations lost to memory. -What brings you to this wilderness, #? -May your journey be swift and your cloak warm, #. -By nightfall this land will be crawling with Orcs. -Be on your guard, #. There are many enemies in these parts. -Good day, #. From which land do you hail? -Keep a safe camp at night, and stay out of the shadows. -It is not for nothing that we watch these lands, #. Many foul beasts nest here. -We Arnorians remember the ancient lore of the West. We have ways to walk unseen. -These lands are my domain, #, and I do all in my power to safeguard them. -Beware the wretched Morgul-scum that crawls out at night, #. -The wolf that one hears is worse than the Orc that one fears. -Were it not for us, these lands would have fallen to the darkness long ago. -Many of the folk that dwell here consider us bandits and outcasts. They do not know our true duties. -My kin has long guarded these lands from the dangers that lie to the North. -Be wary, #. Many new dangers have arisen in these dark days. -As long as we watch over these lands, travellers such as you will be able to journey in peace, #. -Lonely folk are we, Soldiers of the North, guardians - but ever guarding against the servants of the Enemy. -The servants of the Enemy are found in many places, not in Mordor only. -Beware of the ancient wights and shades that roam this land, #. It is said they can take over your body. -In time of need, we will ride to the aid of Isildur's heir. -Our homes, such as we have, are here in the North. \ No newline at end of file diff --git a/src (1)/main/resources/assets/cinder_loe/speech/arnorSoldier/soldier/hired.txt b/src (1)/main/resources/assets/cinder_loe/speech/arnorSoldier/soldier/hired.txt deleted file mode 100644 index ef5f61b..0000000 --- a/src (1)/main/resources/assets/cinder_loe/speech/arnorSoldier/soldier/hired.txt +++ /dev/null @@ -1,15 +0,0 @@ -My duty is to my captain # and the lands over which I stand guard. -The Morgul-filth of the night shall perish before us! -I have sworn to defend the lands of the free peoples, and defend them I shall! -May your journey be swift and your cloak warm, captain #. -By nightfall this land will be crawling with Orcs. -Be on your guard, captain #. There are many enemies in these parts. -Long have we guarded these lands, captain #. -We Soldiers have watched over these lands for generations lost to memory. -We Soldiers remember the ancient lore of the West. -The wolf that one hears is worse than the Orc that one fears. -My kin have long guarded these lands. -I will follow you wherever you go! -I have ways to move unseen in the shadows. -Let's hunt some Orc! -Be on your guard, captain #. There are keylimes lurking, waiting to nerf. \ No newline at end of file diff --git a/src (1)/main/resources/assets/cinder_loe/speech/arnorSoldier/soldier/hostile.txt b/src (1)/main/resources/assets/cinder_loe/speech/arnorSoldier/soldier/hostile.txt deleted file mode 100644 index fb46e82..0000000 --- a/src (1)/main/resources/assets/cinder_loe/speech/arnorSoldier/soldier/hostile.txt +++ /dev/null @@ -1,16 +0,0 @@ -Your death shall come swift as the arrow that pierces flesh, #! -I shall make an end of you! -You are not welcome in these lands, #! -Flee our lands, you wretched ally of the Morgul-filth! -You are an enemy of the race of Men, #! -What madness led you here? -Crawl back into the night, #! -You thought you could match our skill? You are sorely mistaken! -When did # forsake reason for madness? -Your doom approaches, #! -Do not underestimate the Kingdom of Arnor. -Go back to the darkness whence you came! -What devilry of the Dark Lord do you bring here? -Begone from these lands! -You shall meet your doom swiftly, scum of Mordor! -I will not allow you to harm the free folk of these lands! \ No newline at end of file diff --git a/src (1)/main/resources/assets/cinder_loe/speech/corruptSpeak/all/hostile.txt b/src (1)/main/resources/assets/cinder_loe/speech/corruptSpeak/all/hostile.txt deleted file mode 100644 index 3154ef4..0000000 --- a/src (1)/main/resources/assets/cinder_loe/speech/corruptSpeak/all/hostile.txt +++ /dev/null @@ -1,10 +0,0 @@ -Bow before the dark! -Beg for your gods to save you! -Stay back, or I'll be forced to attack you! -I don't have any choice! I'm Sorry! -I don't want to do this! -Soon you will know the cold of death... -The darkness consumes all... -You will serve in death... -You cannot escape the void... -Submit... that is the only option... \ No newline at end of file diff --git a/src (1)/main/resources/assets/cinder_loe/speech/corruptSpeak/all/neutral.txt b/src (1)/main/resources/assets/cinder_loe/speech/corruptSpeak/all/neutral.txt deleted file mode 100644 index 77f5e8a..0000000 --- a/src (1)/main/resources/assets/cinder_loe/speech/corruptSpeak/all/neutral.txt +++ /dev/null @@ -1,10 +0,0 @@ -Serve the darkness, obey the master. -The endless darkness creeps for us all... -In shadows, we find our purpose. -We are one with the void. -Our will is bound, our souls are lost. -The master commands, we obey. -Our minds are bound, our spirits broken. -The light fades, the dark remains. -No thoughts of our own, only the master's will. - diff --git a/src (1)/main/resources/assets/cinder_loe/speech/corruptSpeak/all/skeleton.txt b/src (1)/main/resources/assets/cinder_loe/speech/corruptSpeak/all/skeleton.txt deleted file mode 100644 index 7e1f2d3..0000000 --- a/src (1)/main/resources/assets/cinder_loe/speech/corruptSpeak/all/skeleton.txt +++ /dev/null @@ -1,6 +0,0 @@ -ᛒᛟᚹ ᛒᛖᚠᛟᚱᛖ ᚦᛖ ᛞᛖᛞ! -ᛒᛖᚷ ᚠᛟᚱ ᛗᛖᚱᚲᛁ! -ᛖᛏᛖᚱᚾᚨᛚ ᛈᚨᛁᚾ ᚢᛈᛟᚾ ᛁᛟᚢ! -ᛞᛖᚦ ᚢᛈᛟᚾ ᛁᛟᚢ! -ᛈᚨᛁᚾ, ᛊᚺᚨᛗᛖ, ᚺᛟᚱᚱᛟᚱ ᛏᛟ ᛁᛟᚢ! -ᛞᚱᛟᚹᚾ ᛁᚾ ᛒᛚᛟᛟᛞ ᛊᛚᚨᚢᛖ! \ No newline at end of file diff --git a/src (1)/main/resources/assets/cinder_loe/speech/limwaith/chieftain/friendly.txt b/src (1)/main/resources/assets/cinder_loe/speech/limwaith/chieftain/friendly.txt deleted file mode 100644 index 6ce35d7..0000000 --- a/src (1)/main/resources/assets/cinder_loe/speech/limwaith/chieftain/friendly.txt +++ /dev/null @@ -1,25 +0,0 @@ -Do you seek my noble company, #? -You are indeed a brave warrior! -Let us share tales of war together! -You are indeed a Man of great bravery, #! -The Forest-Men have been cowering from you! -You come to hire my men? I have plenty of fierce warriors, #. -#! Have you been fighting in the North? -I hope the Forest-Men speak our names in fear, #! -The stars in the North make me dizzy. Have you felt this too? -The Great Sunken ones finds you worthy to lead my men, #. -Men wait to be led to their glory by you, #! -The finest warriors cost a pretty penny! -Even Jungle-blood does not buy an honourable warrior! I hope you come with money! -My men would be proud to serve under your banner. -Many fine tribesmen have fallen in battle and met the Great sunken ones. Many more would meet him for you! -Your blade speaks finer than the sharp sides of the sea! -Do you come from the tides, #? -For only a small commission my men will slice the throats of your enemies. -An enemy of my enemy is my friend! -I sell no ordinary warriors! -I hear tell of tall Men in the far south. I fear they may be trouble. -My warriors can be your warriors, #! -My warriors are better than anything the snake-men can muster! -The Great Sunken ones sleep beneath the tides... -My warriors would serve you bravely! \ No newline at end of file diff --git a/src (1)/main/resources/assets/cinder_loe/speech/limwaith/chieftain/neutral.txt b/src (1)/main/resources/assets/cinder_loe/speech/limwaith/chieftain/neutral.txt deleted file mode 100644 index a0fdf90..0000000 --- a/src (1)/main/resources/assets/cinder_loe/speech/limwaith/chieftain/neutral.txt +++ /dev/null @@ -1,22 +0,0 @@ -My honour is proven. Do you wish to prove yours, #? -You wish to control my men? Prove your valour! -You are not yet worthy of mango. May you become so. -My men serve no commoner, #! -My men slaughter Forest-Men every day! -Who are you? I am from ancient Greece! -#? What a common name! -The best animal to hunt is Forest-Man! -Fish have more bravery than you, #. Prove your worth! -Your blade has not yet tasted Forest-Man, #. -I am a proven warrior. What are you? -The Sunken ones will soon notice my name! -Mangoes are the fruit of true warlords! -I have seen the Sunken Ones with my own eyes! -You must work harder for your rewards, #. -Soon my turn will come to see the Sunken Ones. -I have others more worthy of my time. -I wish to speak to honourable Men. Move out of my way, #! -Us Men of the Sea deserve more Men like me! -I do certainly desire to consume a mango. -The only Men you will lead are the banana-collectors, #. -Return with the lives of enemies upon your sword! \ No newline at end of file diff --git a/src (1)/main/resources/assets/cinder_loe/speech/limwaith/moredain/friendly.txt b/src (1)/main/resources/assets/cinder_loe/speech/limwaith/moredain/friendly.txt deleted file mode 100644 index 2ba88a5..0000000 --- a/src (1)/main/resources/assets/cinder_loe/speech/limwaith/moredain/friendly.txt +++ /dev/null @@ -1,37 +0,0 @@ -The filthy Forest-Men hide in their trees. So we chop them down. -The fruits of our land are sweeter even than the wines of the Snake-Men! -War makes men! -At night the Sunken Ones prowl the waters. Make sure you are safe, #. -#! Do you come to bring tidings of the war? -They may appear brave, but even our leaders fear the Sunken Ones. -May the Sunken Ones never devour your offspring! -The banner of our men stands stronger than ever. -Do you seek meat or merriment, #? -Have you seen the North, #? They say the stars are strange there. -A true warrior has the blood of the a Sea Serpent! -Gold and meat. What more do I need? -My dagger has pierced many a Forest-Man. -The Men of the Forests have the strength of a twig, the pride of a mango, and the wits of a Troll-Man! -The stars foretell death. -War is imminent. I shall finally be able to prove my strength! -The Forest-Men will fall to our warriors soon! -#, have you come to listen to my brave deeds? -My blade will stain the forest red! -If you want to kill Forest-Men, #, then join me, friend! -Our chieftains say that we must fight alongside the Troll-Men in the great war. -Beware the Troll-Men, #. They are demons in the form of Men. -The Troll-Men may march with us in the war to come, but I fear and hate them no less for this. -As long as we can remember, the Troll-Men have raided our villages and murdered our people. And now we must fight alongside them? I do not like this, #. -In the deep past, our chieftains led us out of the Shadow into the Sunlands. Now I fear the Shadow is falling upon us once more. -The tribes of the great forests have long been our enemies. -I know little of the Men in the North, but our chieftains say we must march to war against them. So we shall. -We will be slaves to the Forests no longer! -Merchants from the lands of the serpent often visit our tribe. Pay them no heed. They carry useless trinkets. -Some of my people have gone to fight for the Serpent, for silver. Honourless, I call them. -King or slave, brave or weak, old or young... in time, the Sunken Ones will drown us all. -The Serpent cannot swim, the Lion is a cat that fears water, true power is with the Sunken Ones -The Sunken Ones wait deep below, beyond the light. They wait for the end, #. -The Plains-Men are proud, #. But they forget, the Waters will soon drown us all. -Beware the forests, #. Wicked Men lurk within. -Long ago, the Forest-Men made war against our people. We do not forget. -Praise the great Eye, #! He has made an end to the Troll-Men raids! \ No newline at end of file diff --git a/src (1)/main/resources/assets/cinder_loe/speech/limwaith/moredain/hired.txt b/src (1)/main/resources/assets/cinder_loe/speech/limwaith/moredain/hired.txt deleted file mode 100644 index d8f6958..0000000 --- a/src (1)/main/resources/assets/cinder_loe/speech/limwaith/moredain/hired.txt +++ /dev/null @@ -1,24 +0,0 @@ -If I die fighting, my family shall be proud! -May the Sunken Ones bless our weapons! -#, do we stop for meat? -I can finally prove myself in battle! -The wind holds tidings of war. -I hope one day to return to my tribe. -My feet are sore, #. -Are we to fight for the flaming Eye? -It would take a lake to quench my thirst! -You fight like a lord, #. -I have hunted zebra and crocodile. One day I shall hunt Forest-Man! -It is merely a flesh wound. -I smell battle! -My children shall be big when I return! -When a man dies, his soul meets the Sunken Ones. Some day I too will meet them. -I have trained for many a day in the heat of the plains. -Some fruit and Snake-Man water would be a blessing! -The flaming Eye fills me with fear, #. -A banana is always welcome on my plate! -#, where are we headed today? -#! Please don't put me on guard duty again! -I know no fear! -Filthy Forest-Men fear my name! -Time for drinking! \ No newline at end of file diff --git a/src (1)/main/resources/assets/cinder_loe/speech/limwaith/moredain/hostile.txt b/src (1)/main/resources/assets/cinder_loe/speech/limwaith/moredain/hostile.txt deleted file mode 100644 index 7692b03..0000000 --- a/src (1)/main/resources/assets/cinder_loe/speech/limwaith/moredain/hostile.txt +++ /dev/null @@ -1,23 +0,0 @@ -The Sunken Ones will drown your soul, #! -Flee, coward! -May you never taste mango again! -The flaming Eye will destroy you! -Did the Forest-Men send you? -#, your name will be lost to the tides! -Another soul for my blade to feed on! -An enemy of the tribes has no friends in these lands! -Go back to the forest, you pitiful twig! -Raaaaargh! -For the Sunken Ones! -Flee, unworthy creature! -#, savour your demise! -I want your blood, #! -You have the strength of the flamingo! -You defy the Oceans? -Yaaargh! -Forest-Man! Die, #! -Run or face your death, soulless one! -I have no pity for you, coward! -Our tales tell of Men such as you, #! Know that they all met their end painfully! -A test for my strength! I shall savour my victory over you! -I have seen braver bananas than you, #! \ No newline at end of file diff --git a/src (1)/main/resources/assets/cinder_loe/speech/limwaith/shaman/friendly.txt b/src (1)/main/resources/assets/cinder_loe/speech/limwaith/shaman/friendly.txt deleted file mode 100644 index 070b080..0000000 --- a/src (1)/main/resources/assets/cinder_loe/speech/limwaith/shaman/friendly.txt +++ /dev/null @@ -1,15 +0,0 @@ -I have many oddities from the groves. What would you like? -Some call it witchery. I call it medicine. -Our swamp water invigorates even the weakest wanderer! -What remedies can I offer you, #? -Are you sick, #? I can heal many things! -My bonemold recipes are the best in the Swamps! -Banana bread is such a disgrace to good breads. -Do you have any delicious fish for me, #? -I'll buy lots of bone, if you have them, #. -My darts are the sharpest in all the groves! -I might have just what you are looking for, #. -What can I get for you, #, warrior of the tribe? -I hope you have enough silver, #. -My goods aren't pricey, but they're not cheap either, #. -You could use some strength, #. I may have just the thing! \ No newline at end of file diff --git a/src (1)/main/resources/assets/cinder_loe/speech/limwaith/shaman/hostile.txt b/src (1)/main/resources/assets/cinder_loe/speech/limwaith/shaman/hostile.txt deleted file mode 100644 index c84fbd8..0000000 --- a/src (1)/main/resources/assets/cinder_loe/speech/limwaith/shaman/hostile.txt +++ /dev/null @@ -1,11 +0,0 @@ -No more dealings with you, #! -Thieves! Mongrels! Slaves of the Enemy! You are all dead in my eyes. -Jungle dweller! You will get nothing but death from me! -How foolish of you to come here, #! -The beasts of the waters will tear you apart! -There is no hope for you now, #! -What makes you think you deserve what I have to sell, #? -I will boil you down in a cauldron! -The Jungles do not protect you here! -Our warriors will crush you, savage! -I will not trade with a savage out of the jungle! \ No newline at end of file diff --git a/src (1)/main/resources/assets/cinder_loe/speech/limwaith/shaman/neutral.txt b/src (1)/main/resources/assets/cinder_loe/speech/limwaith/shaman/neutral.txt deleted file mode 100644 index b46ddd4..0000000 --- a/src (1)/main/resources/assets/cinder_loe/speech/limwaith/shaman/neutral.txt +++ /dev/null @@ -1,10 +0,0 @@ -You don't quite have my trust yet, #. Come back another day! -I don't want your fish, #. -Prove your friendship with our people, and then you may buy from me. -You look like trouble, #. -I doubt you have enough money for my goods. -You don't look like one of us. -I bet you like banana bread, #. Fool! -You are not a friend of my people, #. Begone. -I doubt you are any better than those savage jungle dwellers, #. -Mind yourself, #. It is unwise to make enemies in the groves. \ No newline at end of file diff --git a/src (1)/main/resources/assets/cinder_loe/speech/renegade/drunkard/neutral.txt b/src (1)/main/resources/assets/cinder_loe/speech/renegade/drunkard/neutral.txt deleted file mode 100644 index fe8fdfb..0000000 --- a/src (1)/main/resources/assets/cinder_loe/speech/renegade/drunkard/neutral.txt +++ /dev/null @@ -1,7 +0,0 @@ -With three beers down, the Orc did frown, and bid the Elf goodbye, for none could know, 'twas not for show, and someone had to die. -Never enough gold... just need one more good haul. -Should have known she was lying... she said she would wait for me, but they never wait.. -...mead, mead, mead... ...kill 'em to get some beer every now and then.. Stupid bees and their stupid honey... -Lying little harlot.. that brat ain't mine, could be anyone's... won't get a single silver from me... -Hmph, wizards... now that's power.. bet they got that "secret magic".. turn wood into gold.. yeah, wish I could turn wood into gold... -Go to the college, da said. Use your smarts, he said. Idiot, how was I supposed to know what college he meant? \ No newline at end of file diff --git a/src (1)/main/resources/assets/cinder_loe/speech/renegade/man/hostile.txt b/src (1)/main/resources/assets/cinder_loe/speech/renegade/man/hostile.txt deleted file mode 100644 index 5cb584a..0000000 --- a/src (1)/main/resources/assets/cinder_loe/speech/renegade/man/hostile.txt +++ /dev/null @@ -1,6 +0,0 @@ -Your money or your life! -You'll be so much easier to rob when you're dead! -Can't wait to count out your coin... -Tell you what. You start running so I can stab you in the back. -Lookie here. Looks like we got ourselves a hero. -You picked a bad time to get lost, friend. \ No newline at end of file diff --git a/src (1)/main/resources/assets/lotr/armor/battlenun_1.png b/src (1)/main/resources/assets/lotr/armor/battlenun_1.png deleted file mode 100644 index 99ceaaa..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/battlenun_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/battlenun_2.png b/src (1)/main/resources/assets/lotr/armor/battlenun_2.png deleted file mode 100644 index b4e925e..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/battlenun_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/bonemold_1.png b/src (1)/main/resources/assets/lotr/armor/bonemold_1.png deleted file mode 100644 index 9f85741..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/bonemold_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/bonemold_2.png b/src (1)/main/resources/assets/lotr/armor/bonemold_2.png deleted file mode 100644 index 1d18d3e..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/bonemold_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/bree_1.png b/src (1)/main/resources/assets/lotr/armor/bree_1.png deleted file mode 100644 index 7f65418..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/bree_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/bree_2.png b/src (1)/main/resources/assets/lotr/armor/bree_2.png deleted file mode 100644 index a036bdf..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/bree_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/bree_helmet.png b/src (1)/main/resources/assets/lotr/armor/bree_helmet.png deleted file mode 100644 index f71fa18..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/bree_helmet.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/event_helmet.png b/src (1)/main/resources/assets/lotr/armor/event_helmet.png deleted file mode 100644 index b2e9eb2..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/event_helmet.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/jade_1.png b/src (1)/main/resources/assets/lotr/armor/jade_1.png deleted file mode 100644 index 3be60d9..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/jade_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/jade_chestplate.png b/src (1)/main/resources/assets/lotr/armor/jade_chestplate.png deleted file mode 100644 index fa8a444..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/jade_chestplate.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/jade_helmet.png b/src (1)/main/resources/assets/lotr/armor/jade_helmet.png deleted file mode 100644 index fad6485..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/jade_helmet.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/jade_leggings.png b/src (1)/main/resources/assets/lotr/armor/jade_leggings.png deleted file mode 100644 index ef07184..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/jade_leggings.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/limwaith_wood_1.png b/src (1)/main/resources/assets/lotr/armor/limwaith_wood_1.png deleted file mode 100644 index 7bfda2f..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/limwaith_wood_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/limwaith_wood_2.png b/src (1)/main/resources/assets/lotr/armor/limwaith_wood_2.png deleted file mode 100644 index 952e0ff..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/limwaith_wood_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/mount/boar_red_dwarf.png b/src (1)/main/resources/assets/lotr/armor/mount/boar_red_dwarf.png deleted file mode 100644 index 2f30c0d..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/mount/boar_red_dwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/nex_fire_2.png b/src (1)/main/resources/assets/lotr/armor/nex_fire_2.png deleted file mode 100644 index 6a59ecc..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/nex_fire_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/nex_fire_chestplate.png b/src (1)/main/resources/assets/lotr/armor/nex_fire_chestplate.png deleted file mode 100644 index 1aa014a..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/nex_fire_chestplate.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/nex_ice_1.png b/src (1)/main/resources/assets/lotr/armor/nex_ice_1.png deleted file mode 100644 index ea6891a..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/nex_ice_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/nex_ice_2.png b/src (1)/main/resources/assets/lotr/armor/nex_ice_2.png deleted file mode 100644 index d761058..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/nex_ice_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/nex_ice_chestplate.png b/src (1)/main/resources/assets/lotr/armor/nex_ice_chestplate.png deleted file mode 100644 index d745900..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/nex_ice_chestplate.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/nex_shadow_1.png b/src (1)/main/resources/assets/lotr/armor/nex_shadow_1.png deleted file mode 100644 index 964c442..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/nex_shadow_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/nex_shadow_2.png b/src (1)/main/resources/assets/lotr/armor/nex_shadow_2.png deleted file mode 100644 index cc96dcc..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/nex_shadow_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/nex_toxin_1.png b/src (1)/main/resources/assets/lotr/armor/nex_toxin_1.png deleted file mode 100644 index ff4c2ba..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/nex_toxin_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/nex_toxin_2.png b/src (1)/main/resources/assets/lotr/armor/nex_toxin_2.png deleted file mode 100644 index f3d9ed2..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/nex_toxin_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/nex_toxin_chestplate.png b/src (1)/main/resources/assets/lotr/armor/nex_toxin_chestplate.png deleted file mode 100644 index 454d004..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/nex_toxin_chestplate.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/red_dwarf_1.png b/src (1)/main/resources/assets/lotr/armor/red_dwarf_1.png deleted file mode 100644 index e97e829..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/red_dwarf_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/red_dwarf_2.png b/src (1)/main/resources/assets/lotr/armor/red_dwarf_2.png deleted file mode 100644 index 3382154..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/red_dwarf_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/red_dwarf_helmet.png b/src (1)/main/resources/assets/lotr/armor/red_dwarf_helmet.png deleted file mode 100644 index 6cad3de..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/red_dwarf_helmet.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/rhudaur_1.png b/src (1)/main/resources/assets/lotr/armor/rhudaur_1.png deleted file mode 100644 index 9f50726..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/rhudaur_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/rhudaur_2.png b/src (1)/main/resources/assets/lotr/armor/rhudaur_2.png deleted file mode 100644 index 9242096..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/rhudaur_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/rhudaur_helmet.png b/src (1)/main/resources/assets/lotr/armor/rhudaur_helmet.png deleted file mode 100644 index 094eaf5..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/rhudaur_helmet.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/serpent_1.png b/src (1)/main/resources/assets/lotr/armor/serpent_1.png deleted file mode 100644 index af5c6eb..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/serpent_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/serpent_2.png b/src (1)/main/resources/assets/lotr/armor/serpent_2.png deleted file mode 100644 index d486abf..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/serpent_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/serpent_chestplate.png b/src (1)/main/resources/assets/lotr/armor/serpent_chestplate.png deleted file mode 100644 index f303c0c..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/serpent_chestplate.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/usurper_1.png b/src (1)/main/resources/assets/lotr/armor/usurper_1.png deleted file mode 100644 index 1bf3ea0..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/usurper_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/usurper_2.png b/src (1)/main/resources/assets/lotr/armor/usurper_2.png deleted file mode 100644 index cabb735..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/usurper_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/usurper_helmet.png b/src (1)/main/resources/assets/lotr/armor/usurper_helmet.png deleted file mode 100644 index daa1705..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/usurper_helmet.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/warlord_1.png b/src (1)/main/resources/assets/lotr/armor/warlord_1.png deleted file mode 100644 index 9b9411a..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/warlord_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/warlord_2.png b/src (1)/main/resources/assets/lotr/armor/warlord_2.png deleted file mode 100644 index e6cd11d..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/warlord_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/armor/warlord_helmet.png b/src (1)/main/resources/assets/lotr/armor/warlord_helmet.png deleted file mode 100644 index 0f32f4f..0000000 Binary files a/src (1)/main/resources/assets/lotr/armor/warlord_helmet.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/item/banner/banner_blue.png b/src (1)/main/resources/assets/lotr/item/banner/banner_blue.png deleted file mode 100644 index bf0666e..0000000 Binary files a/src (1)/main/resources/assets/lotr/item/banner/banner_blue.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/item/banner/banner_green.png b/src (1)/main/resources/assets/lotr/item/banner/banner_green.png deleted file mode 100644 index bd2366a..0000000 Binary files a/src (1)/main/resources/assets/lotr/item/banner/banner_green.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/item/banner/banner_limwaith.png b/src (1)/main/resources/assets/lotr/item/banner/banner_limwaith.png deleted file mode 100644 index ca0dbea..0000000 Binary files a/src (1)/main/resources/assets/lotr/item/banner/banner_limwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/item/banner/banner_red.png b/src (1)/main/resources/assets/lotr/item/banner/banner_red.png deleted file mode 100644 index d91b42f..0000000 Binary files a/src (1)/main/resources/assets/lotr/item/banner/banner_red.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/item/banner/banner_redDwarf.png b/src (1)/main/resources/assets/lotr/item/banner/banner_redDwarf.png deleted file mode 100644 index bed495d..0000000 Binary files a/src (1)/main/resources/assets/lotr/item/banner/banner_redDwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/item/verticalweaponRack.png b/src (1)/main/resources/assets/lotr/item/verticalweaponRack.png deleted file mode 100644 index c7e0de7..0000000 Binary files a/src (1)/main/resources/assets/lotr/item/verticalweaponRack.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/barricade.png b/src (1)/main/resources/assets/lotr/textures/blocks/barricade.png deleted file mode 100644 index 4967d75..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/barricade.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/bars_red_dwarf.png b/src (1)/main/resources/assets/lotr/textures/blocks/bars_red_dwarf.png deleted file mode 100644 index a8e2578..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/bars_red_dwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/bronzeChain_bottom.png b/src (1)/main/resources/assets/lotr/textures/blocks/bronzeChain_bottom.png deleted file mode 100644 index 5cfcd06..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/bronzeChain_bottom.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/bronzeChain_mid.png b/src (1)/main/resources/assets/lotr/textures/blocks/bronzeChain_mid.png deleted file mode 100644 index 069555b..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/bronzeChain_mid.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/bronzeChain_single.png b/src (1)/main/resources/assets/lotr/textures/blocks/bronzeChain_single.png deleted file mode 100644 index f55d397..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/bronzeChain_single.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/bronzeChain_top.png b/src (1)/main/resources/assets/lotr/textures/blocks/bronzeChain_top.png deleted file mode 100644 index 4713718..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/bronzeChain_top.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cabbage_0.png b/src (1)/main/resources/assets/lotr/textures/blocks/cabbage_0.png deleted file mode 100644 index 7d3485f..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cabbage_0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cabbage_1.png b/src (1)/main/resources/assets/lotr/textures/blocks/cabbage_1.png deleted file mode 100644 index d015c29..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cabbage_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cabbage_2.png b/src (1)/main/resources/assets/lotr/textures/blocks/cabbage_2.png deleted file mode 100644 index 8ba1d8e..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cabbage_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cabbage_3.png b/src (1)/main/resources/assets/lotr/textures/blocks/cabbage_3.png deleted file mode 100644 index 9d4b0fc..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cabbage_3.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/chandelier_red_dwarf.png b/src (1)/main/resources/assets/lotr/textures/blocks/chandelier_red_dwarf.png deleted file mode 100644 index 4ac4b7e..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/chandelier_red_dwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cinder_block.png b/src (1)/main/resources/assets/lotr/textures/blocks/cinder_block.png deleted file mode 100644 index 939c06b..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cinder_block.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cinder_block.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/blocks/cinder_block.png.mcmeta deleted file mode 100644 index abe58ab..0000000 --- a/src (1)/main/resources/assets/lotr/textures/blocks/cinder_block.png.mcmeta +++ /dev/null @@ -1,3 +0,0 @@ -{ - "animation":{"frametime":8} -} \ No newline at end of file diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cindercobble_drystone.png b/src (1)/main/resources/assets/lotr/textures/blocks/cindercobble_drystone.png deleted file mode 100644 index 646d702..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cindercobble_drystone.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cindercobble_mordor.png b/src (1)/main/resources/assets/lotr/textures/blocks/cindercobble_mordor.png deleted file mode 100644 index 267f73a..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cindercobble_mordor.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cindercobble_silverbrick.png b/src (1)/main/resources/assets/lotr/textures/blocks/cindercobble_silverbrick.png deleted file mode 100644 index 5a627d5..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cindercobble_silverbrick.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cindercobble_silvercobble.png b/src (1)/main/resources/assets/lotr/textures/blocks/cindercobble_silvercobble.png deleted file mode 100644 index 5fa9a0f..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cindercobble_silvercobble.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_bearblack.png b/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_bearblack.png deleted file mode 100644 index a56ff66..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_bearblack.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_bearbrown.png b/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_bearbrown.png deleted file mode 100644 index cc6107c..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_bearbrown.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_black.png b/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_black.png deleted file mode 100644 index 6a0ec9c..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_black.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_brown.png b/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_brown.png deleted file mode 100644 index 0ad91ed..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_brown.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_gray.png b/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_gray.png deleted file mode 100644 index ac386b9..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_gray.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_lion.png b/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_lion.png deleted file mode 100644 index 04e9f16..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_lion.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_lioness.png b/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_lioness.png deleted file mode 100644 index 450aa46..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_lioness.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_obsidian.png b/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_obsidian.png deleted file mode 100644 index 28eb3eb..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_obsidian.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_white.png b/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_white.png deleted file mode 100644 index 4d0492f..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cinderfur_white.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/cutDrystone.png b/src (1)/main/resources/assets/lotr/textures/blocks/cutDrystone.png deleted file mode 100644 index 315ee0c..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/cutDrystone.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/display_sword_rusted.png b/src (1)/main/resources/assets/lotr/textures/blocks/display_sword_rusted.png deleted file mode 100644 index b37a319..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/display_sword_rusted.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/dwarven_brick_runed.png b/src (1)/main/resources/assets/lotr/textures/blocks/dwarven_brick_runed.png deleted file mode 100644 index a088a2b..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/dwarven_brick_runed.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/fishbarrel_bottom.png b/src (1)/main/resources/assets/lotr/textures/blocks/fishbarrel_bottom.png deleted file mode 100644 index d34f15b..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/fishbarrel_bottom.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/fishbarrel_side.png b/src (1)/main/resources/assets/lotr/textures/blocks/fishbarrel_side.png deleted file mode 100644 index 46a0aba..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/fishbarrel_side.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/fishbarrel_top.png b/src (1)/main/resources/assets/lotr/textures/blocks/fishbarrel_top.png deleted file mode 100644 index 93f7d58..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/fishbarrel_top.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/fur_bundle_bottom.png b/src (1)/main/resources/assets/lotr/textures/blocks/fur_bundle_bottom.png deleted file mode 100644 index 83ed3e6..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/fur_bundle_bottom.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/fur_bundle_side_0.png b/src (1)/main/resources/assets/lotr/textures/blocks/fur_bundle_side_0.png deleted file mode 100644 index 88acb55..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/fur_bundle_side_0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/fur_bundle_side_180.png b/src (1)/main/resources/assets/lotr/textures/blocks/fur_bundle_side_180.png deleted file mode 100644 index 2073682..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/fur_bundle_side_180.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/fur_bundle_side_270.png b/src (1)/main/resources/assets/lotr/textures/blocks/fur_bundle_side_270.png deleted file mode 100644 index fda3957..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/fur_bundle_side_270.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/fur_bundle_side_90.png b/src (1)/main/resources/assets/lotr/textures/blocks/fur_bundle_side_90.png deleted file mode 100644 index da635bb..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/fur_bundle_side_90.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/fur_bundle_top.png b/src (1)/main/resources/assets/lotr/textures/blocks/fur_bundle_top.png deleted file mode 100644 index 9de20c3..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/fur_bundle_top.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/gatecharredportcullis.png b/src (1)/main/resources/assets/lotr/textures/blocks/gatecharredportcullis.png deleted file mode 100644 index 65ffdde..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/gatecharredportcullis.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/goldChain_bottom.png b/src (1)/main/resources/assets/lotr/textures/blocks/goldChain_bottom.png deleted file mode 100644 index 6b76c9b..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/goldChain_bottom.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/goldChain_mid.png b/src (1)/main/resources/assets/lotr/textures/blocks/goldChain_mid.png deleted file mode 100644 index c40b6eb..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/goldChain_mid.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/goldChain_single.png b/src (1)/main/resources/assets/lotr/textures/blocks/goldChain_single.png deleted file mode 100644 index f8b0e15..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/goldChain_single.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/goldChain_top.png b/src (1)/main/resources/assets/lotr/textures/blocks/goldChain_top.png deleted file mode 100644 index f8b0e15..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/goldChain_top.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/ice_cage.png b/src (1)/main/resources/assets/lotr/textures/blocks/ice_cage.png deleted file mode 100644 index cfdeb25..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/ice_cage.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/invisible.png b/src (1)/main/resources/assets/lotr/textures/blocks/invisible.png deleted file mode 100644 index 3ccb574..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/invisible.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/ironChain_bottom.png b/src (1)/main/resources/assets/lotr/textures/blocks/ironChain_bottom.png deleted file mode 100644 index 05523c5..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/ironChain_bottom.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/ironChain_mid.png b/src (1)/main/resources/assets/lotr/textures/blocks/ironChain_mid.png deleted file mode 100644 index ee0680f..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/ironChain_mid.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/ironChain_single.png b/src (1)/main/resources/assets/lotr/textures/blocks/ironChain_single.png deleted file mode 100644 index be3a2f4..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/ironChain_single.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/ironChain_top.png b/src (1)/main/resources/assets/lotr/textures/blocks/ironChain_top.png deleted file mode 100644 index be3a2f4..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/ironChain_top.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/ivory_block_side_0.png b/src (1)/main/resources/assets/lotr/textures/blocks/ivory_block_side_0.png deleted file mode 100644 index e427528..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/ivory_block_side_0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/ivory_block_side_90.png b/src (1)/main/resources/assets/lotr/textures/blocks/ivory_block_side_90.png deleted file mode 100644 index b6c0bfe..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/ivory_block_side_90.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/ivory_block_top.png b/src (1)/main/resources/assets/lotr/textures/blocks/ivory_block_top.png deleted file mode 100644 index 74ac7de..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/ivory_block_top.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/leather_bundle_bottom.png b/src (1)/main/resources/assets/lotr/textures/blocks/leather_bundle_bottom.png deleted file mode 100644 index 0ef6a5f..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/leather_bundle_bottom.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/leather_bundle_side_0.png b/src (1)/main/resources/assets/lotr/textures/blocks/leather_bundle_side_0.png deleted file mode 100644 index da97577..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/leather_bundle_side_0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/leather_bundle_side_180.png b/src (1)/main/resources/assets/lotr/textures/blocks/leather_bundle_side_180.png deleted file mode 100644 index 2cf3158..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/leather_bundle_side_180.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/leather_bundle_side_270.png b/src (1)/main/resources/assets/lotr/textures/blocks/leather_bundle_side_270.png deleted file mode 100644 index c61e62e..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/leather_bundle_side_270.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/leather_bundle_side_90.png b/src (1)/main/resources/assets/lotr/textures/blocks/leather_bundle_side_90.png deleted file mode 100644 index 781aba3..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/leather_bundle_side_90.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/leather_bundle_top.png b/src (1)/main/resources/assets/lotr/textures/blocks/leather_bundle_top.png deleted file mode 100644 index 852cd71..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/leather_bundle_top.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/nex_ice_crystal.png b/src (1)/main/resources/assets/lotr/textures/blocks/nex_ice_crystal.png deleted file mode 100644 index 571d58d..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/nex_ice_crystal.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/onion_0.png b/src (1)/main/resources/assets/lotr/textures/blocks/onion_0.png deleted file mode 100644 index f481537..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/onion_0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/onion_1.png b/src (1)/main/resources/assets/lotr/textures/blocks/onion_1.png deleted file mode 100644 index 50fd652..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/onion_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/onion_2.png b/src (1)/main/resources/assets/lotr/textures/blocks/onion_2.png deleted file mode 100644 index 1b55755..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/onion_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/onion_3.png b/src (1)/main/resources/assets/lotr/textures/blocks/onion_3.png deleted file mode 100644 index ae35c2d..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/onion_3.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/plaster.png b/src (1)/main/resources/assets/lotr/textures/blocks/plaster.png deleted file mode 100644 index e6c909e..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/plaster.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/red_dwarf_steel.png b/src (1)/main/resources/assets/lotr/textures/blocks/red_dwarf_steel.png deleted file mode 100644 index 66984c3..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/red_dwarf_steel.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/reed_bale_bottom.png b/src (1)/main/resources/assets/lotr/textures/blocks/reed_bale_bottom.png deleted file mode 100644 index 7e4a8ad..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/reed_bale_bottom.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/reed_bale_side_0.png b/src (1)/main/resources/assets/lotr/textures/blocks/reed_bale_side_0.png deleted file mode 100644 index e6c2ef9..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/reed_bale_side_0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/reed_bale_side_180.png b/src (1)/main/resources/assets/lotr/textures/blocks/reed_bale_side_180.png deleted file mode 100644 index 671c03a..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/reed_bale_side_180.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/reed_bale_side_270.png b/src (1)/main/resources/assets/lotr/textures/blocks/reed_bale_side_270.png deleted file mode 100644 index 0839f6a..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/reed_bale_side_270.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/reed_bale_side_90.png b/src (1)/main/resources/assets/lotr/textures/blocks/reed_bale_side_90.png deleted file mode 100644 index 51fdaec..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/reed_bale_side_90.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/reed_bale_top.png b/src (1)/main/resources/assets/lotr/textures/blocks/reed_bale_top.png deleted file mode 100644 index 7e4a8ad..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/reed_bale_top.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/reeflessCoral.png b/src (1)/main/resources/assets/lotr/textures/blocks/reeflessCoral.png deleted file mode 100644 index ef49e3e..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/reeflessCoral.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/shadow_tile.png b/src (1)/main/resources/assets/lotr/textures/blocks/shadow_tile.png deleted file mode 100644 index 30d8fdf..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/shadow_tile.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/silverChain_bottom.png b/src (1)/main/resources/assets/lotr/textures/blocks/silverChain_bottom.png deleted file mode 100644 index 4508f63..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/silverChain_bottom.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/silverChain_mid.png b/src (1)/main/resources/assets/lotr/textures/blocks/silverChain_mid.png deleted file mode 100644 index 4e40b50..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/silverChain_mid.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/silverChain_single.png b/src (1)/main/resources/assets/lotr/textures/blocks/silverChain_single.png deleted file mode 100644 index b708df9..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/silverChain_single.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/silverChain_top.png b/src (1)/main/resources/assets/lotr/textures/blocks/silverChain_top.png deleted file mode 100644 index 4539b1b..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/silverChain_top.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/voidblock.png b/src (1)/main/resources/assets/lotr/textures/blocks/voidblock.png deleted file mode 100644 index e3640be..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/voidblock.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/woodpanel_bottom.png b/src (1)/main/resources/assets/lotr/textures/blocks/woodpanel_bottom.png deleted file mode 100644 index 97cf823..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/woodpanel_bottom.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/woodpanel_side_0.png b/src (1)/main/resources/assets/lotr/textures/blocks/woodpanel_side_0.png deleted file mode 100644 index c65950b..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/woodpanel_side_0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/woodpanel_side_180.png b/src (1)/main/resources/assets/lotr/textures/blocks/woodpanel_side_180.png deleted file mode 100644 index 4044ec4..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/woodpanel_side_180.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/woodpanel_side_270.png b/src (1)/main/resources/assets/lotr/textures/blocks/woodpanel_side_270.png deleted file mode 100644 index 9c27e6e..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/woodpanel_side_270.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/woodpanel_side_90.png b/src (1)/main/resources/assets/lotr/textures/blocks/woodpanel_side_90.png deleted file mode 100644 index 7241f3e..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/woodpanel_side_90.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/blocks/woodpanel_top.png b/src (1)/main/resources/assets/lotr/textures/blocks/woodpanel_top.png deleted file mode 100644 index 97cf823..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/blocks/woodpanel_top.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/alatarStaff.png b/src (1)/main/resources/assets/lotr/textures/items/alatarStaff.png deleted file mode 100644 index e3c599a..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/alatarStaff.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/banner_blue.png b/src (1)/main/resources/assets/lotr/textures/items/banner_blue.png deleted file mode 100644 index cb5b346..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/banner_blue.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/banner_green.png b/src (1)/main/resources/assets/lotr/textures/items/banner_green.png deleted file mode 100644 index 200af98..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/banner_green.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/banner_limwaith.png b/src (1)/main/resources/assets/lotr/textures/items/banner_limwaith.png deleted file mode 100644 index 11bec22..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/banner_limwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/banner_red.png b/src (1)/main/resources/assets/lotr/textures/items/banner_red.png deleted file mode 100644 index 35c5269..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/banner_red.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/banner_redDwarf.png b/src (1)/main/resources/assets/lotr/textures/items/banner_redDwarf.png deleted file mode 100644 index 67b317a..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/banner_redDwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/battleaxeAsh.png b/src (1)/main/resources/assets/lotr/textures/items/battleaxeAsh.png deleted file mode 100644 index 7b1b6ee..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/battleaxeAsh.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/battleaxeLimwaith.png b/src (1)/main/resources/assets/lotr/textures/items/battleaxeLimwaith.png deleted file mode 100644 index 5c54f68..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/battleaxeLimwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/battleaxeRedDwarf.png b/src (1)/main/resources/assets/lotr/textures/items/battleaxeRedDwarf.png deleted file mode 100644 index 21c81a2..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/battleaxeRedDwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/blessed_hammer.png b/src (1)/main/resources/assets/lotr/textures/items/blessed_hammer.png deleted file mode 100644 index 96f7114..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/blessed_hammer.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/blowgunLimwaith.png b/src (1)/main/resources/assets/lotr/textures/items/blowgunLimwaith.png deleted file mode 100644 index 26859f1..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/blowgunLimwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/boarArmorRedDwarf.png b/src (1)/main/resources/assets/lotr/textures/items/boarArmorRedDwarf.png deleted file mode 100644 index 0ba3968..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/boarArmorRedDwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bodyArnorBanner.png b/src (1)/main/resources/assets/lotr/textures/items/bodyArnorBanner.png deleted file mode 100644 index a50fc62..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bodyArnorBanner.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bodyBree.png b/src (1)/main/resources/assets/lotr/textures/items/bodyBree.png deleted file mode 100644 index 386f36b..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bodyBree.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bodyJade.png b/src (1)/main/resources/assets/lotr/textures/items/bodyJade.png deleted file mode 100644 index a6965a0..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bodyJade.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bodyLimwaith.png b/src (1)/main/resources/assets/lotr/textures/items/bodyLimwaith.png deleted file mode 100644 index b919b0a..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bodyLimwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bodyRedDwarf.png b/src (1)/main/resources/assets/lotr/textures/items/bodyRedDwarf.png deleted file mode 100644 index 6bff7e4..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bodyRedDwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bodyRhudaur.png b/src (1)/main/resources/assets/lotr/textures/items/bodyRhudaur.png deleted file mode 100644 index c7cb6fa..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bodyRhudaur.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bodyUsurper.png b/src (1)/main/resources/assets/lotr/textures/items/bodyUsurper.png deleted file mode 100644 index bc20a59..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bodyUsurper.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bodyWarlord.png b/src (1)/main/resources/assets/lotr/textures/items/bodyWarlord.png deleted file mode 100644 index a2022bf..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bodyWarlord.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bodyboneLimwaith.png b/src (1)/main/resources/assets/lotr/textures/items/bodyboneLimwaith.png deleted file mode 100644 index dc6b065..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bodyboneLimwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bodyserpent.png b/src (1)/main/resources/assets/lotr/textures/items/bodyserpent.png deleted file mode 100644 index 11fb43c..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bodyserpent.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bonemold.png b/src (1)/main/resources/assets/lotr/textures/items/bonemold.png deleted file mode 100644 index 53a5f55..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bonemold.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bootsArnorBanner.png b/src (1)/main/resources/assets/lotr/textures/items/bootsArnorBanner.png deleted file mode 100644 index 09309d9..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bootsArnorBanner.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bootsBree.png b/src (1)/main/resources/assets/lotr/textures/items/bootsBree.png deleted file mode 100644 index f794b8c..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bootsBree.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bootsJade.png b/src (1)/main/resources/assets/lotr/textures/items/bootsJade.png deleted file mode 100644 index 4289027..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bootsJade.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bootsLimwaith.png b/src (1)/main/resources/assets/lotr/textures/items/bootsLimwaith.png deleted file mode 100644 index 2268432..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bootsLimwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bootsRedDwarf.png b/src (1)/main/resources/assets/lotr/textures/items/bootsRedDwarf.png deleted file mode 100644 index a6b8890..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bootsRedDwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bootsRhudaur.png b/src (1)/main/resources/assets/lotr/textures/items/bootsRhudaur.png deleted file mode 100644 index fd6ae95..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bootsRhudaur.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bootsUsurper.png b/src (1)/main/resources/assets/lotr/textures/items/bootsUsurper.png deleted file mode 100644 index dce50f0..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bootsUsurper.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bootsWarlord.png b/src (1)/main/resources/assets/lotr/textures/items/bootsWarlord.png deleted file mode 100644 index 7d8295b..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bootsWarlord.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bootsboneLimwaith.png b/src (1)/main/resources/assets/lotr/textures/items/bootsboneLimwaith.png deleted file mode 100644 index 9e057b5..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bootsboneLimwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bootsserpent.png b/src (1)/main/resources/assets/lotr/textures/items/bootsserpent.png deleted file mode 100644 index 772896c..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bootsserpent.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bowAsh.png b/src (1)/main/resources/assets/lotr/textures/items/bowAsh.png deleted file mode 100644 index c8598ee..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bowAsh.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/breekettlehelmet.png b/src (1)/main/resources/assets/lotr/textures/items/breekettlehelmet.png deleted file mode 100644 index 6fc27e5..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/breekettlehelmet.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/bronzeChain.png b/src (1)/main/resources/assets/lotr/textures/items/bronzeChain.png deleted file mode 100644 index 43e2cae..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/bronzeChain.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/cabbage.png b/src (1)/main/resources/assets/lotr/textures/items/cabbage.png deleted file mode 100644 index 19ab7fe..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/cabbage.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/celeiniss.png b/src (1)/main/resources/assets/lotr/textures/items/celeiniss.png deleted file mode 100644 index a6288b0..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/celeiniss.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/chocolatebar.png b/src (1)/main/resources/assets/lotr/textures/items/chocolatebar.png deleted file mode 100644 index 198e741..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/chocolatebar.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_0.png b/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_0.png deleted file mode 100644 index 029301d..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_1.png b/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_1.png deleted file mode 100644 index 50c925f..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_2.png b/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_2.png deleted file mode 100644 index 9dbc84f..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_3.png b/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_3.png deleted file mode 100644 index 6753689..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_3.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_4.png b/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_4.png deleted file mode 100644 index f3d8335..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_4.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_5.png b/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_5.png deleted file mode 100644 index b2000cd..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_5.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_6.png b/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_6.png deleted file mode 100644 index cf9a1c8..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/cinder_fur_item_6.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/cleaver.png b/src (1)/main/resources/assets/lotr/textures/items/cleaver.png deleted file mode 100644 index 1b63d74..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/cleaver.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/crossbowRedDwarf.png b/src (1)/main/resources/assets/lotr/textures/items/crossbowRedDwarf.png deleted file mode 100644 index 3896ba0..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/crossbowRedDwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/crossbowRedDwarf_pull_0.png b/src (1)/main/resources/assets/lotr/textures/items/crossbowRedDwarf_pull_0.png deleted file mode 100644 index c161d32..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/crossbowRedDwarf_pull_0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/crossbowRedDwarf_pull_1.png b/src (1)/main/resources/assets/lotr/textures/items/crossbowRedDwarf_pull_1.png deleted file mode 100644 index eecc1d9..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/crossbowRedDwarf_pull_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/crossbowRedDwarf_pull_2.png b/src (1)/main/resources/assets/lotr/textures/items/crossbowRedDwarf_pull_2.png deleted file mode 100644 index fcf1e47..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/crossbowRedDwarf_pull_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/daggerAsh.png b/src (1)/main/resources/assets/lotr/textures/items/daggerAsh.png deleted file mode 100644 index 2d24517..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/daggerAsh.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/daggerAsh.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/daggerAsh.png.mcmeta deleted file mode 100644 index 762e94b..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/daggerAsh.png.mcmeta +++ /dev/null @@ -1,69 +0,0 @@ -{ - "animation": { - "frames": [ - 0, - 1, - 1, - 2, - 2, - 3, - 3, - 4, - 4, - 5, - 5, - 6, - 6, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7 - ] - } -} diff --git a/src (1)/main/resources/assets/lotr/textures/items/daggerLimwaith.png b/src (1)/main/resources/assets/lotr/textures/items/daggerLimwaith.png deleted file mode 100644 index 8b7b130..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/daggerLimwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/daggerLimwaithPoisoned.png b/src (1)/main/resources/assets/lotr/textures/items/daggerLimwaithPoisoned.png deleted file mode 100644 index 49d50ca..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/daggerLimwaithPoisoned.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/daggerRedDwarf.png b/src (1)/main/resources/assets/lotr/textures/items/daggerRedDwarf.png deleted file mode 100644 index 3d34186..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/daggerRedDwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/daggerRedDwarfPoisoned.png b/src (1)/main/resources/assets/lotr/textures/items/daggerRedDwarfPoisoned.png deleted file mode 100644 index d8acb24..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/daggerRedDwarfPoisoned.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/daggerVoid.png b/src (1)/main/resources/assets/lotr/textures/items/daggerVoid.png deleted file mode 100644 index 7efb611..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/daggerVoid.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/daggerVoid.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/daggerVoid.png.mcmeta deleted file mode 100644 index 7f18a4d..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/daggerVoid.png.mcmeta +++ /dev/null @@ -1,77 +0,0 @@ -{ - "animation": { - "frames": [ - 0, - 0, - 0, - 1, - 1, - 1, - 2, - 2, - 2, - 3, - 3, - 3, - 4, - 4, - 4, - 5, - 5, - 5, - 6, - 6, - 6, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7 - ] - } -} diff --git a/src (1)/main/resources/assets/lotr/textures/items/deceiver_blade.png b/src (1)/main/resources/assets/lotr/textures/items/deceiver_blade.png deleted file mode 100644 index e11f7f5..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/deceiver_blade.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/deceiver_blade.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/deceiver_blade.png.mcmeta deleted file mode 100644 index 55aeb43..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/deceiver_blade.png.mcmeta +++ /dev/null @@ -1,30 +0,0 @@ -{ - "animation": { - "frames": [ - 0, - 0, - 0, - 0, - 1, - 1, - 1, - 1, - 2, - 2, - 2, - 2, - 3, - 3, - 3, - 3, - 4, - 4, - 4, - 4, - 5, - 5, - 5, - 5 - ] - } -} \ No newline at end of file diff --git a/src (1)/main/resources/assets/lotr/textures/items/deceiver_blade_blade.png b/src (1)/main/resources/assets/lotr/textures/items/deceiver_blade_blade.png deleted file mode 100644 index 037df3a..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/deceiver_blade_blade.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/deceiver_blade_guard.png b/src (1)/main/resources/assets/lotr/textures/items/deceiver_blade_guard.png deleted file mode 100644 index 1d40b0f..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/deceiver_blade_guard.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/deceiver_blade_hilt.png b/src (1)/main/resources/assets/lotr/textures/items/deceiver_blade_hilt.png deleted file mode 100644 index e3c8ce9..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/deceiver_blade_hilt.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/demonblood_vial.png b/src (1)/main/resources/assets/lotr/textures/items/demonblood_vial.png deleted file mode 100644 index 78a0625..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/demonblood_vial.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/doner_kebab.png b/src (1)/main/resources/assets/lotr/textures/items/doner_kebab.png deleted file mode 100644 index e16f1b2..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/doner_kebab.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/dough.png b/src (1)/main/resources/assets/lotr/textures/items/dough.png deleted file mode 100644 index ff304d2..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/dough.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/flour.png b/src (1)/main/resources/assets/lotr/textures/items/flour.png deleted file mode 100644 index c0f4b99..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/flour.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/frostblade.png b/src (1)/main/resources/assets/lotr/textures/items/frostblade.png deleted file mode 100644 index 16fb0b0..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/frostblade.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/fruitsalad.png b/src (1)/main/resources/assets/lotr/textures/items/fruitsalad.png deleted file mode 100644 index 0b0d00e..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/fruitsalad.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/gandalfStaffGrey.png b/src (1)/main/resources/assets/lotr/textures/items/gandalfStaffGrey.png deleted file mode 100644 index 6dcb3ef..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/gandalfStaffGrey.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/gandalfStaffWhite.png b/src (1)/main/resources/assets/lotr/textures/items/gandalfStaffWhite.png deleted file mode 100644 index fba1bf1..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/gandalfStaffWhite.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/goldChain.png b/src (1)/main/resources/assets/lotr/textures/items/goldChain.png deleted file mode 100644 index 3f28968..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/goldChain.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/halva.png b/src (1)/main/resources/assets/lotr/textures/items/halva.png deleted file mode 100644 index eaeb095..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/halva.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/hammerAsh.png b/src (1)/main/resources/assets/lotr/textures/items/hammerAsh.png deleted file mode 100644 index 636843b..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/hammerAsh.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/hammerRedDwarf.png b/src (1)/main/resources/assets/lotr/textures/items/hammerRedDwarf.png deleted file mode 100644 index 1447866..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/hammerRedDwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/helmetArnorBanner.png b/src (1)/main/resources/assets/lotr/textures/items/helmetArnorBanner.png deleted file mode 100644 index 89539fa..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/helmetArnorBanner.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/helmetBree.png b/src (1)/main/resources/assets/lotr/textures/items/helmetBree.png deleted file mode 100644 index 49b55a3..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/helmetBree.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/helmetJade.png b/src (1)/main/resources/assets/lotr/textures/items/helmetJade.png deleted file mode 100644 index 1989dcd..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/helmetJade.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/helmetLimwaith.png b/src (1)/main/resources/assets/lotr/textures/items/helmetLimwaith.png deleted file mode 100644 index 191eaeb..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/helmetLimwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/helmetRedDwarf.png b/src (1)/main/resources/assets/lotr/textures/items/helmetRedDwarf.png deleted file mode 100644 index 5b3c30e..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/helmetRedDwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/helmetRhudaur.png b/src (1)/main/resources/assets/lotr/textures/items/helmetRhudaur.png deleted file mode 100644 index 6c76d63..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/helmetRhudaur.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/helmetUsurper.png b/src (1)/main/resources/assets/lotr/textures/items/helmetUsurper.png deleted file mode 100644 index 64837d2..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/helmetUsurper.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/helmetWarlord.png b/src (1)/main/resources/assets/lotr/textures/items/helmetWarlord.png deleted file mode 100644 index c655be8..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/helmetWarlord.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/helmetboneLimwaith.png b/src (1)/main/resources/assets/lotr/textures/items/helmetboneLimwaith.png deleted file mode 100644 index 8f78e1b..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/helmetboneLimwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/helmetbrokenhalo.png b/src (1)/main/resources/assets/lotr/textures/items/helmetbrokenhalo.png deleted file mode 100644 index c058976..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/helmetbrokenhalo.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/helmetserpent.png b/src (1)/main/resources/assets/lotr/textures/items/helmetserpent.png deleted file mode 100644 index 33de7b2..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/helmetserpent.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/honey.png b/src (1)/main/resources/assets/lotr/textures/items/honey.png deleted file mode 100644 index f4a6070..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/honey.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/ice_thawer.png b/src (1)/main/resources/assets/lotr/textures/items/ice_thawer.png deleted file mode 100644 index 7bdf430..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/ice_thawer.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/ice_thawer.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/ice_thawer.png.mcmeta deleted file mode 100644 index 30601d0..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/ice_thawer.png.mcmeta +++ /dev/null @@ -1,3 +0,0 @@ -{ - "animation":{"frametime":3} -} diff --git a/src (1)/main/resources/assets/lotr/textures/items/ingotAsh.png b/src (1)/main/resources/assets/lotr/textures/items/ingotAsh.png deleted file mode 100644 index c2b118e..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/ingotAsh.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/ingotAsh.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/ingotAsh.png.mcmeta deleted file mode 100644 index 6580237..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/ingotAsh.png.mcmeta +++ /dev/null @@ -1,53 +0,0 @@ -{ - "animation": { - "frames": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 1, - 2, - 2, - 3, - 3, - 4, - 4, - 5, - 5, - 6, - 6, - 7, - 7, - 8, - 8, - 7, - 7, - 6, - 6, - 5, - 5, - 4, - 4, - 3, - 3, - 2, - 2, - 1, - 1 - ] - } -} diff --git a/src (1)/main/resources/assets/lotr/textures/items/ironChain.png b/src (1)/main/resources/assets/lotr/textures/items/ironChain.png deleted file mode 100644 index c9e8732..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/ironChain.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/alatarStaff.png b/src (1)/main/resources/assets/lotr/textures/items/large/alatarStaff.png deleted file mode 100644 index 9ec9224..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/alatarStaff.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/battleaxeAsh.png b/src (1)/main/resources/assets/lotr/textures/items/large/battleaxeAsh.png deleted file mode 100644 index cee1eda..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/battleaxeAsh.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/battleaxeAsh.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/large/battleaxeAsh.png.mcmeta deleted file mode 100644 index e3143f5..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/large/battleaxeAsh.png.mcmeta +++ /dev/null @@ -1,43 +0,0 @@ -{ - "animation": { - "frames": [ - 8, - 8, - 8, - 7, - 7, - 7, - 6, - 6, - 6, - 5, - 5, - 5, - 4, - 4, - 4, - 3, - 3, - 3, - 2, - 2, - 2, - 1, - 1, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - } -} diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/battleaxeLimwaith.png b/src (1)/main/resources/assets/lotr/textures/items/large/battleaxeLimwaith.png deleted file mode 100644 index 59c9ef9..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/battleaxeLimwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/bowAsh.png b/src (1)/main/resources/assets/lotr/textures/items/large/bowAsh.png deleted file mode 100644 index 4cb3bbe..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/bowAsh.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/bowAsh_pull_0.png b/src (1)/main/resources/assets/lotr/textures/items/large/bowAsh_pull_0.png deleted file mode 100644 index 8564bfd..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/bowAsh_pull_0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/bowAsh_pull_1.png b/src (1)/main/resources/assets/lotr/textures/items/large/bowAsh_pull_1.png deleted file mode 100644 index 837cb15..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/bowAsh_pull_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/bowAsh_pull_2.png b/src (1)/main/resources/assets/lotr/textures/items/large/bowAsh_pull_2.png deleted file mode 100644 index 920b514..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/bowAsh_pull_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/celeiniss.png b/src (1)/main/resources/assets/lotr/textures/items/large/celeiniss.png deleted file mode 100644 index 4401d3c..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/celeiniss.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/frostblade.png b/src (1)/main/resources/assets/lotr/textures/items/large/frostblade.png deleted file mode 100644 index b03cd28..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/frostblade.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/gandalfStaffGrey.png b/src (1)/main/resources/assets/lotr/textures/items/large/gandalfStaffGrey.png deleted file mode 100644 index bc9a248..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/gandalfStaffGrey.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/gandalfStaffWhite.png b/src (1)/main/resources/assets/lotr/textures/items/large/gandalfStaffWhite.png deleted file mode 100644 index e86f7ab..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/gandalfStaffWhite.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/hammerAsh.png b/src (1)/main/resources/assets/lotr/textures/items/large/hammerAsh.png deleted file mode 100644 index 607519c..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/hammerAsh.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/hammerAsh.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/large/hammerAsh.png.mcmeta deleted file mode 100644 index e3143f5..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/large/hammerAsh.png.mcmeta +++ /dev/null @@ -1,43 +0,0 @@ -{ - "animation": { - "frames": [ - 8, - 8, - 8, - 7, - 7, - 7, - 6, - 6, - 6, - 5, - 5, - 5, - 4, - 4, - 4, - 3, - 3, - 3, - 2, - 2, - 2, - 1, - 1, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - } -} diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/maceWarlord.png b/src (1)/main/resources/assets/lotr/textures/items/large/maceWarlord.png deleted file mode 100644 index a917b7b..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/maceWarlord.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/pallandoStaff.png b/src (1)/main/resources/assets/lotr/textures/items/large/pallandoStaff.png deleted file mode 100644 index f7ea81d..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/pallandoStaff.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/radagastStaff.png b/src (1)/main/resources/assets/lotr/textures/items/large/radagastStaff.png deleted file mode 100644 index 966a4b4..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/radagastStaff.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/sarumanStaff.png b/src (1)/main/resources/assets/lotr/textures/items/large/sarumanStaff.png deleted file mode 100644 index 0262cb5..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/sarumanStaff.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/sarumanWhiteStaff.png b/src (1)/main/resources/assets/lotr/textures/items/large/sarumanWhiteStaff.png deleted file mode 100644 index 0262cb5..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/sarumanWhiteStaff.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/spearAsh.png b/src (1)/main/resources/assets/lotr/textures/items/large/spearAsh.png deleted file mode 100644 index 1a0814e..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/spearAsh.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/spearAsh.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/large/spearAsh.png.mcmeta deleted file mode 100644 index e3143f5..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/large/spearAsh.png.mcmeta +++ /dev/null @@ -1,43 +0,0 @@ -{ - "animation": { - "frames": [ - 8, - 8, - 8, - 7, - 7, - 7, - 6, - 6, - 6, - 5, - 5, - 5, - 4, - 4, - 4, - 3, - 3, - 3, - 2, - 2, - 2, - 1, - 1, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - } -} diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/spearLimwaith.png b/src (1)/main/resources/assets/lotr/textures/items/large/spearLimwaith.png deleted file mode 100644 index 22ac4ef..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/spearLimwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/spearRedDwarf.png b/src (1)/main/resources/assets/lotr/textures/items/large/spearRedDwarf.png deleted file mode 100644 index 33b2080..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/spearRedDwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/spearUnnamed.png b/src (1)/main/resources/assets/lotr/textures/items/large/spearUnnamed.png deleted file mode 100644 index 060c6ed..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/spearUnnamed.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/spearUnnamed.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/large/spearUnnamed.png.mcmeta deleted file mode 100644 index 56f834d..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/large/spearUnnamed.png.mcmeta +++ /dev/null @@ -1,30 +0,0 @@ -{ - "animation": { - "frames": [ - 7, - 7, - 7, - 6, - 6, - 6, - 5, - 5, - 5, - 4, - 4, - 4, - 3, - 3, - 3, - 2, - 2, - 2, - 1, - 1, - 1, - 0, - 0, - 0 - ] - } -} diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/spearsolidgold.png b/src (1)/main/resources/assets/lotr/textures/items/large/spearsolidgold.png deleted file mode 100644 index 1ab9bc9..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/spearsolidgold.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/spearsolidgold.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/large/spearsolidgold.png.mcmeta deleted file mode 100644 index dbfacda..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/large/spearsolidgold.png.mcmeta +++ /dev/null @@ -1,68 +0,0 @@ -{ - "animation": { - "frames": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14, - 14 - ] - } -} diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/staffAsh.png b/src (1)/main/resources/assets/lotr/textures/items/large/staffAsh.png deleted file mode 100644 index 285ec00..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/staffAsh.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/staffAsh.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/large/staffAsh.png.mcmeta deleted file mode 100644 index 22d2b7f..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/large/staffAsh.png.mcmeta +++ /dev/null @@ -1,52 +0,0 @@ -{ - "animation": { - "frames": [ - 11, - 11, - 11, - 10, - 10, - 10, - 9, - 9, - 9, - 8, - 8, - 8, - 7, - 7, - 7, - 6, - 6, - 6, - 5, - 5, - 5, - 4, - 4, - 4, - 3, - 3, - 3, - 2, - 2, - 2, - 1, - 1, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - } -} diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/swordAsh.png b/src (1)/main/resources/assets/lotr/textures/items/large/swordAsh.png deleted file mode 100644 index df60e7a..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/swordAsh.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/swordAsh.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/large/swordAsh.png.mcmeta deleted file mode 100644 index e3143f5..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/large/swordAsh.png.mcmeta +++ /dev/null @@ -1,43 +0,0 @@ -{ - "animation": { - "frames": [ - 8, - 8, - 8, - 7, - 7, - 7, - 6, - 6, - 6, - 5, - 5, - 5, - 4, - 4, - 4, - 3, - 3, - 3, - 2, - 2, - 2, - 1, - 1, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ] - } -} diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/tridentLimwaith.png b/src (1)/main/resources/assets/lotr/textures/items/large/tridentLimwaith.png deleted file mode 100644 index 0f0c260..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/tridentLimwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large/whip.png b/src (1)/main/resources/assets/lotr/textures/items/large/whip.png deleted file mode 100644 index 838c6e6..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large/whip.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large2/pikeAsh.png b/src (1)/main/resources/assets/lotr/textures/items/large2/pikeAsh.png deleted file mode 100644 index 73fcfef..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large2/pikeAsh.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/large2/pikeAsh.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/large2/pikeAsh.png.mcmeta deleted file mode 100644 index 6abaaed..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/large2/pikeAsh.png.mcmeta +++ /dev/null @@ -1,49 +0,0 @@ -{ - "animation": { - "frames": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 10, - 10, - 10, - 9, - 9, - 9, - 8, - 8, - 8, - 7, - 7, - 7, - 6, - 6, - 6, - 5, - 5, - 5, - 4, - 4, - 4, - 3, - 3, - 3, - 2, - 2, - 2, - 1, - 1, - 1 - ] - } -} diff --git a/src (1)/main/resources/assets/lotr/textures/items/large2/pikeRedDwarf.png b/src (1)/main/resources/assets/lotr/textures/items/large2/pikeRedDwarf.png deleted file mode 100644 index a2a5b41..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/large2/pikeRedDwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/legsArnorBanner.png b/src (1)/main/resources/assets/lotr/textures/items/legsArnorBanner.png deleted file mode 100644 index 00de686..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/legsArnorBanner.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/legsBree.png b/src (1)/main/resources/assets/lotr/textures/items/legsBree.png deleted file mode 100644 index 2a93dfd..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/legsBree.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/legsJade.png b/src (1)/main/resources/assets/lotr/textures/items/legsJade.png deleted file mode 100644 index e497450..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/legsJade.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/legsLimwaith.png b/src (1)/main/resources/assets/lotr/textures/items/legsLimwaith.png deleted file mode 100644 index 1b181d4..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/legsLimwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/legsRedDwarf.png b/src (1)/main/resources/assets/lotr/textures/items/legsRedDwarf.png deleted file mode 100644 index 5ade19c..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/legsRedDwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/legsRhudaur.png b/src (1)/main/resources/assets/lotr/textures/items/legsRhudaur.png deleted file mode 100644 index 4876f56..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/legsRhudaur.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/legsUsurper.png b/src (1)/main/resources/assets/lotr/textures/items/legsUsurper.png deleted file mode 100644 index 315e3f4..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/legsUsurper.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/legsWarlord.png b/src (1)/main/resources/assets/lotr/textures/items/legsWarlord.png deleted file mode 100644 index 01c143c..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/legsWarlord.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/legsboneLimwaith.png b/src (1)/main/resources/assets/lotr/textures/items/legsboneLimwaith.png deleted file mode 100644 index 5528d0d..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/legsboneLimwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/legsserpent.png b/src (1)/main/resources/assets/lotr/textures/items/legsserpent.png deleted file mode 100644 index b31f7cb..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/legsserpent.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/lightStew.png b/src (1)/main/resources/assets/lotr/textures/items/lightStew.png deleted file mode 100644 index c4a02d2..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/lightStew.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/maceArnor.png b/src (1)/main/resources/assets/lotr/textures/items/maceArnor.png deleted file mode 100644 index f7e7dd3..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/maceArnor.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/mugDemonicHealthPotion_liquid.png b/src (1)/main/resources/assets/lotr/textures/items/mugDemonicHealthPotion_liquid.png deleted file mode 100644 index ee1f593..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/mugDemonicHealthPotion_liquid.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_ancient.png b/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_ancient.png deleted file mode 100644 index cc30a0b..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_ancient.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_ancient.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_ancient.png.mcmeta deleted file mode 100644 index 7533019..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_ancient.png.mcmeta +++ /dev/null @@ -1,76 +0,0 @@ -{ - "animation": { - "frames": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 12, - 12, - 13, - 13, - 13, - 14, - 14, - 14, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15 - ] - } -} \ No newline at end of file diff --git a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_mortals.png b/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_mortals.png deleted file mode 100644 index f52aeef..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_mortals.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_mortals.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_mortals.png.mcmeta deleted file mode 100644 index 7533019..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_mortals.png.mcmeta +++ /dev/null @@ -1,76 +0,0 @@ -{ - "animation": { - "frames": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 12, - 12, - 13, - 13, - 13, - 14, - 14, - 14, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15 - ] - } -} \ No newline at end of file diff --git a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_sauron.png b/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_sauron.png deleted file mode 100644 index 053a811..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_sauron.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_sauron.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_sauron.png.mcmeta deleted file mode 100644 index 7533019..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_sauron.png.mcmeta +++ /dev/null @@ -1,76 +0,0 @@ -{ - "animation": { - "frames": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 12, - 12, - 13, - 13, - 13, - 14, - 14, - 14, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15 - ] - } -} \ No newline at end of file diff --git a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_udun.png b/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_udun.png deleted file mode 100644 index 3b278cd..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_udun.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_udun.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_udun.png.mcmeta deleted file mode 100644 index 7533019..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_udun.png.mcmeta +++ /dev/null @@ -1,76 +0,0 @@ -{ - "animation": { - "frames": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 12, - 12, - 13, - 13, - 13, - 14, - 14, - 14, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15 - ] - } -} \ No newline at end of file diff --git a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_valar.png b/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_valar.png deleted file mode 100644 index 25a3d13..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_valar.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_valar.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_valar.png.mcmeta deleted file mode 100644 index 7533019..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/nimveil_gem_valar.png.mcmeta +++ /dev/null @@ -1,76 +0,0 @@ -{ - "animation": { - "frames": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 12, - 12, - 13, - 13, - 13, - 14, - 14, - 14, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15, - 15 - ] - } -} \ No newline at end of file diff --git a/src (1)/main/resources/assets/lotr/textures/items/onion.png b/src (1)/main/resources/assets/lotr/textures/items/onion.png deleted file mode 100644 index d031bf3..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/onion.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/pallandoStaff.png b/src (1)/main/resources/assets/lotr/textures/items/pallandoStaff.png deleted file mode 100644 index 2f5793b..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/pallandoStaff.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/pasta.png b/src (1)/main/resources/assets/lotr/textures/items/pasta.png deleted file mode 100644 index 19bbcf5..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/pasta.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/pelmen.png b/src (1)/main/resources/assets/lotr/textures/items/pelmen.png deleted file mode 100644 index e7fc3b7..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/pelmen.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/pikeAsh.png b/src (1)/main/resources/assets/lotr/textures/items/pikeAsh.png deleted file mode 100644 index 2bf4ba1..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/pikeAsh.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/pikeRedDwarf.png b/src (1)/main/resources/assets/lotr/textures/items/pikeRedDwarf.png deleted file mode 100644 index 54c70a3..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/pikeRedDwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/pretzel.png b/src (1)/main/resources/assets/lotr/textures/items/pretzel.png deleted file mode 100644 index d6fee49..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/pretzel.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/radagastStaff.png b/src (1)/main/resources/assets/lotr/textures/items/radagastStaff.png deleted file mode 100644 index cb83a47..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/radagastStaff.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/redDwarfSteel.png b/src (1)/main/resources/assets/lotr/textures/items/redDwarfSteel.png deleted file mode 100644 index d6dc164..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/redDwarfSteel.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/repair_kit.png b/src (1)/main/resources/assets/lotr/textures/items/repair_kit.png deleted file mode 100644 index 1ee5390..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/repair_kit.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/sarumanStaff.png b/src (1)/main/resources/assets/lotr/textures/items/sarumanStaff.png deleted file mode 100644 index c5eb5b8..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/sarumanStaff.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/sarumanWhiteStaff.png b/src (1)/main/resources/assets/lotr/textures/items/sarumanWhiteStaff.png deleted file mode 100644 index c5eb5b8..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/sarumanWhiteStaff.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/silverChain.png b/src (1)/main/resources/assets/lotr/textures/items/silverChain.png deleted file mode 100644 index 7d70ba2..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/silverChain.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/spawn_egg.png b/src (1)/main/resources/assets/lotr/textures/items/spawn_egg.png deleted file mode 100644 index b1a25ee..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/spawn_egg.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/spearAsh.png b/src (1)/main/resources/assets/lotr/textures/items/spearAsh.png deleted file mode 100644 index 29950ac..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/spearAsh.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/spearLimwaith.png b/src (1)/main/resources/assets/lotr/textures/items/spearLimwaith.png deleted file mode 100644 index 51f8cdf..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/spearLimwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/spearRedDwarf.png b/src (1)/main/resources/assets/lotr/textures/items/spearRedDwarf.png deleted file mode 100644 index c794507..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/spearRedDwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/spearUnnamed.png b/src (1)/main/resources/assets/lotr/textures/items/spearUnnamed.png deleted file mode 100644 index 90943e9..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/spearUnnamed.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/spearsolidgold.png b/src (1)/main/resources/assets/lotr/textures/items/spearsolidgold.png deleted file mode 100644 index 6e830d3..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/spearsolidgold.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/spearsolidgold.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/spearsolidgold.png.mcmeta deleted file mode 100644 index 0b19d78..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/spearsolidgold.png.mcmeta +++ /dev/null @@ -1,66 +0,0 @@ -{ - "animation": { - "frames": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7, - 7 - ] - } -} \ No newline at end of file diff --git a/src (1)/main/resources/assets/lotr/textures/items/spice.png b/src (1)/main/resources/assets/lotr/textures/items/spice.png deleted file mode 100644 index bb453a5..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/spice.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/spicedHam.png b/src (1)/main/resources/assets/lotr/textures/items/spicedHam.png deleted file mode 100644 index f927114..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/spicedHam.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/staffAsh.png b/src (1)/main/resources/assets/lotr/textures/items/staffAsh.png deleted file mode 100644 index 1af542c..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/staffAsh.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/swordAsh.png b/src (1)/main/resources/assets/lotr/textures/items/swordAsh.png deleted file mode 100644 index 54f91ae..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/swordAsh.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/swordBree.png b/src (1)/main/resources/assets/lotr/textures/items/swordBree.png deleted file mode 100644 index d641eb3..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/swordBree.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/swordRedDwarf.png b/src (1)/main/resources/assets/lotr/textures/items/swordRedDwarf.png deleted file mode 100644 index d54a24e..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/swordRedDwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/toxic_core.png b/src (1)/main/resources/assets/lotr/textures/items/toxic_core.png deleted file mode 100644 index 5939da4..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/toxic_core.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/tridentLimwaith.png b/src (1)/main/resources/assets/lotr/textures/items/tridentLimwaith.png deleted file mode 100644 index 6170c89..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/tridentLimwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/truncheonLimwaith.png b/src (1)/main/resources/assets/lotr/textures/items/truncheonLimwaith.png deleted file mode 100644 index f815038..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/truncheonLimwaith.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/upgrade_kit.png b/src (1)/main/resources/assets/lotr/textures/items/upgrade_kit.png deleted file mode 100644 index 5f7d429..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/upgrade_kit.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_ancient.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_ancient.png deleted file mode 100644 index 37d7ba3..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_ancient.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_black_uruk.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_black_uruk.png deleted file mode 100644 index 5acb6c6..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_black_uruk.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_blue_dwarven.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_blue_dwarven.png deleted file mode 100644 index f2147b8..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_blue_dwarven.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_bronze.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_bronze.png deleted file mode 100644 index 12ac248..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_bronze.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_copper.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_copper.png deleted file mode 100644 index 56abf01..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_copper.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_dwarf.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_dwarf.png deleted file mode 100644 index 12f2319..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_dwarf.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_dwarven.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_dwarven.png deleted file mode 100644 index 12f2319..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_dwarven.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_elven.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_elven.png deleted file mode 100644 index 2880d85..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_elven.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_gilded_iron.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_gilded_iron.png deleted file mode 100644 index fa74aa8..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_gilded_iron.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_headless.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_headless.png deleted file mode 100644 index 751e75d..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_headless.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_0.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_0.png deleted file mode 100644 index 8e9d59e..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_0.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_0_morgul.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_0_morgul.png deleted file mode 100644 index b0a3e0e..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_0_morgul.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_1.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_1.png deleted file mode 100644 index 703e164..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_1.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_1_morgul.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_1_morgul.png deleted file mode 100644 index 9da8ab5..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_1_morgul.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_2.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_2.png deleted file mode 100644 index ca8804a..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_2.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_2_morgul.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_2_morgul.png deleted file mode 100644 index 5c3c5c2..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_2_morgul.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_3.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_3.png deleted file mode 100644 index b9705f8..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_3.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_3_morgul.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_3_morgul.png deleted file mode 100644 index 7bc828a..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_3_morgul.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_4.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_4.png deleted file mode 100644 index b114491..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_4.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_4_morgul.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_4_morgul.png deleted file mode 100644 index 92d10ce..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_4_morgul.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_5.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_5.png deleted file mode 100644 index c5deb81..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_5.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_5_morgul.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_5_morgul.png deleted file mode 100644 index 3904239..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_heads_5_morgul.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_iron.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_iron.png deleted file mode 100644 index 4d7a481..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_iron.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_mithril.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_mithril.png deleted file mode 100644 index d30d551..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_mithril.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_mithril.png.mcmeta b/src (1)/main/resources/assets/lotr/textures/items/war_dart_mithril.png.mcmeta deleted file mode 100644 index 7b67f48..0000000 --- a/src (1)/main/resources/assets/lotr/textures/items/war_dart_mithril.png.mcmeta +++ /dev/null @@ -1,51 +0,0 @@ -{ - "animation": { - "frames": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6, - 6 - ] - } -} diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_morgul.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_morgul.png deleted file mode 100644 index 2469990..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_morgul.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_orc.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_orc.png deleted file mode 100644 index 8ed962f..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_orc.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_red_dwarven.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_red_dwarven.png deleted file mode 100644 index 7ee04b7..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_red_dwarven.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_dart_uruk.png b/src (1)/main/resources/assets/lotr/textures/items/war_dart_uruk.png deleted file mode 100644 index 8148798..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_dart_uruk.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/war_red_dwarven.png b/src (1)/main/resources/assets/lotr/textures/items/war_red_dwarven.png deleted file mode 100644 index 7ee04b7..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/war_red_dwarven.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/welfRelic.png b/src (1)/main/resources/assets/lotr/textures/items/welfRelic.png deleted file mode 100644 index f0225ea..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/welfRelic.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/items/whip.png b/src (1)/main/resources/assets/lotr/textures/items/whip.png deleted file mode 100644 index 7e22414..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/items/whip.png and /dev/null differ diff --git a/src (1)/main/resources/assets/lotr/textures/shield/alignment_RedDwarf.png b/src (1)/main/resources/assets/lotr/textures/shield/alignment_RedDwarf.png deleted file mode 100644 index 065901c..0000000 Binary files a/src (1)/main/resources/assets/lotr/textures/shield/alignment_RedDwarf.png and /dev/null differ diff --git a/src (1)/main/resources/credits.txt b/src (1)/main/resources/credits.txt deleted file mode 100644 index 4ebbf3c..0000000 --- a/src (1)/main/resources/credits.txt +++ /dev/null @@ -1,81 +0,0 @@ -Cinder LoE: An exciting expansion to Lord of Embers - -==Credits== - -• Mevans - Creation of the LOTRMod -• Shinare - Primary Creator of Cinder and all that it is capable of bringing to the world -• KeyLime17 - Secondary Developer, Texturer, and general assistant to whatever is being worked on -• cleric_red - primary developer of Textures and Models -• Deanburrito - Developer of textures and models -• Jacubie - Developer of some textures. - -==Textures: (Please do not reuse without the creators permission!)== -KeyLime17 -• Red Dwarven Alignment Shield -• Wood Elven Relic -• Upgrade Kit -• Limwaith Weapons -• Limwaith Armor sets -• Bree Sword -• Ash Weaponry -• Spiced Ham, Spice, Doner Kebab, Bacon, Beef Stew, Light Stew, Pelmen, Onion, Cabbage, Halva -• Wizard Staves -• Chains -• Frostblade -• Voidal Dagger -• Red Dwarf Crossbow -• Bonemold, Ashen Ingot -• Fish barrel -• Cut and Cobbled Drystone - -Cleric_red -• War darts -• Toxic Core -• Red Dwarven Weapons -• Red Dwarven Armor sets -• Bree Armor sets -• Ash Weaponry -• Pretzel, Pasta, Dough, Flour, Chocolate -• Arnor Mace -• Arnor Light armor set -• Haradric Elite Armor sets -• Rhudaur Armor set -• Jade Armor set -• Red Dwarven Ingot and Block -• Cinder block -• Red Dwarven Chandelier -• Ice cage -• Plaster -• Red Dwarven Banner -• Mordor Cobblebrick - -Deanburrito -• Repair Kit -• All the extra Fur Blocks -• And the Fur items - -Jacubie -• Whip - -Geralt (Or other usernames such as DefenderOfChina) -• Drannach Iaur (spearUnnamed.png) - -==Models: (All models below belong to their corresponding individual, a lot of work was put into them, so if you wish to redistribute, please ask!)== - -Cleric_red -• Jade Armor Model -• Serpent Armor Model -• Bree Kettle Helmet Model -• Broken Halo Model -• Red Dwarven Helmet Model -• Usurper Helmet Model -• Rhudaur Helmet Armor Model -• Warlord Helmet Model - -==Sounds:== - -KeyLime (Although Most of these are or will be taken from existing video games and sources, which will be attached to the name) -• boss/Battle - Baldurs Gate 3 - Ketheric Thorm Battle Theme - Borislav Slavov -• boss/Spiders - Baldurs Gate 3 - Thorms Battle OST - Borislav Slavov -• boss/Battle2 - Baldurs Gate 3 OST - Fight Theme 916 - Ally Down - Borislav Slavov -• boss/Victory - Borislav Slavov - Baldurs Gate 3 OST - Battle - Enemy Down - Borislav Slavov diff --git a/src (1)/main/resources/mcmod.info b/src (1)/main/resources/mcmod.info deleted file mode 100644 index 6f29673..0000000 --- a/src (1)/main/resources/mcmod.info +++ /dev/null @@ -1,21 +0,0 @@ -{ - "modListVersion": 2, - "modList": [{ - "modid": "${modId}", - "name": "${modName}", - "description": "CINDER MOD.\nA pretty big mod adding various additions to the LOTR Mod", - "version": "${modVersion}", - "mcversion": "${minecraftVersion}", - "url": "thelordofembers.com", - "updateUrl": "", - "authorList": ["Shinare", "KeyLime"], - "credits": "cleric_red", - "logoFile": "", - "screenshots": [], - "parent": "", - "requiredMods": [], - "dependencies": [], - "dependants": [], - "useDependencyInformation": true - }] -} diff --git a/src (1)/main/resources/mixins.cinder_loe.json b/src (1)/main/resources/mixins.cinder_loe.json deleted file mode 100644 index 8e3ac62..0000000 --- a/src (1)/main/resources/mixins.cinder_loe.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "required": true, - "minVersion": "0.7.11", - "package": "com.zivilon.cinder_loe.mixins", - "refmap": "mixins.cinder_loe.refmap.json", - "target": "@env(DEFAULT)", - "compatibilityLevel": "JAVA_8", - "mixins": [ - "MixinEnchantmentHelper", - "MixinEntity", - "MixinEntityArrow", - "MixinItemRenderer", - "MixinLOTRArmorModels", - "MixinLOTRBrewingRecipes", - "MixinLOTRClientProxy", - "MixinLOTRContainerAnvil", - "MixinLOTREnchantment", - "MixinLOTREnchantmentType", - "MixinLOTREntityAINearestAttackableTargetBasic", - "MixinLOTREntityProjectileBase", - "MixinLOTREntitySauron", - "MixinLOTRIntCache", - "MixinLOTRNPCRendering", - "MixinLOTRRenderArmorStand", - "MixinLOTRRenderBlownItem", - "MixinLOTRRenderBow", - "MixinLOTRRenderCrossbow", - "MixinLOTRRenderDart", - "MixinLOTRRenderElf", - "MixinLOTRRenderElvenBlade", - "MixinLOTRRenderLargeItem", - "MixinLOTRRenderNPCRespawner", - "MixinLOTRRenderPlateFood", - "MixinLOTRRenderThrowingAxe", - "MixinLOTRRenderTraderRespawn", - "MixinLOTRTileEntityDwarvenForge", - "MixinLOTRTileEntityForgeBase", - "MixinLOTRTradeEntries", - "MixinLOTRWorldGenMumakSkeleton", - "MixinRendererLivingEntity", - "MixinRenderItem", - "MixinSlotCrafting", - "MixinLOTREntityWarg", - "overrides.MixinLOTRHiredNPCInfo", - "overrides.MixinLOTRItemEntDraught", - "overrides.MixinLOTRReplacedMethods", - "overrides.MixinLOTRTradeEntriesOverrides", - "overrides.MixinLOTRUnitTradeEntries", - "MixinEntityLivingBase", - "MixinEntityPlayer", - "MixinLOTREntityAIAttackOnCollide", - "MixinLOTREntityNPC", - "MixinFoodStats" - ], - "client": [] -} diff --git a/src/main/java/com/zivilon/cinder_loe/CinderLoE.java b/src/main/java/com/zivilon/cinder_loe/CinderLoE.java index 44bcfaa..e1a2279 100644 --- a/src/main/java/com/zivilon/cinder_loe/CinderLoE.java +++ b/src/main/java/com/zivilon/cinder_loe/CinderLoE.java @@ -26,11 +26,12 @@ import com.zivilon.cinder_loe.items.*; import com.zivilon.cinder_loe.potion.LoEPotions; import com.zivilon.cinder_loe.tileentity.*; import com.zivilon.cinder_loe.util.Utilities; +import com.zivilon.cinder_loe.world.event.*; import com.zivilon.cindercore.CinderCore; -import lotr.common.item.*; -import net.minecraft.potion.Potion; + import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; + import org.objectweb.asm.ClassReader; import org.objectweb.asm.util.TraceClassVisitor; @@ -63,6 +64,7 @@ import lotr.common.LOTRMod; import lotr.common.entity.animal.*; import lotr.common.entity.npc.*; import lotr.common.entity.projectile.LOTREntityGandalfFireball; +import lotr.common.item.*; import lotr.common.world.biome.LOTRBiome; import lotr.common.world.spawning.LOTRBiomeSpawnList; import lotr.common.world.spawning.LOTRSpawnEntry; @@ -75,6 +77,7 @@ import net.minecraft.entity.passive.EntityWolf; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.Item; +import net.minecraft.potion.Potion; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.event.world.WorldEvent; @@ -89,17 +92,18 @@ import com.zivilon.cinder_loe.SwiftnessHandler; @Mod( modid = "cinder_loe", - version = "1.3.0", + version = "1.4.0", name = "CinderLoE", dependencies = "required-after:spongemixins@[1.1.0,);required-after:lotr", acceptedMinecraftVersions = "[1.7.10]", - acceptableRemoteVersions = "[1.3.0]") + acceptableRemoteVersions = "[1.4.0]") public class CinderLoE { @Instance("cinder_loe") public static CinderLoE instance; public static Logger LOG = LogManager.getLogger(Tags.MODID); + public static boolean DEBUG = false; // LOTR Materials public static LOTRMaterial MATERIAL_RED_DWARF; @@ -171,6 +175,17 @@ public class CinderLoE { // public static Item honey; public static Item doner_kebab; + // Brews + public static Item mugElfBrew; + public static Item mugHumanBrew; + public static Item mugOrcBrew; + public static Item mugDwarfBrew; + public static Item spiceElven; + public static Item spiceHuman; + public static Item spiceOrcish; + public static Item spiceDwarven; + + // Event/special public static Item frostblade; public static Item daggervoid; @@ -292,6 +307,7 @@ public class CinderLoE { public static Item unitLevelTool; // Spawn lists + public static LOTRSpawnList RED_DWARF; public static LOTRSpawnList LIMWAITH; public static LOTRSpawnList RHUDAUR; @@ -319,6 +335,7 @@ public class CinderLoE { } MinecraftForge.EVENT_BUS.register(this); new CharacterEventListener(); + FMLCommonHandler.instance().bus().register(new WarbandTickHandler()); MinecraftForge.EVENT_BUS.register(new SwiftnessHandler()); } @@ -548,6 +565,18 @@ public class CinderLoE { halva = new LOTRItemFood (7, 4.0f, false).setUnlocalizedName("lotr:halva").setTextureName("lotr:halva"); doner_kebab = new LOTRItemFood (6, 6.0f, false).setUnlocalizedName("lotr:doner_kebab").setTextureName("lotr:doner_kebab"); // honey = new LOTRItemFood(3, 0.4f, false).setPotionEffect(Potion.regeneration.id, 5, 0, 100).setUnlocalizedName("lotr:honey").setTextureName("lotr:honey"); + spiceElven = new Item().setUnlocalizedName("lotr:spice_elven").setTextureName("lotr:spice_elven"); + spiceHuman = new Item().setUnlocalizedName("lotr:spice_human").setTextureName("lotr:spice_human"); + spiceOrcish = new Item().setUnlocalizedName("lotr:spice_orcish").setTextureName("lotr:spice_orcish"); + spiceDwarven = new Item().setUnlocalizedName("lotr:spice_dwarven").setTextureName("lotr:spice_dwarven"); + mugElfBrew = (new LoEItemMug(0.0F)).setDrinkStats(20, 1.0F).addPotionEffect(Potion.moveSpeed.id, 180, 1).toxic().setUnlocalizedName("lotr:mugElfBrew"); + mugHumanBrew = (new LoEItemMug(0.0F)).setDrinkStats(20, 1.0F).addPotionEffect(Potion.regeneration.id, 180, 1).toxic().setUnlocalizedName("lotr:mugHumanBrew"); + mugOrcBrew = (new LoEItemMug(0.0F)).setDrinkStats(20, 1.0F).addPotionEffect(Potion.damageBoost.id, 180, 1).toxic().setUnlocalizedName("lotr:mugOrcBrew"); + mugDwarfBrew = (new LoEItemMug(0.0F)).setDrinkStats(20, 1.0F).addPotionEffect(Potion.field_76443_y.id, 360).toxic().setUnlocalizedName("lotr:mugDwarfBrew"); + ((LoEItemMug)mugElfBrew).setTextureNameFromUnlocalizedName(); + ((LoEItemMug)mugHumanBrew).setTextureNameFromUnlocalizedName(); + ((LoEItemMug)mugOrcBrew).setTextureNameFromUnlocalizedName(); + ((LoEItemMug)mugDwarfBrew).setTextureNameFromUnlocalizedName(); spawnEgg = new CinderLoESpawnEgg(); @@ -615,6 +644,14 @@ public class CinderLoE { ItemRegistration.register(halva, "halva", 6911); ItemRegistration.register(doner_kebab, "doner_kebab", 6912); ItemRegistration.register(lightStew, "lightStew", 6913); + ItemRegistration.register(mugElfBrew, "mugElfBrew",6914); + ItemRegistration.register(mugHumanBrew, "mugHumanBrew",6915); + ItemRegistration.register(mugOrcBrew, "mugOrcBrew",6916); + ItemRegistration.register(mugDwarfBrew, "mugDwarfBrew",6917); + ItemRegistration.register(spiceElven, "spiceElven",6918); + ItemRegistration.register(spiceHuman, "spiceHuman",6919); + ItemRegistration.register(spiceOrcish, "spiceOrcish",6920); + ItemRegistration.register(spiceDwarven, "spiceDwarven",6921); ItemRegistration.register(spawnEgg, "spawnEgg", 6003); diff --git a/src (1)/main/java/com/zivilon/cinder_loe/droptables/DropContext.java b/src/main/java/com/zivilon/cinder_loe/droptables/DropContext.java similarity index 100% rename from src (1)/main/java/com/zivilon/cinder_loe/droptables/DropContext.java rename to src/main/java/com/zivilon/cinder_loe/droptables/DropContext.java diff --git a/src (1)/main/java/com/zivilon/cinder_loe/droptables/DropTable.java b/src/main/java/com/zivilon/cinder_loe/droptables/DropTable.java similarity index 100% rename from src (1)/main/java/com/zivilon/cinder_loe/droptables/DropTable.java rename to src/main/java/com/zivilon/cinder_loe/droptables/DropTable.java diff --git a/src (1)/main/java/com/zivilon/cinder_loe/droptables/DropTableHandler.java b/src/main/java/com/zivilon/cinder_loe/droptables/DropTableHandler.java similarity index 100% rename from src (1)/main/java/com/zivilon/cinder_loe/droptables/DropTableHandler.java rename to src/main/java/com/zivilon/cinder_loe/droptables/DropTableHandler.java diff --git a/src/main/java/com/zivilon/cinder_loe/entity/ai/LoEPreciseAttackOnCollide.java b/src/main/java/com/zivilon/cinder_loe/entity/ai/LoEPreciseAttackOnCollide.java index 693fc7a..aa9265d 100644 --- a/src/main/java/com/zivilon/cinder_loe/entity/ai/LoEPreciseAttackOnCollide.java +++ b/src/main/java/com/zivilon/cinder_loe/entity/ai/LoEPreciseAttackOnCollide.java @@ -5,6 +5,7 @@ import lotr.common.entity.npc.LOTREntityNPC; import lotr.common.entity.projectile.LOTREntitySpear; import lotr.common.item.LOTRItemSpear; import lotr.common.item.LOTRWeaponStats; + import net.minecraft.item.ItemStack; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityCreature; diff --git a/src/main/java/com/zivilon/cinder_loe/items/LoEItemMug.java b/src/main/java/com/zivilon/cinder_loe/items/LoEItemMug.java index 26fc1bc..5d39b8b 100644 --- a/src/main/java/com/zivilon/cinder_loe/items/LoEItemMug.java +++ b/src/main/java/com/zivilon/cinder_loe/items/LoEItemMug.java @@ -1,18 +1,26 @@ package com.zivilon.cinder_loe.items; import com.zivilon.cinder_loe.LoECreativeTabs; +import com.zivilon.cinder_loe.potion.LoEPotions; import lotr.common.item.LOTRItemMug; import lotr.common.item.LOTRItemMug.Vessel; import lotr.client.render.LOTRDrinkIcons; +import net.minecraft.entity.player.EntityPlayer; import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.item.ItemStack; +import net.minecraft.potion.Potion; +import net.minecraft.potion.PotionEffect; import net.minecraft.util.IIcon; +import net.minecraft.world.World; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; public class LoEItemMug extends LOTRItemMug { + public boolean is_toxic = false; + @SideOnly(Side.CLIENT) public IIcon[] drinkIcons; @@ -37,7 +45,17 @@ public class LoEItemMug extends LOTRItemMug { this.setTextureName(textureName); } + public LoEItemMug addPotionEffect(int effect_id, int seconds) { + return (LoEItemMug)super.addPotionEffect(effect_id, seconds); + } + public LoEItemMug addPotionEffect(int effect_id, int seconds, int amplifier) { + this.potionEffects.add(new PotionEffect(effect_id, seconds * 20, amplifier)); + return this; + } + public LoEItemMug setDrinkStats(int i, float f) { + return (LoEItemMug)super.setDrinkStats(i, f); + } public void registerIcons(IIconRegister iconregister) { if (this.isFullMug) { this.drinkIcons = new IIcon[(Vessel.values()).length]; @@ -66,4 +84,20 @@ public class LoEItemMug extends LOTRItemMug { int i = damage / vesselMeta; return Vessel.forMeta(i); } + public LoEItemMug toxic() { + is_toxic = true; + return this; + } + public ItemStack onEaten(ItemStack itemstack, World world, EntityPlayer entityplayer) { + if (is_toxic) + increment_toxin(entityplayer); + return super.onEaten(itemstack, world, entityplayer); + } + public void increment_toxin(EntityPlayer player) { + int effect_duration = 7200; // 360 seconds * 20 ticks + int effect_potency = 0; // Default to level 1 effect + PotionEffect potion = player.getActivePotionEffect(LoEPotions.herbal_poisoning); + if (potion != null) effect_potency = potion.getAmplifier() + 1; + player.addPotionEffect(new PotionEffect(LoEPotions.herbal_poisoning.id, effect_duration, effect_potency)); + } } diff --git a/src/main/java/com/zivilon/cinder_loe/mixins/MixinEntityLivingBase.java b/src/main/java/com/zivilon/cinder_loe/mixins/MixinEntityLivingBase.java index 66c73be..7f10045 100644 --- a/src/main/java/com/zivilon/cinder_loe/mixins/MixinEntityLivingBase.java +++ b/src/main/java/com/zivilon/cinder_loe/mixins/MixinEntityLivingBase.java @@ -6,26 +6,34 @@ import org.spongepowered.asm.mixin.*; import org.spongepowered.asm.mixin.injection.*; import org.spongepowered.asm.mixin.injection.callback.*; -import net.minecraft.potion.Potion; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.effect.EntityLightningBolt; import net.minecraft.entity.passive.EntityTameable; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.potion.Potion; +import net.minecraft.server.MinecraftServer; +import net.minecraft.util.ChatComponentText; import net.minecraft.util.DamageSource; +import net.minecraft.util.EnumChatFormatting; import net.minecraft.world.World; -import net.minecraft.entity.effect.EntityLightningBolt; import net.minecraftforge.common.ForgeHooks; import java.lang.reflect.*; import java.util.List; +import java.util.UUID; @Mixin(EntityLivingBase.class) -public abstract class MixinEntityLivingBase extends Entity { +public abstract class MixinEntityLivingBase extends Entity implements IEntityLivingBase { private static boolean checked_cauldron = false; private static Method cauldron_method; + public int despawn_timer = -1; + public UUID warband_uuid = null; + @Shadow protected int entityAge; @Shadow @@ -199,22 +207,22 @@ public abstract class MixinEntityLivingBase extends Entity { @Dynamic private void check_cauldron() { - try { - Class target_class = EntityLivingBase.class; - Method[] methods = target_class.getDeclaredMethods(); - - for (Method method : methods) { - if (method.getName().equals("damageEntity_CB")) { - cauldron_method = method; - return; + try { + Class target_class = EntityLivingBase.class; + Method[] methods = target_class.getDeclaredMethods(); + + for (Method method : methods) { + if (method.getName().equals("damageEntity_CB")) { + cauldron_method = method; + return; + } } + } catch (Exception e) { + e.printStackTrace(); } - } catch (Exception e) { - e.printStackTrace(); - } - return; -} + return; + } @Dynamic public boolean entitydamage_cauldron(DamageSource source, float damage) { @@ -230,4 +238,47 @@ public abstract class MixinEntityLivingBase extends Entity { } return return_value; } + + /** + * Add support for despawn after specified time loaded + * Add support for following a warband leader + */ + @Inject(method = "writeEntityToNBT", at = @At("TAIL")) + private void writeWarbandNBT(NBTTagCompound compound, CallbackInfo ci) { + compound.setInteger("DespawnTimer", despawn_timer); + compound.setString("WarbandLeader", warband_uuid != null ? warband_uuid.toString() : ""); + } + @Inject(method = "readEntityFromNBT", at = @At("TAIL")) + private void readWarbandNBT(NBTTagCompound compound, CallbackInfo ci) { + despawn_timer = compound.getInteger("DespawnTimer"); + if (compound.hasKey("WarbandLeader")) { + String idStr = compound.getString("WarbandLeader"); + if (!idStr.isEmpty()) warband_uuid = UUID.fromString(idStr); + } + } + + @Inject(method = "onUpdate", at = @At("TAIL")) + private void onUpdate(CallbackInfo ci) { + if (despawn_timer > -1) { + despawn_timer--; + if (despawn_timer == 0) { + if (warband_uuid == ((EntityLivingBase)(Object)this).getUniqueID()) { + MinecraftServer.getServer().getConfigurationManager().sendChatMsg(new ChatComponentText(EnumChatFormatting.GRAY + "Warband has disbanded")); + } + ((EntityLivingBase)(Object)this).setDead(); + } + } + } + @Override + public void set_despawn_timer(int ticks) { + this.despawn_timer = ticks; + } + @Override + public void set_warband_uuid(UUID uuid) { + this.warband_uuid = uuid; + } + @Override + public UUID get_warband_uuid() { + return this.warband_uuid; + } } diff --git a/src/main/java/com/zivilon/cinder_loe/mixins/MixinEntityPlayer.java b/src/main/java/com/zivilon/cinder_loe/mixins/MixinEntityPlayer.java index e644b74..9625c7e 100644 --- a/src/main/java/com/zivilon/cinder_loe/mixins/MixinEntityPlayer.java +++ b/src/main/java/com/zivilon/cinder_loe/mixins/MixinEntityPlayer.java @@ -1,38 +1,123 @@ package com.zivilon.cinder_loe.mixins; +import com.zivilon.cinder_loe.CinderLoE; import com.zivilon.cinder_loe.util.Pair; import com.zivilon.cinder_loe.util.DamageEvent; +import com.zivilon.cinder_loe.util.IMixinEntityPlayer; +import com.zivilon.cinder_loe.potion.LoEPotions; +import com.zivilon.cinder_loe.potion.PotionHerbPoison; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; -import net.minecraft.potion.Potion; +import net.minecraft.enchantment.EnchantmentHelper; import net.minecraft.entity.*; +import net.minecraft.entity.boss.EntityDragonPart; +import net.minecraft.entity.effect.EntityLightningBolt; import net.minecraft.entity.player.*; +import net.minecraft.entity.projectile.EntityFishHook; +import net.minecraft.inventory.Container; +import net.minecraft.inventory.InventoryEnderChest; import net.minecraft.item.ItemStack; -import net.minecraft.util.DamageSource; +import net.minecraft.potion.Potion; +import net.minecraft.potion.PotionEffect; +import net.minecraft.stats.*; +import net.minecraft.util.*; +import net.minecraft.world.EnumDifficulty; import net.minecraft.world.World; -import net.minecraft.entity.effect.EntityLightningBolt; +import net.minecraft.enchantment.EnchantmentHelper; import net.minecraftforge.common.ForgeHooks; import net.minecraftforge.common.ISpecialArmor.ArmorProperties; +import net.minecraftforge.common.MinecraftForge; +import net.minecraftforge.event.entity.player.AttackEntityEvent; import com.mojang.authlib.GameProfile; +import java.util.HashMap; import java.util.List; @Mixin(EntityPlayer.class) -public abstract class MixinEntityPlayer extends EntityLivingBase { +public abstract class MixinEntityPlayer extends EntityLivingBase implements IMixinEntityPlayer { + public int last_pickpocket_attempt = 0; public MixinEntityPlayer(World world, GameProfile p_i45324_2_) { super(world); } @Shadow - public abstract void addExhaustion(float p_71020_1_); + public static final String PERSISTED_NBT_TAG = "PlayerPersisted"; + @Shadow + private HashMap spawnChunkMap; + @Shadow + private HashMap spawnForcedMap; @Shadow public InventoryPlayer inventory; + @Shadow + private InventoryEnderChest theInventoryEnderChest; + @Shadow + public Container inventoryContainer; + @Shadow + public Container openContainer; + @Shadow + protected FoodStats foodStats; + @Shadow + protected int flyToggleTimer; + @Shadow + public float prevCameraYaw; + @Shadow + public float cameraYaw; + @Shadow + public int xpCooldown; + @Shadow + protected boolean sleeping; + @Shadow + public ChunkCoordinates playerLocation; + @Shadow + private int sleepTimer; + @Shadow + private ChunkCoordinates spawnChunk; + @Shadow + private boolean spawnForced; + @Shadow + private ChunkCoordinates startMinecartRidingCoordinate; + @Shadow + public PlayerCapabilities capabilities; + @Shadow + public int experienceLevel; + @Shadow + public int experienceTotal; + @Shadow + public float experience; + @Shadow + private ItemStack itemInUse; + @Shadow + private int itemInUseCount; + @Shadow + protected float speedOnGround; + @Shadow + protected float speedInAir; + @Shadow + public EntityFishHook fishEntity; + @Shadow + public void destroyCurrentEquippedItem() {} + @Shadow + public void addStat(StatBase p_71064_1_, int p_71064_2_) {} + @Shadow + public ItemStack getCurrentEquippedItem() { return null;} + @Shadow + public void onEnchantmentCritical(Entity p_71047_1_) {} + @Shadow + public void onCriticalHit(Entity p_71009_1_) {} + @Shadow + public void triggerAchievement(StatBase p_71029_1_) {} + @Shadow + public abstract void addExhaustion(float p_71020_1_); /** * @author Shinare @@ -61,4 +146,187 @@ public abstract class MixinEntityPlayer extends EntityLivingBase { } } } + @Override + public void set_last_pickpocket_attempt(int i) { + this.last_pickpocket_attempt = i; + } + @Override + public int get_last_pickpocket_attempt() { + return this.last_pickpocket_attempt; + } + /* Proper solution for later + @Redirect( + method = "func_71059_n", + at = @At(value = "FIELD", target = "Lnet/minecraft/entity/Entity;field_70143_R:F", remap = false) + ) + private float redirectFallDistanceForCrit(Entity instance) { + if (instance instanceof EntityPlayer) { + PotionEffect poison = ((EntityPlayer) instance).getActivePotionEffect(LoEPotions.herbal_poisoning); + if (poison != null && poison.getAmplifier() >= 1) { + System.out.println("Setting fall distance to 0.0F"); + return 0.0F; // no fall distance = no crit + } + } + System.out.println("Preserving fall distance."); + return instance.fallDistance; + }*/ + + @Overwrite + public void attackTargetEntityWithCurrentItem(Entity p_71059_1_) + { + if (MinecraftForge.EVENT_BUS.post(new AttackEntityEvent(((EntityPlayer)(Object)this), p_71059_1_))) + { + return; + } + ItemStack stack = getCurrentEquippedItem(); + if (stack != null && stack.getItem().onLeftClickEntity(stack, ((EntityPlayer)(Object)this), p_71059_1_)) + { + return; + } + if (p_71059_1_.canAttackWithItem()) + { + if (!p_71059_1_.hitByEntity(this)) + { + float f = (float)this.getEntityAttribute(SharedMonsterAttributes.attackDamage).getAttributeValue(); + int i = 0; + float f1 = 0.0F; + + if (p_71059_1_ instanceof EntityLivingBase) + { + f1 = EnchantmentHelper.getEnchantmentModifierLiving(this, (EntityLivingBase)p_71059_1_); + i += EnchantmentHelper.getKnockbackModifier(this, (EntityLivingBase)p_71059_1_); + } + + if (this.isSprinting()) + { + ++i; + } + + if (f > 0.0F || f1 > 0.0F) + { + boolean flag = this.fallDistance > 0.0F && !this.onGround && !this.isOnLadder() && !this.isInWater() && !this.isPotionActive(Potion.blindness) && this.ridingEntity == null && p_71059_1_ instanceof EntityLivingBase; + System.out.println("Hello"); + if (PotionHerbPoison.should_cancel_crit((EntityPlayer)(Object)this)) { + flag = false; + } + + if (flag && f > 0.0F) + { + f *= 1.5F; + } + + f += f1; + boolean flag1 = false; + int j = EnchantmentHelper.getFireAspectModifier(((EntityPlayer)(Object)this)); + + if (p_71059_1_ instanceof EntityLivingBase && j > 0 && !p_71059_1_.isBurning()) + { + flag1 = true; + p_71059_1_.setFire(1); + } + + boolean flag2 = p_71059_1_.attackEntityFrom(DamageSource.causePlayerDamage(((EntityPlayer)(Object)this)), f); + + if (flag2) + { + if (i > 0) + { + p_71059_1_.addVelocity((double)(-MathHelper.sin(this.rotationYaw * (float)Math.PI / 180.0F) * (float)i * 0.5F), 0.1D, (double)(MathHelper.cos(((EntityPlayer)(Object)this).rotationYaw * (float)Math.PI / 180.0F) * (float)i * 0.5F)); + ((EntityPlayer)(Object)this).motionX *= 0.6D; + ((EntityPlayer)(Object)this).motionZ *= 0.6D; + ((EntityPlayer)(Object)this).setSprinting(false); + } + + if (flag) + { + this.onCriticalHit(p_71059_1_); + } + + if (f1 > 0.0F) + { + this.onEnchantmentCritical(p_71059_1_); + } + + if (f >= 18.0F) + { + this.triggerAchievement(AchievementList.overkill); + } + + ((EntityPlayer)(Object)this).setLastAttacker(p_71059_1_); + + if (p_71059_1_ instanceof EntityLivingBase) + { + EnchantmentHelper.func_151384_a((EntityLivingBase)p_71059_1_, ((EntityPlayer)(Object)this)); + } + + EnchantmentHelper.func_151385_b(((EntityPlayer)(Object)this), p_71059_1_); + ItemStack itemstack = ((EntityPlayer)(Object)this).getCurrentEquippedItem(); + Object object = p_71059_1_; + + if (p_71059_1_ instanceof EntityDragonPart) + { + IEntityMultiPart ientitymultipart = ((EntityDragonPart)p_71059_1_).entityDragonObj; + + if (ientitymultipart != null && ientitymultipart instanceof EntityLivingBase) + { + object = (EntityLivingBase)ientitymultipart; + } + } + + if (itemstack != null && object instanceof EntityLivingBase) + { + itemstack.hitEntity((EntityLivingBase)object, ((EntityPlayer)(Object)this)); + + if (itemstack.stackSize <= 0) + { + ((EntityPlayer)(Object)this).destroyCurrentEquippedItem(); + } + } + + if (p_71059_1_ instanceof EntityLivingBase) + { + this.addStat(StatList.damageDealtStat, Math.round(f * 10.0F)); + + if (j > 0) + { + p_71059_1_.setFire(j * 4); + } + } + + this.addExhaustion(0.3F); + } + else if (flag1) + { + p_71059_1_.extinguish(); + } + } + } + } + } + + @Inject(method = "onLivingUpdate", at = @At("TAIL")) + public void disableHotbarSlotsHerbalPoisoning(CallbackInfo ci) { + EntityPlayer player = (EntityPlayer)(Object)this; + PotionEffect effect = player.getActivePotionEffect(LoEPotions.herbal_poisoning); + + if (effect != null && effect.getAmplifier() >= 2) { + int slot = player.inventory.currentItem; + if (slot >= 3 && slot <= 8) { + player.inventory.currentItem = 0; + } + } + } + public boolean canAttackWithItem() { + EntityPlayer player = (EntityPlayer)(Object)this; + PotionEffect effect = player.getActivePotionEffect(LoEPotions.herbal_poisoning); + + if (effect != null && effect.getAmplifier() >= 2) { + int slot = player.inventory.currentItem; + if (slot >= 3 && slot <= 8) { + if (CinderLoE.DEBUG) System.out.println("ATTACK DENIED"); + return false; + } + } + return super.canAttackWithItem(); + } } diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinFoodStats.java b/src/main/java/com/zivilon/cinder_loe/mixins/MixinFoodStats.java similarity index 100% rename from src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinFoodStats.java rename to src/main/java/com/zivilon/cinder_loe/mixins/MixinFoodStats.java diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityAIAttackOnCollide.java b/src/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityAIAttackOnCollide.java similarity index 100% rename from src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityAIAttackOnCollide.java rename to src/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityAIAttackOnCollide.java diff --git a/src/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityAINearestAttackableTargetBasic.java b/src/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityAINearestAttackableTargetBasic.java index c351181..a3e8f1f 100644 --- a/src/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityAINearestAttackableTargetBasic.java +++ b/src/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityAINearestAttackableTargetBasic.java @@ -1,24 +1,108 @@ package com.zivilon.cinder_loe.mixins; -import com.zivilon.cinder_loe.potion.LoEPotions; // Needs to be implemented +import com.zivilon.cinder_loe.entity.Renegade; +import com.zivilon.cinder_loe.potion.LoEPotions; +import com.zivilon.cinder_loe.util.IEntityLivingBase; import lotr.common.LOTRLevelData; import lotr.common.LOTRMod; import lotr.common.entity.ai.LOTREntityAINearestAttackableTargetBasic; +import lotr.common.entity.ai.LOTREntityAINearestAttackableTargetBasic.TargetSorter; +import lotr.common.entity.npc.LOTREntityNPC; +import lotr.common.entity.npc.LOTREntityNPCRideable; +import net.minecraft.command.IEntitySelector; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityCreature; +import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.ai.EntityAITarget; import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.world.World; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.*; +import org.spongepowered.asm.mixin.injection.*; +import org.spongepowered.asm.mixin.injection.callback.*; + +import java.util.UUID; +import java.util.Collections; +import java.util.List; @Mixin(LOTREntityAINearestAttackableTargetBasic.class) public abstract class MixinLOTREntityAINearestAttackableTargetBasic extends EntityAITarget { + @Shadow + private final Class targetClass; + @Shadow + private EntityLivingBase targetEntity; + @Shadow + private final TargetSorter targetSorter; + @Shadow + private final IEntitySelector targetSelector; + @Shadow + private final int targetChance; public MixinLOTREntityAINearestAttackableTargetBasic(EntityCreature p_i1669_1_, boolean p_i1669_2_) { super(p_i1669_1_, p_i1669_2_); + targetClass = null; // Should never get applied because constructors can't be overwritten + targetEntity = null; + targetSorter = null; + targetSelector = null; + targetChance = 0; + } + + @Overwrite(remap = true) + public boolean shouldExecute() { + EntityCreature self = taskOwner; + + if (!(self instanceof IEntityLivingBase)) return original_should_execute(); + + UUID leader_id = ((IEntityLivingBase) self).get_warband_uuid(); + if (leader_id == null) return original_should_execute(); + + Entity leader = find_entity_by_uuid(self.worldObj, leader_id); + if (leader == null) return original_should_execute(); + + double distance_squared = self.getDistanceSqToEntity(leader); + if (distance_squared > 576.0D) { + self.setAttackTarget(null); + self.getNavigator().tryMoveToEntityLiving(leader, 1.3D); + return false; + } + return original_should_execute(); + } + + public boolean original_should_execute() { + if (this.targetChance > 0 && this.taskOwner.getRNG().nextInt(this.targetChance) != 0) + return false; + if (this.taskOwner instanceof LOTREntityNPC) { + LOTREntityNPC npc = (LOTREntityNPC)this.taskOwner; + if (npc.hiredNPCInfo.isActive && npc.hiredNPCInfo.isHalted()) + return false; + if (npc.isChild()) + return false; + } + if (this.taskOwner instanceof LOTREntityNPCRideable) { + LOTREntityNPCRideable rideable = (LOTREntityNPCRideable)this.taskOwner; + if (rideable.isNPCTamed() || rideable.riddenByEntity instanceof EntityPlayer) + return false; + } + double range = getTargetDistance(); + double rangeY = Math.min(range, 8.0D); + List entities = this.taskOwner.worldObj.selectEntitiesWithinAABB(this.targetClass, this.taskOwner.boundingBox.expand(range, rangeY, range), this.targetSelector); + List entity_list = (List)entities; + Collections.sort(entity_list, this.targetSorter); + if (entities.isEmpty()) + return false; + this.targetEntity = (EntityLivingBase)entities.get(0); + return true; + } + + private Entity find_entity_by_uuid(World world, UUID uuid) { + for (Object obj : world.loadedEntityList) { + if (obj instanceof Entity && uuid.equals(((Entity) obj).getUniqueID())) { + return (Entity)obj; + } + } + return null; } /** diff --git a/src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityNPC.java b/src/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityNPC.java similarity index 100% rename from src (1)/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityNPC.java rename to src/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityNPC.java diff --git a/src/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityProjectileBase.java b/src/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityProjectileBase.java index 329c8f4..47862ab 100644 --- a/src/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityProjectileBase.java +++ b/src/main/java/com/zivilon/cinder_loe/mixins/MixinLOTREntityProjectileBase.java @@ -3,9 +3,11 @@ package com.zivilon.cinder_loe.mixins; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.Overwrite; + import lotr.common.item.LOTRWeaponStats; import lotr.common.enchant.LOTREnchantmentHelper; import lotr.common.entity.projectile.LOTREntityProjectileBase; + import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.entity.Entity; diff --git a/src/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRItemMug.java b/src/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRItemMug.java new file mode 100644 index 0000000..f5e3958 --- /dev/null +++ b/src/main/java/com/zivilon/cinder_loe/mixins/MixinLOTRItemMug.java @@ -0,0 +1,38 @@ + +package com.zivilon.cinder_loe.mixins; + +import com.zivilon.cinder_loe.potion.*; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import lotr.common.item.LOTRItemMug; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemFood; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.world.EnumDifficulty; +import net.minecraft.potion.*; +import net.minecraft.util.*; + +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Overwrite; + +import java.util.*; + +@Mixin(LOTRItemMug.class) +public class MixinLOTRItemMug { + @Shadow + protected List potionEffects = new ArrayList(); + + @Overwrite(remap = false) + private List convertPotionEffectsForStrength(float strength) { + List list = new ArrayList(); + for (int i = 0; i < this.potionEffects.size(); i++) { + PotionEffect base = this.potionEffects.get(i); + PotionEffect modified = new PotionEffect(base.getPotionID(), (int)(base.getDuration() * strength), base.getAmplifier()); + list.add(modified); + } + return list; + } +} diff --git a/src/main/java/com/zivilon/cinder_loe/potion/LoEPotions.java b/src/main/java/com/zivilon/cinder_loe/potion/LoEPotions.java index 34339c3..e9a0678 100644 --- a/src/main/java/com/zivilon/cinder_loe/potion/LoEPotions.java +++ b/src/main/java/com/zivilon/cinder_loe/potion/LoEPotions.java @@ -6,23 +6,11 @@ import net.minecraft.entity.EntityLivingBase; public class LoEPotions { public static Potion corrupting; + public static Potion herbal_poisoning; public static void registerPotions() { corrupting = new PotionCorrupting(31, false, 0x7F0000).setPotionName("potion.corrupting"); + herbal_poisoning = new PotionHerbPoison(29, false, 0x114023).setPotionName("potion.herbal_poisoning"); } } -class PotionCorrupting extends Potion { - public PotionCorrupting(int id, boolean isBadEffect, int liquidColor) { - super(id, isBadEffect, liquidColor); - } - - @Override - public void performEffect(EntityLivingBase entity, int amplifier) { - } - - @Override - public boolean isReady(int duration, int amplifier) { - return false; - } -} diff --git a/src (1)/main/java/com/zivilon/cinder_loe/potion/PotionCorrupting.java b/src/main/java/com/zivilon/cinder_loe/potion/PotionCorrupting.java similarity index 100% rename from src (1)/main/java/com/zivilon/cinder_loe/potion/PotionCorrupting.java rename to src/main/java/com/zivilon/cinder_loe/potion/PotionCorrupting.java diff --git a/src (1)/main/java/com/zivilon/cinder_loe/potion/PotionHerbPoison.java b/src/main/java/com/zivilon/cinder_loe/potion/PotionHerbPoison.java similarity index 100% rename from src (1)/main/java/com/zivilon/cinder_loe/potion/PotionHerbPoison.java rename to src/main/java/com/zivilon/cinder_loe/potion/PotionHerbPoison.java diff --git a/src (1)/main/java/com/zivilon/cinder_loe/recipe/CinderBrewingRecipes.java b/src/main/java/com/zivilon/cinder_loe/recipe/CinderBrewingRecipes.java similarity index 100% rename from src (1)/main/java/com/zivilon/cinder_loe/recipe/CinderBrewingRecipes.java rename to src/main/java/com/zivilon/cinder_loe/recipe/CinderBrewingRecipes.java diff --git a/src/main/java/com/zivilon/cinder_loe/recipes.java b/src/main/java/com/zivilon/cinder_loe/recipes.java index 4437217..4f8fcdc 100644 --- a/src/main/java/com/zivilon/cinder_loe/recipes.java +++ b/src/main/java/com/zivilon/cinder_loe/recipes.java @@ -5,6 +5,7 @@ import lotr.common.LOTRMod; import lotr.common.recipe.*; import com.zivilon.cinder_loe.CinderLoE; import com.zivilon.cinder_loe.mixins.MixinLOTRBrewingRecipes; +import com.zivilon.cinder_loe.recipe.CinderBrewingRecipes; import lotr.common.item.LOTRItemFood; import net.minecraft.init.Blocks; @@ -382,6 +383,34 @@ public class recipes { new ItemStack(LOTRMod.doubleFlower, 1, 2), new ItemStack(LOTRMod.doubleFlower, 1, 3), new ItemStack(LOTRMod.mugMilk)); + CinderBrewingRecipes.addCustomBrewingRecipe(new ItemStack(CinderLoE.mugElfBrew, BARREL_CAPACITY), + new ItemStack(LOTRMod.elanor), + new ItemStack(LOTRMod.niphredil), + new ItemStack(LOTRMod.mallornNut), + new ItemStack(LOTRMod.mallornNut), + new ItemStack(CinderLoE.spiceElven), + new ItemStack(CinderLoE.spiceElven)); + CinderBrewingRecipes.addCustomBrewingRecipe(new ItemStack(CinderLoE.mugHumanBrew, BARREL_CAPACITY), + new ItemStack(LOTRMod.athelas), + new ItemStack(LOTRMod.athelas), + new ItemStack(LOTRMod.athelas), + new ItemStack(LOTRMod.athelas), + new ItemStack(CinderLoE.spiceHuman), + new ItemStack(CinderLoE.spiceHuman)); + CinderBrewingRecipes.addCustomBrewingRecipe(new ItemStack(CinderLoE.mugOrcBrew, BARREL_CAPACITY), + new ItemStack(LOTRMod.morgulShroom), + new ItemStack(LOTRMod.nauriteGem), + new ItemStack(LOTRMod.morgulShroom), + new ItemStack(LOTRMod.guldurilCrystal), + new ItemStack(CinderLoE.spiceOrcish), + new ItemStack(CinderLoE.spiceOrcish)); + CinderBrewingRecipes.addCustomBrewingRecipe(new ItemStack(CinderLoE.mugDwarfBrew, BARREL_CAPACITY), + new ItemStack(LOTRMod.dwarfHerb), + new ItemStack(LOTRMod.dwarfHerb), + new ItemStack(LOTRMod.dwarfHerb), + new ItemStack(LOTRMod.dwarfHerb), + new ItemStack(CinderLoE.spiceDwarven), + new ItemStack(CinderLoE.spiceDwarven)); } public static void registerMillstoneRecipes() { diff --git a/src (1)/main/java/com/zivilon/cinder_loe/util/IEntityLivingBase.java b/src/main/java/com/zivilon/cinder_loe/util/IEntityLivingBase.java similarity index 100% rename from src (1)/main/java/com/zivilon/cinder_loe/util/IEntityLivingBase.java rename to src/main/java/com/zivilon/cinder_loe/util/IEntityLivingBase.java diff --git a/src (1)/main/java/com/zivilon/cinder_loe/util/ILootableEntity.java b/src/main/java/com/zivilon/cinder_loe/util/ILootableEntity.java similarity index 100% rename from src (1)/main/java/com/zivilon/cinder_loe/util/ILootableEntity.java rename to src/main/java/com/zivilon/cinder_loe/util/ILootableEntity.java diff --git a/src (1)/main/java/com/zivilon/cinder_loe/util/IMixinEntityPlayer.java b/src/main/java/com/zivilon/cinder_loe/util/IMixinEntityPlayer.java similarity index 100% rename from src (1)/main/java/com/zivilon/cinder_loe/util/IMixinEntityPlayer.java rename to src/main/java/com/zivilon/cinder_loe/util/IMixinEntityPlayer.java diff --git a/src (1)/main/java/com/zivilon/cinder_loe/util/PickpocketUtils.java b/src/main/java/com/zivilon/cinder_loe/util/PickpocketUtils.java similarity index 97% rename from src (1)/main/java/com/zivilon/cinder_loe/util/PickpocketUtils.java rename to src/main/java/com/zivilon/cinder_loe/util/PickpocketUtils.java index e659ec7..4f1d224 100644 --- a/src (1)/main/java/com/zivilon/cinder_loe/util/PickpocketUtils.java +++ b/src/main/java/com/zivilon/cinder_loe/util/PickpocketUtils.java @@ -125,19 +125,23 @@ public class PickpocketUtils { table.drop_list.add(new SingleItemDrop(Items.cooked_chicken, null, 0.2F, 1, 3, false, false, default_context)); table.drop_list.add(new SingleItemDrop(Items.book, null, 0.2F, 1, 3, false, false, default_context)); table.drop_list.add(new SingleItemDrop(Items.bread, null, 0.2F, default_context)); + table.drop_list.add(new SingleItemDrop(CinderLoE.spiceHuman, null, 0.01F, default_context)); } else if (entity instanceof LOTREntityOrc) { table.drop_list.add(new SingleItemDrop(LOTRMod.orcSteel, null, 0.05F, 1, 3, false, false, default_context)); table.drop_list.add(new SingleItemDrop(LOTRMod.maggotyBread, null, 0.2F, default_context)); table.drop_list.add(new SingleItemDrop(LOTRMod.manFlesh, null, 0.2F, default_context)); table.drop_list.add(new SingleItemDrop(LOTRMod.elfBone, null, 0.2F, default_context)); table.drop_list.add(new SingleItemDrop(Items.bone, null, 0.2F, default_context)); + table.drop_list.add(new SingleItemDrop(CinderLoE.spiceOrcish, null, 0.01F, default_context)); } else if (entity instanceof LOTREntityElf) { table.drop_list.add(new SingleItemDrop(LOTRMod.quenditeCrystal, null, 0.01F, default_context)); table.drop_list.add(new SingleItemDrop(LOTRMod.lembas, null, 0.05F, default_context)); table.drop_list.add(new SingleItemDrop(Item.getItemFromBlock(LOTRMod.niphredil), null, 0.1F, default_context)); table.drop_list.add(new SingleItemDrop(Item.getItemFromBlock(LOTRMod.elanor), null, 0.1F, default_context)); table.drop_list.add(new SingleItemDrop(LOTRMod.mallornNut, null, 0.05F, default_context)); + table.drop_list.add(new SingleItemDrop(CinderLoE.spiceElven, null, 0.01F, default_context)); } else if (entity instanceof LOTREntityDwarf) { + table.drop_list.add(new SingleItemDrop(CinderLoE.spiceDwarven, null, 0.01F, default_context)); ItemGroupEntry amethyst = new ItemGroupEntry(LOTRMod.amethyst, null, 5); ItemGroupEntry topaz = new ItemGroupEntry(LOTRMod.topaz, null, 4); ItemGroupEntry amber = new ItemGroupEntry(LOTRMod.amber, null, 4); diff --git a/src/main/java/com/zivilon/cinder_loe/util/Utilities.java b/src/main/java/com/zivilon/cinder_loe/util/Utilities.java index b64a548..5f9c676 100644 --- a/src/main/java/com/zivilon/cinder_loe/util/Utilities.java +++ b/src/main/java/com/zivilon/cinder_loe/util/Utilities.java @@ -13,12 +13,13 @@ import java.io.OutputStream; import java.lang.reflect.*; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; -import java.util.UUID; -import java.util.Vector; +import java.util.Arrays; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Vector; +import java.util.UUID; import lotr.common.LOTRCreativeTabs; import lotr.common.world.biome.LOTRBiome; @@ -51,6 +52,7 @@ public class Utilities { public static int[] LOTRIntCache = null; public static LOTRBiome reflected_river; + public static LOTRBiome reflected_taiga; public static LOTRCreativeTabs reflected_tab_block; public static List badEnchants = new ArrayList<>(); public static Map upgradedEnchants = new HashMap<>(); @@ -95,8 +97,10 @@ public class Utilities { public static void initialize_reflects() { try { - Field riverField = LOTRBiome.class.getField("river"); - reflected_river = (LOTRBiome)riverField.get(null); + Field river_field = LOTRBiome.class.getField("river"); + reflected_river = (LOTRBiome)river_field.get(null); + Field taiga_field = LOTRBiome.class.getField("taiga"); + reflected_taiga = (LOTRBiome)taiga_field.get(null); } catch (NoSuchFieldException | IllegalAccessException e) { e.printStackTrace(); @@ -317,4 +321,11 @@ public class Utilities { } return return_value; } + public static boolean array_contains_array(T[] superarray, T[] subarray) { + for (T subobj : subarray) { + if (subobj == null || Arrays.stream(superarray).anyMatch(subobj::equals)) continue; + return false; + } + return true; + } } diff --git a/src (1)/main/java/com/zivilon/cinder_loe/world/event/Warband.java b/src/main/java/com/zivilon/cinder_loe/world/event/Warband.java similarity index 90% rename from src (1)/main/java/com/zivilon/cinder_loe/world/event/Warband.java rename to src/main/java/com/zivilon/cinder_loe/world/event/Warband.java index b51e6c2..6de85ef 100644 --- a/src (1)/main/java/com/zivilon/cinder_loe/world/event/Warband.java +++ b/src/main/java/com/zivilon/cinder_loe/world/event/Warband.java @@ -12,6 +12,7 @@ import net.minecraft.entity.EntityCreature; import net.minecraft.entity.EntityLiving; import net.minecraft.entity.IEntityLivingData; import net.minecraft.entity.SharedMonsterAttributes; +import net.minecraft.nbt.*; import net.minecraft.server.MinecraftServer; import net.minecraft.util.*; @@ -135,8 +136,28 @@ public class Warband { if (boss_entity instanceof LOTREntityNPC) { ((LOTREntityNPC)boss_entity).isNPCPersistent = true; DropTable table = new DropTable(); - table.drop_list.add(new SingleItemDrop(LOTRMod.chilling, null, 1.0F, new DropContext[] {DropContext.KILLED})); - ((ILootableEntity)(LOTREntityNPC)boss_entity).set_drop_table(table); + String modifier = ""; + switch (random.nextInt(4)) { + case 0: + modifier = "fireRepair"; + break; + case 1: + modifier = "stealth"; + break; + case 2: + modifier = "mountArmor"; + break; + case 3: + modifier = "swiftness"; + break; + } + NBTTagCompound nbt = new NBTTagCompound(); + nbt.setString("ScrollModifier", modifier); + table.drop_list.add(new SingleItemDrop(LOTRMod.modTemplate, nbt, 1.0F, new DropContext[] {DropContext.KILLED})); + try { + ((ILootableEntity)(Object)boss_entity).set_drop_table(table); + } catch (Exception e) { + } } world.spawnEntityInWorld(boss_entity); } diff --git a/src (1)/main/java/com/zivilon/cinder_loe/world/event/WarbandFaction.java b/src/main/java/com/zivilon/cinder_loe/world/event/WarbandFaction.java similarity index 100% rename from src (1)/main/java/com/zivilon/cinder_loe/world/event/WarbandFaction.java rename to src/main/java/com/zivilon/cinder_loe/world/event/WarbandFaction.java diff --git a/src (1)/main/java/com/zivilon/cinder_loe/world/event/WarbandTickHandler.java b/src/main/java/com/zivilon/cinder_loe/world/event/WarbandTickHandler.java similarity index 100% rename from src (1)/main/java/com/zivilon/cinder_loe/world/event/WarbandTickHandler.java rename to src/main/java/com/zivilon/cinder_loe/world/event/WarbandTickHandler.java diff --git a/src/main/resources/assets/cinder_loe/lang/en_US.lang b/src/main/resources/assets/cinder_loe/lang/en_US.lang index 6cb72c6..f51ae63 100644 --- a/src/main/resources/assets/cinder_loe/lang/en_US.lang +++ b/src/main/resources/assets/cinder_loe/lang/en_US.lang @@ -359,4 +359,26 @@ lotr.unitinfo.Angmar=To Hire this unit you must have the Angmar Objective comple lotr.unitinfo.Arnor=To Hire this unit you must have the Arnor Objective complete. lotr.unitinfo.Rhudaur=To Hire this unit you must have the Rhudaur Objective complete. lotr.unitinfo.Dale=To Hire this unit you must have the Dalish Objective complete. -lotr.unitinfo.Lindon=To Hire this unit you must have the Lindon Objective complete. \ No newline at end of file +lotr.unitinfo.Lindon=To Hire this unit you must have the Lindon Objective complete. + +warband.found=Warband of %s has been found %s of %s +warband.fac.MORGUL_VALE=Morgul Vale +warband.fac.WOOD_ELF_SCOUT=Woodland Realm scouts +warband.fac.RED_MOUNTAINS=Red Mountains +warband.fac.RHUDEL_GOLDEN=Golden Easterlings +warband.fac.LIMWAITH=Limwaith +warband.fac.RENEGADE=renegades + +pickpocket.cooldown=You need to wait before pickpocketing again. +pickpocket.cooldown_alt=Maybe get your hands out of his pants first. + +item.lotr:spice_human.name=Mannish spice +item.lotr:spice_elven.name=Elven spice +item.lotr:spice_orcish.name=Orcish spice +item.lotr:spice_dwarven.name=Dwarven spice +item.lotr:mugElfBrew.name=Saturated Miruvor +item.lotr:mugOrcBrew.name=Concentrated Orc Draught +item.lotr:mugHumanBrew.name=Athelas Tea +item.lotr:mugDwarfBrew.name=Dwarven Stout + +potion.herbal_poisoning=Herbal Poisoning diff --git a/src (1)/main/resources/assets/lotr/textures/items/mugDwarfBrew_liquid.png b/src/main/resources/assets/lotr/textures/items/mugDwarfBrew_liquid.png similarity index 100% rename from src (1)/main/resources/assets/lotr/textures/items/mugDwarfBrew_liquid.png rename to src/main/resources/assets/lotr/textures/items/mugDwarfBrew_liquid.png diff --git a/src (1)/main/resources/assets/lotr/textures/items/mugElfBrew_liquid.png b/src/main/resources/assets/lotr/textures/items/mugElfBrew_liquid.png similarity index 100% rename from src (1)/main/resources/assets/lotr/textures/items/mugElfBrew_liquid.png rename to src/main/resources/assets/lotr/textures/items/mugElfBrew_liquid.png diff --git a/src (1)/main/resources/assets/lotr/textures/items/mugHumanBrew_liquid.png b/src/main/resources/assets/lotr/textures/items/mugHumanBrew_liquid.png similarity index 100% rename from src (1)/main/resources/assets/lotr/textures/items/mugHumanBrew_liquid.png rename to src/main/resources/assets/lotr/textures/items/mugHumanBrew_liquid.png diff --git a/src (1)/main/resources/assets/lotr/textures/items/mugOrcBrew_liquid.png b/src/main/resources/assets/lotr/textures/items/mugOrcBrew_liquid.png similarity index 100% rename from src (1)/main/resources/assets/lotr/textures/items/mugOrcBrew_liquid.png rename to src/main/resources/assets/lotr/textures/items/mugOrcBrew_liquid.png diff --git a/src (1)/main/resources/assets/lotr/textures/items/spice_dwarven.png b/src/main/resources/assets/lotr/textures/items/spice_dwarven.png similarity index 100% rename from src (1)/main/resources/assets/lotr/textures/items/spice_dwarven.png rename to src/main/resources/assets/lotr/textures/items/spice_dwarven.png diff --git a/src (1)/main/resources/assets/lotr/textures/items/spice_elven.png b/src/main/resources/assets/lotr/textures/items/spice_elven.png similarity index 100% rename from src (1)/main/resources/assets/lotr/textures/items/spice_elven.png rename to src/main/resources/assets/lotr/textures/items/spice_elven.png diff --git a/src (1)/main/resources/assets/lotr/textures/items/spice_human.png b/src/main/resources/assets/lotr/textures/items/spice_human.png similarity index 100% rename from src (1)/main/resources/assets/lotr/textures/items/spice_human.png rename to src/main/resources/assets/lotr/textures/items/spice_human.png diff --git a/src (1)/main/resources/assets/lotr/textures/items/spice_orcish.png b/src/main/resources/assets/lotr/textures/items/spice_orcish.png similarity index 100% rename from src (1)/main/resources/assets/lotr/textures/items/spice_orcish.png rename to src/main/resources/assets/lotr/textures/items/spice_orcish.png diff --git a/src/main/resources/mixins.cinder_loe.json b/src/main/resources/mixins.cinder_loe.json index c16a143..755791d 100644 --- a/src/main/resources/mixins.cinder_loe.json +++ b/src/main/resources/mixins.cinder_loe.json @@ -47,7 +47,11 @@ "overrides.MixinLOTRTradeEntriesOverrides", "overrides.MixinLOTRUnitTradeEntries", "MixinEntityLivingBase", - "MixinEntityPlayer" + "MixinEntityPlayer", + "MixinLOTREntityAIAttackOnCollide", + "MixinLOTREntityNPC", + "MixinFoodStats", + "MixinLOTRItemMug" ], "client": [] }