From 3ab1069ab760dc7b97e378536bd105e45843df28 Mon Sep 17 00:00:00 2001 From: Liza Carvelli Date: Mon, 18 Nov 2024 20:51:49 +0100 Subject: [PATCH] Fix item use in 'Strange Bedfellows' and 'Combat Evolved' --- .../Labyrinthos/4326_Seeing Red.json | 62 +++++++++++++++++++ .../Controller/CombatModules/ItemUseModule.cs | 3 +- 2 files changed, 63 insertions(+), 2 deletions(-) create mode 100644 QuestPaths/6.x - Endwalker/Side Quests/Labyrinthos/4326_Seeing Red.json diff --git a/QuestPaths/6.x - Endwalker/Side Quests/Labyrinthos/4326_Seeing Red.json b/QuestPaths/6.x - Endwalker/Side Quests/Labyrinthos/4326_Seeing Red.json new file mode 100644 index 00000000..d3e3e1ed --- /dev/null +++ b/QuestPaths/6.x - Endwalker/Side Quests/Labyrinthos/4326_Seeing Red.json @@ -0,0 +1,62 @@ +{ + "$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json", + "Author": "liza", + "QuestSequence": [ + { + "Sequence": 0, + "Steps": [ + { + "DataId": 1037575, + "Position": { + "X": 6.454529, + "Y": -31.530432, + "Z": -78.14148 + }, + "TerritoryId": 956, + "InteractionType": "AcceptQuest" + } + ] + }, + { + "Sequence": 1, + "Steps": [ + { + "Position": { + "X": 379.89767, + "Y": 68.15723, + "Z": -169.26231 + }, + "TerritoryId": 956, + "InteractionType": "Combat", + "EnemySpawnType": "OverworldEnemies", + "KillEnemyDataIds": [ + 13415 + ], + "CombatItemUse": { + "ItemId": 2003316, + "Condition": "Health%", + "Value": 50 + }, + "Fly": true + } + ] + }, + { + "Sequence": 255, + "Steps": [ + { + "DataId": 1037575, + "Position": { + "X": 6.454529, + "Y": -31.530432, + "Z": -78.14148 + }, + "TerritoryId": 956, + "InteractionType": "CompleteQuest", + "AetheryteShortcut": "Labyrinthos - Sharlayan Hamlet", + "Fly": true + } + ] + } + ] +} diff --git a/Questionable/Controller/CombatModules/ItemUseModule.cs b/Questionable/Controller/CombatModules/ItemUseModule.cs index b5b6fd28..1693edd5 100644 --- a/Questionable/Controller/CombatModules/ItemUseModule.cs +++ b/Questionable/Controller/CombatModules/ItemUseModule.cs @@ -142,8 +142,7 @@ internal sealed class ItemUseModule : ICombatModule { BattleChara* battleChara = (BattleChara*)gameObject.Address; if (_combatData.CombatItemUse.Condition == ECombatItemUseCondition.Incapacitated) - //return (byte)(((nint)battleChara + 0x1C68) & 0x40) != 0; // FIXME 7.1 - return false; + return (*(byte*)((nint)battleChara + 0x1C68) & 0x40) != 0; if (_combatData.CombatItemUse.Condition == ECombatItemUseCondition.HealthPercent) return (100f * battleChara->Health / battleChara->MaxHealth) < _combatData.CombatItemUse.Value;