mirror of
				https://bitbucket.org/Ioncannon/project-meteor-server.git
				synced 2025-05-20 08:26:59 -04:00 
			
		
		
		
	Added missing dialog to some npcs in Legends Adrift. Finished Never Shall the Twain Meet.
This commit is contained in:
		| @@ -61,7 +61,8 @@ TRIGGER_FSH					= 1090006; | ||||
| TRIGGER_SEAFLD				= 1090082; | ||||
|  | ||||
| -- ACN Guild Echo | ||||
| ASSESSOR			 		= 1000121; | ||||
| ASSESSOR1			 		= 1000120; | ||||
| ASSESSOR2			 		= 1000121; | ||||
| PTAHJHA						= 1000150; | ||||
| HALDBERK		 			= 1000160; | ||||
| LILINA			 			= 1000178; | ||||
| @@ -141,7 +142,8 @@ function onStateChange(player, quest, sequence) | ||||
| 		quest:SetENpc(PTAHJHA, QFLAG_PLATE); | ||||
| 	elseif (sequence == SEQ_100) then | ||||
| 		quest:SetENpc(TRIGGER_ACN_LOWER, QFLAG_MAP, false, true); | ||||
| 		quest:SetENpc(ASSESSOR); | ||||
| 		quest:SetENpc(ASSESSOR1); | ||||
| 		quest:SetENpc(ASSESSOR2); | ||||
| 		quest:SetENpc(HALDBERK); | ||||
| 		quest:SetENpc(LILINA); | ||||
| 		quest:SetENpc(VOLUPTUOUS_PIRATE); | ||||
| @@ -271,9 +273,9 @@ function seq000_030_040_onTalk(player, quest, npc, classId) | ||||
| end | ||||
|  | ||||
| function seq000_100_onTalk(player, quest, npc, classId) | ||||
| 	if (classId == ASSESSOR) then | ||||
| 	if (classId == ASSESSOR1) then | ||||
| 		callClientFunction(player, "delegateEvent", player, quest, "processEvent2000_2"); | ||||
| 	elseif (classId == 0) then  -- !!!MISSING DIALOG OWNER!!! | ||||
| 	elseif (classId == ASSESSOR2) then | ||||
| 		callClientFunction(player, "delegateEvent", player, quest, "processEvent2000_3"); | ||||
| 	elseif (classId == HALDBERK) then | ||||
| 		callClientFunction(player, "delegateEvent", player, quest, "processEvent2000_4"); | ||||
|   | ||||
| @@ -34,12 +34,14 @@ HOB							= 1000151; | ||||
| ISAUDOREL					= 1000152; | ||||
| BARRACUDA_KNIGHT1			= 1000183; | ||||
| BARRACUDA_KNIGHT2			= 1000184; | ||||
| TRIGGER_SHIP1				= 1090003; | ||||
| TRIGGER_SHIP2				= 1090003; | ||||
| TRIGGER_DOCKS				= 1090386; | ||||
| EVENTDOOR_SHIP1				= 1090098; | ||||
| EVENTDOOR_SHIP2				= 1090099; | ||||
| TRIGGER_DUTYSTART			= 1090085; | ||||
| TRIGGER_MSK					= 1090003; | ||||
| TRIGGER_SEAFLD1				= 1090003; | ||||
| TRIGGER_SEAFLD2				= 1090003; | ||||
| TRIGGER_SEAFLD3				= 1090003; | ||||
| TRIGGER_SEAFLD1				= 1090082; | ||||
| TRIGGER_SEAFLD2				= 1090086; | ||||
| TRIGGER_SEAFLD3				= 1090087; | ||||
|  | ||||
| -- Quest Markers | ||||
|  | ||||
| @@ -61,29 +63,38 @@ function onStateChange(player, quest, sequence) | ||||
| 	if (sequence == SEQ_ACCEPT) then | ||||
| 		quest:SetENpc(BADERON, QFLAG_PLATE); | ||||
| 	elseif (sequence == SEQ_000) then | ||||
| 		quest:SetENpc(TRIGGER_DOCKS, QFLAG_MAP, false, true); | ||||
| 		quest:SetENpc(HOB, QFLAG_PLATE); | ||||
| 		quest:SetENpc(BADERON); | ||||
| 	elseif (sequence == SEQ_010) then | ||||
| 		quest:SetENpc(TRIGGER_DOCKS, QFLAG_NONE, false, true); | ||||
| 		quest:SetENpc(HOB); | ||||
| 		quest:SetENpc(BARRACUDA_KNIGHT1); | ||||
| 		quest:SetENpc(BARRACUDA_KNIGHT2); | ||||
| 		quest:SetENpc(EVENTDOOR_SHIP1, QFLAG_MAP, false, true); | ||||
| 	elseif (sequence == SEQ_015) then | ||||
| 		quest:SetENpc(TRIGGER_DOCKS, QFLAG_NONE, false, true); | ||||
| 		quest:SetENpc(HOB); | ||||
| 		quest:SetENpc(BARRACUDA_KNIGHT1); | ||||
| 		quest:SetENpc(BARRACUDA_KNIGHT2); | ||||
| 		quest:SetENpc(EVENTDOOR_SHIP2, QFLAG_MAP, false, true); | ||||
| 		quest:SetENpc(TRIGGER_DUTYSTART, QFLAG_MAP, false, true); | ||||
| 	elseif (sequence == SEQ_020) then | ||||
| 		-- DUTY HAPPENS HERE | ||||
| 	elseif (sequence == SEQ_035) then | ||||
| 		quest:SetENpc(BADERON, QFLAG_PLATE); | ||||
| 	elseif (sequence == SEQ_037) then | ||||
| 		quest:SetENpc(TRIGGER_SEAFLD1, QFLAG_MAP, false, true); | ||||
| 		quest:SetENpc(BADERON); | ||||
| 	elseif (sequence == SEQ_040) then | ||||
| 	elseif (sequence == SEQ_042) then | ||||
| 		quest:SetENpc(TRIGGER_MSK, QFLAG_MAP, false, true); | ||||
| 		quest:SetENpc(BADERON); | ||||
| 	elseif (sequence == SEQ_045) then | ||||
| 		quest:SetENpc(ISAUDOREL, QFLAG_PLATE); | ||||
| 	elseif (sequence == SEQ_050) then | ||||
| 		quest:SetENpc(TRIGGER_SEAFLD2, QFLAG_MAP, false, true); | ||||
| 	elseif (sequence == SEQ_055) then | ||||
| 		quest:SetENpc(TRIGGER_SEAFLD3, QFLAG_MAP, false, true); | ||||
| 		quest:SetENpc(YSHTOLA); | ||||
| 	end	 | ||||
| 	 | ||||
| @@ -96,30 +107,28 @@ function onTalk(player, quest, npc) | ||||
| 	if (sequence == SEQ_ACCEPT) then | ||||
| 		if (classId == BADERON) then | ||||
| 			callClientFunction(player, "delegateEvent", player, quest, "processEvent000"); | ||||
| 			player:EndEvent(); | ||||
| 			player:AcceptQuest(quest, true); | ||||
| 			return; | ||||
| 		end | ||||
| 	elseif (sequence == SEQ_000) then		 | ||||
| 		if (classId == HOB) then | ||||
| 			callClientFunction(player, "delegateEvent", player, quest, "processEvent010"); | ||||
| 			callClientFunction(player, "delegateEvent", player, quest, "processEvent010");			 | ||||
| 			quest:StartSequence(SEQ_010); | ||||
| 			player:EndEvent(); | ||||
| 			GetWorldManager():DoZoneChange(player, 192, "PrivateAreaMasterPast", 0, 0, 1832.243, 16.352, 1834.965, 1.584); | ||||
| 			return; | ||||
| 		elseif (classId == BADERON) then | ||||
| 			callClientFunction(player, "delegateEvent", player, quest, "processEvent000_2"); | ||||
| 			if (npc.CurrentArea.IsPrivate()) then | ||||
| 				callClientFunction(player, "delegateEvent", player, quest, "processEvent000_2"); | ||||
| 			else | ||||
| 				callClientFunction(player, "delegateEvent", player, quest, "processEvent010_3"); | ||||
| 			end | ||||
| 		end | ||||
| 	elseif (sequence >= SEQ_010 and sequence <= SEQ_020) then | ||||
| 		if (onTalk_shipSequences(player, quest, npc, classId, sequence) == 1) then | ||||
| 			return; | ||||
| 		end | ||||
| 	elseif (sequence == SEQ_010) then | ||||
| 		if (classId == HOB) then | ||||
| 			callClientFunction(player, "delegateEvent", player, quest, "processEvent011_2"); | ||||
| 		elseif (classId == BARRACUDA_KNIGHT1) then | ||||
| 			callClientFunction(player, "delegateEvent", player, quest, "processEvent011_3"); | ||||
| 		elseif (classId == BARRACUDA_KNIGHT2) then | ||||
| 			callClientFunction(player, "delegateEvent", player, quest, "processEvent011_4"); | ||||
| 		end		 | ||||
| 	elseif (sequence == SEQ_015) then | ||||
| 		if (classId == HOB) then | ||||
| 			callClientFunction(player, "delegateEvent", player, quest, "processEvent011_2"); | ||||
| 		elseif (classId == BARRACUDA_KNIGHT1) then | ||||
| 			callClientFunction(player, "delegateEvent", player, quest, "processEvent011_3"); | ||||
| 		elseif (classId == BARRACUDA_KNIGHT2) then | ||||
| 			callClientFunction(player, "delegateEvent", player, quest, "processEvent011_4"); | ||||
| 		end		 | ||||
| 	elseif (sequence == SEQ_035) then | ||||
| 		if (classId == BADERON) then | ||||
| 			callClientFunction(player, "delegateEvent", player, quest, "processEvent050"); | ||||
| @@ -148,30 +157,91 @@ function onTalk(player, quest, npc) | ||||
| 	quest:UpdateENPCs(); | ||||
| end | ||||
|  | ||||
| function onTalk_shipSequences(player, quest, npc, classId, sequence) | ||||
| 	if (classId == HOB) then | ||||
| 		if (npc.CurrentArea.ZoneId == 230 and npc.CurrentArea.IsPrivate()) then | ||||
| 			local returnToShip = callClientFunction(player, "delegateEvent", player, quest, "processEvent010_2"); | ||||
| 			if (returnToShip == 1) then | ||||
| 				player:EndEvent();				 | ||||
| 				if (sequence == SEQ_015 or sequence == SEQ_020) then | ||||
| 					GetWorldManager():DoZoneChange(player, 192, "PrivateAreaMasterPast", 0, 0, 1828.785, 11.852, 1829.20, -1.675); | ||||
| 				else | ||||
| 					GetWorldManager():DoZoneChange(player, 192, "PrivateAreaMasterPast", 0, 0, 1832.243, 16.352, 1834.965, 1.584); | ||||
| 				end | ||||
| 				return 1; | ||||
| 			end | ||||
| 		elseif (npc.CurrentArea.ZoneId == 192 and npc.CurrentArea.IsPrivate()) then | ||||
| 			local returnToPublic = callClientFunction(player, "delegateEvent", player, quest, "processEvent011_2"); | ||||
| 			if (returnToPublic == 1) then | ||||
| 				player:EndEvent(); | ||||
| 				GetWorldManager():DoZoneChange(player, 230, nil, 0, 0, -639.325, 1, 403.967, 1.655); | ||||
| 				return 1; | ||||
| 			end | ||||
| 		elseif (npc.CurrentArea.IsPublic()) then | ||||
| 			callClientFunction(player, "delegateEvent", player, quest, "processEvent010_3"); | ||||
| 		end | ||||
| 	elseif (classId == BARRACUDA_KNIGHT1) then | ||||
| 		callClientFunction(player, "delegateEvent", player, quest, "processEvent011_3"); | ||||
| 	elseif (classId == BARRACUDA_KNIGHT2) then | ||||
| 		callClientFunction(player, "delegateEvent", player, quest, "processEvent011_4"); | ||||
| 	end		 | ||||
| end | ||||
|  | ||||
| function onPush(player, quest, npc) | ||||
| 	local data = quest:GetData(); | ||||
| 	local sequence = quest:getSequence(); | ||||
| 	local classId = npc:GetActorClassId(); | ||||
| 	 | ||||
| 	if (sequence == SEQ_037) then | ||||
| 		if (classId == TRIGGER_SEAFLD1) then | ||||
| 			callClientFunction(player, "delegateEvent", player, quest, "processEvent060"); | ||||
| 			quest:StartSequence(SEQ_040); | ||||
| 	if (sequence >= SEQ_000 and sequence <= SEQ_020) then | ||||
| 		if (classId == TRIGGER_DOCKS) then | ||||
| 			player:EndEvent(); | ||||
| 			GetWorldManager():WarpToPrivateArea(player, "PrivateAreaMasterPast", 8, -631.93, 2, 391.75, -0.05); | ||||
| 			return; | ||||
| 		end | ||||
| 	elseif (sequence == SEQ_042) then | ||||
| 		if (classId == TRIGGER_MSK) then | ||||
| 			callClientFunction(player, "delegateEvent", player, quest, "processEvent070"); | ||||
| 			quest:StartSequence(SEQ_045); | ||||
| 		end | ||||
| 	elseif (sequence == SEQ_050) then | ||||
| 		if (classId == TRIGGER_SEAFLD2) then | ||||
| 			callClientFunction(player, "delegateEvent", player, quest, "processEvent080"); | ||||
| 			quest:StartSequence(SEQ_055); | ||||
| 		end | ||||
| 	elseif (sequence == SEQ_055) then | ||||
| 		if (classId == TRIGGER_SEAFLD3) then | ||||
| 			callClientFunction(player, "delegateEvent", player, quest, "processEvent081"); | ||||
| 		if (sequence == SEQ_010) then | ||||
| 			if (classId == EVENTDOOR_SHIP1) then | ||||
| 				callClientFunction(player, "delegateEvent", player, quest, "processEvent012"); | ||||
| 				quest:StartSequence(SEQ_015); | ||||
| 				player:EndEvent(); | ||||
| 				GetWorldManager():WarpToPrivateArea(player, "PrivateAreaMasterPast", 1, 1823.579, -61.65, 1816.102, 2.42); | ||||
| 				return; | ||||
| 			end | ||||
| 		elseif (sequence == SEQ_015) then | ||||
| 			if (classId == EVENTDOOR_SHIP2) then | ||||
| 				player:EndEvent(); | ||||
| 				GetWorldManager():WarpToPrivateArea(player, "PrivateAreaMasterPast", 0, 1821.675, 10.352, 1814.964, 2.288); | ||||
| 				return; | ||||
| 			elseif (classId == TRIGGER_DUTYSTART) then | ||||
| 				local result = callClientFunction(player, "delegateEvent", player, quest, "contentsJoinAskInBasaClass"); | ||||
| 				if (result == 1) then | ||||
| 					-- DO COMBAT DUTY HERE				 | ||||
| 					-- For now just skip the sequence | ||||
| 					quest:StartSequence(SEQ_020); | ||||
| 					math.randomseed(os.time()); | ||||
| 					local randomVal = math.random(1, 2); -- Randomize the winner for now | ||||
| 					callClientFunction(player, "delegateEvent", player, quest, "processEvent020", randomVal); | ||||
| 					player:EndEvent(); | ||||
| 					quest:StartSequence(SEQ_035); | ||||
| 					GetWorldManager():DoZoneChange(player, 230, nil, 0, 0, -639.325, 1, 403.967, 1.655); | ||||
| 					return; | ||||
| 				end | ||||
| 				player:EndEvent(); | ||||
| 			end | ||||
| 		end | ||||
| 	elseif (sequence == SEQ_037 and classId == TRIGGER_SEAFLD1) then | ||||
| 		callClientFunction(player, "delegateEvent", player, quest, "processEvent060"); | ||||
| 		quest:NewNpcLsMsg(1); | ||||
| 		quest:StartSequence(SEQ_040); | ||||
| 	elseif (sequence == SEQ_042 and classId == TRIGGER_MSK) then | ||||
| 		callClientFunction(player, "delegateEvent", player, quest, "processEvent070"); | ||||
| 		quest:StartSequence(SEQ_045); | ||||
| 	elseif (sequence == SEQ_050 and classId == TRIGGER_SEAFLD2) then | ||||
| 		callClientFunction(player, "delegateEvent", player, quest, "processEvent080"); | ||||
| 		quest:StartSequence(SEQ_055); | ||||
| 		GetWorldManager():DoZoneChange(player, 128, "PrivateAreaMasterPast", 3, 0, 198.314, 25.928, 1186.126, 1.6); | ||||
| 	elseif (sequence == SEQ_055 and classId == TRIGGER_SEAFLD3) then | ||||
| 		callClientFunction(player, "delegateEvent", player, quest, "processEvent081"); | ||||
| 		GetWorldManager():DoZoneChange(player, 133, nil, 0, 0, -435.501, 40, 202.698, -2.152); | ||||
| 	end	 | ||||
| 	 | ||||
| 	player:EndEvent(); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user