package client.status;
import clientside.MapleDisease;
import constants.GameConstants;
import handling.Buffstat;
import java.io.Serializable;
public enum MonsterStatus
implements Serializable, Buffstat {
WATK(1, 1),
WDEF(2, 1),
MATK(4, 1),
MDEF(8, 1),
ACC(16, 1),
AVOID(32, 1),
SPEED(64, 1),
STUN(128, 1),
FREEZE(256, 1),
POISON(512, 1),
SEAL(1024, 1),
SHOWDOWN(2048, 1),
WEAPON_ATTACK_UP(4096, 1),
WEAPON_DEFENSE_UP(8192, 1),
MAGIC_ATTACK_UP(16384, 1),
MAGIC_DEFENSE_UP(32768, 1),
DOOM(65536, 1),
SHADOW_WEB(131072, 1),
WEAPON_IMMUNITY(262144, 1),
MAGIC_IMMUNITY(524288, 1),
DAMAGE_IMMUNITY(2097152, 1),
NINJA_AMBUSH(4194304, 1),
BURN(16777216, 1),
DARKNESS(33554432, 1),
HYPNOTIZE(268435456, 1),
WEAPON_DAMAGE_REFLECT(536870912, 1),
MAGIC_DAMAGE_REFLECT(1073741824, 1),
NEUTRALISE(2, 2),
IMPRINT(4, 2),
MONSTER_BOMB(8, 2),
MAGIC_CRASH(16, 2),
EMPTY(134217728, 1, true),
SUMMON(-2147483648, 1, true),
EMPTY_1(32, 2, true),
EMPTY_2(64, 2, true),
EMPTY_3(128, 2, true),
EMPTY_4(256, 2, GameConstants.GMS),
EMPTY_5(512, 2, GameConstants.GMS),
EMPTY_6(4096, 2, GameConstants.GMS),
EMPTY_7(524288, 2, true);
static final long serialVersionUID = 0L;
private final int i;
private final int first;
private final boolean end;
private MonsterStatus(int i, int first) {
this.i = i;
this.first = first;
this.end = false;
}
private MonsterStatus(int i, int first, boolean end) {
this.i = i;
this.first = first;
this.end = end;
}
public int getPosition() {
return this.first;
}
public boolean isEmpty() {
return this.end;
}
public int getValue() {
return this.i;
}
public static final MapleDisease getLinkedDisease(final MonsterStatus skill) {
switch (skill) {
case STUN:
case SHADOW_WEB:
return MapleDisease.STUN;
case POISON:
case BURN:
return MapleDisease.POISON;
case SEAL:
case MAGIC_CRASH:
return MapleDisease.SEAL;
case FREEZE:
return MapleDisease.FREEZE;
case DARKNESS:
return MapleDisease.DARKNESS;
case SPEED:
return MapleDisease.SLOW;
}
return null;
}
}