From 5fa61e8f115aca29f25ff8cd829bf815f535b7db Mon Sep 17 00:00:00 2001 From: Lesh Date: Mon, 8 Jan 2007 15:13:35 +0000 Subject: [PATCH] - feature: enemies and militia can have ambidexterous skill and a second gun (elites and regular troops/milita only) git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@660 3b4a5df2-a311-0410-b5c6-a8a6f20db521 --- Tactical/Soldier Create.cpp | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/Tactical/Soldier Create.cpp b/Tactical/Soldier Create.cpp index 0477e6cd..36604969 100644 --- a/Tactical/Soldier Create.cpp +++ b/Tactical/Soldier Create.cpp @@ -1100,6 +1100,42 @@ BOOLEAN TacticalCopySoldierFromCreateStruct( SOLDIERTYPE *pSoldier, SOLDIERCREAT } } + + + // Lesh: give to enemies AMBIDEXTEROUS skill and a second pistol + if( pSoldier->ubSoldierClass == SOLDIER_CLASS_ELITE || pSoldier->ubSoldierClass == SOLDIER_CLASS_ELITE_MILITIA ) + { + if ( Chance( 20 ) ) + { + pSoldier->ubSkillTrait1 = AMBIDEXT; + if ( Chance( 10 ) ) + { + pSoldier->ubSkillTrait2 = AMBIDEXT; + } + if ( Item[ pCreateStruct->Inv[ HANDPOS ].usItem ].usItemClass == IC_GUN && + !Item[ pCreateStruct->Inv[ HANDPOS ].usItem ].twohanded ) + { + memcpy( &(pCreateStruct->Inv[SECONDHANDPOS]), &(pCreateStruct->Inv[HANDPOS]), sizeof( OBJECTTYPE ) ); + } + } + } + else if( pSoldier->ubSoldierClass == SOLDIER_CLASS_ARMY || pSoldier->ubSoldierClass == SOLDIER_CLASS_REG_MILITIA ) + { + if ( Chance( 10 ) ) + { + pSoldier->ubSkillTrait1 = AMBIDEXT; + if ( Chance( 5 ) ) + { + pSoldier->ubSkillTrait2 = AMBIDEXT; + } + if ( Item[ pCreateStruct->Inv[ HANDPOS ].usItem ].usItemClass == IC_GUN && + !Item[ pCreateStruct->Inv[ HANDPOS ].usItem ].twohanded ) + { + memcpy( &(pCreateStruct->Inv[SECONDHANDPOS]), &(pCreateStruct->Inv[HANDPOS]), sizeof( OBJECTTYPE ) ); + } + } + } + //KM: November 10, 1997 //Adding patrol points //CAUTION: CONVERTING SIGNED TO UNSIGNED though the values should never be negative.