Addition of OpNotAffectedBySkill skill condition handler.
This commit is contained in:
		| @@ -98,6 +98,7 @@ public class SkillConditionMasterHandler | ||||
| 		SkillConditionHandler.getInstance().registerHandler("OpMainjob", OpMainjobSkillCondition::new); | ||||
| 		SkillConditionHandler.getInstance().registerHandler("OpNeedAgathion", OpNeedAgathionSkillCondition::new); | ||||
| 		SkillConditionHandler.getInstance().registerHandler("OpNeedSummonOrPet", OpNeedSummonOrPetSkillCondition::new); | ||||
| 		SkillConditionHandler.getInstance().registerHandler("OpNotAffectedBySkill", OpNotAffectedBySkillSkillCondition::new); | ||||
| 		SkillConditionHandler.getInstance().registerHandler("OpNotCursed", OpNotCursedSkillCondition::new); | ||||
| 		SkillConditionHandler.getInstance().registerHandler("OpNotInCeremonyOfChaos", OpNotInCeremonyOfChaosSkillCondition::new); | ||||
| 		SkillConditionHandler.getInstance().registerHandler("OpNotInPeacezone", OpNotInPeacezoneSkillCondition::new); | ||||
|   | ||||
| @@ -0,0 +1,50 @@ | ||||
| /* | ||||
|  * This file is part of the L2J Mobius project. | ||||
|  * | ||||
|  * This program is free software: you can redistribute it and/or modify | ||||
|  * it under the terms of the GNU General Public License as published by | ||||
|  * the Free Software Foundation, either version 3 of the License, or | ||||
|  * (at your option) any later version. | ||||
|  * | ||||
|  * This program is distributed in the hope that it will be useful, | ||||
|  * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
|  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||||
|  * General Public License for more details. | ||||
|  * | ||||
|  * You should have received a copy of the GNU General Public License | ||||
|  * along with this program. If not, see <http://www.gnu.org/licenses/>. | ||||
|  */ | ||||
| package handlers.skillconditionhandlers; | ||||
|  | ||||
| import org.l2jmobius.gameserver.model.StatSet; | ||||
| import org.l2jmobius.gameserver.model.WorldObject; | ||||
| import org.l2jmobius.gameserver.model.actor.Creature; | ||||
| import org.l2jmobius.gameserver.model.skills.BuffInfo; | ||||
| import org.l2jmobius.gameserver.model.skills.ISkillCondition; | ||||
| import org.l2jmobius.gameserver.model.skills.Skill; | ||||
|  | ||||
| /** | ||||
|  * @author Mobius | ||||
|  */ | ||||
| public class OpNotAffectedBySkillSkillCondition implements ISkillCondition | ||||
| { | ||||
| 	private final int _skillId; | ||||
| 	private final int _skillLevel; | ||||
| 	 | ||||
| 	public OpNotAffectedBySkillSkillCondition(StatSet params) | ||||
| 	{ | ||||
| 		_skillId = params.getInt("skillId", -1); | ||||
| 		_skillLevel = params.getInt("skillLevel", -1); | ||||
| 	} | ||||
| 	 | ||||
| 	@Override | ||||
| 	public boolean canUse(Creature caster, Skill skill, WorldObject target) | ||||
| 	{ | ||||
| 		final BuffInfo buffInfo = caster.getEffectList().getBuffInfoBySkillId(_skillId); | ||||
| 		if (_skillLevel > 0) | ||||
| 		{ | ||||
| 			return (buffInfo == null) || (buffInfo.getSkill().getLevel() < _skillLevel); | ||||
| 		} | ||||
| 		return buffInfo == null; | ||||
| 	} | ||||
| } | ||||
		Reference in New Issue
	
	Block a user
	 MobiusDevelopment
					MobiusDevelopment