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];