MERGED source code from development trunk (revision: 4660)

- New big mercs with either Throwing trait or Show-Off personality use a slightly more fancy animation for throwing knives. (by Sandro & PasHancock)
o New animation files: M_K_THRO2.sti

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@4661 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Wanne
2011-09-25 18:14:26 +00:00
parent 613e59b2c6
commit 19d61e29cd
5 changed files with 24 additions and 2 deletions
+8
View File
@@ -69,6 +69,8 @@ static UINT16 JUMP_WALL_DOWN_AnimationScript[MAX_FRAMES_PER_ANIM] = { 44,43,42,4
static UINT16 REMOTE_DET_AnimationScript[MAX_FRAMES_PER_ANIM] = { 1,2,3,4,484,4,5,6,1,442,499,999,0,0,0,0 }; // SANDRO - new animation of remote detonator by PasHancock
static UINT16 THROW_KNIFE_SP_BM_AnimationScript[MAX_FRAMES_PER_ANIM] = { 757,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,12,13,709,14,15,16,430,16,17,17,18,19,20,21,753,442,499,999,0,0,0,0 };
@@ -989,6 +991,9 @@ ANIMCONTROLTYPE gAnimControl[ NUMANIMATIONSTATES ] =
{"JUMP WINDOWS" , 0, 50, (FLOAT)0, ANIM_NOCHANGE_PENDINGCOUNT | ANIM_NORESTART | ANIM_STATIONARY | ANIM_NOSHOW_MARKER | ANIM_MODERATE_EFFORT | ANIM_LOWER_WEAPON | ANIM_NONINTERRUPT, ANIM_STAND, ANIM_CROUCH, -1},
//SPECIAL THROW KNIFE FOR BIG MALES
"THROW KNIFE 2" , 0, 50, (FLOAT)0, ANIM_STATIONARY | ANIM_NOMOVE_MARKER | ANIM_NONINTERRUPT | ANIM_MIN_EFFORT | ANIM_ATTACK , ANIM_STAND, ANIM_STAND, -1,
};
ANI_SPEED_DEF gubAnimWalkSpeeds[ TOTALBODYTYPES ] =
@@ -1677,6 +1682,7 @@ void InitAnimationSurfacesPerBodytype( )
gubAnimSurfaceIndex[ BIGMALE ][ CUTTING_FENCE ] = BGMMEDIC;
gubAnimSurfaceIndex[ BIGMALE ][ FROM_INJURED_TRANSITION ] = BGMHURTTRANS;
gubAnimSurfaceIndex[ BIGMALE ][ THROW_KNIFE ] = BGMTHROWKNIFE;
gubAnimSurfaceIndex[ BIGMALE ][ THROW_KNIFE_SP_BM ] = BGMTHROWKNIFE2;
gubAnimSurfaceIndex[ BIGMALE ][ KNIFE_BREATH ] = BGMBREATHKNIFE;
gubAnimSurfaceIndex[ BIGMALE ][ KNIFE_GOTOBREATH ] = BGMBREATHKNIFE;
gubAnimSurfaceIndex[ BIGMALE ][ KNIFE_ENDBREATH ] = BGMBREATHKNIFE;
@@ -3258,6 +3264,8 @@ BOOLEAN LoadAnimationStateInstructions( )
memcpy(gusAnimInst[USE_REMOTE],REMOTE_DET_AnimationScript,sizeof(REMOTE_DET_AnimationScript)); // SANDRO - new animation of remote detonator by PasHancock
memcpy(gusAnimInst[THROW_KNIFE_SP_BM],THROW_KNIFE_SP_BM_AnimationScript,sizeof(THROW_KNIFE_SP_BM_AnimationScript)); // SANDRO - new animation of remote detonator by PasHancock
return( TRUE );
}
+2
View File
@@ -560,6 +560,8 @@ enum AnimationStates
JUMPWINDOWS,
THROW_KNIFE_SP_BM,
NUMANIMATIONSTATES
};
+3
View File
@@ -515,6 +515,9 @@ AnimationSurfaceType gAnimSurfaceDatabase[ NUMANIMATIONSURFACETYPES ] =
RGMUSEREMOTE, "ANIMS\\S_MERC\\S_USEREMOTE.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
BGMUSEREMOTE, "ANIMS\\M_MERC\\M_USEREMOTE.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
RGFUSEREMOTE, "ANIMS\\F_MERC\\F_USEREMOTE.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
BGMTHROWKNIFE, "ANIMS\\M_MERC\\M_K_THRO2.STI", S_STRUCT, 0, 8, TO_INIT, NULL, NULL, 0, -1,
};
+2
View File
@@ -545,6 +545,8 @@ BGMWITHSTONE,
BGMUSEREMOTE,
RGFUSEREMOTE,
BGMTHROWKNIFE2,
NUMANIMATIONSURFACETYPES
} AnimationSurfaceTypes;
+9 -2
View File
@@ -11268,7 +11268,14 @@ void SOLDIERTYPE::EVENT_SoldierBeginKnifeThrowAttack( INT32 sGridNo, UINT8 ubDir
DebugMsg( TOPIC_JA2, DBG_LEVEL_3, String("!!!!!!! Starting knifethrow attack, bullets left %d", this->bBulletsLeft) );
DebugAttackBusy( String( "Begin knife throwing attack: ATB %d\n", gTacticalStatus.ubAttackBusyCount) );
this->EVENT_InitNewSoldierAnim( THROW_KNIFE, 0 , FALSE );
if ( this->ubBodyType == BIGMALE && ((this->ubProfile != NO_PROFILE && gMercProfiles[ this->ubProfile ].bCharacterTrait == CHAR_TRAIT_SHOWOFF) || (HAS_SKILL_TRAIT( this, THROWING_NT ) && gGameOptions.fNewTraitSystem) || (HAS_SKILL_TRAIT( this, THROWING_OT ) && !gGameOptions.fNewTraitSystem) ) )
{
this->EVENT_InitNewSoldierAnim( THROW_KNIFE_SP_BM, 0 , FALSE );
}
else
{
this->EVENT_InitNewSoldierAnim( THROW_KNIFE, 0 , FALSE );
}
// CHANGE DIRECTION AND GOTO ANIMATION NOW
this->EVENT_SetSoldierDesiredDirection( ubDirection );
@@ -11997,7 +12004,7 @@ void SOLDIERTYPE::HaultSoldierFromSighting( BOOLEAN fFromSightingEnemy )
// ATE: Dave, don't kill me
// Here, we need to handle the situation when we're throweing a knife and we see somebody
// cause for some reason throwing a knie does not use the pTempObject stuff that all other stuff does...
if ( this->usPendingAnimation == THROW_KNIFE )
if ( this->usPendingAnimation == THROW_KNIFE || this->usPendingAnimation == THROW_KNIFE_SP_BM )
{
// Decrement attack counter...
DebugMsg( TOPIC_JA2, DBG_LEVEL_3, String("@@@@@@@ Reducing attacker busy count..., ending throw knife because saw something") );