2
0
Fork 0

Added banners

Organized Files
frozen
KeyLime17 1 year ago
parent 0a881e6812
commit 41794bf93e

@ -1 +1 @@
�[�i5�ïÀ]
�[�i5�ïÁX

@ -5,6 +5,7 @@
<configuration>
<autoDetectTypes>
<platformType>MIXIN</platformType>
<platformType>MCP</platformType>
</autoDetectTypes>
<projectReimportVersion>1</projectReimportVersion>
</configuration>

@ -1,5 +1,5 @@
modName = CinderLoE
modVersion = 1.2.3
modVersion = 1.2.4
# This is a case-sensitive string to identify your mod. Convention is to use lower case.
modId = cinder_loe

@ -8,13 +8,16 @@ import com.zivilon.cinder_loe.client.render.corrupt.*;
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.trader.BladorthinSmith;
import com.zivilon.cinder_loe.entity.trader.LimwaithFishmonger;
import com.zivilon.cinder_loe.entity.trader.LimwaithShaman;
import com.zivilon.cinder_loe.entity.trader.RedDwarfSmith;
import com.zivilon.cinder_loe.items.*;
import com.zivilon.cinder_loe.tileentity.*;
import com.zivilon.cinder_loe.util.Utilities;
import com.zivilon.cinder_loe.ItemRegistration;
import com.zivilon.cindercore.CinderCore;
import lotr.common.item.*;
import net.minecraft.item.ItemSeedFood;
import net.minecraft.potion.Potion;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@ -77,11 +80,11 @@ import net.minecraftforge.client.ClientCommandHandler;
@Mod(
modid = "cinder_loe",
version = "1.2.3",
version = "1.2.4",
name = "CinderLoE",
dependencies = "required-after:spongemixins@[1.1.0,);required-after:lotr",
acceptedMinecraftVersions = "[1.7.10]",
acceptableRemoteVersions = "[1.2.3]")
acceptableRemoteVersions = "[1.2.4]")
public class CinderLoE {
@Instance("cinder_loe")
@ -91,8 +94,6 @@ public class CinderLoE {
// LOTR Materials
public static LOTRMaterial MATERIAL_RED_DWARF;
public static LOTRMaterial WIZARD;
public static LOTRMaterial MATERIAL_LIMWAITH_BONE;
public static LOTRMaterial MATERIAL_BONEMOLD;
public static LOTRMaterial MATERIAL_LIMWAITH_WOOD;
public static LOTRMaterial EVENT;
@ -123,6 +124,7 @@ public class CinderLoE {
public static Block bronzeChain;
public static Block plaster;
public static Block voidblock;
// public static Block verticalWeaponRack;
//Food Crop blocks
public static Block onionCrop;
@ -139,6 +141,7 @@ public class CinderLoE {
public static Item frostblade;
public static Item daggervoid;
public static Item spearsolidgold;
public static Item spearUnnamed;
public static Item whip;
public static Item swordAsh;
public static Item staffAsh;
@ -302,13 +305,24 @@ public class CinderLoE {
event.registerServerCommand(new CommandCinderCharacter());
}
public void registerEntities() { // Last ID added: 41
public void registerEntities() { // Last ID added: 43
GameRegistry.registerTileEntity(TileEntityMistBlock.class, "TileEntityMistBlock");
int entityID = 7320; // Always increment entityID by 1 over the last entity to ensure unique IDs
// EntityRegistry.registerModEntity(HaradLevy.class, "HaradLevy", (entityID + 36), this, 64, 1, true);
// EntityRegistry.registerModEntity(DwarfLevy.class, "DwarfLevy", (entityID + 37), this, 64, 1, true);
// 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);
// Others
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);
@ -324,7 +338,6 @@ public class CinderLoE {
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(RedDwarfSmith.class, "RedDwarfSmith", (entityID + 29), 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);
@ -338,8 +351,6 @@ public class CinderLoE {
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(LimwaithFishmonger.class, "LimwaithFishmonger", (entityID + 33), this, 64, 1, true);
EntityRegistry.registerModEntity(LimwaithShaman.class, "LimwaithShaman", (entityID + 34), this, 64, 1, true);
EntityRegistry.registerModEntity(LimwaithChieftain.class, "LimwaithChieftain", (entityID + 14), this, 64, 1, true);
EntityRegistry.registerModEntity(Wraith.class, "Wraith", (entityID + 15), this, 64, 1, true);
@ -402,6 +413,10 @@ public class CinderLoE {
// Unique
dwarvenBrickRuned = (new RunedDwarvenBrick());
GameRegistry.registerBlock(dwarvenBrickRuned, "dwarvenBrickRuned");
// verticalWeaponRack = new VerticalWeaponRack();
// GameRegistry.registerTileEntity(LOTRTileEntityWeaponRack.class, "verticalWeaponRack");
// GameRegistry.registerBlock(verticalWeaponRack, "verticalWeaponRack");
// Barrel
fishBarrel = (new FishBarrel());
@ -511,7 +526,7 @@ public class CinderLoE {
* Item Registation, add up the "last ID added" upon adding a new item
* Weapons will need to be linked
*/
// Last ID added: 96
// Last ID added: 97
// ==Food Items==
ItemRegistration.registerItem(onion, "onion", 89);
@ -582,6 +597,7 @@ public class CinderLoE {
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");
@ -589,10 +605,12 @@ public class CinderLoE {
ItemRegistration.registerItem(frostblade, "frostblade", 30);
ItemRegistration.registerItem(daggervoid, "daggerVoid", 96);
ItemRegistration.registerItem(spearsolidgold, "spearsolidgold", 31);
ItemRegistration.registerItem(spearUnnamed, "spearUnnamed", 97);
ItemRegistration.registerItem(whip, "whip", 32);
linkLOTRWeapon(frostblade, "frostblade");
linkLOTRWeapon(daggervoid, "daggerVoid");
linkLOTRWeapon(spearsolidgold, "spearsolidgold");
linkLOTRWeapon(spearUnnamed, "spearUnnamed");
linkLOTRWeapon(whip, "whip");
//ASH
@ -682,10 +700,9 @@ public class CinderLoE {
bonemold = new Item().setUnlocalizedName("lotr:bonemold").setTextureName("lotr:bonemold").setCreativeTab((CreativeTabs) materials);
ItemRegistration.registerItem(bonemold, "bonemold", 83);
MATERIAL_LIMWAITH_BONE = getLOTRMaterialByName("LIMWAITH_BONE");
MATERIAL_LIMWAITH_WOOD = getLOTRMaterialByName("LIMWAITH_WOOD");
MATERIAL_BONEMOLD = getLOTRMaterialByName("BONEMOLD");
if (MATERIAL_LIMWAITH_WOOD != null && MATERIAL_LIMWAITH_BONE != null) {
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");
@ -696,12 +713,12 @@ public class CinderLoE {
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_LIMWAITH_BONE)).setUnlocalizedName("lotr:spearLimwaith").setTextureName("lotr:spearLimwaith");
truncheonLimwaith = (new LOTRItemSword(MATERIAL_LIMWAITH_BONE)).setUnlocalizedName("lotr:truncheonLimwaith").setTextureName("lotr:truncheonLimwaith");
battleaxeLimwaith = (new LOTRItemBattleaxe(MATERIAL_LIMWAITH_BONE)).setUnlocalizedName("lotr:battleaxeLimwaith").setTextureName("lotr:battleaxeLimwaith");
tridentLimwaith = (new LOTRItemTrident(MATERIAL_LIMWAITH_BONE)).setUnlocalizedName("lotr:tridentLimwaith").setTextureName("lotr:tridentLimwaith");
daggerLimwaith = (new LOTRItemDagger(MATERIAL_LIMWAITH_BONE)).setUnlocalizedName("lotr:daggerLimwaith").setTextureName("lotr:daggerLimwaith");
daggerLimwaithPoisoned = (new LOTRItemDagger(MATERIAL_LIMWAITH_BONE, LOTRItemDagger.DaggerEffect.POISON)).setUnlocalizedName("lotr:daggerLimwaithPoisoned").setTextureName("lotr:daggerLimwaithPoisoned");
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.registerItem(helmetLimwaith, "helmetLimwaith", 47);
@ -736,7 +753,7 @@ public class CinderLoE {
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, "helmet")).setUnlocalizedName("lotr:helmetBree").setTextureName("lotr:helmetBree");
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");
@ -798,6 +815,10 @@ public class CinderLoE {
// RenderingRegistry.registerEntityRenderingHandler(HaradLevy.class, new LOTRRenderNearHaradrim());
// RenderingRegistry.registerEntityRenderingHandler(DwarfLevy.class, new LOTRRenderDwarf());
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());
@ -976,6 +997,7 @@ public class CinderLoE {
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");
// == 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");
@ -1002,6 +1024,7 @@ public class CinderLoE {
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");
// == Ash Forged ==
CinderCore.registerItemFallback(Item.getIdFromItem(ingotAsh), Item.getIdFromItem(LOTRMod.galvorn), "cinder_loe", "1.2");
@ -1080,6 +1103,9 @@ public class CinderLoE {
// CinderCore.registerEntityFallback(HaradLevy.class, LOTREntityNearHaradrim.class, "cinder_loe", "1.2.3");
// CinderCore.registerEntityFallback(DwarfLevy.class, LOTREntityDwarf.class, "cinder_loe", "1.2.3");
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");
@ -1129,6 +1155,10 @@ public class CinderLoE {
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

@ -14,9 +14,8 @@ 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("LIMWAITH_BONE", 250, 2.0F, 0.7F, 2, 6.0F, 10, null);
modifyMaterial("BONEMOLD", 350, 2.0F, 0.6F, 2, 6.0F, 10, CinderLoE.bonemold);
modifyMaterial("LIMWAITH_WOOD", 230, 1.5F, 0.5F, 2, 5.0F, 10, null);
modifyMaterial("LIMWAITH_WOOD", 230, 1.5F, 0.5F, 2, 5.0F, 10, Item.getItemFromBlock(LOTRMod.driedReeds));
modifyMaterial("EVENT", 2400, 5.0F, 0.0F, 0, 9.0F, 10, null);
modifyMaterial("BREE", 350, 2.5F, 0.6F, 2, 6.0F, 10, Items.iron_ingot);
modifyMaterial("BATTLENUN", 300, 3F, 0.6F, 2, 6.0F, 10, Items.iron_ingot);

@ -0,0 +1,24 @@
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);
}
}

@ -2,12 +2,9 @@ package com.zivilon.cinder_loe.character;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.eventhandler.EventPriority;
import cpw.mods.fml.common.FMLCommonHandler;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.entity.living.LivingHurtEvent;
import net.minecraft.command.IEntitySelector;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLiving;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.passive.EntityAnimal;
@ -19,8 +16,7 @@ import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
import com.zivilon.cinder_loe.character.CharacterRoleAPI;
import com.zivilon.cinder_loe.entity.FangornAnimal;
import com.zivilon.cinder_loe.entity.npc.FangornAnimal;
public class CharacterEventListener {

@ -1,32 +1,46 @@
package com.zivilon.cinder_loe.client.model;
import net.minecraft.client.model.ModelBiped;
import lotr.client.model.LOTRModelBiped;
import net.minecraft.client.model.ModelRenderer;
import net.minecraft.entity.Entity;
/**
* Created using Tabula 4.1.1
*/
public class ModelBreeKettleHelmet extends ModelBiped {
public class ModelBreeKettleHelmet extends LOTRModelBiped {
public ModelRenderer shape9;
public ModelBreeKettleHelmet(float f) {
super(f);
super(f); // Call the parent constructor to initialize the biped parts
this.textureWidth = 64;
this.textureHeight = 32;
this.bipedHead = new ModelRenderer(this, 0, 0);
this.bipedHead.setRotationPoint(0.0F, 0.0F, 0.0F);
this.bipedHead.addBox(-4.0F, -8.0F, -4.0F, 8, 8, 8, 1.0F);
// 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);
this.shape9.addBox(-7.0F, -4.75F, -7.0F, 14, 0, 14, 1.75F);
this.bipedHead.addChild(shape9);
//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.shape9.render(f5);
}
/**

@ -4,9 +4,6 @@ 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.FangornAuroch;
public class ModelFangornAuroch extends ModelBase {
public ModelRenderer body;

@ -1,6 +1,5 @@
package com.zivilon.cinder_loe.client.model;
import lotr.client.LOTRTickHandlerClient;
import lotr.common.LOTRMod;
import net.minecraft.client.model.ModelBase;
import net.minecraft.client.model.ModelRenderer;
@ -8,7 +7,7 @@ import net.minecraft.entity.Entity;
import net.minecraft.util.MathHelper;
import org.lwjgl.opengl.GL11;
import com.zivilon.cinder_loe.entity.FangornElk;
import com.zivilon.cinder_loe.entity.npc.FangornElk;
public class ModelFangornElk extends ModelBase {
private ModelRenderer body;

@ -4,12 +4,10 @@ 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.entity.passive.EntityWolf;
import net.minecraft.util.MathHelper;
import org.lwjgl.opengl.GL11;
import net.minecraft.client.model.ModelBase;
import net.minecraft.client.model.ModelRenderer;
import com.zivilon.cinder_loe.entity.FangornWolf;
import com.zivilon.cinder_loe.entity.npc.FangornWolf;
@SideOnly(Side.CLIENT)
public class ModelFangornWolf extends ModelBase {

@ -0,0 +1,92 @@
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;
}
}

@ -1,6 +1,6 @@
package com.zivilon.cinder_loe.client.render;
import com.zivilon.cinder_loe.entity.BattleNun;
import com.zivilon.cinder_loe.entity.npc.BattleNun;
import lotr.client.model.LOTRModelHuman;
import lotr.client.render.entity.LOTRRenderBiped;
import lotr.client.render.entity.LOTRRandomSkins;
@ -12,8 +12,6 @@ import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLiving;
import net.minecraft.util.ResourceLocation;
import com.zivilon.cinder_loe.entity.Limwaith;
public class RenderBattleNun extends LOTRRenderBiped {
public static LOTRRandomSkins skinsFemale;

@ -0,0 +1,14 @@
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;
}
}

@ -8,7 +8,7 @@ import net.minecraft.entity.Entity;
import net.minecraft.util.ResourceLocation;
import com.zivilon.cinder_loe.client.model.ModelFangornAuroch;
import com.zivilon.cinder_loe.entity.FangornAuroch;
import com.zivilon.cinder_loe.entity.npc.FangornAuroch;
public class RenderFangornAuroch extends RenderLiving {
public static LOTRRandomSkins aurochsSkins;

@ -1,11 +1,10 @@
package com.zivilon.cinder_loe.client.render;
import com.zivilon.cinder_loe.entity.FangornBear;
import com.zivilon.cinder_loe.entity.npc.FangornBear;
import java.util.HashMap;
import java.util.Map;
import lotr.client.model.LOTRModelBear;
import lotr.client.render.entity.LOTRRenderBear;
import lotr.common.entity.animal.LOTREntityBear;
import net.minecraft.client.model.ModelBase;
import net.minecraft.client.renderer.entity.RenderLiving;

@ -2,16 +2,13 @@ package com.zivilon.cinder_loe.client.render;
import lotr.common.entity.LOTRRandomSkinEntity;
import lotr.client.render.entity.LOTRRandomSkins;
import lotr.common.entity.animal.LOTREntityElk;
import lotr.common.entity.npc.LOTRNPCMount;
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 com.zivilon.cinder_loe.client.model.ModelFangornElk;
import com.zivilon.cinder_loe.entity.FangornElk;
import com.zivilon.cinder_loe.entity.npc.FangornElk;
public class RenderFangornElk extends RenderLiving {
private static LOTRRandomSkins elkSkins;

@ -1,15 +1,10 @@
package com.zivilon.cinder_loe.client.render;
import lotr.common.entity.npc.LOTRNPCMount;
import lotr.client.render.entity.LOTRRenderHorse;
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 com.zivilon.cinder_loe.entity.FangornWolf;
import com.zivilon.cinder_loe.client.model.ModelFangornWolf;
public class RenderFangornWolf extends RenderLiving {

@ -4,7 +4,6 @@ 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.LOTREntityMoredain;
import lotr.common.entity.npc.LOTREntityNPC;
import net.minecraft.client.model.ModelBase;
import net.minecraft.client.model.ModelBiped;
@ -12,7 +11,7 @@ import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLiving;
import net.minecraft.util.ResourceLocation;
import com.zivilon.cinder_loe.entity.Limwaith;
import com.zivilon.cinder_loe.entity.npc.Limwaith;
public class RenderLimwaith extends LOTRRenderBiped {
public static LOTRRandomSkins skinsMale;

@ -1,16 +1,9 @@
package com.zivilon.cinder_loe.client.render;
import com.zivilon.cinder_loe.entity.Limwaith;
import lotr.client.model.LOTRModelHuman;
import com.zivilon.cinder_loe.entity.npc.Limwaith;
import lotr.client.render.entity.LOTRRandomSkins;
import lotr.client.render.entity.LOTRRenderBiped;
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 RenderLimwaithShaman extends RenderLimwaith {
private static LOTRRandomSkins outfits;

@ -0,0 +1,144 @@
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();
}
}
}
}
}

@ -26,6 +26,10 @@ public class LOTRBannerAdder implements IClassTransformer {
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");
}

@ -22,7 +22,7 @@ public class LOTRWeaponLinker implements IClassTransformer {
"spearRedDwarf", "crossbowRedDwarf", "swordRedDwarf", "battleaxeRedDwarf", "pikeRedDwarf", "daggerRedDwarf", "daggerRedDwarfPoisoned", "hammerRedDwarf",
"radagastStaff", "alatarStaff", "pallandoStaff", "sarumanStaff",
"spearLimwaith", "tridentLimwaith", "daggerLimwaith", "daggerLimwaithPoisoned", "truncheonLimwaith", "battleaxeLimwaith", "blowgunLimwaith",
"frostblade", "spearsolidgold", "whip",
"frostblade", "spearsolidgold", "whip", "spearUnnamed",
"swordBree",
"maceArnor",
"daggerAsh","bowAsh","hammerAsh","pikeAsh","battleaxeAsh","swordAsh","spearAsh", "staffAsh");

@ -0,0 +1,90 @@
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;
}
}

@ -77,6 +77,8 @@ public class SpeechBankModifier {
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"));
return speechBanks;
}

@ -56,8 +56,8 @@ public class CorruptDwarf extends LOTREntityDwarf {
@Override
public String getSpeechBank(EntityPlayer entityplayer) {
if (this.isFriendlyAndAligned(entityplayer)) {
return "corrupt/neutral";
return "corruptSpeak/all/neutral";
}
return "corrupt/hostile";
return "corruptSpeak/all/hostile";
}
}

@ -86,9 +86,9 @@ public class CorruptElf extends LOTREntityElf {
@Override
public String getSpeechBank(EntityPlayer entityplayer) {
if (this.isFriendlyAndAligned(entityplayer)) {
return "corrupt/neutral";
return "corruptSpeak/all/neutral";
}
return "corrupt/hostile";
return "corruptSpeak/all/hostile";
}
@Override

@ -81,9 +81,9 @@ public class CorruptHobbit extends LOTREntityHobbitBounder {
@Override
public String getSpeechBank(EntityPlayer entityplayer) {
if (this.isFriendlyAndAligned(entityplayer)) {
return "corrupt/neutral";
return "corruptSpeak/all/neutral";
}
return "corrupt/hostile";
return "corruptSpeak/all/hostile";
}
@Override
protected void dropFewItems(boolean flag, int i) {

@ -86,9 +86,9 @@ public class CorruptMan extends LOTREntityGondorMan {
@Override
public String getSpeechBank(EntityPlayer entityplayer) {
if (this.isFriendlyAndAligned(entityplayer)) {
return "corrupt/neutral";
return "corruptSpeak/all/neutral";
}
return "corrupt/hostile";
return "corruptSpeak/all/hostile";
}
@Override
public LOTRMiniQuest createMiniQuest() {

@ -63,9 +63,9 @@ public class CorruptOrc extends LOTREntityOrc {
@Override
public String getSpeechBank(EntityPlayer entityplayer) {
if (this.isFriendlyAndAligned(entityplayer)) {
return "corrupt/neutral";
return "corruptSpeak/all/neutral";
}
return "corrupt/hostile";
return "corruptSpeak/all/hostile";
}
@Override
public float getAlignmentBonus() {

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import com.zivilon.cinder_loe.CinderLoE;
import lotr.common.entity.npc.LOTRBannerBearer;

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import com.zivilon.cinder_loe.CinderLoE;
import lotr.common.LOTRCapes;
@ -7,7 +7,6 @@ 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.EntityLivingBase;
import net.minecraft.entity.IEntityLivingData;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import lotr.common.entity.ai.LOTREntityAIAttackOnCollide;
import lotr.common.entity.npc.LOTREntityDunedain;

@ -1,18 +1,11 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import com.zivilon.cinder_loe.CinderLoE;
import lotr.common.LOTRMod;
import lotr.common.LOTRShields;
import lotr.common.entity.ai.LOTREntityAIRangedAttack;
import lotr.common.entity.npc.LOTREntityNPC;
import lotr.common.entity.projectile.LOTREntityDart;
import lotr.common.item.LOTRItemBlowgun;
import lotr.common.item.LOTRItemDart;
import net.minecraft.entity.*;
import net.minecraft.entity.ai.EntityAIBase;
import net.minecraft.entity.ai.EntityAISwimming;
import net.minecraft.item.ItemStack;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.world.World;
public class ArnorSoldierArcher extends ArnorSoldier {

@ -1,15 +1,9 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import com.zivilon.cinder_loe.CinderLoE;
import lotr.common.LOTRAchievement;
import lotr.common.LOTRShields;
import lotr.common.entity.npc.LOTREntityDunedain;
import lotr.common.entity.npc.LOTREntityMoredain;
import lotr.common.entity.npc.LOTRNPCMount;
import lotr.common.quest.LOTRMiniQuest;
import lotr.common.quest.LOTRMiniQuestFactory;
import net.minecraft.entity.IEntityLivingData;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import com.zivilon.cinder_loe.CinderLoE;
import lotr.common.LOTRAchievement;

@ -1,8 +1,6 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import com.zivilon.cinder_loe.CinderLoE;
import lotr.common.LOTRMod;
import lotr.common.entity.ai.LOTREntityAIAttackOnCollide;
import lotr.common.entity.ai.LOTREntityAIRangedAttack;
import lotr.common.entity.npc.LOTREntityNPC;
import net.minecraft.entity.EntityLiving;
@ -10,7 +8,6 @@ import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.IEntityLivingData;
import net.minecraft.entity.ai.EntityAIBase;
import net.minecraft.item.ItemStack;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.world.World;
public class BreeCrossbowman extends BreeSoldier {

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import com.zivilon.cinder_loe.CinderLoE;
import lotr.common.*;

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import com.zivilon.cinder_loe.CinderLoE;
import lotr.common.LOTRMod;

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import lotr.common.entity.npc.LOTRBannerBearer;
import lotr.common.item.LOTRItemBanner;

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import com.zivilon.cinder_loe.CinderLoE;
import lotr.common.LOTRMod;

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import lotr.common.LOTRAchievement;
import lotr.common.LOTRFoods;

@ -1,23 +1,16 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import lotr.common.LOTRMod;
import net.minecraft.block.Block;
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.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.DamageSource;
import net.minecraft.world.World;
import net.minecraft.util.MovingObjectPosition;
import java.util.List;
import com.zivilon.cinder_loe.CinderLoE;
import com.zivilon.cinder_loe.entity.FangornAnimal;
public class FangornAuroch extends FangornAnimal {
public FangornAuroch(World world) {

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import lotr.common.LOTRMod;
import lotr.common.entity.animal.LOTREntityBear;
@ -7,8 +7,6 @@ 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.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.DamageSource;
@ -18,7 +16,6 @@ import net.minecraft.world.World;
import java.util.List;
import com.zivilon.cinder_loe.CinderLoE;
import com.zivilon.cinder_loe.entity.FangornAnimal;
public class FangornBear extends FangornAnimal {
public FangornBear(World world) {

@ -1,24 +1,18 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import lotr.common.LOTRMod;
import net.minecraft.block.Block;
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.init.Items;
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;
import java.util.UUID;
import com.zivilon.cinder_loe.CinderLoE;
import com.zivilon.cinder_loe.entity.FangornAnimal;
public class FangornElk extends FangornAnimal {
public FangornElk(World world) {

@ -1,23 +1,15 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import lotr.common.LOTRMod;
import net.minecraft.block.Block;
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.init.Items;
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;
import com.zivilon.cinder_loe.CinderLoE;
import com.zivilon.cinder_loe.entity.FangornAnimal;
public class FangornWildBoar extends FangornAnimal {
public FangornWildBoar(World world) {

@ -1,23 +1,12 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import lotr.common.LOTRMod;
import net.minecraft.block.Block;
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.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.DamageSource;
import net.minecraft.world.World;
import java.util.List;
import com.zivilon.cinder_loe.CinderLoE;
import com.zivilon.cinder_loe.entity.FangornAnimal;
public class FangornWolf extends FangornAnimal {
public FangornWolf(World world) {
super(world);

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import com.zivilon.cinder_loe.CinderLoE;
import lotr.common.LOTRMod;

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import lotr.common.entity.npc.LOTREntityMoredain;
import lotr.common.entity.npc.LOTRNPCMount;

@ -1,12 +1,12 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
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;
import com.zivilon.cinder_loe.entity.LimwaithWarrior;
import com.zivilon.cinder_loe.CinderLoE;
public class LimwaithBannerBearer extends LimwaithWarrior implements LOTRBannerBearer {
@ -15,10 +15,15 @@ public class LimwaithBannerBearer extends LimwaithWarrior implements LOTRBannerB
}
public LOTRItemBanner.BannerType getBannerType() {
return LOTRItemBanner.BannerType.MOREDAIN;
return LOTRItemBanner.BannerType.forID(43);
}
@Override
public ItemStack getPickedResult(MovingObjectPosition target) {
return new ItemStack(CinderLoE.limwaithBannerBearerSpawnEgg, 1);
}
@Override
public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) {
}
}

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import lotr.common.LOTRMod;
import lotr.common.entity.ai.LOTREntityAIRangedAttack;
@ -7,23 +7,15 @@ import lotr.common.item.LOTRItemBlowgun;
import lotr.common.item.LOTRItemDart;
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.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;
import com.zivilon.cinder_loe.CinderLoE;
import com.zivilon.cinder_loe.entity.Limwaith;
public class LimwaithBlowgunner extends Limwaith {
public LimwaithBlowgunner(World world) {

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import com.zivilon.cinder_loe.CinderLoE;
import lotr.common.LOTRShields;

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.IEntityLivingData;
@ -12,7 +12,6 @@ import lotr.common.entity.npc.LOTRUnitTradeable;
import lotr.common.entity.npc.LOTRUnitTradeEntries;
import lotr.common.world.spawning.LOTRInvasions;
import com.zivilon.cinder_loe.entity.LimwaithWarrior;
import com.zivilon.cinder_loe.CinderLoE;
public class LimwaithChieftain extends LimwaithBoneWarrior implements LOTRUnitTradeable {

@ -1,45 +1,12 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
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.LOTRShields;
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.StatCollector;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.world.World;
import net.minecraft.world.biome.BiomeGenBase;
import com.zivilon.cinder_loe.CinderLoE;
import com.zivilon.cinder_loe.entity.Limwaith;
public class LimwaithWarrior extends Limwaith {
public LimwaithWarrior(World world) {

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import lotr.common.entity.npc.LOTREntityDwarfAxeThrower;
import lotr.common.LOTRMod;

@ -1,8 +1,7 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import lotr.common.LOTRMod;
import lotr.common.item.LOTRItemBanner;
import net.minecraft.entity.IEntityLivingData;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
import lotr.common.entity.npc.LOTRBannerBearer;
@ -16,10 +15,15 @@ public class RedDwarfBannerBearer extends RedDwarfWarrior implements LOTRBannerB
}
public LOTRItemBanner.BannerType getBannerType() {
return LOTRItemBanner.BannerType.DWARF;
return LOTRItemBanner.BannerType.forID(42);
}
@Override
public ItemStack getPickedResult(MovingObjectPosition target) {
return new ItemStack(CinderLoE.redDwarfBannerBearerSpawnEgg, 1);
}
@Override
public void attackEntityWithRangedAttack(EntityLivingBase p_82196_1_, float p_82196_2_) {
}
}

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import lotr.common.LOTRMod;
import net.minecraft.entity.IEntityLivingData;

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.npc;
import lotr.common.entity.npc.LOTREntityDwarfWarrior;
import lotr.common.LOTRMod;

@ -0,0 +1,106 @@
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 null;
}
}

@ -1,18 +1,15 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.trader;
import com.zivilon.cinder_loe.CinderLoE;
import com.zivilon.cinder_loe.entity.npc.Limwaith;
import lotr.common.LOTRLevelData;
import lotr.common.LOTRMod;
import lotr.common.entity.npc.LOTREntityDwarf;
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;

@ -1,15 +1,13 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.trader;
import com.zivilon.cinder_loe.CinderLoE;
import lotr.common.LOTRFoods;
import com.zivilon.cinder_loe.entity.npc.Limwaith;
import lotr.common.LOTRLevelData;
import lotr.common.LOTRMod;
import lotr.common.entity.npc.LOTREntityDwarf;
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 lotr.common.item.LOTRItemMug;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.IEntityLivingData;
import net.minecraft.entity.player.EntityPlayer;

@ -1,4 +1,4 @@
package com.zivilon.cinder_loe.entity;
package com.zivilon.cinder_loe.entity.trader;
import lotr.common.entity.npc.LOTRTradeEntries;
import lotr.common.entity.npc.LOTRTradeEntries.TradeType;

@ -1,28 +1,22 @@
package com.zivilon.cinder_loe.items;
import cpw.mods.fml.common.network.simpleimpl.IMessage;
import lotr.common.LOTRCreativeTabs;
import net.minecraft.creativetab.CreativeTabs;
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.EnumAction;
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.items.WizardStaff;
import com.zivilon.cinder_loe.entity.FangornBear;
import com.zivilon.cinder_loe.entity.FangornWildBoar;
import com.zivilon.cinder_loe.entity.FangornAuroch;
import com.zivilon.cinder_loe.entity.FangornElk;
import com.zivilon.cinder_loe.entity.FangornAnimal;
import com.zivilon.cinder_loe.entity.npc.FangornBear;
import com.zivilon.cinder_loe.entity.npc.FangornWildBoar;
import com.zivilon.cinder_loe.entity.npc.FangornAuroch;
import com.zivilon.cinder_loe.entity.npc.FangornElk;
import com.zivilon.cinder_loe.entity.npc.FangornAnimal;
import lotr.common.item.LOTRMaterial;
import java.util.Random;

@ -0,0 +1,37 @@
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;
}
}

@ -4,7 +4,6 @@ import com.zivilon.cinder_loe.CinderLoE;
import com.zivilon.cinder_loe.client.model.ModelBreeKettleHelmet;
import com.zivilon.cinder_loe.client.model.ModelRedDwarfHelmet;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Overwrite;
import org.spongepowered.asm.mixin.Shadow;
import java.util.HashMap;
@ -28,8 +27,6 @@ import lotr.client.model.LOTRModelHarnedorChestplate;
import lotr.client.model.LOTRModelHarnedorHelmet;
import lotr.client.model.LOTRModelHeadPlate;
import lotr.client.model.LOTRModelHighElvenHelmet;
import lotr.client.model.LOTRModelHighElvenHelmet;
import lotr.client.model.LOTRModelHighElvenHelmet;
import lotr.client.model.LOTRModelLeatherHat;
import lotr.client.model.LOTRModelMoredainLionHelmet;
import lotr.client.model.LOTRModelMorgulHelmet;
@ -42,7 +39,6 @@ import lotr.client.model.LOTRModelTauredainChieftainHelmet;
import lotr.client.model.LOTRModelTauredainGoldHelmet;
import lotr.client.model.LOTRModelUmbarHelmet;
import lotr.client.model.LOTRModelUrukHelmet;
import lotr.client.model.LOTRModelUrukHelmet;
import lotr.client.model.LOTRModelWingedHelmet;
import lotr.common.LOTRMod;

@ -55,7 +55,7 @@ public class MixinLOTRContainerAnvil {
return (materialItem.getItem() == CinderLoE.redDwarfSteel);
if (material == CinderLoE.MATERIAL_ASH.toToolMaterial())
return (materialItem.getItem() == CinderLoE.ingotAsh);
if (material == CinderLoE.MATERIAL_LIMWAITH_BONE.toToolMaterial())
if (material == CinderLoE.MATERIAL_BONEMOLD.toToolMaterial())
return (materialItem.getItem() == CinderLoE.bonemold);
if (material == CinderLoE.EVENT.toToolMaterial())
return LOTRMod.isOreNameEqual(materialItem, "ice");
@ -73,6 +73,8 @@ public class MixinLOTRContainerAnvil {
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);
}
return false;

@ -1,5 +1,6 @@
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;
@ -18,17 +19,18 @@ 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"));
}
@ -36,6 +38,15 @@ public abstract class MixinLOTRTileEntityDwarvenForge {
protected boolean isCoal(ItemStack itemstack) {
return (itemstack.getItem() == Items.coal);
}
@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 isGoldNugget(ItemStack itemstack) {
return (itemstack.getItem() == Items.gold_nugget);
@ -44,16 +55,17 @@ public abstract class MixinLOTRTileEntityDwarvenForge {
@Overwrite(remap = false)
protected ItemStack getAlloySmeltingResult(ItemStack itemstack, ItemStack alloyItem) {
if (isIron(itemstack) && isCoal(alloyItem))
return new ItemStack(LOTRMod.dwarfSteel);
return new ItemStack(LOTRMod.dwarfSteel);
if (isIron(itemstack) && alloyItem.getItem() == LOTRMod.quenditeCrystal)
return new ItemStack(LOTRMod.galvorn);
return new ItemStack(LOTRMod.galvorn);
if (isIron(itemstack) && alloyItem.getItem() == Item.getItemFromBlock(LOTRMod.rock) && alloyItem.getItemDamage() == 3)
return new ItemStack(LOTRMod.blueDwarfSteel);
return new ItemStack(LOTRMod.blueDwarfSteel);
if (isCopper(itemstack) && alloyItem.getItem() == Item.getItemById(371))
return new ItemStack(CinderLoE.redDwarfSteel);
return new ItemStack(CinderLoE.redDwarfSteel);
if ((isCopper(itemstack) && isTin(alloyItem)) || (isTin(itemstack) && isCopper(alloyItem)))
return new ItemStack(LOTRMod.bronze, 2);
return new ItemStack(LOTRMod.bronze, 2);
if (this.cinderLoE_Git$isMithril(itemstack) && this.cinderLoE_Git$isCoalBlock(alloyItem))
return new ItemStack(CinderLoE.ingotAsh, 1);
return null;
}
}

@ -4,6 +4,7 @@ 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;
@ -21,6 +22,15 @@ public abstract class MixinLOTRTileEntityForgeBase {
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
@ -30,7 +40,11 @@ public abstract class MixinLOTRTileEntityForgeBase {
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;
}
}

@ -141,6 +141,8 @@ public class recipes {
GameRegistry.addShapelessRecipe(new ItemStack(CinderLoE.redDwarfSteel, 9), new Object[] { new ItemStack(CinderLoE.blockRedDwarfSteel) });
GameRegistry.addRecipe(new ItemStack(CinderLoE.blockRedDwarfSteel, 1), new Object[] { "XXX", "XXX", "XXX",
Character.valueOf('X'), CinderLoE.redDwarfSteel });
LOTRRecipes.dwarvenRecipes.add(new ShapedOreRecipe(new ItemStack(LOTRMod.banner, 1, 42), new Object[] { " 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));
}
@ -185,6 +187,8 @@ public class recipes {
Character.valueOf('X'), "bone", Character.valueOf('Y'), CinderLoE.bonemold}));
LOTRRecipes.moredainRecipes.add(new ShapedOreRecipe(new ItemStack(CinderLoE.bootsboneLimwaith), new Object[] { "Y Y", "X X",
Character.valueOf('X'), "bone", Character.valueOf('Y'), CinderLoE.bonemold}));
LOTRRecipes.moredainRecipes.add(new ShapedOreRecipe(new ItemStack(LOTRMod.banner, 1, 43), new Object[] { " 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() {

@ -19,6 +19,7 @@ tile.lotr:cobbleDrystone.name=Cobbled Drystone
tile.lotr:plaster.name=Plaster
tile.lotr:voidblock.name=Void
item.lotr:spearUnnamed.name=Drannach Oriour
item.lotr:frostblade.name=Frostblade
item.lotr:whip.name=Whip
item.lotr:daggerVoid.name=Voidal Dagger
@ -93,6 +94,10 @@ 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.spawn_egg_fangornauroch.name=Spawn Fangorn Auroch
item.spawn_egg_fangornbear.name=Spawn Fangorn Bear
@ -127,6 +132,7 @@ item.spawn_egg_limwaithshaman.name=Spawn Limwaith Shaman
item.spawn_egg_limwaithfishmonger.name=Spawn Limwaith Fishmonger
item.spawn_egg_limwaithbonewarrior.name=Spawn Limwaith Warrior
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
@ -134,6 +140,7 @@ entity.cinder_loe.CorruptEnt.name=Corrupt Ent
entity.cinder_loe.CorruptHobit.name=Corrupt Hobbit
entity.cinder_loe.CorruptOrc.name=Corrupt Orc
entity.cinder_loe.BladorthinSmith.name=Bladorthin Smith
entity.cinder_loe.RedDwarfSmith.name=Red Dwarf Smith
entity.cinder_loe.RedDwarfWarrior.name=Red Dwarf Warrior

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

@ -0,0 +1,30 @@
{
"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
]
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Loading…
Cancel
Save