diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/CategoryData.xml b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/CategoryData.xml index 080beec648..359594290c 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/CategoryData.xml +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/CategoryData.xml @@ -585,4 +585,18 @@ 34 107 + + 196 + 197 + 198 + 199 + 200 + 201 + 202 + 203 + 204 + 205 + 206 + 207 + \ No newline at end of file diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/admincommandhandlers/AdminEditChar.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/admincommandhandlers/AdminEditChar.java index 853cafb61d..6eb1f8192e 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/admincommandhandlers/AdminEditChar.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/admincommandhandlers/AdminEditChar.java @@ -414,7 +414,7 @@ public class AdminEditChar implements IAdminCommandHandler player.getAppearance().setFemale(); } // Death Knight checks. - if ((classidval > 195) && (classidval < 208)) + if (player.isDeathKnight()) { player.getAppearance().setMale(); } diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/quests/Q00255_Tutorial/Q00255_Tutorial.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/quests/Q00255_Tutorial/Q00255_Tutorial.java index cd2df02d03..4e18a344bf 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/quests/Q00255_Tutorial/Q00255_Tutorial.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/quests/Q00255_Tutorial/Q00255_Tutorial.java @@ -148,8 +148,14 @@ public class Q00255_Tutorial extends Quest @Override public String onAdvEvent(String event, Npc npc, PlayerInstance player) { + // Null check. + if (player == null) + { + return null; + } + // Death Knights. - if ((player == null) || (player.getClassId().getId() > 195)) + if (player.isDeathKnight()) { return null; } diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/stats/chars/classList.xml b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/stats/chars/classList.xml index 36f5f9ca39..794ce0adca 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/stats/chars/classList.xml +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/stats/chars/classList.xml @@ -103,17 +103,17 @@ - - - + + + - - - + + + - - - + + + \ No newline at end of file diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/enums/CategoryType.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/enums/CategoryType.java index 2413c50b74..8e43b7b669 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/enums/CategoryType.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/enums/CategoryType.java @@ -54,7 +54,8 @@ public enum CategoryType SUB_GROUP_ORC, SUB_GROUP_WARE, SUB_GROUP_BLACK, - SUB_GROUP_DE; + SUB_GROUP_DE, + DEATH_KNIGHT_ALL_CLASS; /** * Finds category by it's name diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java index 5ad6aa2c09..e797abd095 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java @@ -6694,7 +6694,7 @@ public class PlayerInstance extends Playable { player._activeClass = activeClassId; } - if ((activeClassId > 195) && (activeClassId < 208)) + if (CategoryData.getInstance().isInCategory(CategoryType.DEATH_KNIGHT_ALL_CLASS, activeClassId)) { player._isDeathKnight = true; } @@ -14233,7 +14233,7 @@ public class PlayerInstance extends Playable addStatusUpdateValue(StatusUpdateType.LEVEL); addStatusUpdateValue(StatusUpdateType.MAX_CP); addStatusUpdateValue(StatusUpdateType.CUR_CP); - if (isPlayer() && (getActingPlayer().getClassId().getId() > 195)) + if (isDeathKnight()) { addStatusUpdateValue(StatusUpdateType.CUR_DP); } diff --git a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/CategoryData.xml b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/CategoryData.xml index ba16100c43..08ccb53abc 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/CategoryData.xml +++ b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/CategoryData.xml @@ -66,16 +66,16 @@ 194 195 196 - 205 - 202 + 197 + 198 199 200 - 197 - 206 + 201 + 202 203 204 - 201 - 198 + 205 + 206 207 208 209 @@ -206,16 +206,16 @@ 194 195 196 - 205 - 202 + 197 + 198 199 200 - 197 - 206 + 201 + 202 203 204 - 201 - 198 + 205 + 206 207 208 209 @@ -597,4 +597,24 @@ 34 107 + + 196 + 197 + 198 + 199 + 200 + 201 + 202 + 203 + 204 + 205 + 206 + 207 + + + 208 + 209 + 210 + 211 + \ No newline at end of file diff --git a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/admincommandhandlers/AdminEditChar.java b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/admincommandhandlers/AdminEditChar.java index 45dbf8bff9..c8481145dd 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/admincommandhandlers/AdminEditChar.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/admincommandhandlers/AdminEditChar.java @@ -410,7 +410,7 @@ public class AdminEditChar implements IAdminCommandHandler } } // Death Knight checks. - if ((classidval > 195) && (classidval < 208)) + if (player.isDeathKnight()) { player.getAppearance().setMale(); } diff --git a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/quests/Q00255_Tutorial/Q00255_Tutorial.java b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/quests/Q00255_Tutorial/Q00255_Tutorial.java index cd2df02d03..39cb576ced 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/quests/Q00255_Tutorial/Q00255_Tutorial.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/quests/Q00255_Tutorial/Q00255_Tutorial.java @@ -148,8 +148,20 @@ public class Q00255_Tutorial extends Quest @Override public String onAdvEvent(String event, Npc npc, PlayerInstance player) { + // Null check. + if (player == null) + { + return null; + } + // Death Knights. - if ((player == null) || (player.getClassId().getId() > 195)) + if (player.isDeathKnight()) + { + return null; + } + + // Sylph. + if (player.getRace() == Race.SYLPH) { return null; } diff --git a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/stats/chars/classList.xml b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/stats/chars/classList.xml index 673dc77c91..c88e0477ec 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/stats/chars/classList.xml +++ b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/stats/chars/classList.xml @@ -103,19 +103,19 @@ - - - + + + - - - + + + - - - + + + diff --git a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/enums/CategoryType.java b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/enums/CategoryType.java index 2413c50b74..8f6908eb64 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/enums/CategoryType.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/enums/CategoryType.java @@ -54,7 +54,9 @@ public enum CategoryType SUB_GROUP_ORC, SUB_GROUP_WARE, SUB_GROUP_BLACK, - SUB_GROUP_DE; + SUB_GROUP_DE, + DEATH_KNIGHT_ALL_CLASS, + SYLPH_ALL_CLASS; /** * Finds category by it's name diff --git a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java index f604dccba0..034f8207e5 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java @@ -6739,7 +6739,7 @@ public class PlayerInstance extends Playable { player._activeClass = activeClassId; } - if ((activeClassId > 195) && (activeClassId < 208)) + if (CategoryData.getInstance().isInCategory(CategoryType.DEATH_KNIGHT_ALL_CLASS, activeClassId)) { player._isDeathKnight = true; } @@ -14310,7 +14310,7 @@ public class PlayerInstance extends Playable addStatusUpdateValue(StatusUpdateType.LEVEL); addStatusUpdateValue(StatusUpdateType.MAX_CP); addStatusUpdateValue(StatusUpdateType.CUR_CP); - if (isPlayer() && (getActingPlayer().getClassId().getId() > 195)) + if (isDeathKnight()) { addStatusUpdateValue(StatusUpdateType.CUR_DP); }