mirror of
https://github.com/1dot13/source.git
synced 2026-07-22 13:40:22 +02:00
Convert to SoldierID
This commit is contained in:
+18
-18
@@ -388,16 +388,16 @@ typedef struct
|
||||
|
||||
typedef struct
|
||||
{
|
||||
UINT16 usSoldierID;
|
||||
FLOAT dNewXPos;
|
||||
FLOAT dNewYPos;
|
||||
SoldierID usSoldierID;
|
||||
FLOAT dNewXPos;
|
||||
FLOAT dNewYPos;
|
||||
|
||||
} gui_pos;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
UINT16 usSoldierID;
|
||||
INT16 usNewDirection;
|
||||
SoldierID usSoldierID;
|
||||
INT16 usNewDirection;
|
||||
|
||||
} gui_dir;
|
||||
|
||||
@@ -425,12 +425,12 @@ typedef struct
|
||||
|
||||
typedef struct
|
||||
{
|
||||
UINT16 ubID;
|
||||
SoldierID ubID;
|
||||
INT8 bTeam;
|
||||
UINT16 gubOutOfTurnPersons;
|
||||
UINT16 gubOutOfTurnOrder[MAXMERCS];
|
||||
BOOLEAN fMarkInterruptOccurred;
|
||||
UINT16 Interrupted;
|
||||
SoldierID Interrupted;
|
||||
} INT_STRUCT;
|
||||
|
||||
typedef struct
|
||||
@@ -486,7 +486,7 @@ typedef struct
|
||||
float dZ;
|
||||
INT32 sGridNo;
|
||||
bool bWasDud;
|
||||
UINT16 ubOwnerID;
|
||||
SoldierID ubOwnerID;
|
||||
INT32 RealObjectID; // the local ID on the initiating client
|
||||
UINT32 uiPreRandomIndex; // send out our current pre-random index
|
||||
} grenade_result;
|
||||
@@ -967,7 +967,7 @@ void send_hit( EV_S_WEAPONHIT *SWeaponHit )
|
||||
|
||||
memcpy( &weaphit_struct , SWeaponHit, sizeof( EV_S_WEAPONHIT ));
|
||||
|
||||
UINT16 usSoldierID=weaphit_struct.usSoldierID;
|
||||
SoldierID usSoldierID = weaphit_struct.usSoldierID;
|
||||
|
||||
if(SWeaponHit->usSoldierID < 20)weaphit_struct.usSoldierID = weaphit_struct.usSoldierID+ubID_prefix;
|
||||
if(SWeaponHit->ubAttackerID < 20)weaphit_struct.ubAttackerID = weaphit_struct.ubAttackerID+ubID_prefix;
|
||||
@@ -981,9 +981,9 @@ void recieveHIT(RPCParameters *rpcParameters)
|
||||
|
||||
EV_S_WEAPONHIT* SWeaponHit = (EV_S_WEAPONHIT*)rpcParameters->input;
|
||||
|
||||
SOLDIERTYPE *pSoldier = MercPtrs[ SWeaponHit->usSoldierID ];
|
||||
UINT16 usSoldierID;
|
||||
UINT16 ubAttackerID;
|
||||
SOLDIERTYPE *pSoldier = SWeaponHit->usSoldierID;
|
||||
SoldierID usSoldierID;
|
||||
SoldierID ubAttackerID;
|
||||
|
||||
if((SWeaponHit->usSoldierID >= ubID_prefix) && (SWeaponHit->usSoldierID < (ubID_prefix+6))) // within our netbTeam range...
|
||||
usSoldierID = (SWeaponHit->usSoldierID - ubID_prefix);
|
||||
@@ -1157,7 +1157,7 @@ void send_gui_pos(SOLDIERTYPE *pSoldier, FLOAT dNewXPos, FLOAT dNewYPos)
|
||||
{
|
||||
gui_pos gnPOS;
|
||||
|
||||
gnPOS.usSoldierID = (pSoldier->ubID)+ubID_prefix;
|
||||
gnPOS.usSoldierID = pSoldier->ubID + ubID_prefix;
|
||||
|
||||
gnPOS.dNewXPos = dNewXPos;
|
||||
gnPOS.dNewYPos = dNewYPos;
|
||||
@@ -1916,7 +1916,7 @@ void send_interrupt (SOLDIERTYPE *pSoldier)
|
||||
memcpy(INT.gubOutOfTurnOrder, gubOutOfTurnOrder, sizeof(UINT16) * MAXMERCS);
|
||||
INT.gubOutOfTurnPersons = gubOutOfTurnPersons;
|
||||
|
||||
INT.Interrupted=gusSelectedSoldier+ubID_prefix;
|
||||
INT.Interrupted = gusSelectedSoldier + ubID_prefix;
|
||||
|
||||
if(INT.bTeam==0)
|
||||
{
|
||||
@@ -3030,11 +3030,11 @@ void recieveGRENADE (RPCParameters *rpcParameters)
|
||||
}
|
||||
|
||||
// we send a grenade result out to the clients as it may have been a fizzer
|
||||
void send_grenade_result (float xPos, float yPos, float zPos, INT32 sGridNo, UINT8 ubOwnerID, INT32 iRealObjectID, bool bIsDud)
|
||||
void send_grenade_result (float xPos, float yPos, float zPos, INT32 sGridNo, SoldierID ubOwnerID, INT32 iRealObjectID, bool bIsDud)
|
||||
{
|
||||
ubOwnerID = MPEncodeSoldierID(ubOwnerID); // translate our soldier to the "network" version
|
||||
|
||||
SOLDIERTYPE* pSoldier = MercPtrs[ubOwnerID];
|
||||
SOLDIERTYPE* pSoldier = ubOwnerID;
|
||||
if (pSoldier != NULL)
|
||||
{
|
||||
if ((pSoldier->bTeam == 1 && is_server) || IsOurSoldier(pSoldier))
|
||||
@@ -3343,11 +3343,11 @@ void recieveDETONATEEXPLOSIVE (RPCParameters *rpcParameters)
|
||||
}
|
||||
}
|
||||
|
||||
void send_disarm_explosive(UINT32 sGridNo, UINT32 uiWorldItem, UINT16 ubID)
|
||||
void send_disarm_explosive(UINT32 sGridNo, UINT32 uiWorldItem, SoldierID ubID)
|
||||
{
|
||||
ubID = MPEncodeSoldierID(ubID);
|
||||
|
||||
SOLDIERTYPE* pSoldier = MercPtrs[ubID];
|
||||
SOLDIERTYPE* pSoldier = ubID;
|
||||
if (pSoldier != NULL)
|
||||
{
|
||||
// explosive disarmed on this client, notify the other clients
|
||||
|
||||
@@ -112,14 +112,14 @@ void send_interrupt(SOLDIERTYPE *pSoldier);
|
||||
|
||||
// OJW - 20091002 - explosives
|
||||
void send_grenade (OBJECTTYPE *pGameObj, float dLifeLength, float xPos, float yPos, float zPos, float xForce, float yForce, float zForce, UINT32 sTargetGridNo, UINT16 ubOwner, UINT8 ubActionCode, UINT32 uiActionData, INT32 iRealObjectID, bool bIsThrownGrenade);
|
||||
void send_grenade_result (float xPos, float yPos, float zPos, INT32 sGridNo, UINT8 ubOwnerID, INT32 iRealObjectID, bool bIsDud);
|
||||
void send_grenade_result (float xPos, float yPos, float zPos, INT32 sGridNo, SoldierID ubOwnerID, INT32 iRealObjectID, bool bIsDud);
|
||||
void send_plant_explosive (UINT16 ubID,UINT16 usItem,UINT8 ubItemStatus,UINT16 usFlags, UINT32 sGridNo,UINT8 ubLevel, UINT32 uiWorldIndex);
|
||||
void send_detonate_explosive (UINT32 uiWorldIndex, UINT16 ubID);
|
||||
void send_spreadeffect ( INT32 sGridNo, UINT8 ubRadius, UINT16 usItem, UINT16 ubOwner, BOOLEAN fSubsequent, INT8 bLevel, INT32 iSmokeEffectID );
|
||||
void send_newsmokeeffect(INT32 sGridNo, UINT16 usItem, INT8 bLevel, UINT16 ubOwner, INT32 iSmokeEffectID);
|
||||
void send_gasdamage( SOLDIERTYPE * pSoldier, UINT16 usExplosiveClassID, INT16 sSubsequent, BOOLEAN fRecompileMovementCosts, INT16 sWoundAmt, INT16 sBreathAmt, SoldierID ubOwner );
|
||||
void send_explosivedamage( UINT16 ubPerson, UINT16 ubOwner, INT32 sBombGridNo, INT16 sWoundAmt, INT16 sBreathAmt, UINT32 uiDist, UINT16 usItem, INT16 sSubsequent );
|
||||
void send_disarm_explosive(UINT32 sGridNo, UINT32 uiWorldIndex, UINT16 ubID);
|
||||
void send_disarm_explosive(UINT32 sGridNo, UINT32 uiWorldIndex, SoldierID ubID);
|
||||
|
||||
void OpenChatMsgBox(void);
|
||||
|
||||
@@ -211,7 +211,7 @@ extern BOOLEAN fClientReceivedAllFiles;
|
||||
// sick of confusing myself :)
|
||||
|
||||
// this one should be called before passing an ID off the client
|
||||
inline UINT16 MPEncodeSoldierID( UINT16 ubID )
|
||||
inline SoldierID MPEncodeSoldierID( SoldierID ubID )
|
||||
{
|
||||
if ( ubID < 20 )
|
||||
return ubID + ubID_prefix; // soldier is ours
|
||||
|
||||
@@ -2717,7 +2717,7 @@ void LuaHandleSectorLiberation( INT16 sSectorX, INT16 sSectorY, INT8 bSectorZ, B
|
||||
|
||||
void LuaHandleInteractiveActionResult( INT16 sSectorX, INT16 sSectorY,
|
||||
INT8 bSectorZ,
|
||||
INT32 sGridNo, UINT8 bLevel, UINT16 ubId,
|
||||
INT32 sGridNo, UINT8 bLevel, SoldierID ubId,
|
||||
UINT16 usActionType, INT32 sLuaactionid, INT32 difficulty, UINT16 skill )
|
||||
{
|
||||
const char* filename = "scripts\\Overhead.lua";
|
||||
@@ -2731,7 +2731,7 @@ void LuaHandleInteractiveActionResult( INT16 sSectorX, INT16 sSectorY,
|
||||
|
||||
SGP_THROW_IFFALSE( _LS.L.EvalFile( filename ), _BS( "Cannot open file: " ) << filename << _BS::cget );
|
||||
|
||||
LuaFunction( _LS.L, "HandleInteractiveActionResult" ).Param<int>( sSectorX ).Param<int>( sSectorY ).Param<int>( bSectorZ ).Param<int>( sGridNo ).Param<int>( bLevel ).Param<int>( ubId ).Param<int>( usActionType ).Param<int>( sLuaactionid ).Param<int>( difficulty ).Param<int>( skill ).Call( 10 );
|
||||
LuaFunction( _LS.L, "HandleInteractiveActionResult" ).Param<int>( sSectorX ).Param<int>( sSectorY ).Param<int>( bSectorZ ).Param<int>( sGridNo ).Param<int>( bLevel ).Param<int>( ubId.i ).Param<int>( usActionType ).Param<int>( sLuaactionid ).Param<int>( difficulty ).Param<int>( skill ).Call( 10 );
|
||||
}
|
||||
|
||||
void LuaRecruitRPCAdditionalHandling( UINT8 usProfile )
|
||||
|
||||
@@ -62,7 +62,7 @@ extern BOOLEAN LuaHandleQuestCodeOnSector( INT16 sSectorX, INT16 sSectorY, INT8
|
||||
void LuaHandleSectorLiberation( INT16 sSectorX, INT16 sSectorY, INT8 bSectorZ, BOOLEAN fFirstTime );
|
||||
void LuaHandleInteractiveActionResult( INT16 sSectorX, INT16 sSectorY,
|
||||
INT8 bSectorZ,
|
||||
INT32 sGridNo, UINT8 bLevel, UINT16 ubId,
|
||||
INT32 sGridNo, UINT8 bLevel, SoldierID ubId,
|
||||
UINT16 usActionType, INT32 sLuaactionid, INT32 difficulty, UINT16 skill );
|
||||
void LuaRecruitRPCAdditionalHandling( UINT8 usProfile );
|
||||
void LuaHandleSectorTacticalEntry( INT16 sSectorX, INT16 sSectorY, INT8 bSectorZ, BOOLEAN fHasEverBeenPlayerControlled );
|
||||
|
||||
+2
-2
@@ -2087,10 +2087,10 @@ void HandleRenderFaceAdjustments( FACETYPE *pFace, BOOLEAN fDisplayBuffer, BOOLE
|
||||
// Flugente: are we supplying ammo to someone else?
|
||||
if (gGameExternalOptions.ubExternalFeeding > 0)
|
||||
{
|
||||
UINT16 ubID1 = 0;
|
||||
SoldierID ubID1 = NOBODY;
|
||||
UINT16 ubGunSlot1 = 0;
|
||||
UINT16 ubFaceSlot1 = 0;
|
||||
UINT16 ubID2 = 0;
|
||||
SoldierID ubID2 = NOBODY;
|
||||
UINT16 ubGunSlot2 = 0;
|
||||
UINT16 ubFaceSlot2 = 0;
|
||||
if (pSoldier->IsFeedingExternal(&ubID1, &ubGunSlot1, &ubFaceSlot1, &ubID2, &ubGunSlot2, &ubFaceSlot2))
|
||||
|
||||
+41
-45
@@ -239,20 +239,20 @@ BOOLEAN HandleCheckForBadChangeToGetThrough( SOLDIERTYPE *pSoldier, SOLDIERTYPE
|
||||
|
||||
INT32 HandleItem( SOLDIERTYPE *pSoldier, INT32 sGridNo, INT8 bLevel, UINT16 usHandItem, BOOLEAN fFromUI )
|
||||
{
|
||||
SOLDIERTYPE *pTargetSoldier = NULL;
|
||||
UINT16 usSoldierIndex;
|
||||
INT32 sTargetGridNo;
|
||||
INT16 sAPCost;
|
||||
INT32 sActionGridNo;
|
||||
UINT8 ubDirection = 0;
|
||||
INT32 sAdjustedGridNo;
|
||||
BOOLEAN fDropBomb = FALSE;
|
||||
BOOLEAN fAddingTurningCost = FALSE;
|
||||
BOOLEAN fAddingRaiseGunCost = FALSE;
|
||||
LEVELNODE *pIntNode;
|
||||
STRUCTURE *pStructure;
|
||||
UINT16 usRaiseGunCost = 0;
|
||||
UINT16 usTurningCost = 0;
|
||||
SOLDIERTYPE *pTargetSoldier = NULL;
|
||||
SoldierID usSoldierIndex;
|
||||
INT32 sTargetGridNo;
|
||||
INT16 sAPCost;
|
||||
INT32 sActionGridNo;
|
||||
UINT8 ubDirection = 0;
|
||||
INT32 sAdjustedGridNo;
|
||||
BOOLEAN fDropBomb = FALSE;
|
||||
BOOLEAN fAddingTurningCost = FALSE;
|
||||
BOOLEAN fAddingRaiseGunCost = FALSE;
|
||||
LEVELNODE *pIntNode;
|
||||
STRUCTURE *pStructure;
|
||||
UINT16 usRaiseGunCost = 0;
|
||||
UINT16 usTurningCost = 0;
|
||||
|
||||
//shadooow: automatically close EDB when opened and trying to use any weapon or action
|
||||
if (gfInItemDescBox)
|
||||
@@ -277,7 +277,7 @@ INT32 HandleItem( SOLDIERTYPE *pSoldier, INT32 sGridNo, INT8 bLevel, UINT16 usHa
|
||||
//if ( FindSoldier( sGridNo, &usSoldierIndex, &uiMercFlags, FIND_SOLDIER_GRIDNO ) )
|
||||
if ( ( usSoldierIndex = WhoIsThere2( sGridNo, bLevel ) ) != NOBODY )
|
||||
{
|
||||
pTargetSoldier = MercPtrs[ usSoldierIndex ];
|
||||
pTargetSoldier = usSoldierIndex;
|
||||
|
||||
// anv: don't try to heal interactive spots
|
||||
if (fFromUI && Item[usHandItem].usItemClass != IC_MEDKIT)
|
||||
@@ -1394,11 +1394,11 @@ INT32 HandleItem( SOLDIERTYPE *pSoldier, INT32 sGridNo, INT8 bLevel, UINT16 usHa
|
||||
}
|
||||
}
|
||||
|
||||
UINT16 ubPerson = WhoIsThere2(usMapPos, pSoldier->pathing.bLevel);
|
||||
SoldierID ubPerson = WhoIsThere2(usMapPos, pSoldier->pathing.bLevel);
|
||||
|
||||
// Flugente: apply misc items to other soldiers
|
||||
// sevenfm: check that target soldier is visible
|
||||
if (ItemCanBeAppliedToOthers(usHandItem) && ubPerson != NOBODY && MercPtrs[ubPerson] && MercPtrs[ubPerson]->bVisible != 0)
|
||||
if (ItemCanBeAppliedToOthers(usHandItem) && ubPerson != NOBODY && ubPerson->bVisible != 0)
|
||||
{
|
||||
// ATE: AI CANNOT GO THROUGH HERE!
|
||||
BOOLEAN fHadToUseCursorPos = FALSE;
|
||||
@@ -4292,9 +4292,8 @@ BOOLEAN DrawItemPoolList( ITEM_POOL *pItemPool, INT32 sGridNo, UINT8 bCommand, I
|
||||
if (gGameExternalOptions.gfShowBackpackOwner &&
|
||||
Item[gWorldItems[pItemPool->iItemIndex].object.usItem].usItemClass == IC_LBEGEAR &&
|
||||
LoadBearingEquipment[Item[gWorldItems[pItemPool->iItemIndex].object.usItem].ubClassIndex].lbeClass == BACKPACK &&
|
||||
gWorldItems[pItemPool->iItemIndex].soldierID != NOBODY &&
|
||||
MercPtrs[gWorldItems[pItemPool->iItemIndex].soldierID])
|
||||
swprintf(pStr, L"%s (%d) (%s)", ShortItemNames[gWorldItems[pTempItemPool->iItemIndex].object.usItem], gWorldItems[pTempItemPool->iItemIndex].object.ubNumberOfObjects, MercPtrs[gWorldItems[pItemPool->iItemIndex].soldierID]->GetName());
|
||||
gWorldItems[pItemPool->iItemIndex].soldierID != NOBODY)
|
||||
swprintf(pStr, L"%s (%d) (%s)", ShortItemNames[gWorldItems[pTempItemPool->iItemIndex].object.usItem], gWorldItems[pTempItemPool->iItemIndex].object.ubNumberOfObjects, gWorldItems[pItemPool->iItemIndex].soldierID->GetName());
|
||||
else
|
||||
swprintf( pStr, L"%s (%d)", ShortItemNames[ gWorldItems[ pTempItemPool->iItemIndex ].object.usItem ], gWorldItems[ pTempItemPool->iItemIndex ].object.ubNumberOfObjects );
|
||||
}
|
||||
@@ -4303,9 +4302,8 @@ BOOLEAN DrawItemPoolList( ITEM_POOL *pItemPool, INT32 sGridNo, UINT8 bCommand, I
|
||||
if (gGameExternalOptions.gfShowBackpackOwner &&
|
||||
Item[gWorldItems[pItemPool->iItemIndex].object.usItem].usItemClass == IC_LBEGEAR &&
|
||||
LoadBearingEquipment[Item[gWorldItems[pItemPool->iItemIndex].object.usItem].ubClassIndex].lbeClass == BACKPACK &&
|
||||
gWorldItems[pItemPool->iItemIndex].soldierID != NOBODY &&
|
||||
MercPtrs[gWorldItems[pItemPool->iItemIndex].soldierID])
|
||||
swprintf(pStr, L"%s (%s)", ShortItemNames[gWorldItems[pTempItemPool->iItemIndex].object.usItem], MercPtrs[gWorldItems[pItemPool->iItemIndex].soldierID]->GetName());
|
||||
gWorldItems[pItemPool->iItemIndex].soldierID != NOBODY)
|
||||
swprintf(pStr, L"%s (%s)", ShortItemNames[gWorldItems[pTempItemPool->iItemIndex].object.usItem], gWorldItems[pItemPool->iItemIndex].soldierID->GetName());
|
||||
else
|
||||
swprintf( pStr, L"%s", ShortItemNames[ gWorldItems[ pTempItemPool->iItemIndex ].object.usItem ] );
|
||||
}
|
||||
@@ -4413,9 +4411,8 @@ BOOLEAN DrawItemPoolList( ITEM_POOL *pItemPool, INT32 sGridNo, UINT8 bCommand, I
|
||||
if (gGameExternalOptions.gfShowBackpackOwner &&
|
||||
Item[gWorldItems[pItemPool->iItemIndex].object.usItem].usItemClass == IC_LBEGEAR &&
|
||||
LoadBearingEquipment[Item[gWorldItems[pItemPool->iItemIndex].object.usItem].ubClassIndex].lbeClass == BACKPACK &&
|
||||
gWorldItems[pItemPool->iItemIndex].soldierID != NOBODY &&
|
||||
MercPtrs[gWorldItems[pItemPool->iItemIndex].soldierID])
|
||||
swprintf(pStr, L"%s (%d) (%s)", ShortItemNames[gWorldItems[pItemPool->iItemIndex].object.usItem], gWorldItems[pItemPool->iItemIndex].object.ubNumberOfObjects, MercPtrs[gWorldItems[pItemPool->iItemIndex].soldierID]->GetName());
|
||||
gWorldItems[pItemPool->iItemIndex].soldierID != NOBODY)
|
||||
swprintf(pStr, L"%s (%d) (%s)", ShortItemNames[gWorldItems[pItemPool->iItemIndex].object.usItem], gWorldItems[pItemPool->iItemIndex].object.ubNumberOfObjects, gWorldItems[pItemPool->iItemIndex].soldierID->GetName());
|
||||
else
|
||||
swprintf( pStr, L"%s (%d)", ShortItemNames[ gWorldItems[ pItemPool->iItemIndex ].object.usItem ], gWorldItems[ pItemPool->iItemIndex ].object.ubNumberOfObjects );
|
||||
}
|
||||
@@ -4424,9 +4421,8 @@ BOOLEAN DrawItemPoolList( ITEM_POOL *pItemPool, INT32 sGridNo, UINT8 bCommand, I
|
||||
if (gGameExternalOptions.gfShowBackpackOwner &&
|
||||
Item[gWorldItems[pItemPool->iItemIndex].object.usItem].usItemClass == IC_LBEGEAR &&
|
||||
LoadBearingEquipment[Item[gWorldItems[pItemPool->iItemIndex].object.usItem].ubClassIndex].lbeClass == BACKPACK &&
|
||||
gWorldItems[pItemPool->iItemIndex].soldierID != NOBODY &&
|
||||
MercPtrs[gWorldItems[pItemPool->iItemIndex].soldierID])
|
||||
swprintf(pStr, L"%s (%s)", ShortItemNames[gWorldItems[pItemPool->iItemIndex].object.usItem], MercPtrs[gWorldItems[pItemPool->iItemIndex].soldierID]->GetName());
|
||||
gWorldItems[pItemPool->iItemIndex].soldierID != NOBODY)
|
||||
swprintf(pStr, L"%s (%s)", ShortItemNames[gWorldItems[pItemPool->iItemIndex].object.usItem], gWorldItems[pItemPool->iItemIndex].soldierID->GetName());
|
||||
else
|
||||
swprintf( pStr, L"%s", ShortItemNames[ gWorldItems[ pItemPool->iItemIndex ].object.usItem ] );
|
||||
}
|
||||
@@ -4814,12 +4810,12 @@ void RenderTopmostFlashingItems( )
|
||||
BOOLEAN VerifyGiveItem( SOLDIERTYPE *pSoldier, SOLDIERTYPE **ppTargetSoldier )
|
||||
{
|
||||
SOLDIERTYPE *pTSoldier;
|
||||
UINT16 usSoldierIndex;
|
||||
SoldierID usSoldierIndex;
|
||||
OBJECTTYPE *pObject;
|
||||
|
||||
INT32 sGridNo;
|
||||
UINT8 ubDirection;
|
||||
UINT16 ubTargetMercID;
|
||||
UINT8 ubDirection;
|
||||
SoldierID ubTargetMercID;
|
||||
|
||||
// DO SOME CHECKS IF WE CAN DO ANIMATION.....
|
||||
|
||||
@@ -4828,7 +4824,7 @@ BOOLEAN VerifyGiveItem( SOLDIERTYPE *pSoldier, SOLDIERTYPE **ppTargetSoldier )
|
||||
|
||||
sGridNo = pSoldier->aiData.sPendingActionData2;
|
||||
ubDirection = pSoldier->aiData.bPendingActionData3;
|
||||
ubTargetMercID = (UINT16)pSoldier->aiData.uiPendingActionData4;
|
||||
ubTargetMercID = static_cast<UINT16>( pSoldier->aiData.uiPendingActionData4 );
|
||||
|
||||
usSoldierIndex = WhoIsThere2( sGridNo, pSoldier->pathing.bLevel );
|
||||
|
||||
@@ -4864,7 +4860,7 @@ BOOLEAN VerifyGiveItem( SOLDIERTYPE *pSoldier, SOLDIERTYPE **ppTargetSoldier )
|
||||
|
||||
if ( ubTargetMercID != NOBODY )
|
||||
{
|
||||
MercPtrs[ ubTargetMercID ]->flags.uiStatusFlags &= (~SOLDIER_ENGAGEDINACTION );
|
||||
ubTargetMercID->flags.uiStatusFlags &= (~SOLDIER_ENGAGEDINACTION );
|
||||
}
|
||||
|
||||
OBJECTTYPE::DeleteMe( &pSoldier->pTempObject );
|
||||
@@ -5078,13 +5074,13 @@ void SoldierGiveItemFromAnimation( SOLDIERTYPE *pSoldier )
|
||||
|
||||
INT32 AdjustGridNoForItemPlacement( SOLDIERTYPE *pSoldier, INT32 sGridNo )
|
||||
{
|
||||
STRUCTURE *pStructure;
|
||||
INT16 sDesiredLevel;
|
||||
INT32 sActionGridNo;
|
||||
BOOLEAN fStructFound = FALSE;
|
||||
UINT8 ubDirection;
|
||||
INT32 sAdjustedGridNo;
|
||||
UINT16 ubTargetID;
|
||||
STRUCTURE *pStructure;
|
||||
INT16 sDesiredLevel;
|
||||
INT32 sActionGridNo;
|
||||
BOOLEAN fStructFound = FALSE;
|
||||
UINT8 ubDirection;
|
||||
INT32 sAdjustedGridNo;
|
||||
SoldierID ubTargetID;
|
||||
|
||||
|
||||
sActionGridNo = sGridNo;
|
||||
@@ -9405,11 +9401,11 @@ void DoInteractiveAction( INT32 sGridNo, SOLDIERTYPE *pSoldier )
|
||||
|
||||
// handle the default result of an interactive action
|
||||
// This is called either if no lua action id is set, or by lua if this should happen as a supplement to whatever lua does
|
||||
void DoInteractiveActionDefaultResult( INT32 sGridNo, UINT16 ubID, BOOLEAN aSuccess )
|
||||
void DoInteractiveActionDefaultResult( INT32 sGridNo, SoldierID ubID, BOOLEAN aSuccess )
|
||||
{
|
||||
SOLDIERTYPE* pSoldier = NULL;
|
||||
if ( ubID != NOBODY )
|
||||
pSoldier = MercPtrs[ubID];
|
||||
pSoldier = ubID;
|
||||
|
||||
// we need a valid soldier and a valid object
|
||||
if ( !pSoldier )
|
||||
@@ -10457,9 +10453,9 @@ void TakePhoto(SOLDIERTYPE* pSoldier, INT32 sGridNo, INT8 bLevel )
|
||||
InARoom( newgridno, &room );
|
||||
|
||||
// check if there is someone here
|
||||
UINT16 ubid = WhoIsThere2( newgridno, bLevel );
|
||||
SoldierID ubid = WhoIsThere2( newgridno, bLevel );
|
||||
|
||||
LuaAddPhotoData( gWorldSectorX, gWorldSectorY, gbWorldSectorZ, newgridno, bLevel, pSoldier->ubProfile, room, ( ubid == NOBODY ) ? NO_PROFILE : MercPtrs[ubid]->ubProfile );
|
||||
LuaAddPhotoData( gWorldSectorX, gWorldSectorY, gbWorldSectorZ, newgridno, bLevel, pSoldier->ubProfile, room, ( ubid == NOBODY ) ? NO_PROFILE : ubid->ubProfile );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -329,7 +329,7 @@ extern ITEM_POOL *gpItemPool;//dnl ch26 210909
|
||||
|
||||
// Flugente: interactive actions
|
||||
void DoInteractiveAction( INT32 sGridNo, SOLDIERTYPE *pSoldier );
|
||||
void DoInteractiveActionDefaultResult( INT32 sGridNo, UINT16 ubID, BOOLEAN aSuccess );
|
||||
void DoInteractiveActionDefaultResult( INT32 sGridNo, SoldierID ubID, BOOLEAN aSuccess );
|
||||
BOOLEAN SpendMoney( SOLDIERTYPE *pSoldier, UINT32 aAmount ); // character spends money - either from inventory or the account
|
||||
|
||||
// Flugente: intel
|
||||
|
||||
+25
-25
@@ -429,41 +429,41 @@ INT16 guiCreateBadGuyIndex = 8;
|
||||
|
||||
// FLAGS
|
||||
// These flags are set for a single frame execution and then are reset for the next iteration.
|
||||
BOOLEAN gfUIDisplayActionPoints = FALSE;
|
||||
BOOLEAN gfUIDisplayActionPoints = FALSE;
|
||||
BOOLEAN gfUIDisplayActionPointsInvalid = FALSE;
|
||||
BOOLEAN gfUIDisplayActionPointsBlack = FALSE;
|
||||
BOOLEAN gfUIDisplayActionPointsCenter = FALSE;
|
||||
BOOLEAN gfUIDisplayActionPointsCenter = FALSE;
|
||||
|
||||
INT16 gUIDisplayActionPointsOffY = 0;
|
||||
INT16 gUIDisplayActionPointsOffX = 0;
|
||||
BOOLEAN gfUIDoNotHighlightSelMerc = FALSE;
|
||||
BOOLEAN gfUIHandleSelection = FALSE;
|
||||
BOOLEAN gfUIHandleSelectionAboveGuy = FALSE;
|
||||
BOOLEAN gfUIInDeadlock = FALSE;
|
||||
UINT16 gUIDeadlockedSoldier = NOBODY;
|
||||
BOOLEAN gfUIHandleShowMoveGrid = FALSE;
|
||||
INT16 gUIDisplayActionPointsOffY = 0;
|
||||
INT16 gUIDisplayActionPointsOffX = 0;
|
||||
BOOLEAN gfUIDoNotHighlightSelMerc = FALSE;
|
||||
BOOLEAN gfUIHandleSelection = FALSE;
|
||||
BOOLEAN gfUIHandleSelectionAboveGuy = FALSE;
|
||||
BOOLEAN gfUIInDeadlock = FALSE;
|
||||
UINT16 gUIDeadlockedSoldier = NOBODY;
|
||||
BOOLEAN gfUIHandleShowMoveGrid = FALSE;
|
||||
INT32 gsUIHandleShowMoveGridLocation = NOWHERE ;
|
||||
BOOLEAN gfUIOverItemPool = FALSE;
|
||||
INT32 gfUIOverItemPoolGridNo = 0;
|
||||
INT16 gsCurrentActionPoints = 1;
|
||||
BOOLEAN gfUIHandlePhysicsTrajectory = FALSE;
|
||||
BOOLEAN gfUIMouseOnValidCatcher = FALSE;
|
||||
UINT16 gubUIValidCatcherID = 0;
|
||||
BOOLEAN gfUIOverItemPool = FALSE;
|
||||
INT32 gfUIOverItemPoolGridNo = 0;
|
||||
INT16 gsCurrentActionPoints = 1;
|
||||
BOOLEAN gfUIHandlePhysicsTrajectory = FALSE;
|
||||
BOOLEAN gfUIMouseOnValidCatcher = FALSE;
|
||||
SoldierID gubUIValidCatcherID = NOBODY;
|
||||
|
||||
|
||||
|
||||
BOOLEAN gfUIConfirmExitArrows = FALSE;
|
||||
BOOLEAN gfUIConfirmExitArrows = FALSE;
|
||||
|
||||
BOOLEAN gfUIShowCurIntTile = FALSE;
|
||||
BOOLEAN gfUIShowCurIntTile = FALSE;
|
||||
|
||||
BOOLEAN gfUIWaitingForUserSpeechAdvance = FALSE; // Waiting for key input/mouse click to advance speech
|
||||
BOOLEAN gfUIKeyCheatModeOn = FALSE; // Sets cool cheat keys on
|
||||
BOOLEAN gfUIAllMoveOn = FALSE; // Sets to all move
|
||||
BOOLEAN gfUICanBeginAllMoveCycle = FALSE; // GEts set so we know that the next right-click is a move-call inc\stead of a movement cycle through
|
||||
BOOLEAN gfUIWaitingForUserSpeechAdvance = FALSE; // Waiting for key input/mouse click to advance speech
|
||||
BOOLEAN gfUIKeyCheatModeOn = FALSE; // Sets cool cheat keys on
|
||||
BOOLEAN gfUIAllMoveOn = FALSE; // Sets to all move
|
||||
BOOLEAN gfUICanBeginAllMoveCycle = FALSE; // GEts set so we know that the next right-click is a move-call inc\stead of a movement cycle through
|
||||
|
||||
INT32 gsSelectedGridNo = 0;
|
||||
INT16 gsSelectedLevel = I_GROUND_LEVEL;
|
||||
INT16 gsSelectedGuy = NOBODY;
|
||||
INT32 gsSelectedGridNo = 0;
|
||||
INT16 gsSelectedLevel = I_GROUND_LEVEL;
|
||||
INT16 gsSelectedGuy = NOBODY;
|
||||
|
||||
BOOLEAN gfUIDisplayDamage = FALSE;
|
||||
INT8 gbDamage = 0;
|
||||
|
||||
@@ -181,7 +181,7 @@ extern UI_EVENT gEvents[ NUM_UI_EVENTS ];
|
||||
extern UI_MODE gCurrentUIMode;
|
||||
extern UI_MODE gOldUIMode;
|
||||
extern UINT32 guiCurrentEvent;
|
||||
extern INT16 gsSelectedLevel;
|
||||
extern INT16 gsSelectedLevel;
|
||||
extern BOOLEAN gfPlotNewMovement;
|
||||
extern UINT32 guiPendingOverrideEvent;
|
||||
|
||||
@@ -191,34 +191,34 @@ extern BOOLEAN gfUIDisplayActionPoints;
|
||||
extern BOOLEAN gfUIDisplayActionPointsInvalid;
|
||||
extern BOOLEAN gfUIDisplayActionPointsBlack;
|
||||
extern BOOLEAN gfUIDisplayActionPointsCenter;
|
||||
extern INT16 gUIDisplayActionPointsOffY;
|
||||
extern INT16 gUIDisplayActionPointsOffX;
|
||||
extern INT16 gUIDisplayActionPointsOffY;
|
||||
extern INT16 gUIDisplayActionPointsOffX;
|
||||
extern BOOLEAN gfUIDoNotHighlightSelMerc;
|
||||
extern UINT32 guiShowUPDownArrows;
|
||||
extern BOOLEAN gfUIHandleSelection;
|
||||
extern BOOLEAN gfUIHandleSelectionAboveGuy;
|
||||
extern INT32 gsSelectedGridNo;
|
||||
extern INT16 gsSelectedGuy;
|
||||
extern INT32 gsSelectedGridNo;
|
||||
extern INT16 gsSelectedGuy;
|
||||
extern BOOLEAN gfUIInDeadlock;
|
||||
extern UINT16 gUIDeadlockedSoldier;
|
||||
|
||||
extern BOOLEAN gfUIMouseOnValidCatcher;
|
||||
extern UINT16 gubUIValidCatcherID;
|
||||
extern SoldierID gubUIValidCatcherID;
|
||||
extern BOOLEAN gUIUseReverse;
|
||||
|
||||
|
||||
extern BOOLEAN gfUIHandleShowMoveGrid;
|
||||
extern INT32 gsUIHandleShowMoveGridLocation;
|
||||
extern INT32 gsUIHandleShowMoveGridLocation;
|
||||
|
||||
extern BOOLEAN gfUIDisplayDamage;
|
||||
extern INT8 gbDamage;
|
||||
extern INT32 gsDamageGridNo;
|
||||
extern INT32 gsDamageGridNo;
|
||||
|
||||
extern BOOLEAN gfFontPopupDo;
|
||||
|
||||
extern BOOLEAN gUITargetReady;
|
||||
extern BOOLEAN gUITargetShotWaiting;
|
||||
extern INT32 gsUITargetShotGridNo;
|
||||
extern INT32 gsUITargetShotGridNo;
|
||||
|
||||
extern CHAR16 gzLocation[ 20 ];
|
||||
extern BOOLEAN gfUIBodyHitLocation;
|
||||
|
||||
@@ -3548,7 +3548,7 @@ void DegradeNewlyAddedItems( )
|
||||
// GET SOLDIER
|
||||
if ( gTeamPanel[ cnt2 ].fOccupied )
|
||||
{
|
||||
pSoldier = MercPtrs[ gTeamPanel[ cnt2 ].ubID ];
|
||||
pSoldier = gTeamPanel[ cnt2 ].ubID;
|
||||
|
||||
UINT32 invsize = pSoldier->inv.size();
|
||||
for ( UINT32 cnt = 0; cnt < invsize; ++cnt )
|
||||
@@ -4434,7 +4434,7 @@ void INVRenderSteeringWheel( UINT32 uiBuffer, UINT32 uiSteeringWheelIndex, SOLDI
|
||||
return;
|
||||
}
|
||||
|
||||
pVehicle = GetSoldierStructureForVehicle ( MercPtrs[ pSoldier->ubID ]->iVehicleId );
|
||||
pVehicle = GetSoldierStructureForVehicle ( pSoldier->ubID->iVehicleId );
|
||||
|
||||
if ( pVehicle == NULL )
|
||||
{
|
||||
@@ -8796,11 +8796,11 @@ void DrawItemTileCursor( )
|
||||
/*CHRISL: For some reason it's possible that gpItemPointerSoldier is not correctly set when we come into this function, but we require it to be set for
|
||||
this function to work. So for now, let's set it using gusUIFullTargetID.*/
|
||||
if(gpItemPointerSoldier->exists() == false)
|
||||
gpItemPointerSoldier = MercPtrs[ gusUIFullTargetID ];
|
||||
gpItemPointerSoldier = gusUIFullTargetID;
|
||||
if ( gfUIFullTargetFound )
|
||||
{
|
||||
// Force mouse position to guy...
|
||||
usMapPos = MercPtrs[ gusUIFullTargetID ]->sGridNo;
|
||||
usMapPos = gusUIFullTargetID->sGridNo;
|
||||
}
|
||||
|
||||
gusCurMousePos = usMapPos;
|
||||
@@ -8871,7 +8871,7 @@ void DrawItemTileCursor( )
|
||||
if ( gfUIFullTargetFound )
|
||||
{
|
||||
// Get soldier
|
||||
pSoldier = MercPtrs[ gusUIFullTargetID ];
|
||||
pSoldier = gusUIFullTargetID;
|
||||
|
||||
// Are they on our team?
|
||||
// ATE: Can't be an EPC
|
||||
@@ -8881,7 +8881,7 @@ void DrawItemTileCursor( )
|
||||
{
|
||||
// OK, on a valid pass
|
||||
gfUIMouseOnValidCatcher = 4;
|
||||
gubUIValidCatcherID = gusUIFullTargetID;
|
||||
gubUIValidCatcherID = gusUIFullTargetID;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -8890,7 +8890,7 @@ void DrawItemTileCursor( )
|
||||
{
|
||||
// OK, set global that this buddy can see catch...
|
||||
gfUIMouseOnValidCatcher = TRUE;
|
||||
gubUIValidCatcherID = gusUIFullTargetID;
|
||||
gubUIValidCatcherID = gusUIFullTargetID;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -8927,7 +8927,7 @@ void DrawItemTileCursor( )
|
||||
gubUIValidCatcherID = gusUIFullTargetID;
|
||||
|
||||
// If this is a robot, change to say 'reload'
|
||||
if ( MercPtrs[ gusUIFullTargetID ]->flags.uiStatusFlags & SOLDIER_ROBOT )
|
||||
if ( gusUIFullTargetID->flags.uiStatusFlags & SOLDIER_ROBOT )
|
||||
{
|
||||
gfUIMouseOnValidCatcher = 3;
|
||||
}
|
||||
@@ -8947,9 +8947,9 @@ void DrawItemTileCursor( )
|
||||
|
||||
|
||||
// Get AP cost
|
||||
if ( MercPtrs[ gusUIFullTargetID ]->flags.uiStatusFlags & SOLDIER_ROBOT )
|
||||
if ( gusUIFullTargetID->flags.uiStatusFlags & SOLDIER_ROBOT )
|
||||
{
|
||||
sAPCost = GetAPsToReloadRobot( gpItemPointerSoldier, MercPtrs[ gusUIFullTargetID ] );
|
||||
sAPCost = GetAPsToReloadRobot( gpItemPointerSoldier, gusUIFullTargetID );
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -9011,7 +9011,7 @@ void DrawItemTileCursor( )
|
||||
{
|
||||
if ( gfUIMouseOnValidCatcher )
|
||||
{
|
||||
switch( gAnimControl[ MercPtrs[ gubUIValidCatcherID ]->usAnimState ].ubHeight )
|
||||
switch( gAnimControl[ gubUIValidCatcherID->usAnimState ].ubHeight )
|
||||
{
|
||||
case ANIM_STAND:
|
||||
|
||||
@@ -9029,7 +9029,7 @@ void DrawItemTileCursor( )
|
||||
break;
|
||||
}
|
||||
|
||||
if ( MercPtrs[ gubUIValidCatcherID ]->pathing.bLevel > 0 )
|
||||
if ( gubUIValidCatcherID->pathing.bLevel > 0 )
|
||||
{
|
||||
sEndZ = 0;
|
||||
}
|
||||
@@ -9135,9 +9135,9 @@ BOOLEAN HandleItemPointerClick( INT32 usMapPos )
|
||||
if ( gfUIFullTargetFound )
|
||||
{
|
||||
// Force mouse position to guy...
|
||||
usMapPos = MercPtrs[ gusUIFullTargetID ]->sGridNo;
|
||||
usMapPos = gusUIFullTargetID->sGridNo;
|
||||
|
||||
if ( gAnimControl[ MercPtrs[ gusUIFullTargetID ]->usAnimState ].uiFlags & ANIM_MOVING )
|
||||
if ( gAnimControl[ gusUIFullTargetID->usAnimState ].uiFlags & ANIM_MOVING )
|
||||
{
|
||||
return( FALSE );
|
||||
}
|
||||
@@ -9380,14 +9380,14 @@ BOOLEAN HandleItemPointerClick( INT32 usMapPos )
|
||||
sGridNo = usMapPos;
|
||||
|
||||
// Kaiden: Vehicle Inventory change - Commented the following If test:
|
||||
//if ( sDist <= PASSING_ITEM_DISTANCE_OKLIFE && gfUIFullTargetFound && MercPtrs[ gusUIFullTargetID ]->bTeam == gbPlayerNum && !AM_AN_EPC( MercPtrs[ gusUIFullTargetID ] ) && !( MercPtrs[ gusUIFullTargetID ]->flags.uiStatusFlags & SOLDIER_VEHICLE ) )
|
||||
//if ( sDist <= PASSING_ITEM_DISTANCE_OKLIFE && gfUIFullTargetFound && gusUIFullTargetID->bTeam == gbPlayerNum && !AM_AN_EPC( gusUIFullTargetID ) && !( gusUIFullTargetID->flags.uiStatusFlags & SOLDIER_VEHICLE ) )
|
||||
|
||||
// And added this one instead:
|
||||
if ( ( sDist <= PASSING_ITEM_DISTANCE_OKLIFE && gfUIFullTargetFound && MercPtrs[ gusUIFullTargetID ]->bTeam == gbPlayerNum && !AM_AN_EPC( MercPtrs[ gusUIFullTargetID ] ) ) && !( (!gGameExternalOptions.fVehicleInventory) && (MercPtrs[ gusUIFullTargetID ]->flags.uiStatusFlags & SOLDIER_VEHICLE) ) )
|
||||
if ( ( sDist <= PASSING_ITEM_DISTANCE_OKLIFE && gfUIFullTargetFound && gusUIFullTargetID->bTeam == gbPlayerNum && !AM_AN_EPC( gusUIFullTargetID ) ) && !( (!gGameExternalOptions.fVehicleInventory) && (gusUIFullTargetID->flags.uiStatusFlags & SOLDIER_VEHICLE) ) )
|
||||
{
|
||||
// OK, do the transfer...
|
||||
{
|
||||
pSoldier = MercPtrs[ gusUIFullTargetID ];
|
||||
pSoldier = gusUIFullTargetID;
|
||||
|
||||
{
|
||||
// Change to inventory....
|
||||
@@ -9489,7 +9489,7 @@ BOOLEAN HandleItemPointerClick( INT32 usMapPos )
|
||||
// IF OVER OUR GUY...
|
||||
if ( gfUIFullTargetFound )
|
||||
{
|
||||
pSoldier = MercPtrs[ gusUIFullTargetID ];
|
||||
pSoldier = gusUIFullTargetID;
|
||||
|
||||
// Kaiden: Vehicle Inventory change - Commented the following If Test:
|
||||
//if ( pSoldier->bTeam == gbPlayerNum && pSoldier->stats.bLife >= OKLIFE && !AM_AN_EPC( pSoldier ) && !( pSoldier->flags.uiStatusFlags & SOLDIER_VEHICLE ) )
|
||||
@@ -11483,9 +11483,9 @@ void RenderItemPickupMenu( )
|
||||
Item[gWorldItems[gItemPickupMenu.ItemPoolSlots[cnt]->iItemIndex].object.usItem].usItemClass == IC_LBEGEAR &&
|
||||
LoadBearingEquipment[Item[gWorldItems[gItemPickupMenu.ItemPoolSlots[cnt]->iItemIndex].object.usItem].ubClassIndex].lbeClass == BACKPACK &&
|
||||
gWorldItems[gItemPickupMenu.ItemPoolSlots[cnt]->iItemIndex].soldierID != NOBODY &&
|
||||
MercPtrs[gWorldItems[gItemPickupMenu.ItemPoolSlots[cnt]->iItemIndex].soldierID])
|
||||
gWorldItems[gItemPickupMenu.ItemPoolSlots[cnt]->iItemIndex].soldierID)
|
||||
//swprintf(pStr, L"%s (%s)", ShortItemNames[pObject->usItem], MercPtrs[gWorldItems[gItemPickupMenu.ItemPoolSlots[cnt]->iItemIndex].soldierID]->GetName());
|
||||
swprintf(pStr, L"(%s)", MercPtrs[gWorldItems[gItemPickupMenu.ItemPoolSlots[cnt]->iItemIndex].soldierID]->GetName());
|
||||
swprintf(pStr, L"(%s)", gWorldItems[gItemPickupMenu.ItemPoolSlots[cnt]->iItemIndex].soldierID->GetName());
|
||||
else
|
||||
swprintf( pStr, L"%s", ShortItemNames[ pObject->usItem ] );
|
||||
}
|
||||
@@ -12757,7 +12757,7 @@ BOOLEAN LoadItemCursorFromSavedGame( HWFILE hFile )
|
||||
}
|
||||
else
|
||||
{
|
||||
gpItemPointerSoldier = MercPtrs[ SaveStruct.ubSoldierID ];
|
||||
gpItemPointerSoldier = SaveStruct.ubSoldierID;
|
||||
}
|
||||
|
||||
// Inv slot
|
||||
|
||||
@@ -166,7 +166,7 @@ public:
|
||||
BOOLEAN Save(HWFILE hFile);
|
||||
BOOLEAN Load(HWFILE hFile);
|
||||
|
||||
UINT16 ubSoldierID;
|
||||
SoldierID ubSoldierID;
|
||||
UINT8 ubInvSlot;
|
||||
BOOLEAN fCursorActive;
|
||||
OBJECTTYPE ItemPointerInfo;
|
||||
|
||||
@@ -569,7 +569,7 @@ void UpdateSelectedSoldier( UINT16 usSoldierID, BOOLEAN fSelect );
|
||||
|
||||
void CheckForFacePanelStartAnims( SOLDIERTYPE *pSoldier, INT16 sPanelX, INT16 sPanelY );
|
||||
void HandleSoldierFaceFlash( SOLDIERTYPE *pSoldier, INT16 sFaceX, INT16 sFaceY );
|
||||
BOOLEAN PlayerExistsInSlot( UINT16 ubID );
|
||||
BOOLEAN PlayerExistsInSlot( SoldierID ubID );
|
||||
void UpdateStatColor( UINT32 uiTimer, BOOLEAN fIncrease, BOOLEAN fDamaged, BOOLEAN fAugmented ); // SANDRO - added argument // Flugente - me too
|
||||
|
||||
extern void UpdateItemHatches();
|
||||
@@ -6812,7 +6812,7 @@ void TMClickSecondHandInvCallback( MOUSE_REGION * pRegion, INT32 iReason )
|
||||
}
|
||||
|
||||
|
||||
BOOLEAN PlayerExistsInSlot( UINT16 ubID )
|
||||
BOOLEAN PlayerExistsInSlot( SoldierID ubID )
|
||||
{
|
||||
INT32 cnt;
|
||||
|
||||
@@ -6870,17 +6870,17 @@ BOOLEAN RemovePlayerFromTeamSlotGivenMercID( UINT16 ubMercID )
|
||||
}
|
||||
|
||||
|
||||
void AddPlayerToInterfaceTeamSlot( UINT16 ubID )
|
||||
void AddPlayerToInterfaceTeamSlot( SoldierID ubID )
|
||||
{
|
||||
INT32 cnt;
|
||||
|
||||
// If we are a vehicle don't ever add.....
|
||||
if ( MercPtrs[ ubID ]->flags.uiStatusFlags & SOLDIER_VEHICLE )
|
||||
if ( ubID->flags.uiStatusFlags & SOLDIER_VEHICLE )
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if ( !( MercPtrs[ ubID ]->flags.uiStatusFlags & ( SOLDIER_DRIVER | SOLDIER_PASSENGER ) ) )
|
||||
if ( !( ubID->flags.uiStatusFlags & ( SOLDIER_DRIVER | SOLDIER_PASSENGER ) ) )
|
||||
{
|
||||
if ( !PlayerExistsInSlot( ubID ) )
|
||||
{
|
||||
@@ -6899,7 +6899,7 @@ void AddPlayerToInterfaceTeamSlot( UINT16 ubID )
|
||||
fInterfacePanelDirty = DIRTYLEVEL2;
|
||||
|
||||
// Set ID to do open anim
|
||||
MercPtrs[ ubID ]->flags.fUInewMerc = TRUE;
|
||||
ubID->flags.fUInewMerc = TRUE;
|
||||
|
||||
break;
|
||||
}
|
||||
@@ -6909,14 +6909,14 @@ void AddPlayerToInterfaceTeamSlot( UINT16 ubID )
|
||||
else
|
||||
{
|
||||
// anv: for passengers, position on team panel will be linked with seat in vehicle
|
||||
if ( MercPtrs[ ubID ]->flags.uiStatusFlags & ( SOLDIER_DRIVER | SOLDIER_PASSENGER ) )
|
||||
if ( ubID->flags.uiStatusFlags & ( SOLDIER_DRIVER | SOLDIER_PASSENGER ) )
|
||||
{
|
||||
SOLDIERTYPE *pVehicle = GetSoldierStructureForVehicle( MercPtrs[ ubID ]->iVehicleId );
|
||||
SOLDIERTYPE *pVehicle = GetSoldierStructureForVehicle( ubID->iVehicleId );
|
||||
if( pVehicle != NULL )
|
||||
{
|
||||
for( UINT8 iCounter = 0; iCounter < gNewVehicle[ pVehicleList[ MercPtrs[ ubID ]->iVehicleId ].ubVehicleType ].iNewSeatingCapacities; iCounter++ )
|
||||
for( UINT8 iCounter = 0; iCounter < gNewVehicle[ pVehicleList[ ubID->iVehicleId ].ubVehicleType ].iNewSeatingCapacities; iCounter++ )
|
||||
{
|
||||
SOLDIERTYPE *pPassenger = pVehicleList[ MercPtrs[ ubID ]->iVehicleId ].pPassengers[ iCounter ];
|
||||
SOLDIERTYPE *pPassenger = pVehicleList[ ubID->iVehicleId ].pPassengers[ iCounter ];
|
||||
if( pPassenger != NULL && pPassenger->ubID == ubID )
|
||||
{
|
||||
gTeamPanel[ iCounter ].fOccupied = TRUE;
|
||||
@@ -6929,7 +6929,7 @@ void AddPlayerToInterfaceTeamSlot( UINT16 ubID )
|
||||
fInterfacePanelDirty = DIRTYLEVEL2;
|
||||
|
||||
// Set ID to do open anim
|
||||
MercPtrs[ ubID ]->flags.fUInewMerc = TRUE;
|
||||
ubID->flags.fUInewMerc = TRUE;
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -83,11 +83,11 @@ SoldierID GetSMPanelCurrentMerc( );
|
||||
void UpdateSMPanel( );
|
||||
|
||||
BOOLEAN InitTEAMSlots( );
|
||||
void AddPlayerToInterfaceTeamSlot( UINT16 ubID );
|
||||
void AddPlayerToInterfaceTeamSlot( SoldierID ubID );
|
||||
BOOLEAN RemovePlayerFromInterfaceTeamSlot( UINT8 ubID );
|
||||
BOOLEAN GetPlayerIDFromInterfaceTeamSlot( UINT8 ubPanelSlot, UINT16 * pubID );
|
||||
void RemoveAllPlayersFromSlot( );
|
||||
BOOLEAN PlayerExistsInSlot( UINT16 ubID );
|
||||
BOOLEAN PlayerExistsInSlot( SoldierID ubID );
|
||||
BOOLEAN RemovePlayerFromTeamSlotGivenMercID( UINT16 ubMercID );
|
||||
void CheckForAndAddMercToTeamPanel( SOLDIERTYPE *pSoldier );
|
||||
void CleanUpStack( OBJECTTYPE * pObj, OBJECTTYPE * pCursorObj );
|
||||
@@ -105,7 +105,7 @@ void InitOldInventorySystem( );
|
||||
// ATE TO BE MOVED TO INTERFACE_ITEMS.C
|
||||
extern INT8 gbNewItem[ NUM_INV_SLOTS ];
|
||||
extern INT8 gbNewItemCycle[ NUM_INV_SLOTS ];
|
||||
extern UINT8 gubNewItemMerc;
|
||||
extern UINT8 gubNewItemMerc;
|
||||
|
||||
void ShowRadioLocator( SoldierID ubID, UINT8 ubLocatorSpeed );
|
||||
void EndRadioLocator( UINT16 ubID );
|
||||
@@ -118,12 +118,12 @@ extern BOOLEAN gfDisableTacticalPanelButtons;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
UINT16 ubID;
|
||||
BOOLEAN fOccupied;
|
||||
SoldierID ubID;
|
||||
BOOLEAN fOccupied;
|
||||
|
||||
} TEAM_PANEL_SLOTS_TYPE;
|
||||
|
||||
extern TEAM_PANEL_SLOTS_TYPE gTeamPanel[ NUM_TEAM_SLOTS ];
|
||||
extern TEAM_PANEL_SLOTS_TYPE gTeamPanel[ NUM_TEAM_SLOTS ];
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#ifndef ITEM_TYPES_H
|
||||
#define ITEM_TYPES_H
|
||||
|
||||
#include "types.h"
|
||||
#include "Overhead Types.h"
|
||||
#include <vector>
|
||||
#include <list>
|
||||
// THE_BOB : added for pocket popup definitions
|
||||
@@ -408,15 +408,15 @@ namespace ObjectDataStructs {
|
||||
struct OBJECT_BOMBS_AND_OTHER
|
||||
{ // this is used by placed bombs, switches, and the action item
|
||||
INT16 bBombStatus; // % status
|
||||
INT8 bDetonatorType; // timed, remote, or pressure-activated
|
||||
INT8 bDetonatorType; // timed, remote, or pressure-activated
|
||||
UINT16 usBombItem; // the usItem of the bomb.
|
||||
union
|
||||
{
|
||||
INT8 bDelay; // >=0 values used only
|
||||
INT8 bFrequency; // >=0 values used only
|
||||
};
|
||||
UINT16 ubBombOwner; // side which placed the bomb
|
||||
UINT8 bActionValue; // this is used by the ACTION_ITEM fake item
|
||||
SoldierID ubBombOwner; // side which placed the bomb
|
||||
UINT8 bActionValue; // this is used by the ACTION_ITEM fake item
|
||||
union
|
||||
{
|
||||
UINT8 ubTolerance; // tolerance value for panic triggers
|
||||
|
||||
+4
-4
@@ -15287,10 +15287,10 @@ BOOLEAN ObjectIsExternalFeeder(SOLDIERTYPE* pSoldier, OBJECTTYPE * pObject)
|
||||
if ( !pSoldier || !pObject)
|
||||
return( FALSE );
|
||||
|
||||
UINT16 usSoldierFeedingTarget1 = 0;
|
||||
SoldierID usSoldierFeedingTarget1 = NOBODY;
|
||||
UINT16 usGunSlot1 = 0;
|
||||
UINT16 usAmmoSlot1 = 0;
|
||||
UINT16 usSoldierFeedingTarget2 = 0;
|
||||
SoldierID usSoldierFeedingTarget2 = NOBODY;
|
||||
UINT16 usGunSlot2 = 0;
|
||||
UINT16 usAmmoSlot2 = 0;
|
||||
if ( pSoldier->IsFeedingExternal(&usSoldierFeedingTarget1, &usGunSlot1, &usAmmoSlot1, &usSoldierFeedingTarget2, &usGunSlot2, &usAmmoSlot2) )
|
||||
@@ -15345,10 +15345,10 @@ OBJECTTYPE* GetExternalFeedingObject(SOLDIERTYPE* pSoldier, OBJECTTYPE * pObject
|
||||
continue;
|
||||
|
||||
// we check if that guy is feeding someone, and that someone is really us
|
||||
UINT16 usTeamSoldierFeedingTarget1 = 0;
|
||||
SoldierID usTeamSoldierFeedingTarget1 = NOBODY;
|
||||
UINT16 usGunSlot1 = 0;
|
||||
UINT16 usAmmoSlot1 = 0;
|
||||
UINT16 usTeamSoldierFeedingTarget2 = 0;
|
||||
SoldierID usTeamSoldierFeedingTarget2 = NOBODY;
|
||||
UINT16 usGunSlot2 = 0;
|
||||
UINT16 usAmmoSlot2 = 0;
|
||||
if ( pTeamSoldier->IsFeedingExternal(&usTeamSoldierFeedingTarget1, &usGunSlot1, &usAmmoSlot1, &usTeamSoldierFeedingTarget2, &usGunSlot2, &usAmmoSlot2) )
|
||||
|
||||
+1
-1
@@ -4390,7 +4390,7 @@ UINT8 SoldierToSoldierBodyPartChanceToGetThrough( SOLDIERTYPE * pStartSoldier, S
|
||||
return( ChanceToGetThrough( pStartSoldier, (FLOAT) sX, (FLOAT) sY, dEndZPos ) );
|
||||
}
|
||||
|
||||
UINT8 SoldierToLocationChanceToGetThrough( SOLDIERTYPE * pStartSoldier, INT32 sGridNo, INT8 bLevel, INT8 bCubeLevel, UINT16 ubTargetID )
|
||||
UINT8 SoldierToLocationChanceToGetThrough( SOLDIERTYPE * pStartSoldier, INT32 sGridNo, INT8 bLevel, INT8 bCubeLevel, SoldierID ubTargetID )
|
||||
{
|
||||
FLOAT dEndZPos;
|
||||
INT16 sXPos;
|
||||
|
||||
+2
-2
@@ -152,7 +152,7 @@ UINT8 SoldierToSoldierChanceToGetThrough( SOLDIERTYPE * pStartSoldier, SOLDIERTY
|
||||
UINT8 SoldierToSoldierBodyPartChanceToGetThrough( SOLDIERTYPE * pStartSoldier, SOLDIERTYPE * pEndSoldier, UINT8 ubAimLocation );
|
||||
UINT8 AISoldierToSoldierChanceToGetThrough( SOLDIERTYPE * pStartSoldier, SOLDIERTYPE * pEndSoldier );
|
||||
UINT8 AISoldierToLocationChanceToGetThrough( SOLDIERTYPE * pStartSoldier, INT32 sGridNo, INT8 bLevel, INT8 bCubeLevel );
|
||||
UINT8 SoldierToLocationChanceToGetThrough( SOLDIERTYPE * pStartSoldier, INT32 sGridNo, INT8 bLevel, INT8 bCubeLevel, UINT16 ubTargetID );
|
||||
UINT8 SoldierToLocationChanceToGetThrough( SOLDIERTYPE * pStartSoldier, INT32 sGridNo, INT8 bLevel, INT8 bCubeLevel, SoldierID ubTargetID );
|
||||
INT32 SoldierToLocationWindowTest( SOLDIERTYPE * pStartSoldier, INT32 sEndGridNo );
|
||||
// sevenfm: AI LOS functions
|
||||
INT32 LOS_Raised(SOLDIERTYPE * pStartSoldier, SOLDIERTYPE * pEndSoldier, int iTileSightLimit = CALC_FROM_ALL_DIRS, UINT8 ubAimLocation = LOS_POS);
|
||||
@@ -261,4 +261,4 @@ void DamageRiotShield( SOLDIERTYPE* pSoldier, INT32& rsDamage, INT32& rsSecondar
|
||||
extern INT8 GetStealth(SOLDIERTYPE* pSoldier);
|
||||
extern INT8 GetSightAdjustmentBasedOnLBE(SOLDIERTYPE* pSoldier);
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
+1
-1
@@ -128,7 +128,7 @@ struct TacticalStatusType
|
||||
BOOLEAN fCantGetThrough;
|
||||
INT32 sCantGetThroughGridNo;
|
||||
INT32 sCantGetThroughSoldierGridNo;
|
||||
UINT16 ubCantGetThroughID;
|
||||
SoldierID ubCantGetThroughID;
|
||||
BOOLEAN fDidGameJustStart;
|
||||
BOOLEAN fStatChangeCheatOn;
|
||||
UINT8 ubLastRequesterTargetID;
|
||||
|
||||
@@ -2285,14 +2285,13 @@ void SOLDIERTYPE::CalcNewActionPoints( void )
|
||||
|
||||
void SOLDIERTYPE::DoNinjaAttack( void )
|
||||
{
|
||||
//UINT32 uiMercFlags;
|
||||
UINT16 usSoldierIndex;
|
||||
SOLDIERTYPE *pTSoldier;
|
||||
UINT8 ubTDirection;
|
||||
UINT8 ubTargetStance;
|
||||
//UINT32 uiMercFlags;
|
||||
SOLDIERTYPE *pTSoldier;
|
||||
UINT8 ubTDirection;
|
||||
UINT8 ubTargetStance;
|
||||
|
||||
|
||||
usSoldierIndex = WhoIsThere2( this->sTargetGridNo, this->pathing.bLevel );
|
||||
SoldierID usSoldierIndex = WhoIsThere2( this->sTargetGridNo, this->pathing.bLevel );
|
||||
if ( usSoldierIndex != NOBODY )
|
||||
{
|
||||
GetSoldier( &pTSoldier, usSoldierIndex );
|
||||
@@ -9449,8 +9448,8 @@ void SOLDIERTYPE::BeginSoldierClimbUpRoof(void)
|
||||
return;//hayden disable climbing roof
|
||||
}
|
||||
|
||||
INT8 bNewDirection;
|
||||
UINT16 ubWhoIsThere;
|
||||
INT8 bNewDirection;
|
||||
SoldierID ubWhoIsThere;
|
||||
|
||||
if (FindHeigherLevel(this, this->sGridNo, this->ubDirection, &bNewDirection) && (this->pathing.bLevel == 0))
|
||||
{
|
||||
@@ -9623,8 +9622,8 @@ void SOLDIERTYPE::BeginSoldierClimbWindow( void )
|
||||
|
||||
void SOLDIERTYPE::BeginSoldierClimbWall( void )
|
||||
{
|
||||
INT8 bNewDirection;
|
||||
UINT16 ubWhoIsThere;
|
||||
INT8 bNewDirection;
|
||||
SoldierID ubWhoIsThere;
|
||||
|
||||
if ( FindWallJumpDirection( this, this->sGridNo, this->ubDirection, &bNewDirection ) && (this->pathing.bLevel == 0) )
|
||||
{
|
||||
@@ -9660,8 +9659,8 @@ void SOLDIERTYPE::BeginSoldierClimbWall( void )
|
||||
|
||||
void SOLDIERTYPE::BeginSoldierClimbWallUp( void )
|
||||
{
|
||||
INT8 bNewDirection;
|
||||
UINT16 ubWhoIsThere;
|
||||
INT8 bNewDirection;
|
||||
SoldierID ubWhoIsThere;
|
||||
|
||||
if ( FindLowerLevelWall( this, this->sGridNo, this->ubDirection, &bNewDirection ) && (this->pathing.bLevel > 0) )
|
||||
{
|
||||
@@ -11309,8 +11308,8 @@ BOOLEAN SOLDIERTYPE::CheckSoldierHitRoof( void )
|
||||
|
||||
void SOLDIERTYPE::BeginSoldierClimbDownRoof(void)
|
||||
{
|
||||
INT8 bNewDirection;
|
||||
UINT16 ubWhoIsThere;
|
||||
INT8 bNewDirection;
|
||||
SoldierID ubWhoIsThere;
|
||||
|
||||
if (FindLowerLevel(this, this->sGridNo, this->ubDirection, &bNewDirection) && (this->pathing.bLevel > 0))
|
||||
{
|
||||
@@ -12469,7 +12468,7 @@ void SOLDIERTYPE::EVENT_SoldierBeginBladeAttack( INT32 sGridNo, UINT8 ubDirectio
|
||||
{
|
||||
SOLDIERTYPE *pTSoldier;
|
||||
//UINT32 uiMercFlags;
|
||||
UINT16 usSoldierIndex;
|
||||
SoldierID usSoldierIndex;
|
||||
UINT8 ubTDirection;
|
||||
ROTTING_CORPSE *pCorpse;
|
||||
|
||||
@@ -12692,7 +12691,7 @@ void SOLDIERTYPE::EVENT_SoldierBeginPunchAttack( INT32 sGridNo, UINT8 ubDirectio
|
||||
BOOLEAN fMartialArtist = FALSE;
|
||||
SOLDIERTYPE *pTSoldier;
|
||||
//UINT32 uiMercFlags;
|
||||
UINT16 usSoldierIndex;
|
||||
SoldierID usSoldierIndex;
|
||||
UINT8 ubTDirection;
|
||||
UINT16 usItem;
|
||||
|
||||
@@ -15148,7 +15147,7 @@ void SOLDIERTYPE::InventoryExplosion( void )
|
||||
}
|
||||
|
||||
// Flugente: do we currently provide ammo (pAmmoSlot) for someone else's (pubId) gun (pGunSlot)?
|
||||
BOOLEAN SOLDIERTYPE::IsFeedingExternal( UINT16 * pubId1, UINT16* pGunSlot1, UINT16* pAmmoSlot1, UINT16 * pubId2, UINT16* pGunSlot2, UINT16* pAmmoSlot2 )
|
||||
BOOLEAN SOLDIERTYPE::IsFeedingExternal( SoldierID * pubId1, UINT16* pGunSlot1, UINT16* pAmmoSlot1, SoldierID * pubId2, UINT16* pGunSlot2, UINT16* pAmmoSlot2 )
|
||||
{
|
||||
// make sure we have to check this...
|
||||
if ( gGameExternalOptions.ubExternalFeeding == 0 )
|
||||
|
||||
@@ -1839,7 +1839,7 @@ public:
|
||||
void InventoryExplosion( void );
|
||||
|
||||
// Flugente: do we currently provide ammo (pAmmoSlot) for someone else's (pubId) gun (pGunSlot)?
|
||||
BOOLEAN IsFeedingExternal(UINT16 * pubId1, UINT16* pGunSlot1, UINT16* pAmmoSlot1, UINT16 * pubId2, UINT16* pGunSlot2, UINT16* pAmmoSlot2);
|
||||
BOOLEAN IsFeedingExternal(SoldierID * pubId1, UINT16* pGunSlot1, UINT16* pAmmoSlot1, SoldierID* pubId2, UINT16* pGunSlot2, UINT16* pAmmoSlot2);
|
||||
|
||||
// Flugente: return first found object with a specific flag from our inventory
|
||||
OBJECTTYPE* GetObjectWithFlag( UINT64 aFlag );
|
||||
|
||||
+15
-13
@@ -176,7 +176,7 @@ INT16 sVehicleInternalOrigArmorValues[ NUMBER_OF_TYPES_OF_VEHICLES ][ NUMBER_OF_
|
||||
|
||||
|
||||
// set the driver of the vehicle
|
||||
void SetDriver( INT32 iID, UINT16 ubID );
|
||||
void SetDriver( INT32 iID, SoldierID ubID );
|
||||
|
||||
//void RemoveSoldierFromVehicleBetweenSectors( pSoldier, iId );
|
||||
|
||||
@@ -1556,7 +1556,7 @@ SOLDIERTYPE *GetDriver( INT32 iID )
|
||||
INT32 iCounter;
|
||||
if( pVehicleList[ iID ].ubDriver != NOBODY )
|
||||
{
|
||||
return( MercPtrs[ pVehicleList[ iID ].ubDriver ] );
|
||||
return( pVehicleList[ iID ].ubDriver );
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1573,25 +1573,27 @@ SOLDIERTYPE *GetDriver( INT32 iID )
|
||||
}
|
||||
|
||||
|
||||
void SetDriver( INT32 iID, UINT16 ubID )
|
||||
void SetDriver( INT32 iID, SoldierID ubID )
|
||||
{
|
||||
// anv: first make sure previous driver won't be driver anymore
|
||||
if( pVehicleList[ iID ].ubDriver != NOBODY && MercPtrs[ pVehicleList[ iID ].ubDriver ]->iVehicleId == iID )
|
||||
SOLDIERTYPE* prevDriver = pVehicleList[iID].ubDriver;
|
||||
|
||||
if( prevDriver != NOBODY && prevDriver->iVehicleId == iID )
|
||||
{
|
||||
if( MercPtrs[ pVehicleList[ iID ].ubDriver ] )
|
||||
if( prevDriver )
|
||||
{
|
||||
MercPtrs[ pVehicleList[ iID ].ubDriver ]->flags.uiStatusFlags &= ~(SOLDIER_DRIVER);
|
||||
if( GetSeatIndexFromSoldier( MercPtrs[ pVehicleList[ iID ].ubDriver ] ) != (-1) )
|
||||
prevDriver->flags.uiStatusFlags &= ~(SOLDIER_DRIVER);
|
||||
if( GetSeatIndexFromSoldier( prevDriver ) != (-1) )
|
||||
{
|
||||
MercPtrs[ pVehicleList[ iID ].ubDriver ]->flags.uiStatusFlags |= SOLDIER_PASSENGER;
|
||||
prevDriver->flags.uiStatusFlags |= SOLDIER_PASSENGER;
|
||||
}
|
||||
}
|
||||
}
|
||||
// set proper flags
|
||||
if( ubID != NOBODY )
|
||||
{
|
||||
MercPtrs[ ubID ]->flags.uiStatusFlags |= SOLDIER_DRIVER;
|
||||
MercPtrs[ ubID ]->flags.uiStatusFlags &= ~(SOLDIER_PASSENGER);
|
||||
ubID->flags.uiStatusFlags |= SOLDIER_DRIVER;
|
||||
ubID->flags.uiStatusFlags &= ~(SOLDIER_PASSENGER);
|
||||
}
|
||||
pVehicleList[ iID ].ubDriver = ubID;
|
||||
}
|
||||
@@ -1821,7 +1823,7 @@ BOOLEAN ExitVehicle( SOLDIERTYPE *pSoldier )
|
||||
}
|
||||
else
|
||||
{
|
||||
UINT16 usTempSelectedSoldier = gusSelectedSoldier;
|
||||
SoldierID usTempSelectedSoldier = gusSelectedSoldier;
|
||||
|
||||
SetCurrentSquad( CurrentSquad(), TRUE );
|
||||
|
||||
@@ -1984,7 +1986,7 @@ void AddPassangersToTeamPanel( INT32 iId )
|
||||
}
|
||||
|
||||
|
||||
void VehicleTakeDamage( UINT8 ubID, UINT8 ubReason, INT16 sDamage, INT32 sGridNo, UINT16 ubAttackerID )
|
||||
void VehicleTakeDamage( UINT8 ubID, UINT8 ubReason, INT16 sDamage, INT32 sGridNo, SoldierID ubAttackerID )
|
||||
{
|
||||
if ( ubReason != TAKE_DAMAGE_GAS_FIRE && ubReason != TAKE_DAMAGE_GAS_NOTFIRE )
|
||||
{
|
||||
@@ -2013,7 +2015,7 @@ void VehicleTakeDamage( UINT8 ubID, UINT8 ubReason, INT16 sDamage, INT32 sGridNo
|
||||
}
|
||||
|
||||
|
||||
void HandleCriticalHitForVehicleInLocation( UINT8 ubID, INT16 sDmg, INT32 sGridNo, UINT16 ubAttackerID )
|
||||
void HandleCriticalHitForVehicleInLocation( UINT8 ubID, INT16 sDmg, INT32 sGridNo, SoldierID ubAttackerID )
|
||||
{
|
||||
// check state the armor was s'posed to be in vs. the current state..the difference / orig state is % chance
|
||||
// that a critical hit will occur
|
||||
|
||||
+3
-3
@@ -289,7 +289,7 @@ typedef struct
|
||||
BOOLEAN fBetweenSectors; // between sectors?
|
||||
INT32 sGridNo; // location in tactical
|
||||
SOLDIERTYPE *pPassengers[ MAXPASSENGERS ];
|
||||
UINT16 ubDriver;
|
||||
SoldierID ubDriver;
|
||||
INT16 sInternalHitLocations[ NUMBER_OF_EXTERNAL_HIT_LOCATIONS_ON_VEHICLE ];
|
||||
INT16 sArmourType;
|
||||
INT16 sExternalArmorLocationsStatus[ NUMBER_OF_EXTERNAL_HIT_LOCATIONS_ON_VEHICLE ];
|
||||
@@ -404,7 +404,7 @@ BOOLEAN SwapVehicleSeat( SOLDIERTYPE *pVehicle, SOLDIERTYPE *pSoldier, UINT8 ubS
|
||||
void AddPassangersToTeamPanel( INT32 iId );
|
||||
|
||||
|
||||
void VehicleTakeDamage( UINT8 ubID, UINT8 ubReason, INT16 sDamage, INT32 sGridNo , UINT16 ubAttackerID );
|
||||
void VehicleTakeDamage( UINT8 ubID, UINT8 ubReason, INT16 sDamage, INT32 sGridNo , SoldierID ubAttackerID );
|
||||
|
||||
// the soldiertype containing this tactical incarnation of this vehicle
|
||||
SOLDIERTYPE * GetSoldierStructureForVehicle( INT32 iId );
|
||||
@@ -415,7 +415,7 @@ void AdjustVehicleAPs( SOLDIERTYPE *pSoldier, INT16 *pubPoints );
|
||||
//INT16 GetOrigInternalArmorValueForVehicleInLocation( UINT8 ubID, UINT8 ubLocation );
|
||||
|
||||
// handle crit hit to vehicle in this location
|
||||
void HandleCriticalHitForVehicleInLocation( UINT8 ubID, INT16 sDmg, INT32 sGridNo, UINT16 ubAttackerID );
|
||||
void HandleCriticalHitForVehicleInLocation( UINT8 ubID, INT16 sDmg, INT32 sGridNo, SoldierID ubAttackerID );
|
||||
|
||||
// ste up armor values for this vehicle
|
||||
void SetUpArmorForVehicle( UINT8 ubID );
|
||||
|
||||
Reference in New Issue
Block a user