- Fix: metal detectors did not detect bombs planted by high-level eplosion experts

- Fix: non-buried explosves retained some bomb parameters after defusing

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@5929 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Flugente
2013-03-17 21:41:06 +00:00
parent 25471acf1f
commit 5ca112947d
+10 -1
View File
@@ -5312,6 +5312,15 @@ void BoobyTrapMessageBoxCallBack( UINT8 ubExitValue )
{
gTempObject[0]->data.bTrap = 0;
gTempObject.fFlags &= ~( OBJECT_KNOWN_TO_BE_TRAPPED );
// Flugente: set back all bomb parameters, otherwsie the bomb will still be armed in the inventory
// set back ubWireNetworkFlag and bDefuseFrequency, but not the direction... bomb is still aimed, it is just turned off
gTempObject.fFlags &= ~( OBJECT_ARMED_BOMB );
gTempObject[0]->data.ubWireNetworkFlag = 0;
gTempObject[0]->data.bDefuseFrequency = 0;
gTempObject[0]->data.misc.bDetonatorType = 0;
gTempObject[0]->data.misc.bDelay = 0;
gTempObject[0]->data.misc.bFrequency = 0;
}
// place it in the guy's inventory/cursor
@@ -5604,7 +5613,7 @@ BOOLEAN NearbyGroundSeemsWrong( SOLDIERTYPE * pSoldier, INT32 sGridNo, BOOLEAN f
if ( (*pObj)[0]->data.misc.bDetonatorType == BOMB_PRESSURE && !((*pObj).fFlags & OBJECT_KNOWN_TO_BE_TRAPPED) && (!((*pObj).fFlags & OBJECT_DISABLED_BOMB)) )
{
// Flugente: some bombs cannot be found via metal detector
if ( fMining && (*pObj)[0]->data.bTrap <= 10 && !( HasItemFlag(pObj->usItem, NO_METAL_DETECTION) || HasItemFlag((*pObj)[0]->data.misc.usBombItem, NO_METAL_DETECTION) ) )
if ( fMining && (*pObj)[0]->data.bTrap <= 20 && !( HasItemFlag(pObj->usItem, NO_METAL_DETECTION) || HasItemFlag((*pObj)[0]->data.misc.usBombItem, NO_METAL_DETECTION) ) )
{
// add blue flag
AddBlueFlag( sNextGridNo, pSoldier->pathing.bLevel );