Перейти к содержанию
Авторизация  
Arrow

SubClass

Рекомендуемые сообщения

Вот хотел сделать чтоб можно было брать любой саб без разницы какая у вас основа (кроме сабкласа на овера) 

типа если я основа светлый ельф то по дефолту я не могу взять саб на фр сх 

меня вот человек Masone сказал что нужно ковырять  вот тут 

 

if ((subClassId >= 88 && subClassId <= 118) || (subClassId >= 131 && subClassId <= 134) || subClassId == 136)

 

но вот я не очень понимаю что тут сделать с 88 118 131 134 136 (на что их сменить что было правильно)

 

возможно кто то делал уже так и подскажет 

ит.су 

с меня +

Изменено пользователем Arrow

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Заходим в PlayerClass.java

ru.catssoftware.gameserver.model.model.base

Перед этим

public static final EnumSet<PlayerClass> getSet(Race race, ClassLevel level)
    {
        EnumSet<PlayerClass> allOf = EnumSet.noneOf(PlayerClass.class);

        for (PlayerClass playerClass : EnumSet.allOf(PlayerClass.class))
        {
            if (race == null || playerClass.isOfRace(race))
            {
                if (level == null || playerClass.isOfLevel(level))
                {
                    allOf.add(playerClass);
                }
            }
        }

        return allOf;
    }

Ставим это
 

    public final Set<PlayerClass> getAllSubclasses()
      {
        Set<PlayerClass> subclasses = null;
        if (this._level == ClassLevel.Third)
        {
          subclasses = EnumSet.copyOf(mainSubclassSet);
          subclasses.remove(this);
        }
        return subclasses;
      }

Находим L2VillageMasterInstance.java

ru.catssoftware.gameserver.model.actor.instance

Там находим

private final Set<PlayerClass> getAvailableSubClasses(L2PcInstance player)

После строк

final Race npcRace = getVillageMasterRace();
final ClassType npcTeachType = getVillageMasterTeachType();
        
Set<PlayerClass> availSubs = baseClass.getAvailableSubclasses(player);

Добавляем это

 if (Config.ALT_ANY_SUBCLASS)
        {
          availSubs = baseClass.getAllSubclasses();
        }
        else

Будет кричать на синтаксис, перед return availSubs; добавь }

 

 

 

Это мы кидаем в Config.java
 

Сначала
public static boolean ALT_ANY_SUBCLASS;

Затем
ALT_SUBCLASS_PHOENIX = Boolean.parseBoolean(altSettings.getProperty("AltSubClassPhoenix", "False"));

 В конфигах сам разберешься!

Если что не подойдет, сам подгонишь, писал на скорую руку за не имением много времени, можно сказать на пальцах объяснил.

 

Работоспособность не гарантирую!!!

Изменено пользователем Jumper
  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Заходим в PlayerClass.java

ru.catssoftware.gameserver.model.model.base

Перед этим

public static final EnumSet<PlayerClass> getSet(Race race, ClassLevel level)
    {
        EnumSet<PlayerClass> allOf = EnumSet.noneOf(PlayerClass.class);

        for (PlayerClass playerClass : EnumSet.allOf(PlayerClass.class))
        {
            if (race == null || playerClass.isOfRace(race))
            {
                if (level == null || playerClass.isOfLevel(level))
                {
                    allOf.add(playerClass);
                }
            }
        }

        return allOf;
    }

Ставим это

 

    public final Set<PlayerClass> getAllSubclasses()
      {
        Set<PlayerClass> subclasses = null;
        if (this._level == ClassLevel.Third)
        {
          subclasses = EnumSet.copyOf(mainSubclassSet);
          subclasses.remove(this);
        }
        return subclasses;
      }

Находим L2VillageMasterInstance.java

ru.catssoftware.gameserver.model.actor.instance

Там находим

private final Set<PlayerClass> getAvailableSubClasses(L2PcInstance player)

После строк

final Race npcRace = getVillageMasterRace();
final ClassType npcTeachType = getVillageMasterTeachType();
        
Set<PlayerClass> availSubs = baseClass.getAvailableSubclasses(player);

Добавляем это

 if (Config.ALT_ANY_SUBCLASS)
        {
          availSubs = baseClass.getAllSubclasses();
        }
        else

Будет кричать на синтаксис, перед return availSubs; добавь }

 

 

 

Это мы кидаем в Config.java

 

Сначала
public static boolean ALT_ANY_SUBCLASS;

Затем
ALT_SUBCLASS_PHOENIX = Boolean.parseBoolean(altSettings.getProperty("AltSubClassPhoenix", "False"));

 В конфигах сам разберешься!

Если что не подойдет, сам подгонишь, писал на скорую руку за не имением много времени, можно сказать на пальцах объяснил.

 

Работоспособность не гарантирую!!!

спс

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...