2
0
Эх сурвалжийг харах

BETA: Moving enums to separate package.
* Reviewed by: UnAfraid, Nos, Zoey76, jurchiks

xban1x 11 жил өмнө
parent
commit
d22ca88e53
30 өөрчлөгдсөн 361 нэмэгдсэн , 291 устгасан
  1. 1 1
      L2J_Server_BETA/java/com/l2jserver/gameserver/ai/L2AttackableAI.java
  2. 8 8
      L2J_Server_BETA/java/com/l2jserver/gameserver/datatables/SkillTreesData.java
  3. 5 5
      L2J_Server_BETA/java/com/l2jserver/gameserver/engines/DocumentBase.java
  4. 39 0
      L2J_Server_BETA/java/com/l2jserver/gameserver/enums/AISkillType.java
  5. 32 0
      L2J_Server_BETA/java/com/l2jserver/gameserver/enums/AIType.java
  6. 52 0
      L2J_Server_BETA/java/com/l2jserver/gameserver/enums/NpcRace.java
  7. 2 2
      L2J_Server_BETA/java/com/l2jserver/gameserver/enums/PcRace.java
  8. 4 4
      L2J_Server_BETA/java/com/l2jserver/gameserver/enums/Sex.java
  9. 4 4
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/L2MapRegion.java
  10. 1 1
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/L2NpcAIData.java
  11. 4 4
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/L2SkillLearn.java
  12. 1 1
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/L2Npc.java
  13. 8 8
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java
  14. 2 2
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2VillageMasterDElfInstance.java
  15. 2 2
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2VillageMasterDwarfInstance.java
  16. 2 2
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2VillageMasterFighterInstance.java
  17. 5 5
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2VillageMasterInstance.java
  18. 4 4
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2VillageMasterKamaelInstance.java
  19. 2 2
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2VillageMasterMysticInstance.java
  20. 2 2
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2VillageMasterOrcInstance.java
  21. 2 2
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2VillageMasterPriestInstance.java
  22. 31 86
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/templates/L2NpcTemplate.java
  23. 2 2
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/templates/L2PcTemplate.java
  24. 121 120
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/base/ClassId.java
  25. 11 10
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/base/PlayerClass.java
  26. 3 3
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/conditions/ConditionPlayerRace.java
  27. 3 3
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/conditions/ConditionTargetRace.java
  28. 4 4
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/zone/type/L2RespawnZone.java
  29. 2 2
      L2J_Server_BETA/java/com/l2jserver/gameserver/network/clientpackets/RequestCrystallizeItem.java
  30. 2 2
      L2J_Server_BETA/java/com/l2jserver/gameserver/network/clientpackets/UseItem.java

+ 1 - 1
L2J_Server_BETA/java/com/l2jserver/gameserver/ai/L2AttackableAI.java

@@ -33,6 +33,7 @@ import com.l2jserver.gameserver.GeoData;
 import com.l2jserver.gameserver.ThreadPoolManager;
 import com.l2jserver.gameserver.datatables.NpcTable;
 import com.l2jserver.gameserver.datatables.TerritoryTable;
+import com.l2jserver.gameserver.enums.AIType;
 import com.l2jserver.gameserver.instancemanager.DimensionalRiftManager;
 import com.l2jserver.gameserver.model.L2Object;
 import com.l2jserver.gameserver.model.Location;
@@ -52,7 +53,6 @@ import com.l2jserver.gameserver.model.actor.instance.L2RaidBossInstance;
 import com.l2jserver.gameserver.model.actor.instance.L2RiftInvaderInstance;
 import com.l2jserver.gameserver.model.actor.instance.L2StaticObjectInstance;
 import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
-import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate.AIType;
 import com.l2jserver.gameserver.model.effects.L2EffectType;
 import com.l2jserver.gameserver.model.quest.Quest;
 import com.l2jserver.gameserver.model.quest.Quest.QuestEventType;

+ 8 - 8
L2J_Server_BETA/java/com/l2jserver/gameserver/datatables/SkillTreesData.java

@@ -33,6 +33,7 @@ import org.w3c.dom.Node;
 
 import com.l2jserver.Config;
 import com.l2jserver.gameserver.engines.DocumentParser;
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.model.L2Clan;
 import com.l2jserver.gameserver.model.L2SkillLearn;
 import com.l2jserver.gameserver.model.L2SkillLearn.SubClassData;
@@ -40,7 +41,6 @@ import com.l2jserver.gameserver.model.StatsSet;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
 import com.l2jserver.gameserver.model.base.AcquireSkillType;
 import com.l2jserver.gameserver.model.base.ClassId;
-import com.l2jserver.gameserver.model.base.Race;
 import com.l2jserver.gameserver.model.base.SocialClass;
 import com.l2jserver.gameserver.model.base.SubClass;
 import com.l2jserver.gameserver.model.holders.ItemHolder;
@@ -208,7 +208,7 @@ public final class SkillTreesData extends DocumentParser
 											skillLearn.addPreReqSkill(new SkillHolder(parseInt(attrs, "id"), parseInt(attrs, "lvl")));
 											break;
 										case "race":
-											skillLearn.addRace(Race.valueOf(b.getTextContent()));
+											skillLearn.addRace(PcRace.valueOf(b.getTextContent()));
 											break;
 										case "residenceId":
 											skillLearn.addResidenceId(Integer.valueOf(b.getTextContent()));
@@ -575,7 +575,7 @@ public final class SkillTreesData extends DocumentParser
 			return result;
 		}
 		
-		final Race race = player.getRace();
+		final PcRace race = player.getRace();
 		for (L2SkillLearn skill : skills.values())
 		{
 			if (!skill.getRaces().isEmpty() && !skill.getRaces().contains(race))
@@ -610,7 +610,7 @@ public final class SkillTreesData extends DocumentParser
 	public List<L2SkillLearn> getAvailableFishingSkills(L2PcInstance player)
 	{
 		final List<L2SkillLearn> result = new ArrayList<>();
-		final Race playerRace = player.getRace();
+		final PcRace playerRace = player.getRace();
 		for (L2SkillLearn skill : _fishingSkillTree.values())
 		{
 			// If skill is Race specific and the player's race isn't allowed, skip it.
@@ -703,7 +703,7 @@ public final class SkillTreesData extends DocumentParser
 	public List<L2SkillLearn> getAvailableTransformSkills(L2PcInstance player)
 	{
 		final List<L2SkillLearn> result = new ArrayList<>();
-		final Race race = player.getRace();
+		final PcRace race = player.getRace();
 		for (L2SkillLearn skill : _transformSkillTree.values())
 		{
 			if ((player.getLevel() >= skill.getGetLevel()) && (skill.getRaces().isEmpty() || skill.getRaces().contains(race)))
@@ -1110,8 +1110,8 @@ public final class SkillTreesData extends DocumentParser
 		
 		// Race specific skills from Fishing and Transformation skill trees.
 		final List<Integer> list = new ArrayList<>();
-		_skillsByRaceHashCodes = new TIntObjectHashMap<>(Race.values().length);
-		for (Race r : Race.values())
+		_skillsByRaceHashCodes = new TIntObjectHashMap<>(PcRace.values().length);
+		for (PcRace r : PcRace.values())
 		{
 			for (L2SkillLearn s : _fishingSkillTree.values())
 			{
@@ -1250,7 +1250,7 @@ public final class SkillTreesData extends DocumentParser
 		int dwarvenOnlyFishingSkillCount = 0;
 		for (L2SkillLearn fishSkill : _fishingSkillTree.values())
 		{
-			if (fishSkill.getRaces().contains(Race.Dwarf))
+			if (fishSkill.getRaces().contains(PcRace.Dwarf))
 			{
 				dwarvenOnlyFishingSkillCount++;
 			}

+ 5 - 5
L2J_Server_BETA/java/com/l2jserver/gameserver/engines/DocumentBase.java

@@ -36,9 +36,9 @@ import org.w3c.dom.Node;
 
 import com.l2jserver.gameserver.datatables.ItemTable;
 import com.l2jserver.gameserver.enums.InstanceType;
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.model.StatsSet;
 import com.l2jserver.gameserver.model.base.PlayerState;
-import com.l2jserver.gameserver.model.base.Race;
 import com.l2jserver.gameserver.model.conditions.Condition;
 import com.l2jserver.gameserver.model.conditions.ConditionChangeWeapon;
 import com.l2jserver.gameserver.model.conditions.ConditionGameChance;
@@ -463,12 +463,12 @@ public abstract class DocumentBase
 			if ("races".equalsIgnoreCase(a.getNodeName()))
 			{
 				final String[] racesVal = a.getNodeValue().split(",");
-				final Race[] races = new Race[racesVal.length];
+				final PcRace[] races = new PcRace[racesVal.length];
 				for (int r = 0; r < racesVal.length; r++)
 				{
 					if (racesVal[r] != null)
 					{
-						races[r] = Race.valueOf(racesVal[r]);
+						races[r] = PcRace.valueOf(racesVal[r]);
 					}
 				}
 				cond = joinAnd(cond, new ConditionPlayerRace(races));
@@ -900,12 +900,12 @@ public abstract class DocumentBase
 			else if ("races".equalsIgnoreCase(a.getNodeName()))
 			{
 				final String[] racesVal = a.getNodeValue().split(",");
-				final Race[] races = new Race[racesVal.length];
+				final PcRace[] races = new PcRace[racesVal.length];
 				for (int r = 0; r < racesVal.length; r++)
 				{
 					if (racesVal[r] != null)
 					{
-						races[r] = Race.valueOf(racesVal[r]);
+						races[r] = PcRace.valueOf(racesVal[r]);
 					}
 				}
 				cond = joinAnd(cond, new ConditionTargetRace(races));

+ 39 - 0
L2J_Server_BETA/java/com/l2jserver/gameserver/enums/AISkillType.java

@@ -0,0 +1,39 @@
+/*
+ * Copyright (C) 2004-2013 L2J Server
+ * 
+ * This file is part of L2J Server.
+ * 
+ * L2J Server is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ * 
+ * L2J Server is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.l2jserver.gameserver.enums;
+
+/**
+ * @author Zoey76
+ */
+public enum AISkillType
+{
+	BUFF,
+	DEBUFF,
+	NEGATIVE,
+	ATTACK,
+	IMMOBILIZE,
+	HEAL,
+	RES,
+	COT,
+	UNIVERSAL,
+	LONG_RANGE,
+	SHORT_RANGE,
+	GENERAL,
+	SUICIDE
+}

+ 32 - 0
L2J_Server_BETA/java/com/l2jserver/gameserver/enums/AIType.java

@@ -0,0 +1,32 @@
+/*
+ * Copyright (C) 2004-2013 L2J Server
+ * 
+ * This file is part of L2J Server.
+ * 
+ * L2J Server is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ * 
+ * L2J Server is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.l2jserver.gameserver.enums;
+
+/**
+ * @author Zoey76
+ */
+public enum AIType
+{
+	FIGHTER,
+	ARCHER,
+	BALANCED,
+	MAGE,
+	HEALER,
+	CORPSE
+}

+ 52 - 0
L2J_Server_BETA/java/com/l2jserver/gameserver/enums/NpcRace.java

@@ -0,0 +1,52 @@
+/*
+ * Copyright (C) 2004-2013 L2J Server
+ * 
+ * This file is part of L2J Server.
+ * 
+ * L2J Server is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ * 
+ * L2J Server is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.l2jserver.gameserver.enums;
+
+/**
+ * @author Zoey76
+ */
+public enum NpcRace
+{
+	UNDEAD,
+	MAGICCREATURE,
+	BEAST,
+	ANIMAL,
+	PLANT,
+	HUMANOID,
+	SPIRIT,
+	ANGEL,
+	DEMON,
+	DRAGON,
+	GIANT,
+	BUG,
+	FAIRIE,
+	HUMAN,
+	ELVE,
+	DARKELVE,
+	ORC,
+	DWARVE,
+	OTHER,
+	NONLIVING,
+	SIEGEWEAPON,
+	DEFENDINGARMY,
+	MERCENARIE,
+	UNKNOWN,
+	KAMAEL,
+	NONE
+}

+ 2 - 2
L2J_Server_BETA/java/com/l2jserver/gameserver/model/base/Race.java → L2J_Server_BETA/java/com/l2jserver/gameserver/enums/PcRace.java

@@ -16,13 +16,13 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package com.l2jserver.gameserver.model.base;
+package com.l2jserver.gameserver.enums;
 
 /**
  * This class defines all races (human, elf, darkelf, orc, dwarf) that a player can chose.
  * @version $Revision: 1.2.4.2 $ $Date: 2005/03/27 15:29:32 $
  */
-public enum Race
+public enum PcRace
 {
 	Human,
 	Elf,

+ 4 - 4
L2J_Server_BETA/java/com/l2jserver/gameserver/model/base/Sex.java → L2J_Server_BETA/java/com/l2jserver/gameserver/enums/Sex.java

@@ -16,14 +16,14 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-package com.l2jserver.gameserver.model.base;
+package com.l2jserver.gameserver.enums;
 
 /**
  * This class ...
  * @version $Revision: 1.2.4.1 $ $Date: 2005/03/27 15:29:32 $
  */
-public class Sex
+public enum Sex
 {
-	public static final int MALE = 0;
-	public static final int FEMALE = 1;
+	MALE,
+	FEMALE;
 }

+ 4 - 4
L2J_Server_BETA/java/com/l2jserver/gameserver/model/L2MapRegion.java

@@ -24,7 +24,7 @@ import java.util.List;
 import java.util.Map;
 
 import com.l2jserver.Config;
-import com.l2jserver.gameserver.model.base.Race;
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.util.Rnd;
 
 /**
@@ -44,7 +44,7 @@ public class L2MapRegion
 	private List<Location> _chaoticSpawnLocs = null;
 	private List<Location> _banishSpawnLocs = null;
 	
-	private final Map<Race, String> _bannedRace = new HashMap<>();
+	private final Map<PcRace, String> _bannedRace = new HashMap<>();
 	
 	public L2MapRegion(String name, String town, int locId, int castle, int bbs)
 	{
@@ -212,10 +212,10 @@ public class L2MapRegion
 	
 	public final void addBannedRace(String race, String point)
 	{
-		_bannedRace.put(Race.valueOf(race), point);
+		_bannedRace.put(PcRace.valueOf(race), point);
 	}
 	
-	public final Map<Race, String> getBannedRace()
+	public final Map<PcRace, String> getBannedRace()
 	{
 		return _bannedRace;
 	}

+ 1 - 1
L2J_Server_BETA/java/com/l2jserver/gameserver/model/L2NpcAIData.java

@@ -18,7 +18,7 @@
  */
 package com.l2jserver.gameserver.model;
 
-import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate.AIType;
+import com.l2jserver.gameserver.enums.AIType;
 
 /**
  * This Data is for NPC Attributes and AI related stuffs.<br>

+ 4 - 4
L2J_Server_BETA/java/com/l2jserver/gameserver/model/L2SkillLearn.java

@@ -22,8 +22,8 @@ import java.util.ArrayList;
 import java.util.List;
 
 import com.l2jserver.Config;
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.model.base.ClassId;
-import com.l2jserver.gameserver.model.base.Race;
 import com.l2jserver.gameserver.model.base.SocialClass;
 import com.l2jserver.gameserver.model.holders.ItemHolder;
 import com.l2jserver.gameserver.model.holders.SkillHolder;
@@ -40,7 +40,7 @@ public final class L2SkillLearn
 	private final boolean _autoGet;
 	private final int _levelUpSp;
 	private final List<ItemHolder> _requiredItems = new ArrayList<>();
-	private final List<Race> _races = new ArrayList<>();
+	private final List<PcRace> _races = new ArrayList<>();
 	private final List<SkillHolder> _preReqSkills = new ArrayList<>();
 	private SocialClass _socialClass;
 	private final boolean _residenceSkill;
@@ -162,7 +162,7 @@ public final class L2SkillLearn
 	/**
 	 * @return a list with the races that can acquire this skill.
 	 */
-	public List<Race> getRaces()
+	public List<PcRace> getRaces()
 	{
 		return _races;
 	}
@@ -171,7 +171,7 @@ public final class L2SkillLearn
 	 * Adds a required race to learn this skill.
 	 * @param race the required race.
 	 */
-	public void addRace(Race race)
+	public void addRace(PcRace race)
 	{
 		_races.add(race);
 	}

+ 1 - 1
L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/L2Npc.java

@@ -32,6 +32,7 @@ import com.l2jserver.gameserver.ThreadPoolManager;
 import com.l2jserver.gameserver.cache.HtmCache;
 import com.l2jserver.gameserver.datatables.CategoryData;
 import com.l2jserver.gameserver.datatables.ItemTable;
+import com.l2jserver.gameserver.enums.AIType;
 import com.l2jserver.gameserver.enums.CategoryType;
 import com.l2jserver.gameserver.enums.InstanceType;
 import com.l2jserver.gameserver.enums.ShotType;
@@ -61,7 +62,6 @@ import com.l2jserver.gameserver.model.actor.knownlist.NpcKnownList;
 import com.l2jserver.gameserver.model.actor.stat.NpcStat;
 import com.l2jserver.gameserver.model.actor.status.NpcStatus;
 import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
-import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate.AIType;
 import com.l2jserver.gameserver.model.entity.Castle;
 import com.l2jserver.gameserver.model.entity.Fort;
 import com.l2jserver.gameserver.model.entity.clanhall.SiegableHall;

+ 8 - 8
L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java

@@ -91,6 +91,8 @@ import com.l2jserver.gameserver.enums.BypassScope;
 import com.l2jserver.gameserver.enums.CategoryType;
 import com.l2jserver.gameserver.enums.InstanceType;
 import com.l2jserver.gameserver.enums.MountType;
+import com.l2jserver.gameserver.enums.PcRace;
+import com.l2jserver.gameserver.enums.Sex;
 import com.l2jserver.gameserver.enums.ShotType;
 import com.l2jserver.gameserver.handler.IItemHandler;
 import com.l2jserver.gameserver.handler.ItemHandler;
@@ -184,8 +186,6 @@ import com.l2jserver.gameserver.model.actor.transform.Transform;
 import com.l2jserver.gameserver.model.base.ClassId;
 import com.l2jserver.gameserver.model.base.ClassLevel;
 import com.l2jserver.gameserver.model.base.PlayerClass;
-import com.l2jserver.gameserver.model.base.Race;
-import com.l2jserver.gameserver.model.base.Sex;
 import com.l2jserver.gameserver.model.base.SubClass;
 import com.l2jserver.gameserver.model.effects.AbnormalEffect;
 import com.l2jserver.gameserver.model.effects.EffectFlag;
@@ -2919,7 +2919,7 @@ public final class L2PcInstance extends L2Playable
 	/**
 	 * @return the Race object of the L2PcInstance.
 	 */
-	public Race getRace()
+	public PcRace getRace()
 	{
 		if (!isSubClassActive())
 		{
@@ -7160,7 +7160,7 @@ public final class L2PcInstance extends L2Playable
 				if (rset.next())
 				{
 					final int activeClassId = rset.getInt("classid");
-					final boolean female = rset.getInt("sex") != Sex.MALE;
+					final boolean female = rset.getInt("sex") != Sex.MALE.ordinal();
 					final L2PcTemplate template = CharTemplateTable.getInstance().getTemplate(activeClassId);
 					PcAppearance app = new PcAppearance(rset.getByte("face"), rset.getByte("hairColor"), rset.getByte("hairStyle"), female);
 					
@@ -12338,7 +12338,7 @@ public final class L2PcInstance extends L2Playable
 		{
 			ivlim = Config.INVENTORY_MAXIMUM_GM;
 		}
-		else if (getRace() == Race.Dwarf)
+		else if (getRace() == PcRace.Dwarf)
 		{
 			ivlim = Config.INVENTORY_MAXIMUM_DWARF;
 		}
@@ -12354,7 +12354,7 @@ public final class L2PcInstance extends L2Playable
 	public int getWareHouseLimit()
 	{
 		int whlim;
-		if (getRace() == Race.Dwarf)
+		if (getRace() == PcRace.Dwarf)
 		{
 			whlim = Config.WAREHOUSE_SLOTS_DWARF;
 		}
@@ -12372,7 +12372,7 @@ public final class L2PcInstance extends L2Playable
 	{
 		int pslim;
 		
-		if (getRace() == Race.Dwarf)
+		if (getRace() == PcRace.Dwarf)
 		{
 			pslim = Config.MAX_PVTSTORESELL_SLOTS_DWARF;
 		}
@@ -12390,7 +12390,7 @@ public final class L2PcInstance extends L2Playable
 	{
 		int pblim;
 		
-		if (getRace() == Race.Dwarf)
+		if (getRace() == PcRace.Dwarf)
 		{
 			pblim = Config.MAX_PVTSTOREBUY_SLOTS_DWARF;
 		}

+ 2 - 2
L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2VillageMasterDElfInstance.java

@@ -18,9 +18,9 @@
  */
 package com.l2jserver.gameserver.model.actor.instance;
 
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
 import com.l2jserver.gameserver.model.base.PlayerClass;
-import com.l2jserver.gameserver.model.base.Race;
 
 public final class L2VillageMasterDElfInstance extends L2VillageMasterInstance
 {
@@ -37,6 +37,6 @@ public final class L2VillageMasterDElfInstance extends L2VillageMasterInstance
 			return false;
 		}
 		
-		return pclass.isOfRace(Race.DarkElf);
+		return pclass.isOfRace(PcRace.DarkElf);
 	}
 }

+ 2 - 2
L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2VillageMasterDwarfInstance.java

@@ -18,9 +18,9 @@
  */
 package com.l2jserver.gameserver.model.actor.instance;
 
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
 import com.l2jserver.gameserver.model.base.PlayerClass;
-import com.l2jserver.gameserver.model.base.Race;
 
 public final class L2VillageMasterDwarfInstance extends L2VillageMasterInstance
 {
@@ -37,6 +37,6 @@ public final class L2VillageMasterDwarfInstance extends L2VillageMasterInstance
 			return false;
 		}
 		
-		return pclass.isOfRace(Race.Dwarf);
+		return pclass.isOfRace(PcRace.Dwarf);
 	}
 }

+ 2 - 2
L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2VillageMasterFighterInstance.java

@@ -18,10 +18,10 @@
  */
 package com.l2jserver.gameserver.model.actor.instance;
 
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
 import com.l2jserver.gameserver.model.base.ClassType;
 import com.l2jserver.gameserver.model.base.PlayerClass;
-import com.l2jserver.gameserver.model.base.Race;
 
 public final class L2VillageMasterFighterInstance extends L2VillageMasterInstance
 {
@@ -38,7 +38,7 @@ public final class L2VillageMasterFighterInstance extends L2VillageMasterInstanc
 			return false;
 		}
 		
-		return pclass.isOfRace(Race.Human) || pclass.isOfRace(Race.Elf);
+		return pclass.isOfRace(PcRace.Human) || pclass.isOfRace(PcRace.Elf);
 	}
 	
 	@Override

+ 5 - 5
L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2VillageMasterInstance.java

@@ -30,6 +30,7 @@ import com.l2jserver.gameserver.datatables.ClanTable;
 import com.l2jserver.gameserver.datatables.ClassListData;
 import com.l2jserver.gameserver.datatables.SkillTreesData;
 import com.l2jserver.gameserver.enums.InstanceType;
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.instancemanager.CastleManager;
 import com.l2jserver.gameserver.instancemanager.FortManager;
 import com.l2jserver.gameserver.instancemanager.FortSiegeManager;
@@ -42,7 +43,6 @@ import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
 import com.l2jserver.gameserver.model.base.AcquireSkillType;
 import com.l2jserver.gameserver.model.base.ClassId;
 import com.l2jserver.gameserver.model.base.PlayerClass;
-import com.l2jserver.gameserver.model.base.Race;
 import com.l2jserver.gameserver.model.base.SubClass;
 import com.l2jserver.gameserver.model.entity.Castle;
 import com.l2jserver.gameserver.model.entity.Fort;
@@ -385,12 +385,12 @@ public class L2VillageMasterInstance extends L2NpcInstance
 					}
 					else
 					{
-						if ((player.getRace() == Race.Elf) || (player.getRace() == Race.DarkElf))
+						if ((player.getRace() == PcRace.Elf) || (player.getRace() == PcRace.DarkElf))
 						{
 							html.setFile(player.getHtmlPrefix(), "data/html/villagemaster/SubClass_Fail_Elves.htm");
 							player.sendPacket(html);
 						}
-						else if (player.getRace() == Race.Kamael)
+						else if (player.getRace() == PcRace.Kamael)
 						{
 							html.setFile(player.getHtmlPrefix(), "data/html/villagemaster/SubClass_Fail_Kamael.htm");
 							player.sendPacket(html);
@@ -684,9 +684,9 @@ public class L2VillageMasterInstance extends L2NpcInstance
 		}
 	}
 	
-	protected String getSubClassMenu(Race pRace)
+	protected String getSubClassMenu(PcRace pRace)
 	{
-		if (Config.ALT_GAME_SUBCLASS_EVERYWHERE || (pRace != Race.Kamael))
+		if (Config.ALT_GAME_SUBCLASS_EVERYWHERE || (pRace != PcRace.Kamael))
 		{
 			return "data/html/villagemaster/SubClass.htm";
 		}

+ 4 - 4
L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2VillageMasterKamaelInstance.java

@@ -19,9 +19,9 @@
 package com.l2jserver.gameserver.model.actor.instance;
 
 import com.l2jserver.Config;
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
 import com.l2jserver.gameserver.model.base.PlayerClass;
-import com.l2jserver.gameserver.model.base.Race;
 import com.l2jserver.gameserver.model.quest.QuestState;
 
 public final class L2VillageMasterKamaelInstance extends L2VillageMasterInstance
@@ -32,9 +32,9 @@ public final class L2VillageMasterKamaelInstance extends L2VillageMasterInstance
 	}
 	
 	@Override
-	protected final String getSubClassMenu(Race pRace)
+	protected final String getSubClassMenu(PcRace pRace)
 	{
-		if (Config.ALT_GAME_SUBCLASS_EVERYWHERE || (pRace == Race.Kamael))
+		if (Config.ALT_GAME_SUBCLASS_EVERYWHERE || (pRace == PcRace.Kamael))
 		{
 			return "data/html/villagemaster/SubClass.htm";
 		}
@@ -80,6 +80,6 @@ public final class L2VillageMasterKamaelInstance extends L2VillageMasterInstance
 			return false;
 		}
 		
-		return pclass.isOfRace(Race.Kamael);
+		return pclass.isOfRace(PcRace.Kamael);
 	}
 }

+ 2 - 2
L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2VillageMasterMysticInstance.java

@@ -18,10 +18,10 @@
  */
 package com.l2jserver.gameserver.model.actor.instance;
 
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
 import com.l2jserver.gameserver.model.base.ClassType;
 import com.l2jserver.gameserver.model.base.PlayerClass;
-import com.l2jserver.gameserver.model.base.Race;
 
 public final class L2VillageMasterMysticInstance extends L2VillageMasterInstance
 {
@@ -38,7 +38,7 @@ public final class L2VillageMasterMysticInstance extends L2VillageMasterInstance
 			return false;
 		}
 		
-		return pclass.isOfRace(Race.Human) || pclass.isOfRace(Race.Elf);
+		return pclass.isOfRace(PcRace.Human) || pclass.isOfRace(PcRace.Elf);
 	}
 	
 	@Override

+ 2 - 2
L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2VillageMasterOrcInstance.java

@@ -18,9 +18,9 @@
  */
 package com.l2jserver.gameserver.model.actor.instance;
 
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
 import com.l2jserver.gameserver.model.base.PlayerClass;
-import com.l2jserver.gameserver.model.base.Race;
 
 public final class L2VillageMasterOrcInstance extends L2VillageMasterInstance
 {
@@ -37,6 +37,6 @@ public final class L2VillageMasterOrcInstance extends L2VillageMasterInstance
 			return false;
 		}
 		
-		return pclass.isOfRace(Race.Orc);
+		return pclass.isOfRace(PcRace.Orc);
 	}
 }

+ 2 - 2
L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2VillageMasterPriestInstance.java

@@ -18,10 +18,10 @@
  */
 package com.l2jserver.gameserver.model.actor.instance;
 
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
 import com.l2jserver.gameserver.model.base.ClassType;
 import com.l2jserver.gameserver.model.base.PlayerClass;
-import com.l2jserver.gameserver.model.base.Race;
 
 public final class L2VillageMasterPriestInstance extends L2VillageMasterInstance
 {
@@ -38,7 +38,7 @@ public final class L2VillageMasterPriestInstance extends L2VillageMasterInstance
 			return false;
 		}
 		
-		return pclass.isOfRace(Race.Human) || pclass.isOfRace(Race.Elf);
+		return pclass.isOfRace(PcRace.Human) || pclass.isOfRace(PcRace.Elf);
 	}
 	
 	@Override

+ 31 - 86
L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/templates/L2NpcTemplate.java

@@ -28,6 +28,8 @@ import java.util.concurrent.CopyOnWriteArrayList;
 import java.util.logging.Logger;
 
 import com.l2jserver.gameserver.datatables.HerbDropTable;
+import com.l2jserver.gameserver.enums.AISkillType;
+import com.l2jserver.gameserver.enums.NpcRace;
 import com.l2jserver.gameserver.model.L2DropCategory;
 import com.l2jserver.gameserver.model.L2DropData;
 import com.l2jserver.gameserver.model.L2MinionData;
@@ -63,7 +65,7 @@ public final class L2NpcTemplate extends L2CharTemplate implements IIdentifiable
 	private int _lHand;
 	private int _enchantEffect;
 	
-	private Race _race = Race.NONE;
+	private NpcRace _race = NpcRace.NONE;
 	private String _clientClass;
 	
 	private int _dropHerbGroup;
@@ -88,63 +90,6 @@ public final class L2NpcTemplate extends L2CharTemplate implements IIdentifiable
 	
 	private StatsSet _parameters;
 	
-	public static enum AIType
-	{
-		FIGHTER,
-		ARCHER,
-		BALANCED,
-		MAGE,
-		HEALER,
-		CORPSE
-	}
-	
-	public static enum Race
-	{
-		UNDEAD,
-		MAGICCREATURE,
-		BEAST,
-		ANIMAL,
-		PLANT,
-		HUMANOID,
-		SPIRIT,
-		ANGEL,
-		DEMON,
-		DRAGON,
-		GIANT,
-		BUG,
-		FAIRIE,
-		HUMAN,
-		ELVE,
-		DARKELVE,
-		ORC,
-		DWARVE,
-		OTHER,
-		NONLIVING,
-		SIEGEWEAPON,
-		DEFENDINGARMY,
-		MERCENARIE,
-		UNKNOWN,
-		KAMAEL,
-		NONE
-	}
-	
-	private enum AISkillType
-	{
-		BUFF,
-		DEBUFF,
-		NEGATIVE,
-		ATTACK,
-		IMMOBILIZE,
-		HEAL,
-		RES,
-		COT,
-		UNIVERSAL,
-		LONG_RANGE,
-		SHORT_RANGE,
-		GENERAL,
-		SUICIDE
-	}
-	
 	/**
 	 * Constructor of L2Character.
 	 * @param set The StatsSet object to transfer data to the method
@@ -695,7 +640,7 @@ public final class L2NpcTemplate extends L2CharTemplate implements IIdentifiable
 	/**
 	 * @return the NPC race.
 	 */
-	public Race getRace()
+	public NpcRace getRace()
 	{
 		return _race;
 	}
@@ -835,7 +780,7 @@ public final class L2NpcTemplate extends L2CharTemplate implements IIdentifiable
 	 */
 	public boolean isUndead()
 	{
-		return _race == Race.UNDEAD;
+		return _race == NpcRace.UNDEAD;
 	}
 	
 	public void setAIData(L2NpcAIData aiData)
@@ -848,82 +793,82 @@ public final class L2NpcTemplate extends L2CharTemplate implements IIdentifiable
 		switch (raceId)
 		{
 			case 1:
-				_race = Race.UNDEAD;
+				_race = NpcRace.UNDEAD;
 				break;
 			case 2:
-				_race = Race.MAGICCREATURE;
+				_race = NpcRace.MAGICCREATURE;
 				break;
 			case 3:
-				_race = Race.BEAST;
+				_race = NpcRace.BEAST;
 				break;
 			case 4:
-				_race = Race.ANIMAL;
+				_race = NpcRace.ANIMAL;
 				break;
 			case 5:
-				_race = Race.PLANT;
+				_race = NpcRace.PLANT;
 				break;
 			case 6:
-				_race = Race.HUMANOID;
+				_race = NpcRace.HUMANOID;
 				break;
 			case 7:
-				_race = Race.SPIRIT;
+				_race = NpcRace.SPIRIT;
 				break;
 			case 8:
-				_race = Race.ANGEL;
+				_race = NpcRace.ANGEL;
 				break;
 			case 9:
-				_race = Race.DEMON;
+				_race = NpcRace.DEMON;
 				break;
 			case 10:
-				_race = Race.DRAGON;
+				_race = NpcRace.DRAGON;
 				break;
 			case 11:
-				_race = Race.GIANT;
+				_race = NpcRace.GIANT;
 				break;
 			case 12:
-				_race = Race.BUG;
+				_race = NpcRace.BUG;
 				break;
 			case 13:
-				_race = Race.FAIRIE;
+				_race = NpcRace.FAIRIE;
 				break;
 			case 14:
-				_race = Race.HUMAN;
+				_race = NpcRace.HUMAN;
 				break;
 			case 15:
-				_race = Race.ELVE;
+				_race = NpcRace.ELVE;
 				break;
 			case 16:
-				_race = Race.DARKELVE;
+				_race = NpcRace.DARKELVE;
 				break;
 			case 17:
-				_race = Race.ORC;
+				_race = NpcRace.ORC;
 				break;
 			case 18:
-				_race = Race.DWARVE;
+				_race = NpcRace.DWARVE;
 				break;
 			case 19:
-				_race = Race.OTHER;
+				_race = NpcRace.OTHER;
 				break;
 			case 20:
-				_race = Race.NONLIVING;
+				_race = NpcRace.NONLIVING;
 				break;
 			case 21:
-				_race = Race.SIEGEWEAPON;
+				_race = NpcRace.SIEGEWEAPON;
 				break;
 			case 22:
-				_race = Race.DEFENDINGARMY;
+				_race = NpcRace.DEFENDINGARMY;
 				break;
 			case 23:
-				_race = Race.MERCENARIE;
+				_race = NpcRace.MERCENARIE;
 				break;
 			case 24:
-				_race = Race.UNKNOWN;
+				_race = NpcRace.UNKNOWN;
 				break;
 			case 25:
-				_race = Race.KAMAEL;
+				_race = NpcRace.KAMAEL;
 				break;
 			default:
-				_race = Race.NONE;
+				_race = NpcRace.NONE;
 				break;
 		}
 	}

+ 2 - 2
L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/templates/L2PcTemplate.java

@@ -24,10 +24,10 @@ import java.util.Map;
 
 import com.l2jserver.gameserver.datatables.ExperienceTable;
 import com.l2jserver.gameserver.datatables.InitialEquipmentData;
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.model.Location;
 import com.l2jserver.gameserver.model.StatsSet;
 import com.l2jserver.gameserver.model.base.ClassId;
-import com.l2jserver.gameserver.model.base.Race;
 import com.l2jserver.gameserver.model.itemcontainer.Inventory;
 import com.l2jserver.gameserver.model.items.PcItemTemplate;
 import com.l2jserver.util.Rnd;
@@ -102,7 +102,7 @@ public class L2PcTemplate extends L2CharTemplate
 	/**
 	 * @return the template race.
 	 */
-	public Race getRace()
+	public PcRace getRace()
 	{
 		return _classId.getRace();
 	}

+ 121 - 120
L2J_Server_BETA/java/com/l2jserver/gameserver/model/base/ClassId.java

@@ -18,6 +18,7 @@
  */
 package com.l2jserver.gameserver.model.base;
 
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.model.interfaces.IIdentifiable;
 
 /**
@@ -33,73 +34,73 @@ import com.l2jserver.gameserver.model.interfaces.IIdentifiable;
  */
 public enum ClassId implements IIdentifiable
 {
-	fighter(0x00, false, Race.Human, null),
-	
-	warrior(0x01, false, Race.Human, fighter),
-	gladiator(0x02, false, Race.Human, warrior),
-	warlord(0x03, false, Race.Human, warrior),
-	knight(0x04, false, Race.Human, fighter),
-	paladin(0x05, false, Race.Human, knight),
-	darkAvenger(0x06, false, Race.Human, knight),
-	rogue(0x07, false, Race.Human, fighter),
-	treasureHunter(0x08, false, Race.Human, rogue),
-	hawkeye(0x09, false, Race.Human, rogue),
-	
-	mage(0x0a, true, Race.Human, null),
-	wizard(0x0b, true, Race.Human, mage),
-	sorceror(0x0c, true, Race.Human, wizard),
-	necromancer(0x0d, true, Race.Human, wizard),
-	warlock(0x0e, true, true, Race.Human, wizard),
-	cleric(0x0f, true, Race.Human, mage),
-	bishop(0x10, true, Race.Human, cleric),
-	prophet(0x11, true, Race.Human, cleric),
-	
-	elvenFighter(0x12, false, Race.Elf, null),
-	elvenKnight(0x13, false, Race.Elf, elvenFighter),
-	templeKnight(0x14, false, Race.Elf, elvenKnight),
-	swordSinger(0x15, false, Race.Elf, elvenKnight),
-	elvenScout(0x16, false, Race.Elf, elvenFighter),
-	plainsWalker(0x17, false, Race.Elf, elvenScout),
-	silverRanger(0x18, false, Race.Elf, elvenScout),
-	
-	elvenMage(0x19, true, Race.Elf, null),
-	elvenWizard(0x1a, true, Race.Elf, elvenMage),
-	spellsinger(0x1b, true, Race.Elf, elvenWizard),
-	elementalSummoner(0x1c, true, true, Race.Elf, elvenWizard),
-	oracle(0x1d, true, Race.Elf, elvenMage),
-	elder(0x1e, true, Race.Elf, oracle),
-	
-	darkFighter(0x1f, false, Race.DarkElf, null),
-	palusKnight(0x20, false, Race.DarkElf, darkFighter),
-	shillienKnight(0x21, false, Race.DarkElf, palusKnight),
-	bladedancer(0x22, false, Race.DarkElf, palusKnight),
-	assassin(0x23, false, Race.DarkElf, darkFighter),
-	abyssWalker(0x24, false, Race.DarkElf, assassin),
-	phantomRanger(0x25, false, Race.DarkElf, assassin),
-	
-	darkMage(0x26, true, Race.DarkElf, null),
-	darkWizard(0x27, true, Race.DarkElf, darkMage),
-	spellhowler(0x28, true, Race.DarkElf, darkWizard),
-	phantomSummoner(0x29, true, true, Race.DarkElf, darkWizard),
-	shillienOracle(0x2a, true, Race.DarkElf, darkMage),
-	shillenElder(0x2b, true, Race.DarkElf, shillienOracle),
-	
-	orcFighter(0x2c, false, Race.Orc, null),
-	orcRaider(0x2d, false, Race.Orc, orcFighter),
-	destroyer(0x2e, false, Race.Orc, orcRaider),
-	orcMonk(0x2f, false, Race.Orc, orcFighter),
-	tyrant(0x30, false, Race.Orc, orcMonk),
-	
-	orcMage(0x31, false, Race.Orc, null),
-	orcShaman(0x32, true, Race.Orc, orcMage),
-	overlord(0x33, true, Race.Orc, orcShaman),
-	warcryer(0x34, true, Race.Orc, orcShaman),
-	
-	dwarvenFighter(0x35, false, Race.Dwarf, null),
-	scavenger(0x36, false, Race.Dwarf, dwarvenFighter),
-	bountyHunter(0x37, false, Race.Dwarf, scavenger),
-	artisan(0x38, false, Race.Dwarf, dwarvenFighter),
-	warsmith(0x39, false, Race.Dwarf, artisan),
+	fighter(0x00, false, PcRace.Human, null),
+	
+	warrior(0x01, false, PcRace.Human, fighter),
+	gladiator(0x02, false, PcRace.Human, warrior),
+	warlord(0x03, false, PcRace.Human, warrior),
+	knight(0x04, false, PcRace.Human, fighter),
+	paladin(0x05, false, PcRace.Human, knight),
+	darkAvenger(0x06, false, PcRace.Human, knight),
+	rogue(0x07, false, PcRace.Human, fighter),
+	treasureHunter(0x08, false, PcRace.Human, rogue),
+	hawkeye(0x09, false, PcRace.Human, rogue),
+	
+	mage(0x0a, true, PcRace.Human, null),
+	wizard(0x0b, true, PcRace.Human, mage),
+	sorceror(0x0c, true, PcRace.Human, wizard),
+	necromancer(0x0d, true, PcRace.Human, wizard),
+	warlock(0x0e, true, true, PcRace.Human, wizard),
+	cleric(0x0f, true, PcRace.Human, mage),
+	bishop(0x10, true, PcRace.Human, cleric),
+	prophet(0x11, true, PcRace.Human, cleric),
+	
+	elvenFighter(0x12, false, PcRace.Elf, null),
+	elvenKnight(0x13, false, PcRace.Elf, elvenFighter),
+	templeKnight(0x14, false, PcRace.Elf, elvenKnight),
+	swordSinger(0x15, false, PcRace.Elf, elvenKnight),
+	elvenScout(0x16, false, PcRace.Elf, elvenFighter),
+	plainsWalker(0x17, false, PcRace.Elf, elvenScout),
+	silverRanger(0x18, false, PcRace.Elf, elvenScout),
+	
+	elvenMage(0x19, true, PcRace.Elf, null),
+	elvenWizard(0x1a, true, PcRace.Elf, elvenMage),
+	spellsinger(0x1b, true, PcRace.Elf, elvenWizard),
+	elementalSummoner(0x1c, true, true, PcRace.Elf, elvenWizard),
+	oracle(0x1d, true, PcRace.Elf, elvenMage),
+	elder(0x1e, true, PcRace.Elf, oracle),
+	
+	darkFighter(0x1f, false, PcRace.DarkElf, null),
+	palusKnight(0x20, false, PcRace.DarkElf, darkFighter),
+	shillienKnight(0x21, false, PcRace.DarkElf, palusKnight),
+	bladedancer(0x22, false, PcRace.DarkElf, palusKnight),
+	assassin(0x23, false, PcRace.DarkElf, darkFighter),
+	abyssWalker(0x24, false, PcRace.DarkElf, assassin),
+	phantomRanger(0x25, false, PcRace.DarkElf, assassin),
+	
+	darkMage(0x26, true, PcRace.DarkElf, null),
+	darkWizard(0x27, true, PcRace.DarkElf, darkMage),
+	spellhowler(0x28, true, PcRace.DarkElf, darkWizard),
+	phantomSummoner(0x29, true, true, PcRace.DarkElf, darkWizard),
+	shillienOracle(0x2a, true, PcRace.DarkElf, darkMage),
+	shillenElder(0x2b, true, PcRace.DarkElf, shillienOracle),
+	
+	orcFighter(0x2c, false, PcRace.Orc, null),
+	orcRaider(0x2d, false, PcRace.Orc, orcFighter),
+	destroyer(0x2e, false, PcRace.Orc, orcRaider),
+	orcMonk(0x2f, false, PcRace.Orc, orcFighter),
+	tyrant(0x30, false, PcRace.Orc, orcMonk),
+	
+	orcMage(0x31, false, PcRace.Orc, null),
+	orcShaman(0x32, true, PcRace.Orc, orcMage),
+	overlord(0x33, true, PcRace.Orc, orcShaman),
+	warcryer(0x34, true, PcRace.Orc, orcShaman),
+	
+	dwarvenFighter(0x35, false, PcRace.Dwarf, null),
+	scavenger(0x36, false, PcRace.Dwarf, dwarvenFighter),
+	bountyHunter(0x37, false, PcRace.Dwarf, scavenger),
+	artisan(0x38, false, PcRace.Dwarf, dwarvenFighter),
+	warsmith(0x39, false, PcRace.Dwarf, artisan),
 	
 	/*
 	 * Dummy Entries (id's already in decimal format) btw FU NCSoft for the amount of work you put me through to do this!! <START>
@@ -141,61 +142,61 @@ public enum ClassId implements IIdentifiable
 	/*
 	 * Now the bad boys! new class ids :)) (3rd classes)
 	 */
-	duelist(0x58, false, Race.Human, gladiator),
-	dreadnought(0x59, false, Race.Human, warlord),
-	phoenixKnight(0x5a, false, Race.Human, paladin),
-	hellKnight(0x5b, false, Race.Human, darkAvenger),
-	sagittarius(0x5c, false, Race.Human, hawkeye),
-	adventurer(0x5d, false, Race.Human, treasureHunter),
-	archmage(0x5e, true, Race.Human, sorceror),
-	soultaker(0x5f, true, Race.Human, necromancer),
-	arcanaLord(0x60, true, true, Race.Human, warlock),
-	cardinal(0x61, true, Race.Human, bishop),
-	hierophant(0x62, true, Race.Human, prophet),
-	
-	evaTemplar(0x63, false, Race.Elf, templeKnight),
-	swordMuse(0x64, false, Race.Elf, swordSinger),
-	windRider(0x65, false, Race.Elf, plainsWalker),
-	moonlightSentinel(0x66, false, Race.Elf, silverRanger),
-	mysticMuse(0x67, true, Race.Elf, spellsinger),
-	elementalMaster(0x68, true, true, Race.Elf, elementalSummoner),
-	evaSaint(0x69, true, Race.Elf, elder),
-	
-	shillienTemplar(0x6a, false, Race.DarkElf, shillienKnight),
-	spectralDancer(0x6b, false, Race.DarkElf, bladedancer),
-	ghostHunter(0x6c, false, Race.DarkElf, abyssWalker),
-	ghostSentinel(0x6d, false, Race.DarkElf, phantomRanger),
-	stormScreamer(0x6e, true, Race.DarkElf, spellhowler),
-	spectralMaster(0x6f, true, true, Race.DarkElf, phantomSummoner),
-	shillienSaint(0x70, true, Race.DarkElf, shillenElder),
-	
-	titan(0x71, false, Race.Orc, destroyer),
-	grandKhavatari(0x72, false, Race.Orc, tyrant),
-	dominator(0x73, true, Race.Orc, overlord),
-	doomcryer(0x74, true, Race.Orc, warcryer),
-	
-	fortuneSeeker(0x75, false, Race.Dwarf, bountyHunter),
-	maestro(0x76, false, Race.Dwarf, warsmith),
+	duelist(0x58, false, PcRace.Human, gladiator),
+	dreadnought(0x59, false, PcRace.Human, warlord),
+	phoenixKnight(0x5a, false, PcRace.Human, paladin),
+	hellKnight(0x5b, false, PcRace.Human, darkAvenger),
+	sagittarius(0x5c, false, PcRace.Human, hawkeye),
+	adventurer(0x5d, false, PcRace.Human, treasureHunter),
+	archmage(0x5e, true, PcRace.Human, sorceror),
+	soultaker(0x5f, true, PcRace.Human, necromancer),
+	arcanaLord(0x60, true, true, PcRace.Human, warlock),
+	cardinal(0x61, true, PcRace.Human, bishop),
+	hierophant(0x62, true, PcRace.Human, prophet),
+	
+	evaTemplar(0x63, false, PcRace.Elf, templeKnight),
+	swordMuse(0x64, false, PcRace.Elf, swordSinger),
+	windRider(0x65, false, PcRace.Elf, plainsWalker),
+	moonlightSentinel(0x66, false, PcRace.Elf, silverRanger),
+	mysticMuse(0x67, true, PcRace.Elf, spellsinger),
+	elementalMaster(0x68, true, true, PcRace.Elf, elementalSummoner),
+	evaSaint(0x69, true, PcRace.Elf, elder),
+	
+	shillienTemplar(0x6a, false, PcRace.DarkElf, shillienKnight),
+	spectralDancer(0x6b, false, PcRace.DarkElf, bladedancer),
+	ghostHunter(0x6c, false, PcRace.DarkElf, abyssWalker),
+	ghostSentinel(0x6d, false, PcRace.DarkElf, phantomRanger),
+	stormScreamer(0x6e, true, PcRace.DarkElf, spellhowler),
+	spectralMaster(0x6f, true, true, PcRace.DarkElf, phantomSummoner),
+	shillienSaint(0x70, true, PcRace.DarkElf, shillenElder),
+	
+	titan(0x71, false, PcRace.Orc, destroyer),
+	grandKhavatari(0x72, false, PcRace.Orc, tyrant),
+	dominator(0x73, true, PcRace.Orc, overlord),
+	doomcryer(0x74, true, PcRace.Orc, warcryer),
+	
+	fortuneSeeker(0x75, false, PcRace.Dwarf, bountyHunter),
+	maestro(0x76, false, PcRace.Dwarf, warsmith),
 	
 	dummyEntry31(0x77, false, null, null),
 	dummyEntry32(0x78, false, null, null),
 	dummyEntry33(0x79, false, null, null),
 	dummyEntry34(0x7a, false, null, null),
 	
-	maleSoldier(0x7b, false, Race.Kamael, null),
-	femaleSoldier(0x7C, false, Race.Kamael, null),
-	trooper(0x7D, false, Race.Kamael, maleSoldier),
-	warder(0x7E, false, Race.Kamael, femaleSoldier),
-	berserker(0x7F, false, Race.Kamael, trooper),
-	maleSoulbreaker(0x80, false, Race.Kamael, trooper),
-	femaleSoulbreaker(0x81, false, Race.Kamael, warder),
-	arbalester(0x82, false, Race.Kamael, warder),
-	doombringer(0x83, false, Race.Kamael, berserker),
-	maleSoulhound(0x84, false, Race.Kamael, maleSoulbreaker),
-	femaleSoulhound(0x85, false, Race.Kamael, femaleSoulbreaker),
-	trickster(0x86, false, Race.Kamael, arbalester),
-	inspector(0x87, false, Race.Kamael, warder), // DS: yes, both male/female inspectors use skills from warder
-	judicator(0x88, false, Race.Kamael, inspector);
+	maleSoldier(0x7b, false, PcRace.Kamael, null),
+	femaleSoldier(0x7C, false, PcRace.Kamael, null),
+	trooper(0x7D, false, PcRace.Kamael, maleSoldier),
+	warder(0x7E, false, PcRace.Kamael, femaleSoldier),
+	berserker(0x7F, false, PcRace.Kamael, trooper),
+	maleSoulbreaker(0x80, false, PcRace.Kamael, trooper),
+	femaleSoulbreaker(0x81, false, PcRace.Kamael, warder),
+	arbalester(0x82, false, PcRace.Kamael, warder),
+	doombringer(0x83, false, PcRace.Kamael, berserker),
+	maleSoulhound(0x84, false, PcRace.Kamael, maleSoulbreaker),
+	femaleSoulhound(0x85, false, PcRace.Kamael, femaleSoulbreaker),
+	trickster(0x86, false, PcRace.Kamael, arbalester),
+	inspector(0x87, false, PcRace.Kamael, warder), // DS: yes, both male/female inspectors use skills from warder
+	judicator(0x88, false, PcRace.Kamael, inspector);
 	
 	/** The Identifier of the Class */
 	private final int _id;
@@ -207,7 +208,7 @@ public enum ClassId implements IIdentifiable
 	private final boolean _isSummoner;
 	
 	/** The Race object of the class */
-	private final Race _race;
+	private final PcRace _race;
 	
 	/** The parent ClassId or null if this class is a root */
 	private final ClassId _parent;
@@ -219,7 +220,7 @@ public enum ClassId implements IIdentifiable
 	 * @param pRace the race related to the class.
 	 * @param pParent the parent class Id.
 	 */
-	private ClassId(int pId, boolean pIsMage, Race pRace, ClassId pParent)
+	private ClassId(int pId, boolean pIsMage, PcRace pRace, ClassId pParent)
 	{
 		_id = pId;
 		_isMage = pIsMage;
@@ -236,7 +237,7 @@ public enum ClassId implements IIdentifiable
 	 * @param pRace the race related to the class.
 	 * @param pParent the parent class Id.
 	 */
-	private ClassId(int pId, boolean pIsMage, boolean pIsSummoner, Race pRace, ClassId pParent)
+	private ClassId(int pId, boolean pIsMage, boolean pIsSummoner, PcRace pRace, ClassId pParent)
 	{
 		_id = pId;
 		_isMage = pIsMage;
@@ -274,7 +275,7 @@ public enum ClassId implements IIdentifiable
 	/**
 	 * @return the Race object of the class.
 	 */
-	public final Race getRace()
+	public final PcRace getRace()
 	{
 		return _race;
 	}

+ 11 - 10
L2J_Server_BETA/java/com/l2jserver/gameserver/model/base/PlayerClass.java

@@ -18,6 +18,12 @@
  */
 package com.l2jserver.gameserver.model.base;
 
+import static com.l2jserver.gameserver.enums.PcRace.DarkElf;
+import static com.l2jserver.gameserver.enums.PcRace.Dwarf;
+import static com.l2jserver.gameserver.enums.PcRace.Elf;
+import static com.l2jserver.gameserver.enums.PcRace.Human;
+import static com.l2jserver.gameserver.enums.PcRace.Kamael;
+import static com.l2jserver.gameserver.enums.PcRace.Orc;
 import static com.l2jserver.gameserver.model.base.ClassLevel.First;
 import static com.l2jserver.gameserver.model.base.ClassLevel.Fourth;
 import static com.l2jserver.gameserver.model.base.ClassLevel.Second;
@@ -25,18 +31,13 @@ import static com.l2jserver.gameserver.model.base.ClassLevel.Third;
 import static com.l2jserver.gameserver.model.base.ClassType.Fighter;
 import static com.l2jserver.gameserver.model.base.ClassType.Mystic;
 import static com.l2jserver.gameserver.model.base.ClassType.Priest;
-import static com.l2jserver.gameserver.model.base.Race.DarkElf;
-import static com.l2jserver.gameserver.model.base.Race.Dwarf;
-import static com.l2jserver.gameserver.model.base.Race.Elf;
-import static com.l2jserver.gameserver.model.base.Race.Human;
-import static com.l2jserver.gameserver.model.base.Race.Kamael;
-import static com.l2jserver.gameserver.model.base.Race.Orc;
 
 import java.util.EnumMap;
 import java.util.EnumSet;
 import java.util.Set;
 
 import com.l2jserver.Config;
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
 
 /**
@@ -196,7 +197,7 @@ public enum PlayerClass
 	inspector(Kamael, Fighter, Third),
 	judicator(Kamael, Fighter, Fourth);
 	
-	private Race _race;
+	private PcRace _race;
 	private ClassLevel _level;
 	private ClassType _type;
 	
@@ -240,7 +241,7 @@ public enum PlayerClass
 		subclassSetMap.put(Spellhowler, subclasseSet5);
 	}
 	
-	PlayerClass(Race pRace, ClassType pType, ClassLevel pLevel)
+	PlayerClass(PcRace pRace, ClassType pType, ClassLevel pLevel)
 	{
 		_race = pRace;
 		_level = pLevel;
@@ -306,7 +307,7 @@ public enum PlayerClass
 		return subclasses;
 	}
 	
-	public static final EnumSet<PlayerClass> getSet(Race race, ClassLevel level)
+	public static final EnumSet<PlayerClass> getSet(PcRace race, ClassLevel level)
 	{
 		EnumSet<PlayerClass> allOf = EnumSet.noneOf(PlayerClass.class);
 		
@@ -323,7 +324,7 @@ public enum PlayerClass
 		return allOf;
 	}
 	
-	public final boolean isOfRace(Race pRace)
+	public final boolean isOfRace(PcRace pRace)
 	{
 		return _race == pRace;
 	}

+ 3 - 3
L2J_Server_BETA/java/com/l2jserver/gameserver/model/conditions/ConditionPlayerRace.java

@@ -18,7 +18,7 @@
  */
 package com.l2jserver.gameserver.model.conditions;
 
-import com.l2jserver.gameserver.model.base.Race;
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.model.stats.Env;
 import com.l2jserver.gameserver.util.Util;
 
@@ -28,13 +28,13 @@ import com.l2jserver.gameserver.util.Util;
  */
 public class ConditionPlayerRace extends Condition
 {
-	private final Race[] _races;
+	private final PcRace[] _races;
 	
 	/**
 	 * Instantiates a new condition player race.
 	 * @param races the list containing the allowed races.
 	 */
-	public ConditionPlayerRace(Race[] races)
+	public ConditionPlayerRace(PcRace[] races)
 	{
 		_races = races;
 	}

+ 3 - 3
L2J_Server_BETA/java/com/l2jserver/gameserver/model/conditions/ConditionTargetRace.java

@@ -18,8 +18,8 @@
  */
 package com.l2jserver.gameserver.model.conditions;
 
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
-import com.l2jserver.gameserver.model.base.Race;
 import com.l2jserver.gameserver.model.stats.Env;
 import com.l2jserver.gameserver.util.Util;
 
@@ -29,13 +29,13 @@ import com.l2jserver.gameserver.util.Util;
  */
 public class ConditionTargetRace extends Condition
 {
-	private final Race[] _races;
+	private final PcRace[] _races;
 	
 	/**
 	 * Instantiates a new condition target race.
 	 * @param races the list containing the allowed races.
 	 */
-	public ConditionTargetRace(Race[] races)
+	public ConditionTargetRace(PcRace[] races)
 	{
 		_races = races;
 	}

+ 4 - 4
L2J_Server_BETA/java/com/l2jserver/gameserver/model/zone/type/L2RespawnZone.java

@@ -22,9 +22,9 @@ import java.util.Map;
 
 import javolution.util.FastMap;
 
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.model.actor.L2Character;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
-import com.l2jserver.gameserver.model.base.Race;
 import com.l2jserver.gameserver.model.zone.L2ZoneType;
 
 /**
@@ -32,7 +32,7 @@ import com.l2jserver.gameserver.model.zone.L2ZoneType;
  */
 public class L2RespawnZone extends L2ZoneType
 {
-	private final Map<Race, String> _raceRespawnPoint = new FastMap<>();
+	private final Map<PcRace, String> _raceRespawnPoint = new FastMap<>();
 	
 	public L2RespawnZone(int id)
 	{
@@ -61,10 +61,10 @@ public class L2RespawnZone extends L2ZoneType
 	
 	public void addRaceRespawnPoint(String race, String point)
 	{
-		_raceRespawnPoint.put(Race.valueOf(race), point);
+		_raceRespawnPoint.put(PcRace.valueOf(race), point);
 	}
 	
-	public Map<Race, String> getAllRespawnPoints()
+	public Map<PcRace, String> getAllRespawnPoints()
 	{
 		return _raceRespawnPoint;
 	}

+ 2 - 2
L2J_Server_BETA/java/com/l2jserver/gameserver/network/clientpackets/RequestCrystallizeItem.java

@@ -19,9 +19,9 @@
 package com.l2jserver.gameserver.network.clientpackets;
 
 import com.l2jserver.Config;
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.model.L2World;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
-import com.l2jserver.gameserver.model.base.Race;
 import com.l2jserver.gameserver.model.itemcontainer.PcInventory;
 import com.l2jserver.gameserver.model.items.L2Item;
 import com.l2jserver.gameserver.model.items.instance.L2ItemInstance;
@@ -84,7 +84,7 @@ public final class RequestCrystallizeItem extends L2GameClientPacket
 		{
 			activeChar.sendPacket(SystemMessageId.CRYSTALLIZE_LEVEL_TOO_LOW);
 			activeChar.sendPacket(ActionFailed.STATIC_PACKET);
-			if ((activeChar.getRace() != Race.Dwarf) && (activeChar.getClassId().ordinal() != 117) && (activeChar.getClassId().ordinal() != 55))
+			if ((activeChar.getRace() != PcRace.Dwarf) && (activeChar.getClassId().ordinal() != 117) && (activeChar.getClassId().ordinal() != 55))
 			{
 				_log.info("Player " + activeChar.getClient() + " used crystalize with classid: " + activeChar.getClassId().ordinal());
 			}

+ 2 - 2
L2J_Server_BETA/java/com/l2jserver/gameserver/network/clientpackets/UseItem.java

@@ -27,12 +27,12 @@ import com.l2jserver.gameserver.ai.CtrlEvent;
 import com.l2jserver.gameserver.ai.CtrlIntention;
 import com.l2jserver.gameserver.ai.NextAction;
 import com.l2jserver.gameserver.ai.NextAction.NextActionCallback;
+import com.l2jserver.gameserver.enums.PcRace;
 import com.l2jserver.gameserver.handler.IItemHandler;
 import com.l2jserver.gameserver.handler.ItemHandler;
 import com.l2jserver.gameserver.instancemanager.FortSiegeManager;
 import com.l2jserver.gameserver.model.PcCondOverride;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
-import com.l2jserver.gameserver.model.base.Race;
 import com.l2jserver.gameserver.model.effects.L2EffectType;
 import com.l2jserver.gameserver.model.holders.SkillHolder;
 import com.l2jserver.gameserver.model.itemcontainer.Inventory;
@@ -295,7 +295,7 @@ public final class UseItem extends L2GameClientPacket
 				case L2Item.SLOT_FULL_ARMOR:
 				case L2Item.SLOT_LEGS:
 				{
-					if ((activeChar.getRace() == Race.Kamael) && ((item.getItem().getItemType() == L2ArmorType.HEAVY) || (item.getItem().getItemType() == L2ArmorType.MAGIC)))
+					if ((activeChar.getRace() == PcRace.Kamael) && ((item.getItem().getItemType() == L2ArmorType.HEAVY) || (item.getItem().getItemType() == L2ArmorType.MAGIC)))
 					{
 						activeChar.sendPacket(SystemMessageId.CANNOT_EQUIP_ITEM_DUE_TO_BAD_CONDITION);
 						return;