mirror of
https://bitbucket.org/Ioncannon/project-meteor-server.git
synced 2025-06-09 22:14:39 +02:00
Overhaul of the director system and opening quests. Private Areas further implemented as well.
This commit is contained in:
parent
dcaad5729d
commit
e898c045f7
69 changed files with 2602 additions and 1816 deletions
66
data/scripts/directors/OpeningDirector.lua
Normal file
66
data/scripts/directors/OpeningDirector.lua
Normal file
|
@ -0,0 +1,66 @@
|
|||
require ("global")
|
||||
require ("quests/man/man0l0")
|
||||
require ("quests/man/man0g0")
|
||||
require ("quests/man/man0u0")
|
||||
|
||||
function init()
|
||||
return "/Director/OpeningDirector";
|
||||
end
|
||||
|
||||
function onEventStarted(player, actor, triggerName)
|
||||
|
||||
if (player:HasQuest(110001) == true) then
|
||||
quest = player:GetQuest("Man0l0");
|
||||
callClientFunction(player, "delegateEvent", player, quest, "processTtrNomal001withHQ", nil, nil, nil);
|
||||
elseif (player:HasQuest(110005) == true) then
|
||||
quest = player:GetQuest("Man0g0");
|
||||
callClientFunction(player, "delegateEvent", player, quest, "processTtrNomal001withHQ", nil, nil, nil);
|
||||
elseif (player:HasQuest(110009) == true) then
|
||||
quest = player:GetQuest("Man0u0");
|
||||
callClientFunction(player, "delegateEvent", player, quest, "processTtrNomal001withHQ", nil, nil, nil);
|
||||
end
|
||||
|
||||
player:EndEvent();
|
||||
|
||||
end
|
||||
|
||||
function onUpdate()
|
||||
end
|
||||
|
||||
function onTalkEvent(player, npc)
|
||||
;
|
||||
if (player:HasQuest(110001) == true) then
|
||||
man0l0Quest = player:GetQuest("man0l0");
|
||||
if (man0l0Quest:GetQuestFlag(MAN0L0_FLAG_MINITUT_DONE1) == true and man0l0Quest:GetQuestFlag(MAN0L0_FLAG_MINITUT_DONE2) == true and man0l0Quest:GetQuestFlag(MAN0L0_FLAG_MINITUT_DONE3) == true) then
|
||||
doorNpc = GetWorldManager():GetActorInWorldByUniqueId("exit_door");
|
||||
player:SetEventStatus(doorNpc, "pushDefault", true, 0x2);
|
||||
doorNpc:SetQuestGraphic(player, 0x3);
|
||||
end
|
||||
elseif (player:HasQuest(110005) == true) then
|
||||
man0g0Quest = player:GetQuest("man0g0");
|
||||
if (man0g0Quest:GetQuestFlag(MAN0G0_FLAG_MINITUT_DONE1) == true) then
|
||||
yda = GetWorldManager():GetActorInWorldByUniqueId("yda");
|
||||
yda:SetQuestGraphic(player, 0x2);
|
||||
end
|
||||
elseif (player:HasQuest(110009) == true) then
|
||||
man0u0Quest = player:GetQuest("man0u0");
|
||||
if (man0u0Quest:GetQuestFlag(MAN0U0_FLAG_MINITUT_DONE1) == true and man0u0Quest:GetQuestFlag(MAN0U0_FLAG_MINITUT_DONE2) == true and man0u0Quest:GetQuestFlag(MAN0U0_FLAG_MINITUT_DONE3) == true) then
|
||||
exitTriggerNpc = GetWorldManager():GetActorInWorldByUniqueId("exit_trigger");
|
||||
player:SetEventStatus(exitTriggerNpc, "pushDefault", true, 0x2);
|
||||
exitTriggerNpc:SetQuestGraphic(player, 0x3);
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
function onPushEvent(player, npc)
|
||||
end
|
||||
|
||||
function onCommandEvent(player, command)
|
||||
end
|
||||
|
||||
function onEventUpdate(player, npc)
|
||||
end
|
||||
|
||||
function onCommand(player, command)
|
||||
end
|
66
data/scripts/directors/Quest/QuestDirectorMan0g001.lua
Normal file
66
data/scripts/directors/Quest/QuestDirectorMan0g001.lua
Normal file
|
@ -0,0 +1,66 @@
|
|||
require ("global")
|
||||
require ("quests/man/man0g0")
|
||||
|
||||
--processTtrBtl001: Active Mode Tutorial
|
||||
--processTtrBtl002: Targetting Tutorial (After active mode done)
|
||||
--processTtrBtl003: Auto Attack Done
|
||||
--processTtrBtl004: Tutorial Complete
|
||||
|
||||
--[[
|
||||
12: TP
|
||||
13: WeaponSkills
|
||||
|
||||
]]--
|
||||
|
||||
function init()
|
||||
return "/Director/Quest/QuestDirectorMan0g001";
|
||||
end
|
||||
|
||||
function onEventStarted(player, actor, triggerName)
|
||||
|
||||
quest = GetStaticActor("Man0g0");
|
||||
callClientFunction(player, "delegateEvent", player, quest, "processTtrBtl001", nil, nil, nil);
|
||||
callClientFunction(player, "delegateEvent", player, quest, "processTtrBtl002", nil, nil, nil);
|
||||
|
||||
--sendDataPacket: Success
|
||||
--sendDataPacket: CloseWidget
|
||||
--IF DoW:
|
||||
--sendDataPacket: OpenWidget (TP)
|
||||
--IF TP REACHED:
|
||||
--sendDataPacket: CloseWidget
|
||||
--sendDataPacket: OpenWidget (WS)
|
||||
--IF WS USED:
|
||||
--sendDataPacket: Success
|
||||
--sendDataPacket: CloseWidget
|
||||
--ELSE MAGIC:
|
||||
--sendDataPacket: OpenWidget (DEFEAT ENEMY)
|
||||
|
||||
--IF DEAD
|
||||
--sendDataPacket: Attention
|
||||
|
||||
player:EndEvent();
|
||||
|
||||
end
|
||||
|
||||
function onUpdate()
|
||||
end
|
||||
|
||||
function onTalkEvent(player, npc)
|
||||
|
||||
end
|
||||
|
||||
function onPushEvent(player, npc)
|
||||
end
|
||||
|
||||
function onCommandEvent(player, command)
|
||||
|
||||
quest = GetStaticActor("Man0g0");
|
||||
callClientFunction(player, "delegateEvent", player, quest, "processTtrBtl002", nil, nil, nil);
|
||||
|
||||
end
|
||||
|
||||
function onEventUpdate(player, npc)
|
||||
end
|
||||
|
||||
function onCommand(player, command)
|
||||
end
|
66
data/scripts/directors/Quest/QuestDirectorMan0l001.lua
Normal file
66
data/scripts/directors/Quest/QuestDirectorMan0l001.lua
Normal file
|
@ -0,0 +1,66 @@
|
|||
require ("global")
|
||||
require ("quests/man/man0l0")
|
||||
|
||||
--processTtrBtl001: Active Mode Tutorial
|
||||
--processTtrBtl002: Targetting Tutorial (After active mode done)
|
||||
--processTtrBtl003: Auto Attack Done
|
||||
--processTtrBtl004: Tutorial Complete
|
||||
|
||||
--[[
|
||||
12: TP
|
||||
13: WeaponSkills
|
||||
|
||||
]]--
|
||||
|
||||
function init()
|
||||
return "/Director/Quest/QuestDirectorMan0l001";
|
||||
end
|
||||
|
||||
function onEventStarted(player, actor, triggerName)
|
||||
|
||||
quest = GetStaticActor("Man0l0");
|
||||
callClientFunction(player, "delegateEvent", player, quest, "processTtrBtl001", nil, nil, nil);
|
||||
callClientFunction(player, "delegateEvent", player, quest, "processTtrBtl002", nil, nil, nil);
|
||||
|
||||
--sendDataPacket: Success
|
||||
--sendDataPacket: CloseWidget
|
||||
--IF DoW:
|
||||
--sendDataPacket: OpenWidget (TP)
|
||||
--IF TP REACHED:
|
||||
--sendDataPacket: CloseWidget
|
||||
--sendDataPacket: OpenWidget (WS)
|
||||
--IF WS USED:
|
||||
--sendDataPacket: Success
|
||||
--sendDataPacket: CloseWidget
|
||||
--ELSE MAGIC:
|
||||
--sendDataPacket: OpenWidget (DEFEAT ENEMY)
|
||||
|
||||
--IF DEAD
|
||||
--sendDataPacket: Attention
|
||||
|
||||
player:EndEvent();
|
||||
|
||||
end
|
||||
|
||||
function onUpdate()
|
||||
end
|
||||
|
||||
function onTalkEvent(player, npc)
|
||||
|
||||
end
|
||||
|
||||
function onPushEvent(player, npc)
|
||||
end
|
||||
|
||||
function onCommandEvent(player, command)
|
||||
|
||||
quest = GetStaticActor("Man0l0");
|
||||
callClientFunction(player, "delegateEvent", player, quest, "processTtrBtl002", nil, nil, nil);
|
||||
|
||||
end
|
||||
|
||||
function onEventUpdate(player, npc)
|
||||
end
|
||||
|
||||
function onCommand(player, command)
|
||||
end
|
66
data/scripts/directors/Quest/QuestDirectorMan0u001.lua
Normal file
66
data/scripts/directors/Quest/QuestDirectorMan0u001.lua
Normal file
|
@ -0,0 +1,66 @@
|
|||
require ("global")
|
||||
require ("quests/man/man0u0")
|
||||
|
||||
--processTtrBtl001: Active Mode Tutorial
|
||||
--processTtrBtl002: Targetting Tutorial (After active mode done)
|
||||
--processTtrBtl003: Auto Attack Done
|
||||
--processTtrBtl004: Tutorial Complete
|
||||
|
||||
--[[
|
||||
12: TP
|
||||
13: WeaponSkills
|
||||
|
||||
]]--
|
||||
|
||||
function init()
|
||||
return "/Director/Quest/QuestDirectorMan0u001";
|
||||
end
|
||||
|
||||
function onEventStarted(player, actor, triggerName)
|
||||
|
||||
quest = GetStaticActor("Man0u0");
|
||||
callClientFunction(player, "delegateEvent", player, quest, "processTtrBtl001", nil, nil, nil);
|
||||
callClientFunction(player, "delegateEvent", player, quest, "processTtrBtl002", nil, nil, nil);
|
||||
|
||||
--sendDataPacket: Success
|
||||
--sendDataPacket: CloseWidget
|
||||
--IF DoW:
|
||||
--sendDataPacket: OpenWidget (TP)
|
||||
--IF TP REACHED:
|
||||
--sendDataPacket: CloseWidget
|
||||
--sendDataPacket: OpenWidget (WS)
|
||||
--IF WS USED:
|
||||
--sendDataPacket: Success
|
||||
--sendDataPacket: CloseWidget
|
||||
--ELSE MAGIC:
|
||||
--sendDataPacket: OpenWidget (DEFEAT ENEMY)
|
||||
|
||||
--IF DEAD
|
||||
--sendDataPacket: Attention
|
||||
|
||||
player:EndEvent();
|
||||
|
||||
end
|
||||
|
||||
function onUpdate()
|
||||
end
|
||||
|
||||
function onTalkEvent(player, npc)
|
||||
|
||||
end
|
||||
|
||||
function onPushEvent(player, npc)
|
||||
end
|
||||
|
||||
function onCommandEvent(player, command)
|
||||
|
||||
quest = GetStaticActor("Man0l0");
|
||||
callClientFunction(player, "delegateEvent", player, quest, "processTtrBtl002", nil, nil, nil);
|
||||
|
||||
end
|
||||
|
||||
function onEventUpdate(player, npc)
|
||||
end
|
||||
|
||||
function onCommand(player, command)
|
||||
end
|
|
@ -1,21 +0,0 @@
|
|||
|
||||
function onEventStarted(player, actor, triggerName)
|
||||
|
||||
man0g0Quest = GetStaticActor("Man0g0");
|
||||
--player:RunEventFunction("delegateEvent", player, man0g0Quest, "processTtrBtl001");
|
||||
player:RunEventFunction("delegateEvent", player, man0g0Quest, "processTtrBtl002");
|
||||
|
||||
end
|
||||
|
||||
function onEventUpdate(player, npc, resultId)
|
||||
--man0g0Quest = GetStaticActor("Man0g0");
|
||||
--player:RunEventFunction("delegateEvent", player, man0g0Quest, "processTtrBtl002");
|
||||
player:EndEvent();
|
||||
end
|
||||
|
||||
function onCommand(player, command)
|
||||
--Check command if ActivateCommand
|
||||
player:EndCommand();
|
||||
player:EndEvent();
|
||||
player:KickEvent(player:GetDirector(), "noticeEvent", true);
|
||||
end
|
|
@ -1,25 +0,0 @@
|
|||
|
||||
function onEventStarted(player, actor, triggerName)
|
||||
|
||||
man0u0Quest = GetStaticActor("Man0u0");
|
||||
man0l0Quest = GetStaticActor("Man0l0");
|
||||
player:RunEventFunction("delegateEvent", player, man0l0Quest, "processTtrBtl001");
|
||||
--player:RunEventFunction("delegateEvent", player, man0l0Quest, "processTtrBtlMagic001");
|
||||
--player:RunEventFunction("delegateEvent", player, man0l0Quest, "processTtrBtl002");
|
||||
--player:RunEventFunction("delegateEvent", player, man0l0Quest, "processTtrBtl003");
|
||||
|
||||
--player:RunEventFunction("delegateEvent", player, man0u0Quest, "processTtrBtl004");
|
||||
|
||||
end
|
||||
|
||||
function onEventUpdate(player, npc, resultId)
|
||||
--man0l0Quest = GetStaticActor("Man0l0");
|
||||
--player:RunEventFunction("delegateEvent", player, man0l0Quest, "processTtrBtl002");
|
||||
player:EndEvent();
|
||||
end
|
||||
|
||||
function onCommand(player, command)
|
||||
--Check command if ActivateCommand
|
||||
--player:KickEvent(player:GetDirector(), "noticeEvent");
|
||||
--player:EndCommand();
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue