mirror of
https://bitbucket.org/Ioncannon/project-meteor-server.git
synced 2025-06-08 21:44:35 +02:00
Added homepoint and aetheryte code. You can set the homepoint on an aetheryte or inn and the return menu will show the correct response. Added effects/msgs to teleport/return. Some sql changes I forgot.
This commit is contained in:
parent
8c9ecebae6
commit
1516e0bc50
18 changed files with 481 additions and 140 deletions
113
data/scripts/aetheryte.lua
Normal file
113
data/scripts/aetheryte.lua
Normal file
|
@ -0,0 +1,113 @@
|
|||
--[[
|
||||
|
||||
Aetheryte related info
|
||||
|
||||
--]]
|
||||
|
||||
aetheryteParentLinks = {
|
||||
--La Noscea
|
||||
[1280001] = nil,
|
||||
[1280002] = {1280007, 1280008, 1280009, 0, 0},
|
||||
[1280003] = {1280010, 0, 0, 0, 0},
|
||||
[1280004] = {1280011, 1280018, 0, 0, 0},
|
||||
[1280005] = {1280020, 1280012, 1280013, 1280014, 0},
|
||||
[1280006] = {1280015, 1280016, 1280017, 0, 0},
|
||||
--Thanalan
|
||||
[1280031] = nil,
|
||||
[1280032] = {1280037, 1280038, 1280052, 0, 0},
|
||||
[1280033] = {1280039, 1280040, 1280041, 0, 0},
|
||||
[1280034] = {1280042, 1280043, 1280044, 1280054, 0},
|
||||
[1280035] = {1280045, 1280046, 1280047, 0, 0},
|
||||
[1280036] = {1280048, 1280049, 1280050, 0, 0},
|
||||
--Black Shroud
|
||||
[1280061] = nil,
|
||||
[1280062] = {1280067, 1280068, 1280069, 1280083, 0},
|
||||
[1280063] = {1280070, 1280071, 1280072, 0, 0},
|
||||
[1280064] = {1280073, 1280074, 1280075, 1280082, 0},
|
||||
[1280065] = {1280076, 1280077, 1280078, 0, 0},
|
||||
[1280066] = {1280079, 1280080, 1280081, 0, 0},
|
||||
--Coerthas
|
||||
[1280092] = {1280097, 1280098, 1280099, 0, 0},
|
||||
[1280093] = {1280100, 1280101, 1280102, 0, 0},
|
||||
[1280094] = {1280103, 1280104, 0, 0, 0},
|
||||
[1280095] = {1280105, 1280106, 1280107, 0, 0},
|
||||
[1280096] = {1280108, 1280109, 1280110, 0, 0},
|
||||
--Mor Dhona
|
||||
[1280121] = {1280124, 1280125, 0, 0, 0},
|
||||
[1280122] = {1280123, 0, 0, 0, 0}
|
||||
}
|
||||
|
||||
aetheryteChildLinks = {
|
||||
--La Noscea
|
||||
[1280007] = 1280002,
|
||||
[1280008] = 1280002,
|
||||
[1280009] = 1280002,
|
||||
[1280010] = 1280003,
|
||||
[1280011] = 1280004,
|
||||
[1280012] = 1280005,
|
||||
[1280013] = 1280005,
|
||||
[1280014] = 1280005,
|
||||
[1280015] = 1280006,
|
||||
[1280016] = 1280006,
|
||||
[1280017] = 1280006,
|
||||
[1280018] = 1280004,
|
||||
[1280020] = 1280005,
|
||||
--Thanalan
|
||||
[1280037] = 1280032,
|
||||
[1280038] = 1280032,
|
||||
[1280039] = 1280033,
|
||||
[1280040] = 1280033,
|
||||
[1280041] = 1280033,
|
||||
[1280042] = 1280034,
|
||||
[1280043] = 1280034,
|
||||
[1280044] = 1280034,
|
||||
[1280045] = 1280035,
|
||||
[1280046] = 1280035,
|
||||
[1280047] = 1280035,
|
||||
[1280048] = 1280036,
|
||||
[1280049] = 1280036,
|
||||
[1280050] = 1280036,
|
||||
[1280052] = 1280032,
|
||||
[1280054] = 1280034,
|
||||
--Black Shroud
|
||||
[1280067] = 1280062,
|
||||
[1280068] = 1280062,
|
||||
[1280069] = 1280062,
|
||||
[1280070] = 1280063,
|
||||
[1280071] = 1280063,
|
||||
[1280072] = 1280063,
|
||||
[1280073] = 1280064,
|
||||
[1280074] = 1280064,
|
||||
[1280075] = 1280064,
|
||||
[1280076] = 1280065,
|
||||
[1280077] = 1280065,
|
||||
[1280078] = 1280065,
|
||||
[1280079] = 1280066,
|
||||
[1280080] = 1280066,
|
||||
[1280081] = 1280066,
|
||||
[1280082] = 1280064,
|
||||
[1280083] = 1280062,
|
||||
--Coerthas
|
||||
[1280097] = 1280092,
|
||||
[1280098] = 1280092,
|
||||
[1280099] = 1280092,
|
||||
[1280100] = 1280093,
|
||||
[1280101] = 1280093,
|
||||
[1280102] = 1280093,
|
||||
[1280103] = 1280094,
|
||||
[1280104] = 1280094,
|
||||
[1280105] = 1280095,
|
||||
[1280106] = 1280095,
|
||||
[1280107] = 1280095,
|
||||
[1280108] = 1280096,
|
||||
[1280109] = 1280096,
|
||||
[1280110] = 1280096,
|
||||
--Mor Dhona
|
||||
[1280123] = 1280122,
|
||||
[1280124] = 1280121,
|
||||
[1280125] = 1280121
|
||||
}
|
||||
|
||||
aetheryteTeleportPositions = {
|
||||
[1280001] = {0.0, 0.0, 0.0}
|
||||
}
|
|
@ -6,35 +6,68 @@ Functions:
|
|||
|
||||
eventAetheryteChildSelect(showTeleport, parentAetheryteID, animaAmount, animaCost(always 1)): Opens menu
|
||||
eventAetheryteChildDesion(aetheryteId): "Your homepoint is now X"
|
||||
processGuildleveBoost(favourCost, currentFavour): Ask: "Invoke the aspect of your Guardian deity to gain a temporary boon for the duration of a levequest."
|
||||
processGuildlevePlaying(??)
|
||||
processGuildleveJoin() - Ask: "Do you wish to join your party leader's levequest?"
|
||||
|
||||
eventGLSelect(?) - Open GL selector
|
||||
eventGLSelectDetail(glid, ?, reward, rewardQuantity, subreward, subrewardQuantity, faction, ?, completed) - Show GL details
|
||||
eventGLDifficulty() - Open difficulty selector
|
||||
eventGLStart(glId, difficulty, evaluatingFaction, areaFactionStanding, factionReward, warningBoundByDuty, warningTooFar, warningYouCannotRecieve, warningChangingClass) - Confirmation dialog
|
||||
|
||||
eventGLBoost(currentFavor, minNeeded) - Ask player for Guardian Aspect
|
||||
eventGLPlay(??) - Open Menu (GL active version)
|
||||
eventGLReward (glId, clearTime, missionBonus, difficultyBonus, factionNumber, factionBonus, factionCredit, reward, rewardQuantity, subreward, subrewardQuantity, difficulty) - Open reward window
|
||||
eventGLJoin () - Ask to join party leader's leve
|
||||
|
||||
--]]
|
||||
|
||||
require ("global")
|
||||
require ("aetheryte")
|
||||
|
||||
function init(npc)
|
||||
return false, false, 0, 0;
|
||||
end
|
||||
|
||||
function onEventStarted(player, npc, triggerName)
|
||||
menuChoice = callClientFunction(player, "eventAetheryteChildSelect", true, 1280062, 4, 1);
|
||||
function onEventStarted(player, aetheryte, triggerName)
|
||||
|
||||
aetheryteId = aetheryte:GetActorClassId();
|
||||
parentNode = aetheryteParentLinks[aetheryteId];
|
||||
menuChoice = callClientFunction(player, "eventAetheryteChildSelect", true, aetheryteChildLinks[aetheryteId], 100, 1);
|
||||
|
||||
--Teleport
|
||||
if (menuChoice == 2) then
|
||||
|
||||
--Init Levequest
|
||||
elseif (menuChoice == -1) then
|
||||
callClientFunction(player, "eventGLSelect", 0);
|
||||
doLevequestInit(player, aetheryte);
|
||||
--Set Homepoint
|
||||
elseif (menuChoice == -2) then
|
||||
|
||||
player:SetHomePoint(aetheryteId);
|
||||
callClientFunction(player, "eventAetheryteChildDesion", aetheryteId);
|
||||
--View Faction Standing
|
||||
elseif (menuChoice == -3) then
|
||||
|
||||
player:SendGameMessage(player, aetheryte, 27, 0x20);
|
||||
player:SendGameMessage(player, aetheryte, 28, 0x20, 1, 15);
|
||||
player:SendGameMessage(player, aetheryte, 29, 0x20, 2, 10);
|
||||
player:SendGameMessage(player, aetheryte, 30, 0x20, 3, 5);
|
||||
end
|
||||
|
||||
player:EndEvent();
|
||||
end
|
||||
|
||||
function doLevequestInit(player, aetheryte)
|
||||
::SELECT_LOOP::
|
||||
unknown, glId = callClientFunction(player, "eventGLSelect", 0x0);
|
||||
if (glId ~= 0) then
|
||||
::SELECT_DETAIL::
|
||||
unknown, begin = callClientFunction(player, "eventGLSelectDetail", glId, 0xa, 0xf4241, 1000, 0, 0, 0, true, false);
|
||||
if (begin) then
|
||||
::SELECT_DIFFICULTY::
|
||||
difficulty = callClientFunction(player, "eventGLDifficulty", glId);
|
||||
if (difficulty == nil) then goto SELECT_DETAIL; end
|
||||
confirmResult = callClientFunction(player, "eventGLStart", glId, difficulty, 1, 10, 20, 0, 0, 0, 0);
|
||||
if (confirmResult == nil) then goto SELECT_DIFFICULTY; else
|
||||
end
|
||||
else
|
||||
goto SELECT_LOOP;
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -4,21 +4,106 @@ AetheryteParent Script
|
|||
|
||||
Functions:
|
||||
|
||||
eventAetheryteParentSelect(0x0, false, 0x60, 0x138807,0,0,0,0)
|
||||
eventAetheryteParentDesion(sheetId)
|
||||
processGuildleveBoost(?, ?)
|
||||
processGuildlevePlaying(??)
|
||||
processGuildleveJoin() - Join party leader's levequest?
|
||||
eventAetheryteParentSelect(showTeleportMenu, animaAmount, gate1, gate2, gate3, gate4, gate5) - Open Menu
|
||||
eventAetheryteParentDesion(sheetId) - Show Homepoint Set Message
|
||||
|
||||
eventGLSelect(?) - Open GL selector
|
||||
eventGLSelectDetail(glid, ?, reward, rewardQuantity, subreward, subrewardQuantity, faction, ?, completed) - Show GL details
|
||||
eventGLDifficulty() - Open difficulty selector
|
||||
eventGLStart(glId, difficulty, evaluatingFaction, areaFactionStanding, factionReward, warningBoundByDuty, warningTooFar, warningYouCannotRecieve, warningChangingClass) - Confirmation dialog
|
||||
|
||||
eventGLBoost(currentFavor, minNeeded) - Ask player for Guardian Aspect
|
||||
eventGLPlay(??) - Open Menu (GL active version)
|
||||
eventGLReward (glId, clearTime, missionBonus, difficultyBonus, factionNumber, factionBonus, factionCredit, reward, rewardQuantity, subreward, subrewardQuantity, difficulty) - Open reward window
|
||||
eventGLJoin () - Ask to join party leader's leve
|
||||
|
||||
|
||||
--callClientFunction(player, "eventGLBoost", 0xc8, 0xb);
|
||||
--callClientFunction(player, "eventGLReward", 0x2a48, 120, 123, 125, 1, 111, 0, 0xf4241, 5, 0, 0, 3);
|
||||
|
||||
--]]
|
||||
|
||||
require ("global")
|
||||
require ("aetheryte")
|
||||
|
||||
function init(npc)
|
||||
return false, false, 0, 0;
|
||||
end
|
||||
|
||||
function onEventStarted(player, npc, triggerName)
|
||||
callClientFunction(player, "eventAetheryteParentSelect", 0x0, false, 0x61, 0x0,0,0,0,0);
|
||||
function onEventStarted(player, aetheryte, triggerName)
|
||||
|
||||
local aetheryteId = aetheryte:GetActorClassId();
|
||||
local childNodes = aetheryteParentLinks[aetheryteId];
|
||||
|
||||
local listPosition = 1;
|
||||
local activeChildNodes = {0, 0, 0, 0, 0};
|
||||
|
||||
if (player:HasAetheryteNodeUnlocked(childNodes[1])) then
|
||||
activeChildNodes[listPosition] = childNodes[1];
|
||||
listPosition = listPosition+1;
|
||||
end
|
||||
if (player:HasAetheryteNodeUnlocked(childNodes[2])) then
|
||||
activeChildNodes[listPosition] = childNodes[2];
|
||||
listPosition = listPosition+1;
|
||||
end
|
||||
if (player:HasAetheryteNodeUnlocked(childNodes[3])) then
|
||||
activeChildNodes[listPosition] = childNodes[3];
|
||||
listPosition = listPosition+1;
|
||||
end
|
||||
if (player:HasAetheryteNodeUnlocked(childNodes[4])) then
|
||||
activeChildNodes[listPosition] = childNodes[4];
|
||||
listPosition = listPosition+1;
|
||||
end
|
||||
if (player:HasAetheryteNodeUnlocked(childNodes[5])) then
|
||||
activeChildNodes[listPosition] = childNodes[5];
|
||||
listPosition = listPosition+1;
|
||||
end
|
||||
|
||||
local showTeleportOptions = true;
|
||||
if (listPosition == 1) then
|
||||
showTeleportOptions = false;
|
||||
end
|
||||
|
||||
local choice = callClientFunction(player, "eventAetheryteParentSelect", showTeleportOptions, 100, activeChildNodes[1], activeChildNodes[2], activeChildNodes[3], activeChildNodes[4], activeChildNodes[5]);
|
||||
|
||||
if (choice ~= nil) then
|
||||
--Init Leavequest
|
||||
if (choice == -1) then
|
||||
doLevequestInit(player, aetheryte);
|
||||
--Set Homepoint
|
||||
elseif (choice == -2) then
|
||||
player:SetHomePoint(aetheryteId);
|
||||
callClientFunction(player, "eventAetheryteParentDesion", aetheryteId);
|
||||
--View Faction Standings
|
||||
elseif (choice == -3) then
|
||||
player:SendGameMessage(player, aetheryte, 124, 0x20);
|
||||
player:SendGameMessage(player, aetheryte, 125, 0x20, 1, 15);
|
||||
player:SendGameMessage(player, aetheryte, 126, 0x20, 2, 10);
|
||||
player:SendGameMessage(player, aetheryte, 127, 0x20, 3, 5);
|
||||
--Teleport to Gate
|
||||
elseif (choice > 0) then
|
||||
end
|
||||
end
|
||||
|
||||
player:EndEvent();
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
function doLevequestInit(player, aetheryte)
|
||||
::SELECT_LOOP::
|
||||
unknown, glId = callClientFunction(player, "eventGLSelect", 0x0);
|
||||
if (glId ~= 0) then
|
||||
::SELECT_DETAIL::
|
||||
unknown, begin = callClientFunction(player, "eventGLSelectDetail", glId, 0xa, 0xf4241, 1000, 0, 0, 0, true, false);
|
||||
if (begin) then
|
||||
::SELECT_DIFFICULTY::
|
||||
difficulty = callClientFunction(player, "eventGLDifficulty", glId);
|
||||
if (difficulty == nil) then goto SELECT_DETAIL; end
|
||||
confirmResult = callClientFunction(player, "eventGLStart", glId, difficulty, 1, 10, 20, 0, 0, 0, 0);
|
||||
if (confirmResult == nil) then goto SELECT_DIFFICULTY; else
|
||||
end
|
||||
else
|
||||
goto SELECT_LOOP;
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -12,10 +12,10 @@ eventConfirm(isReturn, isInBattle, cityReturnNum, 138821, forceAskReturnOnly)
|
|||
|
||||
require ("global")
|
||||
|
||||
function doTeleport(region, aetheryte)
|
||||
end
|
||||
|
||||
function onEventStarted(player, actor, triggerName, isTeleport)
|
||||
|
||||
local worldMaster = GetWorldMaster();
|
||||
|
||||
if (isTeleport == 0) then
|
||||
while (true) do
|
||||
regionChoice = callClientFunction(player, "delegateCommand", actor, "eventRegion", 100);
|
||||
|
@ -27,45 +27,33 @@ function onEventStarted(player, actor, triggerName, isTeleport)
|
|||
|
||||
if (aetheryteChoice == nil) then break end
|
||||
|
||||
confirmChoice = callClientFunction(player, "delegateCommand", actor, "eventConfirm", false, false, 1, 138824, false);
|
||||
|
||||
player:PlayAnimation(0x4000FFA);
|
||||
player:SendGameMessage(worldMaster, 34101, 0x20, 2, 0x13883d, 100, 100);
|
||||
confirmChoice = callClientFunction(player, "delegateCommand", actor, "eventConfirm", false, false, 1, 138824, false);
|
||||
if (confirmChoice == 1) then
|
||||
doTeleport(regionChoice, aetheryteChoice);
|
||||
player:PlayAnimation(0x4000FFB);
|
||||
player:SendGameMessage(worldMaster, 34105, 0x20);
|
||||
--Do teleport
|
||||
end
|
||||
|
||||
player:endEvent();
|
||||
return;
|
||||
|
||||
end
|
||||
|
||||
end
|
||||
else
|
||||
callClientFunction(player, "delegateCommand", actor, "eventConfirm", true, false, 1, 0x138824, false);
|
||||
player:PlayAnimation(0x4000FFA);
|
||||
local choice, wasMulti = callClientFunction(player, "delegateCommand", actor, "eventConfirm", true, false, player:GetHomePointInn(), player:GetHomePoint(), false);
|
||||
if (wasMulti and choice == 1 or choice == 2) then
|
||||
player:PlayAnimation(0x4000FFB);
|
||||
player:SendGameMessage(worldMaster, 34104, 0x20);
|
||||
--Do return
|
||||
elseif (not wasMulti and choice == 1) then
|
||||
player:PlayAnimation(0x4000FFB);
|
||||
player:SendGameMessage(worldMaster, 34104, 0x20);
|
||||
--Do return
|
||||
end
|
||||
end
|
||||
|
||||
player:endEvent();
|
||||
end
|
||||
|
||||
function onEventUpdate(player, actor, step, arg1)
|
||||
|
||||
menuId = player:GetCurrentMenuId();
|
||||
|
||||
if (menuId == 0) then --Region
|
||||
if (arg1 ~= nil and arg1 >= 1) then
|
||||
player:SetCurrentMenuId(1);
|
||||
player:RunEventFunction("delegateCommand", actor, "eventAetheryte", arg1, 2, 2, 2, 4, 4, 4);
|
||||
else
|
||||
player:EndCommand();
|
||||
end
|
||||
elseif (menuId == 1) then --Aetheryte
|
||||
if (arg1 == nil) then
|
||||
player:EndCommand();
|
||||
return;
|
||||
end
|
||||
player:SetCurrentMenuId(2);
|
||||
player:RunEventFunction("delegateCommand", actor, "eventConfirm", false, false, 1, 138824, false);
|
||||
elseif (menuId == 2) then --Confirm
|
||||
player:EndCommand();
|
||||
end
|
||||
|
||||
end
|
||||
end
|
25
data/scripts/content/SimpleContent30002.lua
Normal file
25
data/scripts/content/SimpleContent30002.lua
Normal file
|
@ -0,0 +1,25 @@
|
|||
|
||||
function onCreate(starterPlayer, contentArea, contentGroup, director)
|
||||
|
||||
yshtola = contentArea:SpawnActor(2290001, "yshtola", -8, 16.35, 6, 0.5);
|
||||
stahlmann = contentArea:SpawnActor(2290002, "stahlmann", 0, 16.35, 22, 3);
|
||||
|
||||
mob1 = contentArea:SpawnActor(2205403, "mob1", -3.02+3, 17.35, 14.24, -2.81);
|
||||
mob2 = contentArea:SpawnActor(2205403, "mob2", -3.02, 17.35, 14.24, -2.81);
|
||||
mob3 = contentArea:SpawnActor(2205403, "mob3", -3.02-3, 17.35, 14.24, -2.81);
|
||||
|
||||
contentGroup:AddMember(starterPlayer);
|
||||
contentGroup:AddMember(director);
|
||||
contentGroup:AddMember(yshtola);
|
||||
contentGroup:AddMember(stahlmann);
|
||||
contentGroup:AddMember(mob1);
|
||||
contentGroup:AddMember(mob2);
|
||||
contentGroup:AddMember(mob3);
|
||||
|
||||
end
|
||||
|
||||
function onDestroy()
|
||||
|
||||
|
||||
|
||||
end
|
|
@ -2,21 +2,30 @@ require ("global")
|
|||
require ("tutorial")
|
||||
require ("quests/man/man0l0")
|
||||
|
||||
--processTtrBtl001: Active Mode Tutorial
|
||||
--processTtrBtl002: Targetting Tutorial (After active mode done)
|
||||
|
||||
function init()
|
||||
return "/Director/Quest/QuestDirectorMan0l001";
|
||||
end
|
||||
|
||||
function onEventStarted(player, actor, triggerName)
|
||||
function onCreateContentArea(players, director, contentArea, contentGroup)
|
||||
|
||||
contentGroup = GetWorldManager():CreateContentGroup(actor);
|
||||
contentGroup:AddMember(director);
|
||||
contentGroup:AddMember(GetWorldManager():GetActorInWorldByUniqueId("opening_jelly"));
|
||||
contentGroup:AddMember(GetWorldManager():GetActorInWorldByUniqueId("opening_yshtola"));
|
||||
contentGroup:AddMember(GetWorldManager():GetActorInWorldByUniqueId("opening_stahlmann"));
|
||||
yshtola = contentArea:SpawnActor(2290001, "yshtola", -8, 16.35, 6, 0.5);
|
||||
stahlmann = contentArea:SpawnActor(2290002, "stahlmann", 0, 16.35, 22, 3);
|
||||
|
||||
mob1 = contentArea:SpawnActor(2205403, "mob1", -3.02+3, 17.35, 14.24, -2.81);
|
||||
mob2 = contentArea:SpawnActor(2205403, "mob2", -3.02, 17.35, 14.24, -2.81);
|
||||
mob3 = contentArea:SpawnActor(2205403, "mob3", -3.02-3, 17.35, 14.24, -2.81);
|
||||
|
||||
contentGroup:AddMember(player);
|
||||
contentGroup:AddMember(director);
|
||||
contentGroup:AddMember(yshtola);
|
||||
contentGroup:AddMember(stahlmann);
|
||||
contentGroup:AddMember(mob1);
|
||||
contentGroup:AddMember(mob2);
|
||||
contentGroup:AddMember(mob3);
|
||||
|
||||
end
|
||||
|
||||
function onEventStarted(player, director, triggerName)
|
||||
|
||||
man0l0Quest = player:GetQuest("Man0l0");
|
||||
startTutorialMode(player);
|
||||
|
@ -24,7 +33,7 @@ function onEventStarted(player, actor, triggerName)
|
|||
player:EndEvent();
|
||||
waitForSignal("playerActive");
|
||||
wait(1); --If this isn't here, the scripts bugs out. TODO: Find a better alternative.
|
||||
kickEventContinue(player, actor, "noticeEvent", "noticeEvent");
|
||||
kickEventContinue(player, director, "noticeEvent", "noticeEvent");
|
||||
callClientFunction(player, "delegateEvent", player, man0l0Quest, "processTtrBtl002", nil, nil, nil);
|
||||
player:EndEvent();
|
||||
wait(4);
|
||||
|
@ -45,7 +54,7 @@ function onEventStarted(player, actor, triggerName)
|
|||
wait(7);
|
||||
player:ChangeMusic(7);
|
||||
player:ChangeState(0);
|
||||
kickEventContinue(player, actor, "noticeEvent", "noticeEvent");
|
||||
kickEventContinue(player, director, "noticeEvent", "noticeEvent");
|
||||
callClientFunction(player, "delegateEvent", player, man0l0Quest, "processEvent000_3", nil, nil, nil);
|
||||
|
||||
--[[
|
||||
|
@ -64,26 +73,7 @@ function onEventStarted(player, actor, triggerName)
|
|||
man0l0Quest:NextPhase(10);
|
||||
player:EndEvent();
|
||||
|
||||
player:GetZone():ContentFinished();
|
||||
GetWorldManager():DoZoneChange(player, 230, "PrivateAreaMasterPast", 1, 15, -826.868469, 6, 193.745865, -0.008368492);
|
||||
|
||||
end
|
||||
|
||||
function onUpdate()
|
||||
end
|
||||
|
||||
function onTalkEvent(player, npc)
|
||||
|
||||
end
|
||||
|
||||
function onPushEvent(player, npc)
|
||||
end
|
||||
|
||||
function onCommandEvent(player, command)
|
||||
|
||||
end
|
||||
|
||||
function onEventUpdate(player, npc)
|
||||
end
|
||||
|
||||
function onCommand(player, command)
|
||||
end
|
|
@ -30,8 +30,13 @@ function onEventStarted(player, npc)
|
|||
|
||||
if (choice == 1) then
|
||||
GetWorldManager():DoZoneChange(player, 13);
|
||||
elseif (choice == 2) then
|
||||
--Do Set Homepoint
|
||||
elseif (choice == 2) then
|
||||
if (player:GetHomePointInn() ~= 2) then
|
||||
player:SetHomePointInn(2);
|
||||
player:SendGameMessage(GetWorldMaster(), 60019, 0x20, 2075); --Secondary homepoint set to the Roost
|
||||
else
|
||||
player:SendGameMessage(GetWorldMaster(), 51140, 0x20); --This inn is already your Secondary Homepoint
|
||||
end
|
||||
end
|
||||
elseif (result == 1) then
|
||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithVkorolon_001", -1, -1);
|
||||
|
|
|
@ -10,8 +10,8 @@ function onSpawn(player, npc)
|
|||
player:SetEventStatus(npc, "pushDefault", true, 0x2);
|
||||
npc:SetQuestGraphic(player, 0x3);
|
||||
else
|
||||
player:SetEventStatus(npc, "pushDefault", false, 0x2);
|
||||
npc:SetQuestGraphic(player, 0x0);
|
||||
player:SetEventStatus(npc, "pushDefault", true, 0x2);
|
||||
npc:SetQuestGraphic(player, 0x3);
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -27,16 +27,21 @@ function onEventStarted(player, npc, triggerName)
|
|||
|
||||
man0l0Quest:NextPhase(5);
|
||||
|
||||
worldMaster = GetWorldMaster();
|
||||
player:SendGameMessage(player, worldMaster, 34108, 0x20);
|
||||
player:SendGameMessage(player, worldMaster, 50011, 0x20);
|
||||
|
||||
director = player:GetZone():CreateDirector("Quest/QuestDirectorMan0l001");
|
||||
contentArea = player:GetZone():CreateContentArea(player, "/Area/PrivateArea/Content/PrivateAreaMasterSimpleContent", "man0l01", "SimpleContent30002", "Quest/QuestDirectorMan0l001");
|
||||
|
||||
if (contentArea == nil) then
|
||||
player:EndEvent();
|
||||
return;
|
||||
end
|
||||
|
||||
director = contentArea:GetContentDirector();
|
||||
|
||||
player:KickEvent(director, "noticeEvent", true);
|
||||
player:AddDirector(director);
|
||||
player:SetLoginDirector(director);
|
||||
player:SetLoginDirector(director);
|
||||
|
||||
GetWorldManager():DoZoneChangeContent(player, contentArea, -5, 16.35, 6, 0.5, 16);
|
||||
|
||||
GetWorldManager():DoZoneChange(player, 9);
|
||||
else
|
||||
player:EndEvent();
|
||||
end
|
||||
|
|
|
@ -7,7 +7,12 @@ function onEventStarted(player, npc)
|
|||
if (choice == 1) then
|
||||
GetWorldManager():DoZoneChange(player, 13);
|
||||
elseif (choice == 2) then
|
||||
--Do Set Homepoint
|
||||
if (player:GetHomePointInn() ~= 1) then
|
||||
player:SetHomePointInn(1);
|
||||
player:SendGameMessage(GetWorldMaster(), 60019, 0x20, 1070); --Secondary homepoint set to the Mizzenmast
|
||||
else
|
||||
player:SendGameMessage(GetWorldMaster(), 51140, 0x20); --This inn is already your Secondary Homepoint
|
||||
end
|
||||
end
|
||||
|
||||
player:EndEvent();
|
||||
|
|
|
@ -1,7 +1,19 @@
|
|||
require ("global")
|
||||
|
||||
function onEventStarted(player, npc)
|
||||
defaultWil = GetStaticActor("DftWil");
|
||||
result = player:RunEventFunction("delegateEvent", player, defaultWil, "defaultTalkWithInn_Desk_2", nil, nil, nil); --BTN
|
||||
player:EndEvent();
|
||||
defaultWil = GetStaticActor("DftWil");
|
||||
choice = callClientFunction(player, "delegateEvent", player, defaultWil, "defaultTalkWithInn_Desk_2", nil, nil, nil);
|
||||
|
||||
if (choice == 1) then
|
||||
GetWorldManager():DoZoneChange(player, 11);
|
||||
elseif (choice == 2) then
|
||||
if (player:GetHomePointInn() ~= 3) then
|
||||
player:SetHomePointInn(3);
|
||||
player:SendGameMessage(GetWorldMaster(), 60019, 0x20, 3071); --Secondary homepoint set to the Hourglass
|
||||
else
|
||||
player:SendGameMessage(GetWorldMaster(), 51140, 0x20); --This inn is already your Secondary Homepoint
|
||||
end
|
||||
end
|
||||
|
||||
player:EndEvent();
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue