changeset 37:979f13f456dc

fix players face
author Ritor1
date Sun, 20 Jan 2013 21:35:06 +0600
parents 415e1f2d5936
children c261e0eea3c9 ac65389dc211
files mm7_3.cpp mm7_4.cpp
diffstat 2 files changed, 35 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/mm7_3.cpp	Sun Jan 20 20:04:18 2013 +0600
+++ b/mm7_3.cpp	Sun Jan 20 21:35:06 2013 +0600
@@ -18696,7 +18696,6 @@
     v12 = v11;
     if ( (signed int)v11 < (signed int)uNumActors )
     {
-      
       for ( pActor = &pActors[v11]; v12 < (signed int)uNumActors; ++pActor )
       {
         pActor->PrepareSprites(0);
--- a/mm7_4.cpp	Sun Jan 20 20:04:18 2013 +0600
+++ b/mm7_4.cpp	Sun Jan 20 21:35:06 2013 +0600
@@ -3192,7 +3192,6 @@
     if (pPlayer->Eradicated())
     {
       pFace = pTexture_PlayerFaceEradicated;
-LABEL_27:
       pPortrait = pFace;
       v9 = pPlayerPortraitsXCoords_For_PlayerBuffAnimsDrawing[i];
       if ( pParty->pPartyBuffs[11].uExpireTime )
@@ -3208,12 +3207,27 @@
       v13 = pPlayer->pPlayerBuffs[13].uExpireTime > 0;
       if ( v13 | v12 | v11 | _v1 | v10 )
         sub_441A4E(i);
-      goto LABEL_50;
+      continue;
     }
     if (pPlayer->Dead())
     {
       pFace = pTexture_PlayerFaceDead;
-      goto LABEL_27;
+      pPortrait = pFace;
+      v9 = pPlayerPortraitsXCoords_For_PlayerBuffAnimsDrawing[i];
+      if ( pParty->pPartyBuffs[11].uExpireTime )
+        pRenderer->_4A6E7E(v9, 0x183u, pPortrait);
+      else
+        pRenderer->DrawTextureTransparent(v9 + 1, 0x184u, pPortrait);
+      auto _v1 = 0;
+      v10 = pPlayer->pPlayerBuffs[14].uExpireTime > 0;
+      if (pPlayer->pPlayerBuffs[1].uExpireTime > 0)
+        _v1 = 1;
+      v11 = pPlayer->pPlayerBuffs[8].uExpireTime > 0;
+      v12 = pPlayer->pPlayerBuffs[7].uExpireTime > 0;
+      v13 = pPlayer->pPlayerBuffs[13].uExpireTime > 0;
+      if ( v13 | v12 | v11 | _v1 | v10 )
+        sub_441A4E(i);
+      continue;
     }
       v7 = 0;
       for (uint j = 0; j < pPlayerFrameTable->uNumFrames; ++j)
@@ -3231,11 +3245,24 @@
     if (pPlayer->field_1AA2 != pFrame->uTextureID - 1 || v22 )
     {
       pPlayer->field_1AA2 = pFrame->uTextureID - 1;
-      pFace = (Texture *)pTextures_PlayerFaces[i][pFrame->uTextureID];
-      goto LABEL_27;
-    }
-LABEL_50:
-    ;
+      pFace = (Texture *)pTextures_PlayerFaces[i][pPlayer->field_1AA2];
+      pPortrait = pFace;
+      v9 = pPlayerPortraitsXCoords_For_PlayerBuffAnimsDrawing[i];
+      if ( pParty->pPartyBuffs[11].uExpireTime )
+        pRenderer->_4A6E7E(v9, 0x183u, pPortrait);
+      else
+        pRenderer->DrawTextureTransparent(v9 + 1, 0x184u, pPortrait);
+      auto _v1 = 0;
+      v10 = pPlayer->pPlayerBuffs[14].uExpireTime > 0;
+      if (pPlayer->pPlayerBuffs[1].uExpireTime > 0)
+        _v1 = 1;
+      v11 = pPlayer->pPlayerBuffs[8].uExpireTime > 0;
+      v12 = pPlayer->pPlayerBuffs[7].uExpireTime > 0;
+      v13 = pPlayer->pPlayerBuffs[13].uExpireTime > 0;
+      if ( v13 | v12 | v11 | _v1 | v10 )
+        sub_441A4E(i);
+      continue;
+    }
   }
   if ( pParty->bTurnBasedModeOn == 1 )
   {