Jump to content
  • 0

ExpOn ExpOff L2JServer


Question

Posted (edited)

hi... im trying to insert this code to l2jserver last develop rev.
but the pcstat.java isnt the same. so, anyone can helpme to do this? thx in advance:

i test that command ingame and is working fine but i need the pcstat core side working.
Core:
 

+++ java/com/l2jserver/gameserver/model/actor/stat/PcStat.java	(working copy)

 		{
 			return false;
 		}
+
+		// Check, if exp gain isn't disabled by voiced command
+		if (activeChar.canOverrideCond(PcCondOverride.DISABLE_EXP_GAIN))
+		{
+			return false;
+		}
 		
 		if (!super.addExp(value))
 		{

 		{
 			return false;
 		}
-		
+
+ 		// Check, if exp gain isn't disabled by voiced command
+		if (activeChar.canOverrideCond(PcCondOverride.DISABLE_EXP_GAIN))
+		{
+			addToExp = 0;
+		}
+
 		long baseExp = addToExp;
 		int baseSp = addToSp;
 		

Datapack Side:
 

Index: dist/game/data/scripts/handlers/MasterHandler.java
===================================================================
 import handlers.voicedcommandhandlers.Lang;
 import handlers.voicedcommandhandlers.StatsVCmd;
 import handlers.voicedcommandhandlers.TvTVoicedInfo;
+import handlers.voicedcommandhandlers.UserOptions;
 import handlers.voicedcommandhandlers.Wedding;
 
 /**
@@ -601,6 +602,7 @@
 		{
 			// Voiced Command Handlers
 			StatsVCmd.class,
+			UserOptions.class,
 			// TODO: Add configuration options for this voiced commands:
 			// CastleVCmd.class,
 			// SetVCmd.class,
Index: dist/game/data/scripts/handlers/voicedcommandhandlers/UserOptions.java
===================================================================
--- dist/game/data/scripts/handlers/voicedcommandhandlers/UserOptions.java	(revision 0)
+++ dist/game/data/scripts/handlers/voicedcommandhandlers/UserOptions.java	(working copy)
@@ -0,0 +1,44 @@
+package handlers.voicedcommandhandlers;
+
+import com.l2jserver.gameserver.handler.IVoicedCommandHandler;
+import com.l2jserver.gameserver.model.PcCondOverride;
+import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
+
+/**
+ * @author GKR, Mr.Deff
+ */
+public class UserOptions implements IVoicedCommandHandler
+{
+	private static final String[] _voicedCommands =
+	{
+		"expon",
+		"expoff",
+	};
+
+	public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target)
+	{
+		if (activeChar == null)
+		{
+			return false;
+		}
+
+		switch(command)
+		{
+			case "expoff":
+				activeChar.addOverrideCond(PcCondOverride.DISABLE_EXP_GAIN);
+				activeChar.sendMessage("Exp gain disabled.");
+				break;
+			case "expon":
+				activeChar.removeOverridedCond(PcCondOverride.DISABLE_EXP_GAIN);
+				activeChar.sendMessage("Exp gain restored.");
+				break;
+		}
+
+		return true;
+	}
+
+	public String[] getVoicedCommandList()
+	{
+		return _voicedCommands;
+	}
+}

 

Edited by Urbanhack

2 answers to this question

Recommended Posts

  • 0
Posted

Did u try to add this

DISABLE_EXP_GAIN(16, "Overrides EXP Gain conditions");

below

DROP_ALL_ITEMS(15, "Overrides item drop conditions"),

in the package:

package com.l2jserver.gameserver.model.PcCondOverride

 

  • 0
Posted
On 1/7/2021 at 5:37 AM, JackCerutti said:

Did u try to add this


DISABLE_EXP_GAIN(16, "Overrides EXP Gain conditions");

below


DROP_ALL_ITEMS(15, "Overrides item drop conditions"),

in the package:


package com.l2jserver.gameserver.model.PcCondOverride

 

Please do not undig old posts

Guest
This topic is now closed to further replies.
×
×
  • Create New...