Jump to content

Question

Posted

Paidia geia sas,

8a h8ela na mou pei kapoios pws 8a kanw auton ton kwdika gia l2jserver to new revision 4 martiou 2011...

 

/*
* 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.itemhandlers;

import net.sf.l2j.gameserver.ThreadPoolManager;
import net.sf.l2j.gameserver.datatables.NpcTable;
import net.sf.l2j.gameserver.handler.IItemHandler;
import net.sf.l2j.gameserver.idfactory.IdFactory;
import net.sf.l2j.gameserver.model.L2ItemInstance;
import net.sf.l2j.gameserver.model.L2Spawn;
import net.sf.l2j.gameserver.model.L2World;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.actor.instance.L2PlayableInstance;
import net.sf.l2j.gameserver.network.SystemMessageId;
import net.sf.l2j.gameserver.serverpackets.SystemMessage;
import net.sf.l2j.gameserver.templates.L2NpcTemplate;

/**
* @author x.v3ndetta@yahoo.com
*
*/
public class VendettaItem implements IItemHandler
{
   public class DeSpawnScheduleTimerTask implements Runnable
   {
      L2Spawn spawnedPlant = null;

      public DeSpawnScheduleTimerTask(L2Spawn spawn)
      {
         spawnedPlant = spawn;
      }

      public void run()
      {
         try
         {
            spawnedPlant.getLastSpawn().decayMe();
         } catch (Throwable t)
         {
         }
      }
   }

   private static int[] _itemIds = { 6391 };
   private static int[] _npcIds = { 18342 };
   private static int[] _npcLifeTime = { 20000 };

   public void useItem(L2PlayableInstance playable, L2ItemInstance item)
   {
      L2PcInstance activeChar = (L2PcInstance) playable;
      L2NpcTemplate template1 = null;
      int lifeTime = 0;
      int itemId = item.getItemId();
      for (int i = 0; i < _itemIds.length; i++)
      {
         if (_itemIds == itemId)
         {
            template1 = NpcTable.getInstance().getTemplate(_npcIds);
            lifeTime = _npcLifeTime;
            break;
         }
      }
      if (template1 == null)
         return;
      try
      {
         L2Spawn spawn = new L2Spawn(template1);
         spawn.setId(IdFactory.getInstance().getNextId());
         spawn.setLocx(activeChar.getX());
         spawn.setLocy(activeChar.getY());
         spawn.setLocz(activeChar.getZ());
         L2World.getInstance().storeObject(spawn.spawnOne());
         ThreadPoolManager.getInstance().scheduleGeneral(new DeSpawnScheduleTimerTask(spawn), lifeTime);
         activeChar.destroyItem("Consume", item.getObjectId(), 1, null, false);
      } catch (Exception e)
      {
         SystemMessage sm = new SystemMessage(SystemMessageId.S1_S2);
         sm.addString("Exception in useItem() of VendettaItem.java");
         activeChar.sendPacket(sm);
      }
   }

   public int[] getItemIds()
   {
      return _itemIds;
   }
}

10 answers to this question

Recommended Posts

  • 0
Posted

kanto test ayto file mou kai pes mou ti error  sou exei bgalei

 

workspace\L2J_DataPack\data\scripts\handlers

/*
* 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 handlers.itemhandlers;

import com.l2jserver.gameserver.ThreadPoolManager;
import com.l2jserver.gameserver.datatables.NpcTable;
import com.l2jserver.gameserver.idfactory.IdFactory;
import com.l2jserver.gameserver.model.L2ItemInstance;
import com.l2jserver.gameserver.model.L2Spawn;
import com.l2jserver.gameserver.model.L2World;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
import com.l2jserver.gameserver.model.actor.instance.L2PlayableInstance;
import com.l2jserver.gameserver.network.SystemMessageId;
import com.l2jserver.gameserver.serverpackets.SystemMessage;
import com.l2jserver.gameserver.templates.L2NpcTemplate;

/**
* @author x.v3ndetta@yahoo.com
*
*/
public class VendettaItem implements IItemHandler
{
   public class DeSpawnScheduleTimerTask implements Runnable
   {
      L2Spawn spawnedPlant = null;

      public DeSpawnScheduleTimerTask(L2Spawn spawn)
      {
         spawnedPlant = spawn;
      }

      public void run()
      {
         try
         {
            spawnedPlant.getLastSpawn().decayMe();
         } catch (Throwable t)
         {
         }
      }
   }

   private static int[] _itemIds = { 6391 };
   private static int[] _npcIds = { 18342 };
   private static int[] _npcLifeTime = { 20000 };

   public void useItem(L2PlayableInstance playable, L2ItemInstance item)
   {
      L2PcInstance activeChar = (L2PcInstance) playable;
      L2NpcTemplate template1 = null;
      int lifeTime = 0;
      int itemId = item.getItemId();
      for (int i = 0; i < _itemIds.length; i++)
      {
         if (_itemIds == itemId)
         {
            template1 = NpcTable.getInstance().getTemplate(_npcIds);
            lifeTime = _npcLifeTime;
            break;
         }
      }
      if (template1 == null)
         return;
      try
      {
         L2Spawn spawn = new L2Spawn(template1);
         spawn.setId(IdFactory.getInstance().getNextId());
         spawn.setLocx(activeChar.getX());
         spawn.setLocy(activeChar.getY());
         spawn.setLocz(activeChar.getZ());
         L2World.getInstance().storeObject(spawn.spawnOne());
         ThreadPoolManager.getInstance().scheduleGeneral(new DeSpawnScheduleTimerTask(spawn), lifeTime);
         activeChar.destroyItem("Consume", item.getObjectId(), 1, null, false);
      } catch (Exception e)
      {
         SystemMessage sm = new SystemMessage(SystemMessageId.S1_S2);
         sm.addString("Exception in useItem() of VendettaItem.java");
         activeChar.sendPacket(sm);
      }
   }

   public int[] getItemIds()
   {
      return _itemIds;
   }
}

 

 

  • 0
Posted

Akrivws to idio ekana me kokkino sou evala ta errors!

 

import com.l2jserver.gameserver.model.actor.instance.L2PlayableInstance;

import com.l2jserver.gameserver.network.SystemMessageId;

import com.l2jserver.gameserver.serverpackets.SystemMessage;

import com.l2jserver.gameserver.templates.L2NpcTemplate;

 

-------

 

public class VendettaItem implements IItemHandler

{

  public class DeSpawnScheduleTimerTask implements Runnable

  {

      L2Spawn spawnedPlant = null;

 

      public DeSpawnScheduleTimerTask(L2Spawn spawn)

 

-------

 

public void useItem(L2PlayableInstance playable, L2ItemInstance item)

  {

      L2PcInstance activeChar = (L2PcInstance) playable;

      L2NpcTemplate template1 = null;

      int lifeTime = 0;

      int itemId = item.getItemId();

      for (int i = 0; i < _itemIds.length; i++)

      {

        if (_itemIds == itemId)

        {

            template1 = NpcTable.getInstance().getTemplate(_npcIds);

            lifeTime = _npcLifeTime;

            break;

        }

 

----------

 

  L2Spawn spawn = new L2Spawn(template1);

        spawn.setId(IdFactory.getInstance().getNextId());

        spawn.setLocx(activeChar.getX());

        spawn.setLocy(activeChar.getY());

        spawn.setLocz(activeChar.getZ());

        L2World.getInstance().storeObject(spawn.spawnOne());

        ThreadPoolManager.getInstance().scheduleGeneral(new DeSpawnScheduleTimerTask(spawn), lifeTime);

        activeChar.destroyItem("Consume", item.getObjectId(), 1, null, false);

      } catch (Exception e)

      {

        SystemMessage sm = new SystemMessage(SystemMessageId.S1_S2);

        sm.addString("Exception in useItem() of VendettaItem.java");

        activeChar.sendPacket(sm);

 

  • 0
Posted

L2PlayableInstance den iparxei ston l2j apoti thimame. Einai L2PcInstance. Episis to SystemMessage exei alaksei , einai SystemMessageId to onoma ( exo amfibolia edo ). Chekare ston core ta onomata ton klaseon kai alakse ta. Episis to _itemsId den to exeis orisei pouthena ston kodika, prepei na to oriseis gia na to xrisimopoieis.

  • 0
Posted

Oxi. Diabase ti sou egrapsa kai lise to. Den thelei poli mialo, ta name apo ta conflicted packages tha alakseis me basei ayta pou tha breis ston core sou. An sto liso ego me teamviewer tote den tha exei kamia aksia giati den tha matheis tipota.

  • 0
Posted

L2PlayableInstance den iparxei ston l2j apoti thimame. Einai L2PcInstance. Episis to SystemMessage exei alaksei , einai SystemMessageId to onoma ( exo amfibolia edo ). Chekare ston core ta onomata ton klaseon kai alakse ta. Episis to _itemsId den to exeis orisei pouthena ston kodika, prepei na to oriseis gia na to xrisimopoieis.

 

pws to orizw sto to _itemsId ? to L2Playable uparxei edw import com.l2jserver.gameserver.model.actor.L2Playable;

kai ta ipolipa imports ta brhka se allou.. ta evala kai mou bgazei ta parakatw la8oi....

twra ta mono errors pou bgazei einai ta parakatw :

 

public class VendettaItem implements IItemHandler

{

  public class DeSpawnScheduleTimerTask implements Runnable

  {

      L2Spawn spawnedPlant = null;

 

      public DeSpawnScheduleTimerTask(L2Spawn spawn)

 

----------------

 

int itemId = item.getItemId();

      for (int i = 0; i < _itemIds.length; i++)

      {

        if (_itemIds == itemId)

        {

            template1 = NpcTable.getInstance().getTemplate(_npcIds);

            lifeTime = _npcLifeTime;

            break;

        }

      }

      if (template1 == null)

        return;

      try

      {

        L2Spawn spawn = new L2Spawn(template1);

        spawn.setId(IdFactory.getInstance().getNextId());

        spawn.setLocx(activeChar.getX());

        spawn.setLocy(activeChar.getY());

        spawn.setLocz(activeChar.getZ());

        L2World.getInstance().storeObject(spawn.spawnOne());

        ThreadPoolManager.getInstance().scheduleGeneral(new DeSpawnScheduleTimerTask(spawn), lifeTime);

        activeChar.destroyItem("Consume", item.getObjectId(), 1, null, false);

      } catch (Exception e)

      {

        SystemMessage sm = new SystemMessage(SystemMessageId.S1_S2);

        sm.addString("Exception in useItem() of VendettaItem.java");

        activeChar.sendPacket(sm);

 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...