diff --git a/src/main/java/com/zivilon/cinder_loe/CinderLoE.java b/src/main/java/com/zivilon/cinder_loe/CinderLoE.java index 0083c8d..4d7b092 100644 --- a/src/main/java/com/zivilon/cinder_loe/CinderLoE.java +++ b/src/main/java/com/zivilon/cinder_loe/CinderLoE.java @@ -17,6 +17,7 @@ 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.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.*; @@ -132,6 +133,7 @@ public class CinderLoE { 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; @@ -335,7 +337,7 @@ public class CinderLoE { event.registerServerCommand(new CommandCinderCharacter()); } - public void registerEntities() { // Last ID added: 54 + public void registerEntities() { // Last ID added: 56 ///GameRegistry.registerTileEntity(TileEntityMistBlock.class, "TileEntityMistBlock"); ///.registerBlock(TileEntityRustedSword, "TileEntityRustedSword"); @@ -389,7 +391,6 @@ public class CinderLoE { 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(BattleNun.class, "BattleNun", (entityID + 27), 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); @@ -398,9 +399,13 @@ public class CinderLoE { 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(MorgulOrc.class, "MorgulOrc", (entityID + 54), 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); } @@ -482,6 +487,8 @@ public class CinderLoE { 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"); @@ -577,7 +584,6 @@ public class CinderLoE { ItemRegistration.register(onion, "onion", 6900); ItemRegistration.register(cabbage, "cabbage", 6901); ItemRegistration.register(pelmen, "pelmen", 6902); - ItemRegistration.register(lightStew, "lightStew", 6902); ItemRegistration.register(spice, "spice", 6903); ItemRegistration.register(spicedHam, "spicedHam", 6904); ItemRegistration.register(chocolatebar, "chocolatebar", 6905); @@ -588,6 +594,7 @@ public class CinderLoE { ItemRegistration.register(pretzel, "pretzel", 6910); ItemRegistration.register(halva, "halva", 6911); ItemRegistration.register(doner_kebab, "doner_kebab", 6912); + ItemRegistration.register(lightStew, "lightStew", 6913); ItemRegistration.register(spawnEgg, "spawnEgg", 6003); @@ -1108,6 +1115,7 @@ public class CinderLoE { 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"); @@ -1276,7 +1284,8 @@ public class CinderLoE { (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(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), @@ -1290,14 +1299,18 @@ public class CinderLoE { (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, 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, 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/main/java/com/zivilon/cinder_loe/CinderLoE_Config.java b/src/main/java/com/zivilon/cinder_loe/CinderLoE_Config.java index ae33bce..dd81b1a 100644 --- a/src/main/java/com/zivilon/cinder_loe/CinderLoE_Config.java +++ b/src/main/java/com/zivilon/cinder_loe/CinderLoE_Config.java @@ -21,6 +21,8 @@ public class CinderLoE_Config { 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) { @@ -48,6 +50,8 @@ public class CinderLoE_Config { 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()) { diff --git a/src/main/java/com/zivilon/cinder_loe/LoECreativeTabs.java b/src/main/java/com/zivilon/cinder_loe/LoECreativeTabs.java index 2ec2cdd..472b4d4 100644 --- a/src/main/java/com/zivilon/cinder_loe/LoECreativeTabs.java +++ b/src/main/java/com/zivilon/cinder_loe/LoECreativeTabs.java @@ -28,7 +28,7 @@ public class LoECreativeTabs extends CreativeTabs { tabSpawnLoE.theIcon = new ItemStack(CinderLoE.spawnEgg); tabMiscLoE.theIcon = new ItemStack(CinderLoE.bonemold); tabFoodLoE.theIcon = new ItemStack(CinderLoE.onion); - tabDecoLoE.theIcon = new ItemStack(CinderLoE.cinderchain); + tabDecoLoE.theIcon = new ItemStack(CinderLoE.goldChain); tabCharacterLoE.theIcon = new ItemStack(CinderLoE.sarumanStaff); } diff --git a/src/main/java/com/zivilon/cinder_loe/blocks/FurCarpet.java b/src/main/java/com/zivilon/cinder_loe/blocks/FurCarpet.java new file mode 100644 index 0000000..ad481af --- /dev/null +++ b/src/main/java/com/zivilon/cinder_loe/blocks/FurCarpet.java @@ -0,0 +1,45 @@ +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/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/RhudaurSoldier.java b/src/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/RhudaurSoldier.java new file mode 100644 index 0000000..0231a7b --- /dev/null +++ b/src/main/java/com/zivilon/cinder_loe/entity/npc/evil_human/RhudaurSoldier.java @@ -0,0 +1,44 @@ +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/main/java/com/zivilon/cinder_loe/entity/npc/good_human/EsgarothSoldier.java b/src/main/java/com/zivilon/cinder_loe/entity/npc/good_human/EsgarothSoldier.java new file mode 100644 index 0000000..7604a04 --- /dev/null +++ b/src/main/java/com/zivilon/cinder_loe/entity/npc/good_human/EsgarothSoldier.java @@ -0,0 +1,23 @@ +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/main/java/com/zivilon/cinder_loe/entity/npc/good_human/TauredainTrueBlood.java b/src/main/java/com/zivilon/cinder_loe/entity/npc/good_human/TauredainTrueBlood.java new file mode 100644 index 0000000..65df48b --- /dev/null +++ b/src/main/java/com/zivilon/cinder_loe/entity/npc/good_human/TauredainTrueBlood.java @@ -0,0 +1,54 @@ +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)}; + private static ItemStack[] bodies = new ItemStack[]{new ItemStack(LOTRMod.bodyTauredain), new ItemStack(LOTRMod.bodyTauredain), new ItemStack(LOTRMod.bodyTauredainGold)}; + private static ItemStack[] legs = new ItemStack[]{new ItemStack(LOTRMod.legsTauredain), new ItemStack(LOTRMod.legsTauredain), new ItemStack(LOTRMod.legsTauredainGold)}; + private static ItemStack[] boots = new ItemStack[]{new ItemStack(LOTRMod.bootsTauredain), new ItemStack(LOTRMod.bootsTauredain), new ItemStack(LOTRMod.bootsTauredainGold)}; + @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/main/java/com/zivilon/cinder_loe/entity/npc/orc/NorthernOrc.java b/src/main/java/com/zivilon/cinder_loe/entity/npc/orc/NorthernOrc.java new file mode 100644 index 0000000..04f7608 --- /dev/null +++ b/src/main/java/com/zivilon/cinder_loe/entity/npc/orc/NorthernOrc.java @@ -0,0 +1,74 @@ +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/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTREntityWarg.java b/src/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTREntityWarg.java new file mode 100644 index 0000000..ea7db5a --- /dev/null +++ b/src/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTREntityWarg.java @@ -0,0 +1,77 @@ +package com.zivilon.cinder_loe.mixins.overrides; + +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/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRUnitTradeEntries.java b/src/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRUnitTradeEntries.java index 20223f3..c03d821 100644 --- a/src/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRUnitTradeEntries.java +++ b/src/main/java/com/zivilon/cinder_loe/mixins/overrides/MixinLOTRUnitTradeEntries.java @@ -2,7 +2,12 @@ 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.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.*; @@ -102,7 +107,6 @@ public class MixinLOTRUnitTradeEntries { @Shadow public static LOTRUnitTradeEntries ANGMAR_ORC_MERCENARY_CAPTAIN = new LOTRUnitTradeEntries(150.0f, new LOTRUnitTradeEntry(LOTREntityAngmarOrc.class, 150, 0.0f), - new CinderUnitTradeEntry(MorgulOrc.class, null, "TestMob", 100, 0.0f).setObjective("Angmar").setExtraInfo("Angmar"), new LOTRUnitTradeEntry(LOTREntityAngmarOrcArcher.class, 150, 50.0f), new LOTRUnitTradeEntry(LOTREntityAngmarOrcBombardier.class, 250, 100.0f).setPledgeExclusive(), new LOTRUnitTradeEntry(LOTREntityAngmarWarg.class, 100, 0.0f), @@ -112,7 +116,8 @@ public class MixinLOTRUnitTradeEntries { 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 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)); @@ -212,12 +217,14 @@ public class MixinLOTRUnitTradeEntries { 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 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(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)); @@ -229,8 +236,8 @@ public class MixinLOTRUnitTradeEntries { 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 LOTRUnitTradeEntry(LOTREntityEsgarothBannerBearer.class, 250, 200.0f), - new LOTRUnitTradeEntry(LOTREntityEsgarothBannerBearer.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), diff --git a/src/main/java/com/zivilon/cinder_loe/recipes.java b/src/main/java/com/zivilon/cinder_loe/recipes.java index 4e16912..fa5d3c8 100644 --- a/src/main/java/com/zivilon/cinder_loe/recipes.java +++ b/src/main/java/com/zivilon/cinder_loe/recipes.java @@ -163,18 +163,14 @@ public class recipes { '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.cinderchain, 8, 0), - "X", "X", "X", - 'X', LOTRMod.bronze)); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.cinderchain, 8, 1), - "X", "X", "X", - 'X', Items.gold_ingot)); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.cinderchain, 8, 2), - "X", "X", "X", + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.silverChain, 8), "X", "X", "X", 'X', LOTRMod.silver)); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(CinderLoE.cinderchain, 8, 3), - "X", "X", "X", + 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", 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 fac6f1b..b60fd36 100644 --- a/src/main/resources/assets/cinder_loe/lang/en_US.lang +++ b/src/main/resources/assets/cinder_loe/lang/en_US.lang @@ -23,6 +23,58 @@ tile.lotr:enchantedIce.name=Enchanted Ice tile.lotr:iceCage.name=Ice Cage tile.forging_station.name=Forging Station +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=Cleaver item.lotr:spearUnnamed.name=Drannach Oriour item.lotr:frostblade.name=Frostblade item.lotr:whip.name=Whip @@ -56,6 +108,14 @@ 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 @@ -274,4 +334,6 @@ lotr.unit.Banner_Warg=Warg Rider Banner lotr.unit.Banner_Horse=Mounted Banner Bearer lotr.unit.TestMob=Test Mob -lotr.unitinfo.Angmar=To Hire this unit you must have the Angmar Objective complete. \ No newline at end of file +lotr.unitinfo.Angmar=To Hire this unit you must have the Angmar 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. \ No newline at end of file diff --git a/src/main/resources/assets/lotr/textures/blocks/bronzeChain_bottom.png b/src/main/resources/assets/lotr/textures/blocks/bronzeChain_bottom.png new file mode 100644 index 0000000..5cfcd06 Binary files /dev/null and b/src/main/resources/assets/lotr/textures/blocks/bronzeChain_bottom.png differ diff --git a/src/main/resources/assets/lotr/textures/blocks/bronzeChain_mid.png b/src/main/resources/assets/lotr/textures/blocks/bronzeChain_mid.png new file mode 100644 index 0000000..069555b Binary files /dev/null and b/src/main/resources/assets/lotr/textures/blocks/bronzeChain_mid.png differ diff --git a/src/main/resources/assets/lotr/textures/blocks/bronzeChain_single.png b/src/main/resources/assets/lotr/textures/blocks/bronzeChain_single.png new file mode 100644 index 0000000..f55d397 Binary files /dev/null and b/src/main/resources/assets/lotr/textures/blocks/bronzeChain_single.png differ diff --git a/src/main/resources/assets/lotr/textures/blocks/bronzeChain_top.png b/src/main/resources/assets/lotr/textures/blocks/bronzeChain_top.png new file mode 100644 index 0000000..4713718 Binary files /dev/null and b/src/main/resources/assets/lotr/textures/blocks/bronzeChain_top.png differ diff --git a/src/main/resources/assets/lotr/textures/blocks/goldChain_bottom.png b/src/main/resources/assets/lotr/textures/blocks/goldChain_bottom.png new file mode 100644 index 0000000..6b76c9b Binary files /dev/null and b/src/main/resources/assets/lotr/textures/blocks/goldChain_bottom.png differ diff --git a/src/main/resources/assets/lotr/textures/blocks/goldChain_mid.png b/src/main/resources/assets/lotr/textures/blocks/goldChain_mid.png new file mode 100644 index 0000000..c40b6eb Binary files /dev/null and b/src/main/resources/assets/lotr/textures/blocks/goldChain_mid.png differ diff --git a/src/main/resources/assets/lotr/textures/blocks/goldChain_single.png b/src/main/resources/assets/lotr/textures/blocks/goldChain_single.png new file mode 100644 index 0000000..f8b0e15 Binary files /dev/null and b/src/main/resources/assets/lotr/textures/blocks/goldChain_single.png differ diff --git a/src/main/resources/assets/lotr/textures/blocks/goldChain_top.png b/src/main/resources/assets/lotr/textures/blocks/goldChain_top.png new file mode 100644 index 0000000..f8b0e15 Binary files /dev/null and b/src/main/resources/assets/lotr/textures/blocks/goldChain_top.png differ diff --git a/src/main/resources/assets/lotr/textures/blocks/ironChain_bottom.png b/src/main/resources/assets/lotr/textures/blocks/ironChain_bottom.png new file mode 100644 index 0000000..05523c5 Binary files /dev/null and b/src/main/resources/assets/lotr/textures/blocks/ironChain_bottom.png differ diff --git a/src/main/resources/assets/lotr/textures/blocks/ironChain_mid.png b/src/main/resources/assets/lotr/textures/blocks/ironChain_mid.png new file mode 100644 index 0000000..ee0680f Binary files /dev/null and b/src/main/resources/assets/lotr/textures/blocks/ironChain_mid.png differ diff --git a/src/main/resources/assets/lotr/textures/blocks/ironChain_single.png b/src/main/resources/assets/lotr/textures/blocks/ironChain_single.png new file mode 100644 index 0000000..be3a2f4 Binary files /dev/null and b/src/main/resources/assets/lotr/textures/blocks/ironChain_single.png differ diff --git a/src/main/resources/assets/lotr/textures/blocks/ironChain_top.png b/src/main/resources/assets/lotr/textures/blocks/ironChain_top.png new file mode 100644 index 0000000..be3a2f4 Binary files /dev/null and b/src/main/resources/assets/lotr/textures/blocks/ironChain_top.png differ diff --git a/src/main/resources/assets/lotr/textures/blocks/silverChain_bottom.png b/src/main/resources/assets/lotr/textures/blocks/silverChain_bottom.png new file mode 100644 index 0000000..4508f63 Binary files /dev/null and b/src/main/resources/assets/lotr/textures/blocks/silverChain_bottom.png differ diff --git a/src/main/resources/assets/lotr/textures/blocks/silverChain_mid.png b/src/main/resources/assets/lotr/textures/blocks/silverChain_mid.png new file mode 100644 index 0000000..4e40b50 Binary files /dev/null and b/src/main/resources/assets/lotr/textures/blocks/silverChain_mid.png differ diff --git a/src/main/resources/assets/lotr/textures/blocks/silverChain_single.png b/src/main/resources/assets/lotr/textures/blocks/silverChain_single.png new file mode 100644 index 0000000..b708df9 Binary files /dev/null and b/src/main/resources/assets/lotr/textures/blocks/silverChain_single.png differ diff --git a/src/main/resources/assets/lotr/textures/blocks/silverChain_top.png b/src/main/resources/assets/lotr/textures/blocks/silverChain_top.png new file mode 100644 index 0000000..4539b1b Binary files /dev/null and b/src/main/resources/assets/lotr/textures/blocks/silverChain_top.png differ diff --git a/src/main/resources/assets/lotr/textures/items/bronzeChain.png b/src/main/resources/assets/lotr/textures/items/bronzeChain.png new file mode 100644 index 0000000..43e2cae Binary files /dev/null and b/src/main/resources/assets/lotr/textures/items/bronzeChain.png differ diff --git a/src/main/resources/assets/lotr/textures/items/goldChain.png b/src/main/resources/assets/lotr/textures/items/goldChain.png new file mode 100644 index 0000000..3f28968 Binary files /dev/null and b/src/main/resources/assets/lotr/textures/items/goldChain.png differ diff --git a/src/main/resources/assets/lotr/textures/items/ironChain.png b/src/main/resources/assets/lotr/textures/items/ironChain.png new file mode 100644 index 0000000..c9e8732 Binary files /dev/null and b/src/main/resources/assets/lotr/textures/items/ironChain.png differ diff --git a/src/main/resources/assets/lotr/textures/items/repair_kit.png b/src/main/resources/assets/lotr/textures/items/repair_kit.png new file mode 100644 index 0000000..1ee5390 Binary files /dev/null and b/src/main/resources/assets/lotr/textures/items/repair_kit.png differ diff --git a/src/main/resources/assets/lotr/textures/items/silverChain.png b/src/main/resources/assets/lotr/textures/items/silverChain.png new file mode 100644 index 0000000..7d70ba2 Binary files /dev/null and b/src/main/resources/assets/lotr/textures/items/silverChain.png differ diff --git a/src/main/resources/assets/lotr/textures/items/upgrade_kit.png b/src/main/resources/assets/lotr/textures/items/upgrade_kit.png new file mode 100644 index 0000000..5f7d429 Binary files /dev/null and b/src/main/resources/assets/lotr/textures/items/upgrade_kit.png differ diff --git a/src/main/resources/credits.txt b/src/main/resources/credits.txt new file mode 100644 index 0000000..860d3f7 --- /dev/null +++ b/src/main/resources/credits.txt @@ -0,0 +1,79 @@ +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) +• + diff --git a/src/main/resources/mixins.cinder_loe.json b/src/main/resources/mixins.cinder_loe.json index 0757ee5..8c513cd 100644 --- a/src/main/resources/mixins.cinder_loe.json +++ b/src/main/resources/mixins.cinder_loe.json @@ -40,9 +40,10 @@ "MixinRendererLivingEntity", "MixinRenderItem", "MixinSlotCrafting", + "overrides.MixinLOTREntityWarg", "overrides.MixinLOTRHiredNPCInfo", "overrides.MixinLOTRReplacedMethods", - "overrides.MixinLOTRUnitTradeEntries", + "overrides.MixinLOTRUnitTradeEntries" ], "client": [] }