Jump to content

Recommended Posts

Posted

SORRY dn to iksera!!!

 

an xriasto tpt alo mporw na apef8in8w edo i 8a to klisis to shara??? :D

το shara όχι δεν θα το κλείσω.
Posted

καλά πες μου ακριβώς το request σου, για να κάτσω να το δουλέψω με ένα παιδί.

Loipon tha sto pw me paradigma

eimai sto cementery me bot kai famaro

me vlepei kapoios kai me kanei target kai pataei .report

kai emfanizete se emena ena parathiro me enan kodiko

egw prepei na grapsw afton ton kodiko kai na patiso ok mesa se 30 second

alios tha paw Jail gia 15 lepta

 

Posted

Ey Ey Ey 8a mporouse kapios na m dosi ena link IIII crystalia na m ftiaksi tn code gia enan kalo class master!!! psaxnw kamia oritsa k den vrika!!!

 

gia tn akrivia vrika afto:

ala den katalavenw etsi pos ksekinaei o code

---> package net.sf.l2j.gameserver.model.actor.instance; <--- (den leei se pio java arxio vazw tn code)

epsaksa sto l2pcinstance.java ala den ixe tpt apo afta mesa (L2JServer Interlude) opote an ginete voi8iste!!!

thx KAI KALIMERA!!! :D Kai ~!~paw gia ipno~!~

 

@@ -14,20 +14,22 @@
  */
package net.sf.l2j.gameserver.model.actor.instance;

-import java.util.Collection;
+
+
+import javolution.text.TextBuilder;
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.L2World;
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.quest.Quest;
import net.sf.l2j.gameserver.network.SystemMessageId;
import net.sf.l2j.gameserver.network.serverpackets.ActionFailed;
-import net.sf.l2j.gameserver.network.serverpackets.MyTargetSelected;
+import net.sf.l2j.gameserver.network.serverpackets.ExShowScreenMessage;
import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage;
import net.sf.l2j.gameserver.network.serverpackets.SystemMessage;
-import net.sf.l2j.gameserver.network.serverpackets.ValidateLocation;
import net.sf.l2j.gameserver.templates.chars.L2NpcTemplate;
import net.sf.l2j.gameserver.util.StringUtil;

@@ -46,10 +48,22 @@
	private static final int[] SECOND_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);
+		}
         private static final int[] THIRD_CLASS_IDS = {88, 89, 90, 91, 92, 93,
                 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
                 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118};

+
+        		
+	static
+        {
+        	L2World.getInstance().storeObject(ClassMaster);
+        }
+
	/**
	 * @param template
	 */
@@ -57,130 +71,341 @@
	{
		super(objectId, template);
	}
-
+										
	@Override
	public void onAction(L2PcInstance player)
	{
-		if (!canTarget(player)) return;
+		if (Config.DEBUG)
+					_log.fine("ClassMaster activated");

-		// Check if the L2PcInstance already target the L2NpcInstance
-		if (getObjectId() != player.getTargetId())
-		{
-			// Set the target of the L2PcInstance player
-			player.setTarget(this);
+		ClassId classId = player.getClassId();

-			// Send a Server->Client packet MyTargetSelected to the L2PcInstance player
-			player.sendPacket(new MyTargetSelected(getObjectId(), 0));
-
-			// Send a Server->Client packet ValidateLocation to correct the L2NpcInstance position and heading on the client
-			player.sendPacket(new ValidateLocation(this));
+		int jobLevel = 0;
+						int level = player.getLevel();
+						ClassLevel lvl = PlayerClass.values()[classId.getId()].getLevel();
+						switch (lvl)
+						{
+							case First: 
+								jobLevel = 1;
+								break;
+							case Second:
+								jobLevel = 2;
+								break;
+							case Third:
+								jobLevel = 3;
+								break;
+							default:
+								jobLevel = 4;
		}
-		else
+						
+												if (!Config.ALLOW_CLASS_MASTERS)
+													jobLevel = 3;
+										
+												if(player.isGM())
		{
-			if (!canInteract(player))
+													showChatWindowChooseClass(player);
+																						}
+																						else if (((level >= 20 && jobLevel == 1 ) ||
+																							(level >= 40 && jobLevel == 2 )) && Config.ALLOW_CLASS_MASTERS)
+																						{
+																							TextBuilder village = new TextBuilder("<html><body>");
+																							village.append("<center><table width=\"270\" border=\"0\" bgcolor=\"111111\">");
+																							village.append("<tr><td width=\"170\"><font color=\"5772d6\">L</font><font color=\"5772d6\">2</font><font color=\"5772d6\">R</font><font color=\"5772d6\">e</font><font color=\"5772d6\">a</font><font color=\"5772d6\">c</font><font color=\"5772d6\">t</font><font color=\"5772d6\">i</font><font color=\"5772d6\">o</font><font color=\"5772d6\">n</font></td>");
+																							village.append("<td width=\"100\" align=\"center\"><font color=\"5772d6\">Players</font><font color=\"5772d6\">:</font><font color=\"5772d6\"> " +L2World.getInstance().getAllPlayers().size()+ "</font></font></td></tr>");
+																							village.append("</table><table width=\"270\" border=\"0\">");
+																							village.append("</table>"); 
+																							village.append("<br></br>");
+																							village.append("<tr><td><center>L2Reaction</center></td></tr>");
+																							village.append("<br></br>");
+																							village.append("<tr><td><font color=\"00FF00\">MaxCheaters Class Master</font></td></tr>");
+																							village.append("<br></br>");
+																							village.append("<tr><td><font color=\"00FF00\">---------------------------------------------------</font></td></tr>");
+																							if (player.getClassId() == ClassId.fighter)
+																							{
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 1\">Advance to "+CharTemplateTable.getInstance().getClassNameById(1)+"</a></font></center><br>");
+																					       village.append("<br></br>");
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 4\">Advance to "+CharTemplateTable.getInstance().getClassNameById(4)+"</a></font></center><br>");	
+																					       village.append("<br></br>");
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 7\">Advance to "+CharTemplateTable.getInstance().getClassNameById(7)+"</a></font></center><br>");	
+																							}
+																							if (player.getClassId() == ClassId.warrior)
+																							{
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 2\">Advance to "+CharTemplateTable.getInstance().getClassNameById(2)+"</a></font></center><br>");
+																					       village.append("<br></br>");
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 3\">Advance to "+CharTemplateTable.getInstance().getClassNameById(3)+"</a></font></center><br>");	
+																							}
+																							if (player.getClassId() == ClassId.knight)
+																							{
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 5\">Advance to "+CharTemplateTable.getInstance().getClassNameById(5)+"</a></font></center><br>");
+																					       village.append("<br></br>");
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 6\">Advance to "+CharTemplateTable.getInstance().getClassNameById(6)+"</a></font></center><br>");	
+																							}
+																							if (player.getClassId() == ClassId.rogue)
+																							{
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 8\">Advance to "+CharTemplateTable.getInstance().getClassNameById(8)+"</a></font></center><br>");
+																					       village.append("<br></br>");
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 9\">Advance to "+CharTemplateTable.getInstance().getClassNameById(9)+"</a></font></center><br>");	
+																							}
+																							if (player.getClassId() == ClassId.mage)
+																							{
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 11\">Advance to "+CharTemplateTable.getInstance().getClassNameById(11)+"</a></font></center><br>");
+																					       village.append("<br></br>");
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 15\">Advance to "+CharTemplateTable.getInstance().getClassNameById(15)+"</a></font></center><br>");	
+																							}
+																							if (player.getClassId() == ClassId.wizard)
+																							{
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 12\">Advance to "+CharTemplateTable.getInstance().getClassNameById(12)+"</a></font></center><br>");
+																					       village.append("<br></br>");
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 13\">Advance to "+CharTemplateTable.getInstance().getClassNameById(13)+"</a></font></center><br>");	
+																					       village.append("<br></br>");
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 14\">Advance to "+CharTemplateTable.getInstance().getClassNameById(14)+"</a></font></center><br>");	
+																							}
+																							if (player.getClassId() == ClassId.cleric)
+																							{
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 16\">Advance to "+CharTemplateTable.getInstance().getClassNameById(16)+"</a></font></center><br>");
+																					       village.append("<br></br>");
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 17\">Advance to "+CharTemplateTable.getInstance().getClassNameById(17)+"</a></font></center><br>");	
+																							}
+																							if (player.getClassId() == ClassId.elvenFighter)
+																							{
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 19\">Advance to "+CharTemplateTable.getInstance().getClassNameById(19)+"</a></font></center><br>");
+																					       village.append("<br></br>");
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 22\">Advance to "+CharTemplateTable.getInstance().getClassNameById(22)+"</a></font></center><br>");	
+																							}
+																							if (player.getClassId() == ClassId.elvenKnight)
+																							{
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 20\">Advance to "+CharTemplateTable.getInstance().getClassNameById(20)+"</a></font></center><br>");
+																					       village.append("<br></br>");
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 21\">Advance to "+CharTemplateTable.getInstance().getClassNameById(21)+"</a></font></center><br>");	
+																							}
+																							if (player.getClassId() == ClassId.elvenScout)
+																							{
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 23\">Advance to "+CharTemplateTable.getInstance().getClassNameById(23)+"</a></font></center><br>");
+																					       village.append("<br></br>");
+																							village.append("<center><font color=\"CCFF00\"><a action=\"bypass -h npc_"+getObjectId()+"_change_class 24\">Advance to "+CharTemplateTable.getInstance().getClassNameById(24)+"</a></font></center><br>");	
+																							
.....(exi k sinexia den xorage :P )

download link: http://www.maxcheaters.com/forum/index.php?topic=90270.0

Posted

καλά πες μου ακριβώς το request σου, για να κάτσω να το δουλέψω με ένα παιδί.

Loipon tha sto pw me paradigma

eimai sto cementery me bot kai famaro

me vlepei kapoios kai me kanei target kai pataei .report

kai emfanizete se emena ena parathiro me enan kodiko

egw prepei na grapsw afton ton kodiko kai na patiso ok mesa se 30 second

alios tha paw Jail gia 15 lepta

ok?

Posted

crystalia mporis plz na m stilis to code gia mass sub class dld na pas mono se enan high priest k na mporis na kanis ola ta sub :) aa episis ama mporis ena code p na exoun dikeoma gia hero voice k i leader ton clan me castle :)

Posted

crystalia mporis plz na m stilis to code gia mass sub class dld na pas mono se enan high priest k na mporis na kanis ola ta sub :) aa episis ama mporis ena code p na exoun dikeoma gia hero voice k i leader ton clan me castle :)

gia to proto pou zitises Here

to deftero den to vrika..

Posted

einai sketo java code?i xriazete kapoio html,sql,client side?


Uparxei kanena etimo i mporei kapoios na mou ftia3ei


opoios mporei kai an einai grigoro as mou ftia3ei kanena..kai an tou aresei as ftia3ei kai kana parapanw (dwarf/human/orc) :D


Thnx In advance

υπάρχει ήδη στο L2jFrozen.
Posted

crystalia mporis plz na m stilis to code gia mass sub class dld na pas mono se enan high priest k na mporis na kanis ola ta sub :) aa episis ama mporis ena code p na exoun dikeoma gia hero voice k i leader ton clan me castle :)

το πρώτο στο έδωσε ο UnSponsored. το 2ο θα το κάνω share σε λίγο.
Posted

(telika crystalia mporis na me voi8isis me tn class master???)

 

20/7/12. 4:49πμ. update: den pirazi to vrika

 

kane afto p zitaei o sexomaniokos einai k gamw tous code to need kai egw!!! :D

Posted

καλά πες μου ακριβώς το request σου, για να κάτσω να το δουλέψω με ένα παιδί.

Loipon tha sto pw me paradigma

eimai sto cementery me bot kai famaro

me vlepei kapoios kai me kanei target kai pataei .report

kai emfanizete se emena ena parathiro me enan kodiko

egw prepei na grapsw afton ton kodiko kai na patiso ok mesa se 30 second

alios tha paw Jail gia 15 lepta

ok?

Guest
This topic is now closed to further replies.



  • Posts

    • Our sales are ongoing. Bump. 02 July 2025 Telegram: ContactDiscordAccS
    • Our sales are ongoing. Bump. 02 July 2025 Telegram: ContactDiscordAccS
    • just with this extender that I have shared it is not possible to start with c4 client, you have to make some changes to the extender and it works with c4 client perfectly. regarding the updates in this last revision   🔹dll is not packaged with vmprotect   New custom zone types have been added: 🔹 NO_NOBLESS begin MinX=84638 MaxX=92616 MinY=-87170 MaxY=-82018 MinZ=-6000 MaxZ=0 Type=NO_NOBLESS KickOutPos=83007/148057/-3464 end   ▶️ This zone checks if the character is noble. If it does not meet the condition, it will be automatically kicked to the indicated position (KickOutPos). 🔹 CUSTOM_SPAWN_ZONE begin MinX=77275 MaxX=85704 MinY=10122 MaxY=18066 MinZ=-8000 MaxZ=5000 Type=CUSTOM_SPAWN_ZONE OutPos=83007/148057/-3464 Spawns={{82984/18066/-5256}};{{79275/15147/-5248}};{{82922/14263/-5256}};{{83704/10122/-5288}} end ▶️ This zone allows characters, upon death, to respawn with full buff, CP, HP and MP if they press “Fixed”. They will only be able to revive in one of the positions defined in Spawns. 🔧 Both zones are fully configurable from territorydata.txt 🔧 Development Repository (SVN) GX-EXT supports open, collaborative, and professional development. That’s why we provide access to our public SVN repository where you can:   ✅ Compile your own version of the project ✅ Optimize and extend its features ✅ Learn from real production-quality source code   🔒 Delayed access: The repository is always 2 months behind the latest commercial release to prevent unauthorized reselling.   🔗 SVN URL: https://svn.l2servers.com.ar/!/#GX-EXT_INTERLUDE Username: gx Password: gx   You can use tools like TortoiseSVN to download and work with the code.
    • Could you tell me what changed in this update?   more one question: Is it possible to log in through the c4 client instead of interlude? That would be great  
    • ➡ Discount for your purchase: JULY2025 (11% discount) ➡ Our Online Shop: https://socnet.store  ➡ Our SMM-Boosting Panel: https://socnet.pro  ➡ Telegram Shop Bot: https://socnet.shop  ➡ Telegram Support: https://t.me/solomon_bog  ➡ Telegram Channel: https://t.me/accsforyou_shop  ➡ Discord Support: @AllSocialNetworksShop  ➡ Discord Server: https://discord.gg/y9AStFFsrh  ➡ WhatsApp Support: https://wa.me/79051904467 ➡ WhatsApp Channel: https://whatsapp.com/channel/0029Vau0CMX002TGkD4uHa2n  ➡ Email Support: solomonbog@socnet.store 
  • Topics

×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock