mirror of
https://github.com/1dot13/source.git
synced 2026-08-19 14:20:30 +02:00
- Fix: picking up corpses restored their head
- Fix: zombies from picked up corpses had gibberish names git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@6020 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
@@ -494,10 +494,7 @@ INT32 AddRottingCorpse( ROTTING_CORPSE_DEFINITION *pCorpseDef )
|
|||||||
|
|
||||||
// Copy elements in
|
// Copy elements in
|
||||||
memcpy( pCorpse, pCorpseDef, sizeof( ROTTING_CORPSE_DEFINITION ) );
|
memcpy( pCorpse, pCorpseDef, sizeof( ROTTING_CORPSE_DEFINITION ) );
|
||||||
|
|
||||||
if ( pCorpseDef->fHeadTaken )
|
|
||||||
pCorpse->def.usFlags |= ROTTING_CORPSE_HEAD_TAKEN;
|
|
||||||
|
|
||||||
uiDirectionUseFlag = ANITILE_USE_DIRECTION_FOR_START_FRAME;
|
uiDirectionUseFlag = ANITILE_USE_DIRECTION_FOR_START_FRAME;
|
||||||
|
|
||||||
// If we are a soecial type...
|
// If we are a soecial type...
|
||||||
@@ -511,8 +508,17 @@ INT32 AddRottingCorpse( ROTTING_CORPSE_DEFINITION *pCorpseDef )
|
|||||||
case FMERC_FALLF:
|
case FMERC_FALLF:
|
||||||
|
|
||||||
uiDirectionUseFlag = ANITILE_USE_4DIRECTION_FOR_START_FRAME;
|
uiDirectionUseFlag = ANITILE_USE_4DIRECTION_FOR_START_FRAME;
|
||||||
|
|
||||||
|
// Flugente: remember if there was still a head attached to the guy
|
||||||
|
case SMERC_JFK:
|
||||||
|
case MMERC_JFK:
|
||||||
|
case FMERC_JFK:
|
||||||
|
|
||||||
|
pCorpseDef->fHeadTaken = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ( pCorpseDef->fHeadTaken )
|
||||||
|
pCorpse->def.usFlags |= ROTTING_CORPSE_HEAD_TAKEN;
|
||||||
|
|
||||||
if( !(gTacticalStatus.uiFlags & LOADING_SAVED_GAME ) )
|
if( !(gTacticalStatus.uiFlags & LOADING_SAVED_GAME ) )
|
||||||
{
|
{
|
||||||
@@ -2226,9 +2232,9 @@ BOOLEAN AddCorpseFromObject(OBJECTTYPE* pObj, INT32 sGridNo, INT8 bLevel )
|
|||||||
|
|
||||||
Corpse.ubBodyType = REGFEMALE;
|
Corpse.ubBodyType = REGFEMALE;
|
||||||
}
|
}
|
||||||
else
|
else //if ( (*pObj)[0]->data.sObjectFlag & CORPSE_M_SMALL )
|
||||||
{
|
{
|
||||||
if ( (*pObj)[0]->data.sObjectFlag & CORPSE_M_SMALL )
|
if ( (*pObj)[0]->data.sObjectFlag & CORPSE_NO_HEAD )
|
||||||
Corpse.ubType = SMERC_JFK;
|
Corpse.ubType = SMERC_JFK;
|
||||||
else
|
else
|
||||||
Corpse.ubType = SMERC_BCK;
|
Corpse.ubType = SMERC_BCK;
|
||||||
@@ -2317,6 +2323,10 @@ BOOLEAN AddCorpseFromObject(OBJECTTYPE* pObj, INT32 sGridNo, INT8 bLevel )
|
|||||||
Corpse.ubProfile = NO_PROFILE;
|
Corpse.ubProfile = NO_PROFILE;
|
||||||
Corpse.fHeadTaken = FALSE;
|
Corpse.fHeadTaken = FALSE;
|
||||||
Corpse.ubAIWarningValue = 20;
|
Corpse.ubAIWarningValue = 20;
|
||||||
|
|
||||||
|
// Flugente: use zombie name (it's the only way this will ever be relevant again anyway)
|
||||||
|
swprintf( Corpse.name, TacticalStr[ ZOMBIE_TEAM_MERC_NAME ] );
|
||||||
|
Corpse.name[9] = '\0';
|
||||||
|
|
||||||
INT32 iCorpseID = AddRottingCorpse( &Corpse );
|
INT32 iCorpseID = AddRottingCorpse( &Corpse );
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user