From e7e268d957d894f1f510113103b99ebafb728963 Mon Sep 17 00:00:00 2001 From: Flugente Date: Sun, 3 Feb 2019 14:11:56 +0000 Subject: [PATCH] If a gun has a magazine size < 5, the 'out of ammo' soundfile is only displayed with a chance of CHANCE_SAY_ANNOYING_PHRASE (JA2_Options.ini). This should make using guns with tiny magazine sizes less annoying. git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8658 3b4a5df2-a311-0410-b5c6-a8a6f20db521 --- Tactical/Overhead.cpp | 2 +- Tactical/Points.cpp | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/Tactical/Overhead.cpp b/Tactical/Overhead.cpp index da0ad7b6f..66d666a50 100644 --- a/Tactical/Overhead.cpp +++ b/Tactical/Overhead.cpp @@ -9388,7 +9388,7 @@ SOLDIERTYPE *InternalReduceAttackBusyCount( ) fEnterCombat = FALSE; } - if ( pSoldier->flags.fSayAmmoQuotePending ) + if ( pSoldier->flags.fSayAmmoQuotePending && ( Chance( gGameExternalOptions.iChanceSayAnnoyingPhrase ) || GetMagSize( &pSoldier->inv[pSoldier->ubAttackingHand] ) > 4 ) ) { pSoldier->flags.fSayAmmoQuotePending = FALSE; TacticalCharacterDialogue( pSoldier, QUOTE_OUT_OF_AMMO ); diff --git a/Tactical/Points.cpp b/Tactical/Points.cpp index e291e5fc0..487045a34 100644 --- a/Tactical/Points.cpp +++ b/Tactical/Points.cpp @@ -2910,7 +2910,7 @@ BOOLEAN EnoughAmmo( SOLDIERTYPE *pSoldier, BOOLEAN fDisplay, INT8 bInvPos ) return ( TRUE ); } - if ( fDisplay ) + if ( fDisplay && ( Chance( gGameExternalOptions.iChanceSayAnnoyingPhrase ) || GetMagSize( pObjUsed, 0 ) > 4 ) ) { TacticalCharacterDialogue( pSoldier, QUOTE_OUT_OF_AMMO ); } @@ -2921,10 +2921,11 @@ BOOLEAN EnoughAmmo( SOLDIERTYPE *pSoldier, BOOLEAN fDisplay, INT8 bInvPos ) { if ( (*pObjUsed)[0]->data.gun.ubGunShotsLeft == 0 ) { - if ( fDisplay ) + if ( fDisplay && ( Chance( gGameExternalOptions.iChanceSayAnnoyingPhrase ) || GetMagSize( pObjUsed, 0 ) > 4 ) ) { TacticalCharacterDialogue( pSoldier, QUOTE_OUT_OF_AMMO ); } + return( FALSE ); }