root/trunk/AE-go_GameServer/data/scripts/system/handlers/quest/verteron/_1146DelicateMandrake.java
| 2326 | 2440 | ||
|---|---|---|---|
27 | import com.aionemu.gameserver.questEngine.model.QuestState; | 27 | import com.aionemu.gameserver.questEngine.model.QuestState; |
28 | import com.aionemu.gameserver.questEngine.model.QuestStatus; | 28 | import com.aionemu.gameserver.questEngine.model.QuestStatus; |
29 | import com.aionemu.gameserver.services.ItemService; | 29 | import com.aionemu.gameserver.services.ItemService; |
30 | import com.aionemu.gameserver.services.QuestService; | ||
30 | import com.aionemu.gameserver.utils.PacketSendUtility; | 31 | import com.aionemu.gameserver.utils.PacketSendUtility; |
31 | 32 | ||
32 | /** | 33 | /** |
... | ... | ||
58 | if(env.getVisibleObject() instanceof Npc) | 59 | if(env.getVisibleObject() instanceof Npc) |
59 | targetId = ((Npc) env.getVisibleObject()).getNpcId(); | 60 | targetId = ((Npc) env.getVisibleObject()).getNpcId(); |
60 | QuestState qs = player.getQuestStateList().getQuestState(questId); | 61 | QuestState qs = player.getQuestStateList().getQuestState(questId); |
61 | if(qs == null) | 62 | if(qs == null || qs.getStatus() == QuestStatus.NONE) |
62 | { | 63 | { |
63 | if(targetId == 203123) | 64 | if(targetId == 203123) |
64 | { | 65 | { |
65 | if(env.getDialogId() == 25) | 66 | switch(env.getDialogId()) |
66 | return sendQuestDialog(player, env.getVisibleObject().getObjectId(), 1011); | 67 | { |
67 | if (ItemService.addItems(player, Collections.singletonList(new QuestItems(182200519, 1)))) | 68 | case 25: |
68 | return defaultQuestStartDialog(env); | 69 | return sendQuestDialog(player, env.getVisibleObject().getObjectId(), 1011); |
70 | case 1007: | ||
71 | return sendQuestDialog(player, env.getVisibleObject().getObjectId(), 4); | ||
72 | case 1002: | ||
73 | if (!ItemService.addItems(player, Collections.singletonList(new QuestItems(182200519, 1)))); | ||
74 | QuestService.questTimerStart(env, 900); | ||
75 | if (QuestService.startQuest(env, QuestStatus.START)) | ||
76 | return sendQuestDialog(player, env.getVisibleObject().getObjectId(), 1003); | ||
77 | else | ||
78 | return false; | ||
79 | case 1003: | ||
80 | return sendQuestDialog(player, env.getVisibleObject().getObjectId(), 1004); | ||
81 | } | ||
69 | } | 82 | } |
70 | } | 83 | } |
71 | else if(targetId == 203139) | 84 | else if(targetId == 203139) |
... | ... | ||
77 | { | 90 | { |
78 | qs.setQuestVar(2); | 91 | qs.setQuestVar(2); |
79 | player.getInventory().removeFromBagByItemId(182200011, itemCount); | 92 | player.getInventory().removeFromBagByItemId(182200011, itemCount); |
93 | QuestService.questTimerEnd(env); | ||
80 | qs.setStatus(QuestStatus.REWARD); | 94 | qs.setStatus(QuestStatus.REWARD); |
81 | updateQuestStatus(player, qs); | 95 | updateQuestStatus(player, qs); |
82 | return defaultQuestEndDialog(env); | 96 | return defaultQuestEndDialog(env); |
... | ... | ||
89 | } | 103 | } |
90 | return false; | 104 | return false; |
91 | } | 105 | } |
106 | |||
107 | @Override | ||
108 | public boolean onQuestTimerEndEvent(QuestEnv env) | ||
109 | { | ||
110 | Player player = env.getPlayer(); | ||
111 | QuestState qs = player.getQuestStateList().getQuestState(questId); | ||
112 | if(qs == null || qs.getStatus() != QuestStatus.START) | ||
113 | return false; | ||
114 | //int var = qs.getQuestVars().getQuestVars(); | ||
115 | PacketSendUtility.sendMessage(player, "ToDo: Set what happens when timer ends..... And remove temp from QuestService"); | ||
116 | return true; | ||
117 | } | ||
92 | } | 118 | } |
Download diff