Use triggerCast instead of applyEffect when NPC is buffing player.

This commit is contained in:
MobiusDev 2016-12-20 20:48:38 +00:00
parent 3b16d9b270
commit 2178de8b65
4 changed files with 13 additions and 12 deletions

View File

@ -20,6 +20,7 @@ import com.l2jmobius.gameserver.model.actor.L2Npc;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.holders.SkillHolder;
import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.skills.SkillCaster;
import ai.AbstractNpcAI;
@ -121,13 +122,13 @@ public final class AdventurersGuide extends AbstractNpcAI
for (SkillHolder holder : GROUP_BUFFS)
{
holder.getSkill().applyEffects(npc, player);
SkillCaster.triggerCast(npc, player, holder.getSkill());
}
skill.applyEffects(npc, player);
SkillCaster.triggerCast(npc, player, skill);
if ((player.getLevel() < 40) && (player.getClassId().level() <= 1))
{
BLESS_PROTECTION.getSkill().applyEffects(npc, player);
SkillCaster.triggerCast(npc, player, BLESS_PROTECTION.getSkill());
}
return null;
}

View File

@ -21,6 +21,7 @@ import com.l2jmobius.gameserver.model.L2Clan;
import com.l2jmobius.gameserver.model.actor.L2Npc;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.holders.SkillHolder;
import com.l2jmobius.gameserver.model.skills.SkillCaster;
import com.l2jmobius.gameserver.network.NpcStringId;
import com.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
import com.l2jmobius.gameserver.network.serverpackets.NpcSay;
@ -90,7 +91,7 @@ public final class Proclaimer extends AbstractNpcAI
{
if (!player.isOnDarkSide())
{
XP_BUFF.getSkill().applyEffects(npc, player);
SkillCaster.triggerCast(npc, player, XP_BUFF.getSkill());
}
else
{

View File

@ -22,7 +22,7 @@ import com.l2jmobius.gameserver.model.holders.SkillHolder;
import com.l2jmobius.gameserver.model.quest.LongTimeEvent;
import com.l2jmobius.gameserver.model.skills.BuffInfo;
import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.network.serverpackets.MagicSkillUse;
import com.l2jmobius.gameserver.model.skills.SkillCaster;
import com.l2jmobius.gameserver.util.Util;
/**
@ -97,8 +97,7 @@ public final class HuntForSanta extends LongTimeEvent
private String applyBuff(L2Npc npc, L2PcInstance player, Skill skill)
{
removeBuffs(player);
npc.broadcastPacket(new MagicSkillUse(npc, player, skill.getId(), 1, 0, 0));
skill.applyEffects(npc, player);
SkillCaster.triggerCast(npc, player, skill);
return "34008-2.htm";
}
@ -111,10 +110,9 @@ public final class HuntForSanta extends LongTimeEvent
if (Util.calculateDistance(npc, member, false, false) < 500)
{
removeBuffs(member);
npc.broadcastPacket(new MagicSkillUse(npc, member, BUFF_STOCKING.getSkillId(), 1, 0, 0));
BUFF_STOCKING.getSkill().applyEffects(npc, member);
BUFF_TREE.getSkill().applyEffects(npc, member);
BUFF_SNOWMAN.getSkill().applyEffects(npc, member);
SkillCaster.triggerCast(npc, member, BUFF_STOCKING.getSkill());
SkillCaster.triggerCast(npc, member, BUFF_TREE.getSkill());
SkillCaster.triggerCast(npc, member, BUFF_SNOWMAN.getSkill());
}
}
return "34008-2.htm";

View File

@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.model.instancezone.Instance;
import com.l2jmobius.gameserver.model.quest.Quest;
import com.l2jmobius.gameserver.model.quest.QuestState;
import com.l2jmobius.gameserver.model.quest.State;
import com.l2jmobius.gameserver.model.skills.SkillCaster;
/**
* @author Mathael
@ -215,7 +216,7 @@ public class Q00144_PailakaInjuredDragon extends Quest
if (BUFF_COUNT < 5)
{
final int key = Integer.parseInt(event.substring(request.length() + 1)) - 1;
BUFFS[key].getSkill().applyEffects(npc, player);
SkillCaster.triggerCast(npc, player, BUFFS[key].getSkill());
BUFF_COUNT++;
if (BUFF_COUNT < 5)
{