Mercurial > mm7
changeset 299:b0db84628733
paperdoll array
author | Ritor1 |
---|---|
date | Tue, 19 Feb 2013 17:11:57 +0600 |
parents | 055cea8660e5 |
children | 00452bbbac47 |
files | MM7.h Player.cpp mm7_5.cpp mm7_data.cpp mm7_data.h |
diffstat | 5 files changed, 678 insertions(+), 317 deletions(-) [+] |
line wrap: on
line diff
--- a/MM7.h Tue Feb 19 09:14:16 2013 +0600 +++ b/MM7.h Tue Feb 19 17:11:57 2013 +0600 @@ -281,43 +281,9 @@ /* 369 */ #pragma pack(push, 1) -struct stru329 -{ - int field_0; - float field_4; - int field_8; - int field_C; - int equip_x; - int equip_y; - int field_18; - int field_1C; - int field_20; - int field_24; - int field_28; - int field_2C; - int field_30; - int field_34; - int field_38; - int field_3C; - int field_40; - int field_44; - int field_48; - int field_4C; - int field_50; - int field_54; - int field_58; - int field_5C; - int field_60; - int field_64; - int field_68; - int field_6C; - int field_70; - int field_74; - int field_78; - int field_7C; -}; + #pragma pack(pop) -extern stru329 array_4E4C30[4]; +extern int paperdoll_Weapon[4][16][2]; /* 371 */ #pragma pack(push, 1)
--- a/Player.cpp Tue Feb 19 09:14:16 2013 +0600 +++ b/Player.cpp Tue Feb 19 17:11:57 2013 +0600 @@ -6818,18 +6818,18 @@ } //----- (004907E7) -------------------------------------------------------- -__int16 Player::GetStatColor(unsigned int uStat) +unsigned int Player::GetStatColor(int uStat) { __int16 uWhite; // si@1 int attribute_value; // edx@1 - unsigned __int8 v8; // of@1 + unsigned __int8 pBaseAttrValue; // of@1 __int16 uGreen; // [sp+8h] [bp-8h]@1 __int16 uRed; // [sp+Ch] [bp-4h]@1 uRed = GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(0xFFu, 0x23u, 0); uGreen = GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(0, 0xFFu, 0); uWhite = GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(0xFFu, 0xFFu, 0xFFu); - v8 = StatTable[GetRace()][uStat].uBaseValue; + pBaseAttrValue = StatTable[GetRace()][uStat].uBaseValue; switch (uStat) { @@ -6842,9 +6842,9 @@ case 6: attribute_value = uLuck; break; }; - if ( attribute_value == v8 ) + if ( attribute_value == pBaseAttrValue ) return uWhite; - else if ( attribute_value > v8 ) + else if ( attribute_value > pBaseAttrValue ) return uGreen; else return uRed;
--- a/mm7_5.cpp Tue Feb 19 09:14:16 2013 +0600 +++ b/mm7_5.cpp Tue Feb 19 17:11:57 2013 +0600 @@ -7292,8 +7292,8 @@ v230 = pPlayer->pEquipment.uBow; v22 = (int)&v217->pInventoryItems[v21-1]; v23 = *(int *)v22; - v24 = pPaperdoll_BodyX + array_4E4C30[pBodyComplection].equip_x - pItemsTable->pItems[v23].uEquipX; - a3b = pPaperdoll_BodyY + array_4E4C30[pBodyComplection].equip_y - pItemsTable->pItems[v23].uEquipY; + v24 = pPaperdoll_BodyX + paperdoll_Weapon[pBodyComplection][2][0] - pItemsTable->pItems[v23].uEquipX; + a3b = pPaperdoll_BodyY + paperdoll_Weapon[pBodyComplection][2][1] - pItemsTable->pItems[v23].uEquipY; v241 = pIcons_LOD->LoadTexture(pItemsTable->pItems[v23].pIconName, TEXTURE_16BIT_PALETTE); v25 = *(int *)(v22 + 20); if ( !(*(int *)(v22 + 20) & 0xF0) ) @@ -7350,9 +7350,9 @@ goto LABEL_93; LABEL_74: v34 = v33 + 10 * pBodyComplection; - v35 = paperdoll_array_511828[0][v34]; - a2c = pPaperdoll_BodyX + paperdoll_array_4E5570[0][v34][0];// TODO indexing - v36 = pPaperdoll_BodyY + paperdoll_array_4E5570[0][v34][1]; + v35 = paperdoll_array_511828[0][v34];//Texture_Cloak + a2c = pPaperdoll_BodyX + paperdoll_Cloak[0][v34][0]; + v36 = pPaperdoll_BodyY + paperdoll_Cloak[0][v34][1]; v37 = *(int *)(v32 + 20); a3c = v36; if ( !(v37 & 0xF0) ) @@ -7402,9 +7402,9 @@ goto LABEL_127; LABEL_106: v46 = 17 * pBodyComplection + v45; - a2d = pPaperdoll_BodyX + paperdoll_array_4E4E30[0][v46][0];// TODO indexing - v47 = pPaperdoll_BodyY + paperdoll_array_4E4E30[0][v46][1]; - v48 = paperdoll_array_511290[0][v46][0]; + a2d = pPaperdoll_BodyX + paperdoll_Armor[0][v46][0]; + v47 = pPaperdoll_BodyY + paperdoll_Armor[0][v46][1]; + v48 = paperdoll_array_511290[0][v46][0];//Texture_Armor v49 = *(int *)(v44 + 20); a3d = v47; if ( !(v49 & 0xF0) ) @@ -7442,16 +7442,16 @@ v58 = *(int *)v57; if ( *(int *)v57 == 529 ) { - a3e = pPaperdoll_BodyY + paredoll_array_4E54B8[pBodyComplection][1]; - a2e = pPaperdoll_BodyX + paredoll_array_4E54B8[pBodyComplection][0]; + a3e = pPaperdoll_BodyY + paperdoll_Boot[pBodyComplection][5][1]; + a2e = pPaperdoll_BodyX + paperdoll_Boot[pBodyComplection][5][0]; v59 = papredoll_flying_feet[v244]; } else { if ( v58 == 512 ) { - a3e = pPaperdoll_BodyY + paredoll_array_4E54B8[pBodyComplection][3]; - a2e = pPaperdoll_BodyX + paredoll_array_4E54B8[pBodyComplection][2]; + a3e = pPaperdoll_BodyY + paperdoll_Boot[pBodyComplection][6][1]; + a2e = pPaperdoll_BodyX + paperdoll_Boot[pBodyComplection][6][0]; v59 = dword_511638[pBodyComplection][5]; } else @@ -7466,8 +7466,8 @@ else { v61 = v60 + 7 * pBodyComplection; - a3e = pPaperdoll_BodyY + dword_4E5490[0][v61][1]; - a2e = pPaperdoll_BodyX + dword_4E5490[0][v61][0]; + a3e = pPaperdoll_BodyY + paperdoll_Boot[0][v61][1]; + a2e = pPaperdoll_BodyX + paperdoll_Boot[0][v61][0]; v59 = dword_511638[0][v60 + 6 * pBodyComplection]; } } @@ -7501,11 +7501,10 @@ v68 = v217; v69 = v217->pEquipment.uMainHand; uPlayerID_a = 2 * pBodyComplection; - if ( !v69 || (v70 = *(int *)&v217->pInventoryItems[v69-1], - pItemsTable->pItems[v70].uEquipType != 1) + if ( !v69 || (v70 = *(int *)&v217->pInventoryItems[v69-1], pItemsTable->pItems[v70].uEquipType != 1) && (pItemsTable->pItems[v70].uSkillType != 4 || v217->pEquipment.uOffHand) ) - pRenderer->DrawTextureTransparent(pPaperdoll_BodyX + pPaperdoll_LeftHand[2 * pBodyComplection], - pPaperdoll_BodyY + pPaperdoll_LeftHand[2 * pBodyComplection + 1], + pRenderer->DrawTextureTransparent(pPaperdoll_BodyX + pPaperdoll_LeftHand[pBodyComplection][0], + pPaperdoll_BodyY + pPaperdoll_LeftHand[pBodyComplection][1], (Texture *)(*(unsigned int *)((char *)papredoll_dlads + v240) != -1 ? (int)&pIcons_LOD->pTextures[*(unsigned int *)((char *)papredoll_dlads + v240)] : 0)); v71 = v217->pEquipment.uBelt; if ( v71 ) @@ -7530,8 +7529,8 @@ { LABEL_168: v74 = 7 * pBodyComplection + v73; - a2f = pPaperdoll_BodyX + dword_4E57F0[0][v74][0]; - a3f = pPaperdoll_BodyY + dword_4E57F0[0][v74][1]; + a2f = pPaperdoll_BodyX + paperdoll_Belt[0][v74][0]; + a3f = pPaperdoll_BodyY + paperdoll_Belt[0][v74][1]; if ( IsDwarf != 1 || v73 == 5 ) v75 = stru_511718.texids[v74]; else @@ -7561,24 +7560,30 @@ } if ( !bRingsShownInCharScreen ) pRenderer->_4A612A(a2f, a3f, v81, v234); - goto LABEL_191; + v68 = v217; + goto LABEL_192; } if ( (*(int *)&v217->field_1F5[36 * v71 + 15] & 0xF0) != 16 ) { if ( (*(int *)&v217->field_1F5[36 * v71 + 15] & 0xF0) == 32 ) { v172 = "sp28a"; - goto LABEL_181; + v77 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v172, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v222 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v78 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(a2f, a3f, (Texture *)(v75 != -1 ? (int)&pIcons_LOD->pTextures[v75] : 0), v77, (signed __int64)v78, 0, 255); + v68 = v217; + goto LABEL_192; } if ( (*(int *)&v217->field_1F5[36 * v71 + 15] & 0xF0) == 64 ) { v172 = "sp30a"; - goto LABEL_181; - } - if ( (*(int *)&v217->field_1F5[36 * v71 + 15] & 0xF0) == 128 ) - { - v172 = "sp91a"; -LABEL_181: v77 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v172, TEXTURE_16BIT_PALETTE)]; dword_50C9A8 -= pEventTimer->uTimeElapsed; if ( dword_50C9A8 <= 0 ) @@ -7588,15 +7593,40 @@ ptr_50C9A4 = 0; } v78 = (double)GetTickCount() * 0.1; - pRenderer->_4A63E6(a2f, a3f, (Texture *)(v75 != -1 ? (int)&pIcons_LOD->pTextures[v75] : 0), - v77, (signed __int64)v78, 0, 255); -LABEL_191: + pRenderer->_4A63E6(a2f, a3f, (Texture *)(v75 != -1 ? (int)&pIcons_LOD->pTextures[v75] : 0), v77, (signed __int64)v78, 0, 255); + v68 = v217; + goto LABEL_192; + } + if ( (*(int *)&v217->field_1F5[36 * v71 + 15] & 0xF0) == 128 ) + { + v172 = "sp91a"; + v77 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v172, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v222 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v78 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(a2f, a3f, (Texture *)(v75 != -1 ? (int)&pIcons_LOD->pTextures[v75] : 0), v77, (signed __int64)v78, 0, 255); v68 = v217; goto LABEL_192; } } v172 = "sptext01"; - goto LABEL_181; + v77 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v172, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v222 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v78 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(a2f, a3f, (Texture *)(v75 != -1 ? (int)&pIcons_LOD->pTextures[v75] : 0), v77, (signed __int64)v78, 0, 255); + v68 = v217; + goto LABEL_192; } } LABEL_192: @@ -7606,8 +7636,8 @@ v83 = *(int *)&v68->pInventoryItems[v82-1]; if ( pItemsTable->pItems[v83].uEquipType == 1 || pItemsTable->pItems[v83].uSkillType == 4 && !v68->pEquipment.uOffHand ) - pRenderer->DrawTextureTransparent(pPaperdoll_BodyX + pPaperdoll_SecondLeftHand[uPlayerID_a], - pPaperdoll_BodyY + pPaperdoll_SecondLeftHand[uPlayerID_a + 1], + pRenderer->DrawTextureTransparent(pPaperdoll_BodyX + pPaperdoll_SecondLeftHand[0][uPlayerID_a], + pPaperdoll_BodyY + pPaperdoll_SecondLeftHand[0][uPlayerID_a + 1], (Texture *)(*(unsigned int *)((char *)papredoll_dlaus + v240) != -1 ? (int)&pIcons_LOD->pTextures[*(unsigned int *)((char *)papredoll_dlaus + v240)] : 0)); } v84 = v68->pEquipment.uBody; @@ -7674,9 +7704,8 @@ { v122 = papredoll_dbrds[v244]; if ( v122 != pIcons_LOD->FindTextureByName("Pending") ) - pRenderer->DrawTextureTransparent( - pPaperdoll_BodyX + dword_4E5AD0[2 * v244 - 24], - pPaperdoll_BodyY + dword_4E5AD4[2 * v244 - 24], + pRenderer->DrawTextureTransparent(pPaperdoll_BodyX + pPaperdoll_Beards[2 * v244 - 24], + pPaperdoll_BodyY + pPaperdoll_Beards[2 * v244 - 23], (Texture *)(v122 != -1 ? (int)&pIcons_LOD->pTextures[v122] : 0)); } v123 = v68->pEquipment.uHelm; @@ -7702,7 +7731,6 @@ if ( *(int *)v124 != 544 ) { v125 = *(int *)v124 - 89; -LABEL_310: if ( v125 < 0 || v125 >= 16 ) goto LABEL_335; goto LABEL_312; @@ -7727,17 +7755,22 @@ if ( (*(int *)(v124 + 20) & 0xF0) == 32 ) { v180 = "sp28a"; - goto LABEL_325; + v129 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v180, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v226 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v130 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(a2j, a3i, (Texture *)(v127 != -1 ? (int)&pIcons_LOD->pTextures[v127] : 0), + v129, (signed __int64)v130, 0, 255); + goto LABEL_335; } if ( (*(int *)(v124 + 20) & 0xF0) == 64 ) { v180 = "sp30a"; - goto LABEL_325; - } - if ( (*(int *)(v124 + 20) & 0xF0) == 128 ) - { - v180 = "sp91a"; -LABEL_325: v129 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v180, TEXTURE_16BIT_PALETTE)]; dword_50C9A8 -= pEventTimer->uTimeElapsed; if ( dword_50C9A8 <= 0 ) @@ -7747,19 +7780,40 @@ ptr_50C9A4 = 0; } v130 = (double)GetTickCount() * 0.1; - pRenderer->_4A63E6( - a2j, - a3i, - (Texture *)(v127 != -1 ? (int)&pIcons_LOD->pTextures[v127] : 0), - v129, - (signed __int64)v130, - 0, - 255); + pRenderer->_4A63E6(a2j, a3i, (Texture *)(v127 != -1 ? (int)&pIcons_LOD->pTextures[v127] : 0), + v129, (signed __int64)v130, 0, 255); + goto LABEL_335; + } + if ( (*(int *)(v124 + 20) & 0xF0) == 128 ) + { + v180 = "sp91a"; + v129 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v180, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v226 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v130 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(a2j, a3i, (Texture *)(v127 != -1 ? (int)&pIcons_LOD->pTextures[v127] : 0), + v129, (signed __int64)v130, 0, 255); goto LABEL_335; } } v180 = "sptext01"; - goto LABEL_325; + v129 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v180, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v226 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v130 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(a2j, a3i, (Texture *)(v127 != -1 ? (int)&pIcons_LOD->pTextures[v127] : 0), + v129, (signed __int64)v130, 0, 255); + goto LABEL_335; } v131 = v127 + 1; v132 = (char *)&pIcons_LOD->pTextures[v127]; @@ -7792,12 +7846,8 @@ v227 = v135; v136 = *(int *)v135; v137 = *(int *)v135; - a2k = pPaperdoll_BodyX - + array_4E4C30[pBodyComplection].field_8 - - pItemsTable->pItems[v137].uEquipX; - a3j = pPaperdoll_BodyY - + array_4E4C30[pBodyComplection].field_C - - pItemsTable->pItems[v137].uEquipY; + a2k = pPaperdoll_BodyX + paperdoll_Weapon[pBodyComplection][1][0] - pItemsTable->pItems[v137].uEquipX; + a3j = pPaperdoll_BodyY + paperdoll_Weapon[pBodyComplection][1][1] - pItemsTable->pItems[v137].uEquipY; if ( v136 == 64 ) v181 = "item64v1"; else @@ -7841,13 +7891,8 @@ if ( v149 != 2 && v149 != 1 ) { v245 = 0; -LABEL_362: - v150 = pPaperdoll_BodyX - + array_4E4C30[pBodyComplection].field_0 - - pItemsTable->pItems[v148].uEquipX; - a3k = pPaperdoll_BodyY - + LODWORD(array_4E4C30[pBodyComplection].field_4) - - pItemsTable->pItems[v148].uEquipY; + v150 = pPaperdoll_BodyX + paperdoll_Weapon[pBodyComplection][0][0] - pItemsTable->pItems[v148].uEquipX; + a3k = pPaperdoll_BodyY + paperdoll_Weapon[pBodyComplection][0][1] - pItemsTable->pItems[v148].uEquipY; goto LABEL_370; } v151 = v147 - 400; @@ -7858,7 +7903,11 @@ if ( v152 ) { if ( v152 != 12 ) - goto LABEL_362; + { + v150 = pPaperdoll_BodyX + paperdoll_Weapon[pBodyComplection][0][0] - pItemsTable->pItems[v148].uEquipX; + a3k = pPaperdoll_BodyY + paperdoll_Weapon[pBodyComplection][0][1] - pItemsTable->pItems[v148].uEquipY; + goto LABEL_370; + } v150 = 595; a3k = 33; LABEL_370: @@ -7880,23 +7929,22 @@ if ( v29 ) { v159 = (Texture *)(v243 != -1 ? (int)v160 : 0); - pRenderer->DrawTransparentGreenShade( - v150, - a3k, - (Texture *)(v243 != -1 ? (int)v160 : 0)); + pRenderer->DrawTransparentGreenShade(v150, a3k, (Texture *)(v243 != -1 ? (int)v160 : 0)); } else { v159 = (Texture *)(v243 != -1 ? (int)v160 : 0); - pRenderer->DrawTextureTransparent( - v150, - a3k, - (Texture *)(v243 != -1 ? (int)v160 : 0)); + pRenderer->DrawTextureTransparent(v150, a3k, (Texture *)(v243 != -1 ? (int)v160 : 0)); } } if ( !bRingsShownInCharScreen ) pRenderer->_4A612A(v150, a3k, v159, v249); - goto LABEL_391; + if ( v245 ) + pRenderer->DrawTextureTransparent(pPaperdoll_BodyX + pPaperdollLeftEmptyHand[uPlayerID_a], + pPaperdoll_BodyY + pPaperdollLeftEmptyHand[uPlayerID_a + 1], + (Texture *)(*(unsigned int *)((char *)papredoll_dlhs + + v240) != -1 ? (int)&pIcons_LOD->pTextures[*(unsigned int *)((char *)papredoll_dlhs + v240)] : 0)); + goto LABEL_393; } if ( (*(int *)(v228 + 20) & 0xF0) != 16 ) { @@ -7912,10 +7960,7 @@ if ( (*(int *)(v228 + 20) & 0xF0) == 128 ) { v183 = "sp91a"; -LABEL_381: - v157 = &pIcons_LOD->pTextures[v156->LoadTexture( - v183, - TEXTURE_16BIT_PALETTE)]; + v157 = &pIcons_LOD->pTextures[v156->LoadTexture(v183, TEXTURE_16BIT_PALETTE)]; dword_50C9A8 -= pEventTimer->uTimeElapsed; if ( dword_50C9A8 <= 0 ) { @@ -7924,34 +7969,74 @@ ptr_50C9A4 = 0; } v158 = (double)GetTickCount() * 0.1; - pRenderer->_4A63E6( - v150, - a3k, - (Texture *)(v154 != -1 ? (int)&pIcons_LOD->pTextures[v154] : 0), - v157, - (signed __int64)v158, - 0, - 255); -LABEL_391: + pRenderer->_4A63E6(v150, a3k, (Texture *)(v154 != -1 ? (int)&pIcons_LOD->pTextures[v154] : 0), + v157, (signed __int64)v158, 0, 255); if ( v245 ) - pRenderer->DrawTextureTransparent(pPaperdoll_BodyX - + pPaperdollLeftEmptyHand[uPlayerID_a], + pRenderer->DrawTextureTransparent(pPaperdoll_BodyX + pPaperdollLeftEmptyHand[uPlayerID_a], pPaperdoll_BodyY + pPaperdollLeftEmptyHand[uPlayerID_a + 1], (Texture *)(*(unsigned int *)((char *)papredoll_dlhs + v240) != -1 ? (int)&pIcons_LOD->pTextures[*(unsigned int *)((char *)papredoll_dlhs + v240)] : 0)); goto LABEL_393; } -LABEL_380: v183 = "sptext01"; - goto LABEL_381; + v157 = &pIcons_LOD->pTextures[v156->LoadTexture(v183, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v228 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v158 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(v150, a3k, (Texture *)(v154 != -1 ? (int)&pIcons_LOD->pTextures[v154] : 0), + v157, (signed __int64)v158, 0, 255); + if ( v245 ) + pRenderer->DrawTextureTransparent(pPaperdoll_BodyX + pPaperdollLeftEmptyHand[uPlayerID_a], + pPaperdoll_BodyY + pPaperdollLeftEmptyHand[uPlayerID_a + 1], + (Texture *)(*(unsigned int *)((char *)papredoll_dlhs + + v240) != -1 ? (int)&pIcons_LOD->pTextures[*(unsigned int *)((char *)papredoll_dlhs + v240)] : 0)); + goto LABEL_393; } v183 = "sp30a"; } v156 = pIcons_LOD; - goto LABEL_381; + v157 = &pIcons_LOD->pTextures[v156->LoadTexture(v183, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v228 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v158 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(v150, a3k, (Texture *)(v154 != -1 ? (int)&pIcons_LOD->pTextures[v154] : 0), + v157, (signed __int64)v158, 0, 255); + if ( v245 ) + pRenderer->DrawTextureTransparent(pPaperdoll_BodyX + pPaperdollLeftEmptyHand[uPlayerID_a], + pPaperdoll_BodyY + pPaperdollLeftEmptyHand[uPlayerID_a + 1], + (Texture *)(*(unsigned int *)((char *)papredoll_dlhs + + v240) != -1 ? (int)&pIcons_LOD->pTextures[*(unsigned int *)((char *)papredoll_dlhs + v240)] : 0)); + goto LABEL_393; } v156 = pIcons_LOD; - goto LABEL_380; + v183 = "sptext01"; + v157 = &pIcons_LOD->pTextures[v156->LoadTexture(v183, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v228 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v158 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(v150, a3k, (Texture *)(v154 != -1 ? (int)&pIcons_LOD->pTextures[v154] : 0), + v157, (signed __int64)v158, 0, 255); + if ( v245 ) + pRenderer->DrawTextureTransparent(pPaperdoll_BodyX + pPaperdollLeftEmptyHand[uPlayerID_a], + pPaperdoll_BodyY + pPaperdollLeftEmptyHand[uPlayerID_a + 1], + (Texture *)(*(unsigned int *)((char *)papredoll_dlhs + + v240) != -1 ? (int)&pIcons_LOD->pTextures[*(unsigned int *)((char *)papredoll_dlhs + v240)] : 0)); + goto LABEL_393; } a3k = 28; } @@ -7967,17 +8052,38 @@ if ( (*(int *)(v227 + 20) & 0xF0) == 32 ) { v182 = "sp28a"; - goto LABEL_348; + v140 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v182, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v227 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v141 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(a2k, a3j, (Texture *)(v138 != -1 ? (int)&pIcons_LOD->pTextures[v138] : 0), + v140, (signed __int64)v141, 0, 255); + goto LABEL_358; } if ( (*(int *)(v227 + 20) & 0xF0) == 64 ) { v182 = "sp30a"; - goto LABEL_348; + v140 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v182, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v227 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v141 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(a2k, a3j, (Texture *)(v138 != -1 ? (int)&pIcons_LOD->pTextures[v138] : 0), + v140, (signed __int64)v141, 0, 255); + goto LABEL_358; } if ( (*(int *)(v227 + 20) & 0xF0) == 128 ) { v182 = "sp91a"; -LABEL_348: v140 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v182, TEXTURE_16BIT_PALETTE)]; dword_50C9A8 -= pEventTimer->uTimeElapsed; if ( dword_50C9A8 <= 0 ) @@ -7993,10 +8099,23 @@ } } v182 = "sptext01"; - goto LABEL_348; + v140 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v182, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v227 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v141 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(a2k, a3j, (Texture *)(v138 != -1 ? (int)&pIcons_LOD->pTextures[v138] : 0), + v140, (signed __int64)v141, 0, 255); + goto LABEL_358; } v125 = 11; - goto LABEL_310; + if ( v125 < 0 || v125 >= 16 ) + goto LABEL_335; + goto LABEL_312; } if ( !(*(int *)(v225 + 20) & 0xF0) ) { @@ -8021,17 +8140,22 @@ if ( (*(int *)(v225 + 20) & 0xF0) == 32 ) { v179 = "sp28a"; - goto LABEL_284; + a2i = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v179, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v225 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v118 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(v117, a3h, (Texture *)(v116 != -1 ? (int)&pIcons_LOD->pTextures[v116] : 0), + a2i, (signed __int64)v118, 0, 255); + goto LABEL_292; } if ( (*(int *)(v225 + 20) & 0xF0) == 64 ) { v179 = "sp30a"; - goto LABEL_284; - } - if ( (*(int *)(v225 + 20) & 0xF0) == 128 ) - { - v179 = "sp91a"; -LABEL_284: a2i = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v179, TEXTURE_16BIT_PALETTE)]; dword_50C9A8 -= pEventTimer->uTimeElapsed; if ( dword_50C9A8 <= 0 ) @@ -8041,19 +8165,40 @@ ptr_50C9A4 = 0; } v118 = (double)GetTickCount() * 0.1; - pRenderer->_4A63E6( - v117, - a3h, - (Texture *)(v116 != -1 ? (int)&pIcons_LOD->pTextures[v116] : 0), - a2i, - (signed __int64)v118, - 0, - 255); + pRenderer->_4A63E6(v117, a3h, (Texture *)(v116 != -1 ? (int)&pIcons_LOD->pTextures[v116] : 0), + a2i, (signed __int64)v118, 0, 255); + goto LABEL_292; + } + if ( (*(int *)(v225 + 20) & 0xF0) == 128 ) + { + v179 = "sp91a"; + a2i = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v179, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v225 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v118 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(v117, a3h, (Texture *)(v116 != -1 ? (int)&pIcons_LOD->pTextures[v116] : 0), + a2i, (signed __int64)v118, 0, 255); goto LABEL_292; } } v179 = "sptext01"; - goto LABEL_284; + a2i = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v179, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v225 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v118 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(v117, a3h, (Texture *)(v116 != -1 ? (int)&pIcons_LOD->pTextures[v116] : 0), + a2i, (signed __int64)v118, 0, 255); + goto LABEL_292; } v191 = 9; break; @@ -8077,8 +8222,8 @@ { v93 = 2 * v91; v94 = paperdoll_array_511290[0][v92][1]; - a2g = pPaperdoll_BodyX + dword_4E5050[v93]; - v95 = dword_4E5050[v93 + 1]; + a2g = pPaperdoll_BodyX + paperdoll_shoulder[0][0][v93]; + v95 = paperdoll_shoulder[0][0][v93 + 1]; } else { @@ -8088,7 +8233,10 @@ } a3g = pPaperdoll_BodyY + v95; if ( v94 == pIcons_LOD->FindTextureByName("pending") ) - goto LABEL_258; + { + v68 = v217; + goto LABEL_259; + } if ( *(int *)(v242 + 516) & 0xF0 ) { if ( (*(int *)(v242 + 516) & 0xF0) != 16 ) @@ -8096,17 +8244,44 @@ if ( (*(int *)(v242 + 516) & 0xF0) == 32 ) { v173 = "sp28a"; - goto LABEL_226; + v96 = (char *)&pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v173, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v242 + 516) &= 0xFu; + ptr_50C9A4 = 0; + } + v187 = 255; + v174 = 0; + v97 = (double)GetTickCount(); + pRenderer->_4A63E6(a2g, a3g, (Texture *)(v94 != -1 ? (int)&pIcons_LOD->pTextures[v94] : 0), + (Texture *)v96, (signed __int64)(v97 * 0.1), v174, v187); + v68 = v217; + goto LABEL_259; } if ( (*(int *)(v242 + 516) & 0xF0) == 64 ) { v173 = "sp30a"; - goto LABEL_226; + v96 = (char *)&pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v173, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v242 + 516) &= 0xFu; + ptr_50C9A4 = 0; + } + v187 = 255; + v174 = 0; + v97 = (double)GetTickCount(); + pRenderer->_4A63E6(a2g, a3g, (Texture *)(v94 != -1 ? (int)&pIcons_LOD->pTextures[v94] : 0), + (Texture *)v96, (signed __int64)(v97 * 0.1), v174, v187); + v68 = v217; + goto LABEL_259; } if ( (*(int *)(v242 + 516) & 0xF0) == 128 ) { v173 = "sp91a"; -LABEL_226: v96 = (char *)&pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v173, TEXTURE_16BIT_PALETTE)]; dword_50C9A8 -= pEventTimer->uTimeElapsed; if ( dword_50C9A8 <= 0 ) @@ -8118,14 +8293,28 @@ v187 = 255; v174 = 0; v97 = (double)GetTickCount(); -LABEL_249: pRenderer->_4A63E6(a2g, a3g, (Texture *)(v94 != -1 ? (int)&pIcons_LOD->pTextures[v94] : 0), (Texture *)v96, (signed __int64)(v97 * 0.1), v174, v187); - goto LABEL_258; + v68 = v217; + goto LABEL_259; } } v173 = "sptext01"; - goto LABEL_226; + v96 = (char *)&pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v173, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v242 + 516) &= 0xFu; + ptr_50C9A4 = 0; + } + v187 = 255; + v174 = 0; + v97 = (double)GetTickCount(); + pRenderer->_4A63E6(a2g, a3g, (Texture *)(v94 != -1 ? (int)&pIcons_LOD->pTextures[v94] : 0), + (Texture *)v96, (signed __int64)(v97 * 0.1), v174, v187); + v68 = v217; + goto LABEL_259; } v98 = v94 + 1; v99 = (char *)&pIcons_LOD->pTextures[v94]; @@ -8136,9 +8325,11 @@ v188 = v101; v175 = a3g; v163 = a2g; -LABEL_231: v100->_4A6776(v163, v175, v188); - goto LABEL_256; + if ( !bRingsShownInCharScreen ) + pRenderer->_4A612A(a2g, a3g, v101, v235); + v68 = v217; + goto LABEL_259; } if ( *(char *)(v242 + 516) & 1 ) { @@ -8146,30 +8337,35 @@ v189 = v101; v176 = a3g; v164 = a2g; -LABEL_234: pRenderer->DrawTextureTransparent(v164, v176, v189); - goto LABEL_256; + if ( !bRingsShownInCharScreen ) + pRenderer->_4A612A(a2g, a3g, v101, v235); + v68 = v217; + goto LABEL_259; } v101 = (Texture *)(v98 != 0 ? (int)v99 : 0); v190 = v101; v177 = a3g; v165 = a2g; - goto LABEL_255; + pRenderer->DrawTransparentGreenShade(v165, v177, v190); + if ( !bRingsShownInCharScreen ) + pRenderer->_4A612A(a2g, a3g, v101, v235); + v68 = v217; + goto LABEL_259; } v102 = 17 * pBodyComplection + v90; v94 = paperdoll_array_511290[0][v102][1]; if ( v94 == pIcons_LOD->FindTextureByName("pending") ) { -LABEL_258: v68 = v217; goto LABEL_259; } - v103 = pPaperdoll_BodyX + dword_4E5050[2 * v102]; - v104 = pPaperdoll_BodyY + dword_4E5050[2 * v102 + 1]; + v103 = pPaperdoll_BodyX + paperdoll_shoulder[0][v102][0]; + v104 = pPaperdoll_BodyY + paperdoll_shoulder[0][v102][1]; v224 = *(int *)(v242 + 516); v105 = *(int *)(v242 + 516) & 0xF0; - a2g = pPaperdoll_BodyX + dword_4E5050[2 * v102]; - a3g = pPaperdoll_BodyY + dword_4E5050[2 * v102 + 1]; + a2g = pPaperdoll_BodyX + paperdoll_shoulder[0][v102][0]; + a3g = pPaperdoll_BodyY + paperdoll_shoulder[0][v102][1]; if ( !v105 ) { v109 = v94 + 1; @@ -8181,7 +8377,11 @@ v175 = v104; v163 = v103; v100 = pRenderer; - goto LABEL_231; + v100->_4A6776(v163, v175, v188); + if ( !bRingsShownInCharScreen ) + pRenderer->_4A612A(a2g, a3g, v101, v235); + v68 = v217; + goto LABEL_259; } if ( v224 & 1 ) { @@ -8190,19 +8390,22 @@ v176 = v104; v164 = v103; v100 = pRenderer; - goto LABEL_234; + pRenderer->DrawTextureTransparent(v164, v176, v189); + if ( !bRingsShownInCharScreen ) + pRenderer->_4A612A(a2g, a3g, v101, v235); + v68 = v217; + goto LABEL_259; } v101 = (Texture *)(v109 != 0 ? (int)v110 : 0); v190 = v101; v177 = v104; v165 = v103; v100 = pRenderer; -LABEL_255: pRenderer->DrawTransparentGreenShade(v165, v177, v190); -LABEL_256: if ( !bRingsShownInCharScreen ) pRenderer->_4A612A(a2g, a3g, v101, v235); - goto LABEL_258; + v68 = v217; + goto LABEL_259; } v106 = v105 - 16; if ( v106 ) @@ -8211,18 +8414,6 @@ if ( !v107 ) { v178 = "sp28a"; - goto LABEL_246; - } - v108 = v107 - 32; - if ( !v108 ) - { - v178 = "sp30a"; - goto LABEL_246; - } - if ( v108 == 64 ) - { - v178 = "sp91a"; -LABEL_246: v96 = (char *)&pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v178, TEXTURE_16BIT_PALETTE)]; dword_50C9A8 -= pEventTimer->uTimeElapsed; if ( dword_50C9A8 <= 0 ) @@ -8234,11 +8425,67 @@ v187 = 255; v174 = 0; v97 = (double)GetTickCount(); - goto LABEL_249; + pRenderer->_4A63E6(a2g, a3g, (Texture *)(v94 != -1 ? (int)&pIcons_LOD->pTextures[v94] : 0), + (Texture *)v96, (signed __int64)(v97 * 0.1), v174, v187); + v68 = v217; + goto LABEL_259; + } + v108 = v107 - 32; + if ( !v108 ) + { + v178 = "sp30a"; + v96 = (char *)&pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v178, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v242 + 516) &= 0xFu; + ptr_50C9A4 = 0; + } + v187 = 255; + v174 = 0; + v97 = (double)GetTickCount(); + pRenderer->_4A63E6(a2g, a3g, (Texture *)(v94 != -1 ? (int)&pIcons_LOD->pTextures[v94] : 0), + (Texture *)v96, (signed __int64)(v97 * 0.1), v174, v187); + v68 = v217; + goto LABEL_259; + } + if ( v108 == 64 ) + { + v178 = "sp91a"; + v96 = (char *)&pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v178, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v242 + 516) &= 0xFu; + ptr_50C9A4 = 0; + } + v187 = 255; + v174 = 0; + v97 = (double)GetTickCount(); + pRenderer->_4A63E6(a2g, a3g, (Texture *)(v94 != -1 ? (int)&pIcons_LOD->pTextures[v94] : 0), + (Texture *)v96, (signed __int64)(v97 * 0.1), v174, v187); + v68 = v217; + goto LABEL_259; } } v178 = "sptext01"; - goto LABEL_246; + v96 = (char *)&pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v178, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v242 + 516) &= 0xFu; + ptr_50C9A4 = 0; + } + v187 = 255; + v174 = 0; + v97 = (double)GetTickCount(); + pRenderer->_4A63E6(a2g, a3g, (Texture *)(v94 != -1 ? (int)&pIcons_LOD->pTextures[v94] : 0), + (Texture *)v96, (signed __int64)(v97 * 0.1), v174, v187); + v68 = v217; + goto LABEL_259; } v186 = 16; } @@ -8262,17 +8509,22 @@ if ( (*(int *)(v57 + 20) & 0xF0) == 32 ) { v171 = "sp28a"; - goto LABEL_145; + v63 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v171, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v221 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v64 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(a2e, a3e, (Texture *)(v59 != -1 ? (int)&pIcons_LOD->pTextures[v59] : 0), v63, + (signed __int64)v64, 0, 255); + goto LABEL_155; } if ( (*(int *)(v57 + 20) & 0xF0) == 64 ) { v171 = "sp30a"; - goto LABEL_145; - } - if ( (*(int *)(v57 + 20) & 0xF0) == 128 ) - { - v171 = "sp91a"; -LABEL_145: v63 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v171, TEXTURE_16BIT_PALETTE)]; dword_50C9A8 -= pEventTimer->uTimeElapsed; if ( dword_50C9A8 <= 0 ) @@ -8282,19 +8534,40 @@ ptr_50C9A4 = 0; } v64 = (double)GetTickCount() * 0.1; - pRenderer->_4A63E6( - a2e, - a3e, - (Texture *)(v59 != -1 ? (int)&pIcons_LOD->pTextures[v59] : 0), - v63, - (signed __int64)v64, - 0, - 255); + pRenderer->_4A63E6(a2e, a3e, (Texture *)(v59 != -1 ? (int)&pIcons_LOD->pTextures[v59] : 0), v63, + (signed __int64)v64, 0, 255); + goto LABEL_155; + } + if ( (*(int *)(v57 + 20) & 0xF0) == 128 ) + { + v171 = "sp91a"; + v63 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v171, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v221 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v64 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(a2e, a3e, (Texture *)(v59 != -1 ? (int)&pIcons_LOD->pTextures[v59] : 0), v63, + (signed __int64)v64, 0, 255); goto LABEL_155; } } v171 = "sptext01"; - goto LABEL_145; + v63 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v171, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v221 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v64 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(a2e, a3e, (Texture *)(v59 != -1 ? (int)&pIcons_LOD->pTextures[v59] : 0), v63, + (signed __int64)v64, 0, 255); + goto LABEL_155; } if ( (*(int *)(v44 + 20) & 0xF0) != 16 ) { @@ -8310,7 +8583,6 @@ if ( (*(int *)(v44 + 20) & 0xF0) == 128 ) { v170 = "sp91a"; -LABEL_117: v51 = &pIcons_LOD->pTextures[v50->LoadTexture(v170, TEXTURE_16BIT_PALETTE)]; dword_50C9A8 -= pEventTimer->uTimeElapsed; if ( dword_50C9A8 <= 0 ) @@ -8324,17 +8596,50 @@ v51, (signed __int64)v52, 0, 255); goto LABEL_127; } -LABEL_116: v170 = "sptext01"; - goto LABEL_117; + v51 = &pIcons_LOD->pTextures[v50->LoadTexture(v170, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v220 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v52 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(a2d, a3d, (Texture *)(v48 != -1 ? (int)&pIcons_LOD->pTextures[v48] : 0), + v51, (signed __int64)v52, 0, 255); + goto LABEL_127; } v170 = "sp30a"; } v50 = pIcons_LOD; - goto LABEL_117; + v51 = &pIcons_LOD->pTextures[v50->LoadTexture(v170, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v220 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v52 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(a2d, a3d, (Texture *)(v48 != -1 ? (int)&pIcons_LOD->pTextures[v48] : 0), + v51, (signed __int64)v52, 0, 255); + goto LABEL_127; } v50 = pIcons_LOD; - goto LABEL_116; + v170 = "sptext01"; + v51 = &pIcons_LOD->pTextures[v50->LoadTexture(v170, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v220 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v52 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(a2d, a3d, (Texture *)(v48 != -1 ? (int)&pIcons_LOD->pTextures[v48] : 0), + v51, (signed __int64)v52, 0, 255); + goto LABEL_127; } v185 = 16; } @@ -8359,7 +8664,6 @@ if ( (*(int *)(v32 + 20) & 0xF0) == 128 ) { v169 = "sp91a"; -LABEL_85: v39 = &pIcons_LOD->pTextures[v38->LoadTexture(v169, TEXTURE_16BIT_PALETTE)]; dword_50C9A8 -= pEventTimer->uTimeElapsed; if ( dword_50C9A8 <= 0 ) @@ -8369,27 +8673,54 @@ ptr_50C9A4 = 0; } v40 = (double)GetTickCount() * 0.1; - pRenderer->_4A63E6( - a2c, - a3c, - (Texture *)(v35 != -1 ? (int)&pIcons_LOD->pTextures[v35] : 0), - v39, - (signed __int64)v40, - 0, - 255); + pRenderer->_4A63E6(a2c, a3c, (Texture *)(v35 != -1 ? (int)&pIcons_LOD->pTextures[v35] : 0), v39, + (signed __int64)v40, 0, 255); goto LABEL_93; } -LABEL_84: v169 = "sptext01"; - goto LABEL_85; + v39 = &pIcons_LOD->pTextures[v38->LoadTexture(v169, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v219 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v40 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(a2c, a3c, (Texture *)(v35 != -1 ? (int)&pIcons_LOD->pTextures[v35] : 0), v39, + (signed __int64)v40, 0, 255); + goto LABEL_93; } v169 = "sp30a"; } v38 = pIcons_LOD; - goto LABEL_85; + v39 = &pIcons_LOD->pTextures[v38->LoadTexture(v169, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v219 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v40 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(a2c, a3c, (Texture *)(v35 != -1 ? (int)&pIcons_LOD->pTextures[v35] : 0), v39, + (signed __int64)v40, 0, 255); + goto LABEL_93; } v38 = pIcons_LOD; - goto LABEL_84; + v169 = "sptext01"; + v39 = &pIcons_LOD->pTextures[v38->LoadTexture(v169, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v219 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v40 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(a2c, a3c, (Texture *)(v35 != -1 ? (int)&pIcons_LOD->pTextures[v35] : 0), v39, + (signed __int64)v40, 0, 255); + goto LABEL_93; } v184 = 9; break; @@ -8414,7 +8745,6 @@ if ( (*(int *)(v22 + 20) & 0xF0) == 128 ) { v168 = "sp91a"; -LABEL_49: a2b = &pIcons_LOD->pTextures[v26->LoadTexture(v168, TEXTURE_16BIT_PALETTE)]; dword_50C9A8 -= pEventTimer->uTimeElapsed; if ( dword_50C9A8 <= 0 ) @@ -8428,33 +8758,58 @@ pRenderer->_4A63E6(v24, a3b, v27, a2b, (signed __int64)v28, 0, 255); goto LABEL_57; } -LABEL_48: v168 = "sptext01"; - goto LABEL_49; + a2b = &pIcons_LOD->pTextures[v26->LoadTexture(v168, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v22 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v27 = (Texture *)(v241 != -1 ? (int)&pIcons_LOD->pTextures[v241] : 0); + v28 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(v24, a3b, v27, a2b, (signed __int64)v28, 0, 255); + goto LABEL_57; } v168 = "sp30a"; } v26 = pIcons_LOD; - goto LABEL_49; + a2b = &pIcons_LOD->pTextures[v26->LoadTexture(v168, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v22 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v27 = (Texture *)(v241 != -1 ? (int)&pIcons_LOD->pTextures[v241] : 0); + v28 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(v24, a3b, v27, a2b, (signed __int64)v28, 0, 255); + goto LABEL_57; } v26 = pIcons_LOD; - goto LABEL_48; + v168 = "sptext01"; + a2b = &pIcons_LOD->pTextures[v26->LoadTexture(v168, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v22 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v27 = (Texture *)(v241 != -1 ? (int)&pIcons_LOD->pTextures[v241] : 0); + v28 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(v24, a3b, v27, a2b, (signed __int64)v28, 0, 255); + goto LABEL_57;; } a3 = pPaperdoll_BodyY; a2 = pPaperdoll_BodyX; v240 = 4 * uPlayerID_ - 4; pRenderer->DrawTextureTransparent(pPaperdoll_BodyX, pPaperdoll_BodyY, (Texture *)(*(unsigned int *)((char *)papredoll_dbods + v240) != -1 ? (int)&pIcons_LOD->pTextures[*(unsigned int *)((char *)papredoll_dbods + v240)] : 0)); - //(Texture *)(*(unsigned int *)((char *)papredoll_dbods + v240) != -1 ? 72 - // * *(unsigned int *)((char *)papredoll_dbods - // + v240) - // + 7145548 : 0)); if ( !bRingsShownInCharScreen ) pRenderer->_4A612A(a2, a3, - //(Texture *)(*(unsigned int *)((char *)papredoll_dbods + v240) != -1 ? 72 - // * *(unsigned int *)((char *)papredoll_dbods - // + v240) - // + 7145548 : 0), (Texture *)(*(unsigned int *)((char *)papredoll_dbods + v240) != -1 ? (int)&pIcons_LOD->pTextures[*(unsigned int *)((char *)papredoll_dbods + v240)] : 0), pPlayer->pEquipment.uBody); uPlayerID_a = 2 * v5; @@ -8462,12 +8817,8 @@ if ( !v6 || (v7 = *(int *)&pPlayer->pInventoryItems[v6-1], pItemsTable->pItems[v7].uEquipType != 1) && (pItemsTable->pItems[v7].uSkillType != 4 || pPlayer->pEquipment.uOffHand) ) - pRenderer->DrawTextureTransparent(pPaperdoll_BodyX + pPaperdoll_LeftHand[2 * v5], pPaperdoll_BodyY + pPaperdoll_LeftHand[2 * v5 + 1], + pRenderer->DrawTextureTransparent(pPaperdoll_BodyX + pPaperdoll_LeftHand[v5][0], pPaperdoll_BodyY + pPaperdoll_LeftHand[v5][1], (Texture *)(*(unsigned int *)((char *)papredoll_dlads + v240) != -1 ? (int)&pIcons_LOD->pTextures[*(unsigned int *)((char *)papredoll_dlads + v240)] : 0)); - //(Texture *)(*(unsigned int *)((char *)papredoll_dlads + v240) != -1 ? 72 - // * *(unsigned int *)((char *)papredoll_dlads - // + v240) - // + 7145548 : 0)); v8 = pPlayer->pEquipment.uMainHand; if ( v8 ) { @@ -8477,9 +8828,9 @@ v218 = v9; v11 = *(int *)v9; v12 = *(int *)v9; - v13 = pPaperdoll_BodyX + array_4E4C30[v5].field_8 - pItemsTable->pItems[v12].uEquipX; + v13 = pPaperdoll_BodyX + paperdoll_Weapon[v5][1][0] - pItemsTable->pItems[v12].uEquipX; a2a = v13; - a3a = pPaperdoll_BodyY + *(int *)((char *)&array_4E4C30[0].field_C + v10) - pItemsTable->pItems[v12].uEquipY; + a3a = pPaperdoll_BodyY + *(int *)((char *)&paperdoll_Weapon[0][1][1] + v10) - pItemsTable->pItems[v12].uEquipY; if ( v11 == 64 ) v166 = "item64v1"; else @@ -8493,20 +8844,24 @@ if ( (*(int *)(v218 + 20) & 0xF0) == 32 ) { v167 = "sp28a"; - goto LABEL_27; + //v16 = (Texture *)(72 * pIcons_LOD->LoadTexture(v167, TEXTURE_16BIT_PALETTE) + 7145548); + v16 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v167, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v218 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v17 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(v13, a3a, (Texture *)(v14 != -1 ? (int)&pIcons_LOD->pTextures[v14] : 0), v16, (signed __int64)v17, 0, 255); + goto LABEL_393;; } if ( (*(int *)(v218 + 20) & 0xF0) == 64 ) { v167 = "sp30a"; - goto LABEL_27; - } - if ( (*(int *)(v218 + 20) & 0xF0) == 128 ) - { - v167 = "sp91a"; -LABEL_27: //v16 = (Texture *)(72 * pIcons_LOD->LoadTexture(v167, TEXTURE_16BIT_PALETTE) + 7145548); v16 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v167, TEXTURE_16BIT_PALETTE)]; - dword_50C9A8 -= pEventTimer->uTimeElapsed; if ( dword_50C9A8 <= 0 ) { @@ -8515,19 +8870,39 @@ ptr_50C9A4 = 0; } v17 = (double)GetTickCount() * 0.1; - pRenderer->_4A63E6( - v13, - a3a, - (Texture *)(v14 != -1 ? (int)&pIcons_LOD->pTextures[v14] : 0), - v16, - (signed __int64)v17, - 0, - 255); + pRenderer->_4A63E6(v13, a3a, (Texture *)(v14 != -1 ? (int)&pIcons_LOD->pTextures[v14] : 0), v16, (signed __int64)v17, 0, 255); + goto LABEL_393; + } + if ( (*(int *)(v218 + 20) & 0xF0) == 128 ) + { + v167 = "sp91a"; + //v16 = (Texture *)(72 * pIcons_LOD->LoadTexture(v167, TEXTURE_16BIT_PALETTE) + 7145548); + v16 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v167, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v218 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v17 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(v13, a3a, (Texture *)(v14 != -1 ? (int)&pIcons_LOD->pTextures[v14] : 0), v16, (signed __int64)v17, 0, 255); goto LABEL_393; } } v167 = "sptext01"; - goto LABEL_27; + //v16 = (Texture *)(72 * pIcons_LOD->LoadTexture(v167, TEXTURE_16BIT_PALETTE) + 7145548); + v16 = &pIcons_LOD->pTextures[pIcons_LOD->LoadTexture(v167, TEXTURE_16BIT_PALETTE)]; + dword_50C9A8 -= pEventTimer->uTimeElapsed; + if ( dword_50C9A8 <= 0 ) + { + dword_50C9A8 = 0; + *(char *)(v218 + 20) &= 0xFu; + ptr_50C9A4 = 0; + } + v17 = (double)GetTickCount() * 0.1; + pRenderer->_4A63E6(v13, a3a, (Texture *)(v14 != -1 ? (int)&pIcons_LOD->pTextures[v14] : 0), v16, (signed __int64)v17, 0, 255); + goto LABEL_393; } v18 = v14 + 1; v19 = (char *)&pIcons_LOD->pTextures[v14]; @@ -8556,22 +8931,14 @@ pRenderer->DrawTextureTransparent(pPaperdoll_BodyX + pPaperdoll_RightHand[uPlayerID_a], pPaperdoll_BodyY + pPaperdoll_RightHand[uPlayerID_a + 1], (Texture *)(*(unsigned int *)((char *)papredoll_drhs + v240) != -1 ? (int)&pIcons_LOD->pTextures[*(unsigned int *)((char *)papredoll_drhs + v240)] : 0)); - //(Texture *)(*(unsigned int *)((char *)papredoll_drhs + v240) != -1 ? 72 - // * *(unsigned int *)((char *)papredoll_drhs + v240) - // + 7145548 : 0)); v161 = v217->pEquipment.uMainHand; if ( v161 ) { v162 = *(int *)&v217->pInventoryItems[v161-1]; - if ( pItemsTable->pItems[v162].uEquipType == 1 - || pItemsTable->pItems[v162].uSkillType == 4 && !v217->pEquipment.uOffHand ) - pRenderer->DrawTextureTransparent(pPaperdoll_BodyX + pPaperdoll_SecondLeftHand[uPlayerID_a], - pPaperdoll_BodyY + pPaperdoll_SecondLeftHand[uPlayerID_a + 1], + if ( pItemsTable->pItems[v162].uEquipType == 1 || pItemsTable->pItems[v162].uSkillType == 4 && !v217->pEquipment.uOffHand ) + pRenderer->DrawTextureTransparent(pPaperdoll_BodyX + pPaperdoll_SecondLeftHand[0][uPlayerID_a], + pPaperdoll_BodyY + pPaperdoll_SecondLeftHand[0][uPlayerID_a + 1], (Texture *)(*(unsigned int *)((char *)papredoll_dlhus + v240) != -1 ? (int)&pIcons_LOD->pTextures[*(unsigned int *)((char *)papredoll_dlhus + v240)] : 0)); - //(Texture *)(*(unsigned int *)((char *)papredoll_dlhus + v240) != -1 ? 72 - // * *(unsigned int *)((char *)papredoll_dlhus - // + v240) - // + 7145548 : 0)); } if ( !bRingsShownInCharScreen ) pRenderer->DrawTextureTransparent(0x25Bu, 0x12Bu,
--- a/mm7_data.cpp Tue Feb 19 09:14:16 2013 +0600 +++ b/mm7_data.cpp Tue Feb 19 17:11:57 2013 +0600 @@ -281,11 +281,11 @@ #include "MM7.h" stru161 stru_4ECBB8[6]; stru289 stru_6BE158; -stru329 array_4E4C30[4] ={ - {0x80, 0xCD, 0x1E, 0x90, 0x58, 0x55, 0, 0, 0, 0, 0, 0, 0x11, 0x68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, - {0x83, 0xC9, 0x26, 0x9E, 0x62, 0x57, 0, 0, 0, 0, 0, 0, 0x15, 0x64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, - {0x83, 0xD8, 0x1D, 0xBA, 0x58, 0x77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, - {0x7B, 0xD8, 0x23, 0xB8, 0x62, 0x77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} +int paperdoll_Weapon[4][16][2] = {//4E4C30 + 0x80, 0xCD, 0x1E, 0x90, 0x58, 0x55, 0, 0, 0, 0, 0, 0, 0x11, 0x68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0x83, 0xC9, 0x26, 0x9E, 0x62, 0x57, 0, 0, 0, 0, 0, 0, 0x15, 0x64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0x83, 0xD8, 0x1D, 0xBA, 0x58, 0x77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0x7B, 0xD8, 0x23, 0xB8, 0x62, 0x77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; stru332 stru_511698; stru333 stru_511718; @@ -650,45 +650,74 @@ char aErrorNoMouseFo[22]; // weak int pPaperdoll_BodyX = 481; int pPaperdoll_BodyY = 0; -int paperdoll_array_4E4E30[4][17][2] = +int paperdoll_Armor[4][17][2] = //0x4E4E30 { -0x2C, 0x67, 0x30, 0x69, 0x2D, 0x67, 0x2C, 0x64, 0x14, 0x66, 0x22, -0x67, 0x20, 0x66, 0x25, 0x66, 0x12, 0x66, 0x0A, 0x66, 0x13, 0x64, -0x0E, 0x64, 0x0A, 0x63, 0x14, 0x66, 0x0A, 0x63, 0x0A, 0x66, 0x25, -0x66, 0x32, 0x68, 0x32, 0x69, 0x35, 0x69, 0x33, 0x68, 0x24, 0x67, -0x30, 0x69, 0x33, 0x68, 0x31, 0x69, 0x19, 0x69, 0x19, 0x6A, 0x16, -0x66, 0x16, 0x65, 0x0F, 0x6B, 0x24, 0x67, 0x0F, 0x6B, 0x19, 0x6A, -0x31, 0x69, 0x2A, 0x8C, 0x29, 0x8C, 0x2A, 0x89, 0x29, 0x86, 0x12, -0x87, 0x2D, 0x89, 0x2A, 0x88, 0x25, 0x87, 0x12, 0x8B, 0x12, 0x8B, -0x11, 0x8A, 0x15, 0x87, 0x09, 0x89, 0x12, 0x87, 0x09, 0x89, 0x12, 0x8B, -0x25, 0x87, 0x33, 0x90, 0x32, 0x90, 0x34, 0x91, 0x32, 0x8E, 0x21, -0x8B, 0x31, 0x8B, 0x33, 0x8E, 0x2F, 0x8F, 0x16, 0x8D, 0x18, 0x8C, -0x19, 0x8C, 0x1B, 0x8E, 0x0C, 0x8C, 0x21, 0x8B, 0x0C, 0x8C, 0x18, -0x8C, 0x2F, 0x8F +// X Y + 0x2C, 0x67, 0x30, 0x69, 0x2D, 0x67, 0x2C, 0x64, 0x14, 0x66, 0x22, 0x67, 0x20, 0x66, 0x25, 0x66, 0x12, 0x66,//Human + 0x0A, 0x66, 0x13, 0x64, 0x0E, 0x64, 0x0A, 0x63, 0x14, 0x66, 0x0A, 0x63, 0x0A, 0x66, 0x25, 0x66, + + 0x32, 0x68, 0x32, 0x69, 0x35, 0x69, 0x33, 0x68, 0x24, 0x67, 0x30, 0x69, 0x33, 0x68, 0x31, 0x69, 0x19, 0x69, + 0x19, 0x6A, 0x16, 0x66, 0x16, 0x65, 0x0F, 0x6B, 0x24, 0x67, 0x0F, 0x6B, 0x19, 0x6A, 0x31, 0x69, + + 0x2A, 0x8C, 0x29, 0x8C, 0x2A, 0x89, 0x29, 0x86, 0x12, 0x87, 0x2D, 0x89, 0x2A, 0x88, 0x25, 0x87, 0x12, 0x8B, + 0x12, 0x8B, 0x11, 0x8A, 0x15, 0x87, 0x09, 0x89, 0x12, 0x87, 0x09, 0x89, 0x12, 0x8B, 0x25, 0x87, + + 0x33, 0x90, 0x32, 0x90, 0x34, 0x91, 0x32, 0x8E, 0x21, 0x8B, 0x31, 0x8B, 0x33, 0x8E, 0x2F, 0x8F, 0x16, 0x8D, + 0x18, 0x8C, 0x19, 0x8C, 0x1B, 0x8E, 0x0C, 0x8C, 0x21, 0x8B, 0x0C, 0x8C, 0x18, 0x8C, 0x2F, 0x8F, }; -int dword_4E5050[8] = +int paperdoll_shoulder[4][17][2] = { -0x64, 0x67, 0x61, 0x67, 0x65, 0x68, 0x6E, 0x74 + 0x64, 0x67, 0x61, 0x67, 0x65, 0x68, 0x6E, 0x74, 0x6C, 0x68, 0x61, 0x67, 0x66, 0x68, 0x6C, 0x6A, 0x6E, 0x6D, + 0x67, 0x69, 0x70, 0x67, 0x6E, 0x6D, 0x6C, 0x6F, 0x6C, 0x68, 0x6C, 0x6F, 0x67, 0x69, 0x6C, 0x6A, + + 0x60, 0x6B, 0x60, 0x6C, 0x60, 0x6B, 0x61, 0x6A, 0x60, 0x69, 0x60, 0x6A, 0x60, 0x6A, 0x61, 0x69, 0x63, 0x6A, + 0x64, 0x6A, 0x61, 0x66, 0x66, 0x67, 0x64, 0x6C, 0x60, 0x69, 0x64, 0x6C, 0x64, 0x6A, 0x61, 0x69, + + 0x6D, 0x8C, 0x75, 0x8C, 0, 0, 0x72, 0x8D, 0x6A, 0x89, 0, 0, 0x73, 0x8C, 0x69, 0x8C, 0x6E, 0x8D, + 0x71, 0x8D, 0x70, 0x8D, 0x72, 0x8D, 0x74, 0x8E, 0x6A, 0x89, 0x74, 0x8E, 0x71, 0x8D, 0x69, 0x8C, + + 0x72, 0x91, 0x72, 0x91, 0, 0, 0x6E, 0x92, 0x6F, 0x91, 0, 0, 0, 0, 0x6E, 0x91, 0x71, 0x90, + 0x72, 0x8D, 0x72, 0x90, 0x73, 0x93, 0x73, 0x90, 0x6F, 0x91, 0x73, 0x90, 0x72, 0x8D, 0x6E, 0x91, }; int dword_4E5270[8]; -int dword_4E5490[4][7][2]; -int paredoll_array_4E54B8[3][14]; -int paperdoll_array_4E5570[4][10][2]; +int paperdoll_Boot[4][7][2] = //4E5490 +{ + 0xE, 0x11D, 0xD, 0x11D, 0xC, 0x10A, 0xA, 0xFF, 0xD, 0xF9, 0xD, 0x137, 0xC, 0x10E, + 0x14, 0x125, 0x13, 0x122, 0x15, 0x120, 0x15, 0x114, 0x13, 0x10A, 0x11, 0x13E, 0x11, 0x116, + 0x1D, 0x121, 0x1C, 0x11F, 0x1B, 0x11B, 0x1C, 0x117, 0x16, 0x116, 0x1B, 0x137, 0x1B, 0x11B, + 0x1F, 0x127, 0x1F, 0x122, 0x1B, 0x11B, 0x1D, 0x117, 0x1D, 0x116, 0x1D, 0x137, 0x1B, 0x11F, +}; +int paperdoll_Cloak[4][10][2] = //0x4E5570 +{ + 0x11, 0x68, 0xF, 0x68, 0x14, 0x71, 0x19, 0x6B, 0x21, 0x6F, 0x5, 0x68, 0x5, 0x68, 0x14, 0x71, 0x3, 0x6B, 0xF, 0x6F, + 0x15, 0x64, 0xB, 0x6B, 0xE, 0x67, 0x15, 0x6B, 0x1B, 0x6F, 0x3, 0x6B, 0, 0x6B, 0xE, 0x67, 0, 0x6B, 0x3, 0x6F, + 0x10, 0x8A, 0x9, 0x8B, 0x18, 0x98, 0x25, 0x91, 0x29, 0x90, 0x8, 0x8A, 0x9, 0x8B, 0x18, 0x98, 0x3, 0x91, 0x3, 0x90, + 0x14, 0x92, 0x10, 0x92, 0x15, 0x98, 0x1F, 0x91, 0x22, 0x90, 0x8, 0x92, 0xC, 0x92, 0x15, 0x98, 0x3, 0x91, 0x3, 0x90, +}; int dword_4E56B0; // weak int dword_4E56B4; // weak -int dword_4E57F0[4][7][2]; -int dword_4E58D0[777]; // weak -int dword_4E58D4[777]; // weak -int dword_4E5AD0[777]; // weak 52 +int paperdoll_Belt[4][7][2] = //0x4E57F0 +{ + 0x3A, 0xB6, 0x37, 0xB2, 0x34, 0xB9, 0x3A, 0xB9, 0x37, 0xB7, 0x38, 0xAC, 0x37, 0xB7, + 0x3E, 0xAD, 0x3A, 0xAC, 0x37, 0xB0, 0x3A, 0xB1, 0x39, 0xB0, 0x3C, 0xA5, 0x39, 0xB0, + 0x3B, 0xD5, 0x37, 0xD2, 0x31, 0xD5, 0x39, 0xD6, 0x37, 0xD8, 0x37, 0xD1, 0x37, 0xD8, + 0x42, 0xD2, 0x3F, 0xD0, 0x3B, 0xD7, 0x3C, 0xD5, 0x3B, 0xD6, 0x3E, 0xCF, 0x36, 0xD6, +}; +int dword_4E58D0[777]; // HelmX 62 maybe array??? +int dword_4E58D4[777]; // HelmY 31 +int pPaperdoll_Beards[4] = //0x4E5AD0 +{ + 52, 130, 56, 136, +}; int dword_4E5AD4[777]; // weak -int pPaperdoll_LeftHand[8] = +int pPaperdoll_LeftHand[4][2] = { 0x67, 0x6A, 0x65, 0x6C, 0x74, 0x8D, 0x74, 0x93, }; -int pPaperdoll_SecondLeftHand[8] = +int pPaperdoll_SecondLeftHand[4][2] = { 0x1A, 0x6B, 0x28, 0x6D,
--- a/mm7_data.h Tue Feb 19 09:14:16 2013 +0600 +++ b/mm7_data.h Tue Feb 19 17:11:57 2013 +0600 @@ -629,21 +629,20 @@ extern char aErrorNoMouseFo[22]; // weak extern int pPaperdoll_BodyX; // weak extern int pPaperdoll_BodyY; // weak -extern int paperdoll_array_4E4E30[4][17][2]; -extern int dword_4E5050[8]; +extern int paperdoll_Armor[4][17][2]; +extern int paperdoll_shoulder[4][17][2]; extern int dword_4E5270[8]; -extern int dword_4E5490[4][7][2]; -extern int paredoll_array_4E54B8[3][14]; -extern int paperdoll_array_4E5570[4][10][2]; +extern int paperdoll_Boot[4][7][2]; +extern int paperdoll_Cloak[4][10][2]; extern int dword_4E56B0; // weak extern int dword_4E56B4; // weak -extern int dword_4E57F0[4][7][2]; +extern int paperdoll_Belt[4][7][2]; extern int dword_4E58D0[]; // weak extern int dword_4E58D4[]; // weak -extern int dword_4E5AD0[]; // weak +extern int pPaperdoll_Beards[4]; // weak extern int dword_4E5AD4[]; // weak -extern int pPaperdoll_LeftHand[8]; -extern int pPaperdoll_SecondLeftHand[8]; +extern int pPaperdoll_LeftHand[4][2]; +extern int pPaperdoll_SecondLeftHand[4][2]; extern int pPaperdoll_RightHand[8]; extern int pPaperdollLeftEmptyHand[8]; extern int pPaperdollRingsX[6];