25 lines
651 B
Java
25 lines
651 B
Java
package database.monsterbook;
|
|
|
|
import constants.id.ItemId;
|
|
|
|
public record MonsterCard(int cardId, byte level) {
|
|
private static final int MAX_LEVEL = 5;
|
|
|
|
public MonsterCard {
|
|
if (!ItemId.isMonsterCard(cardId)) {
|
|
throw new IllegalArgumentException("Invalid monster card id: %d".formatted(cardId));
|
|
}
|
|
if (level < 0 || level > MAX_LEVEL) {
|
|
throw new IllegalArgumentException("Invalid monster card level: %d".formatted(level));
|
|
}
|
|
}
|
|
|
|
public boolean isSpecial() {
|
|
return cardId / 1000 == 2388;
|
|
}
|
|
|
|
public boolean isMaxLevel() {
|
|
return level == MAX_LEVEL;
|
|
}
|
|
}
|