Browse Source

BETA: ''Fixing'' signet skills.
* I'm not sure if "Day of Doom" is working as it should, but if it's not will be fixed later.
* Minor cleanup, getAllEffects() doesn't return null anymore.

Zoey76 12 years ago
parent
commit
72e7ddb0d2

+ 3 - 7
L2J_DataPack_BETA/dist/game/data/scripts/ai/individual/Baium.java

@@ -423,15 +423,11 @@ public class Baium extends AbstractNpcAI
 		if (attacker.getMountType() == 1)
 		{
 			boolean hasStriderDebuff = false;
-			List<L2Effect> effects = attacker.getAllEffects();
-			if ((effects != null) && (!effects.isEmpty()))
+			for (L2Effect e : attacker.getAllEffects())
 			{
-				for (L2Effect e : effects)
+				if (e.getSkill().getId() == HINDER_STRIDER.getSkillId())
 				{
-					if (e.getSkill().getId() == HINDER_STRIDER.getSkillId())
-					{
-						hasStriderDebuff = true;
-					}
+					hasStriderDebuff = true;
 				}
 			}
 			if (!hasStriderDebuff)

+ 10 - 20
L2J_DataPack_BETA/dist/game/data/scripts/ai/individual/Zaken.java

@@ -18,8 +18,6 @@
  */
 package ai.individual;
 
-import java.util.List;
-
 import ai.npc.AbstractNpcAI;
 
 import com.l2jserver.Config;
@@ -262,19 +260,15 @@ public class Zaken extends AbstractNpcAI
 			}
 			int sk_4223 = 0;
 			int sk_4227 = 0;
-			List<L2Effect> effects = npc.getAllEffects();
-			if ((effects != null) && (effects.size() != 0))
+			for (L2Effect e : npc.getAllEffects())
 			{
-				for (L2Effect e : effects)
+				if (e.getSkill().getId() == 4227)
 				{
-					if (e.getSkill().getId() == 4227)
-					{
-						sk_4227 = 1;
-					}
-					if (e.getSkill().getId() == 4223)
-					{
-						sk_4223 = 1;
-					}
+					sk_4227 = 1;
+				}
+				if (e.getSkill().getId() == 4223)
+				{
+					sk_4223 = 1;
 				}
 			}
 			if (getTimeHour() < 5)
@@ -791,15 +785,11 @@ public class Zaken extends AbstractNpcAI
 			if (attacker.getMountType() == 1)
 			{
 				int sk_4258 = 0;
-				List<L2Effect> effects = attacker.getAllEffects();
-				if ((effects != null) && (effects.size() != 0))
+				for (L2Effect e : attacker.getAllEffects())
 				{
-					for (L2Effect e : effects)
+					if (e.getSkill().getId() == 4258)
 					{
-						if (e.getSkill().getId() == 4258)
-						{
-							sk_4258 = 1;
-						}
+						sk_4258 = 1;
 					}
 				}
 				if (sk_4258 == 0)

+ 1 - 10
L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/CancelDebuff.java

@@ -18,8 +18,6 @@
  */
 package handlers.effecthandlers;
 
-import java.util.List;
-
 import com.l2jserver.gameserver.model.actor.L2Character;
 import com.l2jserver.gameserver.model.effects.EffectTemplate;
 import com.l2jserver.gameserver.model.effects.L2Effect;
@@ -65,14 +63,7 @@ public class CancelDebuff extends L2Effect
 		}
 		
 		int count = 0;
-		final List<L2Effect> effects = target.getAllEffects();
-		
-		if ((effects == null) || (effects.size() == 0))
-		{
-			return false;
-		}
-		
-		for (L2Effect e : effects)
+		for (L2Effect e : target.getAllEffects())
 		{
 			if ((e == null) || !e.getSkill().isDebuff() || !e.getSkill().canBeDispeled())
 			{

+ 7 - 8
L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/Signet.java

@@ -18,7 +18,8 @@
  */
 package handlers.effecthandlers;
 
-import javolution.util.FastList;
+import java.util.ArrayList;
+import java.util.List;
 
 import com.l2jserver.gameserver.datatables.SkillTable;
 import com.l2jserver.gameserver.model.actor.L2Character;
@@ -58,18 +59,18 @@ public class Signet extends L2Effect
 	{
 		if (_skill == null)
 		{
-			return true;
+			return false;
 		}
-		int mpConsume = _skill.getMpConsume();
 		
+		int mpConsume = _skill.getMpConsume();
 		if (mpConsume > getEffector().getCurrentMp())
 		{
 			getEffector().sendPacket(SystemMessageId.SKILL_REMOVED_DUE_LACK_MP);
 			return false;
 		}
-		
 		getEffector().reduceCurrentMp(mpConsume);
-		FastList<L2Character> targets = FastList.newInstance();
+		
+		List<L2Character> targets = new ArrayList<>();
 		for (L2Character cha : getEffected().getKnownList().getKnownCharactersInRadius(getSkill().getAffectRange()))
 		{
 			if (cha == null)
@@ -82,7 +83,6 @@ public class Signet extends L2Effect
 				continue;
 			}
 			
-			// there doesn't seem to be a visible effect with MagicSkillLaunched packet...
 			getEffected().broadcastPacket(new MagicSkillUse(getEffected(), cha, _skill.getId(), _skill.getLevel(), 0, 0));
 			targets.add(cha);
 		}
@@ -91,8 +91,7 @@ public class Signet extends L2Effect
 		{
 			getEffector().callSkill(_skill, targets.toArray(new L2Character[targets.size()]));
 		}
-		FastList.recycle(targets);
-		return true;
+		return false;
 	}
 	
 	@Override

+ 1 - 6
L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/SignetAntiSummon.java

@@ -48,11 +48,6 @@ public class SignetAntiSummon extends L2Effect
 	@Override
 	public boolean onActionTime()
 	{
-		if (getTickCount() == 1)
-		{
-			return true; // do nothing first time
-		}
-		
 		int mpConsume = getSkill().getMpConsume();
 		L2PcInstance caster = getEffector().getActingPlayer();
 		for (L2Character cha : getEffected().getKnownList().getKnownCharactersInRadius(getSkill().getAffectRange()))
@@ -91,7 +86,7 @@ public class SignetAntiSummon extends L2Effect
 				}
 			}
 		}
-		return true;
+		return false;
 	}
 	
 	@Override

+ 7 - 28
L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/SignetMDam.java

@@ -36,7 +36,6 @@ import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
 import com.l2jserver.gameserver.model.effects.EffectTemplate;
 import com.l2jserver.gameserver.model.effects.L2Effect;
 import com.l2jserver.gameserver.model.effects.L2EffectType;
-import com.l2jserver.gameserver.model.skills.l2skills.L2SkillSignetCasttime;
 import com.l2jserver.gameserver.model.skills.targets.L2TargetType;
 import com.l2jserver.gameserver.model.stats.Env;
 import com.l2jserver.gameserver.model.stats.Formulas;
@@ -65,11 +64,6 @@ public class SignetMDam extends L2Effect
 	@Override
 	public boolean onActionTime()
 	{
-		if (getTickCount() <= 2)
-		{
-			return true; // do nothing first 2 times
-		}
-		
 		int mpConsume = getSkill().getMpConsume();
 		final L2PcInstance activeChar = getEffector().getActingPlayer();
 		activeChar.rechargeShots(getSkill().useSoulShot(), getSkill().useSpiritShot());
@@ -140,7 +134,7 @@ public class SignetMDam extends L2Effect
 			}
 		}
 		activeChar.setChargedShot(bss ? ShotType.BLESSED_SPIRITSHOTS : ShotType.SPIRITSHOTS, false);
-		return true;
+		return false;
 	}
 	
 	@Override
@@ -155,28 +149,16 @@ public class SignetMDam extends L2Effect
 	@Override
 	public boolean onStart()
 	{
-		L2NpcTemplate template;
-		if (getSkill() instanceof L2SkillSignetCasttime)
-		{
-			template = NpcTable.getInstance().getTemplate(getSkill().getNpcId());
-		}
-		else
-		{
-			return false;
-		}
-		
-		final L2EffectPointInstance effectPoint = new L2EffectPointInstance(IdFactory.getInstance().getNextId(), template, getEffector());
-		effectPoint.setCurrentHp(effectPoint.getMaxHp());
-		effectPoint.setCurrentMp(effectPoint.getMaxMp());
-		
+		final L2NpcTemplate template = NpcTable.getInstance().getTemplate(getSkill().getNpcId());
+		_actor = new L2EffectPointInstance(IdFactory.getInstance().getNextId(), template, getEffector());
+		_actor.setCurrentHp(_actor.getMaxHp());
+		_actor.setCurrentMp(_actor.getMaxMp());
 		int x = getEffector().getX();
 		int y = getEffector().getY();
 		int z = getEffector().getZ();
-		
 		if (getEffector().isPlayer() && (getSkill().getTargetType() == L2TargetType.GROUND))
 		{
 			final Point3D wordPosition = getEffector().getActingPlayer().getCurrentSkillWorldPosition();
-			
 			if (wordPosition != null)
 			{
 				x = wordPosition.getX();
@@ -184,11 +166,8 @@ public class SignetMDam extends L2Effect
 				z = wordPosition.getZ();
 			}
 		}
-		effectPoint.setIsInvul(true);
-		effectPoint.spawnMe(x, y, z);
-		
-		_actor = effectPoint;
+		_actor.setIsInvul(true);
+		_actor.spawnMe(x, y, z);
 		return true;
-		
 	}
 }

+ 4 - 15
L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/SignetNoise.java

@@ -18,8 +18,6 @@
  */
 package handlers.effecthandlers;
 
-import java.util.List;
-
 import com.l2jserver.gameserver.model.actor.L2Character;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
 import com.l2jserver.gameserver.model.effects.EffectTemplate;
@@ -47,11 +45,6 @@ public class SignetNoise extends L2Effect
 	@Override
 	public boolean onActionTime()
 	{
-		if (getTickCount() == 1)
-		{
-			return true; // do nothing first time
-		}
-		
 		L2PcInstance caster = getEffector().getActingPlayer();
 		for (L2Character target : getEffected().getKnownList().getKnownCharactersInRadius(getSkill().getAffectRange()))
 		{
@@ -62,20 +55,16 @@ public class SignetNoise extends L2Effect
 			
 			if (caster.canAttackCharacter(target))
 			{
-				List<L2Effect> effects = target.getAllEffects();
-				if (effects != null)
+				for (L2Effect effect : target.getAllEffects())
 				{
-					for (L2Effect effect : effects)
+					if (effect.getSkill().isDance())
 					{
-						if (effect.getSkill().isDance())
-						{
-							effect.exit();
-						}
+						effect.exit();
 					}
 				}
 			}
 		}
-		return true;
+		return false;
 	}
 	
 	@Override

+ 1 - 4
L2J_DataPack_BETA/dist/game/data/scripts/handlers/skillhandlers/Disablers.java

@@ -18,8 +18,6 @@
  */
 package handlers.skillhandlers;
 
-import java.util.List;
-
 import com.l2jserver.gameserver.ai.CtrlEvent;
 import com.l2jserver.gameserver.ai.CtrlIntention;
 import com.l2jserver.gameserver.ai.L2AttackableAI;
@@ -86,8 +84,7 @@ public class Disablers implements ISkillHandler
 					{
 						if (Formulas.calcSkillSuccess(activeChar, target, skill, shld, ss, sps, bss))
 						{
-							List<L2Effect> effects = target.getAllEffects();
-							for (L2Effect e : effects)
+							for (L2Effect e : target.getAllEffects())
 							{
 								if (e.getSkill().getSkillType() == type)
 								{