浏览代码

BETA: Switching weapon critical/hit skill triggering to activate skill through the skill handler instead of just starting it's effects.

Reviewed by: !UnAfraid
Nos 11 年之前
父节点
当前提交
22cfa430eb
共有 1 个文件被更改,包括 10 次插入8 次删除
  1. 10 8
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/items/L2Weapon.java

+ 10 - 8
L2J_Server_BETA/java/com/l2jserver/gameserver/model/items/L2Weapon.java

@@ -349,18 +349,20 @@ public final class L2Weapon extends L2Item
 			return;
 		}
 		
-		final byte shld = Formulas.calcShldUse(caster, target, onCritSkill);
-		if (!Formulas.calcSkillSuccess(caster, target, onCritSkill, shld, false, false, false))
+		L2Character[] targets =
 		{
-			// These skills should not work on RaidBoss
-			return;
+			target
+		};
+		
+		final ISkillHandler handler = SkillHandler.getInstance().getHandler(onCritSkill.getSkillType());
+		if (handler != null)
+		{
+			handler.useSkill(caster, onCritSkill, targets);
 		}
-		if (target.isAffectedBySkill(onCritSkill.getId()))
+		else
 		{
-			target.stopSkillEffects(false, onCritSkill.getId());
+			onCritSkill.useSkill(caster, targets);
 		}
-		
-		onCritSkill.applyEffects(caster, target);
 	}
 	
 	/**