More script work.

This commit is contained in:
Filip Maj 2016-06-19 23:16:31 -04:00
parent 8743042950
commit 97c1fb06cf
36 changed files with 298 additions and 67 deletions

View File

@ -1144,11 +1144,31 @@ namespace FFXIVClassic_Map_Server.Actors
EndEvent();
}
}
else
{
EndEvent();
}
}
else
{
currentEventRunning = LuaEngine.DoActorOnEventStarted(this, owner, start);
currentEventRunning.Resume(objects.ToArray());
if (currentEventRunning != null)
{
try
{
currentEventRunning.Resume(objects.ToArray());
}
catch (ScriptRuntimeException e)
{
Program.Log.Error("[LUA] {0}", e.Message);
EndEvent();
}
}
else
{
EndEvent();
}
}
}
@ -1159,8 +1179,18 @@ namespace FFXIVClassic_Map_Server.Actors
return;
if (currentEventRunning.State == CoroutineState.Suspended)
currentEventRunning.Resume(LuaUtils.CreateLuaParamObjectList(update.luaParams));
}
{
try
{
currentEventRunning.Resume(LuaUtils.CreateLuaParamObjectList(update.luaParams));
}
catch (ScriptRuntimeException e)
{
Program.Log.Error("[LUA] {0}", e.Message);
EndEvent();
}
}
}
public void KickEvent(Actor actor, string conditionName, params object[] parameters)
{

View File

@ -0,0 +1,5 @@
require ("global")
function init(npc)
return false, false, 0, 0;
end

View File

@ -0,0 +1,32 @@
--[[
RetainerFurniture Script
Functions:
eventPushStepOpenRetainerMenu() - Opens menu to choose retainer
eventRingBell() - Plays the bell ring animation
eventPushRetainerCallCaution() - Shows warning that a open bazaar will be closed if retainer chosen
eventTalkRetainerMenu(?, ?) - Opens retainer menu
eventTalkRetainerDismissal(?)
eventTalkRetainerMannequin(?)
eventTalkRetainerItemTrade(?)
eventTalkRetainerItemList(?)
eventTalkSelectBazaarStreet(?)
eventReturnResult(?, ?)
eventTalkFinish()
eventPlayerTurn(rotation) - Turns the player
--]]
require ("global")
function init(npc)
return false, false, 0, 0;
end
function onEventStarted(player, npc, triggerName)
retainerNumber = callClientFunction(player, "eventPushStepOpenRetainerMenu");
callClientFunction(player, "eventRingBell");
callClientFunction(player, "eventTalkRetainerMenu");
player:EndEvent();
end

View File

@ -1,3 +1,5 @@
require ("global")
function init(npc)
return false, false, 0, 0;
end
@ -6,14 +8,12 @@ function onEventStarted(player, npc, triggerName)
questNOC = GetStaticActor("Noc000");
if (npc:GetActorClassId() == 1200193) then
player:RunEventFunction("delegateEvent", player, questNOC, "pETaskBoardAskLimsa", nil, nil, nil);
callClientFunction(player, "delegateEvent", player, questNOC, "pETaskBoardAskLimsa", nil, nil, nil);
elseif (npc:GetActorClassId() == 1200194) then
player:RunEventFunction("delegateEvent", player, questNOC, "pETaskBoardAskUldah", nil, nil, nil);
callClientFunction(player, "delegateEvent", player, questNOC, "pETaskBoardAskUldah", nil, nil, nil);
else
player:RunEventFunction("delegateEvent", player, questNOC, "pETaskBoardAskGridania", nil, nil, nil);
callClientFunction(player, "delegateEvent", player, questNOC, "pETaskBoardAskGridania", nil, nil, nil);
end
end
function onEventUpdate(player, npc, step, menuOptionSelected)
player:EndEvent();
end

View File

@ -0,0 +1,25 @@
--[[
PopulaceAchievement Script
Functions:
eventNoGC() -
eventUnlock(sheetId) -
eventReward(?, bool, ?, bool) -
defTalk() - Blurb
--]]
require ("global")
function init(npc)
return false, false, 0, 0;
end
function onEventStarted(player, npc, triggerName)
callClientFunction(player, "defTalk");
player:EndEvent();
end

View File

@ -0,0 +1,24 @@
--[[
PopulaceNMReward Script
Functions:
eventTalkStep0(player, ?, ?) - Opens the main menu
eventTalkStep0_1(player) - "Ain't running a charity here", message said when you have insufficent funds
eventTalkStep0_2(player, hasItems) - Relic Quest dialog.
--]]
require ("global")
function init(npc)
return false, false, 0, 0;
end
function onEventStarted(player, npc, triggerName)
callClientFunction(player, "eventTalkStep0", player, 0);
player:EndEvent();
end

View File

@ -19,19 +19,20 @@ confirmDiscardGuildleve(nil, questId)
askRetryRegionalleve(questId, leveAllowances)
finishTalkTurn()
Menu Ids:
--]]
require ("global")
function init(npc)
return false, false, 0, 0;
end
function onEventStarted(player, npc)
player:RunEventFunction("talkOfferWelcome", player, 1);
callClientFunction(player, "talkOfferWelcome", player, 1);
player:EndEvent();
end
function onEventUpdate(player, npc, step, menuOptionSelected, lsName, lsCrest)
--player:RunEventFunction("askOfferQuest", player, 1000);
player:EndEvent();
--callClientFunction(player, "askOfferQuest", player, 1000);
end

View File

@ -0,0 +1,20 @@
--[[
PlaceDrivenCommand Script
Notes:
--]]
function onEventStarted(player, commandActor, triggerName, pushCommand, unk1, unk2, unk3, ownerActorId, unk4, unk5, unk6, unk7)
actor = player:GetActorInInstance(ownerActorId);
if (actor != nil) then
player:kickEvent(actor, "pushCommand", "pushCommand");
else
player:endEvent();
end
end

View File

@ -0,0 +1,13 @@
require ("global")
function onEventStarted(player, npc)
floorChoice = callClientFunction(player, "elevatorAskLimsa001", 0);
if (floorChoice == 1) then
callClientFunction(player, "elevatorAskLimsa001", 1);
elseif (floorChoice == 2) then
callClientFunction(player, "elevatorAskLimsa001", 2);
end
player:EndEvent();
end

View File

@ -0,0 +1,13 @@
require ("global")
function onEventStarted(player, npc)
floorChoice = callClientFunction(player, "elevatorAskLimsa002", 0);
if (floorChoice == 1) then
callClientFunction(player, "elevatorAskLimsa002", 1);
elseif (floorChoice == 2) then
callClientFunction(player, "elevatorAskLimsa002", 2);
end
player:EndEvent();
end

View File

@ -0,0 +1,13 @@
require ("global")
function onEventStarted(player, npc)
floorChoice = callClientFunction(player, "elevatorAskLimsa003", 0);
if (floorChoice == 1) then
callClientFunction(player, "elevatorAskLimsa003", 1);
elseif (floorChoice == 2) then
callClientFunction(player, "elevatorAskLimsa003", 2);
end
player:EndEvent();
end

View File

@ -1,5 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithAergwynt_001", nil, nil, nil);
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithAergwynt_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,5 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithBaderon_001", nil, nil, nil);
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithBaderon_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,7 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithChantine_001", nil, nil, nil);
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithChantine_002", nil, nil, nil); --LNC
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithChantine_003", nil, nil, nil); --LNC NO GUILD
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithChantine_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,7 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithEstrilda_001", nil, nil, nil); --DEFAULT
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithEstrilda_002", nil, nil, nil); --IF ARCHER
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithEstrilda_003", nil, nil, nil); --IF ARCHER
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithEstrilda_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,7 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithFrithuric_001", nil, nil, nil);
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithFrithuric_002", nil, nil, nil); --LTW
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithFrithuric_003", nil, nil, nil); --LTW NO GUILD
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithFrithuric_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,5 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithFzhumii_001", nil, nil, nil);
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithFzhumii_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,7 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithGigirya_001", nil, nil, nil);
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithGigirya_002", nil, nil, nil); --THM
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithGigirya_003", nil, nil, nil); --THM NO GUILD
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithGigirya_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,5 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithGnibnpha_001", nil, nil, nil);
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithGnibnpha_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,7 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithGregory_001", nil, nil, nil);
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithGregory_002", nil, nil, nil); --CNJ
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithGregory_003", nil, nil, nil); --CNJ NO GUILD
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithGregory_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,5 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithIsleen_001", nil, nil, nil);
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithIsleen_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,5 +0,0 @@
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithIsleen_001", nil, nil, nil);
end

View File

@ -1,7 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithJosias_001", nil, nil, nil);
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithJosias_002", nil, nil, nil); --CRP
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithJosias_003", nil, nil, nil); --CRP NO GUILD
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithJosias_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,7 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithKakamehi_001", nil, nil, nil);
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithKakamehi_002", nil, nil, nil); --IF ALC
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithKakamehi_003", nil, nil, nil); --IF ALC
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithKakamehi_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,7 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithKokoto_001", nil, nil, nil);
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithKokoto_002", nil, nil, nil); --LNC
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithKokoto_003", nil, nil, nil); --LNC NO GUILD
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithKokoto_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,5 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithLaniaitte_001", nil, nil, nil);
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithLaniaitte_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,7 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithLauda_001", nil, nil, nil);
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithLauda_002", nil, nil, nil); --BTN
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithLauda_003", nil, nil, nil); --BTN NO GUILD
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithLauda_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,7 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithMaunie_001", nil, nil, nil);
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithMaunie_002", nil, nil, nil); --PUG
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithMaunie_003", nil, nil, nil); --PUG NO GUILD
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithMaunie_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,7 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithNanaka_001", nil, nil, nil);
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithNanaka_002", nil, nil, nil); --GSM
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithNanaka_003", nil, nil, nil); --GSM NO GUILD
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithNanaka_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,7 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithStephannot_001", nil, nil, nil);
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithStephannot_002", nil, nil, nil); --MIN
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithStephannot_003", nil, nil, nil); --MIN NO GUILD
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithStephannot_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,8 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithTirauland_001", nil, nil, nil);
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithTirauland_002", nil, nil, nil); --LNC
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithTirauland_003", nil, nil, nil); --LNC NO GUILD
--player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithTirauland_010", nil, nil, nil); --NOT DOW/DOM
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithTirauland_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,5 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithZanthael_001", nil, nil, nil);
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithZanthael_001", nil, nil, nil);
player:endEvent();
end

View File

@ -1,5 +1,7 @@
require ("global")
function onEventStarted(player, npc)
defaultSea = GetStaticActor("DftSea");
player:RunEventFunction("delegateEvent", player, defaultSea, "defaultTalkWithZehrymm_001", nil, nil, nil);
callClientFunction(player, "delegateEvent", player, defaultSea, "defaultTalkWithZehrymm_001", nil, nil, nil);
player:endEvent();
end

View File

@ -0,0 +1,15 @@
require ("global")
function onEventStarted(player, npc)
floorChoice = callClientFunction(player, "elevatorAskUldah001", 0);
if (floorChoice == 1) then
callClientFunction(player, "elevatorAskUldah001", 1);
GetWorldManager():DoZoneChange(player, 209, nil, 15, -116.78, 222, 115.7, 2.85);
elseif (floorChoice == 2) then
callClientFunction(player, "elevatorAskUldah001", 2);
GetWorldManager():DoZoneChange(player, 209, nil, 15, -121.60, 269.8, 135.28, -0.268);
end
player:EndEvent();
end

View File

@ -0,0 +1,15 @@
require ("global")
function onEventStarted(player, npc)
floorChoice = callClientFunction(player, "elevatorAskUldah002", 0);
if (floorChoice == 1) then
callClientFunction(player, "elevatorAskUldah002", 1);
GetWorldManager():DoZoneChange(player, 175, nil, 15, -116.78, 198, 115.7, -2.8911);
elseif (floorChoice == 2) then
callClientFunction(player, "elevatorAskUldah002", 2);
GetWorldManager():DoZoneChange(player, 209, nil, 15, -121.60, 269.8, 135.28, -0.268);
end
player:EndEvent();
end

View File

@ -0,0 +1,15 @@
require ("global")
function onEventStarted(player, npc)
floorChoice = callClientFunction(player, "elevatorAskUldah003", 0);
if (floorChoice == 1) then
callClientFunction(player, "elevatorAskUldah003", 1);
GetWorldManager():DoZoneChange(player, 175, nil, 15, -116.78, 198, 115.7, -2.8911);
elseif (floorChoice == 2) then
callClientFunction(player, "elevatorAskUldah003", 2);
GetWorldManager():DoZoneChange(player, 209, nil, 15, -116.78, 222, 115.7, 2.85);
end
player:EndEvent();
end