- Fixed problems with merc faces when doing certain actions. This bug was introduced in revision: 4396

o Fixes endless loop when clicking on items with explosives and merc starts to talk
o Fixes hidden merc faces
o Fixes wrong merc faces (merc face instead of skull) when merc is dead

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@4456 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Wanne
2011-05-29 16:08:27 +00:00
parent 993f3a204c
commit 2b7f79db94
5 changed files with 69 additions and 11 deletions
+15 -1
View File
@@ -724,7 +724,8 @@ void SetAutoFaceInActive(INT32 iFaceIndex )
pFace->fDisabled = TRUE;
}
void SetCamoFace(SOLDIERTYPE * pSoldier)
BOOLEAN SetCamoFace(SOLDIERTYPE * pSoldier)
{
INT8 worn = -1;
INT8 applied = -1;
@@ -754,8 +755,13 @@ void SetCamoFace(SOLDIERTYPE * pSoldier)
applied = loop;
}
BOOLEAN isCamoFace = FALSE;
if(applied != -1 && worn != -1)
{
isCamoFace = TRUE;
if(appliedCamo[applied] >= wornCamo[worn])
{
if(applied == 0)
@@ -766,9 +772,13 @@ void SetCamoFace(SOLDIERTYPE * pSoldier)
gCamoFace[pSoldier->ubProfile].gDesertCamoface = TRUE;
if(applied == 3)
gCamoFace[pSoldier->ubProfile].gSnowCamoface = TRUE;
return TRUE;
}
else
{
isCamoFace = TRUE;
if(worn == 0)
gCamoFace[pSoldier->ubProfile].gCamoface = TRUE;
if(worn == 1)
@@ -781,6 +791,8 @@ void SetCamoFace(SOLDIERTYPE * pSoldier)
}
else if(applied != -1 || worn != -1)
{
isCamoFace = TRUE;
if(applied == 0 || worn == 0)
gCamoFace[pSoldier->ubProfile].gCamoface = TRUE;
if(applied == 1 || worn == 1)
@@ -790,6 +802,8 @@ void SetCamoFace(SOLDIERTYPE * pSoldier)
if(applied == 3 || worn == 3)
gCamoFace[pSoldier->ubProfile].gSnowCamoface = TRUE;
}
return isCamoFace;
}
void SetAllAutoFacesInactive( )