Not really...
Xmass instance (besides odd name) does some holiday buff from the tree (I mean holiday buffs, not that recovery blessing) which is not suppose to be done there. Holiday buffs are suppose to be casted by Santa Trainee located in starting villages in 'Tis The Season event. At least the event description says like that (I've found some copy here:
http://l2mordor.eu/legacy/archive/2006/12/tis_the_season_1.html). I see no point of keeping XmassInstance at all...
Maybe thats why we have two Santa Trainees - 31864 and 31863. One in starting villages giving buffs and 2nd around the world (not giving buffs, just event manager). Just not sure which one suppose to be where, but I think it doesnt really matter cuz they both looks the same and (probably) suppose to have same dialogues.
Btw the code itself... the tree description says it should not give recovery buff while summoned in peace area.
I tried to achieve it by this:
_aiTask = isInsideZone(ZoneId.PEACE) ? null : ThreadPool.scheduleAtFixedRate(new ChirstmasTreeAI(this), 3000, 3000);
but for some reason isInsideZone(ZoneId.PEACE) returns always false if used in that place...
I made it that way - inside the ChirstmasTreeAI.run method:
@Override
public void run()
{
if (_caster.isInsideZone(ZoneId.PEACE))
{
return;
}
It works, but... but imho the AI should not be even started. I dont like it ;/
I also found that org.l2jmobius.gameserver.handler.itemhandlers.ChristmasTree is also not used because tree npc is spawned by org.l2jmobius.gameserver.handler.itemhandlers.SummonItems. So itemhandlers.ChristmasTree should be kicked too.
What do you think?