Fixed nonexistent oracle teleport back to town.
This commit is contained in:
@@ -1480,18 +1480,12 @@ public class PlayerInstance extends Playable
|
||||
{
|
||||
event = "";
|
||||
}
|
||||
|
||||
if (!_quests.containsKey(quest))
|
||||
if (event.length() == 0)
|
||||
{
|
||||
return retval;
|
||||
}
|
||||
|
||||
QuestState qs = getQuestState(quest);
|
||||
if ((qs == null) && (event.length() == 0))
|
||||
{
|
||||
return retval;
|
||||
}
|
||||
|
||||
if (qs == null)
|
||||
{
|
||||
Quest q = null;
|
||||
@@ -1506,9 +1500,10 @@ public class PlayerInstance extends Playable
|
||||
}
|
||||
qs = q.newQuestState(this);
|
||||
}
|
||||
if ((qs != null) && (getLastQuestNpcObject() > 0))
|
||||
|
||||
if ((qs != null) && (_questNpcObject > 0))
|
||||
{
|
||||
final WorldObject object = World.getInstance().findObject(getLastQuestNpcObject());
|
||||
final WorldObject object = World.getInstance().findObject(_questNpcObject);
|
||||
if ((object instanceof NpcInstance) && isInsideRadius(object, NpcInstance.INTERACTION_DISTANCE, false, false))
|
||||
{
|
||||
final NpcInstance npc = (NpcInstance) object;
|
||||
@@ -1523,7 +1518,6 @@ public class PlayerInstance extends Playable
|
||||
{
|
||||
showQuestWindow(quest, State.getStateName(qs.getState()));
|
||||
}
|
||||
|
||||
retval = qs;
|
||||
}
|
||||
}
|
||||
|
@@ -295,6 +295,15 @@ public class RequestBypassToServer extends GameClientPacket
|
||||
}
|
||||
else
|
||||
{
|
||||
final WorldObject object = player.getTarget();
|
||||
if ((object instanceof NpcInstance) && (player.getLastQuestNpcObject() != object.getObjectId()))
|
||||
{
|
||||
final WorldObject lastQuestNpc = World.getInstance().findObject(player.getLastQuestNpcObject());
|
||||
if ((lastQuestNpc == null) || !player.isInsideRadius(lastQuestNpc, NpcInstance.INTERACTION_DISTANCE, false, false))
|
||||
{
|
||||
player.setLastQuestNpcObject(object.getObjectId());
|
||||
}
|
||||
}
|
||||
player.processQuestEvent(p.substring(0, idx), p.substring(idx).trim());
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user