Свернуть ↑
package quest.ishalgen;
import gameserver.model.EmotionType;
import gameserver.model.gameobjects.Npc;
import gameserver.model.gameobjects.player.Player;
import gameserver.network.aion.serverpackets.;
import gameserver.questEngine.handlers.QuestHandler;
import gameserver.questEngine.model.QuestCookie;
import gameserver.questEngine.model.QuestState;
import gameserver.questEngine.model.QuestStatus;
import gameserver.services.InstanceService;
import gameserver.services.QuestService;
import gameserver.services.TeleportService;
import gameserver.skillengine.SkillEngine;
import gameserver.skillengine.effect.EffectId;
import gameserver.utils.PacketSendUtility;
import gameserver.utils.ThreadPoolManager;
import gameserver.world.WorldMapInstance;
public class _2106VanarsFlattery extends QuestHandler
{
private final static int questId = 2106;
public _2106VanarsFlattery()
{
super(questId);
}
@Override public void register()
{
qe.setNpcQuestData(203502).addOnTalkEvent(questId) ;
qe.setNpcQuestData(203517).addOnTalkEvent(questId) ;
}
@Override public boolean onDialogEvent(final QuestCookie env)
{
if(!super.defaultQuestOnDialogInitStart(env)) return false;
final Player player = env.getPlayer();
final QuestState qs = player.getQuestStateList().getQuestState(questId);
int var = qs.getQuestVarById(0);
if(qs.getStatus() == QuestStatus.START)
{
switch(env.getTargetId())
{
case 203502:
switch(env.getDialogId())
{
case 26:
if(var == 1)
return sendQuestDialog(env, 1011);
PacketSendUtility.sendPacket(player, new SM_EMOTION(player, EmotionType.START_FLYTELEPORT, 1008, 0));
ThreadPoolManager.getInstance().schedule(new Runnable()
{
@Override public void run()
{
qs.setQuestVar(1);
updateQuestStatus(env);
PacketSendUtility.sendPacket(player, new SM_TELEPORT_LOC(220010000, 565.9267f, 2541.9456f, 270.97827f, 100));
TeleportService.teleportTo(player, 220010000, 1, 565.9267f, 2541.9456f, 270.97827f, (byte) 43);
}
}, 38000);
case 10000:
return defaultCloseDialog(env, 1, 2);
}
break;
}
}
return defaultQuestRewardDialog(env, 203517, 0);
}
}