Есть анимации привязанные к месту с номером, по типу барьера в новое гнездо антараса, или тумана на локации. Не могу обнаружить где они записаны в клиенте ид, координаты и сам эффект.
Вот этот как раз LEC_Show - отображается при получении клиентом пакета EventTrigger.
Вот эти 2 - LEC_CastleGoodEffectShow, LEC_CastleEvilEffectShow, работают только при отправке пакета ExCastleState
Ну тебе же никто не мешает самому со стороны сервера вешать/снимать такие авешки на игроков при заходе/входе в определенные зоны через листенер, если такое тебе внезапно потребовалось
Вот я тут уже пример такого выкладывал когда-то:
Java:
package listeners.zones;
import java.util.List;
import l2p.commons.util.Rnd;
import l2p.gameserver.enums.skills.AbnormalVisualEffect;
import l2p.gameserver.enums.zones.ZoneType;
import l2p.gameserver.listener.zone.OnZoneEnterLeaveListener;
import l2p.gameserver.model.Creature;
import l2p.gameserver.model.Zone;
import l2p.gameserver.scripts.ScriptFile;
import l2p.gameserver.utils.ReflectionUtils;
/**
* При входе в зону воды вешает на игрока случайный абнормал, меняющий внешний вид одетой брони на купальник, а при выходе из зоны убирает его обратно.
*
* @author Gaikotsu
*/
public class WaterZone implements ScriptFile
{
private static final List<AbnormalVisualEffect> _ave = List.of(AbnormalVisualEffect.SWEET_ICE_FLAKES, AbnormalVisualEffect.FANTASY_ICE_FLAKES, AbnormalVisualEffect.RUNWAY_ARMOR6);
private static final ZoneListener _zoneListener = new ZoneListener();
@Override
public void onLoad()
{
ReflectionUtils.getZonesByType(ZoneType.water).forEach(zone -> zone.addListener(_zoneListener));
}
private static class ZoneListener implements OnZoneEnterLeaveListener
{
@Override
public void onEnter(Zone zone, Creature cha)
{
if (cha.isPlayer())
cha.startAbnormalEffect(_ave.get(Rnd.get(_ave.size())));
}
@Override
public void onLeave(Zone zone, Creature cha)
{
if (cha.isPlayer())
_ave.forEach(ave -> cha.stopAbnormalEffect(ave));
}
}
}
Ну тебе же никто не мешает самому со стороны сервера вешать/снимать такие авешки на игроков при заходе/входе в определенные зоны через листенер, если такое тебе внезапно потребовалось
Вот я тут уже пример такого выкладывал когда-то:
Java:
package listeners.zones;
import java.util.List;
import l2p.commons.util.Rnd;
import l2p.gameserver.enums.skills.AbnormalVisualEffect;
import l2p.gameserver.enums.zones.ZoneType;
import l2p.gameserver.listener.zone.OnZoneEnterLeaveListener;
import l2p.gameserver.model.Creature;
import l2p.gameserver.model.Zone;
import l2p.gameserver.scripts.ScriptFile;
import l2p.gameserver.utils.ReflectionUtils;
/**
* При входе в зону воды вешает на игрока случайный абнормал, меняющий внешний вид одетой брони на купальник, а при выходе из зоны убирает его обратно.
*
* @author Gaikotsu
*/
public class WaterZone implements ScriptFile
{
private static final List<AbnormalVisualEffect> _ave = List.of(AbnormalVisualEffect.SWEET_ICE_FLAKES, AbnormalVisualEffect.FANTASY_ICE_FLAKES, AbnormalVisualEffect.RUNWAY_ARMOR6);
private static final ZoneListener _zoneListener = new ZoneListener();
@Override
public void onLoad()
{
ReflectionUtils.getZonesByType(ZoneType.water).forEach(zone -> zone.addListener(_zoneListener));
}
private static class ZoneListener implements OnZoneEnterLeaveListener
{
@Override
public void onEnter(Zone zone, Creature cha)
{
if (cha.isPlayer())
cha.startAbnormalEffect(_ave.get(Rnd.get(_ave.size())));
}
@Override
public void onLeave(Zone zone, Creature cha)
{
if (cha.isPlayer())
_ave.forEach(ave -> cha.stopAbnormalEffect(ave));
}
}
}