From fcd30e2b4a870029ce550818eea547412e46db60 Mon Sep 17 00:00:00 2001 From: KeyLime17 Date: Tue, 27 May 2025 20:07:08 -0400 Subject: [PATCH] Void dagger small rework, carriageRoad objects --- .../cinder_loe/carriage/CarriageRoad.java | 14 ++++++++++ .../cinder_loe/items/specials/VoidDagger.java | 26 +++++++++++++++++-- 2 files changed, 38 insertions(+), 2 deletions(-) create mode 100644 src/main/java/com/zivilon/cinder_loe/carriage/CarriageRoad.java diff --git a/src/main/java/com/zivilon/cinder_loe/carriage/CarriageRoad.java b/src/main/java/com/zivilon/cinder_loe/carriage/CarriageRoad.java new file mode 100644 index 0000000..deb1beb --- /dev/null +++ b/src/main/java/com/zivilon/cinder_loe/carriage/CarriageRoad.java @@ -0,0 +1,14 @@ +package com.zivilon.cinder_loe.carriage; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +public class CarriageRoad { + String name; + List neighbors; + List destinations; +} + +Map roads = new HashMap<>(); + diff --git a/src/main/java/com/zivilon/cinder_loe/items/specials/VoidDagger.java b/src/main/java/com/zivilon/cinder_loe/items/specials/VoidDagger.java index 595e54c..3662177 100644 --- a/src/main/java/com/zivilon/cinder_loe/items/specials/VoidDagger.java +++ b/src/main/java/com/zivilon/cinder_loe/items/specials/VoidDagger.java @@ -37,11 +37,34 @@ public class VoidDagger extends LOTRItemDagger { return true; } public void onKillEntity(EntityLivingBase entityKilled, EntityLivingBase killer) { - if (killer instanceof EntityPlayer) { EntityPlayer player = (EntityPlayer) killer; LOTRFaction faction = getFaction(player); entityKilled.worldObj.playSoundAtEntity(player, "mob.zombie.unfect", 1F,1F); + // God forgive me for a million If Statements instead of a Switch Case + if (!entityKilled.worldObj.isRemote && entityKilled instanceof EntityPlayer) { + CorruptMan entity = new CorruptMan(entityKilled.worldObj); + entity.copyLocationAndAnglesFrom(entityKilled); + + for (int i = 0; i < 4; i++) { + ItemStack armor = entityKilled.getEquipmentInSlot(i + 1); // Armor slots + entity.setCurrentItemOrArmor(i + 1, armor); + } + + ItemStack mainWeapon = ((LOTREntityMan) entityKilled).npcItemsInv.getMeleeWeapon(); // Main hand weapon + entity.npcItemsInv.setIdleItem(mainWeapon); + entity.npcItemsInv.setMeleeWeapon(mainWeapon); + entity.setHealth(20); + entity.addPotionEffect(new PotionEffect(Potion.regeneration.id, 9999, 0)); + entity.setCustomNameTag(((EntityPlayer) entityKilled).getDisplayName()); + + entityKilled.worldObj.removeEntity(entityKilled); + entity.onSpawnWithEgg((IEntityLivingData) null); + + entityKilled.worldObj.spawnEntityInWorld(entity); + entityKilled.worldObj.playAuxSFXAtEntity(null, 1016, (int) entity.posX, (int) entity.posY, (int) entity.posZ, 0); + + } if (!entityKilled.worldObj.isRemote && entityKilled instanceof LOTREntityOrc) { CorruptOrc corruptOrc = new CorruptOrc(entityKilled.worldObj); corruptOrc.copyLocationAndAnglesFrom(entityKilled); @@ -86,7 +109,6 @@ public class VoidDagger extends LOTRItemDagger { entityKilled.worldObj.spawnEntityInWorld(entity); entityKilled.worldObj.playAuxSFXAtEntity(null, 1016, (int) entity.posX, (int) entity.posY, (int) entity.posZ, 0); } - } if (entityKilled instanceof LOTREntityHobbit) { CorruptHobbit entity = new CorruptHobbit(entityKilled.worldObj); entity.copyLocationAndAnglesFrom(entityKilled);