mirror of
https://bitbucket.org/Ioncannon/project-meteor-server.git
synced 2025-04-02 19:42:05 -04:00
- Fixed !anim targeting the incorrect actor.
- Etc5u0 scripted start to finish. Ul'dah Inn quest. - DftWil - Added quest checks to the Inn NPCs. - DfFst - Commiting what's been done thus far. fst0Town01 zone nearly done. Still have 100 something fst0Town01a & field npcs to add. - Removed some fst0Town01 uniqueId scripts
This commit is contained in:
parent
8c70d0ddb6
commit
682ddd9cae
@ -2,21 +2,36 @@ require("global");
|
|||||||
|
|
||||||
properties = {
|
properties = {
|
||||||
permissions = 0,
|
permissions = 0,
|
||||||
parameters = "ddd",
|
parameters = "dddd",
|
||||||
description =
|
description =
|
||||||
[[
|
[[
|
||||||
Sets anim id for current target
|
Sets anim id for current target
|
||||||
!anim <animID> |
|
!anim <animID> |
|
||||||
|
!anim <category> <effect> <motion>
|
||||||
]],
|
]],
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function onTrigger(player, argc, aType, a1, a2)
|
function onTrigger(player, argc, aType, a1, a2, uID)
|
||||||
npc = player;--GetWorldManager():GetActorInWorldByUniqueId("test");
|
--if uID == nil then uID = "test"; end
|
||||||
|
local npc = GetWorldManager():GetActorInWorld(player.currentTarget) or nil;
|
||||||
|
--npc = GetWorldManager():GetActorInWorldByUniqueId(uID);
|
||||||
|
|
||||||
|
--[[ if argc == 1 then
|
||||||
|
-- aType = tonumber(aType, 16) or 0;
|
||||||
|
if aType > 4294967295 then
|
||||||
|
|
||||||
|
player:SendMessage(0x20, "[anim] ", "Error: Value too large");
|
||||||
|
return;
|
||||||
|
else
|
||||||
|
player:PlayAnimation(aType);
|
||||||
|
end
|
||||||
|
else--]]
|
||||||
|
|
||||||
|
aType = tonumber(aType) or 0;
|
||||||
|
a1 = tonumber(a1) or 0;
|
||||||
|
a2 = tonumber(a2) or 1;
|
||||||
|
|
||||||
aType = tonumber(aType);
|
|
||||||
a1 = tonumber(a1);
|
|
||||||
a2 = tonumber(a2);
|
|
||||||
|
|
||||||
a1 = bit32.band(a1, 0xFFF);
|
a1 = bit32.band(a1, 0xFFF);
|
||||||
a2 = bit32.band(a2, 0xFFF);
|
a2 = bit32.band(a2, 0xFFF);
|
||||||
@ -24,7 +39,114 @@ function onTrigger(player, argc, aType, a1, a2)
|
|||||||
|
|
||||||
animId = bit32.bor(bit32.lshift(a2, 12), a1);
|
animId = bit32.bor(bit32.lshift(a2, 12), a1);
|
||||||
animId = bit32.bor(bit32.lshift(aType, 24), animId);
|
animId = bit32.bor(bit32.lshift(aType, 24), animId);
|
||||||
|
print(animId);
|
||||||
|
|
||||||
|
--[[
|
||||||
|
if npc == nil then
|
||||||
|
player:PlayAnimation(animId);
|
||||||
|
else
|
||||||
|
npc:PlayAnimation(animId);
|
||||||
|
end
|
||||||
|
--]]
|
||||||
|
local actor = player.CurrentArea.FindActorInArea(player.currentTarget) or nil;
|
||||||
|
|
||||||
|
if player and actor then
|
||||||
|
|
||||||
|
|
||||||
|
a1 = bit32.band(a1, 0xFFF);
|
||||||
|
a2 = bit32.band(a2, 0xFFF);
|
||||||
|
aType = bit32.band(aType, 0xFF);
|
||||||
|
|
||||||
|
animId = bit32.bor(bit32.lshift(a2, 12), a1);
|
||||||
|
animId = bit32.bor(bit32.lshift(aType, 24), animId);
|
||||||
|
-- player:SendMessage(0x20, "[anim] ", tostring(animId));
|
||||||
|
actor:PlayAnimation(animId);
|
||||||
|
local output = string.format("%x", animId)
|
||||||
|
player:SendMessage(0x20, "[anim] ", "0x"..tostring(output).. " Target:"..tostring(actor));
|
||||||
|
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
print("AHHH");
|
|
||||||
player:PlayAnimation(0x10005000);
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
--[[ Categories:
|
||||||
|
1 MGK: 01 - Magic
|
||||||
|
2 SYS: 02 - System noises
|
||||||
|
3 ETC: 03 - ?? - Item sound?
|
||||||
|
4 LIB: 04 - Posing animations
|
||||||
|
5-9 ITM: 05-09 - Items
|
||||||
|
10 KAO: 0A - KAO = Face emotes?
|
||||||
|
11-12 GLI1/2/3: 0B/0C - Leve card things
|
||||||
|
13 CBI: 0D - Two small effects
|
||||||
|
14 ABL: 0E - Cooldown buffs
|
||||||
|
15 POP: 0F - Warp effects
|
||||||
|
16 CFT: 10 - Crafting?
|
||||||
|
17 BTL: 11 - More Crafting?
|
||||||
|
18 WSC: 12 - Weapon Skills Arg1 - Weapon Skill Arg2 - Player Animation
|
||||||
|
19 WSS: 13 - Mob animations
|
||||||
|
20 PIC: 14 - Gathering weapons?
|
||||||
|
21 LIU: 15 - Player Hand Emotes
|
||||||
|
22 LIN: 16 - Doesn't exist?
|
||||||
|
23 LIF: 17 - Doesn't exist?
|
||||||
|
24 LIL: 18 - Mouth
|
||||||
|
25 ATK: 19 - Autoattacks
|
||||||
|
|
||||||
|
33 = ?
|
||||||
|
34 = Crash
|
||||||
|
|
||||||
|
120 = ???
|
||||||
|
|
||||||
|
CATEGORY
|
||||||
|
Shift 18 bits right
|
||||||
|
CMP 0xB
|
||||||
|
|
||||||
|
ANIMATION??????
|
||||||
|
Shift 0xC bits right
|
||||||
|
AND 0x0FFF
|
||||||
|
|
||||||
|
PARTICLE EFFECT
|
||||||
|
AND 0x0FFF
|
||||||
|
This number is in the subfolder (wsc, abi, etc)
|
||||||
|
|
||||||
|
|
||||||
|
That 12 is:
|
||||||
|
|
||||||
|
CMP 7C
|
||||||
|
CMP 6f
|
||||||
|
CMP 70
|
||||||
|
CMP 71
|
||||||
|
|
||||||
|
7C000062
|
||||||
|
ec000000
|
||||||
|
00FFFFFF
|
||||||
|
|
||||||
|
BTL:
|
||||||
|
ETC:
|
||||||
|
GL2:
|
||||||
|
KAO:
|
||||||
|
|
||||||
|
MGK: 01
|
||||||
|
SYS: 02
|
||||||
|
LIB: 046
|
||||||
|
ITM: 05-09
|
||||||
|
GL?: 0B
|
||||||
|
GL1: 0C
|
||||||
|
CBI: 0D
|
||||||
|
ABL: 0E
|
||||||
|
POP: 0F
|
||||||
|
CFT: 10
|
||||||
|
PIC: 14
|
||||||
|
WSC: 12
|
||||||
|
|
||||||
|
19: Auto Attack?
|
||||||
|
6F: Casting
|
||||||
|
71: Seems to deal with signaling monster parts
|
||||||
|
7C: Sheath/Unsheath
|
||||||
|
7F: Cast failed
|
||||||
|
|
||||||
|
--]]
|
||||||
|
|
||||||
|
|
||||||
|
@ -17,50 +17,57 @@ local defaultTalkFst = {
|
|||||||
[1000071] = "defaultTalkWithBertennant_001", -- Bertennant (Gridania: Blue Badger Gate)
|
[1000071] = "defaultTalkWithBertennant_001", -- Bertennant (Gridania: Blue Badger Gate)
|
||||||
[1000230] = "defaultTalkWithMiounne_001", -- Miounne (Gridania: Adv. Guild)
|
[1000230] = "defaultTalkWithMiounne_001", -- Miounne (Gridania: Adv. Guild)
|
||||||
[1000427] = "defaultTalkWithAnene_001", -- Anene (Gridania: Adv. Guild) defaultTalkWithAnene_002 / 003 (PGL informant)
|
[1000427] = "defaultTalkWithAnene_001", -- Anene (Gridania: Adv. Guild) defaultTalkWithAnene_002 / 003 (PGL informant)
|
||||||
|
[1000428] = "defaultTalkWithSylbyrt_001", -- Sylbyrt (Gridania: Adv. Guild) defaultTalkWithSylbyrt_002 / 003 (MRD informant)
|
||||||
|
[1000429] = "defaultTalkWithHongavunga_001", -- Honga Vunga (Gridania: Adv. Guild) defaultTalkWithHongavunga_002 / 003 (WVR informant)
|
||||||
|
[1000430] = "defaultTalkWithNoncomananco_001", -- Nonco Menanco (Gridania: Adv. Guild) arg1=1 or 21, mentions checking out DoW/M, otherwise DoH. defaultTalkWithNoncomananco_002 / 003 (GSM informant)
|
||||||
|
[1000431] = "defaultTalkWithLtandhaa_001", -- L'tandhaa (Gridania: Adv. Guild) defaultTalkWithLtandhaa_002 / 003 (ALC informant)
|
||||||
|
[1000432] = "defaultTalkWithPofufu_001", -- Pofufu (Gridania: Adv. Guild) defaultTalkWithPofufu_002 / 003 (MIN informant)
|
||||||
[1000433] = "defaultTalkWithDrividot_001", -- Drividot (Gridania: Adv. Guild) defaultTalkWithDrividot_002 / 003 (FSH informant)
|
[1000433] = "defaultTalkWithDrividot_001", -- Drividot (Gridania: Adv. Guild) defaultTalkWithDrividot_002 / 003 (FSH informant)
|
||||||
[1000435] = "defaultTalkWithBasewin_001", -- Basewin (Gridania: Adv. Guild) defaultTalkWithBasewin_002 / 003 (BSM informant)
|
[1000435] = "defaultTalkWithBasewin_001", -- Basewin (Gridania: Adv. Guild) defaultTalkWithBasewin_002 / 003 (BSM informant)
|
||||||
|
[1000436] = "defaultTalkWithSeikfrae_001", -- Seikfrae (Gridania: Adv. Guild) defaultTalkWithSeikfrae_002 / 003 (GLD informant)
|
||||||
[1000437] = "defaultTalkWithEdasshym_001", -- E'dasshym (Gridania: Adv. Guild) defaultTalkWithEdasshym_002 / 003 (THM informant)
|
[1000437] = "defaultTalkWithEdasshym_001", -- E'dasshym (Gridania: Adv. Guild) defaultTalkWithEdasshym_002 / 003 (THM informant)
|
||||||
|
--[1000456] = "", -- Tierney (Gridania: Adv. Guild) Guildleve NPC - Will not fire, not PplStd.
|
||||||
|
--[1000457] = "", -- Gontrant (Gridania: Adv. Guild) Guildleve NPC - Will not fire, not PplStd.
|
||||||
|
[1000458] = "defaultTalkWithInn_Desk", -- V'korolon (Gridania: Adv. Guild) - defaultTalkWithVkorolon_001 - Pre-Inn unlocked dialog
|
||||||
[1000821] = "defaultTalkWithNellaure_001", -- Nellaure
|
[1000821] = "defaultTalkWithNellaure_001", -- Nellaure
|
||||||
|
[1000951] = "defaultTalkWithLonsygg_001", -- Lonsygg (Gridania: Blue Badger Gate)
|
||||||
[1001081] = "defaultTalkWithKhumamoshroca_001", -- Khuma Moshroca
|
[1001081] = "defaultTalkWithKhumamoshroca_001", -- Khuma Moshroca
|
||||||
[1001103] = "defaultTalkWithMestonnaux_001", -- Mestonnaux
|
[1001103] = "defaultTalkWithMestonnaux_001", -- Mestonnaux
|
||||||
--[1001183] = "", -- Emoni (Gridania: Adv. Guild) - Will not fire, not PplStd.
|
--[1001183] = "", -- Emoni (Gridania: Adv. Guild) Linkshell NPC - Will not fire, not PplStd.
|
||||||
|
--[1001184] = "", -- Gyles (Gridania: Adv. Guild) Retainer NPC - Will not fire, not PplStd.
|
||||||
[1001396] = "defaultTalkWithLefwyne_001", -- Lefwyne
|
[1001396] = "defaultTalkWithLefwyne_001", -- Lefwyne
|
||||||
|
|
||||||
[1001430] = "defaultTalkWithKinnison_001", -- Kinnison - Two args (nil errors client). If either >= 0, dialog mentions you've met Kan-E-Senna.
|
[1001430] = "defaultTalkWithKinnison_001", -- Kinnison - Two args (nil errors client). If either >= 0, dialog mentions you've met Kan-E-Senna.
|
||||||
|
[1001432] = "defaultTalkWithMathye_001", -- Mathye (Gridania: Blue Badger Gate)
|
||||||
|
[1001433] = "defaultTalkWithUlta_001", -- Ulta (Gridania: Blue Badger Gate)
|
||||||
|
[1000434] = "defaultTalkWithOdilie_001", -- Odilie (Gridania: Adv. Guild) defaultTalkWithOdilie_002 / 003 (CUL informant)
|
||||||
[1001437] = "defaultTalkWithSybell_001", -- Sybell
|
[1001437] = "defaultTalkWithSybell_001", -- Sybell
|
||||||
[1001459] = "defaultTalkWithFlavielle_001", -- Flavielle (Gridania: Adv. Guild) defaultTalkWithFlavielle_002 / 003 (ARM informant)
|
[1001459] = "defaultTalkWithFlavielle_001", -- Flavielle (Gridania: Adv. Guild) defaultTalkWithFlavielle_002 / 003 (ARM informant)
|
||||||
|
[1001706] = "defaultTalkWithMemama_001", -- Memama (Gridania: Adv. Guild)
|
||||||
|
[1001707] = "defaultTalkWithPfarahr_001", -- Pfarahr (Gridania: Adv. Guild)
|
||||||
[1001708] = "defaultTalkWithBeaudonet_001", -- Beaudonet (Gridania: Adv. Guild)
|
[1001708] = "defaultTalkWithBeaudonet_001", -- Beaudonet (Gridania: Adv. Guild)
|
||||||
[1001709] = "defaultTalkWithFryswyde_001", -- Fryswyde (Gridania: Adv. Guild)
|
[1001709] = "defaultTalkWithFryswyde_001", -- Fryswyde (Gridania: Adv. Guild)
|
||||||
|
[1001710] = "defaultTalkWithWillielmus_001", -- Willielmus (Gridania: Adv. Guild)
|
||||||
[1001951] = "defaultTalkWithAnselm_001", -- Anselm (Gridania: Adv. Guild)
|
[1001951] = "defaultTalkWithAnselm_001", -- Anselm (Gridania: Adv. Guild)
|
||||||
|
[1002091] =
|
||||||
|
[1500055] = "defaultTalkWithLionnellais_001", -- Lionnellais (Gridania: Adv. Guild) - Will not fire, not PplStd. Pre-airship dialog?
|
||||||
|
[1500056] = "defaultTalkWithHida_001", -- Hida (Gridania: Adv. Guild) - Will not fire, not PplStd. Pre-airship dialog?
|
||||||
|
--[1500334] = "", -- Serpent Private Hill (Gridania: Adv. Guild) Company Warp NPC - Will not fire, not PplStd.
|
||||||
|
--[1500393] = "", -- Torsefers (Gridania: Adv. Guild) Wards NPC - Will not fire, not PplStd.
|
||||||
|
--[1600092] = "", -- Aeduin (Gridania: Adv. Guild) Shop - Will not fire, not PplStd.
|
||||||
|
--[1600100] = "", -- Zagylhaemr (Gridania: Adv. Guild) Shop - Will not fire, not PplStd.
|
||||||
|
--[1600119] = "", -- Naih Khamazom (Gridania: Adv. Guild) Shop - Will not fire, not PplStd.
|
||||||
|
[1700001] = "defaultTalkWithPenelope_001", -- Penelope (Gridania: Adv. Guild)
|
||||||
|
[1000001] = "defaultTalkWithLionnellais_001",
|
||||||
|
|
||||||
--[1600092] = "", -- Aeduin - Will not fire since it isn't PplStd.
|
|
||||||
|
|
||||||
-- [1000458] = "defaultTalkWithInn_Desk"
|
-- [1000458] = "defaultTalkWithInn_Desk"
|
||||||
|
|
||||||
--[[
|
--[[
|
||||||
|
|
||||||
defaultTalkWithVkorolon_001(A0_1, A1_2, A2_3)
|
-- defaultTalkWithStewart_001 -- Hodder line?
|
||||||
defaultTalkWithPenelope_001(A0_4, A1_5, A2_6)
|
|
||||||
defaultTalkWithSylbyrt_001(A0_19, A1_20, A2_21)
|
|
||||||
defaultTalkWithSylbyrt_002(A0_22, A1_23, A2_24)
|
|
||||||
defaultTalkWithSylbyrt_003(A0_25, A1_26, A2_27)
|
|
||||||
defaultTalkWithHongavunga_001(A0_28, A1_29, A2_30)
|
|
||||||
defaultTalkWithHongavunga_002(A0_31, A1_32, A2_33)
|
|
||||||
defaultTalkWithHongavunga_003(A0_34, A1_35, A2_36)
|
|
||||||
defaultTalkWithNoncomananco_001(A0_37, A1_38, A2_39, A3_40)
|
|
||||||
defaultTalkWithNoncomananco_002(A0_41, A1_42, A2_43)
|
|
||||||
defaultTalkWithNoncomananco_003(A0_44, A1_45, A2_46)
|
|
||||||
defaultTalkWithSeikfrae_001(A0_47, A1_48, A2_49)
|
|
||||||
defaultTalkWithSeikfrae_002(A0_50, A1_51, A2_52)
|
|
||||||
defaultTalkWithSeikfrae_003(A0_53, A1_54, A2_55)
|
|
||||||
defaultTalkWithLtandhaa_001(A0_74, A1_75, A2_76)
|
|
||||||
defaultTalkWithLtandhaa_002(A0_77, A1_78, A2_79)
|
|
||||||
defaultTalkWithLtandhaa_003(A0_80, A1_81, A2_82)
|
|
||||||
defaultTalkWithPofufu_001(A0_83, A1_84, A2_85)
|
|
||||||
defaultTalkWithPofufu_002(A0_86, A1_87, A2_88)
|
|
||||||
defaultTalkWithPofufu_003(A0_89, A1_90, A2_91)
|
|
||||||
defaultTalkWithOdilie_001(A0_101, A1_102, A2_103)
|
|
||||||
defaultTalkWithOdilie_002(A0_104, A1_105, A2_106)
|
|
||||||
defaultTalkWithOdilie_003(A0_107, A1_108, A2_109)
|
|
||||||
defaultTalkWithHereward_001(A0_119, A1_120, A2_121)
|
defaultTalkWithHereward_001(A0_119, A1_120, A2_121)
|
||||||
defaultTalkWithBeli_001(A0_122, A1_123, A2_124)
|
defaultTalkWithBeli_001(A0_122, A1_123, A2_124)
|
||||||
defaultTalkWithMaddeline_001(A0_125, A1_126, A2_127)
|
defaultTalkWithMaddeline_001(A0_125, A1_126, A2_127)
|
||||||
@ -127,12 +134,11 @@ defaultTalkWithSandre_001(A0_312, A1_313, A2_314)
|
|||||||
defaultTalkWithEburhart_001(A0_318, A1_319, A2_320)
|
defaultTalkWithEburhart_001(A0_318, A1_319, A2_320)
|
||||||
defaultTalkWithOnguen_001(A0_321, A1_322, A2_323)
|
defaultTalkWithOnguen_001(A0_321, A1_322, A2_323)
|
||||||
defaultTalkEnie_001(A0_324, A1_325, A2_326)
|
defaultTalkEnie_001(A0_324, A1_325, A2_326)
|
||||||
defaultTalkWithLionnellais_001(A0_327, A1_328, A2_329)
|
|
||||||
defaultTalkWithHida_001(A0_330, A1_331, A2_332)
|
|
||||||
defaultTalkWithNoes_001(A0_333, A1_334, A2_335)
|
defaultTalkWithNoes_001(A0_333, A1_334, A2_335)
|
||||||
defaultTalkWithFhrudhem_001(A0_336, A1_337, A2_338)
|
defaultTalkWithFhrudhem_001(A0_336, A1_337, A2_338)
|
||||||
defaultTalkWithUlta_001(A0_342, A1_343, A2_344)
|
|
||||||
defaultTalkWithMathye_001(A0_345, A1_346, A2_347)
|
|
||||||
defaultTalkWithMitainie_001(A0_348, A1_349, A2_350)
|
defaultTalkWithMitainie_001(A0_348, A1_349, A2_350)
|
||||||
defaultTalkWithNicia_001(A0_351, A1_352, A2_353)
|
defaultTalkWithNicia_001(A0_351, A1_352, A2_353)
|
||||||
defaultTalkWithBlandie_001(A0_354, A1_355, A2_356)
|
defaultTalkWithBlandie_001(A0_354, A1_355, A2_356)
|
||||||
@ -166,7 +172,7 @@ defaultTalkWithBloisirant_001(A0_447, A1_448, A2_449)
|
|||||||
defaultTalkWithGylbart_001(A0_450, A1_451, A2_452)
|
defaultTalkWithGylbart_001(A0_450, A1_451, A2_452)
|
||||||
defaultTalkWithHonoroit_001(A0_453, A1_454, A2_455)
|
defaultTalkWithHonoroit_001(A0_453, A1_454, A2_455)
|
||||||
defaultTalkWithYlessa_001(A0_456, A1_457, A2_458)
|
defaultTalkWithYlessa_001(A0_456, A1_457, A2_458)
|
||||||
defaultTalkWithLonsygg_001(A0_459, A1_460, A2_461)
|
|
||||||
defaultTalkWithSwaenhylt_001(A0_465, A1_466, A2_467)
|
defaultTalkWithSwaenhylt_001(A0_465, A1_466, A2_467)
|
||||||
defaultTalkWithMarcette_001(A0_468, A1_469, A2_470)
|
defaultTalkWithMarcette_001(A0_468, A1_469, A2_470)
|
||||||
defaultTalkWithGuildleveClientG_001(A0_471, A1_472, A2_473)
|
defaultTalkWithGuildleveClientG_001(A0_471, A1_472, A2_473)
|
||||||
@ -188,10 +194,7 @@ defaultTalkWithAruhnsenna_001(A0_516, A1_517, A2_518)
|
|||||||
defaultTalkWithMoogle010_001(A0_519, A1_520, A2_521)
|
defaultTalkWithMoogle010_001(A0_519, A1_520, A2_521)
|
||||||
defaultTalkWithMoogle002_001(A0_522, A1_523, A2_524)
|
defaultTalkWithMoogle002_001(A0_522, A1_523, A2_524)
|
||||||
defaultTalkWithAilith_001(A0_525, A1_526, A2_527)
|
defaultTalkWithAilith_001(A0_525, A1_526, A2_527)
|
||||||
defaultTalkWithMemama_001(A0_528, A1_529, A2_530)
|
|
||||||
defaultTalkWithPfarahr_001(A0_531, A1_532, A2_533)
|
|
||||||
|
|
||||||
defaultTalkWithWillielmus_001(A0_540, A1_541, A2_542)
|
|
||||||
defaultTalkWithQZamqo_001(A0_543, A1_544, A2_545)
|
defaultTalkWithQZamqo_001(A0_543, A1_544, A2_545)
|
||||||
defaultTalkLouisoix_001(A0_546, A1_547, A2_548)
|
defaultTalkLouisoix_001(A0_546, A1_547, A2_548)
|
||||||
defaultTalkWithRonanKognan_001(A0_549, A1_550, A2_551)
|
defaultTalkWithRonanKognan_001(A0_549, A1_550, A2_551)
|
||||||
@ -241,10 +244,11 @@ function onTalk(player, quest, npc, eventName)
|
|||||||
local npcId = npc:GetActorClassId();
|
local npcId = npc:GetActorClassId();
|
||||||
local clientFunc = defaultTalkFst[npcId];
|
local clientFunc = defaultTalkFst[npcId];
|
||||||
|
|
||||||
if (npcId == 1001430) then -- Kinnison
|
if (npcId == 1000430) then -- Nonco Menanco
|
||||||
|
callClientFunction(player, "delegateEvent", player, quest, clientFunc, 21);
|
||||||
|
elseif (npcId == 1001430) then -- Kinnison
|
||||||
callClientFunction(player, "delegateEvent", player, quest, clientFunc, -1,-1);
|
callClientFunction(player, "delegateEvent", player, quest, clientFunc, -1,-1);
|
||||||
else
|
else
|
||||||
|
|
||||||
callClientFunction(player, "delegateEvent", player, quest, clientFunc);
|
callClientFunction(player, "delegateEvent", player, quest, clientFunc);
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -65,7 +65,7 @@ local defaultTalkWil = {
|
|||||||
[1000861] = "defaultTalkWithLinette_001", -- Linette
|
[1000861] = "defaultTalkWithLinette_001", -- Linette
|
||||||
[1000862] = "defaultTalkWithGagaruna_001", -- Gagaruna
|
[1000862] = "defaultTalkWithGagaruna_001", -- Gagaruna
|
||||||
[1000863] = "defaultTalkWithLulutsu_001", -- Lulutsu
|
[1000863] = "defaultTalkWithLulutsu_001", -- Lulutsu
|
||||||
[1000864] = "defaultTalkWithInn_Desk", -- Otopa Pottopa - defaultTalkWithOtopapottopa_001 (pre-Inn unlock?)
|
[1000864] = "defaultTalkWithOtopapottopa_001", -- Otopa Pottopa - defaultTalkWithInn_Desk - used when Inn unlocked
|
||||||
[1000865] = "defaultTalkWithThaisie_001", -- Thaisie - Mentions retainers, but will not fire since she's not PplStd.
|
[1000865] = "defaultTalkWithThaisie_001", -- Thaisie - Mentions retainers, but will not fire since she's not PplStd.
|
||||||
[1000887] = "defaultTalkWithZssapa_001", -- <<<NOT IMPLEMENTED>>> - Z'ssapa (Central Thanalan: Black Brush: 92.779999 183.837 -1030.310059) alt actor ID: 1001217 (used in a quest presumably, different outfit from wiki image)
|
[1000887] = "defaultTalkWithZssapa_001", -- <<<NOT IMPLEMENTED>>> - Z'ssapa (Central Thanalan: Black Brush: 92.779999 183.837 -1030.310059) alt actor ID: 1001217 (used in a quest presumably, different outfit from wiki image)
|
||||||
[1000915] = "defaultTalkWithCahernaut_001", -- Cahernaut
|
[1000915] = "defaultTalkWithCahernaut_001", -- Cahernaut
|
||||||
@ -227,7 +227,7 @@ local defaultTalkWil = {
|
|||||||
[1001925] = "defaultTalkWithHortwann_001", -- <<<NOT IMPLEMENTED>>> - Flame Private Hanskalsyn - (North Thanalan: Camp Bluefog)
|
[1001925] = "defaultTalkWithHortwann_001", -- <<<NOT IMPLEMENTED>>> - Flame Private Hanskalsyn - (North Thanalan: Camp Bluefog)
|
||||||
[1001932] = "defaultTalkWithSIBOLD_001", -- Sibold
|
[1001932] = "defaultTalkWithSIBOLD_001", -- Sibold
|
||||||
[1001953] = "defaultTalkWithBerndan_001", -- Berndan
|
[1001953] = "defaultTalkWithBerndan_001", -- Berndan
|
||||||
[1002047] = "defaultTalkWithInn_Desk_2", -- Kopuru Fupuru - Inn NPC. - defaultTalkWithKopuruFupuru_001 (pre-Inn unlock?)
|
[1002047] = "defaultTalkWithKopuruFupuru_001", -- Kopuru Fupuru - Inn NPC - defaultTalkWithInn_Desk_2 used when Inn unlocked
|
||||||
[1002101] = "defaultTalkWithDuraltharal_001", -- Dural Tharal
|
[1002101] = "defaultTalkWithDuraltharal_001", -- Dural Tharal
|
||||||
[1002110] = "processEventSOMBER", -- Flame Lieutenant Somber Meadow (Foundation Day 2012 Dialog) Spl000 staticactor
|
[1002110] = "processEventSOMBER", -- Flame Lieutenant Somber Meadow (Foundation Day 2012 Dialog) Spl000 staticactor
|
||||||
[1002111] = "processEventMIMIO", -- Flame Sergeant Mimio Mio (Foundation Day 2012 Dialog) Spl000 staticactor
|
[1002111] = "processEventMIMIO", -- Flame Sergeant Mimio Mio (Foundation Day 2012 Dialog) Spl000 staticactor
|
||||||
@ -271,9 +271,19 @@ function onTalk(player, quest, npc, eventName)
|
|||||||
local npcId = npc:GetActorClassId();
|
local npcId = npc:GetActorClassId();
|
||||||
local clientFunc = defaultTalkWil[npcId];
|
local clientFunc = defaultTalkWil[npcId];
|
||||||
|
|
||||||
if (npcId == 1002047) then -- Kopuru Fupuru - Inn NPC
|
if (npcId == 1000864) then -- Kopuru Fupuru (Adv. Guild Inn NPC)
|
||||||
defaultTalkWithInn(player, quest, clientFunc);
|
if (player:IsQuestCompleted(110848)) then -- "Ring of Deceit" completed.
|
||||||
elseif ((npcId >= 1002110) and (npcId <= 1002112)) then
|
defaultTalkWithInn(player, quest, "defaultTalkWithInn_Desk");
|
||||||
|
else
|
||||||
|
callClientFunction(player, "delegateEvent", player, quest, clientFunc);
|
||||||
|
end
|
||||||
|
elseif (npcId == 1002047) then -- Kopuru Fupuru (Rear-Entrance Inn NPC)
|
||||||
|
if (player:IsQuestCompleted(110848)) then -- "Ring of Deceit" completed.
|
||||||
|
defaultTalkWithInn(player, quest, "defaultTalkWithInn_Desk_2");
|
||||||
|
else
|
||||||
|
callClientFunction(player, "delegateEvent", player, quest, clientFunc);
|
||||||
|
end
|
||||||
|
elseif ((npcId >= 1002110) and (npcId <= 1002112)) then -- Foundation Day 2012 NPCs
|
||||||
talkWithSpecial(player, npcId, clientFunc)
|
talkWithSpecial(player, npcId, clientFunc)
|
||||||
else
|
else
|
||||||
callClientFunction(player, "delegateEvent", player, quest, clientFunc);
|
callClientFunction(player, "delegateEvent", player, quest, clientFunc);
|
||||||
|
98
Data/scripts/quests/etc/etc5u0.lua
Normal file
98
Data/scripts/quests/etc/etc5u0.lua
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
require("global");
|
||||||
|
|
||||||
|
--[[
|
||||||
|
|
||||||
|
Quest Script
|
||||||
|
|
||||||
|
Name: Ring of Deceit
|
||||||
|
Code: Etc5u0
|
||||||
|
Id: 110848
|
||||||
|
Prereq: Level 1 on any class. Second MSQ completed. (110002 Man0l1 / 110006 Man0g1 / 110010 Man0u1)
|
||||||
|
Notes: Unlocks Ul'dah Inn exit from the rear entrance. Rewards 200 EXP
|
||||||
|
|
||||||
|
]]
|
||||||
|
|
||||||
|
-- Sequence Numbers
|
||||||
|
SEQ_000 = 0; -- Talk to Judithe
|
||||||
|
SEQ_001 = 1; -- Return to Otopa Pottopa
|
||||||
|
|
||||||
|
-- Actor Class Ids
|
||||||
|
OTOPA_POTTOPA = 1000864;
|
||||||
|
JUDITHE = 1001443;
|
||||||
|
|
||||||
|
-- Quest Markers
|
||||||
|
MRKR_JUDITHE = 11092001;
|
||||||
|
MRKR_OTOPA_POTTOPA = 11092002;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
function onStart(player, quest)
|
||||||
|
quest:StartSequence(SEQ_000);
|
||||||
|
end
|
||||||
|
|
||||||
|
function onFinish(player, quest)
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
function onStateChange(player, quest, sequence)
|
||||||
|
if (sequence == 65535) then
|
||||||
|
quest:SetENpc(OTOPA_POTTOPA, QFLAG_PLATE);
|
||||||
|
elseif (sequence == SEQ_000) then
|
||||||
|
quest:SetENpc(OTOPA_POTTOPA);
|
||||||
|
quest:SetENpc(JUDITHE, QFLAG_PLATE);
|
||||||
|
elseif (sequence == SEQ_001) then
|
||||||
|
quest:SetENpc(OTOPA_POTTOPA, QFLAG_REWARD);
|
||||||
|
quest:SetENpc(JUDITHE);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function onTalk(player, quest, npc)
|
||||||
|
local sequence = quest:getSequence();
|
||||||
|
local classId = npc:GetActorClassId();
|
||||||
|
|
||||||
|
if (sequence == 65535) then
|
||||||
|
if (classId == OTOPA_POTTOPA) then
|
||||||
|
local questAccepted = callClientFunction(player, "delegateEvent", player, quest, "processEventOTOPAPOTTOPAStart");
|
||||||
|
|
||||||
|
if (questAccepted == 1) then
|
||||||
|
player:AcceptQuest(quest);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
elseif (sequence == SEQ_000) then
|
||||||
|
if (classId == OTOPA_POTTOPA) then
|
||||||
|
callClientFunction(player, "delegateEvent", player, quest, "processEvent_000_1");
|
||||||
|
elseif (classId == JUDITHE) then
|
||||||
|
callClientFunction(player, "delegateEvent", player, quest, "processEvent_010");
|
||||||
|
attentionMessage(player, 25225, 110848); -- <Quest name> objectives complete!
|
||||||
|
quest:StartSequence(SEQ_001);
|
||||||
|
end
|
||||||
|
elseif (sequence == SEQ_001) then
|
||||||
|
if (classId == JUDITHE) then
|
||||||
|
callClientFunction(player, "delegateEvent", player, quest, "processEvent_010_1");
|
||||||
|
elseif (classId == OTOPA_POTTOPA) then
|
||||||
|
callClientFunction(player, "delegateEvent", player, quest, "processEvent_020");
|
||||||
|
callClientFunction(player, "delegateEvent", player, quest, "sqrwa", 200, 1, 1); -- 200 exp rewarded
|
||||||
|
player:CompleteQuest(quest);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
player:EndEvent()
|
||||||
|
quest:UpdateENPCs();
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
function getJournalInformation(player, quest)
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
function getJournalMapMarkerList(player, quest)
|
||||||
|
local sequence = quest:getSequence();
|
||||||
|
local possibleMarkers = {};
|
||||||
|
|
||||||
|
if (sequence == SEQ_000) then
|
||||||
|
table.insert(possibleMarkers, MRKR_JUDITHE);
|
||||||
|
elseif (sequence == SEQ_001) then
|
||||||
|
table.insert(possibleMarkers, MRKR_OTOPA_POTTOPA);
|
||||||
|
end
|
||||||
|
|
||||||
|
return unpack(possibleMarkers)
|
||||||
|
end
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithFryswyde_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithGontrant_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithGyles_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithHida_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithHongavunga_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithLtandhaa_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithLionnellais_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithLonsygg_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithMathye_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithMemama_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithMiniaeth_adv_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithMiounne_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithNaih_khamazom_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithNoncomananco_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithOdilie_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithPenelope_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,46 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
require ("quests/etc/etc5g0")
|
|
||||||
|
|
||||||
function onSpawn(player, npc)
|
|
||||||
|
|
||||||
if (player:HasQuest("Etc5g0") == true and player:GetQuest("Etc5g0"):GetPhase() == 0) then
|
|
||||||
npc:SetQuestGraphic(player, 0x2);
|
|
||||||
else
|
|
||||||
npc:SetQuestGraphic(player, 0x0);
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
quest = player:GetQuest("Etc5g0");
|
|
||||||
|
|
||||||
result = 1;
|
|
||||||
if (player:HasQuest("Etc5g0")) then
|
|
||||||
unknown, result = callClientFunction(player, "switchEvent", defaultFst, quest, nil, nil, 1, 1, 0x3f1);
|
|
||||||
end
|
|
||||||
|
|
||||||
if (result == 1) then
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithPfarahr_001", -1, -1);
|
|
||||||
elseif (result == 2) then
|
|
||||||
|
|
||||||
ownedQuest = player:GetQuest("Etc5g0");
|
|
||||||
if (ownedQuest:GetPhase() == 0) then
|
|
||||||
callClientFunction(player, "delegateEvent", player, quest, "processEvent_010");
|
|
||||||
worldMaster = GetWorldMaster();
|
|
||||||
player:SendGameMessage(player, worldMaster, 25225, ownedQuest:GetQuestId());
|
|
||||||
player:SendDataPacket("attention", worldMaster, "", 25225, ownedQuest:GetQuestId());
|
|
||||||
ownedQuest:NextPhase(1);
|
|
||||||
npc:SetQuestGraphic(player, 0x0);
|
|
||||||
vkorolon = GetWorldManager():GetActorInWorldByUniqueId("vkorolon");
|
|
||||||
if (vkorolon ~= nil) then
|
|
||||||
vkorolon:SetQuestGraphic(player, 0x4);
|
|
||||||
end
|
|
||||||
else
|
|
||||||
callClientFunction(player, "delegateEvent", player, quest, "processEvent_010_1");
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
|
||||||
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithPofufu_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithSeikfrae_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithSerpent_private_hill_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithSylbyrt_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithTask_board_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithTierney_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithTorsefers_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithUlta_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,67 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
require ("quests/etc/etc5g0")
|
|
||||||
|
|
||||||
function onSpawn(player, npc)
|
|
||||||
|
|
||||||
if (player:HasQuest("Etc5g0") == true and player:GetQuest("Etc5g0"):GetPhase() == 1) then
|
|
||||||
npc:SetQuestGraphic(player, 0x4);
|
|
||||||
elseif (canAcceptQuest(player)) then
|
|
||||||
npc:SetQuestGraphic(player, 0x2);
|
|
||||||
else
|
|
||||||
npc:SetQuestGraphic(player, 0x0);
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
quest = GetStaticActor("Etc5g0");
|
|
||||||
|
|
||||||
result = 1;
|
|
||||||
|
|
||||||
if (player:IsQuestCompleted("Etc5g0") == true) then
|
|
||||||
result = 0;
|
|
||||||
else
|
|
||||||
unknown, result = callClientFunction(player, "switchEvent", defaultFst, quest, nil, nil, 1, 1, 0x3f1);
|
|
||||||
end
|
|
||||||
|
|
||||||
if (result == 0) then
|
|
||||||
choice = callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithInn_Desk", nil, nil, nil);
|
|
||||||
|
|
||||||
if (choice == 1) then
|
|
||||||
GetWorldManager():DoZoneChange(player, 244, nil, 0, 15, 160.048, 0, 154.263, 0);
|
|
||||||
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);
|
|
||||||
elseif (result == 2) then
|
|
||||||
if (player:HasQuest("Etc5g0") == false) then
|
|
||||||
offerQuestResult = callClientFunction(player, "delegateEvent", player, quest, "processEventVKOROLONStart");
|
|
||||||
if (offerQuestResult == 1) then
|
|
||||||
player:AddQuest("Etc5g0");
|
|
||||||
npc:SetQuestGraphic(player, 0x0);
|
|
||||||
pfarahr = GetWorldManager():GetActorInWorldByUniqueId("pfarahr");
|
|
||||||
if (pfarahr ~= nil) then
|
|
||||||
pfarahr:SetQuestGraphic(player, 0x2);
|
|
||||||
end
|
|
||||||
end
|
|
||||||
elseif (player:GetQuest("Etc5g0"):GetPhase() == 0) then
|
|
||||||
callClientFunction(player, "delegateEvent", player, quest, "processEvent_000_1");
|
|
||||||
elseif (player:GetQuest("Etc5g0"):GetPhase() == 1) then
|
|
||||||
callClientFunction(player, "delegateEvent", player, quest, "processEvent_020");
|
|
||||||
callClientFunction(player, "delegateEvent", player, quest, "sqrwa", 200, 1);
|
|
||||||
player:CompleteQuest("Etc5g0");
|
|
||||||
npc:SetQuestGraphic(player, 0x0);
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
|
||||||
|
|
||||||
player:EndEvent();
|
|
||||||
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithWillielmus_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
@ -1,7 +0,0 @@
|
|||||||
require ("global")
|
|
||||||
|
|
||||||
function onEventStarted(player, npc)
|
|
||||||
defaultFst = GetStaticActor("DftFst");
|
|
||||||
callClientFunction(player, "delegateEvent", player, defaultFst, "defaultTalkWithZagylhaemr_001", nil, nil, nil);
|
|
||||||
player:endEvent();
|
|
||||||
end
|
|
Loading…
Reference in New Issue
Block a user