Addition of EffectZone removeEffectsOnExit parameter.
Thanks to CostyKiller and nasseka.
This commit is contained in:
@@ -44,6 +44,7 @@ public class EffectZone extends ZoneType
|
||||
private int _reuse;
|
||||
boolean _enabled;
|
||||
private boolean _isShowDangerIcon;
|
||||
private boolean _removeEffectsOnExit;
|
||||
protected Map<Integer, Integer> _skills;
|
||||
protected volatile Future<?> _task;
|
||||
|
||||
@@ -55,6 +56,7 @@ public class EffectZone extends ZoneType
|
||||
_reuse = 30000;
|
||||
_enabled = true;
|
||||
_isShowDangerIcon = true;
|
||||
_removeEffectsOnExit = false;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -115,6 +117,11 @@ public class EffectZone extends ZoneType
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "removeEffectsOnExit":
|
||||
{
|
||||
_removeEffectsOnExit = Boolean.parseBoolean(value);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
{
|
||||
super.setParameter(name, value);
|
||||
@@ -160,6 +167,18 @@ public class EffectZone extends ZoneType
|
||||
}
|
||||
}
|
||||
|
||||
if (_removeEffectsOnExit && (_skills != null))
|
||||
{
|
||||
for (Entry<Integer, Integer> e : _skills.entrySet())
|
||||
{
|
||||
final Skill skill = SkillTable.getInstance().getSkill(e.getKey().intValue(), e.getValue().intValue());
|
||||
if (skill != null)
|
||||
{
|
||||
creature.stopSkillEffects(skill.getId());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (getCharactersInside().isEmpty() && (_task != null))
|
||||
{
|
||||
_task.cancel(true);
|
||||
|
Reference in New Issue
Block a user