Jump to content

Recommended Posts

Posted

Ολα ειναι αυτοματα.

 

Καθε 2 ωρες(μπορειτε να το αλλαξετε) ενα item(μπορειτε να το αλλαξετε , default: rabbit ears) πεφτει σε μια τυχαια περιοχη(εσεις διαλεγετε ολα τα πιθανα coordinates που μπορει να πεσει) και οι παικτες ενημερωνονται οτι το event ξεκινησε και σε ποια περιοχη επεσε. Π.χ μπορει να ειναι στην Giran Town , αλλα μπορει να ειναι οπουδηποτε εκει.Εχουν 15 λεπτα(μπορειτε να το αλλαξετε) να το βρουνε αλλιως εξαφανιζεται και το event τελειωνει.Ο πρωτος που το βρει και το κανει drop κερδιζει το event και παιρνει το reward(Default: 50 gold bars, μπορειτε να το αλλαξετε). Το event αρχιζει παλι σε 2 ωρες(οπως ειπα μπορειτε να το αλλαξετε).Στην διαρκεια του event ο admin μπορει να πατησει //gohide για να παει στην περιοχη που ειναι το item ακριβως.

 

 

### Eclipse Workspace Patch 1.0
#P Chr.6GMS
Index: java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java
===================================================================
--- java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java	(revision 5263)
+++ java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java	(working copy)
@@ -51,6 +51,7 @@
import net.sf.l2j.gameserver.ai.L2PlayerAI;
import net.sf.l2j.gameserver.cache.HtmCache;
import net.sf.l2j.gameserver.cache.WarehouseCacheManager;
+import net.sf.l2j.gameserver.clientpackets.Say2;
import net.sf.l2j.gameserver.communitybbs.BB.Forum;
import net.sf.l2j.gameserver.communitybbs.Manager.ForumsBBSManager;
import net.sf.l2j.gameserver.datatables.CharTemplateTable;
@@ -82,6 +83,7 @@
import net.sf.l2j.gameserver.model.BlockList;
import net.sf.l2j.gameserver.model.FishData;
import net.sf.l2j.gameserver.model.ForceBuff;
+import net.sf.l2j.gameserver.model.Hide;
import net.sf.l2j.gameserver.model.Inventory;
import net.sf.l2j.gameserver.model.ItemContainer;
import net.sf.l2j.gameserver.model.L2Attackable;
@@ -137,6 +139,7 @@
import net.sf.l2j.gameserver.serverpackets.ChangeWaitType;
import net.sf.l2j.gameserver.serverpackets.CharInfo;
import net.sf.l2j.gameserver.serverpackets.ConfirmDlg;
+import net.sf.l2j.gameserver.serverpackets.CreatureSay;
import net.sf.l2j.gameserver.serverpackets.EtcStatusUpdate;
import net.sf.l2j.gameserver.serverpackets.ExAutoSoulShot;
import net.sf.l2j.gameserver.serverpackets.ExDuelUpdateUserInfo;
@@ -3826,6 +3829,16 @@
	        		&& (target.getOwnerId() == getObjectId() || isInLooterParty(target.getOwnerId())))
	        	target.resetOwnerTimer();

+	        if(target.isHide()){
+	        	
+	        	getInventory().addItem("", Hide.rewardId, Hide.rewardCount, this, null);
+	        	sendPacket(new InventoryUpdate());
+	        	sendMessage("You won the event!");
+	        	Hide.cleanEvent();
+	        	Broadcast.toAllOnlinePlayers(new CreatureSay(0,Say2.ANNOUNCEMENT,"Hide Event","Winner is: "+getName()+".Event ended."));
+	        	target.setHide(false);
+	        	return;
+	        }
			// Remove the L2ItemInstance from the world and send server->client GetItem packets
			target.pickupMe(this);
			 if(Config.SAVE_DROPPED_ITEM) // item must be removed from ItemsOnGroundManager if is active
Index: java/net/sf/l2j/gameserver/handler/admincommandhandlers/AdminGoHide.java
===================================================================
--- java/net/sf/l2j/gameserver/handler/admincommandhandlers/AdminGoHide.java	(revision 0)
+++ java/net/sf/l2j/gameserver/handler/admincommandhandlers/AdminGoHide.java	(revision 0)
@@ -0,0 +1,59 @@
+/* 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.admincommandhandlers;
+
+import net.sf.l2j.gameserver.handler.IAdminCommandHandler;
+import net.sf.l2j.gameserver.model.Hide;
+import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
+
+/**
+ *
+ * @author  Iracundus
+ */
+public class AdminGoHide implements IAdminCommandHandler
+{
+
+	private static String[] ADMIN_COMMANDS = {"admin_gohide"};
+
+	@Override
+	public boolean useAdminCommand(String command, L2PcInstance activeChar)
+	{
+		if(command.startsWith("admin_gohide")){
+			if(activeChar == null)
+				return false;
+			
+			if(Hide.running == false){
+				activeChar.sendMessage("Event is not in progress");
+				return false;
+			}
+			
+			int x = Hide.getX() , y = Hide.getY() , z = Hide.getZ();
+			activeChar.teleToLocation(x, y, z);
+		}
+		
+		return true;
+	}
+
+	
+	@Override
+	public String[] getAdminCommandList()
+	{
+		return ADMIN_COMMANDS;
+	}
+	
+}
Index: java/net/sf/l2j/gameserver/model/L2ItemInstance.java
===================================================================
--- java/net/sf/l2j/gameserver/model/L2ItemInstance.java	(revision 5263)
+++ java/net/sf/l2j/gameserver/model/L2ItemInstance.java	(working copy)
@@ -92,6 +92,8 @@
	/** Slot where item is stored */
	private int _locData;

+	private boolean hide;
+	
	/** Level of enchantment of the item */
	private int _enchantLevel;

@@ -286,6 +288,14 @@
		}
	}

+	public boolean isHide(){
+		return hide;
+	}
+	
+	public void setHide(boolean j){
+		hide = j;
+	}
+	
	// No logging (function designed for shots only)
	public void changeCountWithoutTrace(String process, int count, L2PcInstance creator, L2Object reference)
	{
Index: java/net/sf/l2j/gameserver/model/Hide.java
===================================================================
--- java/net/sf/l2j/gameserver/model/Hide.java	(revision 0)
+++ java/net/sf/l2j/gameserver/model/Hide.java	(revision 0)
@@ -0,0 +1,120 @@
+package net.sf.l2j.gameserver.model;
+
+
+import net.sf.l2j.gameserver.ThreadPoolManager;
+import net.sf.l2j.gameserver.clientpackets.Say2;
+import net.sf.l2j.gameserver.network.SystemMessageId;
+import net.sf.l2j.gameserver.serverpackets.CreatureSay;
+import net.sf.l2j.gameserver.serverpackets.SystemMessage;
+import net.sf.l2j.gameserver.util.Broadcast;
+import net.sf.l2j.util.Rnd;
+
+public class Hide{
+	
+	public static final int rewardId = 2807;
+	public static final int rewardCount = 50;
+	private static Hide _instance;
+	private final int delay = 180000;
+	private final static int itemId = 7683;
+	private final static int itemCount = 1;
+	public static boolean running = false;
+	private static int x;
+	private static int y;
+	private static int z = 0;
+	private final int[][] teleports = { {116496,145020,-2569} , {18605,145378,-3129} , {-83083,150505,-3134} };
+	static L2ItemInstance item = null;
+	
+	public static int getX(){
+		return x;
+	}
+	
+	public static int getY(){
+		return y;
+	}
+	
+	public static int getZ(){
+		return z;
+	}
+	
+	public static int getItemId(){
+		return itemId;
+	}
+	
+	public static int getItemCount(){
+		return itemCount;
+	}
+	
+	public void startEvent(){
+		running = true;
+		System.out.println("Automatic Hide Event started with success.");
+		int s = Rnd.get(teleports.length);
+		x = teleports[s][0];
+		y = teleports[s][1];
+		z = teleports[s][2];
+		SystemMessage sm = new SystemMessage(SystemMessageId.S2_WAS_DROPPED_IN_THE_S1_REGION);
+		sm.addZoneName(getX(), getY(), getZ()); 
+		sm.addItemName(itemId);
+		item = new L2ItemInstance(Rnd.get(65535),itemId);
+		L2World.getInstance().storeObject(item);
+		item.setCount(itemCount);
+		item.setHide(true);
+		item.getPosition().setWorldPosition(x, y ,z);
+        item.getPosition().setWorldRegion(L2World.getInstance().getRegion(item.getPosition().getWorldPosition()));
+        item.getPosition().getWorldRegion().addVisibleObject(item);
+        item.setProtected(false);
+        item.setIsVisible(true);
+        L2World.getInstance().addVisibleObject(item, item.getPosition().getWorldRegion(), null);
+	    
+        
+   
+        Broadcast.toAllOnlinePlayers(new CreatureSay(0,Say2.ANNOUNCEMENT,"Hide Event","Event started, Item dropped: "+item.getItem().getName()+", find it and win!"));
+        Broadcast.toAllOnlinePlayers(sm);
+        ThreadPoolManager.getInstance().scheduleGeneral(new Check(), 60000);
+	}
+	
+	public void checkAfterTime(){
+		if(running == false)
+			return;
+		if(item.isHide())
+			item.setHide(false);
+		item.decayMe();
+		L2World.getInstance().removeObject(item);
+		cleanEvent(); 
+		Broadcast.toAllOnlinePlayers(new CreatureSay(0,Say2.ANNOUNCEMENT,"Hide Event","Unfortunately,none find the item , event finished!"));
+	}
+	
+	public static void cleanEvent(){
+		x = 0;
+		y = 0;
+		z = 0;
+		running = false;
+		if(item != null){
+			item.decayMe();
+		L2World.getInstance().removeObject(item);
+		}
+		item = null;
+	}
+	
+	private Hide(){
+		ThreadPoolManager.getInstance().scheduleGeneralAtFixedRate(new Event(), delay, delay);
+		System.out.println("Automatic Hide event loaded with success.");
+	}
+	
+	public static Hide getInstance(){
+		if(_instance == null)
+			_instance = new Hide();
+		return _instance;
+	}
+	
+	public class Check implements Runnable{
+		public void run(){
+			checkAfterTime();
+		}
+	}
+	
+	public class Event implements Runnable{
+		public void run(){
+			startEvent();	
+		}
+	}
+}
\ No newline at end of file
Index: java/net/sf/l2j/gameserver/GameServer.java
===================================================================
--- java/net/sf/l2j/gameserver/GameServer.java	(revision 5263)
+++ java/net/sf/l2j/gameserver/GameServer.java	(working copy)
@@ -90,6 +90,7 @@
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGeodata;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGm;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGmChat;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGoHide;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminHeal;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminHelpPage;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminInvul;
@@ -218,6 +219,7 @@
import net.sf.l2j.gameserver.instancemanager.SiegeManager;
import net.sf.l2j.gameserver.model.AutoChatHandler;
import net.sf.l2j.gameserver.model.AutoSpawnHandler;
+import net.sf.l2j.gameserver.model.Hide;
import net.sf.l2j.gameserver.model.L2Manor;
import net.sf.l2j.gameserver.model.L2PetDataTable;
import net.sf.l2j.gameserver.model.L2World;
@@ -518,6 +520,7 @@

		_adminCommandHandler = AdminCommandHandler.getInstance();
		_adminCommandHandler.registerAdminCommandHandler(new AdminAdmin());
+		_adminCommandHandler.registerAdminCommandHandler(new AdminGoHide());
		_adminCommandHandler.registerAdminCommandHandler(new AdminInvul());
		_adminCommandHandler.registerAdminCommandHandler(new AdminDelete());
		_adminCommandHandler.registerAdminCommandHandler(new AdminKill());
@@ -604,6 +607,7 @@
			CoupleManager.getInstance();

         TaskManager.getInstance();
+        Hide.getInstance();

		GmListTable.getInstance();

 

Credits me

Posted

dwste karma gia ti douleia pou ekane

gj file sunexeise etsi kai na se rwteisw auto edw den to eixes sto market place ?

να σαι καλα φιλε.

Ναι το ειχα , 2 αντιγραφα πουληθηκαν αλλα αποφασισα να το κανω share τελικα. Αυτοι που το αγορασαν πηραν δωρο ακομα 2 event για να μην αδικηθουν.

Posted

Μόλις το έβαλα στο source μου και δεν έδειξε κανένα error,πολύ καλό code!

Μία ερώτηση:Που αλλάζω το reward που θα παίρνει ο νικητής και αυτό που θα γίνεται dropped?

Posted

Μόλις το έβαλα στο source μου και δεν έδειξε κανένα error,πολύ καλό code!

Μία ερώτηση:Που αλλάζω το reward που θα παίρνει ο νικητής και αυτό που θα γίνεται dropped?

Ευχαριστω

 

 

public static final int rewardId = 2807;
public static final int rewardCount = 50;

Posted

Κάτι τελευταίο που μου ήρθε στο μυαλό, γίνεται να βάλω 3,4 items και να πετάει 1 από αυτά όποιο θέλει;

 

Posted

file to dokimasa kai douleuei kanonika alla exw ena provlima

den leei se poio Town aipese to item

epeisis o xronos pou prepei na vroun to item einai auto edw ?

 

(new Check(), 60000);

  • 1 month later...
  • 1 month later...
Posted

Ολα ειναι αυτοματα.

 

Καθε 2 ωρες(μπορειτε να το αλλαξετε) ενα item(μπορειτε να το αλλαξετε , default: rabbit ears) πεφτει σε μια τυχαια περιοχη(εσεις διαλεγετε ολα τα πιθανα coordinates που μπορει να πεσει) και οι παικτες ενημερωνονται οτι το event ξεκινησε και σε ποια περιοχη επεσε. Π.χ μπορει να ειναι στην Giran Town , αλλα μπορει να ειναι οπουδηποτε εκει.Εχουν 15 λεπτα(μπορειτε να το αλλαξετε) να το βρουνε αλλιως εξαφανιζεται και το event τελειωνει.Ο πρωτος που το βρει και το κανει drop κερδιζει το event και παιρνει το reward(Default: 50 gold bars, μπορειτε να το αλλαξετε). Το event αρχιζει παλι σε 2 ωρες(οπως ειπα μπορειτε να το αλλαξετε).Στην διαρκεια του event ο admin μπορει να πατησει //gohide για να παει στην περιοχη που ειναι το item ακριβως.

 

 

### Eclipse Workspace Patch 1.0
#P Chr.6GMS
Index: java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java
===================================================================
--- java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java	(revision 5263)
+++ java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java	(working copy)
@@ -51,6 +51,7 @@
import net.sf.l2j.gameserver.ai.L2PlayerAI;
import net.sf.l2j.gameserver.cache.HtmCache;
import net.sf.l2j.gameserver.cache.WarehouseCacheManager;
+import net.sf.l2j.gameserver.clientpackets.Say2;
import net.sf.l2j.gameserver.communitybbs.BB.Forum;
import net.sf.l2j.gameserver.communitybbs.Manager.ForumsBBSManager;
import net.sf.l2j.gameserver.datatables.CharTemplateTable;
@@ -82,6 +83,7 @@
import net.sf.l2j.gameserver.model.BlockList;
import net.sf.l2j.gameserver.model.FishData;
import net.sf.l2j.gameserver.model.ForceBuff;
+import net.sf.l2j.gameserver.model.Hide;
import net.sf.l2j.gameserver.model.Inventory;
import net.sf.l2j.gameserver.model.ItemContainer;
import net.sf.l2j.gameserver.model.L2Attackable;
@@ -137,6 +139,7 @@
import net.sf.l2j.gameserver.serverpackets.ChangeWaitType;
import net.sf.l2j.gameserver.serverpackets.CharInfo;
import net.sf.l2j.gameserver.serverpackets.ConfirmDlg;
+import net.sf.l2j.gameserver.serverpackets.CreatureSay;
import net.sf.l2j.gameserver.serverpackets.EtcStatusUpdate;
import net.sf.l2j.gameserver.serverpackets.ExAutoSoulShot;
import net.sf.l2j.gameserver.serverpackets.ExDuelUpdateUserInfo;
@@ -3826,6 +3829,16 @@
	        		&& (target.getOwnerId() == getObjectId() || isInLooterParty(target.getOwnerId())))
	        	target.resetOwnerTimer();

+	        if(target.isHide()){
+	        	
+	        	getInventory().addItem("", Hide.rewardId, Hide.rewardCount, this, null);
+	        	sendPacket(new InventoryUpdate());
+	        	sendMessage("You won the event!");
+	        	Hide.cleanEvent();
+	        	Broadcast.toAllOnlinePlayers(new CreatureSay(0,Say2.ANNOUNCEMENT,"Hide Event","Winner is: "+getName()+".Event ended."));
+	        	target.setHide(false);
+	        	return;
+	        }
			// Remove the L2ItemInstance from the world and send server->client GetItem packets
			target.pickupMe(this);
			 if(Config.SAVE_DROPPED_ITEM) // item must be removed from ItemsOnGroundManager if is active
Index: java/net/sf/l2j/gameserver/handler/admincommandhandlers/AdminGoHide.java
===================================================================
--- java/net/sf/l2j/gameserver/handler/admincommandhandlers/AdminGoHide.java	(revision 0)
+++ java/net/sf/l2j/gameserver/handler/admincommandhandlers/AdminGoHide.java	(revision 0)
@@ -0,0 +1,59 @@
+/* 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.admincommandhandlers;
+
+import net.sf.l2j.gameserver.handler.IAdminCommandHandler;
+import net.sf.l2j.gameserver.model.Hide;
+import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
+
+/**
+ *
+ * @author  Iracundus
+ */
+public class AdminGoHide implements IAdminCommandHandler
+{
+
+	private static String[] ADMIN_COMMANDS = {"admin_gohide"};
+
+	@Override
+	public boolean useAdminCommand(String command, L2PcInstance activeChar)
+	{
+		if(command.startsWith("admin_gohide")){
+			if(activeChar == null)
+				return false;
+			
+			if(Hide.running == false){
+				activeChar.sendMessage("Event is not in progress");
+				return false;
+			}
+			
+			int x = Hide.getX() , y = Hide.getY() , z = Hide.getZ();
+			activeChar.teleToLocation(x, y, z);
+		}
+		
+		return true;
+	}
+
+	
+	@Override
+	public String[] getAdminCommandList()
+	{
+		return ADMIN_COMMANDS;
+	}
+	
+}
Index: java/net/sf/l2j/gameserver/model/L2ItemInstance.java
===================================================================
--- java/net/sf/l2j/gameserver/model/L2ItemInstance.java	(revision 5263)
+++ java/net/sf/l2j/gameserver/model/L2ItemInstance.java	(working copy)
@@ -92,6 +92,8 @@
	/** Slot where item is stored */
	private int _locData;

+	private boolean hide;
+	
	/** Level of enchantment of the item */
	private int _enchantLevel;

@@ -286,6 +288,14 @@
		}
	}

+	public boolean isHide(){
+		return hide;
+	}
+	
+	public void setHide(boolean j){
+		hide = j;
+	}
+	
	// No logging (function designed for shots only)
	public void changeCountWithoutTrace(String process, int count, L2PcInstance creator, L2Object reference)
	{
Index: java/net/sf/l2j/gameserver/model/Hide.java
===================================================================
--- java/net/sf/l2j/gameserver/model/Hide.java	(revision 0)
+++ java/net/sf/l2j/gameserver/model/Hide.java	(revision 0)
@@ -0,0 +1,120 @@
+package net.sf.l2j.gameserver.model;
+
+
+import net.sf.l2j.gameserver.ThreadPoolManager;
+import net.sf.l2j.gameserver.clientpackets.Say2;
+import net.sf.l2j.gameserver.network.SystemMessageId;
+import net.sf.l2j.gameserver.serverpackets.CreatureSay;
+import net.sf.l2j.gameserver.serverpackets.SystemMessage;
+import net.sf.l2j.gameserver.util.Broadcast;
+import net.sf.l2j.util.Rnd;
+
+public class Hide{
+	
+	public static final int rewardId = 2807;
+	public static final int rewardCount = 50;
+	private static Hide _instance;
+	private final int delay = 180000;
+	private final static int itemId = 7683;
+	private final static int itemCount = 1;
+	public static boolean running = false;
+	private static int x;
+	private static int y;
+	private static int z = 0;
+	private final int[][] teleports = { {116496,145020,-2569} , {18605,145378,-3129} , {-83083,150505,-3134} };
+	static L2ItemInstance item = null;
+	
+	public static int getX(){
+		return x;
+	}
+	
+	public static int getY(){
+		return y;
+	}
+	
+	public static int getZ(){
+		return z;
+	}
+	
+	public static int getItemId(){
+		return itemId;
+	}
+	
+	public static int getItemCount(){
+		return itemCount;
+	}
+	
+	public void startEvent(){
+		running = true;
+		System.out.println("Automatic Hide Event started with success.");
+		int s = Rnd.get(teleports.length);
+		x = teleports[s][0];
+		y = teleports[s][1];
+		z = teleports[s][2];
+		SystemMessage sm = new SystemMessage(SystemMessageId.S2_WAS_DROPPED_IN_THE_S1_REGION);
+		sm.addZoneName(getX(), getY(), getZ()); 
+		sm.addItemName(itemId);
+		item = new L2ItemInstance(Rnd.get(65535),itemId);
+		L2World.getInstance().storeObject(item);
+		item.setCount(itemCount);
+		item.setHide(true);
+		item.getPosition().setWorldPosition(x, y ,z);
+        item.getPosition().setWorldRegion(L2World.getInstance().getRegion(item.getPosition().getWorldPosition()));
+        item.getPosition().getWorldRegion().addVisibleObject(item);
+        item.setProtected(false);
+        item.setIsVisible(true);
+        L2World.getInstance().addVisibleObject(item, item.getPosition().getWorldRegion(), null);
+	    
+        
+   
+        Broadcast.toAllOnlinePlayers(new CreatureSay(0,Say2.ANNOUNCEMENT,"Hide Event","Event started, Item dropped: "+item.getItem().getName()+", find it and win!"));
+        Broadcast.toAllOnlinePlayers(sm);
+        ThreadPoolManager.getInstance().scheduleGeneral(new Check(), 60000);
+	}
+	
+	public void checkAfterTime(){
+		if(running == false)
+			return;
+		if(item.isHide())
+			item.setHide(false);
+		item.decayMe();
+		L2World.getInstance().removeObject(item);
+		cleanEvent(); 
+		Broadcast.toAllOnlinePlayers(new CreatureSay(0,Say2.ANNOUNCEMENT,"Hide Event","Unfortunately,none find the item , event finished!"));
+	}
+	
+	public static void cleanEvent(){
+		x = 0;
+		y = 0;
+		z = 0;
+		running = false;
+		if(item != null){
+			item.decayMe();
+		L2World.getInstance().removeObject(item);
+		}
+		item = null;
+	}
+	
+	private Hide(){
+		ThreadPoolManager.getInstance().scheduleGeneralAtFixedRate(new Event(), delay, delay);
+		System.out.println("Automatic Hide event loaded with success.");
+	}
+	
+	public static Hide getInstance(){
+		if(_instance == null)
+			_instance = new Hide();
+		return _instance;
+	}
+	
+	public class Check implements Runnable{
+		public void run(){
+			checkAfterTime();
+		}
+	}
+	
+	public class Event implements Runnable{
+		public void run(){
+			startEvent();	
+		}
+	}
+}
\ No newline at end of file
Index: java/net/sf/l2j/gameserver/GameServer.java
===================================================================
--- java/net/sf/l2j/gameserver/GameServer.java	(revision 5263)
+++ java/net/sf/l2j/gameserver/GameServer.java	(working copy)
@@ -90,6 +90,7 @@
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGeodata;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGm;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGmChat;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGoHide;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminHeal;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminHelpPage;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminInvul;
@@ -218,6 +219,7 @@
import net.sf.l2j.gameserver.instancemanager.SiegeManager;
import net.sf.l2j.gameserver.model.AutoChatHandler;
import net.sf.l2j.gameserver.model.AutoSpawnHandler;
+import net.sf.l2j.gameserver.model.Hide;
import net.sf.l2j.gameserver.model.L2Manor;
import net.sf.l2j.gameserver.model.L2PetDataTable;
import net.sf.l2j.gameserver.model.L2World;
@@ -518,6 +520,7 @@

		_adminCommandHandler = AdminCommandHandler.getInstance();
		_adminCommandHandler.registerAdminCommandHandler(new AdminAdmin());
+		_adminCommandHandler.registerAdminCommandHandler(new AdminGoHide());
		_adminCommandHandler.registerAdminCommandHandler(new AdminInvul());
		_adminCommandHandler.registerAdminCommandHandler(new AdminDelete());
		_adminCommandHandler.registerAdminCommandHandler(new AdminKill());
@@ -604,6 +607,7 @@
			CoupleManager.getInstance();

         TaskManager.getInstance();
+        Hide.getInstance();

		GmListTable.getInstance();

 

Credits me

 

kapoios na help wste na bgalw config gia auto???

ta exw kanei poutana me ta boolean kai ta loipa!!!

  • 4 weeks later...
Posted

Γεία Χαρά!

Πέρασα αυτό το event σε L2j H5 Server...

Τρέχω τον server και εμφανίζει πως τρέχει το event ..

 

j137n9.jpg

 

Μπαίνω στο game και ξεκινά κανονικά το event..

 

34pcjte.jpg

 

Όταν βάζω την εντολή //gohide μου βγάζει πως δεν υπάρχει..

 

width=1024 height=578http://i46.tinypic.com/166hs35.jpg[/img]

 

και στο παράθυρο του game server βγάζει αυτό το μήνυμα..

 

vh83m8.jpg

 

στο αρχείο /adminCommands.xml έβαλα την εντολή gohide..

 

15nkbjr.jpg

 

το μόνο που δεν μπόρεσα να προσθέσω απο το code είναι στο αρχείο GameServer.java

_adminCommandHandler.registerAdminCommandHandler(new AdminGoHide());

 

Μπορεί κάποιος να βοηθήσει;

Posted

Γεία Χαρά!

Πέρασα αυτό το event σε L2j H5 Server...

Τρέχω τον server και εμφανίζει πως τρέχει το event ..

 

j137n9.jpg

 

Μπαίνω στο game και ξεκινά κανονικά το event..

 

34pcjte.jpg

 

Όταν βάζω την εντολή //gohide μου βγάζει πως δεν υπάρχει..

 

width=1024 height=578http://i46.tinypic.com/166hs35.jpg[/img]

 

και στο παράθυρο του game server βγάζει αυτό το μήνυμα..

 

vh83m8.jpg

 

στο αρχείο /adminCommands.xml έβαλα την εντολή gohide..

 

15nkbjr.jpg

 

το μόνο που δεν μπόρεσα να προσθέσω απο το code είναι στο αρχείο GameServer.java

_adminCommandHandler.registerAdminCommandHandler(new AdminGoHide());

 

Μπορεί κάποιος να βοηθήσει;

 

den sou douleuei h entolh giati apla den thn ekanes register alla den xero apo hi5 poy akribws kaneis register

phgene mia sto gameserver/handler/AdminCommandHandler.java mallon ekei thn kaneis register

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Posts

    • You think you have good “l2j” files until you try running a low-rate server.   Saying “there’s not a single L2 server out there worth mentioning” just shows you probably only know the first 10 servers on voting sites, the same voting sites that owned by them. You call the forum dead, yet you’re here discussing your next projects… From my perspective, you don’t seem ready to run any L2 server in 2025. Around 70% of players are here for RMT or ask for payment just to bring their clan, and you really think the community cares about Premium or donations or files quality? The other 20% spend their time downloading and deleting servers all day, playing for one day, then quitting for whatever random reason. And finally, the last 10% are the only ones who actually play because they genuinely like your features, your server files, and your overall project. Good luck 🙂
    • I genuinely admire your bravery - in an age where AI can whip up something better in under a minute, you still stubbornly try to sell these "projects" of yours on a forum that’s been clinically dead for years. That’s no longer determination, that’s digital archaeology. I just can’t tell whether you’re actually trying to make money, or simply testing how much we can endure before we ask an AI to generate you some actual talent.   And ofc AI will make it for free, $220 saved.
    • I’m glad I’m not the only one who appreciates Maxthor’s involvement in group gay orgies, he can’t be bothered to reply to messages, but covering the entire forum in gay lights is absolutely no issue for him. As for the project - the forum is packed with feedback from the testers, the lads are spending every spare moment fixing even the tiniest typo in an NPC’s text. I’ll share the links as soon as I get the green light. Edit: I forgot to add that the GM recruitment will begin once the links are released. Three people will be accepted, and they’ll work in a three-shift rotation so that there’s always a GM available online.
    • Added: a brand-new default dashboard template. You can now add multiple game/login server builds. Full support for running both PTS & L2J servers simultaneously, with switching between them. Payment systems: added OmegaPay and Pally (new PayPal-style API). Account history now stores everything: donations, items delivered to characters, referrals, transfers between game accounts, and coin transfers to another master account. Personal Promo Code System: you can create a promo code and assign it to a user or promoter. When donating, a player can enter this promo code to receive bonus coins, and the promo code owner also receives a bonus — all fully configurable in the admin panel.     Look demo site: demo
    • One of best project i play last few years
  • 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