123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- /**
- *
- */
- package handlers.itemhandlers;
- import com.l2jserver.gameserver.handler.IItemHandler;
- import com.l2jserver.gameserver.model.actor.L2Playable;
- import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
- import com.l2jserver.gameserver.model.item.L2Item;
- import com.l2jserver.gameserver.model.item.instance.L2ItemInstance;
- import com.l2jserver.gameserver.model.quest.Quest;
- import com.l2jserver.gameserver.model.quest.QuestState;
- /**
- * @author BiggBoss
- *
- */
- public class QuestItems implements IItemHandler
- {
- /* (non-Javadoc)
- * @see com.l2jserver.gameserver.handler.IItemHandler#useItem(com.l2jserver.gameserver.model.actor.L2Playable, com.l2jserver.gameserver.model.L2ItemInstance)
- */
- @Override
- public void useItem(L2Playable playable, L2ItemInstance item, boolean forceuse)
- {
- if(!(playable instanceof L2PcInstance))
- return;
-
- L2PcInstance player = (L2PcInstance) playable;
-
- if(!player.destroyItem("Item Handler - QuestItems", item, player, true))
- return;
-
- L2Item itm = item.getItem();
- for(Quest quest : itm.getQuestEvents())
- {
- QuestState state = player.getQuestState(quest.getName());
- if(state == null || !state.isStarted())
- continue;
-
- quest.notifyItemUse(itm, player);
- }
- }
- }
|