mirror of
https://github.com/ineedbots/iw5_bot_warfare.git
synced 2025-04-25 15:19:14 +00:00
fmt
This commit is contained in:
parent
04b7296246
commit
3ff48407d5
14
.astylerc
14
.astylerc
@ -1,21 +1,27 @@
|
||||
# try to mimic the original gsc provided
|
||||
# mode=ghc
|
||||
mode=c
|
||||
style=allman
|
||||
|
||||
indent=tab
|
||||
indent=force-tab=2
|
||||
lineend=windows
|
||||
|
||||
pad-oper
|
||||
pad-paren-in
|
||||
pad-header
|
||||
|
||||
# delete-empty-lines
|
||||
# pad-brackets-in
|
||||
fill-empty-lines
|
||||
squeeze-lines=2
|
||||
squeeze-ws
|
||||
break-one-line-headers
|
||||
add-braces
|
||||
remove-comment-prefix
|
||||
|
||||
break-blocks
|
||||
# remove-braces
|
||||
|
||||
indent-switches
|
||||
indent-cases
|
||||
indent-after-parens
|
||||
indent-col1-comments
|
||||
|
||||
remove-comment-prefix
|
||||
|
@ -4,7 +4,7 @@ root = true
|
||||
indent_style = tab
|
||||
indent_size = 2
|
||||
charset = latin1
|
||||
trim_trailing_whitespace = true
|
||||
trim_trailing_whitespace = false
|
||||
insert_final_newline = true
|
||||
|
||||
[*.md]
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -16,21 +16,21 @@ init()
|
||||
{
|
||||
setdvar( "bots_main_debug", 0 );
|
||||
}
|
||||
|
||||
|
||||
if ( !getdvarint( "bots_main_debug" ) )
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
/* if(!getdvarint("developer"))
|
||||
{
|
||||
setdvar("developer_script", 1);
|
||||
setdvar("developer", 1);
|
||||
|
||||
|
||||
setdvar("sv_mapRotation", "map "+getdvar("mapname"));
|
||||
exitlevel(false);
|
||||
}*/
|
||||
|
||||
|
||||
setdvar( "bots_main", 0 );
|
||||
setdvar( "bots_main_menu", 0 );
|
||||
setdvar( "bots_manage_fill_mode", 0 );
|
||||
@ -38,47 +38,47 @@ init()
|
||||
setdvar( "bots_manage_add", 0 );
|
||||
setdvar( "bots_manage_fill_kick", 1 );
|
||||
setdvar( "bots_manage_fill_spec", 1 );
|
||||
|
||||
|
||||
if ( getdvar( "bots_main_debug_distance" ) == "" )
|
||||
{
|
||||
setdvar( "bots_main_debug_distance", 512.0 );
|
||||
}
|
||||
|
||||
|
||||
if ( getdvar( "bots_main_debug_cone" ) == "" )
|
||||
{
|
||||
setdvar( "bots_main_debug_cone", 0.65 );
|
||||
}
|
||||
|
||||
|
||||
if ( getdvar( "bots_main_debug_minDist" ) == "" )
|
||||
{
|
||||
setdvar( "bots_main_debug_minDist", 32.0 );
|
||||
}
|
||||
|
||||
|
||||
if ( getdvar( "bots_main_debug_drawThrough" ) == "" )
|
||||
{
|
||||
setdvar( "bots_main_debug_drawThrough", false );
|
||||
}
|
||||
|
||||
|
||||
if ( getdvar( "bots_main_debug_updateRate" ) == "" )
|
||||
{
|
||||
setdvar( "bots_main_debug_updateRate", 500 );
|
||||
}
|
||||
|
||||
|
||||
if ( getdvar( "bots_main_debug_dashAmount" ) == "" )
|
||||
{
|
||||
setdvar( "bots_main_debug_dashAmount", 35.0 );
|
||||
}
|
||||
|
||||
|
||||
setdvar( "player_sustainAmmo", 1 );
|
||||
|
||||
|
||||
|
||||
|
||||
if ( !isdefined( level.waypoints ) )
|
||||
{
|
||||
level.waypoints = [];
|
||||
}
|
||||
|
||||
|
||||
level.waypointcount = 0;
|
||||
|
||||
|
||||
level waittill( "connected", player );
|
||||
player thread onPlayerSpawned();
|
||||
}
|
||||
@ -86,7 +86,7 @@ init()
|
||||
onPlayerSpawned()
|
||||
{
|
||||
self endon( "disconnect" );
|
||||
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
self waittill( "spawned_player" );
|
||||
@ -98,11 +98,11 @@ startDev()
|
||||
{
|
||||
self endon( "disconnect" );
|
||||
self endon( "death" );
|
||||
|
||||
|
||||
level.wptolink = -1;
|
||||
level.autolink = false;
|
||||
self.nearest = -1;
|
||||
|
||||
|
||||
self takeallweapons();
|
||||
self giveweapon( "iw5_m16_mp_gl" ); // to knife windows
|
||||
self giveweapon( "javelin_mp" ); // to mark jav spots
|
||||
@ -116,7 +116,7 @@ startDev()
|
||||
self maps\mp\perks\_perks::giveperk("specialty_marathon");
|
||||
self maps\mp\perks\_perks::giveperk("specialty_lightweight");*/
|
||||
self freezecontrols( false );
|
||||
|
||||
|
||||
self thread watchAddWaypointCommand();
|
||||
self thread watchDeleteAllWaypointsCommand();
|
||||
self thread watchDeleteWaypointCommand();
|
||||
@ -127,7 +127,7 @@ startDev()
|
||||
self thread watchAutoLinkCommand();
|
||||
self thread updateWaypointsStats();
|
||||
self thread watchAstarCommand();
|
||||
|
||||
|
||||
self thread sayExtras();
|
||||
}
|
||||
|
||||
@ -151,30 +151,30 @@ watchAstarCommand()
|
||||
{
|
||||
self endon( "disconnect" );
|
||||
self endon( "death" );
|
||||
|
||||
|
||||
self notifyonplayercommand( "astar", "+gostand" );
|
||||
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
self waittill( "astar" );
|
||||
|
||||
|
||||
if ( 1 )
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
self iprintln( "Start AStar" );
|
||||
self.astar = undefined;
|
||||
astar = spawnstruct();
|
||||
astar.start = self.origin;
|
||||
|
||||
|
||||
self waittill( "astar" );
|
||||
self iprintln( "End AStar" );
|
||||
astar.goal = self.origin;
|
||||
|
||||
|
||||
astar.nodes = AStarSearch( astar.start, astar.goal, undefined, true );
|
||||
self iprintln( "AStar size: " + astar.nodes.size );
|
||||
|
||||
|
||||
self.astar = astar;
|
||||
}
|
||||
}
|
||||
@ -185,7 +185,7 @@ drawWaypoint( i )
|
||||
{
|
||||
level.drawn_wps = [];
|
||||
}
|
||||
|
||||
|
||||
newdeathicon = newhudelem();
|
||||
newdeathicon.x = level.waypoints[ i ].origin[ 0 ];
|
||||
newdeathicon.y = level.waypoints[ i ].origin[ 1 ];
|
||||
@ -194,7 +194,7 @@ drawWaypoint( i )
|
||||
newdeathicon.archived = true;
|
||||
newdeathicon setshader( "headicon_dead", 5, 5 );
|
||||
newdeathicon setwaypoint( true, false );
|
||||
|
||||
|
||||
level.drawn_wps[ level.drawn_wps.size ] = newdeathicon;
|
||||
}
|
||||
|
||||
@ -204,7 +204,7 @@ drawPath( where )
|
||||
{
|
||||
level.drawn_wps = [];
|
||||
}
|
||||
|
||||
|
||||
newdeathicon = newhudelem();
|
||||
newdeathicon.x = where[ 0 ];
|
||||
newdeathicon.y = where[ 1 ];
|
||||
@ -213,7 +213,7 @@ drawPath( where )
|
||||
newdeathicon.archived = true;
|
||||
newdeathicon setshader( "headicon_dead", 5, 5 );
|
||||
newdeathicon setwaypoint( true, false );
|
||||
|
||||
|
||||
level.drawn_wps[ level.drawn_wps.size ] = newdeathicon;
|
||||
}
|
||||
|
||||
@ -223,12 +223,12 @@ clearWaypoints()
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
for ( i = 0; i < level.drawn_wps.size; i++ )
|
||||
{
|
||||
level.drawn_wps[ i ] destroy();
|
||||
}
|
||||
|
||||
|
||||
level.drawn_wps = [];
|
||||
}
|
||||
|
||||
@ -238,17 +238,17 @@ clearWpLinks()
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
for ( i = 0; i < level.waypointcount; i++ )
|
||||
{
|
||||
level.waypoints[ i ].drawn_links = [];
|
||||
}
|
||||
|
||||
|
||||
for ( i = 0; i < level.drawn_links.size; i++ )
|
||||
{
|
||||
level.drawn_links[ i ] delete ();
|
||||
}
|
||||
|
||||
|
||||
level.drawn_links = [];
|
||||
}
|
||||
|
||||
@ -258,46 +258,46 @@ showWpLink( i, h )
|
||||
{
|
||||
level.drawn_links = [];
|
||||
}
|
||||
|
||||
|
||||
if ( !isdefined( level.waypoints[ i ].drawn_links ) )
|
||||
{
|
||||
level.waypoints[ i ].drawn_links = [];
|
||||
}
|
||||
|
||||
|
||||
if ( !isdefined( level.waypoints[ h ].drawn_links ) )
|
||||
{
|
||||
level.waypoints[ h ].drawn_links = [];
|
||||
}
|
||||
|
||||
|
||||
if ( isdefined( level.waypoints[ h ].drawn_links[ "" + i ] ) || isdefined( level.waypoints[ i ].drawn_links[ "" + h ] ) )
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
level.waypoints[ h ].drawn_links[ "" + i ] = true;
|
||||
level.waypoints[ i ].drawn_links[ "" + h ] = true;
|
||||
|
||||
|
||||
start = level.waypoints[ i ].origin + ( 0, 0, 45 );
|
||||
end = level.waypoints[ h ].origin + ( 0, 0, 45 );
|
||||
diff = end - start;
|
||||
dir = vectortoangles( diff );
|
||||
|
||||
|
||||
dist = distance( start, end );
|
||||
dash_count = int( dist / getdvarfloat( "bots_main_debug_dashAmount" ) );
|
||||
|
||||
|
||||
for ( j = 0; j < dash_count; j++ )
|
||||
{
|
||||
dash = spawn( "script_model", start + ( ( diff * j ) / dash_count ) );
|
||||
dash setmodel( "weapon_parabolic_knife" );
|
||||
dash.angles = dir;
|
||||
|
||||
|
||||
level.drawn_links[ level.drawn_links.size ] = dash;
|
||||
}
|
||||
|
||||
|
||||
dash = spawn( "script_model", end );
|
||||
dash setmodel( "weapon_parabolic_knife" );
|
||||
dash.angles = dir;
|
||||
|
||||
|
||||
level.drawn_links[ level.drawn_links.size ] = dash;
|
||||
}
|
||||
|
||||
@ -305,7 +305,7 @@ updateWaypointsStats()
|
||||
{
|
||||
self endon( "disconnect" );
|
||||
self endon( "death" );
|
||||
|
||||
|
||||
self initHudElem( "TotalWps:", 102, 5 );
|
||||
totalWpsHud = self initHudElem( "", 180, 5 );
|
||||
self initHudElem( "NearestWP:", 102, 15 );
|
||||
@ -316,40 +316,40 @@ updateWaypointsStats()
|
||||
type = self initHudElem( "", 160, 35 );
|
||||
self initHudElem( "ToLink:", 102, 45 );
|
||||
wpToLink = self initHudElem( "", 160, 45 );
|
||||
|
||||
|
||||
infotext = self initHudElem2();
|
||||
self initHudElem3();
|
||||
self initHudElem4();
|
||||
|
||||
|
||||
intTimer = 0;
|
||||
|
||||
|
||||
for ( time = 0;; time += 0.05 )
|
||||
{
|
||||
wait 0.05;
|
||||
intTimer += 50;
|
||||
|
||||
|
||||
totalWpsHud setvalue( level.waypointcount );
|
||||
|
||||
|
||||
closest = -1;
|
||||
myEye = self geteye();
|
||||
myAngles = self getplayerangles();
|
||||
timeToUpdate = ( ( intTimer % getdvarint( "bots_main_debug_updateRate" ) ) == 0 );
|
||||
|
||||
|
||||
if ( timeToUpdate )
|
||||
{
|
||||
clearWaypoints();
|
||||
clearWpLinks();
|
||||
}
|
||||
|
||||
|
||||
for ( i = 0; i < level.waypointcount; i++ )
|
||||
{
|
||||
if ( closest == -1 || closer( self.origin, level.waypoints[ i ].origin, level.waypoints[ closest ].origin ) )
|
||||
{
|
||||
closest = i;
|
||||
}
|
||||
|
||||
|
||||
wpOrg = level.waypoints[ i ].origin + ( 0, 0, 25 );
|
||||
|
||||
|
||||
if ( distance( level.waypoints[ i ].origin, self.origin ) < getdvarfloat( "bots_main_debug_distance" ) && ( bullettracepassed( myEye, wpOrg, false, self ) || getdvarint( "bots_main_debug_drawThrough" ) ) )
|
||||
{
|
||||
if ( timeToUpdate )
|
||||
@ -357,52 +357,52 @@ updateWaypointsStats()
|
||||
if ( getConeDot( wpOrg, myEye, myAngles ) > getdvarfloat( "bots_main_debug_cone" ) )
|
||||
{
|
||||
drawWaypoint( i );
|
||||
|
||||
|
||||
for ( h = level.waypoints[ i ].children.size - 1; h >= 0; h-- )
|
||||
{
|
||||
showWpLink( i, level.waypoints[ i ].children[ h ] );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// mw3 doesnt have debug gsc calls :(
|
||||
/* for(h = level.waypoints[ i ].children.size - 1; h >= 0; h--)
|
||||
line(wpOrg, level.waypoints[ level.waypoints[ i ].children[ h ] ].origin + (0, 0, 25), (1,0,1));
|
||||
|
||||
|
||||
if(getConeDot(wpOrg, myEye, myAngles) > getdvarfloat("bots_main_debug_cone"))
|
||||
print3d(wpOrg, i, (1,0,0), 2);
|
||||
|
||||
|
||||
if (isdefined(level.waypoints[ i ].angles) && level.waypoints[ i ].type != "stand")
|
||||
line(wpOrg, wpOrg + anglestoforward(level.waypoints[ i ].angles) * 64, (1,1,1));
|
||||
|
||||
|
||||
if (isdefined(level.waypoints[ i ].jav_point))
|
||||
line(wpOrg, level.waypoints[ i ].jav_point, (0,0,0));*/
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
self.nearest = closest;
|
||||
|
||||
|
||||
nearestWP setvalue( self.nearest );
|
||||
|
||||
|
||||
children setvalue( buildChildCountString( self.nearest ) );
|
||||
|
||||
|
||||
type settext( buildTypeString( self.nearest ) );
|
||||
|
||||
|
||||
wpToLink setvalue( level.wptolink );
|
||||
|
||||
|
||||
infotext.x = infotext.x - 2;
|
||||
|
||||
|
||||
if ( infotext.x <= -800 )
|
||||
{
|
||||
infotext.x = 800;
|
||||
}
|
||||
|
||||
|
||||
if ( time > 2 && self usebuttonpressed() )
|
||||
{
|
||||
time = 0;
|
||||
self iprintlnbold( self.nearest + " children: " + buildChildString( self.nearest ) );
|
||||
}
|
||||
|
||||
|
||||
if ( isdefined( self.astar ) )
|
||||
{
|
||||
// print3d(self.astar.start + (0, 0, 35), "start", (0,0,1), 2);
|
||||
@ -412,22 +412,22 @@ updateWaypointsStats()
|
||||
drawPath( self.astar.start );
|
||||
drawPath( self.astar.goal );
|
||||
}
|
||||
|
||||
|
||||
prev = self.astar.start + ( 0, 0, 35 );
|
||||
|
||||
|
||||
for ( i = self.astar.nodes.size - 1; i >= 0; i-- )
|
||||
{
|
||||
node = self.astar.nodes[ i ];
|
||||
|
||||
|
||||
// line(prev, level.waypoints[ node ].origin + (0, 0, 35), (0,1,1));
|
||||
if ( timeToUpdate )
|
||||
{
|
||||
drawPath( level.waypoints[ node ].origin );
|
||||
}
|
||||
|
||||
|
||||
prev = level.waypoints[ node ].origin + ( 0, 0, 35 );
|
||||
}
|
||||
|
||||
|
||||
// line(prev, self.astar.goal + (0, 0, 35), (0,1,1));
|
||||
}
|
||||
}
|
||||
@ -437,9 +437,9 @@ watchLoadWaypointsCommand()
|
||||
{
|
||||
self endon( "disconnect" );
|
||||
self endon( "death" );
|
||||
|
||||
|
||||
self notifyonplayercommand( "[{+actionslot 5}]", "+actionslot 5" );
|
||||
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
self waittill( "[{+actionslot 5}]" );
|
||||
@ -451,9 +451,9 @@ watchAddWaypointCommand()
|
||||
{
|
||||
self endon( "disconnect" );
|
||||
self endon( "death" );
|
||||
|
||||
|
||||
self notifyonplayercommand( "[{+smoke}]", "+smoke" );
|
||||
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
self waittill( "[{+smoke}]" );
|
||||
@ -465,13 +465,13 @@ watchAutoLinkCommand()
|
||||
{
|
||||
self endon( "disconnect" );
|
||||
self endon( "death" );
|
||||
|
||||
|
||||
self notifyonplayercommand( "[{+frag}]", "+frag" );
|
||||
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
self waittill( "[{+frag}]" );
|
||||
|
||||
|
||||
if ( level.autolink )
|
||||
{
|
||||
self iprintlnbold( "Auto link disabled" );
|
||||
@ -491,9 +491,9 @@ watchLinkWaypointCommand()
|
||||
{
|
||||
self endon( "disconnect" );
|
||||
self endon( "death" );
|
||||
|
||||
|
||||
self notifyonplayercommand( "[{+melee_zoom}]", "+melee_zoom" );
|
||||
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
self waittill( "[{+melee_zoom}]" );
|
||||
@ -505,9 +505,9 @@ watchunlinkWaypointCommand()
|
||||
{
|
||||
self endon( "disconnect" );
|
||||
self endon( "death" );
|
||||
|
||||
|
||||
self notifyonplayercommand( "[{+reload}]", "+reload" );
|
||||
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
self waittill( "[{+reload}]" );
|
||||
@ -519,9 +519,9 @@ watchDeleteWaypointCommand()
|
||||
{
|
||||
self endon( "disconnect" );
|
||||
self endon( "death" );
|
||||
|
||||
|
||||
self notifyonplayercommand( "[{+actionslot 3}]", "+actionslot 3" );
|
||||
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
self waittill( "[{+actionslot 3}]" );
|
||||
@ -533,9 +533,9 @@ watchDeleteAllWaypointsCommand()
|
||||
{
|
||||
self endon( "disconnect" );
|
||||
self endon( "death" );
|
||||
|
||||
|
||||
self notifyonplayercommand( "[{+actionslot 4}]", "+actionslot 4" );
|
||||
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
self waittill( "[{+actionslot 4}]" );
|
||||
@ -547,72 +547,72 @@ watchSaveWaypointsCommand()
|
||||
{
|
||||
self endon( "death" );
|
||||
self endon( "disconnect" );
|
||||
|
||||
|
||||
self notifyonplayercommand( "[{+actionslot 1}]", "+actionslot 1" );
|
||||
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
self waittill( "[{+actionslot 1}]" );
|
||||
|
||||
|
||||
self checkForWarnings();
|
||||
wait 1;
|
||||
|
||||
|
||||
logprint( "***********ABiliTy's WPDump**************\n\n" );
|
||||
logprint( "\n\n\n\n" );
|
||||
mpnm = getMapName( getdvar( "mapname" ) );
|
||||
logprint( "\n\n" + mpnm + "()\n{\n/*" );
|
||||
logprint( "*/waypoints = [];\n/*" );
|
||||
|
||||
|
||||
for ( i = 0; i < level.waypointcount; i++ )
|
||||
{
|
||||
logprint( "*/waypoints[ " + i + " ] = spawnstruct();\n/*" );
|
||||
logprint( "*/waypoints[ " + i + " ].origin = " + level.waypoints[ i ].origin + ";\n/*" );
|
||||
logprint( "*/waypoints[ " + i + " ].type = \"" + level.waypoints[ i ].type + "\";\n/*" );
|
||||
|
||||
|
||||
for ( c = 0; c < level.waypoints[ i ].children.size; c++ )
|
||||
{
|
||||
logprint( "*/waypoints[ " + i + " ].children[ " + c + " ] = " + level.waypoints[ i ].children[ c ] + ";\n/*" );
|
||||
}
|
||||
|
||||
|
||||
if ( isdefined( level.waypoints[ i ].angles ) && ( level.waypoints[ i ].type == "claymore" || level.waypoints[ i ].type == "tube" || ( level.waypoints[ i ].type == "crouch" && level.waypoints[ i ].children.size == 1 ) || level.waypoints[ i ].type == "climb" || level.waypoints[ i ].type == "grenade" ) )
|
||||
{
|
||||
logprint( "*/waypoints[ " + i + " ].angles = " + level.waypoints[ i ].angles + ";\n/*" );
|
||||
}
|
||||
|
||||
|
||||
if ( isdefined( level.waypoints[ i ].jav_point ) && level.waypoints[ i ].type == "javelin" )
|
||||
{
|
||||
logprint( "*/waypoints[ " + i + " ].jav_point = " + level.waypoints[ i ].jav_point + ";\n/*" );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
logprint( "*/return waypoints;\n}\n\n\n\n" );
|
||||
|
||||
|
||||
filename = "waypoints/" + getdvar( "mapname" ) + "_wp.csv";
|
||||
|
||||
|
||||
println( "********* Start Bot Warfare WPDump *********" );
|
||||
println( level.waypointcount );
|
||||
|
||||
|
||||
BotBuiltinFileWrite( filename, level.waypointcount + "\n", "write" );
|
||||
|
||||
|
||||
for ( i = 0; i < level.waypointcount; i++ )
|
||||
{
|
||||
str = "";
|
||||
wp = level.waypoints[ i ];
|
||||
|
||||
|
||||
str += wp.origin[ 0 ] + " " + wp.origin[ 1 ] + " " + wp.origin[ 2 ] + ",";
|
||||
|
||||
|
||||
for ( h = 0; h < wp.children.size; h++ )
|
||||
{
|
||||
str += wp.children[ h ];
|
||||
|
||||
|
||||
if ( h < wp.children.size - 1 )
|
||||
{
|
||||
str += " ";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
str += "," + wp.type + ",";
|
||||
|
||||
|
||||
if ( isdefined( wp.angles ) )
|
||||
{
|
||||
str += wp.angles[ 0 ] + " " + wp.angles[ 1 ] + " " + wp.angles[ 2 ] + ",";
|
||||
@ -621,7 +621,7 @@ watchSaveWaypointsCommand()
|
||||
{
|
||||
str += ",";
|
||||
}
|
||||
|
||||
|
||||
if ( isdefined( wp.jav_point ) )
|
||||
{
|
||||
str += wp.jav_point[ 0 ] + " " + wp.jav_point[ 1 ] + " " + wp.jav_point[ 2 ] + ",";
|
||||
@ -630,13 +630,13 @@ watchSaveWaypointsCommand()
|
||||
{
|
||||
str += ",";
|
||||
}
|
||||
|
||||
|
||||
println( str );
|
||||
BotBuiltinFileWrite( filename, str + "\n", "append" );
|
||||
}
|
||||
|
||||
|
||||
println( "\n\n\n\n\n\n" );
|
||||
|
||||
|
||||
self iprintln( "Saved!!! to " + filename );
|
||||
}
|
||||
}
|
||||
@ -646,9 +646,9 @@ LoadWaypoints()
|
||||
// self DeleteAllWaypoints();
|
||||
self iprintlnbold( "Loading WPS..." );
|
||||
load_waypoints();
|
||||
|
||||
|
||||
wait 1;
|
||||
|
||||
|
||||
self checkForWarnings();
|
||||
}
|
||||
|
||||
@ -658,12 +658,12 @@ checkForWarnings()
|
||||
{
|
||||
self iprintln( "WARNING: waypointCount is " + level.waypointcount );
|
||||
}
|
||||
|
||||
|
||||
if ( level.waypointcount != level.waypoints.size )
|
||||
{
|
||||
self iprintln( "WARNING: waypointCount is not " + level.waypoints.size );
|
||||
}
|
||||
|
||||
|
||||
for ( i = 0; i < level.waypointcount; i++ )
|
||||
{
|
||||
if ( !isdefined( level.waypoints[ i ] ) )
|
||||
@ -671,7 +671,7 @@ checkForWarnings()
|
||||
self iprintln( "WARNING: waypoint " + i + " is undefined" );
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
if ( level.waypoints[ i ].children.size <= 0 )
|
||||
{
|
||||
self iprintln( "WARNING: waypoint " + i + " childCount is " + level.waypoints[ i ].children.size );
|
||||
@ -687,7 +687,7 @@ checkForWarnings()
|
||||
for ( h = level.waypoints[ i ].children.size - 1; h >= 0; h-- )
|
||||
{
|
||||
child = level.waypoints[ i ].children[ h ];
|
||||
|
||||
|
||||
if ( !isdefined( level.waypoints[ child ] ) )
|
||||
{
|
||||
self iprintln( "WARNING: waypoint " + i + " child " + child + " is undefined" );
|
||||
@ -699,43 +699,43 @@ checkForWarnings()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if ( !isdefined( level.waypoints[ i ].type ) )
|
||||
{
|
||||
self iprintln( "WARNING: waypoint " + i + " type is undefined" );
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
if ( level.waypoints[ i ].type == "javelin" && !isdefined( level.waypoints[ i ].jav_point ) )
|
||||
{
|
||||
self iprintln( "WARNING: waypoint " + i + " jav_point is undefined" );
|
||||
}
|
||||
|
||||
|
||||
if ( !isdefined( level.waypoints[ i ].angles ) && ( level.waypoints[ i ].type == "claymore" || level.waypoints[ i ].type == "tube" || ( level.waypoints[ i ].type == "crouch" && level.waypoints[ i ].children.size == 1 ) || level.waypoints[ i ].type == "climb" || level.waypoints[ i ].type == "grenade" ) )
|
||||
{
|
||||
self iprintln( "WARNING: waypoint " + i + " angles is undefined" );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// check reachability, assume bidirectional graph
|
||||
|
||||
|
||||
wpIdx = randomint( level.waypointcount );
|
||||
|
||||
|
||||
for ( i = 0; i < level.waypointcount; i++ )
|
||||
{
|
||||
if ( i % 5 == 0 )
|
||||
{
|
||||
wait 0.05;
|
||||
}
|
||||
|
||||
|
||||
astar = AStarSearch( level.waypoints[ wpIdx ].origin, level.waypoints[ i ].origin, undefined, true );
|
||||
|
||||
|
||||
if ( astar.size <= 0 )
|
||||
{
|
||||
self iprintln( "WARNING: waypoint " + wpIdx + " has no path to waypoint " + i );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
self iprintln( "Waypoint warnings check completed." );
|
||||
}
|
||||
|
||||
@ -747,17 +747,17 @@ UnLinkWaypoint( nwp )
|
||||
level.wptolink = -1;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if ( level.wptolink == -1 || nwp == level.wptolink )
|
||||
{
|
||||
level.wptolink = nwp;
|
||||
self iprintln( "Waypoint unlink Started " + nwp );
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
level.waypoints[ nwp ].children = array_remove( level.waypoints[ nwp ].children, level.wptolink );
|
||||
level.waypoints[ level.wptolink ].children = array_remove( level.waypoints[ level.wptolink ].children, nwp );
|
||||
|
||||
|
||||
self iprintln( "Waypoint " + nwp + " Broken to " + level.wptolink );
|
||||
level.wptolink = -1;
|
||||
}
|
||||
@ -770,33 +770,33 @@ LinkWaypoint( nwp )
|
||||
level.wptolink = -1;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if ( level.wptolink == -1 || nwp == level.wptolink )
|
||||
{
|
||||
level.wptolink = nwp;
|
||||
self iprintln( "Waypoint Link Started " + nwp );
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
weGood = true;
|
||||
|
||||
|
||||
for ( i = level.waypoints[ level.wptolink ].children.size - 1; i >= 0; i-- )
|
||||
{
|
||||
child = level.waypoints[ level.wptolink ].children[ i ];
|
||||
|
||||
|
||||
if ( child == nwp )
|
||||
{
|
||||
weGood = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if ( weGood )
|
||||
{
|
||||
for ( i = level.waypoints[ nwp ].children.size - 1; i >= 0; i-- )
|
||||
{
|
||||
child = level.waypoints[ nwp ].children[ i ];
|
||||
|
||||
|
||||
if ( child == level.wptolink )
|
||||
{
|
||||
weGood = false;
|
||||
@ -804,17 +804,17 @@ LinkWaypoint( nwp )
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if ( !weGood )
|
||||
{
|
||||
self iprintln( "Waypoint Link Cancelled " + nwp + " and " + level.wptolink + " already linked." );
|
||||
level.wptolink = -1;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
level.waypoints[ level.wptolink ].children[ level.waypoints[ level.wptolink ].children.size ] = nwp;
|
||||
level.waypoints[ nwp ].children[ level.waypoints[ nwp ].children.size ] = level.wptolink;
|
||||
|
||||
|
||||
self iprintln( "Waypoint " + nwp + " Linked to " + level.wptolink );
|
||||
level.wptolink = -1;
|
||||
}
|
||||
@ -826,16 +826,16 @@ DeleteWaypoint( nwp )
|
||||
self iprintln( "No close enough waypoint to delete." );
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
level.wptolink = -1;
|
||||
|
||||
|
||||
for ( i = level.waypoints[ nwp ].children.size - 1; i >= 0; i-- )
|
||||
{
|
||||
child = level.waypoints[ nwp ].children[ i ];
|
||||
|
||||
|
||||
level.waypoints[ child ].children = array_remove( level.waypoints[ child ].children, nwp );
|
||||
}
|
||||
|
||||
|
||||
for ( i = 0; i < level.waypointcount; i++ )
|
||||
{
|
||||
for ( h = level.waypoints[ i ].children.size - 1; h >= 0; h-- )
|
||||
@ -846,7 +846,7 @@ DeleteWaypoint( nwp )
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
for ( entry = 0; entry < level.waypointcount; entry++ )
|
||||
{
|
||||
if ( entry == nwp )
|
||||
@ -856,24 +856,24 @@ DeleteWaypoint( nwp )
|
||||
level.waypoints[ entry ] = level.waypoints[ entry + 1 ];
|
||||
entry++;
|
||||
}
|
||||
|
||||
|
||||
level.waypoints[ entry ] = undefined;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
level.waypointcount--;
|
||||
|
||||
|
||||
self iprintln( "DelWp " + nwp );
|
||||
}
|
||||
|
||||
AddWaypoint()
|
||||
{
|
||||
level.waypoints[ level.waypointcount ] = spawnstruct();
|
||||
|
||||
|
||||
pos = self getorigin();
|
||||
level.waypoints[ level.waypointcount ].origin = pos;
|
||||
|
||||
|
||||
if ( isdefined( self.javelintargetpoint ) )
|
||||
{
|
||||
level.waypoints[ level.waypointcount ].type = "javelin";
|
||||
@ -898,25 +898,25 @@ AddWaypoint()
|
||||
{
|
||||
level.waypoints[ level.waypointcount ].type = self getstance();
|
||||
}
|
||||
|
||||
|
||||
level.waypoints[ level.waypointcount ].angles = self getplayerangles();
|
||||
|
||||
|
||||
level.waypoints[ level.waypointcount ].children = [];
|
||||
|
||||
|
||||
if ( level.waypoints[ level.waypointcount ].type == "javelin" )
|
||||
{
|
||||
level.waypoints[ level.waypointcount ].jav_point = self.javelintargetpoint;
|
||||
}
|
||||
|
||||
|
||||
self iprintln( level.waypoints[ level.waypointcount ].type + " Waypoint " + level.waypointcount + " Added at " + pos );
|
||||
|
||||
|
||||
if ( level.autolink )
|
||||
{
|
||||
if ( level.wptolink == -1 )
|
||||
{
|
||||
level.wptolink = level.waypointcount - 1;
|
||||
}
|
||||
|
||||
|
||||
level.waypointcount++;
|
||||
self LinkWaypoint( level.waypointcount - 1 );
|
||||
}
|
||||
@ -930,7 +930,7 @@ DeleteAllWaypoints()
|
||||
{
|
||||
level.waypoints = [];
|
||||
level.waypointcount = 0;
|
||||
|
||||
|
||||
self iprintln( "DelAllWps" );
|
||||
}
|
||||
|
||||
@ -940,9 +940,9 @@ buildChildCountString ( wp )
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
wpstr = level.waypoints[ wp ].children.size;
|
||||
|
||||
|
||||
return wpstr;
|
||||
}
|
||||
|
||||
@ -952,9 +952,9 @@ buildChildString( wp )
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
|
||||
wpstr = "";
|
||||
|
||||
|
||||
for ( i = 0; i < level.waypoints[ wp ].children.size; i++ )
|
||||
{
|
||||
if ( i != 0 )
|
||||
@ -966,7 +966,7 @@ buildChildString( wp )
|
||||
wpstr = wpstr + level.waypoints[ wp ].children[ i ];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return wpstr;
|
||||
}
|
||||
|
||||
@ -976,7 +976,7 @@ buildTypeString( wp )
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
|
||||
return level.waypoints[ wp ].type;
|
||||
}
|
||||
|
||||
@ -992,9 +992,9 @@ initHudElem( txt, xl, yl )
|
||||
hud = newclienthudelem( self );
|
||||
hud settext( txt );
|
||||
hud.alignx = "left";
|
||||
hud.aligny = "top";
|
||||
hud.horzalign = "left";
|
||||
hud.vertalign = "top";
|
||||
hud.aligny = "top";
|
||||
hud.horzalign = "left";
|
||||
hud.vertalign = "top";
|
||||
hud.x = xl;
|
||||
hud.y = yl;
|
||||
hud.foreground = true;
|
||||
@ -1005,9 +1005,9 @@ initHudElem( txt, xl, yl )
|
||||
hud.glowcolor = ( 0, 0, 0 );
|
||||
hud.glowalpha = 1;
|
||||
hud.color = ( 1.0, 1.0, 1.0 );
|
||||
|
||||
|
||||
self thread destroyOnDeath( hud );
|
||||
|
||||
|
||||
return hud;
|
||||
}
|
||||
|
||||
@ -1029,9 +1029,9 @@ initHudElem2()
|
||||
infotext.glowcolor = ( 0, 0, 0 );
|
||||
infotext.glowalpha = 1;
|
||||
infotext.color = ( 1.0, 1.0, 1.0 );
|
||||
|
||||
|
||||
self thread destroyOnDeath( infotext );
|
||||
|
||||
|
||||
return infotext;
|
||||
}
|
||||
|
||||
@ -1044,9 +1044,9 @@ initHudElem3()
|
||||
bar.vertalign = "bottom";
|
||||
bar.y = 30;
|
||||
bar.foreground = true;
|
||||
|
||||
|
||||
self thread destroyOnDeath( bar );
|
||||
|
||||
|
||||
return bar;
|
||||
}
|
||||
|
||||
@ -1061,8 +1061,8 @@ initHudElem4()
|
||||
OptionsBG.vertalign = "top";
|
||||
OptionsBG setshader( "black", 200, 60 );
|
||||
OptionsBG.alpha = 0.4;
|
||||
|
||||
|
||||
self thread destroyOnDeath( OptionsBG );
|
||||
|
||||
|
||||
return OptionsBG;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user