package com.aionemu.gameserver.model.animations; /** * These IDs are for use with {@link com.aionemu.gameserver.network.aion.serverpackets.SM_TELEPORT_LOC SM_TELEPORT_LOC}. * * @author xTz, Neon */ public enum TeleportAnimation { /* * 4.7.5: * 0 - 00000 - fade out * 1 - 00001 - fade out with beam * 2 - 00010 - fade out * 3 - 00011 - jump in silhouette * 4 - 00100 - jump in silhouette (animates statues) * 5 - 00101 - fade out with beam * 6 - 00110 - fade out with beam * 7 - 00111 - fade out * 8 - 01000 - jump in */ NONE(0), FADE_OUT_BEAM(1), FADE_OUT(2), JUMP_IN(3), JUMP_IN_STATUE(4), JUMP_IN_GATE(8), /* for custom battlegrounds/pvp-maps only */ BATTLEGROUND(0); private final byte animationId; TeleportAnimation(int animationId) { this.animationId = (byte) animationId; } public byte getId() { return animationId; } public ArrivalAnimation getDefaultArrivalAnimation() { switch (this) { case FADE_OUT_BEAM: return ArrivalAnimation.FADE_IN_BEAM; case JUMP_IN_STATUE: return ArrivalAnimation.JUMP_OUT_CAMERA_FRONT; case JUMP_IN: case JUMP_IN_GATE: return ArrivalAnimation.JUMP_OUT_CAMERA_BEHIND; case BATTLEGROUND: return ArrivalAnimation.LANDING_GLOW; default: return ArrivalAnimation.LANDING; } } public ObjectDeleteAnimation getDefaultObjectDeleteAnimation() { switch (this) { case FADE_OUT_BEAM: return ObjectDeleteAnimation.FADE_OUT_BEAM; case JUMP_IN: case JUMP_IN_GATE: case JUMP_IN_STATUE: return ObjectDeleteAnimation.JUMP_IN; default: return ObjectDeleteAnimation.FADE_OUT; } } }