90 lines
2.4 KiB
Plaintext
90 lines
2.4 KiB
Plaintext
// IW6 GSC SOURCE
|
|
// Generated by https://github.com/xensik/gsc-tool
|
|
|
|
setupminimap( var_0, var_1 )
|
|
{
|
|
level.minimap_image = var_0;
|
|
|
|
if ( !isdefined( level._loadstarted ) && !isdefined( var_1 ) )
|
|
{
|
|
|
|
}
|
|
|
|
if ( !isdefined( var_1 ) )
|
|
var_1 = "minimap_corner";
|
|
|
|
var_2 = getdvarfloat( "scr_requiredMapAspectRatio", 1 );
|
|
var_3 = getentarray( var_1, "targetname" );
|
|
|
|
if ( var_3.size != 2 )
|
|
return;
|
|
|
|
var_4 = ( var_3[0].origin[0], var_3[0].origin[1], 0 );
|
|
var_5 = ( var_3[1].origin[0], var_3[1].origin[1], 0 );
|
|
var_6 = var_5 - var_4;
|
|
var_7 = ( cos( getnorthyaw() ), sin( getnorthyaw() ), 0 );
|
|
var_8 = ( 0 - var_7[1], var_7[0], 0 );
|
|
|
|
if ( vectordot( var_6, var_8 ) > 0 )
|
|
{
|
|
if ( vectordot( var_6, var_7 ) > 0 )
|
|
{
|
|
var_9 = var_5;
|
|
var_10 = var_4;
|
|
}
|
|
else
|
|
{
|
|
var_11 = vecscale( var_7, vectordot( var_6, var_7 ) );
|
|
var_9 = var_5 - var_11;
|
|
var_10 = var_4 + var_11;
|
|
}
|
|
}
|
|
else if ( vectordot( var_6, var_7 ) > 0 )
|
|
{
|
|
var_11 = vecscale( var_7, vectordot( var_6, var_7 ) );
|
|
var_9 = var_4 + var_11;
|
|
var_10 = var_5 - var_11;
|
|
}
|
|
else
|
|
{
|
|
var_9 = var_4;
|
|
var_10 = var_5;
|
|
}
|
|
|
|
if ( var_2 > 0 )
|
|
{
|
|
var_12 = vectordot( var_9 - var_10, var_7 );
|
|
var_13 = vectordot( var_9 - var_10, var_8 );
|
|
var_14 = var_13 / var_12;
|
|
|
|
if ( var_14 < var_2 )
|
|
{
|
|
var_15 = var_2 / var_14;
|
|
var_16 = vecscale( var_8, var_13 * ( var_15 - 1 ) * 0.5 );
|
|
}
|
|
else
|
|
{
|
|
var_15 = var_14 / var_2;
|
|
var_16 = vecscale( var_7, var_12 * ( var_15 - 1 ) * 0.5 );
|
|
}
|
|
|
|
var_9 = var_9 + var_16;
|
|
var_10 = var_10 - var_16;
|
|
}
|
|
|
|
level.map_extents = [];
|
|
level.map_extents["top"] = var_9[1];
|
|
level.map_extents["left"] = var_10[0];
|
|
level.map_extents["bottom"] = var_10[1];
|
|
level.map_extents["right"] = var_9[0];
|
|
level.map_width = level.map_extents["right"] - level.map_extents["left"];
|
|
level.map_height = level.map_extents["top"] - level.map_extents["bottom"];
|
|
level.mapsize = vectordot( var_9 - var_10, var_7 );
|
|
setminimap( var_0, var_9[0], var_9[1], var_10[0], var_10[1] );
|
|
}
|
|
|
|
vecscale( var_0, var_1 )
|
|
{
|
|
return ( var_0[0] * var_1, var_0[1] * var_1, var_0[2] * var_1 );
|
|
}
|