Jump to content

[Share]Away Command L2j Interlude!!!


Recommended Posts

Hello to all guys Today i modify Away code from SySt3MGaM3RFr3aKs link Here I do for the l2j Interlude And i made configs if you wan't to Change How much money you wan't to pay for .away command and you can choose what item :D:D

 

Lets Start:

 

Index: trunk/C6 Server/java/net/sf/l2j/gameserver/handler/voicedcommandhandlers/away.java

===================================================================

--- trunk/C6 Server/java/net/sf/l2j/gameserver/handler/voicedcommandhandlers/away.java (revision 0)

+++ trunk/C6 Server/java/net/sf/l2j/gameserver/handler/voicedcommandhandlers/away.java (revision 0)

Create away.java

And add this code in file:

+/*
+ * This program is free software: you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License as published by the Free Software
+ * Foundation, either version 3 of the License, or (at your option) any later
+ * version.
+ * 
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+ * details.
+ * 
+ * You should have received a copy of the GNU General Public License along with
+ * this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package net.sf.l2j.gameserver.handler.voicedcommandhandlers;
+
+import net.sf.l2j.Config;
+import net.sf.l2j.gameserver.handler.IVoicedCommandHandler;
+import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
+
+public class away implements IVoicedCommandHandler
+{
+    private static final String[] VOICED_COMMANDS = { "away", "back" };
+    
+
+   public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target)
+   {
+        if (command.equalsIgnoreCase("away"))
+        {
+        	 if(activeChar.isInJail())
+        		           {
+        		                activeChar.sendMessage("You cannot use this command while you are in Jail!");
+        		                return false;
+        		            }
+        	 if(activeChar.isInOlympiadMode())
+        		           {
+        		                 activeChar.sendMessage("You cannot use this command while you are in the Olympiad now!");
+        		                 return false;
+        		            }
+        	 if (activeChar.isInDuel())
+        		             {
+        		                 activeChar.sendMessage("You cannot use this command while you are in a Duel!");
+        		                 return false;
+        		             }
+        	 if(activeChar.atEvent)
+        		             {
+        		                 activeChar.sendMessage("You cannot use this command while you are in an event!");
+        		                 return false;
+        		             }   
+        	 if (activeChar.inObserverMode())
+        		             {
+        		                activeChar.sendMessage("You cannot use this command while you are in Observer Mode!");
+        		                 return false;
+        		             }
+        	 if (activeChar.isFestivalParticipant())
+    		 				 {
+        		 				activeChar.sendMessage("You cannot use this command while you are in a festival!");
+        		 				return false;
+    		 				 }
+        	if(activeChar.getInventory().getItemByItemId (Config.AWAY_ITEM_ID) != null && +activeChar.getInventory().getItemByItemId(Config.AWAY_ITEM_ID).getCount() >= Config.AWAY_PRICE)
+        	{
+            activeChar.getInventory().destroyItemByItemId("Away", Config.AWAY_ITEM_ID, Config.AWAY_PRICE, activeChar, +activeChar.getTarget());
+            activeChar.sendMessage("You are away from keyboard!");
+            activeChar.getAppearance().setTitleColor(0xFFFF00);
+            activeChar.setTitle("*Away*"); // Title text when somebody is away.
+            activeChar.broadcastUserInfo();
+        	} 
+        	
+        
+        }
+        else
+        	if (command.equalsIgnoreCase("back"))
+    		{
+        	 if(activeChar.isInJail())
+        		{
+        		activeChar.sendMessage("You cannot use this command while you are in Jail!");
+        		return false;
+        		}
+        	 if(activeChar.isInOlympiadMode())
+        		 {
+        		activeChar.sendMessage("You cannot use this command while you are in the Olympiad now!");
+        		return false;
+        		 }
+        	 if (activeChar.isInDuel())
+        		 {
+        		 activeChar.sendMessage("You cannot use this command while you are in a Duel!");
+        		 return false;
+        		 }
+        	 if(activeChar.atEvent)
+        		 {
+        		 activeChar.sendMessage("You cannot use this command while you are in an event!");
+        		 return false;
+        		 }
+        	 if (activeChar.inObserverMode())
+        		 {
+        		 activeChar.sendMessage("You cannot use this command while you are in Observer Mode!");
+        		 return false;
+        		 }
+        	 if (activeChar.isFestivalParticipant())
+        		 {
+        		 activeChar.sendMessage("You cannot use this command while you are in a festival.");
+        		 return false;
+        		 }
+           	activeChar.sendMessage("You Are Back!");
+           	activeChar.setTitle(" ");
+           	activeChar.broadcastUserInfo();
+    		}
+           	return true;
+ 
+	}
+    public String[] getVoicedCommandList()
+    {
+        return VOICED_COMMANDS;
+    }
+}

 

Next Step Go to:

Index: trunk/C6 Server/java/net/sf/l2j/gameserver/GameServer.java

===================================================================

--- trunk/C6 Server/java/net/sf/l2j/gameserver/GameServer.java

+++ trunk/C6 Server/java/net/sf/l2j/gameserver/GameServer.java

Find that Line:
import net.sf.l2j.gameserver.handler.usercommandhandlers.OlympiadStat;
import net.sf.l2j.gameserver.handler.usercommandhandlers.PartyInfo;
import net.sf.l2j.gameserver.handler.usercommandhandlers.Time;
+import net.sf.l2j.gameserver.handler.voicedcommandhandlers.away;
import net.sf.l2j.gameserver.handler.voicedcommandhandlers.Online;
import net.sf.l2j.gameserver.handler.voicedcommandhandlers.Wedding;



Find that Line :
_log.config("VoicedCommandHandler: Loaded " + _voicedCommandHandler.size() + " handlers.");

And before that line add that:
+
+	if (Config.AWAY_BUY)
+	  _voicedCommandHandler.registerVoicedCommandHandler(new away());
+			

The code will be like this :

if (Config.AWAY_BUY)
					_voicedCommandHandler.registerVoicedCommandHandler(new away());

	_log.config("VoicedCommandHandler: Loaded " + _voicedCommandHandler.size() + " handlers.");

Next go to :

Index: trunk/C6 Server/java/config/L2JMods.properties

===================================================================

--- trunk/C6 Server/java/config/L2JMods.properties

+++ trunk/C6 Server/java/config/L2JMods.properties

Find this :
TvTEventTargetTeamMembersAllowed = true
TvTEventPotionsAllowed = false
TvTEventSummonByItemAllowed = false
# Door id's to close/open on start/end
# ex.: 1;2;3;4;5;6
# no ";" at the start or end
TvTEventDoorsCloseOpenOnStartEnd =
+
+#================================================================
+# Allows user to Use .Away Command
+#----------------------------------------------------------------
+#.Away Enable?
+AlowAway = False
+
+#What the ID of item is need to buy Away ?
+AwayItemID = 57
+
+#How Many Cost Away ?
+AwayPrice = 100000
+

Next Step Go to:

Index: trunk/C6 Server/java/net/sf/l2j/Config.java

===================================================================

--- trunk/C6 Server/java/net/sf/l2j/Config.java

+++ trunk/C6 Server/java/net/sf/l2j/Config.java

 

Find this :
   public static int L2JMOD_WEDDING_TELEPORT_PRICE;
   public static int L2JMOD_WEDDING_TELEPORT_DURATION;
   public static boolean L2JMOD_WEDDING_SAMESEX;
   public static boolean L2JMOD_WEDDING_FORMALWEAR;
   public static int L2JMOD_WEDDING_DIVORCE_COSTS;
+
+//Away System
+    public static boolean AWAY_BUY;
+    public static int AWAY_ITEM_ID;
+    public static int AWAY_PRICE;
+

Find This:
L2JMOD_WEDDING_TELEPORT_DURATION        = Integer.parseInt(L2JModSettings.getProperty("WeddingTeleportDuration", "60"));
               L2JMOD_WEDDING_SAMESEX                  = Boolean.parseBoolean(L2JModSettings.getProperty("WeddingAllowSameSex", "False"));
               L2JMOD_WEDDING_FORMALWEAR               = Boolean.parseBoolean(L2JModSettings.getProperty("WeddingFormalWear", "True"));
               L2JMOD_WEDDING_DIVORCE_COSTS            = Integer.parseInt(L2JModSettings.getProperty("WeddingDivorceCosts", "20"));
+
+AWAY_BUY                           = Boolean.parseBoolean(L2JModSettings.getProperty("AlowAway", "False"));
+AWAY_ITEM_ID                     = Integer.parseInt(L2JModSettings.getProperty("AwayItemID", "57"));
+AWAY_PRICE                         = Integer.parseInt(L2JModSettings.getProperty("AwayPrice", "100000"));
+               

 

That's All guys Test it and working by me :) Enjoy for any Question or problem post here

Cya!!!

Link to comment
Share on other sites

i think thi exist and before.

but w/e

 

Haven't test it yet but i guess you should fix it for oly.

you can be ported into olympiad with that command and no one can hit you since can't even target.

Link to comment
Share on other sites

Haven't test it yet but i guess you should fix it for oly.

you can be ported into olympiad with that command and no one can hit you since can't even target.

Yeah,there is that bug.

 

 

I think i have seen it again this code in mxc,but i am not sure :D

Good work,keep sharing

Link to comment
Share on other sites

I say dude in start :D Is Away code from SySt3MGaM3RFr3aKs and me modify :)

No dude that is only one title ;) No problem with olympiad is only one title!!!!

Edit : No Bug i try now xD:)

Link to comment
Share on other sites

Ok, it's the same but with little configs, http://www.maxcheaters.com/forum/index.php?topic=118507.msg831195#msg831195
Anyway, keep sharing.

read my post!!

modify Away code from SySt3MGaM3RFr3aKs

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.


×
×
  • Create New...