Sfoglia il codice sorgente

Unhardcoding invulnerable flag set from L2Character.
By default all L2Playable and L2Attackable are not invulnerable now.
All L2NpcInstance are mortal too, but their HP can't be decreased :)

_DS_ 15 anni fa
parent
commit
9a49930fe1

+ 1 - 0
L2_GameServer/java/net/sf/l2j/gameserver/model/actor/L2Attackable.java

@@ -277,6 +277,7 @@ public class L2Attackable extends L2Npc
 	public L2Attackable(int objectId, L2NpcTemplate template)
 	{
 		super(objectId, template);
+		setIsInvul(false);
 		_mustGiveExpSp = true;
 	}
 

+ 1 - 24
L2_GameServer/java/net/sf/l2j/gameserver/model/actor/L2Character.java

@@ -61,26 +61,12 @@ import net.sf.l2j.gameserver.model.L2Skill.SkillTargetType;
 import net.sf.l2j.gameserver.model.actor.instance.L2AirShipInstance;
 import net.sf.l2j.gameserver.model.actor.instance.L2ArtefactInstance;
 import net.sf.l2j.gameserver.model.actor.instance.L2BoatInstance;
-import net.sf.l2j.gameserver.model.actor.instance.L2ControlTowerInstance;
-import net.sf.l2j.gameserver.model.actor.instance.L2DecoyInstance;
 import net.sf.l2j.gameserver.model.actor.instance.L2DoorInstance;
-import net.sf.l2j.gameserver.model.actor.instance.L2EffectPointInstance;
-import net.sf.l2j.gameserver.model.actor.instance.L2FortCommanderInstance;
-import net.sf.l2j.gameserver.model.actor.instance.L2FortSiegeGuardInstance;
-import net.sf.l2j.gameserver.model.actor.instance.L2FriendlyMobInstance;
-import net.sf.l2j.gameserver.model.actor.instance.L2GuardInstance;
 import net.sf.l2j.gameserver.model.actor.instance.L2MinionInstance;
-import net.sf.l2j.gameserver.model.actor.instance.L2MonsterInstance;
-import net.sf.l2j.gameserver.model.actor.instance.L2NpcInstance;
 import net.sf.l2j.gameserver.model.actor.instance.L2NpcWalkerInstance;
 import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
 import net.sf.l2j.gameserver.model.actor.instance.L2PetInstance;
 import net.sf.l2j.gameserver.model.actor.instance.L2RiftInvaderInstance;
-import net.sf.l2j.gameserver.model.actor.instance.L2SiegeFlagInstance;
-import net.sf.l2j.gameserver.model.actor.instance.L2SiegeGuardInstance;
-import net.sf.l2j.gameserver.model.actor.instance.L2SiegeSummonInstance;
-import net.sf.l2j.gameserver.model.actor.instance.L2SummonInstance;
-import net.sf.l2j.gameserver.model.actor.instance.L2TrapInstance;
 import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.SkillDat;
 import net.sf.l2j.gameserver.model.actor.knownlist.CharKnownList;
 import net.sf.l2j.gameserver.model.actor.position.CharPosition;
@@ -394,16 +380,7 @@ public abstract class L2Character extends L2Object
 			Formulas.addFuncsToNewCharacter(this);
 		}
 
-		if (!(this instanceof L2PcInstance) && !(this instanceof L2MonsterInstance) &&
-			!(this instanceof L2GuardInstance) && !(this instanceof L2SiegeGuardInstance) &&
-			!(this instanceof L2ControlTowerInstance) && !(this instanceof L2DoorInstance) &&
-			!(this instanceof L2TrapInstance) && !(this instanceof L2FriendlyMobInstance) &&
-			!(this instanceof L2DecoyInstance) && !(this instanceof L2SiegeSummonInstance) &&
-			!(this instanceof L2PetInstance) && !(this instanceof L2SummonInstance) &&
-			!(this instanceof L2SiegeFlagInstance) && !(this instanceof L2EffectPointInstance) &&
-			!(this instanceof L2FortCommanderInstance) && !(this instanceof L2NpcInstance) &&
-			!(this instanceof L2FortSiegeGuardInstance))
-			setIsInvul(true);
+		setIsInvul(true);
 	}
 
 	protected void initCharStatusUpdateValues()

+ 1 - 0
L2_GameServer/java/net/sf/l2j/gameserver/model/actor/L2Decoy.java

@@ -35,6 +35,7 @@ public abstract class L2Decoy extends L2Character
         super(objectId, template);
         _owner = owner;
         setXYZInvisible(owner.getX(), owner.getY(), owner.getZ());
+        setIsInvul(false);
     }
     
     @Override

+ 1 - 0
L2_GameServer/java/net/sf/l2j/gameserver/model/actor/L2Playable.java

@@ -57,6 +57,7 @@ public abstract class L2Playable extends L2Character
 	public L2Playable(int objectId, L2CharTemplate template)
 	{
 		super(objectId, template);
+		setIsInvul(false);
 	}
 
     @Override

+ 1 - 0
L2_GameServer/java/net/sf/l2j/gameserver/model/actor/L2Trap.java

@@ -37,6 +37,7 @@ public class L2Trap extends L2Character
 	public L2Trap(int objectId, L2CharTemplate template, L2PcInstance owner)
 	{
 		super(objectId, template);
+		setIsInvul(false);
 		_owner = owner;
 		setXYZInvisible(owner.getX(), owner.getY(), owner.getZ());
 	}

+ 1 - 0
L2_GameServer/java/net/sf/l2j/gameserver/model/actor/instance/L2ControlTowerInstance.java

@@ -35,6 +35,7 @@ public class L2ControlTowerInstance extends L2Npc
 	public L2ControlTowerInstance(int objectId, L2NpcTemplate template)
 	{
 		super(objectId, template);
+		setIsInvul(false);
 	}
 
     @Override

+ 1 - 0
L2_GameServer/java/net/sf/l2j/gameserver/model/actor/instance/L2DoorInstance.java

@@ -202,6 +202,7 @@ public class L2DoorInstance extends L2Character
 	public L2DoorInstance(int objectId, L2CharTemplate template, int doorId, String name, boolean unlockable)
 	{
 		super(objectId, template);
+		setIsInvul(false);
 		_doorId = doorId;
 		_name = name;
 		_unlockable = unlockable;

+ 1 - 0
L2_GameServer/java/net/sf/l2j/gameserver/model/actor/instance/L2EffectPointInstance.java

@@ -27,6 +27,7 @@ public class L2EffectPointInstance extends L2Npc
     public L2EffectPointInstance(int objectId, L2NpcTemplate template, L2Character owner)
     {
     	super(objectId, template);
+    	setIsInvul(false);
     	_owner = owner;
     }
     

+ 1 - 0
L2_GameServer/java/net/sf/l2j/gameserver/model/actor/instance/L2FortBallistaInstance.java

@@ -32,6 +32,7 @@ public class L2FortBallistaInstance extends L2Npc
 	public L2FortBallistaInstance(int objectId, L2NpcTemplate template)
     {
         super(objectId, template);
+        setIsInvul(false);
     }
 	
     @Override

+ 1 - 0
L2_GameServer/java/net/sf/l2j/gameserver/model/actor/instance/L2NpcInstance.java

@@ -44,6 +44,7 @@ public class L2NpcInstance extends L2Npc
 	public L2NpcInstance(int objectId, L2NpcTemplate template)
 	{
 		super(objectId, template);
+		setIsInvul(false);
 		_classesToTeach = template.getTeachInfo();
 	}
 

+ 1 - 0
L2_GameServer/java/net/sf/l2j/gameserver/model/actor/instance/L2SiegeFlagInstance.java

@@ -62,6 +62,7 @@ public class L2SiegeFlagInstance extends L2Npc
 		}
 		_isAdvanced = advanced;
 		getStatus();
+		setIsInvul(false);
     }
     
     /**