BLADERUNNER: Complementary fix for scorpion cage

This commit is contained in:
Thanasis Antoniou 2019-05-09 00:29:26 +03:00
parent eb5aafa90c
commit 36ae364b93
3 changed files with 17 additions and 2 deletions

View File

@ -552,7 +552,7 @@ enum Flags {
kFlagHC02toHC04 = 110,
kFlagPS07KleinTalkClues = 111,
// 112 is never used
kFlagScorpionsInAR02 = 113, // // Re-purposed. Original: 113 is never used
kFlagScorpionsInAR02 = 113, // Re-purposed. Original: 113 is never used
kFlagRC03toRC01 = 114,
kFlagRC01toRC03 = 115,
kFlagRC03toAR02 = 116,
@ -1165,7 +1165,7 @@ enum Flags {
kFlagZubenBountyPaid = 723,
kFlagUG15BridgeBreaks = 724,
kFlagCT11DogWrapperAvailable = 725,
kFlagAR02Entered = 726,
kFlagAR02Entered = 726, // Now: never checked (superseded by new kFlagScorpionsInAR02). Original: used to track if McCoy visited AR02 in order to remove scorpion's cage item if Dektora buys it
kFlagPS04WeaponsOrderForm = 727,
kFlagDR01Visited = 728, // Re-purposed. Original: 728 is never used
kFlagNR08DektoraShow = 729

View File

@ -56,10 +56,18 @@ bool AIScriptDektora::Update() {
&& Player_Query_Current_Scene() != kSceneAR01
&& Player_Query_Current_Scene() != kSceneAR02
) {
#if BLADERUNNER_ORIGINAL_BUGS
if (Game_Flag_Query(kFlagAR02Entered)) {
Item_Remove_From_World(kItemScorpions);
}
Game_Flag_Set(kFlagAR02DektoraBoughtScorpions);
#else
if (Game_Flag_Query(kFlagScorpionsInAR02)) {
Item_Remove_From_World(kItemScorpions);
Game_Flag_Reset(kFlagScorpionsInAR02);
}
Game_Flag_Set(kFlagAR02DektoraBoughtScorpions);
#endif
}
}
return true;

View File

@ -113,7 +113,14 @@ bool AIScriptInsectDealer::GoalChanged(int currentGoalNumber, int newGoalNumber)
if (!Game_Flag_Query(kFlagAR02DektoraBoughtScorpions)) {
Game_Flag_Set(kFlagAR02DektoraBoughtScorpions);
#if BLADERUNNER_ORIGINAL_BUGS
Item_Remove_From_World(kItemScorpions);
#else
if (Game_Flag_Query(kFlagScorpionsInAR02)) {
Game_Flag_Reset(kFlagScorpionsInAR02);
Item_Remove_From_World(kItemScorpions);
}
#endif
}
}