Mercurial > mm7
comparison mm7_1.cpp @ 500:63b171359be2
Слияние
author | Ritor1 |
---|---|
date | Thu, 28 Feb 2013 10:36:37 +0600 |
parents | 511e3a6f587a 0e27362ac1d9 |
children | 6fa3ff8ef729 |
comparison
equal
deleted
inserted
replaced
499:511e3a6f587a | 500:63b171359be2 |
---|---|
692 { | 692 { |
693 while ( 1 ) | 693 while ( 1 ) |
694 { | 694 { |
695 v5 = pStru179.field_0[v21]; | 695 v5 = pStru179.field_0[v21]; |
696 v20 = 8 * pStru179.field_0[v21]; | 696 v20 = 8 * pStru179.field_0[v21]; |
697 v6 = (char *)pAwards[v20/8-1].pText;//(char *)dword_723E80_award_related[v20 / 4]; | 697 v6 = (char *)pAwards[(v20-1)/8].pText;//(char *)dword_723E80_award_related[v20 / 4]; |
698 if ( v5 != 1 ) | 698 if ( v5 != 1 ) |
699 break; | 699 break; |
700 v17 = pParty->uFine; | 700 v17 = pParty->uFine; |
701 LABEL_42: | 701 LABEL_42: |
702 sprintf(pTmpBuf, v6, v17); | 702 sprintf(pTmpBuf, v6, v17); |
5911 v12 = v10 - v11; | 5911 v12 = v10 - v11; |
5912 v13 = 0x80000 - v11; | 5912 v13 = 0x80000 - v11; |
5913 LODWORD(v14) = v13 << 16; | 5913 LODWORD(v14) = v13 << 16; |
5914 HIDWORD(v14) = v13 >> 16; | 5914 HIDWORD(v14) = v13 >> 16; |
5915 v15 = &_50B744_view_transformed_ys[i - 1]; | 5915 v15 = &_50B744_view_transformed_ys[i - 1]; |
5916 dword_50B828[v79] = ((unsigned __int64)((_50B834_view_transformed_zs[i] - _50B834_view_transformed_zs[i - 1]) | 5916 dword_50B828[v79] = ((unsigned __int64)((_50B834_view_transformed_zs[i] - _50B834_view_transformed_zs[i - 1]) * v14 / v12) >> 16) + _50B834_view_transformed_zs[i - 1]; |
5917 * v14 | |
5918 / v12) >> 16) | |
5919 + _50B834_view_transformed_zs[i - 1]; | |
5920 thisb = (unsigned __int64)((_50B744_view_transformed_ys[i] - _50B744_view_transformed_ys[i - 1]) * v14 / v12) >> 16; | 5917 thisb = (unsigned __int64)((_50B744_view_transformed_ys[i] - _50B744_view_transformed_ys[i - 1]) * v14 / v12) >> 16; |
5921 } | 5918 } |
5922 else | 5919 else |
5923 { | 5920 { |
5924 v16 = v11 - v10; | 5921 v16 = v11 - v10; |
5999 v31 = v30 - 1; | 5996 v31 = v30 - 1; |
6000 v32 = (v31 & 0x800000) - 0x400000; | 5997 v32 = (v31 & 0x800000) - 0x400000; |
6001 } | 5998 } |
6002 } | 5999 } |
6003 dword_50BA08[v22] = v32; | 6000 dword_50BA08[v22] = v32; |
6004 dword_50BAF4_xs[v22 + 1] = (unsigned __int64)(SHIWORD(pBLVRenderParams->field_40) | 6001 dword_50BAF4_xs[v22 + 1] = (unsigned __int64)(SHIWORD(pBLVRenderParams->field_40) * (signed __int64)dword_50BAF4_xs[v22 + 1]) >> 16; |
6005 * (signed __int64)dword_50BAF4_xs[v22 + 1]) >> 16; | |
6006 v35 = (unsigned __int64)(SHIWORD(pBLVRenderParams->field_40) * (signed __int64)dword_50BA08[v22]) >> 16; | 6002 v35 = (unsigned __int64)(SHIWORD(pBLVRenderParams->field_40) * (signed __int64)dword_50BA08[v22]) >> 16; |
6007 dword_50BAF4_xs[v22 + 1] = pBLVRenderParams->uViewportCenterX - dword_50BAF4_xs[v22 + 1]; | 6003 dword_50BAF4_xs[v22 + 1] = pBLVRenderParams->uViewportCenterX - dword_50BAF4_xs[v22 + 1]; |
6008 ++ia; | 6004 ++ia; |
6009 } | 6005 } |
6010 v36 = 0; | 6006 v36 = 0; |
6024 v82 = v41 >= (signed int)v37; | 6020 v82 = v41 >= (signed int)v37; |
6025 if ( v38 ^ v82 ) | 6021 if ( v38 ^ v82 ) |
6026 { | 6022 { |
6027 if ( v41 >= (signed int)v37 ) | 6023 if ( v41 >= (signed int)v37 ) |
6028 { | 6024 { |
6029 v67 = (signed int)(v37 - dword_50BAF4_xs[v40]) | 6025 v67 = (signed int)(v37 - dword_50BAF4_xs[v40]) * (signed __int64)(dword_50BA08[v40] - dword_50B9F8[v40 + 3]) / (v41 - dword_50BAF4_xs[v40]); |
6030 * (signed __int64)(dword_50BA08[v40] - dword_50B9F8[v40 + 3]) | |
6031 / (v41 - dword_50BAF4_xs[v40]); | |
6032 v42 = dword_50B9F8[v40 + 3]; | 6026 v42 = dword_50B9F8[v40 + 3]; |
6033 } | 6027 } |
6034 else | 6028 else |
6035 { | 6029 { |
6036 v67 = (signed int)(v37 - v41) | 6030 v67 = (signed int)(v37 - v41) * (signed __int64)(dword_50B9F8[v40 + 3] - dword_50BA08[v40]) / (dword_50BAF4_xs[v40] - v41); |
6037 * (signed __int64)(dword_50B9F8[v40 + 3] - dword_50BA08[v40]) | |
6038 / (dword_50BAF4_xs[v40] - v41); | |
6039 v42 = dword_50BA08[v40]; | 6031 v42 = dword_50BA08[v40]; |
6040 } | 6032 } |
6041 ++v36; | 6033 ++v36; |
6042 dword_50B9F8[v36] = v67 + v42; | 6034 dword_50B9F8[v36] = v67 + v42; |
6043 v37 = pBLVRenderParams->uViewportX; | 6035 v37 = pBLVRenderParams->uViewportX; |
6051 } | 6043 } |
6052 v39 = ib++ + 1; | 6044 v39 = ib++ + 1; |
6053 } | 6045 } |
6054 while ( ib <= v79 ); | 6046 while ( ib <= v79 ); |
6055 | 6047 |
6056 if ( !v36 | 6048 if (v36 < 1) |
6057 || (v43 = 0, | |
6058 dword_50BAE8_xs[v36 + 1] = dword_50BAE8_xs[1], | |
6059 dword_50B9F8[v36 + 1] = dword_50B9F8[1], | |
6060 v44 = pBLVRenderParams->uViewportZ, | |
6061 thisd = dword_50BAE8_xs[1] <= (signed int)pBLVRenderParams->uViewportZ, | |
6062 ic = 1, | |
6063 v36 < 1) ) | |
6064 return 0; | 6049 return 0; |
6050 | |
6051 v43 = 0; | |
6052 dword_50BAE8_xs[v36 + 1] = dword_50BAE8_xs[1]; | |
6053 dword_50B9F8[v36 + 1] = dword_50B9F8[1]; | |
6054 v44 = pBLVRenderParams->uViewportZ; | |
6055 thisd = dword_50BAE8_xs[1] <= (signed int)pBLVRenderParams->uViewportZ; | |
6056 ic = 1; | |
6065 | 6057 |
6066 do | 6058 do |
6067 { | 6059 { |
6068 v45 = ic; | 6060 v45 = ic; |
6069 v46 = dword_50BAE8_xs[ic + 1]; | 6061 v46 = dword_50BAE8_xs[ic + 1]; |
6070 v83 = v46 <= (signed int)v44; | 6062 v83 = v46 <= (signed int)v44; |
6071 if ( thisd ^ v83 ) | 6063 if ( thisd ^ v83 ) |
6072 { | 6064 { |
6073 if ( v46 <= (signed int)v44 ) | 6065 if ( v46 <= (signed int)v44 ) |
6074 { | 6066 { |
6075 v68 = (signed int)(v44 - dword_50BAE8_xs[v45]) | 6067 v68 = (signed int)(v44 - dword_50BAE8_xs[v45]) * (signed __int64)(dword_50B9F8[v45 + 1] - dword_50B9F8[v45]) / (v46 - dword_50BAE8_xs[v45]); |
6076 * (signed __int64)(dword_50B9F8[v45 + 1] - dword_50B9F8[v45]) | |
6077 / (v46 - dword_50BAE8_xs[v45]); | |
6078 v47 = dword_50B9F8[v45]; | 6068 v47 = dword_50B9F8[v45]; |
6079 } | 6069 } |
6080 else | 6070 else |
6081 { | 6071 { |
6082 v68 = (signed int)(v44 - v46) | 6072 v68 = (signed int)(v44 - v46) * (signed __int64)(dword_50B9F8[v45] - dword_50B9F8[v45 + 1]) / (dword_50BAE8_xs[v45] - v46); |
6083 * (signed __int64)(dword_50B9F8[v45] - dword_50B9F8[v45 + 1]) | |
6084 / (dword_50BAE8_xs[v45] - v46); | |
6085 v47 = dword_50B9F8[v45 + 1]; | 6073 v47 = dword_50B9F8[v45 + 1]; |
6086 } | 6074 } |
6087 ++v43; | 6075 ++v43; |
6088 dword_50B9EC[v43] = v68 + v47; | 6076 dword_50B9EC[v43] = v68 + v47; |
6089 v44 = pBLVRenderParams->uViewportZ; | 6077 v44 = pBLVRenderParams->uViewportZ; |
6096 } | 6084 } |
6097 ++ic; | 6085 ++ic; |
6098 thisd = v83; | 6086 thisd = v83; |
6099 } | 6087 } |
6100 while ( ic <= v36 ); | 6088 while ( ic <= v36 ); |
6101 if ( !v43 | 6089 |
6102 || (v48 = 0, | 6090 if (v43 < 1) |
6103 dword_50BAE0[v43] = dword_50BAE0[0], | |
6104 dword_50B9F0[v43] = dword_50B9F0[0], | |
6105 v49 = pBLVRenderParams->uViewportY, | |
6106 v50 = dword_50B9F0[0] < (signed int)pBLVRenderParams->uViewportY, | |
6107 LOBYTE(v50) = dword_50B9F0[0] >= (signed int)pBLVRenderParams->uViewportY, | |
6108 v51 = 1, | |
6109 id = 1, | |
6110 v43 < 1) ) | |
6111 return 0; | 6091 return 0; |
6092 | |
6093 v48 = 0; | |
6094 dword_50BAE0[v43] = dword_50BAE0[0]; | |
6095 dword_50B9F0[v43] = dword_50B9F0[0]; | |
6096 v49 = pBLVRenderParams->uViewportY; | |
6097 v50 = dword_50B9F0[0] < (signed int)pBLVRenderParams->uViewportY; | |
6098 LOBYTE(v50) = dword_50B9F0[0] >= (signed int)pBLVRenderParams->uViewportY; | |
6099 v51 = 1; | |
6100 id = 1; | |
6112 do | 6101 do |
6113 { | 6102 { |
6114 v52 = v51; | 6103 v52 = v51; |
6115 v53 = dword_50B9F0[v52]; | 6104 v53 = dword_50B9F0[v52]; |
6116 v84 = v53 >= (signed int)v49; | 6105 v84 = v53 >= (signed int)v49; |
6117 if ( v50 ^ v84 ) | 6106 if ( v50 ^ v84 ) |
6118 { | 6107 { |
6119 if ( v53 >= (signed int)v49 ) | 6108 if ( v53 >= (signed int)v49 ) |
6120 { | 6109 { |
6121 v69 = (signed int)(v49 - dword_50B9EC[v52]) | 6110 v69 = (signed int)(v49 - dword_50B9EC[v52]) * (signed __int64)(dword_50BAE0[v52] - dword_50BADC_xs[v52]) / (v53 - dword_50B9EC[v52]); |
6122 * (signed __int64)(dword_50BAE0[v52] - dword_50BADC_xs[v52]) | |
6123 / (v53 - dword_50B9EC[v52]); | |
6124 v54 = dword_50BADC_xs[v52]; | 6111 v54 = dword_50BADC_xs[v52]; |
6125 } | 6112 } |
6126 else | 6113 else |
6127 { | 6114 { |
6128 v69 = (signed int)(v49 - v53) | 6115 v69 = (signed int)(v49 - v53) * (signed __int64)(dword_50BADC_xs[v52] - dword_50BAE0[v52]) / (dword_50B9EC[v52] - v53); |
6129 * (signed __int64)(dword_50BADC_xs[v52] - dword_50BAE0[v52]) | |
6130 / (dword_50B9EC[v52] - v53); | |
6131 v54 = dword_50BAE0[v52]; | 6116 v54 = dword_50BAE0[v52]; |
6132 } | 6117 } |
6133 ++v48; | 6118 ++v48; |
6134 dword_50BAD0[v48] = v69 + v54; | 6119 dword_50BAD0[v48] = v69 + v54; |
6135 v49 = pBLVRenderParams->uViewportY; | 6120 v49 = pBLVRenderParams->uViewportY; |
6142 dword_50B9E0_ys[v48++ + 1] = dword_50B9F0[v52]; | 6127 dword_50B9E0_ys[v48++ + 1] = dword_50B9F0[v52]; |
6143 } | 6128 } |
6144 v51 = id++ + 1; | 6129 v51 = id++ + 1; |
6145 } | 6130 } |
6146 while ( id <= v43 ); | 6131 while ( id <= v43 ); |
6147 if ( !v48 | 6132 |
6148 || (v55 = 0, | 6133 if (v48 < 1) |
6149 dword_50BAD4[v48] = dword_50BAD4[0], | |
6150 dword_50B9E0_ys[v48 + 1] = dword_50B9E0_ys[1], | |
6151 v56 = pBLVRenderParams->uViewportW, | |
6152 thise = dword_50B9E0_ys[1] <= (signed int)pBLVRenderParams->uViewportW, | |
6153 ie = 1, | |
6154 v48 < 1) ) | |
6155 return 0; | 6134 return 0; |
6135 | |
6136 v55 = 0; | |
6137 dword_50BAD4[v48] = dword_50BAD4[0]; | |
6138 dword_50B9E0_ys[v48 + 1] = dword_50B9E0_ys[1]; | |
6139 v56 = pBLVRenderParams->uViewportW; | |
6140 thise = dword_50B9E0_ys[1] <= (signed int)pBLVRenderParams->uViewportW; | |
6141 ie = 1; | |
6156 do | 6142 do |
6157 { | 6143 { |
6158 v57 = ie; | 6144 v57 = ie; |
6159 v58 = dword_50B9E0_ys[ie + 1]; | 6145 v58 = dword_50B9E0_ys[ie + 1]; |
6160 v85 = v58 <= (signed int)v56; | 6146 v85 = v58 <= (signed int)v56; |
6161 if ( thise ^ v85 ) | 6147 if ( thise ^ v85 ) |
6162 { | 6148 { |
6163 if ( v58 <= (signed int)v56 ) | 6149 if ( v58 <= (signed int)v56 ) |
6164 { | 6150 { |
6165 v70 = (signed int)(v56 - dword_50B9E0_ys[v57]) | 6151 v70 = (signed int)(v56 - dword_50B9E0_ys[v57]) * (signed __int64)(dword_50BAD4[v57] - dword_50BAD0[v57]) / (v58 - dword_50B9E0_ys[v57]); |
6166 * (signed __int64)(dword_50BAD4[v57] - dword_50BAD0[v57]) | |
6167 / (v58 - dword_50B9E0_ys[v57]); | |
6168 v59 = dword_50BAD0[v57]; | 6152 v59 = dword_50BAD0[v57]; |
6169 } | 6153 } |
6170 else | 6154 else |
6171 { | 6155 { |
6172 v70 = (signed int)(v56 - v58) | 6156 v70 = (signed int)(v56 - v58) * (signed __int64)(dword_50BAD0[v57] - dword_50BAD4[v57]) / (dword_50B9E0_ys[v57] - v58); |
6173 * (signed __int64)(dword_50BAD0[v57] - dword_50BAD4[v57]) | |
6174 / (dword_50B9E0_ys[v57] - v58); | |
6175 v59 = dword_50BAD4[v57]; | 6157 v59 = dword_50BAD4[v57]; |
6176 } | 6158 } |
6177 ++v55; | 6159 ++v55; |
6178 dword_50BAC4[v55] = v70 + v59; | 6160 dword_50BAC4[v55] = v70 + v59; |
6179 v56 = pBLVRenderParams->uViewportW; | 6161 v56 = pBLVRenderParams->uViewportW; |
6186 } | 6168 } |
6187 ++ie; | 6169 ++ie; |
6188 thise = v85; | 6170 thise = v85; |
6189 } | 6171 } |
6190 while ( ie <= v48 ); | 6172 while ( ie <= v48 ); |
6173 | |
6191 if ( !v55 ) | 6174 if ( !v55 ) |
6192 return 0; | 6175 return 0; |
6193 v61 = pRenderer->pRenderD3D == 0; | 6176 v61 = pRenderer->pRenderD3D == 0; |
6194 dword_50BAC8[v55] = dword_50BAC8[0]; | 6177 dword_50BAC8[v55] = dword_50BAC8[0]; |
6195 dword_50B9D8_ys[v55] = dword_50B9D8_ys[0]; | 6178 dword_50B9D8_ys[v55] = dword_50B9D8_ys[0]; |