private Set<PlayerClass> getAvailableSubClasses(L2Player player, boolean isNew)
{
final int charClassId = player.getBaseClassId();
final Race npcRace = getVillageMasterRace();
final ClassType npcTeachType = getVillageMasterTeachType();
PlayerClass currClass = PlayerClass.values()[charClassId];// .valueOf(charClassName);
/**
* If the race of your main class is Elf or Dark Elf, you may not select
* each class as a subclass to the other class, and you may not select
* Overlord and Warsmith class as a subclass.
*
* You may not select a similar class as the subclass. The occupations
* classified as similar classes are as follows:
*
* Treasure Hunter, Plainswalker and Abyss Walker Hawkeye, Silver Ranger
* and Phantom Ranger Paladin, Dark Avenger, Temple Knight and Shillien
* Knight Warlocks, Elemental Summoner and Phantom Summoner Elder and
* Shillien Elder Swordsinger and Bladedancer Sorcerer, Spellsinger and
* Spellhowler
*
* Kamael могут брать только сабы Kamael
* Другие классы не могут брать сабы Kamael
*
*/
Set<PlayerClass> availSubs = currClass.getAvailableSubclasses();
if(availSubs == null)
{
return null;
}
// Из списка сабов удаляем мейн класс игрока