Mercurial > mm7
comparison mm7_5.cpp @ 315:2a09e1d6fc8f
Some 0041D895 GameUI_DrawItemInfo overhaul
author | Nomad |
---|---|
date | Wed, 20 Feb 2013 01:17:13 +0200 |
parents | e33f5a1cdc46 |
children | 981fbe2da232 5a66be213cff |
comparison
equal
deleted
inserted
replaced
306:e33f5a1cdc46 | 315:2a09e1d6fc8f |
---|---|
7309 if ( !(*(int *)(v22 + 20) & 0xF0) ) | 7309 if ( !(*(int *)(v22 + 20) & 0xF0) ) |
7310 { | 7310 { |
7311 if ( v25 & 2 ) | 7311 if ( v25 & 2 ) |
7312 { | 7312 { |
7313 v27 = (Texture *)(v241 != -1 ? (int)&pIcons_LOD->pTextures[v241] : 0); | 7313 v27 = (Texture *)(v241 != -1 ? (int)&pIcons_LOD->pTextures[v241] : 0); |
7314 pRenderer->_4A6776(v24, a3b, v27); | 7314 pRenderer->DrawTransparentRedShade(v24, a3b, v27); |
7315 } | 7315 } |
7316 else | 7316 else |
7317 { | 7317 { |
7318 v29 = (v25 & 1) == 0; | 7318 v29 = (v25 & 1) == 0; |
7319 v30 = (char *)&pIcons_LOD->pTextures[v241]; | 7319 v30 = (char *)&pIcons_LOD->pTextures[v241]; |
7369 { | 7369 { |
7370 v41 = v35 + 1; | 7370 v41 = v35 + 1; |
7371 if ( v37 & 2 ) | 7371 if ( v37 & 2 ) |
7372 { | 7372 { |
7373 v42 = (Texture *)(v41 != 0 ? (int)&pIcons_LOD->pTextures[v35] : 0); | 7373 v42 = (Texture *)(v41 != 0 ? (int)&pIcons_LOD->pTextures[v35] : 0); |
7374 pRenderer->_4A6776(a2c, v36, v42); | 7374 pRenderer->DrawTransparentRedShade(a2c, v36, v42); |
7375 } | 7375 } |
7376 else | 7376 else |
7377 { | 7377 { |
7378 v42 = (Texture *)(v41 != 0 ? (int)&pIcons_LOD->pTextures[v35] : 0); | 7378 v42 = (Texture *)(v41 != 0 ? (int)&pIcons_LOD->pTextures[v35] : 0); |
7379 pRenderer->DrawTextureTransparent(a2c, v36, v42); | 7379 pRenderer->DrawTextureTransparent(a2c, v36, v42); |
7421 { | 7421 { |
7422 v53 = v48 + 1; | 7422 v53 = v48 + 1; |
7423 if ( v49 & 2 ) | 7423 if ( v49 & 2 ) |
7424 { | 7424 { |
7425 v54 = (Texture *)(v53 != 0 ? (int)&pIcons_LOD->pTextures[v48] : 0); | 7425 v54 = (Texture *)(v53 != 0 ? (int)&pIcons_LOD->pTextures[v48] : 0); |
7426 pRenderer->_4A6776(a2d, v47, v54); | 7426 pRenderer->DrawTransparentRedShade(a2d, v47, v54); |
7427 } | 7427 } |
7428 else | 7428 else |
7429 { | 7429 { |
7430 v29 = (v49 & 1) == 0; | 7430 v29 = (v49 & 1) == 0; |
7431 v55 = (char *)&pIcons_LOD->pTextures[v48]; | 7431 v55 = (char *)&pIcons_LOD->pTextures[v48]; |
7488 v65 = v59 + 1; | 7488 v65 = v59 + 1; |
7489 v66 = (char *)&pIcons_LOD->pTextures[v59]; | 7489 v66 = (char *)&pIcons_LOD->pTextures[v59]; |
7490 if ( v62 & 2 ) | 7490 if ( v62 & 2 ) |
7491 { | 7491 { |
7492 v67 = (Texture *)(v65 != 0 ? (int)v66 : 0); | 7492 v67 = (Texture *)(v65 != 0 ? (int)v66 : 0); |
7493 pRenderer->_4A6776(a2e, a3e, v67); | 7493 pRenderer->DrawTransparentRedShade(a2e, a3e, v67); |
7494 } | 7494 } |
7495 else | 7495 else |
7496 { | 7496 { |
7497 if ( v62 & 1 ) | 7497 if ( v62 & 1 ) |
7498 { | 7498 { |
7551 v79 = v75 + 1; | 7551 v79 = v75 + 1; |
7552 v80 = (char *)&pIcons_LOD->pTextures[v75]; | 7552 v80 = (char *)&pIcons_LOD->pTextures[v75]; |
7553 if ( v76 & 2 ) | 7553 if ( v76 & 2 ) |
7554 { | 7554 { |
7555 v81 = (Texture *)(v79 != 0 ? (int)v80 : 0); | 7555 v81 = (Texture *)(v79 != 0 ? (int)v80 : 0); |
7556 pRenderer->_4A6776(a2f, a3f, v81); | 7556 pRenderer->DrawTransparentRedShade(a2f, a3f, v81); |
7557 } | 7557 } |
7558 else | 7558 else |
7559 { | 7559 { |
7560 if ( v76 & 1 ) | 7560 if ( v76 & 1 ) |
7561 { | 7561 { |
7828 v131 = v127 + 1; | 7828 v131 = v127 + 1; |
7829 v132 = (char *)&pIcons_LOD->pTextures[v127]; | 7829 v132 = (char *)&pIcons_LOD->pTextures[v127]; |
7830 if ( v128 & 2 ) | 7830 if ( v128 & 2 ) |
7831 { | 7831 { |
7832 v133 = (Texture *)(v131 != 0 ? (int)v132 : 0); | 7832 v133 = (Texture *)(v131 != 0 ? (int)v132 : 0); |
7833 pRenderer->_4A6776(a2j, a3i, v133); | 7833 pRenderer->DrawTransparentRedShade(a2j, a3i, v133); |
7834 } | 7834 } |
7835 else | 7835 else |
7836 { | 7836 { |
7837 if ( v128 & 1 ) | 7837 if ( v128 & 1 ) |
7838 { | 7838 { |
7869 v142 = v138 + 1; | 7869 v142 = v138 + 1; |
7870 v143 = (char *)&pIcons_LOD->pTextures[v138]; | 7870 v143 = (char *)&pIcons_LOD->pTextures[v138]; |
7871 if ( v139 & 2 ) | 7871 if ( v139 & 2 ) |
7872 { | 7872 { |
7873 v144 = (Texture *)(v142 != 0 ? (int)v143 : 0); | 7873 v144 = (Texture *)(v142 != 0 ? (int)v143 : 0); |
7874 pRenderer->_4A6776(a2k, a3j, v144); | 7874 pRenderer->DrawTransparentRedShade(a2k, a3j, v144); |
7875 } | 7875 } |
7876 else | 7876 else |
7877 { | 7877 { |
7878 if ( v139 & 1 ) | 7878 if ( v139 & 1 ) |
7879 { | 7879 { |
7928 if ( !(*(int *)(v228 + 20) & 0xF0) ) | 7928 if ( !(*(int *)(v228 + 20) & 0xF0) ) |
7929 { | 7929 { |
7930 if ( v155 & 2 ) | 7930 if ( v155 & 2 ) |
7931 { | 7931 { |
7932 v159 = (Texture *)(v243 != -1 ? (int)&pIcons_LOD->pTextures[v243] : 0); | 7932 v159 = (Texture *)(v243 != -1 ? (int)&pIcons_LOD->pTextures[v243] : 0); |
7933 pRenderer->_4A6776(v150, a3k, v159); | 7933 pRenderer->DrawTransparentRedShade(v150, a3k, v159); |
7934 } | 7934 } |
7935 else | 7935 else |
7936 { | 7936 { |
7937 v29 = (v155 & 1) == 0; | 7937 v29 = (v155 & 1) == 0; |
7938 v160 = (char *)&pIcons_LOD->pTextures[v243]; | 7938 v160 = (char *)&pIcons_LOD->pTextures[v243]; |
8132 v119 = v116 + 1; | 8132 v119 = v116 + 1; |
8133 v120 = (char *)&pIcons_LOD->pTextures[v116]; | 8133 v120 = (char *)&pIcons_LOD->pTextures[v116]; |
8134 if ( *(int *)(v225 + 20) & 2 ) | 8134 if ( *(int *)(v225 + 20) & 2 ) |
8135 { | 8135 { |
8136 v121 = (Texture *)(v119 != 0 ? (int)v120 : 0); | 8136 v121 = (Texture *)(v119 != 0 ? (int)v120 : 0); |
8137 pRenderer->_4A6776(a2h, a3h, v121); | 8137 pRenderer->DrawTransparentRedShade(a2h, a3h, v121); |
8138 } | 8138 } |
8139 else | 8139 else |
8140 { | 8140 { |
8141 v121 = (Texture *)(v119 != 0 ? (int)v120 : 0); | 8141 v121 = (Texture *)(v119 != 0 ? (int)v120 : 0); |
8142 pRenderer->DrawTextureTransparent(a2h, a3h, v121); | 8142 pRenderer->DrawTextureTransparent(a2h, a3h, v121); |
8333 { | 8333 { |
8334 v101 = (Texture *)(v98 != 0 ? (int)v99 : 0); | 8334 v101 = (Texture *)(v98 != 0 ? (int)v99 : 0); |
8335 v188 = v101; | 8335 v188 = v101; |
8336 v175 = a3g; | 8336 v175 = a3g; |
8337 v163 = a2g; | 8337 v163 = a2g; |
8338 v100->_4A6776(v163, v175, v188); | 8338 v100->DrawTransparentRedShade(v163, v175, v188); |
8339 if ( !bRingsShownInCharScreen ) | 8339 if ( !bRingsShownInCharScreen ) |
8340 pRenderer->_4A612A(a2g, a3g, v101, v235); | 8340 pRenderer->_4A612A(a2g, a3g, v101, v235); |
8341 v68 = v217; | 8341 v68 = v217; |
8342 goto LABEL_259; | 8342 goto LABEL_259; |
8343 } | 8343 } |
8385 v101 = (Texture *)(v109 != 0 ? (int)v110 : 0); | 8385 v101 = (Texture *)(v109 != 0 ? (int)v110 : 0); |
8386 v188 = v101; | 8386 v188 = v101; |
8387 v175 = v104; | 8387 v175 = v104; |
8388 v163 = v103; | 8388 v163 = v103; |
8389 v100 = pRenderer; | 8389 v100 = pRenderer; |
8390 v100->_4A6776(v163, v175, v188); | 8390 v100->DrawTransparentRedShade(v163, v175, v188); |
8391 if ( !bRingsShownInCharScreen ) | 8391 if ( !bRingsShownInCharScreen ) |
8392 pRenderer->_4A612A(a2g, a3g, v101, v235); | 8392 pRenderer->_4A612A(a2g, a3g, v101, v235); |
8393 v68 = v217; | 8393 v68 = v217; |
8394 goto LABEL_259; | 8394 goto LABEL_259; |
8395 } | 8395 } |
8917 v18 = v14 + 1; | 8917 v18 = v14 + 1; |
8918 v19 = (char *)&pIcons_LOD->pTextures[v14]; | 8918 v19 = (char *)&pIcons_LOD->pTextures[v14]; |
8919 if ( v15 & 2 ) | 8919 if ( v15 & 2 ) |
8920 { | 8920 { |
8921 v20 = (Texture *)(v18 != 0 ? (int)v19 : 0); | 8921 v20 = (Texture *)(v18 != 0 ? (int)v19 : 0); |
8922 pRenderer->_4A6776(a2a, a3a, v20); | 8922 pRenderer->DrawTransparentRedShade(a2a, a3a, v20); |
8923 } | 8923 } |
8924 else | 8924 else |
8925 { | 8925 { |
8926 if ( v15 & 1 ) | 8926 if ( v15 & 1 ) |
8927 { | 8927 { |
9077 } | 9077 } |
9078 v9 = v5 + 1; | 9078 v9 = v5 + 1; |
9079 if ( v6 & 2 ) | 9079 if ( v6 & 2 ) |
9080 { | 9080 { |
9081 v10 = (Texture *)(v9 != 0 ? (int)&pIcons_LOD->pTextures[v5] : 0); | 9081 v10 = (Texture *)(v9 != 0 ? (int)&pIcons_LOD->pTextures[v5] : 0); |
9082 pRenderer->_4A6776(a2, a3, v10); | 9082 pRenderer->DrawTransparentRedShade(a2, a3, v10); |
9083 } | 9083 } |
9084 else | 9084 else |
9085 { | 9085 { |
9086 v11 = (v6 & 1) == 0; | 9086 v11 = (v6 & 1) == 0; |
9087 v12 = &pIcons_LOD->pTextures[v5]; | 9087 v12 = &pIcons_LOD->pTextures[v5]; |
9121 if ( v17 & 2 ) | 9121 if ( v17 & 2 ) |
9122 { | 9122 { |
9123 v21 = 9 * v16; | 9123 v21 = 9 * v16; |
9124 v22 = 493; | 9124 v22 = 493; |
9125 v23 = (Texture *)(v20 != 0 ? (int)&pIcons_LOD->pTextures[8 * v21 / 0x48u] : 0); | 9125 v23 = (Texture *)(v20 != 0 ? (int)&pIcons_LOD->pTextures[8 * v21 / 0x48u] : 0); |
9126 pRenderer->_4A6776(0x1EDu, 0x5Bu, v23); | 9126 pRenderer->DrawTransparentRedShade(0x1EDu, 0x5Bu, v23); |
9127 } | 9127 } |
9128 else | 9128 else |
9129 { | 9129 { |
9130 v11 = (v17 & 1) == 0; | 9130 v11 = (v17 & 1) == 0; |
9131 v24 = 9 * v16; | 9131 v24 = 9 * v16; |
9201 { | 9201 { |
9202 v33 = v28 + 1; | 9202 v33 = v28 + 1; |
9203 if ( v29 & 2 ) | 9203 if ( v29 & 2 ) |
9204 { | 9204 { |
9205 v34 = v33 != 0 ? (int)&pIcons_LOD->pTextures[v28] : 0; | 9205 v34 = v33 != 0 ? (int)&pIcons_LOD->pTextures[v28] : 0; |
9206 pRenderer->_4A6776(0x24Au, 0x58u, (Texture *)v34); | 9206 pRenderer->DrawTransparentRedShade(0x24Au, 0x58u, (Texture *)v34); |
9207 } | 9207 } |
9208 else | 9208 else |
9209 { | 9209 { |
9210 v11 = (v29 & 1) == 0; | 9210 v11 = (v29 & 1) == 0; |
9211 v35 = &pIcons_LOD->pTextures[v28]; | 9211 v35 = &pIcons_LOD->pTextures[v28]; |
11855 sDepthb < *(__int16 *)((char *)&pIndoor->pSectors->field_C + v61) | 11855 sDepthb < *(__int16 *)((char *)&pIndoor->pSectors->field_C + v61) |
11856 + 2 * *(__int16 *)((char *)&pIndoor->pSectors->uNumFloors + v61); | 11856 + 2 * *(__int16 *)((char *)&pIndoor->pSectors->uNumFloors + v61); |
11857 ++sDepthb ) | 11857 ++sDepthb ) |
11858 { | 11858 { |
11859 v62 = &pIndoor->pFaces[(*(unsigned __int16 **)((char *)&v60->pWalls + v61))[sDepthb]]; | 11859 v62 = &pIndoor->pFaces[(*(unsigned __int16 **)((char *)&v60->pWalls + v61))[sDepthb]]; |
11860 if ( v62->uAttributes & 1 | 11860 if ( v62->TwoSided() |
11861 || v119 > v62->pBounding.x2 | 11861 || v119 > v62->pBounding.x2 |
11862 || v123 < v62->pBounding.x1 | 11862 || v123 < v62->pBounding.x1 |
11863 || v127 > v62->pBounding.y2 | 11863 || v127 > v62->pBounding.y2 |
11864 || v131 < v62->pBounding.y1 | 11864 || v131 < v62->pBounding.y1 |
11865 || v135 > v62->pBounding.z2 | 11865 || v135 > v62->pBounding.z2 |
12021 v82 = pOut.x; | 12021 v82 = pOut.x; |
12022 } | 12022 } |
12023 while ( 1 ) | 12023 while ( 1 ) |
12024 { | 12024 { |
12025 v90 = &pIndoor->pFaces[(*(unsigned __int16 **)((char *)&v88->pWalls + v89))[v162]]; | 12025 v90 = &pIndoor->pFaces[(*(unsigned __int16 **)((char *)&v88->pWalls + v89))[v162]]; |
12026 if ( v90->uAttributes & 1 | 12026 if ( v90->TwoSided() |
12027 || v120 > v90->pBounding.x2 | 12027 || v120 > v90->pBounding.x2 |
12028 || v124 < v90->pBounding.x1 | 12028 || v124 < v90->pBounding.x1 |
12029 || v128 > v90->pBounding.y2 | 12029 || v128 > v90->pBounding.y2 |
12030 || v132 < v90->pBounding.y1 | 12030 || v132 < v90->pBounding.y1 |
12031 || v136 > v90->pBounding.z2 | 12031 || v136 > v90->pBounding.z2 |
15576 v26 = atoi((const char *)pKeyActionMap->pPressedKeysBuffer); | 15576 v26 = atoi((const char *)pKeyActionMap->pPressedKeysBuffer); |
15577 if ( v26 > 0 ) | 15577 if ( v26 > 0 ) |
15578 { | 15578 { |
15579 if ( v26 < 800 ) | 15579 if ( v26 < 800 ) |
15580 { | 15580 { |
15581 pItemGen.uAttributes |= 1u; | 15581 pItemGen.SetIdentified(); |
15582 pItemGen.uItemID = v26; | 15582 pItemGen.uItemID = v26; |
15583 if ( pItemsTable->pItems[v26].uEquipType == 12 ) | 15583 if ( pItemsTable->pItems[v26].uEquipType == 12 ) |
15584 { | 15584 { |
15585 pItemGen.uNumCharges = rand() % 6 + pItemsTable->pItems[pItemGen.uItemID].uDamageMod + 1; | 15585 pItemGen.uNumCharges = rand() % 6 + pItemsTable->pItems[pItemGen.uItemID].uDamageMod + 1; |
15586 pItemGen.uMaxCharges = LOBYTE(pItemGen.uNumCharges); | 15586 pItemGen.uMaxCharges = LOBYTE(pItemGen.uNumCharges); |