mirror of
https://github.com/1dot13/source.git
synced 2026-07-22 13:40:22 +02:00
Merged New Inventory Project into main branch
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@1871 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
+59
-54
@@ -9,7 +9,7 @@
|
||||
#include "debug.h"
|
||||
#include "Animation Data.h"
|
||||
#include "Animation Control.h"
|
||||
#include "Soldier Control.h"
|
||||
|
||||
#include "jascreens.h"
|
||||
#include "tiledef.h"
|
||||
#include "Sys Globals.h"
|
||||
@@ -20,6 +20,11 @@
|
||||
#include "Fileman.h"
|
||||
#endif
|
||||
|
||||
//forward declarations of common classes to eliminate includes
|
||||
class OBJECTTYPE;
|
||||
class SOLDIERTYPE;
|
||||
|
||||
|
||||
#define EMPTY_SLOT -1
|
||||
#define TO_INIT 0
|
||||
|
||||
@@ -36,9 +41,9 @@ INT8 gbAnimUsageHistory[ NUMANIMATIONSURFACETYPES ][ MAX_NUM_SOLDIERS ];
|
||||
|
||||
AnimationSurfaceType gAnimSurfaceDatabase[ NUMANIMATIONSURFACETYPES ] =
|
||||
{
|
||||
RGMBASICWALKING, "ANIMS\\S_MERC\\S_R_WALK.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGMBASICWALKING, "ANIMS\\S_MERC\\S_R_WALK.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGMSTANDING, "ANIMS\\S_MERC\\S_R_STD.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGMCROUCHING, "ANIMS\\S_MERC\\S_R_C.STI", C_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGMCROUCHING, "ANIMS\\S_MERC\\S_R_C.STI", C_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGMSNEAKING, "ANIMS\\S_MERC\\S_R_SWAT.STI", C_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGMRUNNING, "ANIMS\\S_MERC\\S_R_RUN.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGMPRONE, "ANIMS\\S_MERC\\S_R_PRN.STI", P_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, 0,
|
||||
@@ -53,7 +58,7 @@ AnimationSurfaceType gAnimSurfaceDatabase[ NUMANIMATIONSURFACETYPES ] =
|
||||
RGMFALL, "ANIMS\\S_MERC\\S_FALL.STI", S_STRUCT, 0, 4, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGMFALLF, "ANIMS\\S_MERC\\S_FALLF.STI", S_STRUCT, 0, 4, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGMHITCROUCH, "ANIMS\\S_MERC\\S_C_DIE.STI", C_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGMHITPRONE, "ANIMS\\S_MERC\\S_P_DIE.STI", P_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGMHITPRONE, "ANIMS\\S_MERC\\S_P_DIE.STI", P_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGMHOPFENCE, "ANIMS\\S_MERC\\S_HOP.STI", NO_STRUCT, 0, 4, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGMPUNCH, "ANIMS\\S_MERC\\S_PUNCH.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGMNOTHING_STD, "ANIMS\\S_MERC\\S_N_STD.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
@@ -130,7 +135,7 @@ AnimationSurfaceType gAnimSurfaceDatabase[ NUMANIMATIONSURFACETYPES ] =
|
||||
|
||||
BGMWALKING, "ANIMS\\M_MERC\\M_R_WALK.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
BGMSTANDING, "ANIMS\\M_MERC\\M_R_STD.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
BGMCROUCHING, "ANIMS\\M_MERC\\M_R_C.STI", C_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
BGMCROUCHING, "ANIMS\\M_MERC\\M_R_C.STI", C_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
BGMSNEAKING, "ANIMS\\M_MERC\\M_R_SWAT.STI", C_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
BGMRUNNING, "ANIMS\\M_MERC\\M_R_RUN2.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
BGMPRONE, "ANIMS\\M_MERC\\M_R_PRN.STI", P_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, 0,
|
||||
@@ -182,7 +187,7 @@ AnimationSurfaceType gAnimSurfaceDatabase[ NUMANIMATIONSURFACETYPES ] =
|
||||
BGMWATER_DIE, "ANIMS\\M_MERC\\MW_DIE.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
BGMWATER_N_AIM, "ANIMS\\M_MERC\\MW_N_SHT.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
BGMWATER_R_AIM, "ANIMS\\M_MERC\\MW_SR_AM.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
BGMWATER_DBLSHT, "ANIMS\\M_MERC\\MW_DBL.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
BGMWATER_DBLSHT, "ANIMS\\M_MERC\\MW_DBL.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
BGMWATER_TRANS, "ANIMS\\M_MERC\\MW_FALL.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
BGMDEEPWATER_TRED, "ANIMS\\M_MERC\\MW_TRED.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
BGMDEEPWATER_SWIM, "ANIMS\\M_MERC\\MW_SWIM.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
@@ -224,7 +229,7 @@ AnimationSurfaceType gAnimSurfaceDatabase[ NUMANIMATIONSURFACETYPES ] =
|
||||
|
||||
RGFWALKING, "ANIMS\\F_MERC\\F_R_WALK.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGFSTANDING, "ANIMS\\F_MERC\\F_BRETH2.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGFCROUCHING, "ANIMS\\F_MERC\\F_R_C.STI", C_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGFCROUCHING, "ANIMS\\F_MERC\\F_R_C.STI", C_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGFSNEAKING, "ANIMS\\F_MERC\\F_R_SWAT.STI", C_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGFRUNNING, "ANIMS\\F_MERC\\F_R_RUN.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGFPRONE, "ANIMS\\F_MERC\\F_R_PRN.STI", P_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, 0,
|
||||
@@ -239,7 +244,7 @@ AnimationSurfaceType gAnimSurfaceDatabase[ NUMANIMATIONSURFACETYPES ] =
|
||||
RGFFALL, "ANIMS\\F_MERC\\F_FALL.STI", S_STRUCT, 0, 4, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGFFALLF, "ANIMS\\F_MERC\\F_FALLF.STI", S_STRUCT, 0, 4, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGFHITCROUCH, "ANIMS\\F_MERC\\F_C_DIE.STI", C_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGFHITPRONE, "ANIMS\\F_MERC\\F_P_DIE.STI", P_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGFHITPRONE, "ANIMS\\F_MERC\\F_P_DIE.STI", P_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGFHOPFENCE, "ANIMS\\F_MERC\\F_HOP.STI", NO_STRUCT, 0, 4, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGFPUNCH, "ANIMS\\F_MERC\\F_PUNCH.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGFNOTHING_STD, "ANIMS\\F_MERC\\N_BRETH2.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
@@ -309,7 +314,7 @@ AnimationSurfaceType gAnimSurfaceDatabase[ NUMANIMATIONSURFACETYPES ] =
|
||||
RGFCROWBAR, "ANIMS\\F_MERC\\F_CROBAR.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
RGFJUMPOVER, "ANIMS\\F_MERC\\F_N_RUN.STI", NO_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
|
||||
|
||||
|
||||
AFMONSTERSTANDING, "ANIMS\\MONSTERS\\MN_BREAT.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
AFMONSTERWALKING, "ANIMS\\MONSTERS\\MN_WALK.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
AFMONSTERATTACK, "ANIMS\\MONSTERS\\MN_ATTAK.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
@@ -320,7 +325,7 @@ AnimationSurfaceType gAnimSurfaceDatabase[ NUMANIMATIONSURFACETYPES ] =
|
||||
AFMUP, "ANIMS\\MONSTERS\\MN_UP.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
AFMJUMP, "ANIMS\\MONSTERS\\MN_JUMP.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
AFMMELT, "ANIMS\\MONSTERS\\MN_MELT.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
|
||||
|
||||
|
||||
LVBREATH, "ANIMS\\MONSTERS\\L_BREATH.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
LVDIE, "ANIMS\\MONSTERS\\L_DIE.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
@@ -443,13 +448,13 @@ AnimationSurfaceType gAnimSurfaceDatabase[ NUMANIMATIONSURFACETYPES ] =
|
||||
HUMVEE_DIE, "ANIMS\\VEHICLES\\HM_WREK.STI", S_STRUCT, 0, 2, TO_INIT, NULL, NULL, 0, -1,
|
||||
|
||||
TANKNW_READY, "ANIMS\\VEHICLES\\TANK_ROT.STI", S_STRUCT, ANIM_DATA_FLAG_NOFRAMES, 32, TO_INIT, NULL, NULL, 0, -1,
|
||||
TANKNW_SHOOT, "ANIMS\\VEHICLES\\TANK_SHT.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
TANKNW_DIE, "ANIMS\\VEHICLES\\TK_WREK.STI", S_STRUCT, 0, 1, TO_INIT, NULL, NULL, 0, -1,
|
||||
TANKNW_SHOOT, "ANIMS\\VEHICLES\\TANK_SHT.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
TANKNW_DIE, "ANIMS\\VEHICLES\\TK_WREK.STI", S_STRUCT, 0, 1, TO_INIT, NULL, NULL, 0, -1,
|
||||
|
||||
TANKNE_READY, "ANIMS\\VEHICLES\\TNK2_ROT.STI", S_STRUCT, ANIM_DATA_FLAG_NOFRAMES, 32, TO_INIT, NULL, NULL, 0, -1,
|
||||
TANKNE_SHOOT, "ANIMS\\VEHICLES\\TNK2_SHT.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
TANKNE_DIE, "ANIMS\\VEHICLES\\TK2_WREK.STI", S_STRUCT, 0, 1, TO_INIT, NULL, NULL, 0, -1,
|
||||
//Kaiden: Below, I have replaced HUMMER2.STI with
|
||||
TANKNE_SHOOT, "ANIMS\\VEHICLES\\TNK2_SHT.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
|
||||
TANKNE_DIE, "ANIMS\\VEHICLES\\TK2_WREK.STI", S_STRUCT, 0, 1, TO_INIT, NULL, NULL, 0, -1,
|
||||
//Kaiden: Below, I have replaced HUMMER2.STI with
|
||||
// ELDORADO.STI and JEEP.STI respectively,
|
||||
// This has not been tested for effect, however,
|
||||
// It should not result in anything worse than
|
||||
@@ -637,7 +642,7 @@ AnimationStructureType gAnimStructureDatabase[ TOTALBODYTYPES ][ NUM_STRUCT_IDS
|
||||
"ANIMS\\STRUCTDATA\\CR_PRONE.JSD", NULL,
|
||||
"ANIMS\\STRUCTDATA\\CR_PRONE.JSD", NULL,
|
||||
"ANIMS\\STRUCTDATA\\M_CROUCH.JSD", NULL, // default
|
||||
|
||||
|
||||
// CAT
|
||||
"ANIMS\\STRUCTDATA\\CT_BREATH.JSD", NULL,
|
||||
"ANIMS\\STRUCTDATA\\CT_BREATH.JSD", NULL,
|
||||
@@ -734,10 +739,10 @@ BOOLEAN InitAnimationSystem( )
|
||||
pStructureFileRef = LoadStructureFile( sFilename );
|
||||
if (pStructureFileRef == NULL)
|
||||
{
|
||||
SET_ERROR( "Animation structure file load failed - %s", sFilename );
|
||||
SET_ERROR( "Animation structure file load failed - %s", sFilename );
|
||||
}
|
||||
gAnimStructureDatabase[ cnt1 ][ cnt2 ].pStructureFileRef = pStructureFileRef;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -746,19 +751,19 @@ BOOLEAN InitAnimationSystem( )
|
||||
|
||||
BOOLEAN DeInitAnimationSystem( )
|
||||
{
|
||||
INT32 cnt1, cnt2;
|
||||
INT32 cnt1, cnt2;
|
||||
|
||||
for ( cnt1 = 0; cnt1 < NUMANIMATIONSURFACETYPES; cnt1++ )
|
||||
{
|
||||
for ( cnt1 = 0; cnt1 < NUMANIMATIONSURFACETYPES; cnt1++ )
|
||||
{
|
||||
if ( gAnimSurfaceDatabase[ cnt1 ].hVideoObject != NULL )
|
||||
{
|
||||
DeleteVideoObject( gAnimSurfaceDatabase[ cnt1 ].hVideoObject );
|
||||
gAnimSurfaceDatabase[ cnt1 ].hVideoObject = NULL;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// OK, Delete all animation structures.....
|
||||
// ATE: OK, don't delete here.. we be deleted when the structure database is destoryed....
|
||||
// ATE: OK, don't delete here.. we be deleted when the structure database is destoryed....
|
||||
for ( cnt1 = 0; cnt1 < TOTALBODYTYPES; cnt1++ )
|
||||
{
|
||||
for ( cnt2 = 0; cnt2 < 3; cnt2++ )
|
||||
@@ -771,9 +776,9 @@ BOOLEAN DeInitAnimationSystem( )
|
||||
}
|
||||
}
|
||||
|
||||
DeleteAnimationProfiles( );
|
||||
DeleteAnimationProfiles( );
|
||||
|
||||
return( TRUE );
|
||||
return( TRUE );
|
||||
}
|
||||
|
||||
|
||||
@@ -786,7 +791,7 @@ STRUCTURE_FILE_REF *InternalGetAnimationStructureRef( UINT8 usSoldierID, UINT16
|
||||
{
|
||||
return( NULL );
|
||||
}
|
||||
|
||||
|
||||
bStructDataType = gAnimSurfaceDatabase[ usSurfaceIndex ].bStructDataType;
|
||||
|
||||
if ( bStructDataType == NO_STRUCT )
|
||||
@@ -797,12 +802,12 @@ STRUCTURE_FILE_REF *InternalGetAnimationStructureRef( UINT8 usSoldierID, UINT16
|
||||
// ATE: Alright - we all hate exception coding but ness here...
|
||||
// return STANDING struct for these - which start standing but end prone
|
||||
// CJC August 14 2002: added standing burst hit to this list
|
||||
if ( ( usAnimState == FALLFORWARD_FROMHIT_STAND || usAnimState == GENERIC_HIT_STAND ||
|
||||
usAnimState == FALLFORWARD_FROMHIT_CROUCH || usAnimState == STANDING_BURST_HIT ) && !fUseAbsolute )
|
||||
if ( ( usAnimState == FALLFORWARD_FROMHIT_STAND || usAnimState == GENERIC_HIT_STAND ||
|
||||
usAnimState == FALLFORWARD_FROMHIT_CROUCH || usAnimState == STANDING_BURST_HIT ) && !fUseAbsolute )
|
||||
{
|
||||
return( gAnimStructureDatabase[ MercPtrs[ usSoldierID ]->ubBodyType ][ S_STRUCT ].pStructureFileRef );
|
||||
}
|
||||
|
||||
|
||||
return( gAnimStructureDatabase[ MercPtrs[ usSoldierID ]->ubBodyType ][ bStructDataType ].pStructureFileRef );
|
||||
}
|
||||
|
||||
@@ -852,14 +857,14 @@ BOOLEAN LoadAnimationSurface( UINT16 usSoldierID, UINT16 usSurfaceIndex, UINT16
|
||||
|
||||
sprintf( gSystemDebugStr, "Cache Load" );
|
||||
|
||||
// Create video object
|
||||
// Create video object
|
||||
FilenameForBPP(gAnimSurfaceDatabase[ usSurfaceIndex ].Filename, sFilename);
|
||||
hImage = CreateImage(/*gAnimSurfaceDatabase[ usSurfaceIndex ].Filename*/sFilename, IMAGE_ALLDATA );
|
||||
|
||||
if (hImage == NULL)
|
||||
{
|
||||
return( SET_ERROR( "Error: Could not load animation file %s", sFilename ) );
|
||||
}
|
||||
if (hImage == NULL)
|
||||
{
|
||||
return( SET_ERROR( "Error: Could not load animation file %s", sFilename ) );
|
||||
}
|
||||
|
||||
VObjectDesc.fCreateFlags = VOBJECT_CREATE_FROMHIMAGE;
|
||||
VObjectDesc.hImage = hImage;
|
||||
@@ -881,7 +886,7 @@ BOOLEAN LoadAnimationSurface( UINT16 usSoldierID, UINT16 usSurfaceIndex, UINT16
|
||||
// Valid auxiliary data, so get # od frames from data
|
||||
pAuxData = ( AuxObjectData* ) hImage->pAppData;
|
||||
|
||||
gAnimSurfaceDatabase[ usSurfaceIndex ].uiNumFramesPerDir = pAuxData->ubNumberOfFrames;
|
||||
gAnimSurfaceDatabase[ usSurfaceIndex ].uiNumFramesPerDir = pAuxData->ubNumberOfFrames;
|
||||
|
||||
}
|
||||
else
|
||||
@@ -893,7 +898,7 @@ BOOLEAN LoadAnimationSurface( UINT16 usSoldierID, UINT16 usSurfaceIndex, UINT16
|
||||
}
|
||||
|
||||
// get structure data if any
|
||||
pStructureFileRef = InternalGetAnimationStructureRef( usSoldierID, usSurfaceIndex, usAnimState, TRUE );
|
||||
pStructureFileRef = InternalGetAnimationStructureRef( (UINT8)usSoldierID, usSurfaceIndex, usAnimState, TRUE );
|
||||
|
||||
if ( pStructureFileRef != NULL )
|
||||
{
|
||||
@@ -912,20 +917,20 @@ BOOLEAN LoadAnimationSurface( UINT16 usSoldierID, UINT16 usSurfaceIndex, UINT16
|
||||
{
|
||||
DestroyImage( hImage );
|
||||
DeleteVideoObject( hVObject );
|
||||
SET_ERROR( "Animation structure ZStrip creation error: %s", sFilename );
|
||||
SET_ERROR( "Animation structure ZStrip creation error: %s", sFilename );
|
||||
return( FALSE );
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
// the hImage is no longer needed
|
||||
DestroyImage( hImage );
|
||||
// the hImage is no longer needed
|
||||
DestroyImage( hImage );
|
||||
|
||||
// Set video object index
|
||||
gAnimSurfaceDatabase[ usSurfaceIndex ].hVideoObject = hVObject;
|
||||
|
||||
// Determine if we have a problem with #frames + directions ( ie mismatch )
|
||||
if ( ( gAnimSurfaceDatabase[ usSurfaceIndex ].uiNumDirections * gAnimSurfaceDatabase[ usSurfaceIndex ].uiNumFramesPerDir ) != gAnimSurfaceDatabase[ usSurfaceIndex ].hVideoObject->usNumberOfObjects )
|
||||
if ( ( gAnimSurfaceDatabase[ usSurfaceIndex ].uiNumDirections * gAnimSurfaceDatabase[ usSurfaceIndex ].uiNumFramesPerDir ) != gAnimSurfaceDatabase[ usSurfaceIndex ].hVideoObject->usNumberOfObjects )
|
||||
{
|
||||
AnimDebugMsg( String( "Surface Database: WARNING!!! Surface %d has #frames mismatch.", usSurfaceIndex ) );
|
||||
}
|
||||
@@ -936,7 +941,7 @@ BOOLEAN LoadAnimationSurface( UINT16 usSoldierID, UINT16 usSurfaceIndex, UINT16
|
||||
{
|
||||
AnimDebugMsg( String( "Surface Database: Incrementing Usage %d ( Soldier %d )", usSurfaceIndex, usSoldierID ) );
|
||||
// Increment usage count
|
||||
gAnimSurfaceDatabase[ usSurfaceIndex ].bUsageCount++;
|
||||
gAnimSurfaceDatabase[ usSurfaceIndex ].bUsageCount++;
|
||||
// Set history for particular sodlier
|
||||
gbAnimUsageHistory[ usSurfaceIndex ][ usSoldierID ]++;
|
||||
|
||||
@@ -960,7 +965,7 @@ BOOLEAN UnLoadAnimationSurface( UINT16 usSoldierID, UINT16 usSurfaceIndex )
|
||||
{
|
||||
// Decrement usage count
|
||||
AnimDebugMsg( String( "Surface Database: Decrementing Usage %d ( Soldier %d )", usSurfaceIndex, usSoldierID ) );
|
||||
gAnimSurfaceDatabase[ usSurfaceIndex ].bUsageCount--;
|
||||
gAnimSurfaceDatabase[ usSurfaceIndex ].bUsageCount--;
|
||||
// Set history for particular sodlier
|
||||
gbAnimUsageHistory[ usSurfaceIndex ][ usSoldierID ] = 0;
|
||||
|
||||
@@ -980,15 +985,15 @@ BOOLEAN UnLoadAnimationSurface( UINT16 usSoldierID, UINT16 usSurfaceIndex )
|
||||
gAnimSurfaceDatabase[ usSurfaceIndex ].bUsageCount = 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Check if count has reached zero and delet if so
|
||||
if ( gAnimSurfaceDatabase[ usSurfaceIndex ].bUsageCount == 0 )
|
||||
{
|
||||
AnimDebugMsg( String( "Surface Database: Unloading Surface: %d", usSurfaceIndex ) );
|
||||
AnimDebugMsg( String( "Surface Database: Unloading Surface: %d", usSurfaceIndex ) );
|
||||
|
||||
CHECKF( gAnimSurfaceDatabase[ usSurfaceIndex ].hVideoObject != NULL )
|
||||
CHECKF( gAnimSurfaceDatabase[ usSurfaceIndex ].hVideoObject != NULL )
|
||||
|
||||
DeleteVideoObject( gAnimSurfaceDatabase[ usSurfaceIndex ].hVideoObject );
|
||||
gAnimSurfaceDatabase[ usSurfaceIndex ].hVideoObject = NULL;
|
||||
@@ -1028,7 +1033,7 @@ BOOLEAN LoadAnimationProfiles( )
|
||||
|
||||
// Writeout profile data!
|
||||
// if ( fread( &gubNumAnimProfiles, sizeof( gubNumAnimProfiles ), 1, pInput ) != 1 )
|
||||
if ( FileRead( pInput, &gubNumAnimProfiles, sizeof( gubNumAnimProfiles ), &uiBytesRead ) != 1 )
|
||||
if ( FileRead( pInput, &gubNumAnimProfiles, sizeof( gubNumAnimProfiles ), &uiBytesRead ) != 1 )
|
||||
{
|
||||
return( FALSE );
|
||||
}
|
||||
@@ -1123,13 +1128,13 @@ void DeleteAnimationProfiles( )
|
||||
|
||||
void ZeroAnimSurfaceCounts( )
|
||||
{
|
||||
INT32 cnt;
|
||||
INT32 cnt;
|
||||
|
||||
for ( cnt = 0; cnt < NUMANIMATIONSURFACETYPES; cnt++ )
|
||||
{
|
||||
gAnimSurfaceDatabase[ cnt ].bUsageCount = 0;
|
||||
gAnimSurfaceDatabase[ cnt ].hVideoObject = NULL;
|
||||
}
|
||||
for ( cnt = 0; cnt < NUMANIMATIONSURFACETYPES; cnt++ )
|
||||
{
|
||||
gAnimSurfaceDatabase[ cnt ].bUsageCount = 0;
|
||||
gAnimSurfaceDatabase[ cnt ].hVideoObject = NULL;
|
||||
}
|
||||
|
||||
memset( gbAnimUsageHistory, 0, sizeof( gbAnimUsageHistory ) );
|
||||
memset( gbAnimUsageHistory, 0, sizeof( gbAnimUsageHistory ) );
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user