diff mm7_1.cpp @ 351:5f36449527c6

stru351 -> summoned/spell-enchanted item
author Nomad
date Thu, 21 Feb 2013 03:04:08 +0200
parents ea55d6414029
children ec6cc5cefa4b
line wrap: on
line diff
--- a/mm7_1.cpp	Thu Feb 21 02:13:46 2013 +0200
+++ b/mm7_1.cpp	Thu Feb 21 03:04:08 2013 +0200
@@ -49,6 +49,7 @@
 #include "StorylineTextTable.h"
 #include "Events2D.h"
 #include "texts.h"
+#include "stru351.h"
 
 #include "mm7_data.h"
 
@@ -2356,12 +2357,13 @@
   //char v64[100]; // [sp+D0h] [bp-1A8h]@40
   char v65[120]; // [sp+134h] [bp-144h]@92
   char Source[40]; // [sp+1ACh] [bp-CCh]@49
-  int v67; // [sp+1D4h] [bp-A4h]@91
-  int v68; // [sp+1D8h] [bp-A0h]@106
-  int v69; // [sp+1DCh] [bp-9Ch]@101
-  int v70; // [sp+1E0h] [bp-98h]@97
-  int v71; // [sp+1E8h] [bp-90h]@93
-  int v72; // [sp+1ECh] [bp-8Ch]@91
+  stru351_summoned_item v67;
+  //int v67; // [sp+1D4h] [bp-A4h]@91
+  //int v68; // [sp+1D8h] [bp-A0h]@106
+  //int v69; // [sp+1DCh] [bp-9Ch]@101
+  //int v70; // [sp+1E0h] [bp-98h]@97
+  //int v71; // [sp+1E8h] [bp-90h]@93
+  //int v72; // [sp+1ECh] [bp-8Ch]@91
   int var88; // [sp+1F0h] [bp-88h]@1
   Texture *v73; // [sp+1F4h] [bp-84h]@5
   //unsigned int v75; // [sp+1F8h] [bp-80h]@5
@@ -2656,21 +2658,21 @@
       {
         if ( _this->uAttributes & 8 && (_this->uAdditionalValue || _this->_bonus_type) )
         {
-          sub_493F79((stru351 *)&v67, _this->uExpireTime - pParty->uTimePlayed);
+          sub_493F79(&v67, _this->uExpireTime - pParty->uTimePlayed);
           strcpy(pTmpBuf, "Duration:");
-          Str = (char *)(v72 - 1168);
-          if ( v72 != 1168 )
+          Str = (char *)(v67.field_18_expire_year - 1168);
+          if (v67.field_18_expire_year != 1168 )
           {
-            sprintf(v65, " %d:yr", v72 - 1168);
+            sprintf(v65, " %d:yr", v67.field_18_expire_year - 1168);
             strcat(pTmpBuf, v65);
           }
-          if ( (((v71 || Str) && ((sprintf(v65, " %d:mo", v71), strcat(pTmpBuf, v65), v71) || Str) || v70)
-             && ((sprintf(v65, " %d:dy", v70), strcat(pTmpBuf, v65), v71) || Str || v70)
-             || v69)
-            && ((sprintf(v65, " %d:hr", v69), strcat(pTmpBuf, v65), v71) || Str || v70 || v69)
-            || v68 )
+          if ( (((v67.field_14_exprie_month || Str) && ((sprintf(v65, " %d:mo", v67.field_14_exprie_month), strcat(pTmpBuf, v65), v67.field_14_exprie_month) || Str) || v67.field_C_expire_day)
+             && ((sprintf(v65, " %d:dy", v67.field_C_expire_day), strcat(pTmpBuf, v65), v67.field_14_exprie_month) || Str || v67.field_C_expire_day)
+             || v67.field_8_expire_hour)
+            && ((sprintf(v65, " %d:hr", v67.field_8_expire_hour), strcat(pTmpBuf, v65), v67.field_14_exprie_month) || Str || v67.field_C_expire_day || v67.field_8_expire_hour)
+            || v67.field_4_expire_minute )
           {
-            sprintf(v65, " %d:mn", v68);
+            sprintf(v65, " %d:mn", v67.field_4_expire_minute);
             strcat(pTmpBuf, v65);
           }
           v79.DrawText(v82, 100, v79.uFrameHeight - 2 * LOBYTE(v82->uFontHeight), 0, pTmpBuf, 0, 0, 0);