Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Quest] Convert Distant Loyalties to IF #6507

Open
wants to merge 1 commit into
base: base
Choose a base branch
from

Conversation

slashtangent
Copy link
Contributor

I affirm:

  • I understand that if I do not agree to the following points by completing the checkboxes my PR will be ignored.
  • I understand I should leave resolving conversations to the LandSandBoat team so that reviewers won't miss what was said.
  • I have read and understood the Contributing Guide and the Code of Conduct.
  • I have tested my code and the things my code has changed since the last commit in the PR and will test after any later commits.

What does this pull request do?

Converts the quest Distant Loyalties to IF

Steps to test these changes

Zone: Southern San 'dOria !zone 230
-- Femitte/Rouva !pos -17.7129 2.1000 10.1636
Talk to Rouva to test the default action
Talk to Femitte to test the default action

Set your fame level to 4 or higher for San d'Oria
!setfamelevel 0 4

Talk to Femitte and select the first option to start the quest.

Talk to Femitte and you should receive the default action text.

Talk to Rouva and you should receive the quest default text.

Zone to Bastok Markets
-- Bastok Markets !zone 235
Talk to Michea: !pos -299.2114 -15.9717 -156.0629
Trade Michea a Mythril Ingot !giveitem 653
Talk to Michea to test the quest default text.
Rezone !goto
Talk to Michea to receive KI

Zone to Southern San d'Oria !zone 230
-- Femitte/Rouva !pos -17.7129 2.1000 10.1636
Talk to Rouva, her text should not have changed and should still tell you to go to Bastok
Talk to Femitte to end the quest
Talk to Rouva to test that she has reverted to her default action

Zone to Bastok Markets
-- Bastok Markets !zone 235
Talk to Michea: !pos -299.2114 -15.9717 -156.0629
Recieve one time flavor text for the quest. Afterward, she will revert to her default action from then on.

##Captures
Distant Loyalties Quest:
https://www.youtube.com/watch?v=Q4pDVbXe7iU
https://drive.google.com/drive/folders/1VRACiqRlw0vZEO6hp3DXr95rdJQlCi0N?usp=sharing

Default Actions:
https://www.youtube.com/watch?v=8WAJx6_sjGk
https://drive.google.com/drive/folders/1WY6GYNAZMP5J0iw1Pfdxzf4QQXADn8pK?usp=sharing

else
player:startEvent(661)
return
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unsure if the return lines in the npc luas is needed. I was unsure but these should eventually get removed once wildcat gets converted to IF. Same with the Rouva.lua file on line 22.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't be.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can remove the else return as it will go to the DefaultActions if none of the requirements are met.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For both -

Comment on lines 16 to 18
fame = 30,
fameArea = xi.fameArea.SANDORIA,
item = xi.item.WHITE_CAPE,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Align on the = (nit pick)

['Femitte'] =
{
onTrigger = function(player, npc)
local questProgress = quest:getVar(player, 'Prog')
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If it is just for the 1 instance of calling it, I think its safe to not put it in the local

not player:needToZone()
then
return quest:progressEvent(318)
else
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can this be moved to Bastok_Markets/DefaultActions.lua ?

else
player:startEvent(661)
return
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't be.

else
player:startEvent(661)
return
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can remove the else return as it will go to the DefaultActions if none of the requirements are met.

else
player:startEvent(661)
return
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For both -

@@ -19,7 +19,7 @@ entity.onTrigger = function(player, npc)
then
player:startEvent(808)
else
player:startEvent(664)
return
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See above.

{
check = function(player, status, vars)
return status == xi.questStatus.QUEST_AVAILABLE and
player:getFameLevel(xi.fameArea.SANDORIA) >= 4
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One more level of indent here for multiline returns

{
['Femitte'] =
{
onTrigger = function(player, npc)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

onTrigger = quest:progressEvent(663),

if option == 0 then
quest:begin(player)
npcUtil.giveKeyItem(player, xi.ki.GOLDSMITHING_ORDER)
quest:setVar(player, 'Prog', 1)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You're switching states here from available to accepted, no need to set a Prog var

* Converted Distant Loyalties to IF
* Added Default Action for Rouva
* Added Default Action for Femitte
* Removed Quest code from Rouva, Michea, and Femitte NPC lua

Co-Authored-By: hooksta4 <[email protected]>
Copy link
Member

@WinterSolstice8 WinterSolstice8 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks fine to me, but as always contingent on clay's approval

@slashtangent
Copy link
Contributor Author

@claywar Checking in to see if you have had some time to review.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants