Mercurial > mm7
comparison mm7_5.cpp @ 41:fc3016f5a07a
more skills screen fix
author | zipi |
---|---|
date | Sun, 20 Jan 2013 20:52:13 +0000 |
parents | c3a02d80c84c |
children | 2bcc7b24c831 |
comparison
equal
deleted
inserted
replaced
40:cae8922b867a | 41:fc3016f5a07a |
---|---|
17803 unsigned int v9; // esi@25 | 17803 unsigned int v9; // esi@25 |
17804 int v10; // eax@27 | 17804 int v10; // eax@27 |
17805 int a2; // [sp+10h] [bp-14h]@1 | 17805 int a2; // [sp+10h] [bp-14h]@1 |
17806 int v12; // [sp+14h] [bp-10h]@8 | 17806 int v12; // [sp+14h] [bp-10h]@8 |
17807 int v13; // [sp+14h] [bp-10h]@19 | 17807 int v13; // [sp+14h] [bp-10h]@19 |
17808 unsigned int *v14; // [sp+18h] [bp-Ch]@8 | 17808 int *v14; // [sp+18h] [bp-Ch]@8 |
17809 unsigned int *v15; // [sp+18h] [bp-Ch]@14 | 17809 int *v15; // [sp+18h] [bp-Ch]@14 |
17810 unsigned int *v16; // [sp+18h] [bp-Ch]@19 | 17810 int *v16; // [sp+18h] [bp-Ch]@19 |
17811 unsigned int *v17; // [sp+18h] [bp-Ch]@25 | 17811 int *v17; // [sp+18h] [bp-Ch]@25 |
17812 unsigned short *v18; // [sp+1Ch] [bp-8h]@8 | 17812 Player *v18; // [sp+1Ch] [bp-8h]@8 |
17813 int a5; // [sp+20h] [bp-4h]@8 | 17813 int a5; // [sp+20h] [bp-4h]@8 |
17814 | 17814 |
17815 a2 = 0; | 17815 a2 = 0; |
17816 if ( dword_507CC0 ) | 17816 if ( dword_507CC0 ) |
17817 sub_4196A0(); | 17817 sub_4196A0(); |
17832 v0 = uActiveCharacter; | 17832 v0 = uActiveCharacter; |
17833 } | 17833 } |
17834 } | 17834 } |
17835 v12 = 0; | 17835 v12 = 0; |
17836 a5 = pGUIWindow_CurrentMenu->uNumControls; | 17836 a5 = pGUIWindow_CurrentMenu->uNumControls; |
17837 v18 = &pParty->pPlayers[0].pActiveSkills[0]; //&stru_AA1058[3].pSounds[6972 * v0 + 40552]; | 17837 v18 = &pParty->pPlayers[v0-1]; //&stru_AA1058[3].pSounds[6972 * v0 + 40552]; |
17838 v2 = pFontLucida; | 17838 v2 = pFontLucida; |
17839 v14 = (unsigned int *)dword_4E2A2C; | 17839 v14 = dword_4E2A2C; |
17840 v3 = 2 * LOBYTE(pFontLucida->uFontHeight) + 13; | 17840 v3 = 2 * LOBYTE(pFontLucida->uFontHeight) + 13; |
17841 do | 17841 do |
17842 { | 17842 { |
17843 if ( v18[*v14 + 132] & 0x3F )//crash | 17843 if ( v18->pActiveSkills[*v14] & 0x3F )//crash |
17844 { | 17844 { |
17845 v4 = LOBYTE(v2->uFontHeight); | 17845 v4 = LOBYTE(v2->uFontHeight); |
17846 v3 = v3 + v4 - 3; | 17846 v3 = v3 + v4 - 3; |
17847 ++a2; | 17847 ++a2; |
17848 ++v12; | 17848 ++v12; |
17849 pGUIWindow_CurrentMenu->CreateButton(0x18u, v3, 0xCCu, v4 - 3, 3, *v14 | 0x8000, 0x79u, *v14, 0, "", 0, 0); | 17849 pGUIWindow_CurrentMenu->CreateButton(0x18u, v3, 0xCCu, v4 - 3, 3, *v14 | 0x8000, 0x79u, *v14, 0, "", 0, 0); |
17850 v2 = pFontLucida; | 17850 v2 = pFontLucida; |
17851 } | 17851 } |
17852 ++v14; | 17852 ++v14; |
17853 } | 17853 } |
17854 while ( (signed int)v14 < (signed int)dword_4E2A50 ); | 17854 while ( v14 <= &dword_4E2A2C[8] ); |
17855 if ( !v12 ) | 17855 if ( !v12 ) |
17856 v3 = v3 + LOBYTE(v2->uFontHeight) - 3; | 17856 v3 = v3 + LOBYTE(v2->uFontHeight) - 3; |
17857 v15 = (unsigned int *)_4E2A80_skills; | 17857 v15 = _4E2A80_skills; |
17858 v5 = v3 + 2 * LOBYTE(v2->uFontHeight) - 6; | 17858 v5 = v3 + 2 * LOBYTE(v2->uFontHeight) - 6; |
17859 do | 17859 do |
17860 { | 17860 { |
17861 if ( v18[ *v15 + 132] & 0x3F && a2 < 15 ) | 17861 if ( v18->pActiveSkills[*v15] & 0x3F && a2 < 15 ) |
17862 { | 17862 { |
17863 v6 = LOBYTE(v2->uFontHeight); | 17863 v6 = LOBYTE(v2->uFontHeight); |
17864 v5 = v5 + v6 - 3; | 17864 v5 = v5 + v6 - 3; |
17865 ++a2; | 17865 ++a2; |
17866 pGUIWindow_CurrentMenu->CreateButton(0x18u, v5, 0xCCu, v6 - 3, 3, *v15 | 0x8000, 0x79u, *v15, 0, "", 0, 0); | 17866 pGUIWindow_CurrentMenu->CreateButton(0x18u, v5, 0xCCu, v6 - 3, 3, *v15 | 0x8000, 0x79u, *v15, 0, "", 0, 0); |
17867 v2 = pFontLucida; | 17867 v2 = pFontLucida; |
17868 } | 17868 } |
17869 ++v15; | 17869 ++v15; |
17870 } | 17870 } |
17871 while ( (signed int)v15 <= (signed int)_4E2A80_skills[8] ); | 17871 while ( v15 <= &_4E2A80_skills[8] ); |
17872 v13 = 0; | 17872 v13 = 0; |
17873 v16 = (unsigned int *)dword_4E2A18; | 17873 v16 = pArmorSkills; |
17874 v7 = 2 * LOBYTE(v2->uFontHeight) + 13; | 17874 v7 = 2 * LOBYTE(v2->uFontHeight) + 13; |
17875 do | 17875 do |
17876 { | 17876 { |
17877 if ( v18[ *v16 + 132] & 0x3F ) | 17877 if ( v18->pActiveSkills[*v16] & 0x3F ) |
17878 { | 17878 { |
17879 v8 = LOBYTE(v2->uFontHeight); | 17879 v8 = LOBYTE(v2->uFontHeight); |
17880 v7 = v7 + v8 - 3; | 17880 v7 = v7 + v8 - 3; |
17881 ++a2; | 17881 ++a2; |
17882 ++v13; | 17882 ++v13; |
17883 pGUIWindow_CurrentMenu->CreateButton(0xF6u, v7, 0xCCu, v8 - 3, 3, *v16 | 0x8000, 0x79u, *v16, 0, "", 0, 0); | 17883 pGUIWindow_CurrentMenu->CreateButton(0xF6u, v7, 0xCCu, v8 - 3, 3, *v16 | 0x8000, 0x79u, *v16, 0, "", 0, 0); |
17884 v2 = pFontLucida; | 17884 v2 = pFontLucida; |
17885 } | 17885 } |
17886 ++v16; | 17886 ++v16; |
17887 } | 17887 } |
17888 while ( (signed int)v16 < (signed int)dword_4E2A2C ); | 17888 while ( v16 <= &pArmorSkills[4] ); |
17889 if ( !v13 ) | 17889 if ( !v13 ) |
17890 v7 = v7 + LOBYTE(v2->uFontHeight) - 3; | 17890 v7 = v7 + LOBYTE(v2->uFontHeight) - 3; |
17891 v17 = (unsigned int *)dword_4E2A50; | 17891 v17 = dword_4E2A50; |
17892 v9 = v7 + 2 * LOBYTE(v2->uFontHeight) - 6; | 17892 v9 = v7 + 2 * LOBYTE(v2->uFontHeight) - 6; |
17893 do | 17893 do |
17894 { | 17894 { |
17895 if ( v18[ *v17 + 132] & 0x3F ) | 17895 if ( v18->pActiveSkills[*v17] & 0x3F ) |
17896 { | 17896 { |
17897 v10 = LOBYTE(v2->uFontHeight); | 17897 v10 = LOBYTE(v2->uFontHeight); |
17898 v9 = v9 + v10 - 3; | 17898 v9 = v9 + v10 - 3; |
17899 ++a2; | 17899 ++a2; |
17900 pGUIWindow_CurrentMenu->CreateButton(0xF6u, v9, 0xCCu, v10 - 3, 3, *v17 | 0x8000, 0x79u, *v17, 0, "", 0, 0); | 17900 pGUIWindow_CurrentMenu->CreateButton(0xF6u, v9, 0xCCu, v10 - 3, 3, *v17 | 0x8000, 0x79u, *v17, 0, "", 0, 0); |
17901 v2 = pFontLucida; | 17901 v2 = pFontLucida; |
17902 } | 17902 } |
17903 ++v17; | 17903 ++v17; |
17904 } | 17904 } |
17905 while ( (signed int)v17 < (signed int)_4E2A80_skills ); | 17905 while ( v17 <= &dword_4E2A50[11] ); |
17906 if ( a2 ) | 17906 if ( a2 ) |
17907 pGUIWindow_CurrentMenu->_41D08F(a2, 1, 0, a5); | 17907 pGUIWindow_CurrentMenu->_41D08F(a2, 1, 0, a5); |
17908 } | 17908 } |