Skip to content

[Share-Java Code]Pop Up Window For Class Change

Featured Replies

Hello MaxCheaters

Twra den xreiazete na phgenete Town gia change class , ena pop up window 8a emfanizete sthn o8onh sas sta lvl 20/40/76 gia change class..

 

[b]Index: java/net/sf/l2j/gameserver/model/actor/instance/L2ClassMasterInstance.java
===================================================================
--- java/net/sf/l2j/gameserver/model/actor/instance/L2ClassMasterInstance.java  (revision 2705)
+++ java/net/sf/l2j/gameserver/model/actor/instance/L2ClassMasterInstance.java  (working copy)
@@ -18,9 +18,11 @@
import net.sf.l2j.Config;
import net.sf.l2j.gameserver.ai.CtrlIntention;
import net.sf.l2j.gameserver.datatables.CharTemplateTable;
+import net.sf.l2j.gameserver.datatables.NpcTable;
import net.sf.l2j.gameserver.model.base.ClassId;
import net.sf.l2j.gameserver.model.base.ClassLevel;
import net.sf.l2j.gameserver.model.base.PlayerClass;
+import net.sf.l2j.gameserver.model.L2World;
import net.sf.l2j.gameserver.model.quest.Quest;
import net.sf.l2j.gameserver.network.SystemMessageId;
import net.sf.l2j.gameserver.network.serverpackets.ActionFailed;
@@ -40,7 +42,11 @@
       //private static Logger _log = Logger.getLogger(L2ClassMasterInstance.class.getName());
       private static final int[] SECONDN_CLASS_IDS = {2,3,5,6,9,8,12,13,14,16,17,20,21,23,24,27,
                                                                                                       28,30,33,34,36,37,40,41,43,46,48,51,52,55,57};
-
+       public static L2ClassMasterInstance ClassMaster = new L2ClassMasterInstance(31228, NpcTable.getInstance().getTemplate(31228));
+       static
+       {
+               L2World.getInstance().storeObject(ClassMaster);
+       }
       /**
        * @param template
        */
@@ -52,8 +58,8 @@
       @Override
       public void onAction(L2PcInstance player)
       {
-               if (!canTarget(player)) return;
-
+               //if (!canTarget(player)) return;
+/*
               // Check if the L2PcInstance already target the L2NpcInstance
               if (getObjectId() != player.getTargetId())
               {
@@ -73,7 +79,7 @@
                               player.getAI().setIntention(CtrlIntention.AI_INTENTION_INTERACT, this);
                               return;
                       }
-
+*/
                       if (Config.DEBUG)
                               _log.fine("ClassMaster activated");

@@ -94,19 +100,16 @@
                                       jobLevel = 3;
                       }

-                       if (!Config.ALLOW_CLASS_MASTERS)
-                               jobLevel = 3;
-
                       if(player.isGM())
                       {
                               showChatWindowChooseClass(player);
                       }
-                       else if (((level >= 20 && jobLevel == 1 ) ||
-                               (level >= 40 && jobLevel == 2 )) && Config.ALLOW_CLASS_MASTERS)
+                       else if ((level >= 20 && jobLevel == 1 ) ||
+                               (level >= 40 && jobLevel == 2 ))
                       {
                               showChatWindow(player, classId.getId());
                       }
-                       else if (level >= 76 && Config.ALLOW_CLASS_MASTERS && classId.getId() < 88)
+                       else if (level >= 76 && classId.getId() < 88)
                       {
                               for (int i = 0; i < SECONDN_CLASS_IDS.length; i++)
                               {
@@ -126,7 +129,7 @@
                                       }
                               }
                       }
-            else if (level >= 76 && Config.ALLOW_CLASS_MASTERS && ((classId.getId() >= 123 && classId.getId() < 131 ) || classId.getId() == 135)) // this is for Kamael Race 3rd Transfer
+            else if (level >= 76 && ((classId.getId() >= 123 && classId.getId() < 131 ) || classId.getId() == 135)) // this is for Kamael Race 3rd Transfer
            {
                showChatWindow(player, classId.getId());
            }
@@ -155,7 +158,7 @@
                               html.setHtml(sb.toString());
                               player.sendPacket(html);
                       }
-               }
+               //}
               player.sendPacket(ActionFailed.STATIC_PACKET);
       }

Index: java/net/sf/l2j/gameserver/model/actor/stat/PcStat.java
===================================================================
--- java/net/sf/l2j/gameserver/model/actor/stat/PcStat.java     (revision 2705)
+++ java/net/sf/l2j/gameserver/model/actor/stat/PcStat.java     (working copy)
@@ -16,6 +16,7 @@

import net.sf.l2j.Config;
import net.sf.l2j.gameserver.model.L2Character;
+import net.sf.l2j.gameserver.model.actor.instance.L2ClassMasterInstance;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.actor.instance.L2PetInstance;
import net.sf.l2j.gameserver.model.base.Experience;
@@ -151,6 +152,17 @@
               if (getLevel() + value > Experience.MAX_LEVEL - 1) return false;

        boolean levelIncreased = super.addLevel(value);
+        
+        switch (getLevel())
+        {
+               case 20:
+               case 40:
+               case 76:
+                       L2ClassMasterInstance.ClassMaster.onAction(getActiveChar());
+                       break;
+               default:
+                       break;
+        }

        if (levelIncreased)
        {
Index: java/net/sf/l2j/gameserver/network/clientpackets/RequestBypassToServer.java
===================================================================
--- java/net/sf/l2j/gameserver/network/clientpackets/RequestBypassToServer.java (revision 2705)
+++ java/net/sf/l2j/gameserver/network/clientpackets/RequestBypassToServer.java (working copy)
@@ -28,6 +28,7 @@
import net.sf.l2j.gameserver.model.L2CharPosition;
import net.sf.l2j.gameserver.model.L2Object;
import net.sf.l2j.gameserver.model.L2World;
+import net.sf.l2j.gameserver.model.actor.instance.L2ClassMasterInstance;
import net.sf.l2j.gameserver.model.actor.instance.L2NpcInstance;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.entity.L2Event;
@@ -113,9 +114,9 @@
                               try
                               {
                                       L2Object object = L2World.getInstance().findObject(Integer.parseInt(id));
-
+                                               
                                       if (_command.substring(endOfId+1).startsWith("event_participate")) L2Event.inscribePlayer(activeChar);
-                                       else if (object instanceof L2NpcInstance && endOfId > 0 && activeChar.isInsideRadius(object, L2NpcInstance.INTERACTION_DISTANCE, false, false))
+                                       else if (object instanceof L2ClassMasterInstance || (object instanceof L2NpcInstance && endOfId > 0 && activeChar.isInsideRadius(object, L2NpcInstance.INTERACTION_DISTANCE, false, false)))
                                       {
                                               ((L2NpcInstance)object).onBypassFeedback(activeChar, _command.substring(endOfId+1));
                                       }[/b]

 

 

credits:Ao KiJi From l2jForum

exei 3anaginei kai auto share edw http://www.maxcheaters.com/forum/index.php?topic=50288.0....

 

epidi blepw pws kanei shares apo to "[share] Lineage II Develop [L2J Server]" xwris lgol...

toulaxiston dine credits...

exei 3anaginei kai auto share edw http://www.maxcheaters.com/forum/index.php?topic=50288.0....

 

epidi blepw pws kanei shares apo to "[share] Lineage II Develop [L2J Server]" xwris lgol...

toulaxiston dine credits...

Παρακαλαει να βρει κανεναν αφελη VIP να του δωσει καρμα για τα c/p

Παρακαλαει να βρει κανεναν αφελη VIP να του δωσει καρμα για τα c/p

ego nomizo pos an sinexisei etsi oloi tha ton peran sto ntoukou para tha tou dosoun karma...

  • Author

ego nomizo pos an sinexisei etsi oloi tha ton peran sto ntoukou para tha tou dosoun karma...

afto se emena to ipes?

efxaristw file mou! ;)

ei8ela na to balw ston server mou alla den mporousa na to brw!

ty!

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.