diff --git a/QuestPaths/6.x - Endwalker/Class Quests/SGE/4067_Sage's Path.json b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4067_Sage's Path.json new file mode 100644 index 000000000..64b7fe955 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4067_Sage's Path.json @@ -0,0 +1,79 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1039243, + "Position": { + "X": -90.28766, + "Y": 20, + "Z": 85.55737 + }, + "TerritoryId": 129, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Limsa Lominsa", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039265, + "Position": { + "X": -27.542603, + "Y": 42.597717, + "Z": 163.7445 + }, + "TerritoryId": 134, + "InteractionType": "Interact", + "AetheryteShortcut": "Middle La Noscea - Summerford Farms", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039265, + "Position": { + "X": -27.542603, + "Y": 42.597717, + "Z": 163.7445 + }, + "TerritoryId": 134, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Middle La Noscea - Summerford Farms", + "Fly": true, + "DialogueChoices": [ + { + "Type": "YesNo", + "Prompt": "TEXT_AKTKBB101_04067_Q3_000_000", + "ExcelSheet": "quest/040/AktKbb101_04067", + "Yes": true + } + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Class Quests/SGE/4068_Sage's Focus.json b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4068_Sage's Focus.json new file mode 100644 index 000000000..58c0ff77d --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4068_Sage's Focus.json @@ -0,0 +1,269 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "InteractionType": "UseItem", + "ItemId": 35873, + "Position": { + "X": -25.441345, + "Y": 42.597717, + "Z": 162.65016 + }, + "TerritoryId": 134, + "AetheryteShortcut": "Middle La Noscea - Summerford Farms", + "Fly": true, + "Comment": "Try to use the coffer Bookwyrm's Attire Coffer (IL 385)", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "StepIf": { + "Item": { + "NotInInventory": true + } + } + } + }, + { + "TerritoryId": 134, + "InteractionType": "EquipItem", + "ItemId": 35778, + "AetheryteShortcut": "Middle La Noscea - Summerford Farms", + "Fly": true, + "Comment": "Try to Equip Stonegold Milpreves", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "StepIf": { + "Item": { + "NotInInventory": true + } + } + } + }, + { + "TerritoryId": 131, + "InteractionType": "EquipRecommended" + }, + { + "DataId": 1039265, + "Position": { + "X": -27.542603, + "Y": 42.597717, + "Z": 163.7445 + }, + "TerritoryId": 134, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Middle La Noscea - Summerford Farms", + "Fly": true, + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039244, + "Position": { + "X": 62.05847, + "Y": 207, + "Z": 49.332397 + }, + "TerritoryId": 478, + "InteractionType": "Interact", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 2011759, + "Position": { + "X": 20.065613, + "Y": 215.44214, + "Z": -108.171265 + }, + "TerritoryId": 478, + "InteractionType": "Interact", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1039246, + "Position": { + "X": 71.64111, + "Y": 213.03185, + "Z": -110.7348 + }, + "TerritoryId": 478, + "InteractionType": "Interact", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1039247, + "Position": { + "X": 68.7113, + "Y": 212.84532, + "Z": -109.9718 + }, + "TerritoryId": 478, + "InteractionType": "Interact", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1039248, + "Position": { + "X": -612.2988, + "Y": 146.86842, + "Z": 42.435303 + }, + "TerritoryId": 399, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Idyllshire", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + }, + "AethernetShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1039248, + "Position": { + "X": -612.2988, + "Y": 146.86842, + "Z": 42.435303 + }, + "StopDistance": 5, + "TerritoryId": 399, + "InteractionType": "SinglePlayerDuty", + "Fly": true, + "AetheryteShortcut": "Idyllshire", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InTerritory": [399], + "InSameTerritory": true + }, + "AethernetShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 8, + "Steps": [ + { + "DataId": 1039248, + "Position": { + "X": -612.2988, + "Y": 146.86842, + "Z": 42.435303 + }, + "TerritoryId": 399, + "InteractionType": "Interact", + "StopDistance": 5, + "Fly": true, + "AetheryteShortcut": "Idyllshire", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], + "SkipConditions": { + "AetheryteShortcutIf": { + "InTerritory": [399], + "InSameTerritory": true + }, + "AethernetShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039249, + "Position": { + "X": 0.3508911, + "Y": 210.99998, + "Z": -17.746277 + }, + "TerritoryId": 478, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Class Quests/SGE/4069_Sands of Despair.json b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4069_Sands of Despair.json new file mode 100644 index 000000000..bbf573ede --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4069_Sands of Despair.json @@ -0,0 +1,199 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1039249, + "Position": { + "X": 0.3508911, + "Y": 210.99998, + "Z": -17.746277 + }, + "TerritoryId": 478, + "InteractionType": "AcceptQuest", + "StopDistance": 5, + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039250, + "Position": { + "X": -29.251587, + "Y": -2.0576189, + "Z": -161.08954 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "AetheryteShortcut": "Central Thanalan - Black Brush Station" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1039256, + "Position": { + "X": 59.03711, + "Y": 2.9501379, + "Z": -225.97089 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "Central Thanalan - Black Brush Station", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "Position": { + "X": 177.52213, + "Y": -3.5157094, + "Z": -133.6495 + }, + "TerritoryId": 141, + "Fly": true, + "InteractionType": "Combat", + "AetheryteShortcut": "Central Thanalan - Black Brush Station", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "EnemySpawnType": "AutoOnEnterArea", + "ComplexCombatData": [ + { + "DataId": 14031, + "MinimumKillCount": 1 + } + ] + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1039263, + "Position": { + "X": 185.25977, + "Y": -4.128851, + "Z": -126.78729 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "AetheryteShortcut": "Central Thanalan - Black Brush Station", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1039258, + "Position": { + "X": 122.72827, + "Y": 0.111846395, + "Z": -215.22852 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "AetheryteShortcut": "Central Thanalan - Black Brush Station", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 6, + "Steps": [ + { + "DataId": 1039271, + "Position": { + "X": 122.819824, + "Y": 0.10310017, + "Z": -215.2591 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "AetheryteShortcut": "Central Thanalan - Black Brush Station", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 7, + "Steps": [ + { + "DataId": 1039271, + "Position": { + "X": 122.819824, + "Y": 0.10310017, + "Z": -215.2591 + }, + "TerritoryId": 141, + "InteractionType": "Interact", + "AetheryteShortcut": "Central Thanalan - Black Brush Station", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039249, + "Position": { + "X": 0.3508911, + "Y": 210.99998, + "Z": -17.746277 + }, + "TerritoryId": 478, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Class Quests/SGE/4070_A Poisoned Gift.json b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4070_A Poisoned Gift.json new file mode 100644 index 000000000..a47ebf057 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4070_A Poisoned Gift.json @@ -0,0 +1,135 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1039249, + "Position": { + "X": 0.3508911, + "Y": 210.99998, + "Z": -17.746277 + }, + "TerritoryId": 478, + "InteractionType": "AcceptQuest", + "DialogueChoices": [ + { + "Type": "List", + "Prompt": "TEXT_AKTKBB121_04070_Q1_000_000", + "Answer": "TEXT_AKTKBB121_04070_A1_000_001" + } + ], + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039274, + "Position": { + "X": 246.93665, + "Y": -24.995794, + "Z": 235.4314 + }, + "TerritoryId": 138, + "InteractionType": "Interact", + "AetheryteShortcut": "Western La Noscea - Aleport" + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1039275, + "Position": { + "X": 236.9878, + "Y": -24.792122, + "Z": 202.594 + }, + "TerritoryId": 138, + "InteractionType": "Interact", + "AetheryteShortcut": "Western La Noscea - Aleport", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1039276, + "Position": { + "X": 239.79541, + "Y": -24.721268, + "Z": 205.34058 + }, + "TerritoryId": 138, + "InteractionType": "Action", + "AetheryteShortcut": "Western La Noscea - Aleport", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + }, + "Action": "Diagnosis" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "DataId": 1039279, + "Position": { + "X": 239.9176, + "Y": -24.724764, + "Z": 205.24902 + }, + "TerritoryId": 138, + "InteractionType": "Interact", + "AetheryteShortcut": "Western La Noscea - Aleport", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039249, + "Position": { + "X": 0.3508911, + "Y": 210.99998, + "Z": -17.746277 + }, + "TerritoryId": 478, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Class Quests/SGE/4071_Pledge of Hope.json b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4071_Pledge of Hope.json new file mode 100644 index 000000000..c22655dd0 --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4071_Pledge of Hope.json @@ -0,0 +1,182 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1039249, + "Position": { + "X": 0.3508911, + "Y": 210.99998, + "Z": -17.746277 + }, + "TerritoryId": 478, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1012133, + "Position": { + "X": -26.840637, + "Y": 206.49944, + "Z": 28.67163 + }, + "TerritoryId": 478, + "InteractionType": "Interact", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "Position": { + "X": -501.8255, + "Y": 147.54488, + "Z": -191.78416 + }, + "TerritoryId": 399, + "Fly": true, + "InteractionType": "Combat", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], + "SkipConditions": { + "AethernetShortcutIf": { + "InSameTerritory": true + } + }, + "EnemySpawnType": "AutoOnEnterArea", + "ComplexCombatData": [ + { + "DataId": 14030, + "MinimumKillCount": 1 + } + ] + } + ] + }, + { + "Sequence": 3, + "Steps": [ + { + "DataId": 1039282, + "Position": { + "X": -504.87527, + "Y": 147.53165, + "Z": -199.17603 + }, + "TerritoryId": 399, + "InteractionType": "Action", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], + "SkipConditions": { + "AethernetShortcutIf": { + "InSameTerritory": true + } + }, + "Action": "Diagnosis", + "Comment": "This might get stuck if we are high level and killed the mob too fast?, we ended up locking ourselves on eukrasia aura, Diagnosis can't be casted!" + } + ] + }, + { + "Sequence": 4, + "Steps": [ + { + "Position": { + "X": -383.24777, + "Y": 147.98257, + "Z": 52.931572 + }, + "TerritoryId": 399, + "Fly": true, + "InteractionType": "Combat", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], + "SkipConditions": { + "AethernetShortcutIf": { + "InSameTerritory": true + } + }, + "EnemySpawnType": "AutoOnEnterArea", + "ComplexCombatData": [ + { + "DataId": 14029, + "MinimumKillCount": 2 + } + ] + } + ] + }, + { + "Sequence": 5, + "Steps": [ + { + "DataId": 1039284, + "Position": { + "X": -382.49792, + "Y": 147.96011, + "Z": 47.53174 + }, + "TerritoryId": 399, + "Fly": false, + "InteractionType": "Interact", + "AethernetShortcut": [ + "[Idyllshire] Aetheryte Plaza", + "[Idyllshire] Prologue Gate (Western Hinterlands)" + ], + "SkipConditions": { + "AethernetShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039249, + "Position": { + "X": 0.3508911, + "Y": 210.99998, + "Z": -17.746277 + }, + "TerritoryId": 478, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + } + ] +} diff --git a/QuestPaths/6.x - Endwalker/Class Quests/SGE/4072_Life Ephemeral, Path Eternal.json b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4072_Life Ephemeral, Path Eternal.json new file mode 100644 index 000000000..e7405f3cc --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Class Quests/SGE/4072_Life Ephemeral, Path Eternal.json @@ -0,0 +1,92 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "kaiser", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1039249, + "Position": { + "X": 0.3508911, + "Y": 210.99998, + "Z": -17.746277 + }, + "TerritoryId": 478, + "InteractionType": "AcceptQuest", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "DataId": 1039288, + "Position": { + "X": 212.9701, + "Y": 52.213486, + "Z": -787.50287 + }, + "TerritoryId": 398, + "InteractionType": "SinglePlayerDuty", + "Fly": true, + "AetheryteShortcut": "The Dravanian Forelands - Tailfeather", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 2, + "Steps": [ + { + "DataId": 1039288, + "Position": { + "X": 212.9701, + "Y": 52.213486, + "Z": -787.50287 + }, + "TerritoryId": 398, + "InteractionType": "Interact", + "Fly": true, + "AetheryteShortcut": "The Dravanian Forelands - Tailfeather", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1039280, + "Position": { + "X": 1.2054443, + "Y": 210.99997, + "Z": -16.494995 + }, + "TerritoryId": 478, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Idyllshire", + "SkipConditions": { + "AetheryteShortcutIf": { + "InSameTerritory": true + } + } + } + ] + } + ] +} diff --git a/QuestPaths/quest-v1.json b/QuestPaths/quest-v1.json index 69e3cc548..07f1cd9a5 100644 --- a/QuestPaths/quest-v1.json +++ b/QuestPaths/quest-v1.json @@ -876,6 +876,9 @@ "Heavy Shot", "Cure", "Cure II", + "Eukrasia", + "Diagnosis", + "Eukrasian Diagnosis", "Esuna", "Physick", "Aspected Benefic", diff --git a/Questionable.Model/Questing/Converter/ActionConverter.cs b/Questionable.Model/Questing/Converter/ActionConverter.cs index d5de1fc1f..3f3714944 100644 --- a/Questionable.Model/Questing/Converter/ActionConverter.cs +++ b/Questionable.Model/Questing/Converter/ActionConverter.cs @@ -15,6 +15,9 @@ public sealed class ActionConverter() : EnumConverter(Values) { EAction.HeavyShot, "Heavy Shot" }, { EAction.Cure, "Cure" }, { EAction.Cure2, "Cure II" }, + { EAction.Eukrasia, "Eukrasia"}, + { EAction.Diagnosis, "Diagnosis"}, + { EAction.EukrasianDiagnosis, "Eukrasian Diagnosis"}, { EAction.Esuna, "Esuna" }, { EAction.Physick, "Physick" }, { EAction.AspectedBenefic, "Aspected Benefic" }, diff --git a/Questionable.Model/Questing/EAction.cs b/Questionable.Model/Questing/EAction.cs index fc4afa383..f0d2ea8b2 100644 --- a/Questionable.Model/Questing/EAction.cs +++ b/Questionable.Model/Questing/EAction.cs @@ -14,6 +14,9 @@ public enum EAction HeavyShot = 97, Cure = 120, Cure2 = 135, + Eukrasia = 24290, + Diagnosis = 24284, + EukrasianDiagnosis = 24291, Esuna = 7568, Physick = 190, AspectedBenefic = 3595, diff --git a/Questionable/Controller/Steps/Interactions/Action.cs b/Questionable/Controller/Steps/Interactions/Action.cs index 6d4da2206..f50f66970 100644 --- a/Questionable/Controller/Steps/Interactions/Action.cs +++ b/Questionable/Controller/Steps/Interactions/Action.cs @@ -1,9 +1,6 @@ -using System; +using System; using System.Collections.Generic; -using Dalamud.Game.ClientState.Conditions; using Dalamud.Game.ClientState.Objects.Types; -using FFXIVClientStructs.FFXIV.Client.Game; -using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Questionable.Controller.Steps.Common; using Questionable.Functions; @@ -60,6 +57,21 @@ internal static class Action if (gameObject.IsTargetable) { + if (action == EAction.Diagnosis) + { + uint eukrasiaAura = 2606; + // If SGE have Eukrasia status, we need to remove it. + if (gameFunctions.HasStatus(eukrasiaAura)) + { + if (GameFunctions.RemoveStatus(eukrasiaAura)) + { + // Introduce a delay of 2 seconds before using the next action (otherwise it will try and use Eukrasia Diagnosis) + _continueAt = DateTime.Now.AddSeconds(2); + return true; + } + } + } + _usedAction = gameFunctions.UseAction(gameObject, action); _continueAt = DateTime.Now.AddSeconds(0.5); return true; @@ -105,4 +117,4 @@ internal static class Action public override string ToString() => $"Action({action})"; } -} +} \ No newline at end of file diff --git a/Questionable/Functions/GameFunctions.cs b/Questionable/Functions/GameFunctions.cs index 07fb8c370..2cc2e1226 100644 --- a/Questionable/Functions/GameFunctions.cs +++ b/Questionable/Functions/GameFunctions.cs @@ -308,6 +308,11 @@ internal sealed unsafe class GameFunctions StatusManager* statusManager = battleChara->GetStatusManager(); return statusManager->HasStatus(statusId); } + + public static bool RemoveStatus(uint statusId) + { + return StatusManager.ExecuteStatusOff(statusId); + } public bool Mount() {