From a303ed2ca0f7a3fb3c473daed031b75ab757aeb1 Mon Sep 17 00:00:00 2001 From: Shinare Date: Fri, 11 Apr 2025 12:28:31 +0300 Subject: [PATCH] Balanced warband sizes. More identifiable gear for warband leaders. --- .../world/event/WarbandFaction.java | 146 ++++++++---------- 1 file changed, 67 insertions(+), 79 deletions(-) diff --git a/src/main/java/com/zivilon/cinder_loe/world/event/WarbandFaction.java b/src/main/java/com/zivilon/cinder_loe/world/event/WarbandFaction.java index 2964835..ec1fb59 100644 --- a/src/main/java/com/zivilon/cinder_loe/world/event/WarbandFaction.java +++ b/src/main/java/com/zivilon/cinder_loe/world/event/WarbandFaction.java @@ -7,6 +7,7 @@ import com.zivilon.cinder_loe.entity.npc.dwarf.*; 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.*; +import com.zivilon.cinder_loe.entity.npc.elf.*; import com.zivilon.cinder_loe.util.Utilities; import net.minecraft.entity.*; @@ -80,42 +81,42 @@ public enum WarbandFaction { */ static { MORDOR.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityOlogHai.class, 5), new Troop(LOTREntityMordorOrc.class, 80), new Troop(LOTREntityMordorWarg.class, 30), new Troop(LOTREntityMordorOrcArcher.class, 25))); - BLACK_URUK.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityBlackUruk.class, 50), new Troop(LOTREntityBlackUrukArcher.class, 30), new Troop(LOTREntityBlackUrukBannerBearer.class, 10))); - MORGUL_VALE.troops = new ArrayList<>(Arrays.asList(new Troop(MorgulOrc.class, 60), new Troop(LOTREntityMinasMorgulBannerBearer.class, 10), new Troop(LOTREntityMordorOrcArcher.class, 30))); - GONDOR.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityGondorSoldier.class, 60), new Troop(LOTREntityGondorTowerGuard.class, 15), new Troop(LOTREntityGondorBannerBearer.class, 10), new Troop(LOTREntityGondorArcher.class, 30))); - PELARGIR.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityPelargirMarine.class, 80), new Troop(LOTREntityPelargirBannerBearer.class, 15))); - DOL_AMROTH.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityDolAmrothSoldier.class, 50), new Troop(LOTREntityDolAmrothArcher.class, 30), new Troop(LOTREntityDolAmrothBannerBearer.class, 10), new Troop(LOTREntitySwanKnight.class, 10))); - ROHAN.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityRohirrimWarrior.class, 60), new Troop(LOTREntityRohirrimArcher.class, 30))); - RIVENDELL.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityRivendellWarrior.class, 60), new Troop(LOTREntityRivendellBannerBearer.class, 15))); - LINDON.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityHighElfWarrior.class, 70), new Troop(LOTREntityHighElfBannerBearer.class, 20))); - BREE.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityBreeGuard.class, 60), new Troop(BreeCrossbowman.class, 30), new Troop(BreeOutrider.class, 10), new Troop(LOTREntityBreeBannerBearer.class, 10))); - ARNOR.troops = new ArrayList<>(Arrays.asList(new Troop(ArnorSoldier.class, 50), new Troop(BattleNun.class, 10), new Troop(ArnorSoldierArcher.class, 30), new Troop(ArnorBannerBearer.class, 15))); - GUNDABAD.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityGundabadOrc.class, 60), new Troop(LOTREntityGundabadWarg.class, 30), new Troop(LOTREntityGundabadUruk.class, 20), new Troop(LOTREntityGundabadOrcArcher.class, 30))); + BLACK_URUK.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityBlackUruk.class, 70), new Troop(LOTREntityBlackUrukArcher.class, 30), new Troop(LOTREntityBlackUrukBannerBearer.class, 20))); + MORGUL_VALE.troops = new ArrayList<>(Arrays.asList(new Troop(MorgulOrc.class, 80), new Troop(LOTREntityMinasMorgulBannerBearer.class, 20), new Troop(LOTREntityMordorOrcArcher.class, 30))); + GONDOR.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityGondorSoldier.class, 60), new Troop(LOTREntityGondorTowerGuard.class, 15), new Troop(LOTREntityGondorBannerBearer.class, 20), new Troop(LOTREntityGondorArcher.class, 30))); + PELARGIR.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityPelargirMarine.class, 100), new Troop(LOTREntityPelargirBannerBearer.class, 20))); + DOL_AMROTH.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityDolAmrothSoldier.class, 60), new Troop(LOTREntityDolAmrothArcher.class, 30), new Troop(LOTREntityDolAmrothBannerBearer.class, 20), new Troop(LOTREntitySwanKnight.class, 15))); + ROHAN.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityRohirrimWarrior.class, 120), new Troop(LOTREntityRohirrimArcher.class, 30))); + RIVENDELL.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityRivendellWarrior.class, 100), new Troop(LOTREntityRivendellBannerBearer.class, 20))); + LINDON.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityHighElfWarrior.class, 70), new Troop(Sirrandrai.class, 30), new Troop(LOTREntityHighElfBannerBearer.class, 20))); + BREE.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityBreeGuard.class, 60), new Troop(BreeCrossbowman.class, 30), new Troop(BreeOutrider.class, 10), new Troop(LOTREntityBreeBannerBearer.class, 20))); + ARNOR.troops = new ArrayList<>(Arrays.asList(new Troop(ArnorSoldier.class, 50), new Troop(BattleNun.class, 10), new Troop(ArnorSoldierArcher.class, 30), new Troop(ArnorBannerBearer.class, 20))); + GUNDABAD.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityGundabadOrc.class, 90), new Troop(LOTREntityGundabadWarg.class, 40), new Troop(LOTREntityGundabadUruk.class, 20), new Troop(LOTREntityGundabadOrcArcher.class, 40))); ANGMAR.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityAngmarOrc.class, 60), new Troop(LOTREntityAngmarWarg.class, 30), new Troop(LOTREntityTroll.class, 8), new Troop(LOTREntityMountainTroll.class, 8), new Troop(LOTREntityAngmarBannerBearer.class, 10))); - RHUDAUR.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityAngmarHillmanWarrior.class, 80), new Troop(LOTREntityAngmarHillmanAxeThrower.class, 40))); - WOOD_ELF.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityWoodElfWarrior.class, 60), new Troop(LOTREntityWoodElfBannerBearer.class, 15))); - WOOD_ELF_SCOUT.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityWoodElfScout.class, 90))); - DOL_GULDUR.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityDolGuldurOrc.class, 40), new Troop(LOTREntityDolGuldurOrcArcher.class, 15), new Troop(LOTREntityMirkTroll.class, 5), new Troop(LOTREntityMirkwoodSpider.class, 40))); - DALE.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityDaleSoldier.class, 30), new Troop(LOTREntityDaleArcher.class, 50), new Troop(LOTREntityDaleLevyman.class, 30), new Troop(LOTREntityDaleBannerBearer.class, 10))); - DURINS_FOLK.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityDwarfWarrior.class, 40), new Troop(LOTREntityDwarfAxeThrower.class, 30), new Troop(LOTREntityDwarfBannerBearer.class, 10))); - BLUE_MOUNTAINS.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityBlueDwarfWarrior.class, 40), new Troop(LOTREntityBlueDwarfAxeThrower.class, 30), new Troop(LOTREntityBlueDwarfBannerBearer.class, 10))); - RED_MOUNTAINS.troops = new ArrayList<>(Arrays.asList(new Troop(RedDwarfWarrior.class, 40), new Troop(RedDwarfArbalest.class, 30), new Troop(RedDwarfBannerBearer.class, 10))); + RHUDAUR.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityAngmarHillmanWarrior.class, 120), new Troop(LOTREntityAngmarHillmanAxeThrower.class, 40))); + WOOD_ELF.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityWoodElfWarrior.class, 100), new Troop(LOTREntityWoodElfBannerBearer.class, 20))); + WOOD_ELF_SCOUT.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityWoodElfScout.class, 120))); + DOL_GULDUR.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityDolGuldurOrc.class, 70), new Troop(LOTREntityDolGuldurOrcArcher.class, 15), new Troop(LOTREntityMirkTroll.class, 5), new Troop(LOTREntityMirkwoodSpider.class, 40))); + DALE.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityDaleSoldier.class, 30), new Troop(LOTREntityDaleArcher.class, 50), new Troop(LOTREntityDaleLevyman.class, 60), new Troop(LOTREntityDaleBannerBearer.class, 20))); + DURINS_FOLK.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityDwarfWarrior.class, 60), new Troop(LOTREntityDwarfAxeThrower.class, 40), new Troop(LOTREntityDwarfBannerBearer.class, 20))); + BLUE_MOUNTAINS.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityBlueDwarfWarrior.class, 70), new Troop(LOTREntityBlueDwarfAxeThrower.class, 30), new Troop(LOTREntityBlueDwarfBannerBearer.class, 20))); + RED_MOUNTAINS.troops = new ArrayList<>(Arrays.asList(new Troop(RedDwarfWarrior.class, 50), new Troop(RedDwarfArbalest.class, 50), new Troop(RedDwarfBannerBearer.class, 20))); DUNLAND.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityDunlendingWarrior.class, 60), new Troop(LOTREntityDunlendingAxeThrower.class, 30), new Troop(LOTREntityDunlendingBerserker.class, 20))); - ISENGARD.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityUrukHai.class, 50), new Troop(LOTREntityUrukHaiCrossbower.class, 20), new Troop(LOTREntityUrukHaiBerserker.class, 20))); + ISENGARD.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityUrukHai.class, 60), new Troop(LOTREntityUrukHaiCrossbower.class, 20), new Troop(LOTREntityUrukHaiBerserker.class, 20), new Troop(LOTREntityUrukHaiBannerBearer.class, 20))); ISENGARD_SNAGA.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityIsengardSnaga.class, 60), new Troop(LOTREntityIsengardSnagaArcher.class, 40), new Troop(LOTREntityUrukWarg.class, 30))); FANGORN.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityEnt.class, 30), new Troop(LOTREntityHuorn.class, 40))); - DORWINION.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityDorwinionGuard.class, 40), new Troop(LOTREntityDorwinionCrossbower.class, 30), new Troop(LOTREntityDorwinionElfWarrior.class, 10), new Troop(LOTREntityDorwinionElfArcher.class, 10), new Troop(LOTREntityDorwinionBannerBearer.class, 10))); - RHUDEL.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityEasterlingWarrior.class, 60), new Troop(LOTREntityEasterlingArcher.class, 30), new Troop(LOTREntityEasterlingBannerBearer.class, 15))); - RHUDEL_GOLDEN.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityEasterlingGoldWarrior.class, 100))); - UMBAR.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityUmbarWarrior.class, 40), new Troop(LOTREntityCorsair.class, 30), new Troop(LOTREntityUmbarArcher.class, 30), new Troop(LOTREntityUmbarBannerBearer.class, 15))); - HARNENNOR.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityHarnedorWarrior.class, 60), new Troop(LOTREntityHarnedorArcher.class, 30), new Troop(LOTREntityHarnedorBannerBearer.class, 15))); - GULFEN.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityGulfHaradWarrior.class, 60), new Troop(LOTREntityGulfHaradArcher.class, 30), new Troop(LOTREntityGulfHaradBannerBearer.class, 15))); - MORWAITH.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityMoredainWarrior.class, 90), new Troop(LOTREntityMoredainBannerBearer.class, 15))); - LIMWAITH.troops = new ArrayList<>(Arrays.asList(new Troop(LimwaithWarrior.class, 50), new Troop(LimwaithBoneWarrior.class, 20), new Troop(LimwaithBlowgunner.class, 30), new Troop(LimwaithBannerBearer.class, 15))); - TAURETHRIM.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityTauredainWarrior.class, 60), new Troop(LOTREntityTauredainBlowgunner.class, 30), new Troop(TauredainTrueBlood.class, 15))); + DORWINION.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityDorwinionGuard.class, 40), new Troop(LOTREntityDorwinionCrossbower.class, 30), new Troop(LOTREntityDorwinionElfWarrior.class, 10), new Troop(LOTREntityDorwinionElfArcher.class, 10), new Troop(LOTREntityDorwinionBannerBearer.class, 20))); + RHUDEL.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityEasterlingWarrior.class, 60), new Troop(LOTREntityEasterlingArcher.class, 30), new Troop(LOTREntityEasterlingBannerBearer.class, 20))); + RHUDEL_GOLDEN.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityEasterlingGoldWarrior.class, 120), new Troop(LOTREntityEasterlingBannerBearer.class, 20))); + UMBAR.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityUmbarWarrior.class, 70), new Troop(LOTREntityCorsair.class, 30), new Troop(LOTREntityUmbarArcher.class, 30), new Troop(LOTREntityUmbarBannerBearer.class, 20))); + HARNENNOR.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityHarnedorWarrior.class, 70), new Troop(LOTREntityHarnedorArcher.class, 30), new Troop(LOTREntityHarnedorBannerBearer.class, 20))); + GULFEN.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityGulfHaradWarrior.class, 70), new Troop(LOTREntityGulfHaradArcher.class, 30), new Troop(LOTREntityGulfHaradBannerBearer.class, 20))); + MORWAITH.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityMoredainWarrior.class, 100), new Troop(LOTREntityMoredainBannerBearer.class, 20))); + LIMWAITH.troops = new ArrayList<>(Arrays.asList(new Troop(LimwaithWarrior.class, 60), new Troop(LimwaithBoneWarrior.class, 20), new Troop(LimwaithBlowgunner.class, 30), new Troop(LimwaithBannerBearer.class, 15))); + TAURETHRIM.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityTauredainWarrior.class, 60), new Troop(LOTREntityTauredainBlowgunner.class, 50), new Troop(TauredainTrueBlood.class, 25))); HALF_TROLL.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityHalfTrollWarrior.class, 80), new Troop(LOTREntityHalfTrollBannerBearer.class, 20))); - UTUMNO.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityUtumnoOrc.class, 60), new Troop(LOTREntityUtumnoOrcArcher.class, 40), new Troop(LOTREntityUtumnoSnowTroll.class, 15), new Troop(LOTREntityUtumnoFireWarg.class, 10), new Troop(LOTREntityUtumnoIceWarg.class, 10), new Troop(LOTREntityUtumnoObsidianWarg.class, 10), new Troop(LOTREntityUtumnoTroll.class, 10))); - RENEGADE.troops = new ArrayList<>(Arrays.asList(new Troop(Renegade.class, 120))); + UTUMNO.troops = new ArrayList<>(Arrays.asList(new Troop(LOTREntityUtumnoOrc.class, 90), new Troop(LOTREntityUtumnoOrcArcher.class, 40), new Troop(LOTREntityUtumnoSnowTroll.class, 15), new Troop(LOTREntityUtumnoFireWarg.class, 15), new Troop(LOTREntityUtumnoIceWarg.class, 15), new Troop(LOTREntityUtumnoObsidianWarg.class, 15), new Troop(LOTREntityUtumnoTroll.class, 10))); + RENEGADE.troops = new ArrayList<>(Arrays.asList(new Troop(Renegade.class, 140))); } public static Entity get_boss_entity(WarbandFaction faction, World world) { @@ -241,7 +242,7 @@ public enum WarbandFaction { ItemStack boots = item(LOTRMod.bootsBlackUruk, LOTREnchantment.protect1, LOTREnchantment.protectRanged3); ItemStack legs = item(LOTRMod.legsBlackUruk, LOTREnchantment.protectRanged3); ItemStack body = item(LOTRMod.bodyBlackUruk, LOTREnchantment.protectFire3); - ItemStack helmet = item(LOTRMod.helmetBlackUruk, LOTREnchantment.protect1, LOTREnchantment.protectFire3); + ItemStack helmet = item(LOTRMod.helmetMorgul, LOTREnchantment.protect1, LOTREnchantment.protectFire3); ItemStack weapon = item(LOTRMod.morgulBlade, LOTREnchantment.strong4, LOTREnchantment.meleeReach1, LOTREnchantment.meleeSpeed1); set_equipment(boss_entity, weapon, boots, legs, body, helmet); set_attributes(boss_entity, default_boss_hp, default_boss_speed, default_boss_damage_boost); @@ -252,7 +253,7 @@ public enum WarbandFaction { ItemStack boots = item(LOTRMod.bootsGondor, LOTREnchantment.protect1, LOTREnchantment.protectRanged3); ItemStack legs = item(LOTRMod.legsGondor, LOTREnchantment.protectRanged3); ItemStack body = item(LOTRMod.bodyGondor, LOTREnchantment.protectFire3); - ItemStack helmet = item(LOTRMod.helmetGondor, LOTREnchantment.protect1, LOTREnchantment.protectFire3); + ItemStack helmet = item(LOTRMod.helmetGondorWinged, LOTREnchantment.protect1, LOTREnchantment.protectFire3); ItemStack weapon = null; switch (Warband.random.nextInt(3)) { case 0: weapon = item(LOTRMod.swordGondor, LOTREnchantment.meleeSpeed1); break; @@ -317,10 +318,10 @@ public enum WarbandFaction { } public static Entity get_rivendell_boss(World world) { LOTREntityRivendellWarrior boss_entity = new LOTREntityRivendellWarrior(world); - ItemStack boots = item(LOTRMod.bootsRivendell, LOTREnchantment.protect1, LOTREnchantment.protectRanged3); - ItemStack legs = item(LOTRMod.legsRivendell, LOTREnchantment.protectRanged3); - ItemStack body = item(LOTRMod.bodyRivendell, LOTREnchantment.protectFire3); - ItemStack helmet = item(LOTRMod.helmetRivendell, LOTREnchantment.protect1, LOTREnchantment.protectFire3); + ItemStack boots = item(LOTRMod.bootsGondolin, LOTREnchantment.protect1, LOTREnchantment.protectRanged3); + ItemStack legs = item(LOTRMod.legsGondolin, LOTREnchantment.protectRanged3); + ItemStack body = item(LOTRMod.bodyGondolin, LOTREnchantment.protectFire3); + ItemStack helmet = item(LOTRMod.helmetGondolin, LOTREnchantment.protect1, LOTREnchantment.protectFire3); ItemStack ranged_weapon = item(LOTRMod.rivendellBow, LOTREnchantment.rangedStrong3, LOTREnchantment.rangedStrong2); ItemStack melee_weapon = null; switch (Warband.random.nextInt(3)) { @@ -334,19 +335,13 @@ public enum WarbandFaction { return boss_entity; } public static Entity get_lindon_boss(World world) { - LOTREntityHighElfWarrior boss_entity = new LOTREntityHighElfWarrior(world); - ItemStack boots = item(LOTRMod.bootsHighElven, LOTREnchantment.protect1, LOTREnchantment.protectRanged3); - ItemStack legs = item(LOTRMod.legsHighElven, LOTREnchantment.protectRanged3); - ItemStack body = item(LOTRMod.bodyHighElven, LOTREnchantment.protectFire3); - ItemStack helmet = item(LOTRMod.helmetHighElven, LOTREnchantment.protect1, LOTREnchantment.protectFire3); - ItemStack ranged_weapon = item(LOTRMod.highElvenBow, LOTREnchantment.rangedStrong3, LOTREnchantment.rangedStrong2); - ItemStack melee_weapon = null; - switch (Warband.random.nextInt(2)) { - case 0: melee_weapon = item(LOTRMod.swordHighElven, LOTREnchantment.meleeSpeed1); break; - case 1: melee_weapon = item(LOTRMod.spearHighElven, LOTREnchantment.meleeReach1); break; - } + LOTREntityHighElfWarrior boss_entity = new Sirrandrai(world); + ItemStack boots = item(LOTRMod.bootsGondolin, LOTREnchantment.protect1, LOTREnchantment.protectRanged3); + ItemStack legs = item(LOTRMod.legsGondolin, LOTREnchantment.protectRanged3); + ItemStack body = item(LOTRMod.bodyGondolin, LOTREnchantment.protectFire3); + ItemStack helmet = item(LOTRMod.helmetGondolin, LOTREnchantment.protect1, LOTREnchantment.protectFire3); + ItemStack melee_weapon = item(LOTRMod.swordGondolin, LOTREnchantment.meleeSpeed1); set_equipment(boss_entity, melee_weapon, boots, legs, body, helmet); - set_equipment(boss_entity, ranged_weapon, boots, legs, body, helmet); set_attributes(boss_entity, default_boss_hp, default_boss_speed, default_boss_damage_boost); return boss_entity; } @@ -395,9 +390,9 @@ public enum WarbandFaction { } public static Entity get_angmar_boss(World world) { LOTREntityAngmarOrc boss_entity = new LOTREntityAngmarOrc(world); - ItemStack boots = item(LOTRMod.bootsAngmar, LOTREnchantment.protect1, LOTREnchantment.protectRanged3); - ItemStack legs = item(LOTRMod.legsAngmar, LOTREnchantment.protectRanged3); - ItemStack body = item(LOTRMod.bodyAngmar, LOTREnchantment.protectFire3); + ItemStack boots = item(LOTRMod.bootsMorgul, LOTREnchantment.protect1, LOTREnchantment.protectRanged3); + ItemStack legs = item(LOTRMod.legsMorgul, LOTREnchantment.protectRanged3); + ItemStack body = item(LOTRMod.bodyMorgul, LOTREnchantment.protectFire3); ItemStack helmet = item(LOTRMod.helmetAngmar, LOTREnchantment.protect1, LOTREnchantment.protectFire3); ItemStack weapon = null; switch (Warband.random.nextInt(5)) { @@ -498,10 +493,10 @@ public enum WarbandFaction { } public static Entity get_durins_folk_boss(World world) { LOTREntityDwarfWarrior boss_entity = new LOTREntityDwarfWarrior(world); - ItemStack boots = item(LOTRMod.bootsDwarven, LOTREnchantment.protect1, LOTREnchantment.protectRanged3); - ItemStack legs = item(LOTRMod.legsDwarven, LOTREnchantment.protectRanged3); - ItemStack body = item(LOTRMod.bodyDwarven, LOTREnchantment.protectFire3); - ItemStack helmet = item(LOTRMod.helmetDwarven, LOTREnchantment.protect1, LOTREnchantment.protectFire3); + ItemStack boots = item(LOTRMod.bootsDwarvenGold, LOTREnchantment.protect1, LOTREnchantment.protectRanged3); + ItemStack legs = item(LOTRMod.legsDwarvenGold, LOTREnchantment.protectRanged3); + ItemStack body = item(LOTRMod.bodyDwarvenGold, LOTREnchantment.protectFire3); + ItemStack helmet = item(LOTRMod.helmetDwarvenGold, LOTREnchantment.protect1, LOTREnchantment.protectFire3); ItemStack weapon = null; switch (Warband.random.nextInt(3)) { case 0: weapon = item(LOTRMod.swordDwarven, LOTREnchantment.meleeSpeed1); break; @@ -564,14 +559,8 @@ public enum WarbandFaction { ItemStack boots = item(LOTRMod.bootsUruk, LOTREnchantment.protect1, LOTREnchantment.protectRanged3); ItemStack legs = item(LOTRMod.legsUruk, LOTREnchantment.protectRanged3); ItemStack body = item(LOTRMod.bodyUruk, LOTREnchantment.protectFire3); - ItemStack helmet = item(LOTRMod.helmetUruk, LOTREnchantment.protect1, LOTREnchantment.protectFire3); - ItemStack weapon = null; - switch (Warband.random.nextInt(4)) { - case 0: weapon = item(LOTRMod.scimitarBlackUruk, LOTREnchantment.strong4, LOTREnchantment.meleeSpeed1); break; - case 1: weapon = item(LOTRMod.spearBlackUruk, LOTREnchantment.strong4, LOTREnchantment.meleeReach1); break; - case 2: weapon = item(LOTRMod.hammerBlackUruk, LOTREnchantment.strong4, LOTREnchantment.knockback2); break; - case 3: weapon = item(LOTRMod.battleaxeBlackUruk, LOTREnchantment.strong4, LOTREnchantment.meleeReach1, LOTREnchantment.knockback1); break; - } + ItemStack helmet = item(LOTRMod.helmetUrukBerserker, LOTREnchantment.protect1, LOTREnchantment.protectFire3); + ItemStack weapon = item(LOTRMod.scimitarUrukBerserker, LOTREnchantment.strong4, LOTREnchantment.meleeSpeed1); set_equipment(boss_entity, weapon, boots, legs, body, helmet); set_attributes(boss_entity, default_boss_hp, default_boss_speed, default_boss_damage_boost); return boss_entity; @@ -581,7 +570,7 @@ public enum WarbandFaction { ItemStack boots = item(LOTRMod.bootsUruk, LOTREnchantment.protect1, LOTREnchantment.protectRanged3); ItemStack legs = item(LOTRMod.legsUruk, LOTREnchantment.protectRanged3); ItemStack body = item(LOTRMod.bodyUruk, LOTREnchantment.protectFire3); - ItemStack helmet = item(LOTRMod.helmetUruk, LOTREnchantment.protect1, LOTREnchantment.protectFire3); + ItemStack helmet = item(LOTRMod.helmetUrukBerserker, LOTREnchantment.protect1, LOTREnchantment.protectFire3); ItemStack weapon = item(CinderLoE.whip, LOTREnchantment.strong4, LOTREnchantment.meleeReach1, LOTREnchantment.meleeSpeed1); set_equipment(boss_entity, weapon, boots, legs, body, helmet); set_attributes(boss_entity, default_boss_hp, default_boss_speed, 15.0D); @@ -624,7 +613,7 @@ public enum WarbandFaction { ItemStack boots = item(LOTRMod.bootsRhunGold, LOTREnchantment.protect1, LOTREnchantment.protectRanged3); ItemStack legs = item(LOTRMod.legsRhunGold, LOTREnchantment.protect1, LOTREnchantment.protectRanged3); ItemStack body = item(LOTRMod.bodyRhunGold, LOTREnchantment.protect1, LOTREnchantment.protectFire3); - ItemStack helmet = item(LOTRMod.helmetRhunGold, LOTREnchantment.protect1, LOTREnchantment.protectFire3); + ItemStack helmet = item(LOTRMod.helmetRhunWarlord, LOTREnchantment.protect1, LOTREnchantment.protectFire3); ItemStack weapon = null; switch (Warband.random.nextInt(3)) { case 0: weapon = item(LOTRMod.swordRhun, LOTREnchantment.strong4, LOTREnchantment.meleeSpeed1); break; @@ -637,16 +626,15 @@ public enum WarbandFaction { } public static Entity get_umbar_boss(World world) { LOTREntityUmbarWarrior boss_entity = new LOTREntityUmbarWarrior(world); - ItemStack boots = item(LOTRMod.bootsUmbar, LOTREnchantment.protect1, LOTREnchantment.protectRanged3); - ItemStack legs = item(LOTRMod.legsUmbar, LOTREnchantment.protectRanged3); - ItemStack body = item(LOTRMod.bodyUmbar, LOTREnchantment.protectFire3); - ItemStack helmet = item(LOTRMod.helmetUmbar, LOTREnchantment.protect1, LOTREnchantment.protectFire3); + ItemStack boots = item(LOTRMod.bootsBlackNumenorean, LOTREnchantment.protect1, LOTREnchantment.protectRanged3); + ItemStack legs = item(LOTRMod.legsBlackNumenorean, LOTREnchantment.protectRanged3); + ItemStack body = item(LOTRMod.bodyBlackNumenorean, LOTREnchantment.protectFire3); + ItemStack helmet = item(LOTRMod.helmetBlackNumenorean, LOTREnchantment.protect1, LOTREnchantment.protectFire3); ItemStack weapon = null; - switch (Warband.random.nextInt(4)) { - case 0: weapon = item(LOTRMod.scimitarNearHarad, LOTREnchantment.meleeSpeed1); break; - case 1: weapon = item(LOTRMod.spearNearHarad, LOTREnchantment.meleeReach1); break; - case 2: weapon = item(LOTRMod.poleaxeNearHarad, LOTREnchantment.strong4, LOTREnchantment.knockback1); break; - case 3: weapon = item(LOTRMod.maceNearHarad, LOTREnchantment.knockback2); break; + switch (Warband.random.nextInt(3)) { + case 0: weapon = item(LOTRMod.swordBlackNumenorean, LOTREnchantment.meleeSpeed1); break; + case 1: weapon = item(LOTRMod.spearBlackNumenorean, LOTREnchantment.meleeReach1); break; + case 2: weapon = item(LOTRMod.maceBlackNumenorean, LOTREnchantment.knockback2); break; } set_equipment(boss_entity, weapon, boots, legs, body, helmet); set_attributes(boss_entity, default_boss_hp, default_boss_speed, default_boss_damage_boost); @@ -700,10 +688,10 @@ public enum WarbandFaction { } public static Entity get_limwaith_boss(World world) { LimwaithWarrior boss_entity = new LimwaithWarrior(world); - ItemStack boots = item(CinderLoE.bootsLimwaith, LOTREnchantment.protect1, LOTREnchantment.protectRanged3); - ItemStack legs = item(CinderLoE.legsLimwaith, LOTREnchantment.protectRanged3); - ItemStack body = item(CinderLoE.bodyLimwaith, LOTREnchantment.protectFire3); - ItemStack helmet = item(CinderLoE.helmetLimwaith, LOTREnchantment.protect1, LOTREnchantment.protectFire3); + ItemStack boots = item(CinderLoE.bootsboneLimwaith, LOTREnchantment.protect1, LOTREnchantment.protectRanged3); + ItemStack legs = item(CinderLoE.legsboneLimwaith, LOTREnchantment.protectRanged3); + ItemStack body = item(CinderLoE.bodyboneLimwaith, LOTREnchantment.protectFire3); + ItemStack helmet = item(CinderLoE.helmetboneLimwaith, LOTREnchantment.protect1, LOTREnchantment.protectFire3); ItemStack weapon = null; switch (Warband.random.nextInt(3)) { case 0: weapon = item(CinderLoE.truncheonLimwaith, LOTREnchantment.meleeSpeed1); break;