Jump to content
  • 0

Help Java!


WhiTeAnGeL*
 Share

Question

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;
   }
}

Link to comment
Share on other sites

10 answers to this question

Recommended Posts

  • 0

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;
   }
}

 

 

Link to comment
Share on other sites

  • 0

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);

 

Link to comment
Share on other sites

  • 0

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.

Link to comment
Share on other sites

  • 0

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.

Link to comment
Share on other sites

  • 0

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);

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

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.

 Share



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