mirror of
https://github.com/1dot13/source.git
synced 2026-07-22 13:40:22 +02:00
Convert gusSelectedSoldier to SoldierID
This commit is contained in:
@@ -104,7 +104,7 @@ UINT32 AniEditScreenHandle(void)
|
||||
fToggle2 = FALSE;
|
||||
ubCurLoadedState = 0;
|
||||
|
||||
pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
|
||||
gTacticalStatus.uiFlags |= LOADING_SAVED_GAME;
|
||||
|
||||
|
||||
+6
-6
@@ -261,17 +261,17 @@ void EnterTacticalScreen( )
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
DebugMsg(TOPIC_JA2,DBG_LEVEL_3,String("EnterTacticalScreen: check our guy"));
|
||||
if ( !OK_CONTROLLABLE_MERC( MercPtrs[ gusSelectedSoldier ] ) )
|
||||
if ( !OK_CONTROLLABLE_MERC( gusSelectedSoldier ) )
|
||||
{
|
||||
DebugMsg(TOPIC_JA2,DBG_LEVEL_3,String("EnterTacticalScreen: SelectNextAvailSoldier, merc not controllable"));
|
||||
SelectNextAvailSoldier( MercPtrs[ gusSelectedSoldier ] );
|
||||
SelectNextAvailSoldier( gusSelectedSoldier );
|
||||
}
|
||||
DebugMsg(TOPIC_JA2,DBG_LEVEL_3,String("EnterTacticalScreen: who is selected? %d", gusSelectedSoldier));
|
||||
// ATE: If the current guy is sleeping, change....
|
||||
if ( gusSelectedSoldier != NOBODY && MercPtrs[ gusSelectedSoldier ]->flags.fMercAsleep )
|
||||
if ( gusSelectedSoldier != NOBODY && gusSelectedSoldier->flags.fMercAsleep )
|
||||
{
|
||||
DebugMsg(TOPIC_JA2,DBG_LEVEL_3,String("EnterTacticalScreen: SelectNextAvailSoldier, merc asleep"));
|
||||
SelectNextAvailSoldier( MercPtrs[ gusSelectedSoldier ] );
|
||||
SelectNextAvailSoldier( gusSelectedSoldier );
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -684,7 +684,7 @@ UINT32 MainGameScreenHandle(void)
|
||||
// Select a guy if he hasn;'
|
||||
if( !gfTacticalPlacementGUIActive )
|
||||
{
|
||||
if ( gusSelectedSoldier != NOBODY && OK_INTERRUPT_MERC( MercPtrs[ gusSelectedSoldier ] ) )
|
||||
if ( gusSelectedSoldier != NOBODY && OK_INTERRUPT_MERC( gusSelectedSoldier ) )
|
||||
{
|
||||
DebugMsg(TOPIC_JA2,DBG_LEVEL_3,String("maingamescreenhandle: selectsoldier"));
|
||||
SelectSoldier( gusSelectedSoldier, FALSE, TRUE );
|
||||
@@ -933,7 +933,7 @@ UINT32 MainGameScreenHandle(void)
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
if( !gGameSettings.fOptions[ TOPTION_MUTE_CONFIRMATIONS ] )
|
||||
MercPtrs[ gusSelectedSoldier ]->DoMercBattleSound( BATTLE_SOUND_ATTN1 );
|
||||
gusSelectedSoldier->DoMercBattleSound( BATTLE_SOUND_ATTN1 );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+14
-30
@@ -514,31 +514,25 @@ UINT32 PalEditScreenShutdown(void)
|
||||
|
||||
void PalEditRenderHook( )
|
||||
{
|
||||
SOLDIERTYPE *pSoldier;
|
||||
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
if ( gusSelectedSoldier < NOBODY && gusSelectedSoldier->bActive)
|
||||
{
|
||||
// Set to current
|
||||
GetSoldier( &pSoldier, gusSelectedSoldier );
|
||||
|
||||
DisplayPaletteRep( pSoldier->HeadPal, 50, 10, FRAME_BUFFER );
|
||||
DisplayPaletteRep( pSoldier->PantsPal, 50, 50, FRAME_BUFFER );
|
||||
DisplayPaletteRep( pSoldier->VestPal, 50, 90, FRAME_BUFFER );
|
||||
DisplayPaletteRep( pSoldier->SkinPal, 50, 130, FRAME_BUFFER );
|
||||
|
||||
DisplayPaletteRep( gusSelectedSoldier->HeadPal, 50, 10, FRAME_BUFFER );
|
||||
DisplayPaletteRep( gusSelectedSoldier->PantsPal, 50, 50, FRAME_BUFFER );
|
||||
DisplayPaletteRep( gusSelectedSoldier->VestPal, 50, 90, FRAME_BUFFER );
|
||||
DisplayPaletteRep( gusSelectedSoldier->SkinPal, 50, 130, FRAME_BUFFER );
|
||||
}
|
||||
}
|
||||
|
||||
BOOLEAN PalEditKeyboardHook( InputAtom *pInputEvent )
|
||||
{
|
||||
UINT8 ubType;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
UINT8 ubPaletteRep;
|
||||
UINT32 cnt;
|
||||
UINT8 ubStartRep = 0;
|
||||
UINT8 ubEndRep = 0;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
UINT32 cnt;
|
||||
UINT8 ubType;
|
||||
UINT8 ubPaletteRep;
|
||||
UINT8 ubStartRep = 0;
|
||||
UINT8 ubEndRep = 0;
|
||||
|
||||
if ( gusSelectedSoldier == NOBODY )
|
||||
if ( gusSelectedSoldier >= NOBODY || gusSelectedSoldier->bActive == FALSE )
|
||||
{
|
||||
return( FALSE );
|
||||
}
|
||||
@@ -549,11 +543,10 @@ BOOLEAN PalEditKeyboardHook( InputAtom *pInputEvent )
|
||||
return( TRUE );
|
||||
}
|
||||
|
||||
pSoldier = gusSelectedSoldier;
|
||||
|
||||
if ((pInputEvent->usEvent == KEY_DOWN )&& ( pInputEvent->usParam == 'h' ))
|
||||
{
|
||||
// Get Soldier
|
||||
GetSoldier( &pSoldier, gusSelectedSoldier );
|
||||
|
||||
// Get index of current
|
||||
CHECKF( GetPaletteRepIndexFromID( pSoldier->HeadPal, &ubPaletteRep ) );
|
||||
ubType = gpPalRep[ ubPaletteRep ].ubType;
|
||||
@@ -582,9 +575,6 @@ BOOLEAN PalEditKeyboardHook( InputAtom *pInputEvent )
|
||||
|
||||
if ((pInputEvent->usEvent == KEY_DOWN )&& ( pInputEvent->usParam == 'v' ))
|
||||
{
|
||||
// Get Soldier
|
||||
GetSoldier( &pSoldier, gusSelectedSoldier );
|
||||
|
||||
// Get index of current
|
||||
CHECKF( GetPaletteRepIndexFromID( pSoldier->VestPal, &ubPaletteRep ) );
|
||||
ubType = gpPalRep[ ubPaletteRep ].ubType;
|
||||
@@ -612,9 +602,6 @@ BOOLEAN PalEditKeyboardHook( InputAtom *pInputEvent )
|
||||
|
||||
if ((pInputEvent->usEvent == KEY_DOWN )&& ( pInputEvent->usParam == 'p' ))
|
||||
{
|
||||
// Get Soldier
|
||||
GetSoldier( &pSoldier, gusSelectedSoldier );
|
||||
|
||||
// Get index of current
|
||||
CHECKF( GetPaletteRepIndexFromID( pSoldier->PantsPal, &ubPaletteRep ) );
|
||||
ubType = gpPalRep[ ubPaletteRep ].ubType;
|
||||
@@ -642,9 +629,6 @@ BOOLEAN PalEditKeyboardHook( InputAtom *pInputEvent )
|
||||
|
||||
if ((pInputEvent->usEvent == KEY_DOWN )&& ( pInputEvent->usParam == 's' ))
|
||||
{
|
||||
// Get Soldier
|
||||
GetSoldier( &pSoldier, gusSelectedSoldier );
|
||||
|
||||
// Get index of current
|
||||
CHECKF( GetPaletteRepIndexFromID( pSoldier->SkinPal, &ubPaletteRep ) );
|
||||
ubType = gpPalRep[ ubPaletteRep ].ubType;
|
||||
|
||||
@@ -3993,7 +3993,7 @@ void JumpIntoAdjacentSector( UINT8 ubTacticalDirection, UINT8 ubJumpCode, INT32
|
||||
// This guy should always be 1 ) selected and 2 ) close enough to exit sector to leave
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
pValidSoldier = MercPtrs[gusSelectedSoldier];
|
||||
pValidSoldier = gusSelectedSoldier;
|
||||
ubDirection = GetInsertionDataFromAdjacentMoveDirection( ubTacticalDirection, sAdditionalData );
|
||||
}
|
||||
|
||||
@@ -4839,13 +4839,13 @@ BOOLEAN OKForSectorExit( INT8 bExitDirection, INT32 usAdditionalData, UINT32 *pu
|
||||
UINT8 ubNumMercs = 0, ubNumEPCs = 0;
|
||||
UINT8 ubPlayerControllableMercsInSquad = 0;
|
||||
|
||||
if ( gusSelectedSoldier == NOBODY )
|
||||
if ( gusSelectedSoldier >= NOBODY )
|
||||
{ //must have a selected soldier to be allowed to tactically traverse.
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// anv: vehicles can't use inner exit grids
|
||||
if ( bExitDirection == (-1) && MercPtrs[gusSelectedSoldier]->bAssignment == VEHICLE )
|
||||
if ( bExitDirection == (-1) && gusSelectedSoldier->bAssignment == VEHICLE )
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
@@ -4959,12 +4959,12 @@ BOOLEAN OKForSectorExit( INT8 bExitDirection, INT32 usAdditionalData, UINT32 *pu
|
||||
// If we are here, at least one guy is controllable in this sector, at least he can go!
|
||||
if ( fAtLeastOneMercControllable )
|
||||
{
|
||||
ubPlayerControllableMercsInSquad = (UINT8)NumberOfPlayerControllableMercsInSquad( MercPtrs[gusSelectedSoldier]->bAssignment );
|
||||
ubPlayerControllableMercsInSquad = (UINT8)NumberOfPlayerControllableMercsInSquad( gusSelectedSoldier->bAssignment );
|
||||
if ( fAtLeastOneMercControllable <= ubPlayerControllableMercsInSquad )
|
||||
{ //if the selected merc is an EPC and we can only leave with that merc, then prevent it
|
||||
//as EPCs aren't allowed to leave by themselves. Instead of restricting this in the
|
||||
//exiting sector gui, we restrict it by explaining it with a message box.
|
||||
if ( AM_AN_EPC( MercPtrs[gusSelectedSoldier] ) )
|
||||
if ( AM_AN_EPC( gusSelectedSoldier ) )
|
||||
{
|
||||
if ( AM_A_ROBOT( pSoldier ) && !pSoldier->CanRobotBeControlled( ) )
|
||||
{
|
||||
|
||||
@@ -657,13 +657,13 @@ void HandleDialogue( )
|
||||
{
|
||||
if( gfMorrisShouldSayHi )
|
||||
{
|
||||
SOLDIERTYPE * pMorris;
|
||||
SOLDIERTYPE * pSoldier;
|
||||
INT16 sPlayerGridNo;
|
||||
UINT8 ubPlayerID;
|
||||
UINT8 ubQualifiedSoldierIDArray[ NUM_MERCS_WITH_NEW_QUOTES ];
|
||||
UINT8 ubNumQualifiedMercs=0;
|
||||
UINT8 ubCnt=0;
|
||||
SOLDIERTYPE *pMorris;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
INT16 sPlayerGridNo;
|
||||
SoldierID ubPlayerID;
|
||||
UINT8 ubQualifiedSoldierIDArray[ NUM_MERCS_WITH_NEW_QUOTES ];
|
||||
UINT8 ubNumQualifiedMercs=0;
|
||||
UINT8 ubCnt=0;
|
||||
|
||||
if( !( gMercProfiles[ MORRIS_UB ].ubMiscFlags2 & PROFILE_MISC_FLAG2_SAID_FIRSTSEEN_QUOTE ) )
|
||||
{
|
||||
@@ -676,7 +676,7 @@ void HandleDialogue( )
|
||||
ubPlayerID = WhoIsThere2( sPlayerGridNo, 0 );
|
||||
if (ubPlayerID != NOBODY)
|
||||
{
|
||||
InitiateConversation( pMorris, MercPtrs[ ubPlayerID ], NPC_INITIAL_QUOTE, 0 );
|
||||
InitiateConversation( pMorris, ubPlayerID, NPC_INITIAL_QUOTE, 0 );
|
||||
gMercProfiles[ pMorris->ubProfile ].ubMiscFlags2 |= PROFILE_MISC_FLAG2_SAID_FIRSTSEEN_QUOTE;
|
||||
}
|
||||
}
|
||||
@@ -1887,7 +1887,7 @@ BOOLEAN CharacterDialogue( UINT8 ubCharacterNum, UINT16 usQuoteNum, INT32 iFaceI
|
||||
{
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
AdditionalTacticalCharacterDialogue_CallsLua( MercPtrs[gusSelectedSoldier], ADE_DIALOGUE_REACTION, ubCharacterNum, usQuoteNum, ( gMercProfiles[ubCharacterNum].ubMiscFlags & PROFILE_MISC_FLAG_RECRUITED ) ? 1 : 0 );
|
||||
AdditionalTacticalCharacterDialogue_CallsLua( gusSelectedSoldier, ADE_DIALOGUE_REACTION, ubCharacterNum, usQuoteNum, ( gMercProfiles[ubCharacterNum].ubMiscFlags & PROFILE_MISC_FLAG_RECRUITED ) ? 1 : 0 );
|
||||
}
|
||||
}
|
||||
// if team members talk, anyone may answer
|
||||
|
||||
@@ -538,11 +538,10 @@ void DisplayCover( BOOLEAN forceUpdate )
|
||||
|
||||
static void CalculateCoverFromEnemies()
|
||||
{
|
||||
if (gusSelectedSoldier == NOBODY)
|
||||
if (gusSelectedSoldier == NOBODY || gusSelectedSoldier->bActive == false)
|
||||
return;
|
||||
|
||||
SOLDIERTYPE* pSoldier;
|
||||
GetSoldier(&pSoldier, gusSelectedSoldier);
|
||||
SOLDIERTYPE* pSoldier = gusSelectedSoldier;
|
||||
const INT8 OurSoldierStealth = GetStealth(pSoldier);
|
||||
const INT8 OurSoldierLBESightAdjustment = GetSightAdjustmentBasedOnLBE(pSoldier);
|
||||
|
||||
@@ -673,10 +672,10 @@ void CalculateCover()
|
||||
INT8 ubZ;
|
||||
SOLDIERTYPE* pSoldier;
|
||||
|
||||
if (gusSelectedSoldier == NOBODY)
|
||||
if (gusSelectedSoldier == NOBODY || gusSelectedSoldier->bActive == false)
|
||||
return;
|
||||
|
||||
GetSoldier(&pSoldier, gusSelectedSoldier);
|
||||
pSoldier = gusSelectedSoldier;
|
||||
|
||||
for (ubX = gsMinCellX; ubX <= gsMaxCellX; ++ubX)
|
||||
{
|
||||
@@ -1199,7 +1198,7 @@ void CalculateMines()
|
||||
return;
|
||||
}
|
||||
|
||||
const INT32& sSelectedSoldierGridNo = MercPtrs[ gusSelectedSoldier ]->sGridNo;
|
||||
const INT32& sSelectedSoldierGridNo = gusSelectedSoldier->sGridNo;
|
||||
|
||||
for ( ubX=gsMinCellX; ubX<=gsMaxCellX; ++ubX )
|
||||
{
|
||||
@@ -1453,7 +1452,7 @@ void CalculateTraitRange()
|
||||
return;
|
||||
}
|
||||
|
||||
const INT32& sSelectedSoldierGridNo = MercPtrs[ gusSelectedSoldier ]->sGridNo;
|
||||
const INT32& sSelectedSoldierGridNo = gusSelectedSoldier->sGridNo;
|
||||
|
||||
for ( ubX=gsMinCellX; ubX<=gsMaxCellX; ++ubX )
|
||||
{
|
||||
@@ -1591,7 +1590,7 @@ void CalculateTrackerRange( )
|
||||
|
||||
UINT16 range = gSkillTraitValues.usSVTrackerMaxRange * trackerskill;
|
||||
|
||||
const INT32& sSelectedSoldierGridNo = MercPtrs[gusSelectedSoldier]->sGridNo;
|
||||
const INT32& sSelectedSoldierGridNo = gusSelectedSoldier->sGridNo;
|
||||
|
||||
for ( ubX = gsMinCellX; ubX <= gsMaxCellX; ++ubX )
|
||||
{
|
||||
@@ -1775,7 +1774,7 @@ void CalculateWeapondata()
|
||||
|
||||
BOOLEAN guninhand = WeaponInHand( pSoldier );
|
||||
|
||||
INT32 sSelectedSoldierGridNo = MercPtrs[gusSelectedSoldier]->sGridNo;
|
||||
INT32 sSelectedSoldierGridNo = gusSelectedSoldier->sGridNo;
|
||||
|
||||
if ( TileIsOutOfBounds( sSelectedSoldierGridNo ) )
|
||||
return;
|
||||
|
||||
@@ -197,7 +197,7 @@ BOOLEAN AddUIPlan( INT32 sGridNo, UINT8 ubPlanID )
|
||||
pPlanSoldier->ChangeSoldierState( pPlanSoldier->usUIMovementMode, 0, FALSE );
|
||||
|
||||
// Change selected soldier
|
||||
gusSelectedSoldier = (UINT16)pPlanSoldier->ubID;
|
||||
gusSelectedSoldier = pPlanSoldier->ubID;
|
||||
|
||||
// Change global planned mode to this guy!
|
||||
gpUIPlannedSoldier = pPlanSoldier;
|
||||
@@ -243,6 +243,7 @@ void EndUIPlan( )
|
||||
SOLDIERTYPE *pSoldier;
|
||||
|
||||
// Zero out any planned soldiers
|
||||
//FIXME
|
||||
for( cnt = MAX_NUM_SOLDIERS; cnt < TOTAL_SOLDIERS; cnt++ )
|
||||
{
|
||||
pSoldier = MercPtrs[ cnt ];
|
||||
|
||||
@@ -1013,7 +1013,7 @@ void SetUIMouseCursor( )
|
||||
|
||||
if( GetMouseMapPos( &usMapPos) )
|
||||
{
|
||||
if ( gusSelectedSoldier != NOBODY && MercPtrs[ gusSelectedSoldier ]->pathing.bLevel == 0 )
|
||||
if ( gusSelectedSoldier != NOBODY && gusSelectedSoldier->pathing.bLevel == 0 )
|
||||
{
|
||||
// ATE: Is this place revealed?
|
||||
if ( !InARoom( usMapPos, &usRoomNum ) || ( InARoom( usMapPos, &usRoomNum ) && gpWorldLevelData[ usMapPos ].uiFlags & MAPELEMENT_REVEALED ) )
|
||||
@@ -1953,7 +1953,7 @@ UINT32 UIHandleAOnTerrain( UI_EVENT *pUIEvent )
|
||||
if ( gfUIFullTargetFound )
|
||||
{
|
||||
// No, ok display message IF this is the first time at this gridno
|
||||
if ( gsOutOfRangeGridNo != MercPtrs[ gusUIFullTargetID ]->sGridNo || gubOutOfRangeMerc != gusSelectedSoldier )
|
||||
if ( gsOutOfRangeGridNo != gusUIFullTargetID->sGridNo || gubOutOfRangeMerc != gusSelectedSoldier )
|
||||
{
|
||||
// Display
|
||||
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, TacticalStr[ OUT_OF_RANGE_STRING ] );
|
||||
@@ -1961,7 +1961,7 @@ UINT32 UIHandleAOnTerrain( UI_EVENT *pUIEvent )
|
||||
//PlayJA2Sample( TARGET_OUT_OF_RANGE, RATE_11025, MIDVOLUME, 1, MIDDLEPAN );
|
||||
|
||||
// Set
|
||||
gsOutOfRangeGridNo = MercPtrs[ gusUIFullTargetID ]->sGridNo;
|
||||
gsOutOfRangeGridNo = gusUIFullTargetID->sGridNo;
|
||||
gubOutOfRangeMerc = gusSelectedSoldier;
|
||||
}
|
||||
}
|
||||
@@ -2058,7 +2058,7 @@ UINT32 UIHandleCWait( UI_EVENT *pUIEvent )
|
||||
{
|
||||
if( pSoldier->flags.uiStatusFlags & SOLDIER_DRIVER )
|
||||
{
|
||||
pSoldier = GetSoldierStructureForVehicle( MercPtrs[ gusSelectedSoldier ]->iVehicleId );
|
||||
pSoldier = GetSoldierStructureForVehicle( gusSelectedSoldier->iVehicleId );
|
||||
}
|
||||
|
||||
pInvTile = GetCurInteractiveTile( );
|
||||
@@ -3746,7 +3746,7 @@ BOOLEAN UIHandleOnMerc( BOOLEAN fMovementMode )
|
||||
// anv: don't switch if passengers are blocked from attacking
|
||||
if( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
SOLDIERTYPE *pSelectedSoldier = MercPtrs[gusSelectedSoldier];
|
||||
SOLDIERTYPE *pSelectedSoldier = gusSelectedSoldier;
|
||||
if( pSelectedSoldier->flags.uiStatusFlags & ( SOLDIER_DRIVER | SOLDIER_PASSENGER ) )
|
||||
{
|
||||
SOLDIERTYPE *pVehicle = GetSoldierStructureForVehicle( pSelectedSoldier->iVehicleId );
|
||||
@@ -6386,7 +6386,7 @@ BOOLEAN IsValidTalkableNPC( UINT16 ubSoldierID, BOOLEAN fGive, BOOLEAN fAllowMer
|
||||
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
if ( AM_A_ROBOT( MercPtrs[ gusSelectedSoldier ] ) )
|
||||
if ( AM_A_ROBOT( gusSelectedSoldier ) )
|
||||
{
|
||||
return( FALSE );
|
||||
}
|
||||
@@ -7042,7 +7042,7 @@ BOOLEAN SelectedGuyInBusyAnimation( )
|
||||
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
|
||||
if ( pSoldier->usAnimState == LOB_ITEM ||
|
||||
pSoldier->usAnimState == THROW_ITEM ||
|
||||
|
||||
@@ -317,7 +317,7 @@ void SetUpInterface( )
|
||||
{
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
if ( MercPtrs[ gusSelectedSoldier ]->sGridNo != gsUIHandleShowMoveGridLocation )
|
||||
if ( gusSelectedSoldier->sGridNo != gsUIHandleShowMoveGridLocation )
|
||||
{
|
||||
if ( gfUIHandleShowMoveGrid == 2 )
|
||||
{
|
||||
@@ -327,7 +327,7 @@ void SetUpInterface( )
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( MercPtrs[ gusSelectedSoldier ]->bStealthMode )
|
||||
if ( gusSelectedSoldier->bStealthMode )
|
||||
{
|
||||
AddTopmostToHead( gsUIHandleShowMoveGridLocation, GetSnapCursorIndex( FIRSTPOINTERS9 ) );
|
||||
gpWorldLevelData[gsUIHandleShowMoveGridLocation].pTopmostHead->ubShadeLevel=DEFAULT_SHADE_LEVEL;
|
||||
|
||||
@@ -354,7 +354,7 @@ BOOLEAN DrawUICursor( )
|
||||
// ATE; Is the current guy in steath mode?
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
if ( MercPtrs[ gusSelectedSoldier ]->bStealthMode )
|
||||
if ( gusSelectedSoldier->bStealthMode )
|
||||
{
|
||||
usTileCursor = FIRSTPOINTERS9;
|
||||
}
|
||||
@@ -367,7 +367,7 @@ BOOLEAN DrawUICursor( )
|
||||
// ATE; Is the current guy in steath mode?
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
if ( MercPtrs[ gusSelectedSoldier ]->bStealthMode )
|
||||
if ( gusSelectedSoldier->bStealthMode )
|
||||
{
|
||||
usTileCursor = FIRSTPOINTERS10;
|
||||
}
|
||||
|
||||
@@ -6201,7 +6201,7 @@ void MercFacePanelCallback( MOUSE_REGION * pRegion, INT32 iReason )
|
||||
if ( OK_CONTROLLABLE_MERC( MercPtrs[ ubSoldierID ] ) && !( MercPtrs[ ubSoldierID ]->flags.uiStatusFlags & ( SOLDIER_VEHICLE | SOLDIER_PASSENGER | SOLDIER_DRIVER ) ) )
|
||||
{
|
||||
//ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, L"%s added", MercPtrs[ ubSoldierID ]->name );
|
||||
MercPtrs[ gusSelectedSoldier ]->flags.uiStatusFlags |= SOLDIER_MULTI_SELECTED;
|
||||
gusSelectedSoldier->flags.uiStatusFlags |= SOLDIER_MULTI_SELECTED;
|
||||
MercPtrs[ ubSoldierID ]->flags.uiStatusFlags |= SOLDIER_MULTI_SELECTED;
|
||||
EndMultiSoldierSelection( TRUE );
|
||||
}
|
||||
@@ -6213,7 +6213,7 @@ void MercFacePanelCallback( MOUSE_REGION * pRegion, INT32 iReason )
|
||||
MercPtrs[ ubSoldierID ]->flags.uiStatusFlags &= (~SOLDIER_MULTI_SELECTED );
|
||||
if (ubSoldierID != gusSelectedSoldier)
|
||||
{
|
||||
MercPtrs[ gusSelectedSoldier ]->flags.uiStatusFlags |= SOLDIER_MULTI_SELECTED;
|
||||
gusSelectedSoldier->flags.uiStatusFlags |= SOLDIER_MULTI_SELECTED;
|
||||
}
|
||||
EndMultiSoldierSelection( TRUE );
|
||||
}
|
||||
@@ -7194,7 +7194,7 @@ UINT16 FindNextMercInTeamPanel( SOLDIERTYPE *pSoldier, BOOLEAN fGoodForLessOKLif
|
||||
//Select next squad
|
||||
iCurrentSquad = CurrentSquad( );
|
||||
|
||||
pNewSoldier = FindNextActiveSquad( MercPtrs[ gusSelectedSoldier ] );
|
||||
pNewSoldier = FindNextActiveSquad( gusSelectedSoldier );
|
||||
|
||||
if ( pNewSoldier->bAssignment != iCurrentSquad )
|
||||
{
|
||||
|
||||
@@ -43,7 +43,7 @@ extern UINT32 guiBrownBackgroundForTeamPanel;
|
||||
extern UINT32 guiGoldBackgroundForTeamPanel;
|
||||
|
||||
// selected grunt
|
||||
extern UINT16 gusSelectedSoldier;
|
||||
extern SoldierID gusSelectedSoldier;
|
||||
|
||||
// car portraits
|
||||
enum{
|
||||
|
||||
@@ -851,7 +851,7 @@ void PopupMovementMenu( UI_EVENT *pUIEvent )
|
||||
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
}
|
||||
|
||||
// Blit background!
|
||||
@@ -6136,7 +6136,7 @@ void ShowEnemyWeapon( INT16 sX, INT16 sY, SOLDIERTYPE* pTargetSoldier )
|
||||
INT32 iVisibleDistance;
|
||||
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
pSelectedSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSelectedSoldier = gusSelectedSoldier;
|
||||
else
|
||||
return;
|
||||
|
||||
@@ -6182,7 +6182,7 @@ void ShowEnemyHealthBar( INT16 sX, INT16 sY, SOLDIERTYPE* pSoldier )
|
||||
SOLDIERTYPE *pSelectedSoldier;
|
||||
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
pSelectedSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSelectedSoldier = gusSelectedSoldier;
|
||||
else
|
||||
return;
|
||||
|
||||
|
||||
+32
-32
@@ -298,7 +298,7 @@ SOLDIERTYPE* SoldierFromID(const SoldierID id, SOLDIERTYPE* Array[TOTAL_SOLDIERS
|
||||
UINT8 gbPlayerNum = 0;
|
||||
|
||||
// Global for current selected soldier
|
||||
UINT16 gusSelectedSoldier = NOBODY;
|
||||
SoldierID gusSelectedSoldier = NOBODY;
|
||||
INT8 gbShowEnemies = FALSE;
|
||||
BOOLEAN gfMovingAnimation = FALSE;
|
||||
|
||||
@@ -3362,7 +3362,7 @@ void InternalSelectSoldier( UINT16 usSoldierID, BOOLEAN fAcknowledge, BOOLEAN fF
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
// Get guy
|
||||
pOldSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pOldSoldier = gusSelectedSoldier;
|
||||
pOldSoldier->flags.fShowLocator = FALSE;
|
||||
pOldSoldier->flags.fFlashLocator = FALSE;
|
||||
|
||||
@@ -4249,8 +4249,8 @@ void HandleNPCTeamMemberDeath( SOLDIERTYPE *pSoldierOld )
|
||||
//if the person was Raul, and we are to say the blown up quotes
|
||||
if( pSoldierOld->ubProfile == RAUL_UB /*RAUL */ && IsJa25GeneralFlagSet( JA_GF__RAUL_BLOW_HIMSELF_UP ) )
|
||||
{
|
||||
UINT8 SoldierId1;
|
||||
UINT8 SoldierId2;
|
||||
SoldierID SoldierId1;
|
||||
SoldierID SoldierId2;
|
||||
|
||||
//Get some random Soldier ID's of the valid mercs
|
||||
if( Get3RandomQualifiedMercs( &SoldierId1, &SoldierId2, NULL ) != 0 )
|
||||
@@ -6571,8 +6571,8 @@ void EnterCombatMode( UINT8 ubStartingTeam )
|
||||
DebugMsg (TOPIC_JA2,DBG_LEVEL_3,String("EnterCombatMode continuing... start player turn, selected soldier = %d",gusSelectedSoldier));
|
||||
// OK, make sure we have a selected guy
|
||||
// Madd: this was causing a weird crash becuase gusSelectedSoldier was 156 (out of the array bounds) for some reason
|
||||
//if ( MercPtrs[ gusSelectedSoldier ]->aiData.bOppCnt == 0 )
|
||||
if ( gusSelectedSoldier != NOBODY && MercPtrs[ gusSelectedSoldier ]->aiData.bOppCnt == 0 )
|
||||
//if ( gusSelectedSoldier->aiData.bOppCnt == 0 )
|
||||
if ( gusSelectedSoldier != NOBODY && gusSelectedSoldier->aiData.bOppCnt == 0 )
|
||||
{
|
||||
DebugMsg (TOPIC_JA2,DBG_LEVEL_3,"EnterCombatMode continuing... nobody selected");
|
||||
// OK, look through and find one....
|
||||
@@ -9631,7 +9631,7 @@ SOLDIERTYPE *InternalReduceAttackBusyCount( )
|
||||
|
||||
if (gTacticalStatus.ubCurrentTeam == gbPlayerNum && gusSelectedSoldier < TOTAL_SOLDIERS)
|
||||
{
|
||||
pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -9658,7 +9658,7 @@ SOLDIERTYPE *InternalReduceAttackBusyCount( )
|
||||
return( NULL );
|
||||
}
|
||||
|
||||
pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
}
|
||||
|
||||
if (!pSoldier)
|
||||
@@ -10179,7 +10179,7 @@ void RemoveManFromTeam( INT8 bTeam )
|
||||
|
||||
void RemoveSoldierFromTacticalSector( SOLDIERTYPE *pSoldier, BOOLEAN fAdjustSelected )
|
||||
{
|
||||
UINT16 ubID;
|
||||
SoldierID ubID;
|
||||
SOLDIERTYPE *pNewSoldier;
|
||||
|
||||
// reset merc's opplist
|
||||
@@ -10935,7 +10935,7 @@ void TurnCoatAttemptMessageBoxCallBack( UINT8 ubExitValue )
|
||||
|
||||
INT16 approachselected = DropDownTemplate<DROPDOWNNR_MSGBOX_1>::getInstance().GetSelectedEntryKey();
|
||||
|
||||
UINT8 approachchance = MercPtrs[gusSelectedSoldier]->GetTurncoatConvinctionChance( prisonerdialoguetargetID, approachselected );
|
||||
UINT8 approachchance = gusSelectedSoldier->GetTurncoatConvinctionChance( prisonerdialoguetargetID, approachselected );
|
||||
|
||||
// you can never turn a VIP (though we don't tell the player if someone is a VIP, lest they have an exploit to find out)
|
||||
if ( pSoldier->usSoldierFlagMask & SOLDIER_VIP )
|
||||
@@ -10953,24 +10953,24 @@ void TurnCoatAttemptMessageBoxCallBack( UINT8 ubExitValue )
|
||||
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, szTurncoatText[0], pSoldier->GetName() );
|
||||
|
||||
// increase intel penalty. We can only try to convert enemies if the penalty is low, and having a high penalty means we can't mine intel for a few hours but have to hide
|
||||
MercPtrs[gusSelectedSoldier]->usSkillCooldown[SOLDIER_COOLDOWN_INTEL_PENALTY] += 1;
|
||||
gusSelectedSoldier->usSkillCooldown[SOLDIER_COOLDOWN_INTEL_PENALTY] += 1;
|
||||
|
||||
StatChange( MercPtrs[gusSelectedSoldier], EXPERAMT, 2, FROM_SUCCESS );
|
||||
StatChange( MercPtrs[gusSelectedSoldier], LDRAMT, 4, FROM_SUCCESS );
|
||||
StatChange( gusSelectedSoldier, EXPERAMT, 2, FROM_SUCCESS );
|
||||
StatChange( gusSelectedSoldier, LDRAMT, 4, FROM_SUCCESS );
|
||||
}
|
||||
else
|
||||
{
|
||||
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, szTurncoatText[1], pSoldier->GetName() );
|
||||
|
||||
// increase intel penalty. We can only try to convert enemies if the penalty is low, and having a high penalty means we can't mine intel for a few hours but have to hide
|
||||
MercPtrs[gusSelectedSoldier]->usSkillCooldown[SOLDIER_COOLDOWN_INTEL_PENALTY] += 4;
|
||||
gusSelectedSoldier->usSkillCooldown[SOLDIER_COOLDOWN_INTEL_PENALTY] += 4;
|
||||
|
||||
StatChange( MercPtrs[gusSelectedSoldier], EXPERAMT, 1, FROM_FAILURE );
|
||||
StatChange( MercPtrs[gusSelectedSoldier], LDRAMT, 1, FROM_FAILURE );
|
||||
StatChange( gusSelectedSoldier, EXPERAMT, 1, FROM_FAILURE );
|
||||
StatChange( gusSelectedSoldier, LDRAMT, 1, FROM_FAILURE );
|
||||
}
|
||||
|
||||
// explain that suspicion is so high that we have to stop
|
||||
if ( MercPtrs[gusSelectedSoldier]->usSkillCooldown[SOLDIER_COOLDOWN_INTEL_PENALTY] >= 20 )
|
||||
if ( gusSelectedSoldier->usSkillCooldown[SOLDIER_COOLDOWN_INTEL_PENALTY] >= 20 )
|
||||
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, szTurncoatText[2] );
|
||||
|
||||
// use up resources spent, regardless of whether or not we were successful
|
||||
@@ -10979,7 +10979,7 @@ void TurnCoatAttemptMessageBoxCallBack( UINT8 ubExitValue )
|
||||
INT32 bribeamount = 10 * min( 10, CurrentPlayerProgressPercentage() );
|
||||
|
||||
// substract money spent
|
||||
AddTransactionToPlayersBook ( TRANSFER_FUNDS_TO_MERC, MercPtrs[gusSelectedSoldier]->ubProfile, GetWorldTotalMin(), -bribeamount );
|
||||
AddTransactionToPlayersBook ( TRANSFER_FUNDS_TO_MERC, gusSelectedSoldier->ubProfile, GetWorldTotalMin(), -bribeamount );
|
||||
}
|
||||
else if ( approachselected == 4 )
|
||||
{
|
||||
@@ -10989,7 +10989,7 @@ void TurnCoatAttemptMessageBoxCallBack( UINT8 ubExitValue )
|
||||
}
|
||||
|
||||
// spend AP
|
||||
DeductPoints( MercPtrs[gusSelectedSoldier], APBPConstants[AP_TALK], 0, UNTRIGGERED_INTERRUPT );
|
||||
DeductPoints( gusSelectedSoldier, APBPConstants[AP_TALK], 0, UNTRIGGERED_INTERRUPT );
|
||||
|
||||
//ReduceAttackBusyCount();
|
||||
}
|
||||
@@ -11014,12 +11014,12 @@ void HandleTurncoatAttempt( SOLDIERTYPE* pSoldier )
|
||||
std::vector<std::pair<INT16, STR16> > dropdownvector_1;
|
||||
INT16 cnt = 1;
|
||||
|
||||
UINT8 chance = MercPtrs[gusSelectedSoldier]->GetTurncoatConvinctionChance( prisonerdialoguetargetID, cnt );
|
||||
UINT8 chance = gusSelectedSoldier->GetTurncoatConvinctionChance( prisonerdialoguetargetID, cnt );
|
||||
swprintf( gTurncoatDropdownText[cnt-1], szTurncoatText[3], chance );
|
||||
dropdownvector_1.push_back( std::make_pair( cnt, gTurncoatDropdownText[cnt - 1] ) );
|
||||
|
||||
++cnt;
|
||||
chance = MercPtrs[gusSelectedSoldier]->GetTurncoatConvinctionChance( prisonerdialoguetargetID, cnt );
|
||||
chance = gusSelectedSoldier->GetTurncoatConvinctionChance( prisonerdialoguetargetID, cnt );
|
||||
swprintf( gTurncoatDropdownText[cnt - 1], szTurncoatText[4], chance );
|
||||
dropdownvector_1.push_back( std::make_pair( cnt, gTurncoatDropdownText[cnt - 1] ) );
|
||||
|
||||
@@ -11028,7 +11028,7 @@ void HandleTurncoatAttempt( SOLDIERTYPE* pSoldier )
|
||||
INT32 bribeamount = 10 * min( 10, ubCurrentProgress );
|
||||
if ( bribeamount <= balance )
|
||||
{
|
||||
chance = MercPtrs[gusSelectedSoldier]->GetTurncoatConvinctionChance( prisonerdialoguetargetID, cnt );
|
||||
chance = gusSelectedSoldier->GetTurncoatConvinctionChance( prisonerdialoguetargetID, cnt );
|
||||
swprintf( gTurncoatDropdownText[cnt - 1], szTurncoatText[5], bribeamount, chance );
|
||||
dropdownvector_1.push_back( std::make_pair( cnt, gTurncoatDropdownText[cnt - 1] ) );
|
||||
}
|
||||
@@ -11038,7 +11038,7 @@ void HandleTurncoatAttempt( SOLDIERTYPE* pSoldier )
|
||||
int intelbribeneeded = max( 2, ( ubCurrentProgress + 5 ) / 10 );
|
||||
if ( intelbribeneeded <= intelreserve )
|
||||
{
|
||||
chance = MercPtrs[gusSelectedSoldier]->GetTurncoatConvinctionChance( prisonerdialoguetargetID, cnt );
|
||||
chance = gusSelectedSoldier->GetTurncoatConvinctionChance( prisonerdialoguetargetID, cnt );
|
||||
swprintf( gTurncoatDropdownText[cnt - 1], szTurncoatText[6], intelbribeneeded, chance );
|
||||
dropdownvector_1.push_back( std::make_pair( cnt, gTurncoatDropdownText[cnt - 1] ) );
|
||||
}
|
||||
@@ -11163,7 +11163,7 @@ void PrisonerSurrenderMessageBoxCallBack( UINT8 ubExitValue )
|
||||
if ( ubExitValue == 1 )
|
||||
{
|
||||
SOLDIERTYPE *pSoldierToSurrender = MercPtrs[prisonerdialoguetargetID];
|
||||
DeductPoints( MercPtrs[gusSelectedSoldier], APBPConstants[AP_TALK], 0, UNTRIGGERED_INTERRUPT );
|
||||
DeductPoints( gusSelectedSoldier, APBPConstants[AP_TALK], 0, UNTRIGGERED_INTERRUPT );
|
||||
|
||||
if ( !gGameExternalOptions.fEnemyCanSurrender )
|
||||
{
|
||||
@@ -11285,7 +11285,7 @@ void PrisonerSurrenderMessageBoxCallBack( UINT8 ubExitValue )
|
||||
|
||||
// dynamic opinion: a merc caused the remaining enemies to give up
|
||||
if (gGameExternalOptions.fDynamicOpinions && gusSelectedSoldier != NOBODY )
|
||||
HandleDynamicOpinionChange( MercPtrs[gusSelectedSoldier], OPINIONEVENT_BATTLE_TOOK_PRISONER, TRUE, TRUE );
|
||||
HandleDynamicOpinionChange( gusSelectedSoldier, OPINIONEVENT_BATTLE_TOOK_PRISONER, TRUE, TRUE );
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -11295,22 +11295,22 @@ void PrisonerSurrenderMessageBoxCallBack( UINT8 ubExitValue )
|
||||
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, szPrisonerTextStr[STR_PRISONER_REFUSE_SURRENDER] );
|
||||
|
||||
// if asking for surrender while undercover and the enemy refuses, he learns who you are, so he uncovers you
|
||||
if ( gusSelectedSoldier != NOBODY && MercPtrs[ gusSelectedSoldier ]->usSoldierFlagMask & (SOLDIER_COVERT_CIV|SOLDIER_COVERT_SOLDIER) )
|
||||
if ( gusSelectedSoldier != NOBODY && gusSelectedSoldier->usSoldierFlagMask & (SOLDIER_COVERT_CIV|SOLDIER_COVERT_SOLDIER) )
|
||||
{
|
||||
MercPtrs[ gusSelectedSoldier ]->LooseDisguise();
|
||||
gusSelectedSoldier->LooseDisguise();
|
||||
|
||||
if ( gSkillTraitValues.fCOStripIfUncovered )
|
||||
MercPtrs[ gusSelectedSoldier ]->Strip();
|
||||
gusSelectedSoldier->Strip();
|
||||
|
||||
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, szCovertTextStr[STR_COVERT_SURRENDER_FAILED] );
|
||||
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, szCovertTextStr[STR_COVERT_UNCOVER_SINGLE], MercPtrs[ gusSelectedSoldier ]->GetName() );
|
||||
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, szCovertTextStr[STR_COVERT_UNCOVER_SINGLE], gusSelectedSoldier->GetName() );
|
||||
}
|
||||
}
|
||||
}
|
||||
// we offered to surrender OURSELVES TO the enemy
|
||||
else if ( ubExitValue == 2 )
|
||||
{
|
||||
DeductPoints( MercPtrs[gusSelectedSoldier], APBPConstants[AP_TALK], 0, UNTRIGGERED_INTERRUPT );
|
||||
DeductPoints( gusSelectedSoldier, APBPConstants[AP_TALK], 0, UNTRIGGERED_INTERRUPT );
|
||||
|
||||
if ( !gGameExternalOptions.fPlayerCanAsktoSurrender || MercPtrs[prisonerdialoguetargetID]->bTeam == CREATURE_TEAM )
|
||||
{
|
||||
@@ -11323,7 +11323,7 @@ void PrisonerSurrenderMessageBoxCallBack( UINT8 ubExitValue )
|
||||
// we distract the enemy by essentially talking them to death
|
||||
else if ( ubExitValue == 3 )
|
||||
{
|
||||
DeductPoints( MercPtrs[gusSelectedSoldier], APBPConstants[AP_TALK], 0, UNTRIGGERED_INTERRUPT );
|
||||
DeductPoints( gusSelectedSoldier, APBPConstants[AP_TALK], 0, UNTRIGGERED_INTERRUPT );
|
||||
|
||||
// Flugente: if we are disguised and talk to a non-profile NPC, we will continue to 'chat' with the enemy as long as we aren't ordered to do something else.
|
||||
// This way we can easily order our spies to 'distract' enemies
|
||||
@@ -11367,7 +11367,7 @@ void PrisonerSurrenderMessageBoxCallBack( UINT8 ubExitValue )
|
||||
else
|
||||
{
|
||||
// normal dialog
|
||||
DeductPoints( MercPtrs[gusSelectedSoldier], APBPConstants[AP_TALK], 0, UNTRIGGERED_INTERRUPT );
|
||||
DeductPoints( gusSelectedSoldier, APBPConstants[AP_TALK], 0, UNTRIGGERED_INTERRUPT );
|
||||
StartCivQuote(MercPtrs[prisonerdialoguetargetID]);
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -170,8 +170,8 @@ struct TacticalStatusType
|
||||
extern UINT8 gbPlayerNum;
|
||||
extern INT8 gbShowEnemies;
|
||||
|
||||
extern UINT16 gusSelectedSoldier;
|
||||
extern UINT16 gusOldSelectedSoldier;
|
||||
extern SoldierID gusSelectedSoldier;
|
||||
extern UINT16 gusOldSelectedSoldier;
|
||||
|
||||
extern CHAR8 gzAlertStr[][ 30 ];
|
||||
extern CHAR8 gzActionStr[][ 30 ];
|
||||
|
||||
@@ -202,11 +202,11 @@ void QueryRTLeftButton( UINT32 *puiNewEvent )
|
||||
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
if ( MercPtrs[ gusSelectedSoldier ]->pTempObject != NULL )
|
||||
if ( gusSelectedSoldier->pTempObject != NULL )
|
||||
{
|
||||
return;
|
||||
}
|
||||
if ( MercPtrs[ gusSelectedSoldier ]->flags.uiStatusFlags & SOLDIER_DRIVER )
|
||||
if ( gusSelectedSoldier->flags.uiStatusFlags & SOLDIER_DRIVER )
|
||||
{
|
||||
pVehicle = GetSoldierStructureForVehicle( MercPtrs[ usSubjectSoldier ]->iVehicleId );
|
||||
usSubjectSoldier = pVehicle->ubID;
|
||||
@@ -448,8 +448,8 @@ void QueryRTLeftButton( UINT32 *puiNewEvent )
|
||||
{
|
||||
// Set movement mode
|
||||
// OK, only change this if we are stationary!
|
||||
//if ( gAnimControl[ MercPtrs[ gusSelectedSoldier ]->usAnimState ].uiFlags & ANIM_STATIONARY )
|
||||
//if ( MercPtrs[ gusSelectedSoldier ]->usAnimState == WALKING )
|
||||
//if ( gAnimControl[ gusSelectedSoldier->usAnimState ].uiFlags & ANIM_STATIONARY )
|
||||
//if ( gusSelectedSoldier->usAnimState == WALKING )
|
||||
{
|
||||
MercPtrs[ usSubjectSoldier ]->flags.fUIMovementFast = TRUE;
|
||||
*puiNewEvent = C_MOVE_MERC;
|
||||
@@ -621,7 +621,7 @@ void QueryRTLeftButton( UINT32 *puiNewEvent )
|
||||
//{
|
||||
// if ( gusSelectedSoldier != NOBODY )
|
||||
// {
|
||||
// if ( !( gAnimControl[ MercPtrs[ gusSelectedSoldier ]->usAnimState ].uiFlags & ANIM_STATIONARY ) )
|
||||
// if ( !( gAnimControl[ gusSelectedSoldier->usAnimState ].uiFlags & ANIM_STATIONARY ) )
|
||||
// {
|
||||
|
||||
//gUITargetShotWaiting = TRUE;
|
||||
@@ -680,7 +680,7 @@ void QueryRTLeftButton( UINT32 *puiNewEvent )
|
||||
// OK, if we have a selected guy.. make him part too....
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
MercPtrs[ gusSelectedSoldier ]->flags.uiStatusFlags |= (SOLDIER_MULTI_SELECTED );
|
||||
gusSelectedSoldier->flags.uiStatusFlags |= (SOLDIER_MULTI_SELECTED );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -715,7 +715,7 @@ void QueryRTLeftButton( UINT32 *puiNewEvent )
|
||||
// OK, if we have a selected guy.. make him part too....
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
MercPtrs[ gusSelectedSoldier ]->flags.uiStatusFlags |= (SOLDIER_MULTI_SELECTED );
|
||||
gusSelectedSoldier->flags.uiStatusFlags |= (SOLDIER_MULTI_SELECTED );
|
||||
}
|
||||
|
||||
gfIgnoreOnSelectedGuy = TRUE;
|
||||
@@ -1017,7 +1017,7 @@ void QueryRTRightButton( UINT32 *puiNewEvent )
|
||||
if ( gfUICanBeginAllMoveCycle )
|
||||
{
|
||||
// ATE: Here, check if we can do this....
|
||||
if ( !UIOKMoveDestination( MercPtrs[ gusSelectedSoldier ], usMapPos ) )
|
||||
if ( !UIOKMoveDestination( gusSelectedSoldier, usMapPos ) )
|
||||
{
|
||||
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_UI_FEEDBACK, TacticalStr[ CANT_MOVE_THERE_STR ] );
|
||||
gfRTClickLeftHoldIntercepted = TRUE;
|
||||
@@ -1041,7 +1041,7 @@ void QueryRTRightButton( UINT32 *puiNewEvent )
|
||||
{
|
||||
gfBeginBurstSpreadTracking = FALSE;
|
||||
gfRTClickLeftHoldIntercepted = TRUE;
|
||||
MercPtrs[ gusSelectedSoldier ]->flags.fDoSpread = FALSE;
|
||||
gusSelectedSoldier->flags.fDoSpread = FALSE;
|
||||
fClickHoldIntercepted = TRUE;
|
||||
*puiNewEvent = A_END_ACTION;
|
||||
gCurrentUIMode = MOVE_MODE;
|
||||
@@ -1234,7 +1234,7 @@ void QueryRTRightButton( UINT32 *puiNewEvent )
|
||||
case MOVE_MODE:
|
||||
case TALKCURSOR_MODE:
|
||||
// anv: don't switch if passengers are blocked from attacking
|
||||
pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
if( pSoldier->flags.uiStatusFlags & ( SOLDIER_DRIVER | SOLDIER_PASSENGER ) )
|
||||
{
|
||||
SOLDIERTYPE *pVehicle = GetSoldierStructureForVehicle( pSoldier->iVehicleId );
|
||||
@@ -2032,13 +2032,13 @@ void HandleMouseRTWheel( void )
|
||||
if ( _KeyDown( ALT ) )
|
||||
{
|
||||
if ( (gusSelectedSoldier != NOBODY) && ( gpItemPointer == NULL ) )
|
||||
GotoLowerStance(MercPtrs[ gusSelectedSoldier ]);
|
||||
GotoLowerStance(gusSelectedSoldier);
|
||||
return;
|
||||
}
|
||||
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{ //Select prev merc
|
||||
bID = FindPrevActiveAndAliveMerc( MercPtrs[ gusSelectedSoldier ], TRUE, TRUE );
|
||||
bID = FindPrevActiveAndAliveMerc( gusSelectedSoldier, TRUE, TRUE );
|
||||
HandleLocateSelectMerc( bID, LOCATEANDSELECT_MERC );
|
||||
// Center to guy....
|
||||
LocateSoldier( gusSelectedSoldier, SETLOCATOR );
|
||||
@@ -2050,14 +2050,14 @@ void HandleMouseRTWheel( void )
|
||||
if ( _KeyDown( ALT ) )
|
||||
{
|
||||
if ( (gusSelectedSoldier != NOBODY) && ( gpItemPointer == NULL ) )
|
||||
GotoHeigherStance( MercPtrs[ gusSelectedSoldier ] );
|
||||
GotoHeigherStance( gusSelectedSoldier );
|
||||
return;
|
||||
}
|
||||
|
||||
//ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, L"wheel %d", gViewportRegion.WheelState);
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{ //Select next merc
|
||||
bID = FindNextMercInTeamPanel( MercPtrs[ gusSelectedSoldier ], FALSE, FALSE );
|
||||
bID = FindNextMercInTeamPanel( gusSelectedSoldier, FALSE, FALSE );
|
||||
HandleLocateSelectMerc( bID, LOCATEANDSELECT_MERC );
|
||||
// Center to guy....
|
||||
LocateSoldier( gusSelectedSoldier, SETLOCATOR );
|
||||
@@ -2073,7 +2073,7 @@ void HandleMouseRTMButton( UINT32 *puiNewEvent )
|
||||
// toggle fire mode
|
||||
if ( ( gpItemPointer == NULL ) && ( gusSelectedSoldier != NOBODY ) &&
|
||||
( ( gsCurInterfacePanel != SM_PANEL ) || ( ButtonList[ iSMPanelButtons[ BURSTMODE_BUTTON ] ]->uiFlags & BUTTON_ENABLED ) ) )
|
||||
ChangeWeaponMode( MercPtrs[ gusSelectedSoldier ] );
|
||||
ChangeWeaponMode( gusSelectedSoldier );
|
||||
}
|
||||
else
|
||||
*puiNewEvent = LC_LOOK;
|
||||
@@ -2140,7 +2140,7 @@ void HandleMouseRTX1Button( UINT32 *puiNewEvent )
|
||||
void HandleMouseRTX2Button( UINT32 *puiNewEvent )
|
||||
{
|
||||
if ( _KeyDown( ALT ) )
|
||||
AutoReload( MercPtrs[ gusSelectedSoldier ] );
|
||||
AutoReload( gusSelectedSoldier );
|
||||
else
|
||||
// Toggle squad's stealth mode.....
|
||||
// For each guy on squad...
|
||||
@@ -2252,7 +2252,7 @@ void HandleRTToggleFireMode( void )
|
||||
// toggle fire mode
|
||||
if ( ( gpItemPointer == NULL ) && ( gusSelectedSoldier != NOBODY ) &&
|
||||
( ( gsCurInterfacePanel != SM_PANEL ) || ( ButtonList[ iSMPanelButtons[ BURSTMODE_BUTTON ] ]->uiFlags & BUTTON_ENABLED ) ) )
|
||||
ChangeWeaponMode( MercPtrs[ gusSelectedSoldier ] );
|
||||
ChangeWeaponMode( gusSelectedSoldier );
|
||||
}
|
||||
void HandleRTLocateSoldier( void )
|
||||
{
|
||||
|
||||
@@ -766,7 +766,7 @@ BOOLEAN EnterShopKeeperInterface()
|
||||
//ADB if we are here, we must be able to talk with an extended ear (CheckIfRadioIsEquipped())
|
||||
//but if we are physically too far away, we don't have extended arms!
|
||||
|
||||
SOLDIERTYPE* pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
SOLDIERTYPE* pSoldier = gusSelectedSoldier;
|
||||
SOLDIERTYPE* pShopkeeper = NULL;
|
||||
|
||||
if ( gusIDOfCivTrader != NOBODY )
|
||||
@@ -826,7 +826,7 @@ BOOLEAN EnterShopKeeperInterface()
|
||||
}
|
||||
|
||||
// make sure current merc is close enough and eligible to talk to the shopkeeper.
|
||||
AssertMsg( CanMercInteractWithSelectedShopkeeper( MercPtrs[ gusSelectedSoldier ] ), "Selected merc can't interact with shopkeeper. Send save AM-1");
|
||||
AssertMsg( CanMercInteractWithSelectedShopkeeper( gusSelectedSoldier ), "Selected merc can't interact with shopkeeper. Send save AM-1");
|
||||
|
||||
// Create a video surface to blt corner of the tactical screen that still shines through
|
||||
vs_desc.fCreateFlags = VSURFACE_CREATE_DEFAULT | VSURFACE_SYSTEM_MEM_USAGE;
|
||||
@@ -2477,7 +2477,7 @@ void EnterShopKeeperInterfaceScreen_NonNPC( INT8 ubArmsDealerID, UINT16 aMercID
|
||||
|
||||
// Flugente: additional dialogue
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
AdditionalTacticalCharacterDialogue_CallsLua( MercPtrs[gusSelectedSoldier], ADE_MERCHANT_CHAT, ubArmsDealerID >= 0 ? (UINT32)ubArmsDealerID : 0 );
|
||||
AdditionalTacticalCharacterDialogue_CallsLua( gusSelectedSoldier, ADE_MERCHANT_CHAT, ubArmsDealerID >= 0 ? (UINT32)ubArmsDealerID : 0 );
|
||||
|
||||
LeaveTacticalScreen( SHOPKEEPER_SCREEN );
|
||||
}
|
||||
@@ -6780,7 +6780,7 @@ void DealWithItemsStillOnTheTable()
|
||||
}
|
||||
else
|
||||
{
|
||||
pDropSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pDropSoldier = gusSelectedSoldier;
|
||||
}
|
||||
|
||||
// this guy HAS to be valid!
|
||||
@@ -7023,7 +7023,7 @@ void SelectArmsDealersDropItemToGroundRegionCallBack(MOUSE_REGION * pRegion, INT
|
||||
}
|
||||
else
|
||||
{
|
||||
pDropSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pDropSoldier = gusSelectedSoldier;
|
||||
}
|
||||
|
||||
//if we don't have an item, pick one up
|
||||
|
||||
@@ -2763,7 +2763,7 @@ BOOLEAN ReCreateSelectedSoldierLight( )
|
||||
return(FALSE);
|
||||
}
|
||||
|
||||
pSoldier = MercPtrs[gusSelectedSoldier];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
|
||||
return(pSoldier->ReCreateSoldierLight( ));
|
||||
}
|
||||
|
||||
@@ -132,8 +132,8 @@ void SoldierTooltip( SOLDIERTYPE* pSoldier )
|
||||
if ( gusSelectedSoldier != NOBODY && gusUIFullTargetID != NOBODY )
|
||||
{
|
||||
//CHRISL: Changed the second parameter to use the same information as the 'F' hotkey uses.
|
||||
//iRangeToTarget = GetRangeInCellCoordsFromGridNoDiff( MercPtrs[ gusSelectedSoldier ]->sGridNo, sSoldierGridNo ) / 10;
|
||||
iRangeToTarget = GetRangeInCellCoordsFromGridNoDiff( MercPtrs[ gusSelectedSoldier ]->sGridNo, MercPtrs[ gusUIFullTargetID ]->sGridNo ) / 10;
|
||||
//iRangeToTarget = GetRangeInCellCoordsFromGridNoDiff( gusSelectedSoldier->sGridNo, sSoldierGridNo ) / 10;
|
||||
iRangeToTarget = GetRangeInCellCoordsFromGridNoDiff( gusSelectedSoldier->sGridNo, MercPtrs[ gusUIFullTargetID ]->sGridNo ) / 10;
|
||||
}
|
||||
// WANNE: If we want to show the tooltip of milita and no merc is present in the sector
|
||||
else
|
||||
@@ -145,14 +145,14 @@ void SoldierTooltip( SOLDIERTYPE* pSoldier )
|
||||
// SANDRO - don't use this if detail set to debug!
|
||||
if ( gGameExternalOptions.gfAllowUDTRange && gGameExternalOptions.ubSoldierTooltipDetailLevel != DL_Debug && !(gTacticalStatus.uiFlags & SHOW_ALL_MERCS) )
|
||||
{
|
||||
uiMaxTooltipDistance = (UINT32)( MercPtrs[ gusSelectedSoldier ]->GetMaxDistanceVisible(MercPtrs[ gusUIFullTargetID ]->sGridNo, 0, CALC_FROM_WANTED_DIR) * (gGameExternalOptions.ubUDTModifier));
|
||||
uiMaxTooltipDistance = (UINT32)( gusSelectedSoldier->GetMaxDistanceVisible(MercPtrs[ gusUIFullTargetID ]->sGridNo, 0, CALC_FROM_WANTED_DIR) * (gGameExternalOptions.ubUDTModifier));
|
||||
uiMaxTooltipDistance /= 100;
|
||||
}
|
||||
//SCORE: Otherwise if we're using dynamics then do this
|
||||
// SANDRO - don't use this if detail set to debug!
|
||||
else if ( gGameExternalOptions.fEnableDynamicSoldierTooltips && gGameExternalOptions.ubSoldierTooltipDetailLevel != DL_Debug && !(gTacticalStatus.uiFlags & SHOW_ALL_MERCS) )
|
||||
{
|
||||
OBJECTTYPE* pObject = &(MercPtrs[gusSelectedSoldier]->inv[HANDPOS]);
|
||||
OBJECTTYPE* pObject = &(gusSelectedSoldier->inv[HANDPOS]);
|
||||
for (attachmentList::iterator iter = (*pObject)[0]->attachments.begin(); iter != (*pObject)[0]->attachments.end(); ++iter) {
|
||||
if ( Item[iter->usItem].visionrangebonus > 0 && iter->exists())
|
||||
{
|
||||
@@ -175,14 +175,14 @@ void SoldierTooltip( SOLDIERTYPE* pSoldier )
|
||||
{
|
||||
// add 10% to max tooltip viewing distance per level of the merc
|
||||
// sevenfm: fixed incorrect integer calculation
|
||||
uiMaxTooltipDistance = (INT32)( uiMaxTooltipDistance * ( 1 + ( (FLOAT)( EffectiveExpLevel( MercPtrs[ gusSelectedSoldier ] ) ) / 10.0 ) ) ); // SANDRO - changed to effective level calc
|
||||
uiMaxTooltipDistance = (INT32)( uiMaxTooltipDistance * ( 1 + ( (FLOAT)( EffectiveExpLevel( gusSelectedSoldier ) ) / 10.0 ) ) ); // SANDRO - changed to effective level calc
|
||||
|
||||
// sevenfm: this calculation doesn't make sense: disabled
|
||||
//if ( gGameExternalOptions.gfAllowLimitedVision )
|
||||
// uiMaxTooltipDistance *= 1 - (gGameExternalOptions.ubVisDistDecreasePerRainIntensity / 100);
|
||||
|
||||
if ( !(Item[MercPtrs[gusSelectedSoldier]->inv[HEAD1POS].usItem].nightvisionrangebonus > 0) &&
|
||||
!(Item[MercPtrs[gusSelectedSoldier]->inv[HEAD2POS].usItem].nightvisionrangebonus > 0) &&
|
||||
if ( !(Item[gusSelectedSoldier->inv[HEAD1POS].usItem].nightvisionrangebonus > 0) &&
|
||||
!(Item[gusSelectedSoldier->inv[HEAD2POS].usItem].nightvisionrangebonus > 0) &&
|
||||
!DayTime() )
|
||||
{
|
||||
// if night reduce max tooltip viewing distance by a factor of 4 if merc is not wearing NVG
|
||||
@@ -321,7 +321,7 @@ void SoldierTooltip( SOLDIERTYPE* pSoldier )
|
||||
if ( ubTooltipDetailLevel < DL_Full)
|
||||
{
|
||||
// Get the current selected merc
|
||||
SOLDIERTYPE* pMerc = MercPtrs[ gusSelectedSoldier ];
|
||||
SOLDIERTYPE* pMerc = gusSelectedSoldier;
|
||||
|
||||
if ( pMerc->aiData.bOppList[pSoldier->ubID] != SEEN_CURRENTLY )
|
||||
{
|
||||
|
||||
+1
-1
@@ -926,7 +926,7 @@ BOOLEAN SetCurrentSquad( INT32 iCurrentSquad, BOOLEAN fForce )
|
||||
// check if the currently selected guy is on this squad, if not, get the first one on the new squad
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
if( Menptr[ gusSelectedSoldier ].bAssignment != iCurrentTacticalSquad )
|
||||
if( gusSelectedSoldier->bAssignment != iCurrentTacticalSquad )
|
||||
{
|
||||
// ATE: Changed this to FALSE for ackoledgement sounds.. sounds bad if just starting/entering sector..
|
||||
SelectSoldier( Squad[ iCurrentTacticalSquad ][ 0 ]->ubID, FALSE, TRUE );
|
||||
|
||||
@@ -177,7 +177,7 @@ BOOLEAN InternalInitSectorExitMenu( UINT8 ubDirection, INT32 sAdditionalData )//
|
||||
}
|
||||
|
||||
// anv: vehicle always move with all passengers inside
|
||||
if( MercPtrs[gusSelectedSoldier]->bAssignment == VEHICLE )
|
||||
if( gusSelectedSoldier->bAssignment == VEHICLE )
|
||||
{
|
||||
gExitDialog.fSingleMoveDisabled = TRUE;
|
||||
gExitDialog.fSingleMoveOn = FALSE;
|
||||
@@ -217,7 +217,7 @@ BOOLEAN InternalInitSectorExitMenu( UINT8 ubDirection, INT32 sAdditionalData )//
|
||||
gExitDialog.fGotoSector = TRUE;
|
||||
}
|
||||
|
||||
gExitDialog.ubNumPeopleOnSquad = NumberOfPlayerControllableMercsInSquad( MercPtrs[ gusSelectedSoldier ]->bAssignment );
|
||||
gExitDialog.ubNumPeopleOnSquad = NumberOfPlayerControllableMercsInSquad( gusSelectedSoldier->bAssignment );
|
||||
|
||||
//Determine
|
||||
for( i = gTacticalStatus.Team[ OUR_TEAM ].bFirstID; i <= gTacticalStatus.Team[ OUR_TEAM ].bLastID; i++ )
|
||||
@@ -230,8 +230,8 @@ BOOLEAN InternalInitSectorExitMenu( UINT8 ubDirection, INT32 sAdditionalData )//
|
||||
if( !pSoldier->flags.fBetweenSectors &&
|
||||
pSoldier->sSectorX == gWorldSectorX && pSoldier->sSectorY == gWorldSectorY && pSoldier->bSectorZ == gbWorldSectorZ &&
|
||||
pSoldier->stats.bLife >= OKLIFE &&
|
||||
( pSoldier->bAssignment != MercPtrs[ gusSelectedSoldier ]->bAssignment ||
|
||||
( pSoldier->bAssignment == VEHICLE && pSoldier->iVehicleId != MercPtrs[ gusSelectedSoldier ]->iVehicleId ) ) &&
|
||||
( pSoldier->bAssignment != gusSelectedSoldier->bAssignment ||
|
||||
( pSoldier->bAssignment == VEHICLE && pSoldier->iVehicleId != gusSelectedSoldier->iVehicleId ) ) &&
|
||||
pSoldier->bAssignment != ASSIGNMENT_POW && pSoldier->bAssignment != IN_TRANSIT && pSoldier->bAssignment != ASSIGNMENT_DEAD && pSoldier->bAssignment != ASSIGNMENT_MINIEVENT && pSoldier->bAssignment != ASSIGNMENT_REBELCOMMAND
|
||||
&& !(pSoldier->flags.uiStatusFlags & SOLDIER_VEHICLE) )
|
||||
{ //KM: We need to determine if there are more than one squad (meaning other concious mercs in a different squad or assignment)
|
||||
@@ -245,7 +245,7 @@ BOOLEAN InternalInitSectorExitMenu( UINT8 ubDirection, INT32 sAdditionalData )//
|
||||
|
||||
// Double check that ...
|
||||
// if we are a EPC and are the selected guy, make single move off and disable it....
|
||||
if ( AM_AN_EPC( MercPtrs[ gusSelectedSoldier ] ) )
|
||||
if ( AM_AN_EPC( gusSelectedSoldier ) )
|
||||
{
|
||||
// Check if there are more than one in this squad
|
||||
if ( gExitDialog.ubNumPeopleOnSquad > 1 )
|
||||
@@ -268,7 +268,7 @@ BOOLEAN InternalInitSectorExitMenu( UINT8 ubDirection, INT32 sAdditionalData )//
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if( MercPtrs[ i ]->bAssignment == MercPtrs[ gusSelectedSoldier ]->bAssignment )
|
||||
if( MercPtrs[ i ]->bAssignment == gusSelectedSoldier->bAssignment )
|
||||
{
|
||||
if( AM_AN_EPC( MercPtrs[ i ] ) )
|
||||
{
|
||||
@@ -550,7 +550,7 @@ void UpdateSectorExitMenu( )
|
||||
if( gExitDialog.fSelectedMercIsEPC )
|
||||
{ //EPCs cannot leave the sector alone and must be escorted
|
||||
CHAR16 str[ 256 ];
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_ESCORTED_CHARACTERS_MUST_BE_ESCORTED_HELPTEXT ], MercPtrs[ gusSelectedSoldier ]->name );
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_ESCORTED_CHARACTERS_MUST_BE_ESCORTED_HELPTEXT ], gusSelectedSoldier->name );
|
||||
SetButtonFastHelpText( gExitDialog.uiSingleMoveButton, str );
|
||||
SetRegionFastHelpText( &gExitDialog.SingleRegion, str );
|
||||
}
|
||||
@@ -561,26 +561,26 @@ void UpdateSectorExitMenu( )
|
||||
CHAR16 str[ 256 ];
|
||||
if( !gExitDialog.fSquadHasMultipleEPCs )
|
||||
{
|
||||
if( gMercProfiles[ MercPtrs[ gusSelectedSoldier ]->ubProfile ].bSex == MALE )
|
||||
if( gMercProfiles[ gusSelectedSoldier->ubProfile ].bSex == MALE )
|
||||
{ //male singular
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_MERC_CANT_ISOLATE_EPC_HELPTEXT_MALE_SINGULAR ], MercPtrs[ gusSelectedSoldier ]->name,
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_MERC_CANT_ISOLATE_EPC_HELPTEXT_MALE_SINGULAR ], gusSelectedSoldier->name,
|
||||
MercPtrs[ gExitDialog.bSingleMoveWillIsolateEPC ]->name );
|
||||
}
|
||||
else
|
||||
{ //female singular
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_MERC_CANT_ISOLATE_EPC_HELPTEXT_FEMALE_SINGULAR ], MercPtrs[ gusSelectedSoldier ]->name,
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_MERC_CANT_ISOLATE_EPC_HELPTEXT_FEMALE_SINGULAR ], gusSelectedSoldier->name,
|
||||
MercPtrs[ gExitDialog.bSingleMoveWillIsolateEPC ]->name );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if( gMercProfiles[ MercPtrs[ gusSelectedSoldier ]->ubProfile ].bSex == MALE )
|
||||
if( gMercProfiles[ gusSelectedSoldier->ubProfile ].bSex == MALE )
|
||||
{ //male plural
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_MERC_CANT_ISOLATE_EPC_HELPTEXT_MALE_PLURAL ], MercPtrs[ gusSelectedSoldier ]->name );
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_MERC_CANT_ISOLATE_EPC_HELPTEXT_MALE_PLURAL ], gusSelectedSoldier->name );
|
||||
}
|
||||
else
|
||||
{ //female plural
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_MERC_CANT_ISOLATE_EPC_HELPTEXT_FEMALE_PLURAL ], MercPtrs[ gusSelectedSoldier ]->name );
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_MERC_CANT_ISOLATE_EPC_HELPTEXT_FEMALE_PLURAL ], gusSelectedSoldier->name );
|
||||
}
|
||||
}
|
||||
SetButtonFastHelpText( gExitDialog.uiSingleMoveButton, str );
|
||||
@@ -592,7 +592,7 @@ void UpdateSectorExitMenu( )
|
||||
CHAR16 str[ 256 ];
|
||||
EnableButton( gExitDialog.uiSingleMoveButton );
|
||||
MSYS_EnableRegion(&(gExitDialog.SingleRegion) );
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_SINGLE_TRAVERSAL_WILL_SEPARATE_SQUADS_HELPTEXT ], MercPtrs[ gusSelectedSoldier ]->name );
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_SINGLE_TRAVERSAL_WILL_SEPARATE_SQUADS_HELPTEXT ], gusSelectedSoldier->name );
|
||||
SetButtonFastHelpText( gExitDialog.uiSingleMoveButton, str );
|
||||
SetRegionFastHelpText( &gExitDialog.SingleRegion, str );
|
||||
}
|
||||
@@ -762,12 +762,12 @@ void RemoveSectorExitMenu( BOOLEAN fOk )
|
||||
gfIgnoreScrolling = FALSE;
|
||||
|
||||
// if we are an EPC, don't allow this if nobody else on squad
|
||||
if ( fOk && AM_AN_EPC( MercPtrs[ gusSelectedSoldier ] ) )
|
||||
if ( fOk && AM_AN_EPC( gusSelectedSoldier ) )
|
||||
{
|
||||
// Check if there are more than one in this squad
|
||||
if ( gExitDialog.ubNumPeopleOnSquad == 0 )
|
||||
{
|
||||
swprintf( Str, pMessageStrings[ MSG_EPC_CANT_TRAVERSE ], MercPtrs[ gusSelectedSoldier ]->name );
|
||||
swprintf( Str, pMessageStrings[ MSG_EPC_CANT_TRAVERSE ], gusSelectedSoldier->name );
|
||||
|
||||
DoMessageBox( MSG_BOX_BASIC_STYLE, Str, GAME_SCREEN, ( UINT8 )MSG_BOX_FLAG_OK, NULL, NULL );
|
||||
return;
|
||||
|
||||
+11
-11
@@ -212,10 +212,10 @@ void StartPlayerTeamTurn( BOOLEAN fDoBattleSnd, BOOLEAN fEnteringCombatMode )
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
// Check if this guy is able to be selected....
|
||||
if ( MercPtrs[ gusSelectedSoldier ]->stats.bLife < OKLIFE )
|
||||
if ( gusSelectedSoldier->stats.bLife < OKLIFE )
|
||||
{
|
||||
DebugMsg(TOPIC_JA2INTERRUPT,DBG_LEVEL_3,String("StartPlayerTeamTurn: SelectNextAvailSoldier"));
|
||||
SelectNextAvailSoldier( MercPtrs[ gusSelectedSoldier ] );
|
||||
SelectNextAvailSoldier( gusSelectedSoldier );
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -230,7 +230,7 @@ void StartPlayerTeamTurn( BOOLEAN fDoBattleSnd, BOOLEAN fEnteringCombatMode )
|
||||
if ( fDoBattleSnd )
|
||||
{
|
||||
// Say ATTENTION SOUND...
|
||||
MercPtrs[ gusSelectedSoldier ]->DoMercBattleSound( BATTLE_SOUND_ATTN1 );
|
||||
gusSelectedSoldier->DoMercBattleSound( BATTLE_SOUND_ATTN1 );
|
||||
}
|
||||
|
||||
if ( gsInterfaceLevel == 1 )
|
||||
@@ -1289,14 +1289,14 @@ void EndInterrupt( BOOLEAN fMarkInterruptOccurred )
|
||||
gfHiddenInterrupt = FALSE;
|
||||
|
||||
// If we can continue a move, do so!
|
||||
if ( MercPtrs[ gusSelectedSoldier ]->flags.fNoAPToFinishMove && pSoldier->ubReasonCantFinishMove != REASON_STOPPED_SIGHT )
|
||||
if ( gusSelectedSoldier->flags.fNoAPToFinishMove && pSoldier->ubReasonCantFinishMove != REASON_STOPPED_SIGHT )
|
||||
{
|
||||
// Continue
|
||||
MercPtrs[ gusSelectedSoldier ]->AdjustNoAPToFinishMove( FALSE );
|
||||
gusSelectedSoldier->AdjustNoAPToFinishMove( FALSE );
|
||||
|
||||
if ( MercPtrs[ gusSelectedSoldier ]->sGridNo != MercPtrs[ gusSelectedSoldier ]->pathing.sFinalDestination )
|
||||
if ( gusSelectedSoldier->sGridNo != gusSelectedSoldier->pathing.sFinalDestination )
|
||||
{
|
||||
MercPtrs[ gusSelectedSoldier ]->EVENT_GetNewSoldierPath( MercPtrs[ gusSelectedSoldier ]->pathing.sFinalDestination, MercPtrs[ gusSelectedSoldier ]->usUIMovementMode );
|
||||
gusSelectedSoldier->EVENT_GetNewSoldierPath( gusSelectedSoldier->pathing.sFinalDestination, gusSelectedSoldier->usUIMovementMode );
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1332,7 +1332,7 @@ void EndInterrupt( BOOLEAN fMarkInterruptOccurred )
|
||||
SlideTo( NOWHERE, gusSelectedSoldier, NOBODY ,SETLOCATOR);
|
||||
|
||||
// Say ATTENTION SOUND...
|
||||
MercPtrs[ gusSelectedSoldier ]->DoMercBattleSound( BATTLE_SOUND_ATTN1 );
|
||||
gusSelectedSoldier->DoMercBattleSound( BATTLE_SOUND_ATTN1 );
|
||||
|
||||
if ( gsInterfaceLevel == 1 )
|
||||
{
|
||||
@@ -1692,7 +1692,7 @@ BOOLEAN StandardInterruptConditionsMet( SOLDIERTYPE * pSoldier, UINT16 ubOpponen
|
||||
// the selected character, ie. his friends...
|
||||
if ( pOpponent->bTeam == gbPlayerNum )
|
||||
{
|
||||
if ((ubOpponentID != gusSelectedSoldier) && (pSoldier->bSide != Menptr[gusSelectedSoldier].bSide))
|
||||
if ((ubOpponentID != gusSelectedSoldier) && (pSoldier->bSide != gusSelectedSoldier->bSide))
|
||||
{
|
||||
return( FALSE );
|
||||
}
|
||||
@@ -1714,7 +1714,7 @@ BOOLEAN StandardInterruptConditionsMet( SOLDIERTYPE * pSoldier, UINT16 ubOpponen
|
||||
}
|
||||
/* old DG code for same:
|
||||
|
||||
if ((ubOpponentID != gusSelectedSoldier) && (pSoldier->bSide != Menptr[gusSelectedSoldier].bSide))
|
||||
if ((ubOpponentID != gusSelectedSoldier) && (pSoldier->bSide != gusSelectedSoldier->bSide))
|
||||
{
|
||||
return(FALSE);
|
||||
}
|
||||
@@ -2356,7 +2356,7 @@ void DoneAddingToIntList( SOLDIERTYPE * pSoldier, BOOLEAN fChange, UINT8 ubInter
|
||||
send_interrupt( npSoldier );
|
||||
|
||||
|
||||
SOLDIERTYPE* pMerc = MercPtrs[ gusSelectedSoldier ];
|
||||
SOLDIERTYPE* pMerc = gusSelectedSoldier;
|
||||
//AdjustNoAPToFinishMove( pMerc, TRUE );
|
||||
pMerc->HaultSoldierFromSighting(TRUE);
|
||||
//pMerc->fTurningFromPronePosition = FALSE;// hmmm ??
|
||||
|
||||
@@ -493,7 +493,7 @@ void QueryTBLeftButton( UINT32 *puiNewEvent )
|
||||
{
|
||||
BOOLEAN fResult;
|
||||
|
||||
if ( ( fResult = UIOKMoveDestination( MercPtrs[ gusSelectedSoldier ], usMapPos ) ) == 1 )
|
||||
if ( ( fResult = UIOKMoveDestination( gusSelectedSoldier, usMapPos ) ) == 1 )
|
||||
{
|
||||
// ATE: CHECK IF WE CAN GET TO POSITION
|
||||
// Check if we are not in combat
|
||||
@@ -998,10 +998,10 @@ void QueryTBRightButton( UINT32 *puiNewEvent )
|
||||
gfFirstCycleMovementStarted = TRUE;
|
||||
|
||||
// OK, set this guy's movement mode to crawling fo rthat we will start cycling in run.....
|
||||
if ( MercPtrs[ gusSelectedSoldier ]->usUIMovementMode != RUNNING )
|
||||
if ( gusSelectedSoldier->usUIMovementMode != RUNNING )
|
||||
{
|
||||
// ATE: UNLESS WE ARE IN RUNNING MODE ALREADY
|
||||
MercPtrs[ gusSelectedSoldier ]->usUIMovementMode = CRAWLING;
|
||||
gusSelectedSoldier->usUIMovementMode = CRAWLING;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1016,7 +1016,7 @@ void QueryTBRightButton( UINT32 *puiNewEvent )
|
||||
{
|
||||
gfBeginBurstSpreadTracking = FALSE;
|
||||
gfRTClickLeftHoldIntercepted = TRUE;
|
||||
MercPtrs[ gusSelectedSoldier ]->flags.fDoSpread = FALSE;
|
||||
gusSelectedSoldier->flags.fDoSpread = FALSE;
|
||||
fClickHoldIntercepted = TRUE;
|
||||
*puiNewEvent = A_END_ACTION;
|
||||
gCurrentUIMode = MOVE_MODE;
|
||||
@@ -1070,7 +1070,7 @@ void QueryTBRightButton( UINT32 *puiNewEvent )
|
||||
|
||||
case MOVE_MODE:
|
||||
// anv: don't switch if passengers are blocked from attacking
|
||||
pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
if( pSoldier->flags.uiStatusFlags & ( SOLDIER_DRIVER | SOLDIER_PASSENGER ) )
|
||||
{
|
||||
SOLDIERTYPE *pVehicle = GetSoldierStructureForVehicle( pSoldier->iVehicleId );
|
||||
@@ -1627,8 +1627,8 @@ void CheatCreateItem( )
|
||||
CreateItem( usitem, status, &newobj );
|
||||
(newobj)[0]->data.bTemperature = temperature;
|
||||
|
||||
if ( !AutoPlaceObject( MercPtrs[ gusSelectedSoldier ], &newobj, FALSE ) )
|
||||
AddItemToPool( MercPtrs[ gusSelectedSoldier ]->sGridNo, &newobj, 1, 0, 0, -1 );
|
||||
if ( !AutoPlaceObject( gusSelectedSoldier, &newobj, FALSE ) )
|
||||
AddItemToPool( gusSelectedSoldier->sGridNo, &newobj, 1, 0, 0, -1 );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2121,7 +2121,7 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
gfRTClickLeftHoldIntercepted = TRUE;
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
MercPtrs[ gusSelectedSoldier ]->flags.fDoSpread = FALSE;
|
||||
gusSelectedSoldier->flags.fDoSpread = FALSE;
|
||||
}
|
||||
|
||||
// Before anything, delete popup box!
|
||||
@@ -2223,11 +2223,11 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
continue;
|
||||
}
|
||||
else if (gusSelectedSoldier != NOBODY &&
|
||||
MercPtrs[gusSelectedSoldier] &&
|
||||
!(gAnimControl[MercPtrs[gusSelectedSoldier]->usAnimState].uiFlags & ANIM_STATIONARY))
|
||||
gusSelectedSoldier &&
|
||||
!(gAnimControl[gusSelectedSoldier->usAnimState].uiFlags & ANIM_STATIONARY))
|
||||
{
|
||||
// If soldier is not stationary, stop
|
||||
MercPtrs[gusSelectedSoldier]->StopSoldier();
|
||||
gusSelectedSoldier->StopSoldier();
|
||||
*puiNewEvent = A_CHANGE_TO_MOVE;
|
||||
continue;
|
||||
}
|
||||
@@ -2235,21 +2235,21 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
|
||||
// sevenfm: also stop dragging
|
||||
if (gusSelectedSoldier != NOBODY &&
|
||||
MercPtrs[gusSelectedSoldier] &&
|
||||
MercPtrs[gusSelectedSoldier]->IsDragging(false))
|
||||
gusSelectedSoldier &&
|
||||
gusSelectedSoldier->IsDragging(false))
|
||||
{
|
||||
MercPtrs[gusSelectedSoldier]->CancelDrag();
|
||||
DirtyMercPanelInterface(MercPtrs[gusSelectedSoldier], DIRTYLEVEL2);
|
||||
gusSelectedSoldier->CancelDrag();
|
||||
DirtyMercPanelInterface(gusSelectedSoldier, DIRTYLEVEL2);
|
||||
continue;
|
||||
}
|
||||
|
||||
// sevenfm: unready weapon
|
||||
if (gusSelectedSoldier != NOBODY &&
|
||||
MercPtrs[gusSelectedSoldier] &&
|
||||
WeaponReady(MercPtrs[gusSelectedSoldier]))
|
||||
gusSelectedSoldier &&
|
||||
WeaponReady(gusSelectedSoldier))
|
||||
{
|
||||
MercPtrs[gusSelectedSoldier]->InternalSoldierReadyWeapon(MercPtrs[gusSelectedSoldier]->ubDirection, TRUE, FALSE);
|
||||
HandleSight(MercPtrs[gusSelectedSoldier], SIGHT_LOOK);
|
||||
gusSelectedSoldier->InternalSoldierReadyWeapon(gusSelectedSoldier->ubDirection, TRUE, FALSE);
|
||||
HandleSight(gusSelectedSoldier, SIGHT_LOOK);
|
||||
continue;
|
||||
}
|
||||
}
|
||||
@@ -2313,19 +2313,19 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
// {
|
||||
// if ( gusSelectedSoldier != NOBODY )
|
||||
// {
|
||||
// if ( gTacticalStatus.uiFlags & TURNBASED && !MercPtrs[ gusSelectedSoldier ]->fDontChargeReadyAPs )
|
||||
// if ( gTacticalStatus.uiFlags & TURNBASED && !gusSelectedSoldier->fDontChargeReadyAPs )
|
||||
// {
|
||||
// INT16 apCost = GetAPsToReadyWeapon( MercPtrs[ gusSelectedSoldier ], 0 );
|
||||
// if (MercPtrs[ gusSelectedSoldier ]->bActionPoints >= apCost )
|
||||
// INT16 apCost = GetAPsToReadyWeapon( gusSelectedSoldier, 0 );
|
||||
// if (gusSelectedSoldier->bActionPoints >= apCost )
|
||||
// {
|
||||
// DeductPoints( MercPtrs[ gusSelectedSoldier ],apCost , 0 );
|
||||
// DirtyMercPanelInterface( MercPtrs[ gusSelectedSoldier ], DIRTYLEVEL2 );
|
||||
// SoldierReadyWeapon( MercPtrs[ gusSelectedSoldier ] );
|
||||
// DeductPoints( gusSelectedSoldier,apCost , 0 );
|
||||
// DirtyMercPanelInterface( gusSelectedSoldier, DIRTYLEVEL2 );
|
||||
// SoldierReadyWeapon( gusSelectedSoldier );
|
||||
// }
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// SoldierReadyWeapon( MercPtrs[ gusSelectedSoldier ] );
|
||||
// SoldierReadyWeapon( gusSelectedSoldier );
|
||||
// }
|
||||
|
||||
// }
|
||||
@@ -2344,7 +2344,7 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
|
||||
for ( i = 0; i < 1000; i++ )
|
||||
{
|
||||
CalculateLaunchItemChanceToGetThrough( MercPtrs[ gusSelectedSoldier ], &(MercPtrs[ gusSelectedSoldier ]->inv[ HANDPOS ] ), usMapPos, 0, 0, &sGridNo, TRUE, (INT8 *)&ubLevel, TRUE );
|
||||
CalculateLaunchItemChanceToGetThrough( gusSelectedSoldier, &(gusSelectedSoldier->inv[ HANDPOS ] ), usMapPos, 0, 0, &sGridNo, TRUE, (INT8 *)&ubLevel, TRUE );
|
||||
}
|
||||
|
||||
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_TESTVERSION, L"Physics 100 times: %d", ( GetJA2Clock( ) - iTime ) );
|
||||
@@ -2412,7 +2412,7 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
//Select next squad
|
||||
iCurrentSquad = CurrentSquad( );
|
||||
|
||||
pNewSoldier = FindNextActiveSquad( MercPtrs[ gusSelectedSoldier ] );
|
||||
pNewSoldier = FindNextActiveSquad( gusSelectedSoldier );
|
||||
|
||||
if ( pNewSoldier->bAssignment != iCurrentSquad )
|
||||
{
|
||||
@@ -2436,7 +2436,7 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
{ //Select next merc
|
||||
UINT16 bID;
|
||||
|
||||
bID = FindNextMercInTeamPanel( MercPtrs[ gusSelectedSoldier ], FALSE, FALSE );
|
||||
bID = FindNextMercInTeamPanel( gusSelectedSoldier, FALSE, FALSE );
|
||||
|
||||
HandleLocateSelectMerc( bID, LOCATEANDSELECT_MERC );
|
||||
|
||||
@@ -2458,7 +2458,7 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
if ( fCtrl )
|
||||
{
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
SwapMercPortraits( MercPtrs[ gusSelectedSoldier ], -1 );
|
||||
SwapMercPortraits( gusSelectedSoldier, -1 );
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -2467,7 +2467,7 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
if ( fCtrl )
|
||||
{
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
SwapMercPortraits( MercPtrs[ gusSelectedSoldier ], 1 );
|
||||
SwapMercPortraits( gusSelectedSoldier, 1 );
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -2498,10 +2498,10 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
// Lalien: commented out, to fix "end move & LOS bug" (same button has two different actions)
|
||||
// if ( gusSelectedSoldier != NOBODY )
|
||||
// {
|
||||
// if ( CheckForMercContMove( MercPtrs[ gusSelectedSoldier ] ) )
|
||||
// if ( CheckForMercContMove( gusSelectedSoldier ) )
|
||||
// {
|
||||
// // Continue
|
||||
// ContinueMercMovement( MercPtrs[ gusSelectedSoldier ] );
|
||||
// ContinueMercMovement( gusSelectedSoldier );
|
||||
// ErasePath( TRUE );
|
||||
// }
|
||||
// }
|
||||
@@ -2521,7 +2521,7 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
// nothing in hand and either not in SM panel, or the matching button is enabled if we are in SM panel
|
||||
if ( ( gpItemPointer == NULL ) )
|
||||
{
|
||||
GotoHeigherStance( MercPtrs[ gusSelectedSoldier ] );
|
||||
GotoHeigherStance( gusSelectedSoldier );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2541,7 +2541,7 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
// nothing in hand and either not in SM panel, or the matching button is enabled if we are in SM panel
|
||||
if ( ( gpItemPointer == NULL ) )
|
||||
{
|
||||
GotoLowerStance( MercPtrs[ gusSelectedSoldier ] );
|
||||
GotoLowerStance( gusSelectedSoldier );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2921,7 +2921,7 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
{
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
HandleTacticalFunctionSelection(MercPtrs[ gusSelectedSoldier ], usMapPos );
|
||||
HandleTacticalFunctionSelection(gusSelectedSoldier, usMapPos );
|
||||
}
|
||||
}
|
||||
else if ( fAlt )
|
||||
@@ -2994,8 +2994,8 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
if (CHEATER_CHEAT_LEVEL())
|
||||
{
|
||||
//ChangeSoldiersBodyType( TANK_NW, TRUE );
|
||||
// MercPtrs[ gusSelectedSoldier ]->flags.uiStatusFlags |= SOLDIER_CREATURE;
|
||||
//EVENT_InitNewSoldierAnim( MercPtrs[ gusSelectedSoldier ], CRIPPLE_BEG, 0 , TRUE );
|
||||
// gusSelectedSoldier->flags.uiStatusFlags |= SOLDIER_CREATURE;
|
||||
//EVENT_InitNewSoldierAnim( gusSelectedSoldier, CRIPPLE_BEG, 0 , TRUE );
|
||||
}
|
||||
}
|
||||
else if( fAlt )
|
||||
@@ -3034,12 +3034,12 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
{
|
||||
if (CHEATER_CHEAT_LEVEL())
|
||||
{
|
||||
MercPtrs[gusSelectedSoldier]->EVENT_InitNewSoldierAnim(KID_SKIPPING, 0, TRUE);
|
||||
gusSelectedSoldier->EVENT_InitNewSoldierAnim(KID_SKIPPING, 0, TRUE);
|
||||
|
||||
//ChangeSoldiersBodyType( LARVAE_MONSTER, TRUE );
|
||||
//MercPtrs[ gusSelectedSoldier ]->usAttackingWeapon = TANK_CANNON;
|
||||
//gusSelectedSoldier->usAttackingWeapon = TANK_CANNON;
|
||||
//LocateSoldier( gusSelectedSoldier, FALSE );
|
||||
//EVENT_FireSoldierWeapon( MercPtrs[ gusSelectedSoldier ], sMapPos );
|
||||
//EVENT_FireSoldierWeapon( gusSelectedSoldier, sMapPos );
|
||||
}
|
||||
}
|
||||
else if( fAlt )
|
||||
@@ -3510,7 +3510,7 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
|
||||
if ( pSoldier->aiData.bOppCnt > 0 )
|
||||
{
|
||||
@@ -3529,7 +3529,7 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
//CHRISL: drop all items
|
||||
if ( gusSelectedSoldier != NOBODY && !(gTacticalStatus.fEnemyInSector) )
|
||||
{
|
||||
SOLDIERTYPE *pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
SOLDIERTYPE *pSoldier = gusSelectedSoldier;
|
||||
for(int i = BODYPOSFINAL; i<NUM_INV_SLOTS; i++)
|
||||
{
|
||||
if(pSoldier->inv[i].exists() == true)
|
||||
@@ -3593,12 +3593,12 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
if ( gfUIFullTargetFound )
|
||||
{
|
||||
//Display the range to the target
|
||||
DisplayRangeToTarget( MercPtrs[gusSelectedSoldier], MercPtrs[gusUIFullTargetID]->sGridNo );
|
||||
DisplayRangeToTarget( gusSelectedSoldier, MercPtrs[gusUIFullTargetID]->sGridNo );
|
||||
}
|
||||
else
|
||||
{
|
||||
//Display the range to the target
|
||||
DisplayRangeToTarget( MercPtrs[gusSelectedSoldier], usGridNo );
|
||||
DisplayRangeToTarget( gusSelectedSoldier, usGridNo );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4022,7 +4022,7 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
//CHRISL: Swap gunsling
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
SOLDIERTYPE *pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
SOLDIERTYPE *pSoldier = gusSelectedSoldier;
|
||||
|
||||
if ( fAlt )
|
||||
// switch to knife, or from knife to gun
|
||||
@@ -4324,7 +4324,7 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
{
|
||||
if ( CHEATER_CHEAT_LEVEL( ) )
|
||||
{
|
||||
ReloadWeapon( MercPtrs[ gusSelectedSoldier ], MercPtrs[ gusSelectedSoldier ]->ubAttackingHand );
|
||||
ReloadWeapon( gusSelectedSoldier, gusSelectedSoldier->ubAttackingHand );
|
||||
}
|
||||
else
|
||||
HandleTBReload();
|
||||
@@ -4355,7 +4355,7 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
{
|
||||
if ( fAlt )
|
||||
{
|
||||
RemoveCharacterFromSquads( MercPtrs[gusSelectedSoldier] );
|
||||
RemoveCharacterFromSquads( gusSelectedSoldier );
|
||||
}
|
||||
else if ( !fDisableMapInterfaceDueToBattle && !( gTacticalStatus.uiFlags & ENGAGED_IN_CONV ) && !is_networked )
|
||||
{
|
||||
@@ -4475,7 +4475,7 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
else if ( fAlt && fShift )
|
||||
{
|
||||
//resort Team by ubID
|
||||
SortSquadByID(MercPtrs[gusSelectedSoldier]->bTeam);
|
||||
SortSquadByID(gusSelectedSoldier->bTeam);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -4597,7 +4597,7 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
{
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
CreateItem( FLAMETHROWER, 100, &( MercPtrs[ gusSelectedSoldier ]->inv[ HANDPOS ]) );
|
||||
CreateItem( FLAMETHROWER, 100, &( gusSelectedSoldier->inv[ HANDPOS ]) );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -4642,7 +4642,7 @@ void GetKeyboardInput( UINT32 *puiNewEvent )
|
||||
//Check if we have a good selected guy
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
pSoldier1 = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier1 = gusSelectedSoldier;
|
||||
|
||||
BOOLEAN fFoundGoodTarget = FALSE;
|
||||
if ( gfUIFullTargetFound )
|
||||
@@ -4879,7 +4879,7 @@ BOOLEAN HandleCheckForExitArrowsInput( BOOLEAN fAdjustConfirm )
|
||||
}
|
||||
else if( gfLoneEPCAttemptingTraversal )
|
||||
{
|
||||
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_UI_FEEDBACK, pExitingSectorHelpText[ EXIT_GUI_ESCORTED_CHARACTERS_CANT_LEAVE_SECTOR_ALONE_STR ], MercPtrs[ gusSelectedSoldier ]->GetName() );
|
||||
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_UI_FEEDBACK, pExitingSectorHelpText[ EXIT_GUI_ESCORTED_CHARACTERS_CANT_LEAVE_SECTOR_ALONE_STR ], gusSelectedSoldier->GetName() );
|
||||
gfLoneEPCAttemptingTraversal = FALSE;
|
||||
}
|
||||
else if( gubLoneMercAttemptingToAbandonEPCs )
|
||||
@@ -4887,26 +4887,26 @@ BOOLEAN HandleCheckForExitArrowsInput( BOOLEAN fAdjustConfirm )
|
||||
CHAR16 str[256];
|
||||
if( gubLoneMercAttemptingToAbandonEPCs == 1 )
|
||||
{ //Use the singular version of the string
|
||||
if( gMercProfiles[ MercPtrs[ gusSelectedSoldier ]->ubProfile ].bSex == MALE )
|
||||
if( gMercProfiles[ gusSelectedSoldier->ubProfile ].bSex == MALE )
|
||||
{ //male singular
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_MERC_CANT_ISOLATE_EPC_HELPTEXT_MALE_SINGULAR ], MercPtrs[ gusSelectedSoldier ]->GetName(),
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_MERC_CANT_ISOLATE_EPC_HELPTEXT_MALE_SINGULAR ], gusSelectedSoldier->GetName(),
|
||||
MercPtrs[ gbPotentiallyAbandonedEPCSlotID ]->GetName() );
|
||||
}
|
||||
else
|
||||
{ //female singular
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_MERC_CANT_ISOLATE_EPC_HELPTEXT_FEMALE_SINGULAR ], MercPtrs[ gusSelectedSoldier ]->GetName(),
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_MERC_CANT_ISOLATE_EPC_HELPTEXT_FEMALE_SINGULAR ], gusSelectedSoldier->GetName(),
|
||||
MercPtrs[ gbPotentiallyAbandonedEPCSlotID ]->GetName() );
|
||||
}
|
||||
}
|
||||
else
|
||||
{ //Use the plural version of the string
|
||||
if( gMercProfiles[ MercPtrs[ gusSelectedSoldier ]->ubProfile ].bSex == MALE )
|
||||
if( gMercProfiles[ gusSelectedSoldier->ubProfile ].bSex == MALE )
|
||||
{ //male plural
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_MERC_CANT_ISOLATE_EPC_HELPTEXT_MALE_PLURAL ], MercPtrs[ gusSelectedSoldier ]->GetName() );
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_MERC_CANT_ISOLATE_EPC_HELPTEXT_MALE_PLURAL ], gusSelectedSoldier->GetName() );
|
||||
}
|
||||
else
|
||||
{ //female plural
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_MERC_CANT_ISOLATE_EPC_HELPTEXT_FEMALE_PLURAL ], MercPtrs[ gusSelectedSoldier ]->GetName() );
|
||||
swprintf( str, pExitingSectorHelpText[ EXIT_GUI_MERC_CANT_ISOLATE_EPC_HELPTEXT_FEMALE_PLURAL ], gusSelectedSoldier->GetName() );
|
||||
}
|
||||
}
|
||||
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_UI_FEEDBACK, str );
|
||||
@@ -4918,7 +4918,7 @@ BOOLEAN HandleCheckForExitArrowsInput( BOOLEAN fAdjustConfirm )
|
||||
}
|
||||
else
|
||||
{
|
||||
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_UI_FEEDBACK, TacticalStr[ MERC_IS_TOO_FAR_AWAY_STR ], MercPtrs[ gusSelectedSoldier ]->GetName() );
|
||||
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_UI_FEEDBACK, TacticalStr[ MERC_IS_TOO_FAR_AWAY_STR ], gusSelectedSoldier->GetName() );
|
||||
}
|
||||
|
||||
return( TRUE );
|
||||
@@ -5148,7 +5148,7 @@ void CycleSelectedMercsItem()
|
||||
if( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
// Get soldier...
|
||||
pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
|
||||
UINT16 usOldHandItem = pSoldier->inv[HANDPOS].usItem;
|
||||
|
||||
@@ -5377,7 +5377,7 @@ void SetBurstMode()
|
||||
{
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
ChangeWeaponMode( MercPtrs[ gusSelectedSoldier ] );
|
||||
ChangeWeaponMode( gusSelectedSoldier );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5386,12 +5386,12 @@ void SetScopeMode( INT32 usMapPos )
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
if ( GetMouseMapPos( &usMapPos ))
|
||||
ChangeScopeMode( MercPtrs[ gusSelectedSoldier ], usMapPos );
|
||||
ChangeScopeMode( gusSelectedSoldier, usMapPos );
|
||||
else
|
||||
ChangeScopeMode( MercPtrs[ gusSelectedSoldier ], NOWHERE );
|
||||
ChangeScopeMode( gusSelectedSoldier, NOWHERE );
|
||||
|
||||
// reevaluate sight
|
||||
ManLooksForOtherTeams( MercPtrs[ gusSelectedSoldier ] );
|
||||
ManLooksForOtherTeams( gusSelectedSoldier );
|
||||
}
|
||||
}
|
||||
#pragma optimize("", off)
|
||||
@@ -6115,14 +6115,14 @@ INT8 HandleMoveModeInteractiveClick( INT32 usMapPos, UINT32 *puiNewEvent )
|
||||
|
||||
if ( fContinue )
|
||||
{
|
||||
sActionGridNo = FindAdjacentGridEx( MercPtrs[ gusSelectedSoldier ], sIntTileGridNo, &ubDirection, NULL, FALSE, TRUE );
|
||||
sActionGridNo = FindAdjacentGridEx( gusSelectedSoldier, sIntTileGridNo, &ubDirection, NULL, FALSE, TRUE );
|
||||
if ( sActionGridNo == -1 )
|
||||
{
|
||||
sActionGridNo = sIntTileGridNo;
|
||||
}
|
||||
|
||||
// If this is not the same tile as ours, check if we can get to dest!
|
||||
if ( sActionGridNo != MercPtrs[ gusSelectedSoldier ]->sGridNo && gsCurrentActionPoints == 0 )
|
||||
if ( sActionGridNo != gusSelectedSoldier->sGridNo && gsCurrentActionPoints == 0 )
|
||||
{
|
||||
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_UI_FEEDBACK, TacticalStr[ NO_PATH ] );
|
||||
bReturnCode = -1;
|
||||
@@ -6403,7 +6403,7 @@ void HandleStanceChangeFromUIKeys( UINT8 ubAnimHeight )
|
||||
{
|
||||
if( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
// silversurfer: If we decide to stand up or press "s" again while we are standing we should reset movement to walk mode.
|
||||
// If we want to run we have to press "r" which is handled elsewhere.
|
||||
if ( ubAnimHeight == ANIM_STAND )
|
||||
@@ -6508,9 +6508,9 @@ void HandleStealthChangeFromUIKeys( )
|
||||
{
|
||||
if( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
if ( !AM_A_ROBOT( MercPtrs[ gusSelectedSoldier ] ) )
|
||||
if ( !AM_A_ROBOT( gusSelectedSoldier ) )
|
||||
{
|
||||
ToggleStealthMode( MercPtrs[ gusSelectedSoldier ] );
|
||||
ToggleStealthMode( gusSelectedSoldier );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -7475,12 +7475,12 @@ void HandleMouseTBWheel( void )
|
||||
//change stance ->DOWN
|
||||
if ( _KeyDown( ALT ) )
|
||||
{ if ( (gusSelectedSoldier != NOBODY) && ( gpItemPointer == NULL ) )
|
||||
GotoLowerStance(MercPtrs[ gusSelectedSoldier ]);
|
||||
GotoLowerStance(gusSelectedSoldier);
|
||||
return;
|
||||
}
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
bID = FindPrevActiveAndAliveMerc( MercPtrs[ gusSelectedSoldier ], TRUE, TRUE );
|
||||
bID = FindPrevActiveAndAliveMerc( gusSelectedSoldier, TRUE, TRUE );
|
||||
HandleLocateSelectMerc( bID, LOCATEANDSELECT_MERC );
|
||||
ErasePath(TRUE);
|
||||
gfPlotNewMovement = TRUE;
|
||||
@@ -7494,14 +7494,14 @@ void HandleMouseTBWheel( void )
|
||||
//change stance ->UP
|
||||
if ( _KeyDown( ALT ) )
|
||||
{ if ( (gusSelectedSoldier != NOBODY) && ( gpItemPointer == NULL ) )
|
||||
GotoHeigherStance( MercPtrs[ gusSelectedSoldier ] );
|
||||
GotoHeigherStance( gusSelectedSoldier );
|
||||
return;
|
||||
}
|
||||
|
||||
//ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, L"wheel %d", gViewportRegion.WheelState);
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{ //Select next merc
|
||||
bID = FindNextMercInTeamPanel( MercPtrs[ gusSelectedSoldier ], FALSE, FALSE );
|
||||
bID = FindNextMercInTeamPanel( gusSelectedSoldier, FALSE, FALSE );
|
||||
HandleLocateSelectMerc( bID, LOCATEANDSELECT_MERC );
|
||||
ErasePath(TRUE);
|
||||
gfPlotNewMovement = TRUE;
|
||||
@@ -7546,7 +7546,7 @@ void HandleMouseTBX1Button( UINT32 *puiNewEvent )
|
||||
void HandleMouseTBX2Button( UINT32 *puiNewEvent )
|
||||
{
|
||||
if ( _KeyDown( ALT ) )
|
||||
AutoReload( MercPtrs[ gusSelectedSoldier ] );
|
||||
AutoReload( gusSelectedSoldier );
|
||||
else
|
||||
HandleTBToggleStealthAll();
|
||||
}
|
||||
@@ -7761,7 +7761,7 @@ void HandleTBCycleThroughVisibleEnemies( void )
|
||||
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
|
||||
if ( pSoldier->aiData.bOppCnt > 0 )
|
||||
{
|
||||
@@ -7780,7 +7780,7 @@ void HandleTBCycleThroughVisibleEnemiesBackward( void )
|
||||
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
|
||||
if ( pSoldier->aiData.bOppCnt > 0 )
|
||||
{
|
||||
@@ -7808,9 +7808,9 @@ void HandleTBChangeLevel( void )
|
||||
void HandleTBSwapHands( void )
|
||||
{
|
||||
// swap primary & secondary hand
|
||||
if ( gusSelectedSoldier != NOBODY && !AM_A_ROBOT( MercPtrs[ gusSelectedSoldier ] ))
|
||||
if ( gusSelectedSoldier != NOBODY && !AM_A_ROBOT( gusSelectedSoldier ))
|
||||
{
|
||||
SOLDIERTYPE *pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
SOLDIERTYPE *pSoldier = gusSelectedSoldier;
|
||||
UINT16 usOldHandItem = pSoldier->inv[HANDPOS].usItem;
|
||||
SwapHandItems( pSoldier );
|
||||
pSoldier->ReLoadSoldierAnimationDueToHandItemChange( usOldHandItem, pSoldier->inv[HANDPOS].usItem );
|
||||
@@ -7825,7 +7825,7 @@ void HandleTBSwapGunsling( void )
|
||||
|
||||
if ( gusSelectedSoldier != NOBODY && UsingNewInventorySystem() == true)
|
||||
{
|
||||
pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
pSoldier->SwitchWeapons( );
|
||||
}
|
||||
}
|
||||
@@ -7833,7 +7833,7 @@ void HandleTBSwapKnife( void )
|
||||
{
|
||||
if ( gusSelectedSoldier != NOBODY && UsingNewInventorySystem() == true)
|
||||
{
|
||||
SOLDIERTYPE *pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
SOLDIERTYPE *pSoldier = gusSelectedSoldier;
|
||||
pSoldier->SwitchWeapons( TRUE );
|
||||
}
|
||||
}
|
||||
@@ -7841,7 +7841,7 @@ void HandleTBSwapSidearm( void )
|
||||
{
|
||||
if ( gusSelectedSoldier != NOBODY && UsingNewInventorySystem() == true)
|
||||
{
|
||||
SOLDIERTYPE *pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
SOLDIERTYPE *pSoldier = gusSelectedSoldier;
|
||||
pSoldier->SwitchWeapons( FALSE, TRUE );
|
||||
}
|
||||
}
|
||||
@@ -7941,7 +7941,7 @@ void HandleTBToggleStealth( void )
|
||||
}
|
||||
void HandleTBReload( void )
|
||||
{
|
||||
AutoReload( MercPtrs[ gusSelectedSoldier ] );
|
||||
AutoReload( gusSelectedSoldier );
|
||||
}
|
||||
void HandleTBReloadAll( void )
|
||||
{
|
||||
@@ -8242,19 +8242,19 @@ void HandleTBToggleTrapNetworkView( void )
|
||||
void HandleTBGotoHigherStance( void )
|
||||
{
|
||||
if ( (gusSelectedSoldier != NOBODY) && ( gpItemPointer == NULL ) )
|
||||
GotoHeigherStance(MercPtrs[ gusSelectedSoldier ]);
|
||||
GotoHeigherStance(gusSelectedSoldier);
|
||||
}
|
||||
void HandleTBGotoLowerStance( void )
|
||||
{
|
||||
if ( (gusSelectedSoldier != NOBODY) && ( gpItemPointer == NULL ) )
|
||||
GotoLowerStance( MercPtrs[ gusSelectedSoldier ] );
|
||||
GotoLowerStance( gusSelectedSoldier );
|
||||
}
|
||||
void HandleTBLocateNextMerc( void )
|
||||
{
|
||||
UINT16 bID;
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{ //Select next merc
|
||||
bID = FindNextMercInTeamPanel( MercPtrs[ gusSelectedSoldier ], FALSE, FALSE );
|
||||
bID = FindNextMercInTeamPanel( gusSelectedSoldier, FALSE, FALSE );
|
||||
HandleLocateSelectMerc( bID, LOCATEANDSELECT_MERC );
|
||||
// Center to guy....
|
||||
LocateSoldier( gusSelectedSoldier, SETLOCATOR );
|
||||
@@ -8265,7 +8265,7 @@ void HandleTBLocatePrevMerc( void )
|
||||
UINT16 bID;
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
bID = FindPrevActiveAndAliveMerc( MercPtrs[ gusSelectedSoldier ], TRUE, TRUE );
|
||||
bID = FindPrevActiveAndAliveMerc( gusSelectedSoldier, TRUE, TRUE );
|
||||
HandleLocateSelectMerc( bID, LOCATEANDSELECT_MERC );
|
||||
// Center to guy....
|
||||
LocateSoldier( gusSelectedSoldier, SETLOCATOR );
|
||||
@@ -8338,7 +8338,7 @@ void HandleTBDropBackpacks( void )
|
||||
//if( UsingNewInventorySystem() && gusSelectedSoldier != NOBODY )
|
||||
if( UsingNewInventorySystem() )
|
||||
{
|
||||
//SOLDIERTYPE *pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
//SOLDIERTYPE *pSoldier = gusSelectedSoldier;
|
||||
SOLDIERTYPE *pTeamSoldier;
|
||||
UINT16 ubLoop;
|
||||
|
||||
@@ -8376,7 +8376,7 @@ void HandleTBPickUpBackpacks( void )
|
||||
//if( UsingNewInventorySystem() && gusSelectedSoldier != NOBODY )
|
||||
if( UsingNewInventorySystem() )
|
||||
{
|
||||
//SOLDIERTYPE *pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
//SOLDIERTYPE *pSoldier = gusSelectedSoldier;
|
||||
SOLDIERTYPE *pTeamSoldier;
|
||||
UINT16 ubLoop;
|
||||
|
||||
@@ -8411,7 +8411,7 @@ void HandleTBPickUpBackpacks( void )
|
||||
|
||||
void HandleTBSoldierRun( void )
|
||||
{
|
||||
SOLDIERTYPE *pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
SOLDIERTYPE *pSoldier = gusSelectedSoldier;
|
||||
if ( pSoldier->flags.uiStatusFlags & ( SOLDIER_DRIVER ) )
|
||||
{
|
||||
pSoldier = GetSoldierStructureForVehicle( pSoldier->iVehicleId );
|
||||
@@ -8861,7 +8861,7 @@ void HandleTacticalStoreInvItem( void )
|
||||
UINT16 APTotalCost = 0;
|
||||
|
||||
if( gusSelectedSoldier != NOBODY )
|
||||
pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
else
|
||||
return;
|
||||
|
||||
@@ -8934,7 +8934,7 @@ void HandleTacticalTakeInvItem( INT32 iType )
|
||||
}
|
||||
|
||||
if( gusSelectedSoldier != NOBODY )
|
||||
pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
else
|
||||
return;
|
||||
|
||||
@@ -9044,7 +9044,7 @@ void HandleTacticalDropItem( UINT8 ubSlot )
|
||||
UINT16 APTotalCost = 0;
|
||||
|
||||
if( gusSelectedSoldier != NOBODY )
|
||||
pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
else
|
||||
return;
|
||||
|
||||
@@ -9069,7 +9069,7 @@ void HandleTacticalTakeItem( void )
|
||||
SOLDIERTYPE *pSoldier;
|
||||
|
||||
if( gusSelectedSoldier != NOBODY )
|
||||
pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
else
|
||||
return;
|
||||
|
||||
@@ -9108,7 +9108,7 @@ void HandleTacticalReload()
|
||||
INT16 bAPs = 0;
|
||||
|
||||
if (gusSelectedSoldier != NOBODY)
|
||||
pSoldier = MercPtrs[gusSelectedSoldier];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
else
|
||||
return;
|
||||
|
||||
@@ -9579,10 +9579,10 @@ void HandleTBSkillsMenu(void)
|
||||
{
|
||||
TraitsMenu(usMapPos);
|
||||
}
|
||||
else if (gusSelectedSoldier != NOBODY && MercPtrs[gusSelectedSoldier] && !TileIsOutOfBounds(MercPtrs[gusSelectedSoldier]->sGridNo))
|
||||
else if (gusSelectedSoldier != NOBODY && gusSelectedSoldier && !TileIsOutOfBounds(gusSelectedSoldier->sGridNo))
|
||||
{
|
||||
LocateGridNo(MercPtrs[gusSelectedSoldier]->sGridNo);
|
||||
TraitsMenu(MercPtrs[gusSelectedSoldier]->sGridNo);
|
||||
LocateGridNo(gusSelectedSoldier->sGridNo);
|
||||
TraitsMenu(gusSelectedSoldier->sGridNo);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9606,7 +9606,7 @@ void HandleTBPickUpBackpacks(BOOLEAN fAll)
|
||||
|
||||
if (gusSelectedSoldier != NOBODY)
|
||||
{
|
||||
pSoldier = MercPtrs[gusSelectedSoldier];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
}
|
||||
|
||||
INT16 sAPCost = APBPConstants[AP_BACK_PACK];
|
||||
|
||||
@@ -364,7 +364,7 @@ UINT8 HandleActivatedTargetCursor( SOLDIERTYPE *pSoldier, INT32 usMapPos, BOOLEA
|
||||
// If we are in realtime, follow!
|
||||
if ( ( !( gTacticalStatus.uiFlags & INCOMBAT ) ) )
|
||||
{
|
||||
if ( ( gAnimControl[ MercPtrs[ gusSelectedSoldier ]->usAnimState ].uiFlags & ANIM_STATIONARY ) )
|
||||
if ( ( gAnimControl[ gusSelectedSoldier->usAnimState ].uiFlags & ANIM_STATIONARY ) )
|
||||
{
|
||||
if ( gUITargetShotWaiting )
|
||||
{
|
||||
|
||||
@@ -4642,16 +4642,16 @@ void DebugSoldierPage3( )
|
||||
|
||||
// OPIONION OF SELECTED MERC
|
||||
if ( gusSelectedSoldier != NOBODY && pSoldier->ubProfile != NO_PROFILE && (
|
||||
gMercProfiles[MercPtrs[gusSelectedSoldier]->ubProfile].Type == PROFILETYPE_AIM ||
|
||||
gMercProfiles[MercPtrs[gusSelectedSoldier]->ubProfile].Type == PROFILETYPE_MERC ||
|
||||
gMercProfiles[MercPtrs[gusSelectedSoldier]->ubProfile].Type == PROFILETYPE_RPC ||
|
||||
gMercProfiles[MercPtrs[gusSelectedSoldier]->ubProfile].Type == PROFILETYPE_IMP ) )
|
||||
gMercProfiles[gusSelectedSoldier->ubProfile].Type == PROFILETYPE_AIM ||
|
||||
gMercProfiles[gusSelectedSoldier->ubProfile].Type == PROFILETYPE_MERC ||
|
||||
gMercProfiles[gusSelectedSoldier->ubProfile].Type == PROFILETYPE_RPC ||
|
||||
gMercProfiles[gusSelectedSoldier->ubProfile].Type == PROFILETYPE_IMP ) )
|
||||
{
|
||||
SetFontShade(LARGEFONT1, FONT_SHADE_GREEN);
|
||||
gprintf( 0, LINE_HEIGHT * ubLine, L"NPC Opinion:");
|
||||
SetFontShade(LARGEFONT1, FONT_SHADE_NEUTRAL);
|
||||
if (OKToCheckOpinion(MercPtrs[ gusSelectedSoldier ]->ubProfile))
|
||||
gprintf( 150, LINE_HEIGHT * ubLine, L"%d", gMercProfiles[ pSoldier->ubProfile ].bMercOpinion[ MercPtrs[ gusSelectedSoldier ]->ubProfile ] );
|
||||
if (OKToCheckOpinion(gusSelectedSoldier->ubProfile))
|
||||
gprintf( 150, LINE_HEIGHT * ubLine, L"%d", gMercProfiles[ pSoldier->ubProfile ].bMercOpinion[ gusSelectedSoldier->ubProfile ] );
|
||||
ubLine++;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4387,7 +4387,7 @@ void HandleExplosionWarningAnimations( )
|
||||
// show focus area if skill is active
|
||||
if ( gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
SOLDIERTYPE* pSoldier = MercPtrs[gusSelectedSoldier];
|
||||
SOLDIERTYPE* pSoldier = gusSelectedSoldier;
|
||||
|
||||
if ( pSoldier->bActive && pSoldier->bInSector)
|
||||
{
|
||||
@@ -5620,10 +5620,8 @@ void FireFragmentsTrapGun( SOLDIERTYPE* pThrower, INT32 gridno, INT16 sZ, OBJECT
|
||||
|
||||
void HavePersonAtGridnoStop( UINT32 sGridNo )
|
||||
{
|
||||
UINT8 ubID;
|
||||
|
||||
//Sewe if there is a person at the gridno
|
||||
ubID = WhoIsThere2( sGridNo, 0 );
|
||||
SoldierID ubID = WhoIsThere2( sGridNo, 0 );
|
||||
|
||||
//is it a valid person
|
||||
if ( (ubID != NOBODY) && (MercPtrs[ ubID ]->bTeam == gbPlayerNum) )
|
||||
@@ -5813,8 +5811,7 @@ void HandleSwitchToOpenFortifiedDoor( UINT32 sGridNo )
|
||||
|
||||
void HandleSeeingPowerGenFan( UINT32 sGridNo )
|
||||
{
|
||||
// INT8 bID;
|
||||
UINT8 ubPerson;
|
||||
SoldierID ubPerson;
|
||||
BOOLEAN fFanIsStopped;
|
||||
BOOLEAN fFanHasBeenStopped;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
|
||||
@@ -505,7 +505,7 @@ void LogMouseOverInteractiveTile( INT32 sGridNo )
|
||||
}
|
||||
|
||||
// Also, don't allow for mercs who are on upper level...
|
||||
if ( gusSelectedSoldier != NOBODY && MercPtrs[ gusSelectedSoldier ]->pathing.bLevel == 1 )
|
||||
if ( gusSelectedSoldier != NOBODY && gusSelectedSoldier->pathing.bLevel == 1 )
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -789,7 +789,7 @@ BOOLEAN RefineLogicOnStruct( INT32 sGridNo, LEVELNODE *pNode )
|
||||
return( FALSE );
|
||||
}
|
||||
|
||||
if ( gusSelectedSoldier != NOBODY && MercPtrs[ gusSelectedSoldier ]->ubBodyType == ROBOTNOWEAPON )
|
||||
if ( gusSelectedSoldier != NOBODY && gusSelectedSoldier->ubBodyType == ROBOTNOWEAPON )
|
||||
{
|
||||
return( FALSE );
|
||||
}
|
||||
|
||||
@@ -567,7 +567,7 @@ void HandleOverheadMap( )
|
||||
|
||||
if( !gfEditMode && !gfTacticalPlacementGUIActive && gusSelectedSoldier != NOBODY )
|
||||
{
|
||||
pSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
pSoldier = gusSelectedSoldier;
|
||||
|
||||
DisplayMercNameInOverhead( pSoldier );
|
||||
}
|
||||
|
||||
@@ -1069,7 +1069,7 @@ inline UINT16 * GetShadeTable(LEVELNODE * pNode, SOLDIERTYPE * pSoldier, SOLDIER
|
||||
SOLDIERTYPE * pSelSoldier;
|
||||
if (gusSelectedSoldier != NOBODY)
|
||||
{
|
||||
pSelSoldier = MercPtrs[gusSelectedSoldier];
|
||||
pSelSoldier = gusSelectedSoldier;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1149,7 +1149,7 @@ inline UINT16 * GetShadeTable(LEVELNODE * pNode, SOLDIERTYPE * pSoldier, SOLDIER
|
||||
}
|
||||
//if ( gusSelectedSoldier != NOBODY )
|
||||
//{
|
||||
// pSelSoldier = MercPtrs[ gusSelectedSoldier ];
|
||||
// pSelSoldier = gusSelectedSoldier;
|
||||
// Shade differently depending on visiblity
|
||||
// if ( pSoldier->bVisible == 0 || ( pSelSoldier->aiData.bOppList[ pSoldier->ubID ] == 0 ) )
|
||||
// {
|
||||
|
||||
@@ -3291,7 +3291,7 @@ BOOLEAN LoadWorld(const STR8 puiFilename, FLOAT* pMajorMapVersion, UINT8* pMinor
|
||||
// CHECK IF OUR SELECTED GUY IS GONE!
|
||||
if(gusSelectedSoldier != NOBODY)
|
||||
{
|
||||
if(MercPtrs[gusSelectedSoldier]->bActive == FALSE)
|
||||
if(gusSelectedSoldier->bActive == FALSE)
|
||||
gusSelectedSoldier = NOBODY;
|
||||
}
|
||||
AdjustSoldierCreationStartValues();
|
||||
|
||||
Reference in New Issue
Block a user