Overhaul of the director system and opening quests. Private Areas further implemented as well.

This commit is contained in:
Filip Maj 2017-03-07 00:09:37 -05:00
parent dcaad5729d
commit e898c045f7
69 changed files with 2602 additions and 1816 deletions

View file

@ -1,33 +0,0 @@
require ("global")
require("/quests/man/man0g0")
function onEventStarted(player, actor, triggerName)
man0g0Quest = GetStaticActor("Man0g0");
callClientFunction(player, "delegateEvent", player, man0g0Quest, "processTtrNomal001withHQ", nil, nil, nil, nil);
player:EndEvent();
end
function onTalked(player, npc)
man0g0Quest = player:GetQuest("Man0g0");
if (man0g0Quest ~= nil) then
yda = GetWorldManager():GetActorInWorld(1000009);
papalymo = GetWorldManager():GetActorInWorld(1000010);
if (man0g0Quest:GetQuestFlag(MAN0G0_FLAG_TUTORIAL1_DONE) == false) then
yda:SetQuestGraphic(player, 0x0);
papalymo:SetQuestGraphic(player, 0x2);
else
if (man0g0Quest:GetQuestFlag(MAN0G0_FLAG_MINITUT_DONE1) == true) then
yda:SetQuestGraphic(player, 0x2);
papalymo:SetQuestGraphic(player, 0x0);
end
end
end
end

View file

@ -6,9 +6,10 @@ function onEventStarted(player, npc, triggerName)
if (triggerName == "talkDefault") then
if (man0g0Quest:GetQuestFlag(MAN0G0_FLAG_MINITUT_DONE1) == false) then
callClientFunction(player, "delegateEvent", player, man0g0Quest, "processEvent000_2", nil, nil, nil);
callClientFunction(player, "delegateEvent", player, man0g0Quest, "processEvent000_3", nil, nil, nil);
man0g0Quest:SetQuestFlag(MAN0G0_FLAG_MINITUT_DONE1, true);
man0g0Quest:SaveData();
npc:SetQuestGraphic(player, 0x0);
player:GetDirector():OnTalked(npc);
else
callClientFunction(player, "delegateEvent", player, man0g0Quest, "processEvent000_2", nil, nil, nil);

View file

@ -13,16 +13,27 @@ function onEventStarted(player, npc, triggerName)
if (triggerName == "pushDefault") then
callClientFunction(player, "delegateEvent", player, man0g0Quest, "processTtrNomal002", nil, nil, nil);
elseif (triggerName == "talkDefault") then
--Is doing talk tutorial?
if (man0g0Quest:GetQuestFlag(MAN0G0_FLAG_TUTORIAL1_DONE) == false) then
callClientFunction(player, "delegateEvent", player, man0g0Quest, "processTtrNomal003", nil, nil, nil);
player:SetEventStatus(npc, "pushDefault", false, 0x2);
npc:SetQuestGraphic(player, 0x2);
player:GetDirector():OnTalked(npc);
man0g0Quest:SetQuestFlag(MAN0G0_FLAG_TUTORIAL1_DONE, true);
man0g0Quest:SaveData();
--Was she talked to after papalymo?
else
if (man0g0Quest:GetQuestFlag(MAN0G0_FLAG_MINITUT_DONE1) == true) then
man0g0Quest:SetQuestFlag(MAN0G0_FLAG_TUTORIAL2_DONE, true);
callClientFunction(player, "delegateEvent", player, man0g0Quest, "processEvent010_1", nil, nil, nil);
if (man0g0Quest:GetQuestFlag(MAN0G0_FLAG_MINITUT_DONE1) == true) then
player:EndEvent();
player:SetDirector("QuestDirectorMan0g001", true);
worldMaster = GetWorldMaster();
player:SendGameMessage(player, worldMaster, 34108, 0x20);
player:SendGameMessage(player, worldMaster, 50011, 0x20);
GetWorldManager():DoPlayerMoveInZone(player, 10);
player:KickEvent(player:GetDirector(), "noticeEvent", true);
return;
else
callClientFunction(player, "delegateEvent", player, man0g0Quest, "processEvent000_1", nil, nil, nil);
end
@ -31,24 +42,4 @@ function onEventStarted(player, npc, triggerName)
end
player:EndEvent();
end
function onEventUpdate(player, npc)
man0g0Quest = player:GetQuest("Man0g0");
if (man0g0Quest:GetQuestFlag(MAN0G0_FLAG_TUTORIAL2_DONE) == true) then
player:EndEvent();
player:SetDirector("QuestDirectorMan0g001", true);
worldMaster = GetWorldMaster();
player:SendGameMessage(player, worldMaster, 34108, 0x20);
player:SendGameMessage(player, worldMaster, 50011, 0x20);
GetWorldManager():DoPlayerMoveInZone(player, 10);
player:KickEvent(player:GetDirector(), "noticeEvent", true);
else
player:EndEvent();
end
end

View file

@ -1,20 +0,0 @@
require ("global")
function onZoneInit(zone)
end
function onZoneIn(player)
openingQuest = player:getQuest(110005);
--Opening Quest
if (openingQuest ~= nil) then
if (openingQuest:GetQuestFlag(0) == false) then
player:kickEvent(player:getDirector(), "noticeEvent");
end
end
end
function onZoneOut(zone, player)
end