Mercurial > mm7
diff Monsters.cpp @ 701:d5b16a44d9b3
frame_table parser, new files for UI func
author | Gloval |
---|---|
date | Mon, 18 Mar 2013 22:53:56 +0400 |
parents | b097497f07e2 |
children | a9c1fb7483c2 |
line wrap: on
line diff
--- a/Monsters.cpp Sun Mar 17 22:46:18 2013 +0200 +++ b/Monsters.cpp Mon Mar 18 22:53:56 2013 +0400 @@ -24,7 +24,7 @@ int ParseSpecialAttack(const char *spec_att_str); //----- (004548E2) -------------------------------------------------------- - unsigned int __fastcall ParseSpellType(FrameTableTxtLine *a1, int a2) +unsigned int __fastcall ParseSpellType(FrameTableTxtLine *a1, int a2) { int v2; // edi@1 int v3; // esi@1 @@ -459,7 +459,7 @@ { *strchr(&Buf, 10) = 0; memcpy(&v25, frame_table_txt_parser(&Buf, &v24), sizeof(v25)); - if ( v25.field_0 && *v25.pProperties[0] != 47 ) + if ( v25.uPropCount && *v25.pProperties[0] != 47 ) ++Argsa; } while ( fgets(&Buf, 490, File) ); @@ -478,7 +478,7 @@ *strchr(&Buf, 10) = 0; memcpy(&v25, frame_table_txt_parser(&Buf, &v24), sizeof(v25)); v8 = 0; - if ( v25.field_0 && *v25.pProperties[0] != 47 ) + if ( v25.uPropCount && *v25.pProperties[0] != 47 ) { strcpy(v2->pMonsters[v2->uNumMonsters].pMonsterName, v25.pProperties[0]); v35 = 0; @@ -518,16 +518,16 @@ v16 = v25.pProperties[12]; v2->pMonsters[v2->uNumMonsters].uToHitRadius = v15; v17 = (unsigned __int8)atoi(v16); - Argsb = atoi(v25.pProperties2[0]) & 0xFF; - v26 = atoi(v25.pProperties2[1]) & 0xFF; - v18 = atoi(v25.pProperties2[2]); + Argsb = atoi(v25.pProperties[13]) & 0xFF; + v26 = atoi(v25.pProperties[14]) & 0xFF; + v18 = atoi(v25.pProperties[15]); v2->pMonsters[v2->uNumMonsters].uTintColor = v18 | ((v26 | ((Argsb | (v17 << 8)) << 8)) << 8); v19 = 0; do { - v20 = atoi(v25.pProperties2[v19 + 4]); - v21 = v19++ + 76 * v2->uNumMonsters; - v2->pMonsters->pSoundSampleIDs[v21] = v20; + v20 = atoi(v25.pProperties[v19 + 16]); + v21 = v19++ ; + v2->pMonsters[v2->uNumMonsters].pSoundSampleIDs[v21] = v20; } while ( v19 < 4 ); ++v2->uNumMonsters;