Use configurations for attackables calcMagicSuccess method.
This commit is contained in:
		| @@ -18,8 +18,6 @@ package handlers.effecthandlers; | ||||
|  | ||||
| import java.util.Collection; | ||||
|  | ||||
| import com.l2jmobius.Config; | ||||
| import com.l2jmobius.commons.util.Rnd; | ||||
| import com.l2jmobius.gameserver.ai.CtrlEvent; | ||||
| import com.l2jmobius.gameserver.model.Party; | ||||
| import com.l2jmobius.gameserver.model.StatsSet; | ||||
| @@ -30,6 +28,7 @@ import com.l2jmobius.gameserver.model.effects.AbstractEffect; | ||||
| import com.l2jmobius.gameserver.model.holders.ItemHolder; | ||||
| import com.l2jmobius.gameserver.model.items.instance.ItemInstance; | ||||
| import com.l2jmobius.gameserver.model.skills.Skill; | ||||
| import com.l2jmobius.gameserver.model.stats.Formulas; | ||||
| import com.l2jmobius.gameserver.network.SystemMessageId; | ||||
|  | ||||
| /** | ||||
| @@ -44,22 +43,7 @@ public final class Plunder extends AbstractEffect | ||||
| 	@Override | ||||
| 	public boolean calcSuccess(Creature effector, Creature effected, Skill skill) | ||||
| 	{ | ||||
| 		final int lvlDifference = (effected.getLevel() - (skill.getMagicLevel() > 0 ? skill.getMagicLevel() : effector.getLevel())); | ||||
| 		final double lvlModifier = Math.pow(1.3, lvlDifference); | ||||
| 		float targetModifier = 1; | ||||
| 		if (effected.isAttackable() && !effected.isRaid() && !effected.isRaidMinion() && (effected.getLevel() >= Config.MIN_NPC_LVL_MAGIC_PENALTY) && (effector.getActingPlayer() != null) && ((effected.getLevel() - effector.getActingPlayer().getLevel()) >= 3)) | ||||
| 		{ | ||||
| 			final int lvlDiff = effected.getLevel() - effector.getActingPlayer().getLevel() - 2; | ||||
| 			if (lvlDiff >= Config.NPC_SKILL_CHANCE_PENALTY.size()) | ||||
| 			{ | ||||
| 				targetModifier = Config.NPC_SKILL_CHANCE_PENALTY.get(Config.NPC_SKILL_CHANCE_PENALTY.size() - 1); | ||||
| 			} | ||||
| 			else | ||||
| 			{ | ||||
| 				targetModifier = Config.NPC_SKILL_CHANCE_PENALTY.get(lvlDiff); | ||||
| 			} | ||||
| 		} | ||||
| 		return Rnd.get(100) < (100 - Math.round((float) (lvlModifier * targetModifier))); | ||||
| 		return Formulas.calcMagicSuccess(effector, effected, skill); | ||||
| 	} | ||||
| 	 | ||||
| 	@Override | ||||
|   | ||||
| @@ -16,8 +16,6 @@ | ||||
|  */ | ||||
| package handlers.effecthandlers; | ||||
|  | ||||
| import com.l2jmobius.Config; | ||||
| import com.l2jmobius.commons.util.Rnd; | ||||
| import com.l2jmobius.gameserver.ai.CtrlEvent; | ||||
| import com.l2jmobius.gameserver.model.StatsSet; | ||||
| import com.l2jmobius.gameserver.model.actor.Creature; | ||||
| @@ -25,6 +23,7 @@ import com.l2jmobius.gameserver.model.actor.instance.MonsterInstance; | ||||
| import com.l2jmobius.gameserver.model.effects.AbstractEffect; | ||||
| import com.l2jmobius.gameserver.model.items.instance.ItemInstance; | ||||
| import com.l2jmobius.gameserver.model.skills.Skill; | ||||
| import com.l2jmobius.gameserver.model.stats.Formulas; | ||||
| import com.l2jmobius.gameserver.network.SystemMessageId; | ||||
|  | ||||
| /** | ||||
| @@ -40,22 +39,7 @@ public final class Spoil extends AbstractEffect | ||||
| 	@Override | ||||
| 	public boolean calcSuccess(Creature effector, Creature effected, Skill skill) | ||||
| 	{ | ||||
| 		final int lvlDifference = (effected.getLevel() - (skill.getMagicLevel() > 0 ? skill.getMagicLevel() : effector.getLevel())); | ||||
| 		final double lvlModifier = Math.pow(1.3, lvlDifference); | ||||
| 		float targetModifier = 1; | ||||
| 		if (effected.isAttackable() && !effected.isRaid() && !effected.isRaidMinion() && (effected.getLevel() >= Config.MIN_NPC_LVL_MAGIC_PENALTY) && (effector.getActingPlayer() != null) && ((effected.getLevel() - effector.getActingPlayer().getLevel()) >= 3)) | ||||
| 		{ | ||||
| 			final int lvlDiff = effected.getLevel() - effector.getActingPlayer().getLevel() - 2; | ||||
| 			if (lvlDiff >= Config.NPC_SKILL_CHANCE_PENALTY.size()) | ||||
| 			{ | ||||
| 				targetModifier = Config.NPC_SKILL_CHANCE_PENALTY.get(Config.NPC_SKILL_CHANCE_PENALTY.size() - 1); | ||||
| 			} | ||||
| 			else | ||||
| 			{ | ||||
| 				targetModifier = Config.NPC_SKILL_CHANCE_PENALTY.get(lvlDiff); | ||||
| 			} | ||||
| 		} | ||||
| 		return Rnd.get(100) < (100 - Math.round((float) (lvlModifier * targetModifier))); | ||||
| 		return Formulas.calcMagicSuccess(effector, effected, skill); | ||||
| 	} | ||||
| 	 | ||||
| 	@Override | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 MobiusDevelopment
					MobiusDevelopment