Jump to content
  • 0

[Request] voicecommand gia acis!!!


Question

Recommended Posts

  • 0
Posted

kalhspera se olous

opws leei o titlos moy psaxnw ena guide gia na balw voicecommand se acis pack, mias kai opws einai twra den yparxei !!!

Σαν τι voicecommand ψάχνεις?

  • 0
Posted

kalhspera se olous

opws leei o titlos moy psaxnw ena guide gia na balw voicecommand se acis pack, mias kai opws einai twra den yparxei !!!

Σαν τι voicecommand ψάχνεις?

  • 0
Posted

Σαν τι voicecommand ψάχνεις?

auth ti stigmh mesa sto pack den yparxei tpt gia voice command

egw 8elo .online .heal kai basika meta 8a mporesw na balw kai merika alla monos mou!!!

  • 0
Posted

Σαν τι voicecommand ψάχνεις?

auth ti stigmh mesa sto pack den yparxei tpt gia voice command

egw 8elo .online .heal kai basika meta 8a mporesw na balw kai merika alla monos mou!!!

  • 0
Posted

auth ti stigmh mesa sto pack den yparxei tpt gia voice command

egw 8elo .online .heal kai basika meta 8a mporesw na balw kai merika alla monos mou!!!

Αυτά είναι υπάρχοντα ήδη εδώ μέσα.

Δεν γνωρίζω από aCis, αλλά τι εννοείς δεν υπάρχει τίποτα για voice command?

Δεν υπάρχει αυτή η διαδρομή στο eclipse?

  • 0
Posted

auth ti stigmh mesa sto pack den yparxei tpt gia voice command

egw 8elo .online .heal kai basika meta 8a mporesw na balw kai merika alla monos mou!!!

Αυτά είναι υπάρχοντα ήδη εδώ μέσα.

Δεν γνωρίζω από aCis, αλλά τι εννοείς δεν υπάρχει τίποτα για voice command?

Δεν υπάρχει αυτή η διαδρομή στο eclipse?

  • 0
Posted

Αυτά είναι υπάρχοντα ήδη εδώ μέσα.

Δεν γνωρίζω από aCis, αλλά τι εννοείς δεν υπάρχει τίποτα για voice command?

Δεν υπάρχει αυτή η διαδρομή στο eclipse?

egw den tin exw...den exw kan to java file
  • 0
Posted

Αυτά είναι υπάρχοντα ήδη εδώ μέσα.

Δεν γνωρίζω από aCis, αλλά τι εννοείς δεν υπάρχει τίποτα για voice command?

Δεν υπάρχει αυτή η διαδρομή στο eclipse?

egw den tin exw...den exw kan to java file
  • 0
Posted
Index: java/net/sf/l2j/gameserver/GameServer.java
===================================================================
--- java/net/sf/l2j/gameserver/GameServer.java	(revision 75)
+++ java/net/sf/l2j/gameserver/GameServer.java	(working copy)
@@ -68,6 +68,7 @@
import net.sf.l2j.gameserver.handler.ItemHandler;
import net.sf.l2j.gameserver.handler.SkillHandler;
import net.sf.l2j.gameserver.handler.UserCommandHandler;
+import net.sf.l2j.gameserver.handler.VoicedCommandHandler; 
import net.sf.l2j.gameserver.idfactory.IdFactory;
import net.sf.l2j.gameserver.instancemanager.AuctionManager;
import net.sf.l2j.gameserver.instancemanager.BoatManager;
@@ -242,6 +243,7 @@
		_log.config("ItemHandler: Loaded " + ItemHandler.getInstance().size() + " handlers.");
         _log.config("SkillHandler: Loaded " + SkillHandler.getInstance().size() + " handlers.");
         _log.config("UserCommandHandler: Loaded " + UserCommandHandler.getInstance().size() + " handlers.");
+        _log.config("VoicedCommandHandler: Loaded " + VoicedCommandHandler.getInstance().size() + " handlers.");

		if (Config.ALLOW_WEDDING)
			CoupleManager.getInstance();

Index: java/net/sf/l2j/gameserver/handler/VoicedCommandHandler.java
===================================================================
--- java/net/sf/l2j/gameserver/handler/VoicedCommandHandler.java	(revision 0)
+++ java/net/sf/l2j/gameserver/handler/VoicedCommandHandler.java	(revision 0)
@@ -0,0 +1,81 @@
+/*
+ * 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 2, 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, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ *
+ * http://www.gnu.org/copyleft/gpl.html
+ */
+package net.sf.l2j.gameserver.handler;
+
+import java.util.Map;
+import java.util.logging.Logger;
+
+import javolution.util.FastMap;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGeoEditor;
+import net.sf.l2j.gameserver.handler.voicedcommandhandlers.*;
+
+public class VoicedCommandHandler
+{
+	private static Logger _log = Logger.getLogger(ItemHandler.class.getName());
+
+	private static VoicedCommandHandler 		_instance;
+	private Map<String, IVoicedCommandHandler> 	_datatable;
+
+	public static VoicedCommandHandler getInstance()
+	{
+		if (_instance == null)
+			_instance = new VoicedCommandHandler();
+		
+		return _instance;
+	}
+
+	private VoicedCommandHandler()
+	{
+		_datatable = new FastMap<String, IVoicedCommandHandler>();
+		
+	}
+
+	public void registerVoicedCommandHandler(IVoicedCommandHandler handler)
+	{
+		String[] ids = handler.getVoicedCommandList();
+		for (int i = 0; i < ids.length; i++)
+		{
+			if (Config.DEBUG) _log.fine("Adding handler for command "+ids[i]);
+			_datatable.put(ids[i], handler);
+		}
+	}
+
+	public IVoicedCommandHandler getVoicedCommandHandler(String voicedCommand)
+	{
+		String command = voicedCommand;
+		
+		if (voicedCommand.indexOf(" ") != -1)
+			command = voicedCommand.substring(0, voicedCommand.indexOf(" "));
+		
+		if (Config.DEBUG)
+			_log.fine("getting handler for command: "+command+" -> "+(_datatable.get(command) != null));
+		
+		return _datatable.get(command);
+	}
+
+    public int size()
+    {
+        return _datatable.size();
+    }
+}

Index: java/net/sf/l2j/gameserver/handler/IVoicedCommandHandler.java
===================================================================
--- java/net/sf/l2j/gameserver/handler/IVoicedCommandHandler.java	(revision 0)
+++ java/net/sf/l2j/gameserver/handler/IVoicedCommandHandler.java	(revision 0)
@@ -0,0 +1,43 @@
+/*
+ * 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 2, 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, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ *
+ * http://www.gnu.org/copyleft/gpl.html
+ */
+package net.sf.l2j.gameserver.handler;
+
+import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
+
+/**
+ * This class ...
+ *
+ * @version $Revision: 1.1.4.2 $ $Date: 2005/03/27 15:30:09 $
+ */
+public interface IVoicedCommandHandler
+{
+	/**
+	 * this is the worker method that is called when someone uses an admin command.
+	 * @param activeChar
+	 * @param command
+	 * @return command success
+	 */
+	public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target);
+
+	/**
+	 * this method is called at initialization to register all the item ids automatically
+	 * @return all known itemIds
+	 */
+	public String[] getVoicedCommandList();
+}

Index: java/net/sf/l2j/gameserver/handler/chathandlers/ChatAll.java
===================================================================
--- java/net/sf/l2j/gameserver/handler/chathandlers/ChatAll.java	(revision 75)
+++ java/net/sf/l2j/gameserver/handler/chathandlers/ChatAll.java	(working copy)
@@ -15,8 +15,13 @@
package net.sf.l2j.gameserver.handler.chathandlers;

import java.util.Collection;
+import java.util.StringTokenizer; 
+import java.util.logging.Logger;

+import net.sf.l2j.Config;
import net.sf.l2j.gameserver.handler.IChatHandler;
+import net.sf.l2j.gameserver.handler.IVoicedCommandHandler; 
+import net.sf.l2j.gameserver.handler.VoicedCommandHandler; 
import net.sf.l2j.gameserver.model.BlockList;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.network.serverpackets.CreatureSay;
@@ -29,6 +34,7 @@
public class ChatAll implements IChatHandler
{
	private static final int[] COMMAND_IDS = { 0 };
+	private static Logger _log = Logger.getLogger(ChatAll.class.getName());

	/**
	 * Handle chat type 'all'
@@ -36,16 +42,53 @@
	 */
	public void handleChat(int type, L2PcInstance activeChar, String params, String text)
	{
-		CreatureSay cs = new CreatureSay(activeChar.getObjectId(), type, activeChar.getName(), text);
-		Collection<L2PcInstance> plrs = activeChar.getKnownList().getKnownPlayers().values();
-
-		for (L2PcInstance player : plrs)
+		boolean vcd_used = false; 
+		if (text.startsWith("."))
		{
-			if (player != null && activeChar.isInsideRadius(player, 1250, false, true) && !BlockList.isBlocked(player, activeChar))
-				player.sendPacket(cs);
-		}
+			StringTokenizer st = new StringTokenizer(text); 
+			IVoicedCommandHandler vch; 
+			String command = "";

-		activeChar.sendPacket(cs);
+			      if (st.countTokens() > 1)
+				  {
+				      command = st.nextToken().substring(1);
+				      params = text.substring(command.length() + 2);
+				      vch = VoicedCommandHandler.getInstance().getVoicedCommandHandler(command);
+				  }
+				  else
+				  {
+				            					command = text.substring(1);
+				            					if (Config.DEBUG)
+				            						_log.info("Command: " + command);
+				            					vch = VoicedCommandHandler.getInstance().getVoicedCommandHandler(command);
+				            				}
+				            				
+				            				if (vch != null)
+				            				{
+				            					vch.useVoicedCommand(command, activeChar, params);
+				            					vcd_used = true;
+				            				}
+				            				else
+				            				{
+				            					if (Config.DEBUG)
+				            						_log.warning("No handler registered for bypass '" + command + "'");
+				            					vcd_used = false;
+				            				}
+				            			}
+				            			
+				            			if (!vcd_used)
+				            			{
+				            				CreatureSay cs = new CreatureSay(activeChar.getObjectId(), type, activeChar.getName(), text);
+				            				Collection<L2PcInstance> plrs = activeChar.getKnownList().getKnownPlayers().values();
+				            	
+				            				for (L2PcInstance player : plrs)
+				            				{
+				            					if (player != null && activeChar.isInsideRadius(player, 1250, false, true) && !BlockList.isBlocked(player, activeChar))
+				            						player.sendPacket(cs);
+				            				}
+				            				
+				    activeChar.sendPacket(cs);
+				}
	}

	/**

  • 0
Posted
Index: java/net/sf/l2j/gameserver/GameServer.java
===================================================================
--- java/net/sf/l2j/gameserver/GameServer.java	(revision 75)
+++ java/net/sf/l2j/gameserver/GameServer.java	(working copy)
@@ -68,6 +68,7 @@
import net.sf.l2j.gameserver.handler.ItemHandler;
import net.sf.l2j.gameserver.handler.SkillHandler;
import net.sf.l2j.gameserver.handler.UserCommandHandler;
+import net.sf.l2j.gameserver.handler.VoicedCommandHandler; 
import net.sf.l2j.gameserver.idfactory.IdFactory;
import net.sf.l2j.gameserver.instancemanager.AuctionManager;
import net.sf.l2j.gameserver.instancemanager.BoatManager;
@@ -242,6 +243,7 @@
		_log.config("ItemHandler: Loaded " + ItemHandler.getInstance().size() + " handlers.");
         _log.config("SkillHandler: Loaded " + SkillHandler.getInstance().size() + " handlers.");
         _log.config("UserCommandHandler: Loaded " + UserCommandHandler.getInstance().size() + " handlers.");
+        _log.config("VoicedCommandHandler: Loaded " + VoicedCommandHandler.getInstance().size() + " handlers.");

		if (Config.ALLOW_WEDDING)
			CoupleManager.getInstance();

Index: java/net/sf/l2j/gameserver/handler/VoicedCommandHandler.java
===================================================================
--- java/net/sf/l2j/gameserver/handler/VoicedCommandHandler.java	(revision 0)
+++ java/net/sf/l2j/gameserver/handler/VoicedCommandHandler.java	(revision 0)
@@ -0,0 +1,81 @@
+/*
+ * 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 2, 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, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ *
+ * http://www.gnu.org/copyleft/gpl.html
+ */
+package net.sf.l2j.gameserver.handler;
+
+import java.util.Map;
+import java.util.logging.Logger;
+
+import javolution.util.FastMap;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGeoEditor;
+import net.sf.l2j.gameserver.handler.voicedcommandhandlers.*;
+
+public class VoicedCommandHandler
+{
+	private static Logger _log = Logger.getLogger(ItemHandler.class.getName());
+
+	private static VoicedCommandHandler 		_instance;
+	private Map<String, IVoicedCommandHandler> 	_datatable;
+
+	public static VoicedCommandHandler getInstance()
+	{
+		if (_instance == null)
+			_instance = new VoicedCommandHandler();
+		
+		return _instance;
+	}
+
+	private VoicedCommandHandler()
+	{
+		_datatable = new FastMap<String, IVoicedCommandHandler>();
+		
+	}
+
+	public void registerVoicedCommandHandler(IVoicedCommandHandler handler)
+	{
+		String[] ids = handler.getVoicedCommandList();
+		for (int i = 0; i < ids.length; i++)
+		{
+			if (Config.DEBUG) _log.fine("Adding handler for command "+ids[i]);
+			_datatable.put(ids[i], handler);
+		}
+	}
+
+	public IVoicedCommandHandler getVoicedCommandHandler(String voicedCommand)
+	{
+		String command = voicedCommand;
+		
+		if (voicedCommand.indexOf(" ") != -1)
+			command = voicedCommand.substring(0, voicedCommand.indexOf(" "));
+		
+		if (Config.DEBUG)
+			_log.fine("getting handler for command: "+command+" -> "+(_datatable.get(command) != null));
+		
+		return _datatable.get(command);
+	}
+
+    public int size()
+    {
+        return _datatable.size();
+    }
+}

Index: java/net/sf/l2j/gameserver/handler/IVoicedCommandHandler.java
===================================================================
--- java/net/sf/l2j/gameserver/handler/IVoicedCommandHandler.java	(revision 0)
+++ java/net/sf/l2j/gameserver/handler/IVoicedCommandHandler.java	(revision 0)
@@ -0,0 +1,43 @@
+/*
+ * 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 2, 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, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ *
+ * http://www.gnu.org/copyleft/gpl.html
+ */
+package net.sf.l2j.gameserver.handler;
+
+import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
+
+/**
+ * This class ...
+ *
+ * @version $Revision: 1.1.4.2 $ $Date: 2005/03/27 15:30:09 $
+ */
+public interface IVoicedCommandHandler
+{
+	/**
+	 * this is the worker method that is called when someone uses an admin command.
+	 * @param activeChar
+	 * @param command
+	 * @return command success
+	 */
+	public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target);
+
+	/**
+	 * this method is called at initialization to register all the item ids automatically
+	 * @return all known itemIds
+	 */
+	public String[] getVoicedCommandList();
+}

Index: java/net/sf/l2j/gameserver/handler/chathandlers/ChatAll.java
===================================================================
--- java/net/sf/l2j/gameserver/handler/chathandlers/ChatAll.java	(revision 75)
+++ java/net/sf/l2j/gameserver/handler/chathandlers/ChatAll.java	(working copy)
@@ -15,8 +15,13 @@
package net.sf.l2j.gameserver.handler.chathandlers;

import java.util.Collection;
+import java.util.StringTokenizer; 
+import java.util.logging.Logger;

+import net.sf.l2j.Config;
import net.sf.l2j.gameserver.handler.IChatHandler;
+import net.sf.l2j.gameserver.handler.IVoicedCommandHandler; 
+import net.sf.l2j.gameserver.handler.VoicedCommandHandler; 
import net.sf.l2j.gameserver.model.BlockList;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.network.serverpackets.CreatureSay;
@@ -29,6 +34,7 @@
public class ChatAll implements IChatHandler
{
	private static final int[] COMMAND_IDS = { 0 };
+	private static Logger _log = Logger.getLogger(ChatAll.class.getName());

	/**
	 * Handle chat type 'all'
@@ -36,16 +42,53 @@
	 */
	public void handleChat(int type, L2PcInstance activeChar, String params, String text)
	{
-		CreatureSay cs = new CreatureSay(activeChar.getObjectId(), type, activeChar.getName(), text);
-		Collection<L2PcInstance> plrs = activeChar.getKnownList().getKnownPlayers().values();
-
-		for (L2PcInstance player : plrs)
+		boolean vcd_used = false; 
+		if (text.startsWith("."))
		{
-			if (player != null && activeChar.isInsideRadius(player, 1250, false, true) && !BlockList.isBlocked(player, activeChar))
-				player.sendPacket(cs);
-		}
+			StringTokenizer st = new StringTokenizer(text); 
+			IVoicedCommandHandler vch; 
+			String command = "";

-		activeChar.sendPacket(cs);
+			      if (st.countTokens() > 1)
+				  {
+				      command = st.nextToken().substring(1);
+				      params = text.substring(command.length() + 2);
+				      vch = VoicedCommandHandler.getInstance().getVoicedCommandHandler(command);
+				  }
+				  else
+				  {
+				            					command = text.substring(1);
+				            					if (Config.DEBUG)
+				            						_log.info("Command: " + command);
+				            					vch = VoicedCommandHandler.getInstance().getVoicedCommandHandler(command);
+				            				}
+				            				
+				            				if (vch != null)
+				            				{
+				            					vch.useVoicedCommand(command, activeChar, params);
+				            					vcd_used = true;
+				            				}
+				            				else
+				            				{
+				            					if (Config.DEBUG)
+				            						_log.warning("No handler registered for bypass '" + command + "'");
+				            					vcd_used = false;
+				            				}
+				            			}
+				            			
+				            			if (!vcd_used)
+				            			{
+				            				CreatureSay cs = new CreatureSay(activeChar.getObjectId(), type, activeChar.getName(), text);
+				            				Collection<L2PcInstance> plrs = activeChar.getKnownList().getKnownPlayers().values();
+				            	
+				            				for (L2PcInstance player : plrs)
+				            				{
+				            					if (player != null && activeChar.isInsideRadius(player, 1250, false, true) && !BlockList.isBlocked(player, activeChar))
+				            						player.sendPacket(cs);
+				            				}
+				            				
+				    activeChar.sendPacket(cs);
+				}
	}

	/**

Guest
This topic is now closed to further replies.



  • Posts

    • LF the following chars / items on chronos   Elf - with class Aeore's Shillen Saint - this is possible if you had done a class change with a ticket in the past. Dwarf - with class Mystic Muse - same as above   Any greater jewels / Radiant Circle Grace or Foresight +5 and above Cloak      
    • First, you need to understand what you're doing and what you want to achieve. You have to choose a server core. After that, decide what you want your server to include, code it, modify the client to fit your server, go public, and drink champagne.   If you know how to code, creating a server is relatively easy — a few months of work and you can make it happen. Modifying the client is a completely different story. There’s a lack of tutorials, tools, and source materials. I’m currently working on the client myself, and I’ve already spent over three weeks just trying to get started due to the lack of information. If you don’t have the knowledge and experience, you’ll need a team and a bag of money — but realistically, it just won’t succeed.
    • The server has been online and stable for over 2 months now, and we’re still going strong! No wipes, no shortcuts ~ just continuous work, daily fixes, events, and improvements to ensure the best possible experience.   Great News! 🔥 CHAPTER II IS COMING — GRACIA FINAL 🔥 On February 16, L2Elixir enters a new era. The server will be officially updated to Gracia Final, opening Chapter II of our journey. Expect new content, improvements, and surprises that will refresh the gameplay while keeping the classic Gracia Final spirit alive.   More challenges, more competition, and more reasons to log in.   📅 Update Date: February 16 ⚔️ Chapter II: Gracia Final This is not a reset. This is evolution.   Prepare yourselves — Chapter II begins soon.   Website: https://l2elixir.org/ Discord: https://discord.gg/5ydPHvhbxs    
    • Server owners, Top.MaxCheaters.com is now live and accepting Lineage 2 server listings. There is no voting, no rankings manipulation, and no paid advantages. Visibility is clean and equal, and early listings naturally appear at the top while the platform grows. If your server is active, it should already be listed. Submit here 👉https://Top.MaxCheaters.com This platform is part of the MaxCheaters.com network and is being built as a long-term reference point for the Lineage 2 community. — MaxCheaters.com Team
  • Topics

×
×
  • 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..