Jump to content

Recommended Posts

Posted

Hello. This is my first share after long ages  I was posting my codes here as Leki. 

This code allows players to add/change any sub-classes (except Maestro & Overlord) at any kind of master, Magic/Fighter and and race.

### Eclipse Workspace Patch 1.0
#P L2jFrozen_GameServer
Index: config/head/altsettings.properties
===================================================================
--- config/head/altsettings.properties (revision 1118)
+++ config/head/altsettings.properties (working copy)
@@ -131,8 +131,11 @@
 AltGameSkillLearn = False
 
# Allow player sub-class addition without checking for unique quest items.
AltSubClassWithoutQuests = True
 
+#Class Master gives ANY sub-class.
+AllowAllSubclassesChange = False
+
 # Restore Buffs On Subclass Change.
 # IMPORTANT: It's better put it False to avoid exploit
 AltRestoreEffectOnSub = False
 
Index: head-src/com/l2jfrozen/Config.java
===================================================================
--- head-src/com/l2jfrozen/Config.java (revision 1118)
+++ head-src/com/l2jfrozen/Config.java (working copy)
@@ -1038,6 +1038,7 @@
  public static boolean ALT_GAME_FREE_TELEPORT;
  public static boolean ALT_RECOMMEND;
  public static boolean ALT_GAME_SUBCLASS_WITHOUT_QUESTS;
+ public static boolean ALL_SUBCLASS;
  public static boolean ALT_RESTORE_EFFECTS_ON_SUBCLASS_CHANGE;
  public static boolean ALT_GAME_VIEWNPC;
  public static int ALT_CLAN_MEMBERS_FOR_WAR;
@@ -1208,6 +1209,7 @@
  ALT_GAME_FREE_TELEPORT = Boolean.parseBoolean(altSettings.getProperty("AltFreeTeleporting", "False"));
  ALT_RECOMMEND = Boolean.parseBoolean(altSettings.getProperty("AltRecommend", "False"));
  ALT_GAME_SUBCLASS_WITHOUT_QUESTS = Boolean.parseBoolean(altSettings.getProperty("AltSubClassWithoutQuests", "False"));
+ ALL_SUBCLASS = Boolean.parseBoolean(altSettings.getProperty("AllowAllSubclassesChange", "False"));
  ALT_RESTORE_EFFECTS_ON_SUBCLASS_CHANGE = Boolean.parseBoolean(altSettings.getProperty("AltRestoreEffectOnSub", "False"));
  ALT_GAME_VIEWNPC = Boolean.parseBoolean(altSettings.getProperty("AltGameViewNpc", "False"));
  ALT_GAME_NEW_CHAR_ALWAYS_IS_NEWBIE = Boolean.parseBoolean(altSettings.getProperty("AltNewCharAlwaysIsNewbie", "False"));
Index: head-src/com/l2jfrozen/gameserver/model/actor/instance/L2VillageMasterInstance.java
===================================================================
--- head-src/com/l2jfrozen/gameserver/model/actor/instance/L2VillageMasterInstance.java (revision 1118)
+++ head-src/com/l2jfrozen/gameserver/model/actor/instance/L2VillageMasterInstance.java (working copy)
@@ -1086,7 +1086,8 @@
  availSubs.remove(PlayerClass.values()[availSub.ordinal()]);
  }
  }
+ if(Config.ALL_SUBCLASS)
+ {
if (npcRace == PlayerRace.Human || npcRace == PlayerRace.LightElf)
{
// If the master is human or light elf, ensure that fighter-type
// masters only teach fighter classes, and priest-type masters
// only teach priest classes etc.
if (!availSub.isOfType(npcTeachType))
{
availSubs.remove(availSub);
}
else if (!availSub.isOfRace(PlayerRace.Human) && !availSub.isOfRace(PlayerRace.LightElf))
{
availSubs.remove(availSub);
}
}
else
{
// If the master is not human and not light elf,
// then remove any classes not of the same race as the master.
if (npcRace != PlayerRace.Human && npcRace != PlayerRace.LightElf && !availSub.isOfRace(npcRace))
{
availSubs.remove(availSub);
}
}
+ }
  }
  currClass = null;
  return availSubs;
 
Screens:
 
 

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

This community uses essential cookies to function properly. Non-essential cookies and third-party services are used only with your consent. Read our Privacy Policy and We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue..