belial
- I view world preview function ~week ago but for analyze and make it work need more time
Code:
int WorldPreview(int Struct, bool Arg2) //5DB130 (1.04.04)
{
gObjUser.Refresh();
// ----
float v13 = 0.0;
float v12 = 0.0;
float v8 = 0.0;
float v20 = 0.0;
float v9 = 0.0;
float v11 = 0.0;
// ----
if( pMapNumber == 6 && !strcmp(gObjUser.lpViewPlayer->Name, "webzen")
|| !strcmp(gObjUser.lpViewPlayer->Name, "webzen2") )
{
v13 = (double)pGetSomeSize() / 640.0;
v12 = 8500.0;
v8 = (float)8500.0 * 0.05000000074505806;
v20 = (float)8500.0 * 0.4699999988079071;
v9 = v13 * 3000.0;
v11 = v13 * 540.0;
}
else if( pIsLorenDeep(pMapNumber) && pPlayerState == GameProcess )
{
v13 = (double)pGetSomeSize() / 640.0;
if( (unsigned __int8)pCheckSomeLimit(oUserPreviewStruct + 1028)
&& (*(float *)(oUserPreviewStruct + 1028) < 17100.0 || *(float *)(oUserPreviewStruct + 1028) > 18300.0) )
{
v12 = 5100.0;
v8 = (float)5100.0 * 0.1899999976158142;
v20 = (float)5100.0 * 0.4699999988079071;
v9 = v13 * 2250.0;
v11 = v13 * 540.0;
}
else
{
v12 = 3300.0;
v8 = (float)3300.0 * 0.1899999976158142;
v20 = (float)3300.0 * 0.4699999988079071;
v9 = v13 * 1300.0;
v11 = v13 * 580.0;
}
}
else if( pMapNumber == 62 ) //Santa Village
{
v13 = (double)pGetSomeSize() / 640.0 * 1.0;
v8 = (float)2400.0 * 0.1899999976158142;
v20 = (float)2400.0 * 0.4699999988079071;
v12 = 2650.0;
v9 = v13 * 1250.0;
v11 = v13 * 540.0;
}
else if( pInVulcanus() || (unsigned __int8)pInDoppel1() )
{
v13 = (double)pGetSomeSize() / 640.0;
v8 = 55.0;
v20 = 830.0;
v12 = 3300.0;
v9 = v13 * 1900.0;
v11 = v13 * 600.0;
}
else
{
TDEBUG("[Else]");
//check
switch(*(DWORD*)0x8787D40) //very like plaing state
{
case 0:
{
if( pPlayerState != SelectServer )
{
if ( pPlayerState == SwitchCharacter )
{
v13 = (double)pGetSomeSize() / 640.0 * 9.100000381469727 * 0.4049980044364929;
}
else
{
//int v3 = sub_4DB250();
//if ( (unsigned __int8)sub_4E44A0(v3 + 132) )
// v13 = (double)pGetSomeSize() / 640.0 * 10.0 * 0.1150000020861626;
//else
v13 = (double)pGetSomeSize() / 640.0;
}
}
// ----
if( pPlayerState != 2 )
{
if( pPlayerState == 4 )
{
v12 = 7370.9639;
}
else
{
if ( pMapNumber == 39 )
v12 = 2300.0;
else
v12 = 2400.0;
}
}
if( pPlayerState == 2 )
{
v13 = (double)pGetSomeSize() / 640.0;
v12 = 530400.0;
v8 = 20400.0;
v20 = 20400.0;
v9 = v13 * 5000.0;
v11 = v13 * 300.0;
}
else
{
v8 = v12 * 0.1899999976158142;
v20 = v12 * 0.4699999988079071;
v9 = v13 * 1190.0;
v11 = v13 * 540.0;
}
}
break;
// --
case 1:
{
v13 = (double)pGetSomeSize() / 640.0 + 0.1000000014901161;
v12 = 2700.0;
v8 = (float)2700.0 * 0.1899999976158142;
v20 = (float)2700.0 * 0.4699999988079071;
v9 = v13 * 1200.0;
v11 = v13 * 540.0;
}
break;
// --
case 2:
{
v13 = (double)pGetSomeSize() / 640.0 + 0.1000000014901161;
v12 = 3000.0;
v8 = (float)3000.0 * 0.1899999976158142;
v20 = (float)3000.0 * 0.4699999988079071;
v9 = v13 * 1300.0;
v11 = v13 * 540.0;
}
break;
// --
case 3:
{
v13 = (double)pGetSomeSize() / 640.0 + 0.1000000014901161;
v12 = 3300.0;
v8 = (float)3300.0 * 0.1899999976158142;
v20 = (float)3300.0 * 0.4699999988079071;
v9 = v13 * 1500.0;
v11 = v13 * 580.0;
}
break;
// --
case 4:
case 5:
{
v13 = (double)pGetSomeSize() / 640.0 + 0.1000000014901161;
v12 = 3400.0;
v8 = (float)3400.0 * 0.1899999976158142;
v20 = (float)3400.0 * 0.4699999988079071;
v9 = v13 * 1600.0;
v11 = v13 * 660.0;
}
break;
}
}
// ----
if( Arg2 )
{
v9 *= 1.509999990463257;
v11 *= 1.200000047683716;
}
// ----
float v21 = -v9;
float v22 = v12 - v20;
float v23 = 0.0;
float v24 = v9;
float v25 = v12 - v20;
float v26 = 0.0;
float v27 = v11;
float v28 = v8 - v20;
float v29 = 0.0;
float v30 = -v11;
float v31 = v8 - v20;
float v32 = 0.0;
// ----
float v14, v15, v16;
if( pMapNumber == 6 && !strcmp(gObjUser.lpViewPlayer->Name, "webzen")
|| !strcmp(gObjUser.lpViewPlayer->Name, "webzen2") )
{
v14 = 0.0;
v15 = 0.0;
v16 = -*(float*)0x87933D8; //??????????
}
else if( pMapNumber == 73 ) //?
{
//...
}
else
{
v14 = 0.0;
v15 = 0.0;
v16 = 45.0;
}
// ----
int v10;
float v17, v18;
float v19[10];
int result = pSomeFunc2((float*)&v14, (int)&v10);
for( int i = 0; i < 4; ++i )
{
pSomeFunc3(&v21 + 3 * i, &v10, (int*)&v17 + 3 * i);
*(&v17 + 3 * i) = *(&v17 + 3 * i) + *(float *)Struct;
*(&v18 + 3 * i) = *(&v18 + 3 * i) + *(float *)(Struct + 4);
v19[3 * i] = v19[3 * i] + *(float *)(Struct + 8);
result = i;
*(float*)(0x82C64B8 + i * 4) = *(&v17 + 3 * i) * 0.009999999776482582;
*(float*)(0x82C64A8 + i * 4) = *(&v17 + 3 * i) * 0.009999999776482582;
}
return result;
}
Stifi
- You test widescreen on new mains?