DisableSkill effect additions and cleanup.
This commit is contained in:
		| @@ -31,36 +31,35 @@ import org.l2jmobius.gameserver.model.skill.Skill; | ||||
|  */ | ||||
| public class DisableSkill extends AbstractEffect | ||||
| { | ||||
| 	private final Set<Integer> disableSkills; | ||||
| 	private Skill knownSKill; | ||||
| 	private final Set<Integer> _disabledSkills; | ||||
| 	 | ||||
| 	public DisableSkill(StatSet params) | ||||
| 	{ | ||||
| 		final String disable = params.getString("disable"); | ||||
| 		if ((disable != null) && !disable.isEmpty()) | ||||
| 		{ | ||||
| 			disableSkills = new HashSet<>(); | ||||
| 			_disabledSkills = new HashSet<>(); | ||||
| 			for (String slot : disable.split(";")) | ||||
| 			{ | ||||
| 				disableSkills.add(Integer.parseInt(slot)); | ||||
| 				_disabledSkills.add(Integer.parseInt(slot)); | ||||
| 			} | ||||
| 		} | ||||
| 		else | ||||
| 		{ | ||||
| 			disableSkills = Collections.<Integer> emptySet(); | ||||
| 			_disabledSkills = Collections.emptySet(); | ||||
| 		} | ||||
| 	} | ||||
| 	 | ||||
| 	@Override | ||||
| 	public void onStart(Creature effector, Creature effected, Skill skill, Item item) | ||||
| 	{ | ||||
| 		for (int disableSkillId : disableSkills) | ||||
| 		Skill knownSkill; | ||||
| 		for (int disableSkillId : _disabledSkills) | ||||
| 		{ | ||||
| 			knownSKill = effected.getKnownSkill(disableSkillId); | ||||
| 			if (knownSKill != null) | ||||
| 			knownSkill = effected.getKnownSkill(disableSkillId); | ||||
| 			if (knownSkill != null) | ||||
| 			{ | ||||
| 				effected.disableSkill(knownSKill, 0); | ||||
| 				 | ||||
| 				effected.disableSkill(knownSkill, 0); | ||||
| 			} | ||||
| 		} | ||||
| 	} | ||||
| @@ -68,12 +67,13 @@ public class DisableSkill extends AbstractEffect | ||||
| 	@Override | ||||
| 	public void onExit(Creature effector, Creature effected, Skill skill) | ||||
| 	{ | ||||
| 		for (int enableSkillId : disableSkills) | ||||
| 		Skill knownSkill; | ||||
| 		for (int enableSkillId : _disabledSkills) | ||||
| 		{ | ||||
| 			knownSKill = effected.getKnownSkill(enableSkillId); | ||||
| 			if (knownSKill != null) | ||||
| 			knownSkill = effected.getKnownSkill(enableSkillId); | ||||
| 			if (knownSkill != null) | ||||
| 			{ | ||||
| 				effected.enableSkill(knownSKill); | ||||
| 				effected.enableSkill(knownSkill); | ||||
| 			} | ||||
| 		} | ||||
| 	} | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 MobiusDevelopment
					MobiusDevelopment