From 6948a45c850bd3b86c37a872a8b16bc0ca03a54b Mon Sep 17 00:00:00 2001
From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com>
Date: Tue, 25 Jun 2019 01:07:48 +0000
Subject: [PATCH] Changed the way NPC buffers cast buffs.
---
.../model/actor/instance/NpcInstance.java | 28 +++++++++----------
1 file changed, 13 insertions(+), 15 deletions(-)
diff --git a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/NpcInstance.java b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/NpcInstance.java
index c9cb6d2b41..50dc4a3d2a 100644
--- a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/NpcInstance.java
+++ b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/NpcInstance.java
@@ -77,6 +77,7 @@ import org.l2jmobius.gameserver.network.serverpackets.CreatureSay;
import org.l2jmobius.gameserver.network.serverpackets.ExShowVariationCancelWindow;
import org.l2jmobius.gameserver.network.serverpackets.ExShowVariationMakeWindow;
import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate;
+import org.l2jmobius.gameserver.network.serverpackets.MagicSkillUse;
import org.l2jmobius.gameserver.network.serverpackets.MyTargetSelected;
import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
import org.l2jmobius.gameserver.network.serverpackets.NpcInfo;
@@ -1666,18 +1667,17 @@ public class NpcInstance extends Creature
return;
}
- final int player_level = player.getLevel();
- // Select the player
- setTarget(player);
+ final int playerLevel = player.getLevel();
// If the player is too high level, display a message and return
- if ((player_level > 39) || (player.getClassId().level() >= 2))
+ if ((playerLevel > 39) || (player.getClassId().level() >= 2))
{
String content = "
Newbie Guide:
I'm sorry, but you are not eligible to receive the protection blessing.It can only be bestowed on characters below level 39 who have not made a seccond transfer.";
insertObjectIdAndShowChatWindow(player, content);
return;
}
Skill skill = SkillTable.getInstance().getInfo(5182, 1);
- doCast(skill);
+ broadcastPacket(new MagicSkillUse(this, player, skill.getId(), skill.getLevel(), 0, 0));
+ skill.getEffects(this, player);
}
/**
@@ -2282,8 +2282,8 @@ public class NpcInstance extends Creature
final Skill skill = SkillTable.getInstance().getInfo(4380, 1);
if (skill != null)
{
- setTarget(player);
- doCast(skill);
+ broadcastPacket(new MagicSkillUse(this, player, skill.getId(), skill.getLevel(), 0, 0));
+ skill.getEffects(this, player);
}
player.setCurrentCp(player.getMaxCp());
@@ -2319,13 +2319,10 @@ public class NpcInstance extends Creature
return;
}
- final int player_level = player.getLevel();
+ final int playerLevel = player.getLevel();
int lowestLevel = 0;
int higestLevel = 0;
- // Select the player
- setTarget(player);
-
// Calculate the min and max level between wich the player must be to obtain buff
if (player.isMageClass())
{
@@ -2339,7 +2336,7 @@ public class NpcInstance extends Creature
}
// If the player is too high level, display a message and return
- if ((player_level > higestLevel) || !player.isNewbie())
+ if ((playerLevel > higestLevel) || !player.isNewbie())
{
final String content = "Newbie Guide:
Only a novice character of level " + higestLevel + " or less can receive my support magic.
Your novice character is the first one that you created and raised in this world.";
insertObjectIdAndShowChatWindow(player, content);
@@ -2347,7 +2344,7 @@ public class NpcInstance extends Creature
}
// If the player is too low level, display a message and return
- if (player_level < lowestLevel)
+ if (playerLevel < lowestLevel)
{
final String content = "Come back here when you have reached level " + lowestLevel + ". I will give you support magic then.";
insertObjectIdAndShowChatWindow(player, content);
@@ -2360,7 +2357,7 @@ public class NpcInstance extends Creature
{
if (helperBuffItem.isMagicClassBuff() == player.isMageClass())
{
- if ((player_level >= helperBuffItem.getLowerLevel()) && (player_level <= helperBuffItem.getUpperLevel()))
+ if ((playerLevel >= helperBuffItem.getLowerLevel()) && (playerLevel <= helperBuffItem.getUpperLevel()))
{
skill = SkillTable.getInstance().getInfo(helperBuffItem.getSkillID(), helperBuffItem.getSkillLevel());
@@ -2370,7 +2367,8 @@ public class NpcInstance extends Creature
}
else
{
- doCast(skill);
+ broadcastPacket(new MagicSkillUse(this, player, skill.getId(), skill.getLevel(), 0, 0));
+ skill.getEffects(this, player);
}
}
}