Updated category data XML file.
Adapted from: L2jUnity free files.
This commit is contained in:
@@ -689,7 +689,7 @@ public final class SkillTreesData implements IGameXmlReader
|
||||
return result;
|
||||
}
|
||||
|
||||
final boolean isAwaken = player.isInCategory(CategoryType.AWAKEN_GROUP) && ((player.getRace() != Race.ERTHEIA) || player.isDualClassActive());
|
||||
final boolean isAwaken = player.isInCategory(CategoryType.SIXTH_CLASS_GROUP) && ((player.getRace() != Race.ERTHEIA) || player.isDualClassActive());
|
||||
|
||||
for (Entry<Long, L2SkillLearn> entry : skills.entrySet())
|
||||
{
|
||||
@@ -803,7 +803,7 @@ public final class SkillTreesData implements IGameXmlReader
|
||||
}
|
||||
|
||||
final Race race = player.getRace();
|
||||
final boolean isAwaken = player.isInCategory(CategoryType.AWAKEN_GROUP);
|
||||
final boolean isAwaken = player.isInCategory(CategoryType.SIXTH_CLASS_GROUP);
|
||||
|
||||
// Race skills
|
||||
if (isAwaken)
|
||||
|
@@ -32,6 +32,17 @@ public enum CategoryType
|
||||
SECOND_CLASS_GROUP,
|
||||
THIRD_CLASS_GROUP,
|
||||
FOURTH_CLASS_GROUP,
|
||||
EQUIP_ENABLE_R,
|
||||
FIFTH_CLASS_GROUP,
|
||||
SIXTH_CLASS_GROUP,
|
||||
SIXTH_SIGEL_GROUP,
|
||||
SIXTH_TIR_GROUP,
|
||||
SIXTH_OTHEL_GROUP,
|
||||
SIXTH_YR_GROUP,
|
||||
SIXTH_FEOH_GROUP,
|
||||
SIXTH_IS_GROUP,
|
||||
SIXTH_WYNN_GROUP,
|
||||
SIXTH_EOLH_GROUP,
|
||||
BOUNTY_HUNTER_GROUP,
|
||||
WARSMITH_GROUP,
|
||||
SUMMON_NPC_GROUP,
|
||||
@@ -142,30 +153,158 @@ public enum CategoryType
|
||||
RECOM_KAMAEL_GROUP,
|
||||
RECOM_ORCF_GROUP,
|
||||
RECOM_ORCM_GROUP,
|
||||
RECOM_ERTHEIAF_GROUP,
|
||||
RECOM_ERTHEIAM_GROUP,
|
||||
DEINONYCHUS_PET_GROUP,
|
||||
BEASTFARM_BEAST,
|
||||
BEASTFARM_INVADER,
|
||||
ICEQUEEN_NPC,
|
||||
AWAKEN_GROUP,
|
||||
SHILENS_FOLLOWERS,
|
||||
SIGEL_CANDIDATE,
|
||||
TYRR_CANDIDATE,
|
||||
OTHELL_CANDIDATE,
|
||||
YUL_CANDIDATE,
|
||||
FEOH_CANDIDATE,
|
||||
ISS_CANDIDATE,
|
||||
WYNN_CANDIDATE,
|
||||
AEORE_CANDIDATE,
|
||||
EVISCERATOR_CANDIDATE,
|
||||
SAYHA_SEER_CANDIDATE,
|
||||
SIGEL_GROUP,
|
||||
TYRR_GROUP,
|
||||
OTHELL_GROUP,
|
||||
YUL_GROUP,
|
||||
FEOH_GROUP,
|
||||
ISS_GROUP,
|
||||
WYNN_GROUP,
|
||||
AEORE_GROUP;
|
||||
FAIRY_PC_SIDE,
|
||||
FAIRY_WISP,
|
||||
FAIRY_GLIMMER,
|
||||
TANKER_CATEGORY,
|
||||
WARRIOR_CATEGORY,
|
||||
ROGUE_CATEGORY,
|
||||
ARCHER_CATEGORY,
|
||||
WIZARD_CATEGORY,
|
||||
SUMMONER_CATEGORY,
|
||||
HEALER_CATEGORY,
|
||||
ENCHANTER_CATEGORY,
|
||||
RUMBLE_MONSTERS,
|
||||
RUMBLE_GUARDIANS,
|
||||
TWO_POINT_MULTI_SUMMON,
|
||||
APM_ZERO_WARRIOR_GROUP,
|
||||
APM_ZERO_MAGE_GROUP,
|
||||
APM_1ST_KNIGHT_GROUP,
|
||||
APM_1ST_WARRIOR_GROUP,
|
||||
APM_1ST_WIZARD_GROUP,
|
||||
APM_1ST_HEALER_GROUP,
|
||||
APM_2ND_KNIGHT_GROUP,
|
||||
APM_2ND_WARRIOR_GROUP,
|
||||
APM_2ND_ROGUE_GROUP,
|
||||
APM_2ND_WIZARD_GROUP,
|
||||
APM_2ND_ARCHER_GROUP,
|
||||
APM_2ND_BUFFER_GROUP,
|
||||
APM_2ND_SUMMONER_GROUP,
|
||||
APM_2ND_ONLY_GROUP,
|
||||
APM_3RD_KNIGHT_GROUP,
|
||||
APM_3RD_WARRIOR_GROUP,
|
||||
APM_3RD_ROGUE_GROUP,
|
||||
APM_3RD_WIZARD_GROUP,
|
||||
APM_3RD_ARCHER_GROUP,
|
||||
APM_3RD_BUFFER_GROUP,
|
||||
APM_3RD_SUMMONER_GROUP,
|
||||
APM_3RD_ONLY_GROUP,
|
||||
SUBCLASS_TANKER,
|
||||
SUBCLASS_WARRIOR,
|
||||
SUBCLASS_ROUGE,
|
||||
SUBCLASS_ARCHER,
|
||||
SUBCLASS_WIZARD,
|
||||
SUBCLASS_SUMMON,
|
||||
SUBCLASS_HEAL,
|
||||
SUBCLASS_ENCHANTER,
|
||||
SUBCLASS_SPEACIAL,
|
||||
SUBCLASS_KAMAEL,
|
||||
EXCEPT_KAMAEL_GROUP,
|
||||
R_HUMANMAGE_GROUP,
|
||||
R_HUMANFIGHTER_GROUP,
|
||||
DIVISION_TANKER,
|
||||
DIVISION_WARRIOR,
|
||||
DIVISION_ROUGE,
|
||||
DIVISION_ARCHER,
|
||||
DIVISION_WIZARD,
|
||||
DIVISION_SUMMON,
|
||||
DIVISION_ENCHANTER,
|
||||
DIVISION_HEAL,
|
||||
HUMAN_FOURTH_CLASS_GROUP,
|
||||
ELF_FOURTH_CLASS_GROUP,
|
||||
DARKELF_FOURTH_CLASS_GROUP,
|
||||
ORC_FOURTH_CLASS_GROUP,
|
||||
DWARF_FOURTH_CLASS_GROUP,
|
||||
FOURTH_LANCE_CLASS_GROUP,
|
||||
FOURTH_BOW_CLASS_GROUP,
|
||||
EQUIP_ENABLE_HEAVY_ATTACK,
|
||||
EQUIP_ENABLE_HEAVY_DEFENSE,
|
||||
EQUIP_ENABLE_LIGHT_HIT,
|
||||
EQUIP_ENABLE_LIGHT_ENCHANT,
|
||||
EQUIP_ENABLE_ROBE_MAGIC,
|
||||
EQUIP_ENABLE_ROBE_RECOVERY,
|
||||
DILLER_GROUP,
|
||||
MAESTRO_GROUP,
|
||||
MAESTRO_GROUP_CRAFT,
|
||||
SUB_GROUP_WARRIOR2,
|
||||
SUB_GROUP_ROGUE2,
|
||||
SUB_GROUP_KNIGHT2,
|
||||
SUB_GROUP_SUMMONER2,
|
||||
SUB_GROUP_WIZARD2,
|
||||
SUB_GROUP_HEALER2,
|
||||
SUB_GROUP_ENCHANTER2,
|
||||
G_CARTIA_PC_GROUP,
|
||||
G_CARTIA_NPC_GROUP,
|
||||
HEAVY_GROUP,
|
||||
LIGHT_GROUP,
|
||||
ROBE_GROUP,
|
||||
M_WARRIOR_GROUP,
|
||||
PHYSICS_CLASS_GROUP,
|
||||
HEATSAND_SUMMON_CLASS_GROUP,
|
||||
MAGIC_CLASS_GROUP,
|
||||
LONG_DISTANCE_CLASS_GROUP,
|
||||
CLOSE_DISTANCE_CLASS_GROUP,
|
||||
HS_WIZARD_CLASS_GROUP,
|
||||
HS_WARRIOR_CLASS_GROUP,
|
||||
SUBCLASS_PALADIN,
|
||||
SUBCLASS_DARKAVENGER,
|
||||
SUBCLASS_TEMPLEKNIGHT,
|
||||
SUBCLASS_SHILLIENKNIGHT,
|
||||
SUBCLASS_GLADIATOR,
|
||||
SUBCLASS_WARLORD,
|
||||
SUBCLASS_DESTROYER,
|
||||
SUBCLASS_TYRAN,
|
||||
SUBCLASS_BERSERKER,
|
||||
SUBCLASS_TREASUREHUNTER,
|
||||
SUBCLASS_PLAINSWALKER,
|
||||
SUBCLASS_ABYSSWALKER,
|
||||
SUBCLASS_BOUNTYHUNTER,
|
||||
SUBCLASS_HAWKEYE,
|
||||
SUBCLASS_SILVERRANGER,
|
||||
SUBCLASS_PHANTOMRANGER,
|
||||
SUBCLASS_ARBALESTER,
|
||||
SUBCLASS_SORCERER,
|
||||
SUBCLASS_NECROMANCER,
|
||||
SUBCLASS_SPELLSINGER,
|
||||
SUBCLASS_SPELLHOWLER,
|
||||
SUBCLASS_SOULBREAKER,
|
||||
SUBCLASS_WARLOCK,
|
||||
SUBCLASS_ELEMENTALSUMMONER,
|
||||
SUBCLASS_PHANTOMSUMMONER,
|
||||
SUBCLASS_BISHOP,
|
||||
SUBCLASS_ELDER,
|
||||
SUBCLASS_SHILLIENELDER,
|
||||
SUBCLASS_PROPHET,
|
||||
SUBCLASS_SWORDSINGER,
|
||||
SUBCLASS_BLADEDANCER,
|
||||
SUBCLASS_WARCRYER,
|
||||
SUBCLASS_INSPECTOR,
|
||||
WINDREFINE_ERTHEIA_GROUP,
|
||||
WINDREFINE_ERTHEIA_GROUP1,
|
||||
WINDREFINE_ERTHEIA_GROUP2,
|
||||
ERTHEIA_ALL_CLASS,
|
||||
ERTHEIA_FIRST_CLASS_GROUP,
|
||||
ERTHEIA_SECOND_CLASS_GROUP,
|
||||
ERTHEIA_THIRD_CLASS_GROUP,
|
||||
ERTHEIA_FOURTH_CLASS_GROUP,
|
||||
ERTHEIA_WIZARD_GROUP,
|
||||
ERTHEIA_FIGHTER_GROUP,
|
||||
ERTHEIA_THIRD_WIZARD_GROUP,
|
||||
ERTHEIA_THIRD_FIGHTER_GROUP,
|
||||
VANGUARD_OF_ADEN_FCC,
|
||||
COMMON_MONSTER_FCC,
|
||||
EQEIP_ENABLE_LHAND,
|
||||
G_EV_MON_MINIGAME,
|
||||
HEAVY_ARMOR_CLASS,
|
||||
LIGHT_ARMOR_CLASS,
|
||||
ROBE_CLASS,
|
||||
EXCEPT_ERTHEIA_CLASS;
|
||||
|
||||
/**
|
||||
* Finds category by it's name
|
||||
|
@@ -288,7 +288,7 @@ public class CeremonyOfChaosManager extends AbstractEventManager<CeremonyOfChaos
|
||||
sm = SystemMessageId.YOU_CANNOT_PARTICIPATE_IN_THE_CEREMONY_OF_CHAOS_AS_A_FLYING_TRANSFORMED_OBJECT;
|
||||
canRegister = false;
|
||||
}
|
||||
else if (!player.isInCategory(CategoryType.AWAKEN_GROUP))
|
||||
else if (!player.isInCategory(CategoryType.SIXTH_CLASS_GROUP))
|
||||
{
|
||||
sm = SystemMessageId.ONLY_CHARACTERS_WHO_HAVE_COMPLETED_THE_3RD_CLASS_TRANSFER_MAY_PARTICIPATE;
|
||||
canRegister = false;
|
||||
|
@@ -8084,7 +8084,7 @@ public final class L2PcInstance extends L2Playable
|
||||
@Override
|
||||
public boolean hasBasicPropertyResist()
|
||||
{
|
||||
return isInCategory(CategoryType.AWAKEN_GROUP);
|
||||
return isInCategory(CategoryType.SIXTH_CLASS_GROUP);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -11446,7 +11446,7 @@ public final class L2PcInstance extends L2Playable
|
||||
percent *= getStat().getValue(Stats.REDUCE_DEATH_PENALTY_BY_PVP, 1);
|
||||
}
|
||||
|
||||
if (killer.isInCategory(CategoryType.SHILENS_FOLLOWERS) || (Rnd.get(1, 100) <= ((Config.DEATH_PENALTY_CHANCE) * percent)))
|
||||
if ((killer.isNpc() && ((L2Npc) killer).getTemplate().isDeathPenalty()) || (Rnd.get(1, 100) <= ((Config.DEATH_PENALTY_CHANCE) * percent)))
|
||||
{
|
||||
if (!killer.isPlayable() || (getReputation() < 0))
|
||||
{
|
||||
|
@@ -84,6 +84,7 @@ public final class L2NpcTemplate extends L2CharTemplate implements IIdentifiable
|
||||
private boolean _hasSummoner;
|
||||
private boolean _canBeSown;
|
||||
private boolean _canBeCrt;
|
||||
private boolean _isDeathPenalty;
|
||||
private int _corpseTime;
|
||||
private AIType _aiType;
|
||||
private int _aggroRange;
|
||||
@@ -162,6 +163,7 @@ public final class L2NpcTemplate extends L2CharTemplate implements IIdentifiable
|
||||
_hasSummoner = set.getBoolean("hasSummoner", false);
|
||||
_canBeSown = set.getBoolean("canBeSown", false);
|
||||
_canBeCrt = set.getBoolean("ex_crt_effect", true);
|
||||
_isDeathPenalty = set.getBoolean("isDeathPenalty", false);
|
||||
|
||||
_corpseTime = set.getInt("corpseTime", Config.DEFAULT_CORPSE_TIME);
|
||||
|
||||
@@ -418,6 +420,11 @@ public final class L2NpcTemplate extends L2CharTemplate implements IIdentifiable
|
||||
return _canBeCrt;
|
||||
}
|
||||
|
||||
public boolean isDeathPenalty()
|
||||
{
|
||||
return _isDeathPenalty;
|
||||
}
|
||||
|
||||
public int getCorpseTime()
|
||||
{
|
||||
return _corpseTime;
|
||||
|
@@ -80,7 +80,7 @@ public class Olympiad extends ListenersContainer
|
||||
private static final String OLYMPIAD_MONTH_CLEAR = "TRUNCATE olympiad_nobles_eom";
|
||||
private static final String OLYMPIAD_MONTH_CREATE = "INSERT INTO olympiad_nobles_eom SELECT charId, class_id, olympiad_points, competitions_done, competitions_won, competitions_lost, competitions_drawn FROM olympiad_nobles";
|
||||
|
||||
private static final Set<Integer> HERO_IDS = CategoryData.getInstance().getCategoryByType(CategoryType.AWAKEN_GROUP);
|
||||
private static final Set<Integer> HERO_IDS = CategoryData.getInstance().getCategoryByType(CategoryType.SIXTH_CLASS_GROUP);
|
||||
|
||||
private static final int COMP_START = Config.ALT_OLY_START_TIME; // 6PM
|
||||
private static final int COMP_MIN = Config.ALT_OLY_MIN; // 00 mins
|
||||
|
@@ -56,7 +56,7 @@ public class L2SayuneZone extends L2ZoneType
|
||||
@Override
|
||||
protected void onEnter(L2Character character)
|
||||
{
|
||||
if (character.isPlayer() && (character.isInCategory(CategoryType.AWAKEN_GROUP) || Config.FREE_JUMPS_FOR_ALL) && !character.getActingPlayer().isMounted() && !character.isTransformed())
|
||||
if (character.isPlayer() && (character.isInCategory(CategoryType.SIXTH_CLASS_GROUP) || Config.FREE_JUMPS_FOR_ALL) && !character.getActingPlayer().isMounted() && !character.isTransformed())
|
||||
{
|
||||
character.setInsideZone(ZoneId.SAYUNE, true);
|
||||
ThreadPoolManager.execute(new FlyMoveStartTask(this, character.getActingPlayer()));
|
||||
|
@@ -417,7 +417,7 @@ public final class RequestAcquireSkill implements IClientIncomingPacket
|
||||
Util.handleIllegalPlayerAction(activeChar, "Player " + activeChar.getName() + " is requesting skill Id: " + _id + " level " + _level + " while Sub-Class is active!", IllegalActionPunishmentType.NONE);
|
||||
return;
|
||||
}
|
||||
if ((activeChar.getLevel() < 85) || !activeChar.isInCategory(CategoryType.AWAKEN_GROUP))
|
||||
if ((activeChar.getLevel() < 85) || !activeChar.isInCategory(CategoryType.SIXTH_CLASS_GROUP))
|
||||
{
|
||||
activeChar.sendPacket(SystemMessageId.YOU_DO_NOT_HAVE_THE_NECESSARY_MATERIALS_OR_PREREQUISITES_TO_LEARN_THIS_SKILL);
|
||||
Util.handleIllegalPlayerAction(activeChar, "Player " + activeChar.getName() + " is requesting skill Id: " + _id + " level " + _level + " while not being level 85 or awaken!", IllegalActionPunishmentType.NONE);
|
||||
@@ -460,7 +460,7 @@ public final class RequestAcquireSkill implements IClientIncomingPacket
|
||||
return;
|
||||
}
|
||||
|
||||
if ((activeChar.getLevel() < 85) || !activeChar.isInCategory(CategoryType.AWAKEN_GROUP))
|
||||
if ((activeChar.getLevel() < 85) || !activeChar.isInCategory(CategoryType.SIXTH_CLASS_GROUP))
|
||||
{
|
||||
activeChar.sendPacket(SystemMessageId.YOU_DO_NOT_HAVE_THE_NECESSARY_MATERIALS_OR_PREREQUISITES_TO_LEARN_THIS_SKILL);
|
||||
Util.handleIllegalPlayerAction(activeChar, "Player " + activeChar.getName() + " is requesting skill Id: " + _id + " level " + _level + " while not being level 85 or awaken!", IllegalActionPunishmentType.NONE);
|
||||
|
@@ -150,7 +150,7 @@ public final class RequestAcquireSkillInfo implements IClientIncomingPacket
|
||||
}
|
||||
case REVELATION:
|
||||
{
|
||||
if ((activeChar.getLevel() < 85) || !activeChar.isInCategory(CategoryType.AWAKEN_GROUP))
|
||||
if ((activeChar.getLevel() < 85) || !activeChar.isInCategory(CategoryType.SIXTH_CLASS_GROUP))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
@@ -87,7 +87,7 @@ public final class RequestExEnchantSkill implements IClientIncomingPacket
|
||||
return;
|
||||
}
|
||||
|
||||
if (!player.isInCategory(CategoryType.AWAKEN_GROUP))
|
||||
if (!player.isInCategory(CategoryType.SIXTH_CLASS_GROUP))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
@@ -72,7 +72,7 @@ public final class RequestExEnchantSkillInfo implements IClientIncomingPacket
|
||||
return;
|
||||
}
|
||||
|
||||
if (!activeChar.isInCategory(CategoryType.AWAKEN_GROUP))
|
||||
if (!activeChar.isInCategory(CategoryType.SIXTH_CLASS_GROUP))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
@@ -115,7 +115,7 @@ public class ConfirmMenteeAdd implements IClientIncomingPacket
|
||||
mentor.sendPacket(SystemMessageId.THAT_PLAYER_IS_NOT_ONLINE);
|
||||
return false;
|
||||
}
|
||||
else if (!mentor.isInCategory(CategoryType.AWAKEN_GROUP))
|
||||
else if (!mentor.isInCategory(CategoryType.SIXTH_CLASS_GROUP))
|
||||
{
|
||||
mentor.sendPacket(SystemMessageId.YOU_MUST_AWAKEN_IN_ORDER_TO_BECOME_A_MENTOR);
|
||||
return false;
|
||||
|
@@ -44,7 +44,7 @@ public class RequestFlyMoveStart implements IClientIncomingPacket
|
||||
public void run(L2GameClient client)
|
||||
{
|
||||
final L2PcInstance activeChar = client.getActiveChar();
|
||||
if ((activeChar == null) || !activeChar.isInsideZone(ZoneId.SAYUNE) || activeChar.hasRequest(SayuneRequest.class) || !activeChar.isInCategory(CategoryType.AWAKEN_GROUP))
|
||||
if ((activeChar == null) || !activeChar.isInsideZone(ZoneId.SAYUNE) || activeChar.hasRequest(SayuneRequest.class) || !activeChar.isInCategory(CategoryType.SIXTH_CLASS_GROUP))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
@@ -48,7 +48,7 @@ public class ExMentorList implements IClientOutgoingPacket
|
||||
_type = 0x02;
|
||||
_mentees = Arrays.asList(MentorManager.getInstance().getMentor(activeChar.getObjectId()));
|
||||
}
|
||||
else if (activeChar.isInCategory(CategoryType.AWAKEN_GROUP)) // Not a mentor, Not a mentee, so can be a mentor
|
||||
else if (activeChar.isInCategory(CategoryType.SIXTH_CLASS_GROUP)) // Not a mentor, Not a mentee, so can be a mentor
|
||||
{
|
||||
_mentees = Collections.emptyList();
|
||||
_type = 0x01;
|
||||
|
@@ -40,7 +40,7 @@ public class ListMenteeWaiting implements IClientOutgoingPacket
|
||||
_page = page;
|
||||
for (L2PcInstance player : L2World.getInstance().getPlayers())
|
||||
{
|
||||
if ((player.getLevel() >= minLevel) && (player.getLevel() <= maxLevel) && !player.isMentee() && !player.isMentor() && !player.isInCategory(CategoryType.AWAKEN_GROUP))
|
||||
if ((player.getLevel() >= minLevel) && (player.getLevel() <= maxLevel) && !player.isMentee() && !player.isMentor() && !player.isInCategory(CategoryType.SIXTH_CLASS_GROUP))
|
||||
{
|
||||
_possibleCandiates.add(player);
|
||||
}
|
||||
|
Reference in New Issue
Block a user