Răsfoiți Sursa

Retail like Mana Burn effect messages

Reported by: sahar
Patch by: sahar
Reviewed by: @Zoey76
Zoey76 10 ani în urmă
părinte
comite
d0322ea279

+ 23 - 6
L2J_DataPack/dist/game/data/scripts/handlers/effecthandlers/MagicalAttackMp.java

@@ -43,9 +43,17 @@ public final class MagicalAttackMp extends AbstractEffect
 	@Override
 	public boolean calcSuccess(BuffInfo info)
 	{
-		if (info.getEffected().isInvul() || !Formulas.calcMagicAffected(info.getEffector(), info.getEffected(), info.getSkill()))
+		if (info.getEffected().isInvul())
 		{
-			info.getEffector().sendPacket(SystemMessageId.MISSED_TARGET);
+			return false;
+		}
+		
+		if (!Formulas.calcMagicAffected(info.getEffector(), info.getEffected(), info.getSkill()))
+		{
+			final SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.C1_RESISTED_YOUR_S2);
+			sm.addCharName(info.getEffected());
+			sm.addSkillName(info.getSkill());
+			info.getEffector().sendPacket(sm);
 			return false;
 		}
 		return true;
@@ -89,10 +97,19 @@ public final class MagicalAttackMp extends AbstractEffect
 		
 		if (target.isPlayer())
 		{
-			SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.S2_MP_HAS_BEEN_DRAINED_BY_C1);
-			sm.addCharName(activeChar);
-			sm.addInt((int) mp);
-			target.sendPacket(sm);
+			if (Math.abs(damage - 1.0) < 1e-6)
+			{
+				final SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.SLIGHTLY_RESISTED_C1_MAGICC);
+				sm.addCharName(activeChar);
+				target.sendPacket(sm);
+			}
+			else
+			{
+				final SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.S2_MP_HAS_BEEN_DRAINED_BY_C1);
+				sm.addCharName(activeChar);
+				sm.addInt((int) mp);
+				target.sendPacket(sm);
+			}
 		}
 		
 		if (activeChar.isPlayer())