mirror of
https://github.com/ineedbots/iw5_bot_warfare.git
synced 2026-04-30 10:59:34 +00:00
case sensitivity
This commit is contained in:
@@ -4,3 +4,5 @@
|
|||||||
logs/
|
logs/
|
||||||
demos/
|
demos/
|
||||||
missingasset.csv
|
missingasset.csv
|
||||||
|
*.gscbin
|
||||||
|
*.exe
|
||||||
|
|||||||
+170
-170
@@ -17,205 +17,205 @@ init()
|
|||||||
{
|
{
|
||||||
level.bw_version = "2.1.0";
|
level.bw_version = "2.1.0";
|
||||||
|
|
||||||
if ( getDvar( "bots_main" ) == "" )
|
if ( getdvar( "bots_main" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_main", true );
|
setdvar( "bots_main", true );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( !getDvarInt( "bots_main" ) )
|
if ( !getdvarint( "bots_main" ) )
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( !wait_for_builtins() )
|
if ( !wait_for_builtins() )
|
||||||
{
|
{
|
||||||
PrintLn( "FATAL: NO BUILT-INS FOR BOTS" );
|
println( "FATAL: NO BUILT-INS FOR BOTS" );
|
||||||
}
|
}
|
||||||
|
|
||||||
thread load_waypoints();
|
thread load_waypoints();
|
||||||
thread hook_callbacks();
|
thread hook_callbacks();
|
||||||
|
|
||||||
if ( getDvar( "bots_main_GUIDs" ) == "" )
|
if ( getdvar( "bots_main_GUIDs" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_main_GUIDs", "" ); // guids of players who will be given host powers, comma seperated
|
setdvar( "bots_main_GUIDs", "" ); // guids of players who will be given host powers, comma seperated
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_main_firstIsHost" ) == "" )
|
if ( getdvar( "bots_main_firstIsHost" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_main_firstIsHost", false ); // first play to connect is a host
|
setdvar( "bots_main_firstIsHost", false ); // first play to connect is a host
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_main_waitForHostTime" ) == "" )
|
if ( getdvar( "bots_main_waitForHostTime" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_main_waitForHostTime", 10.0 ); // how long to wait to wait for the host player
|
setdvar( "bots_main_waitForHostTime", 10.0 ); // how long to wait to wait for the host player
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_main_kickBotsAtEnd" ) == "" )
|
if ( getdvar( "bots_main_kickBotsAtEnd" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_main_kickBotsAtEnd", false ); // kicks the bots at game end
|
setdvar( "bots_main_kickBotsAtEnd", false ); // kicks the bots at game end
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_manage_add" ) == "" )
|
if ( getdvar( "bots_manage_add" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_manage_add", 0 ); // amount of bots to add to the game
|
setdvar( "bots_manage_add", 0 ); // amount of bots to add to the game
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_manage_fill" ) == "" )
|
if ( getdvar( "bots_manage_fill" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_manage_fill", 0 ); // amount of bots to maintain
|
setdvar( "bots_manage_fill", 0 ); // amount of bots to maintain
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_manage_fill_spec" ) == "" )
|
if ( getdvar( "bots_manage_fill_spec" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_manage_fill_spec", true ); // to count for fill if player is on spec team
|
setdvar( "bots_manage_fill_spec", true ); // to count for fill if player is on spec team
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_manage_fill_mode" ) == "" )
|
if ( getdvar( "bots_manage_fill_mode" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_manage_fill_mode", 0 ); // fill mode, 0 adds everyone, 1 just bots, 2 maintains at maps, 3 is 2 with 1
|
setdvar( "bots_manage_fill_mode", 0 ); // fill mode, 0 adds everyone, 1 just bots, 2 maintains at maps, 3 is 2 with 1
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_manage_fill_kick" ) == "" )
|
if ( getdvar( "bots_manage_fill_kick" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_manage_fill_kick", false ); // kick bots if too many
|
setdvar( "bots_manage_fill_kick", false ); // kick bots if too many
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_team" ) == "" )
|
if ( getdvar( "bots_team" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_team", "autoassign" ); // which team for bots to join
|
setdvar( "bots_team", "autoassign" ); // which team for bots to join
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_team_amount" ) == "" )
|
if ( getdvar( "bots_team_amount" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_team_amount", 0 ); // amount of bots on axis team
|
setdvar( "bots_team_amount", 0 ); // amount of bots on axis team
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_team_force" ) == "" )
|
if ( getdvar( "bots_team_force" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_team_force", false ); // force bots on team
|
setdvar( "bots_team_force", false ); // force bots on team
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_team_mode" ) == "" )
|
if ( getdvar( "bots_team_mode" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_team_mode", 0 ); // counts just bots when 1
|
setdvar( "bots_team_mode", 0 ); // counts just bots when 1
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_skill" ) == "" )
|
if ( getdvar( "bots_skill" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_skill", 0 ); // 0 is random, 1 is easy 7 is hard, 8 is custom, 9 is completely random
|
setdvar( "bots_skill", 0 ); // 0 is random, 1 is easy 7 is hard, 8 is custom, 9 is completely random
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_skill_axis_hard" ) == "" )
|
if ( getdvar( "bots_skill_axis_hard" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_skill_axis_hard", 0 ); // amount of hard bots on axis team
|
setdvar( "bots_skill_axis_hard", 0 ); // amount of hard bots on axis team
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_skill_axis_med" ) == "" )
|
if ( getdvar( "bots_skill_axis_med" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_skill_axis_med", 0 );
|
setdvar( "bots_skill_axis_med", 0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_skill_allies_hard" ) == "" )
|
if ( getdvar( "bots_skill_allies_hard" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_skill_allies_hard", 0 );
|
setdvar( "bots_skill_allies_hard", 0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_skill_allies_med" ) == "" )
|
if ( getdvar( "bots_skill_allies_med" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_skill_allies_med", 0 );
|
setdvar( "bots_skill_allies_med", 0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_skill_min" ) == "" )
|
if ( getdvar( "bots_skill_min" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_skill_min", 1 );
|
setdvar( "bots_skill_min", 1 );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_skill_max" ) == "" )
|
if ( getdvar( "bots_skill_max" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_skill_max", 7 );
|
setdvar( "bots_skill_max", 7 );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_loadout_reasonable" ) == "" ) // filter out the bad 'guns' and perks
|
if ( getdvar( "bots_loadout_reasonable" ) == "" ) // filter out the bad 'guns' and perks
|
||||||
{
|
{
|
||||||
setDvar( "bots_loadout_reasonable", false );
|
setdvar( "bots_loadout_reasonable", false );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_loadout_allow_op" ) == "" ) // allows jug, marty and laststand
|
if ( getdvar( "bots_loadout_allow_op" ) == "" ) // allows jug, marty and laststand
|
||||||
{
|
{
|
||||||
setDvar( "bots_loadout_allow_op", true );
|
setdvar( "bots_loadout_allow_op", true );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_loadout_rank" ) == "" ) // what rank the bots should be around, -1 is around the players, 0 is all random
|
if ( getdvar( "bots_loadout_rank" ) == "" ) // what rank the bots should be around, -1 is around the players, 0 is all random
|
||||||
{
|
{
|
||||||
setDvar( "bots_loadout_rank", -1 );
|
setdvar( "bots_loadout_rank", -1 );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_loadout_prestige" ) == "" ) // what pretige the bots will be, -1 is the players, -2 is random
|
if ( getdvar( "bots_loadout_prestige" ) == "" ) // what pretige the bots will be, -1 is the players, -2 is random
|
||||||
{
|
{
|
||||||
setDvar( "bots_loadout_prestige", -1 );
|
setdvar( "bots_loadout_prestige", -1 );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_play_move" ) == "" ) // bots move
|
if ( getdvar( "bots_play_move" ) == "" ) // bots move
|
||||||
{
|
{
|
||||||
setDvar( "bots_play_move", true );
|
setdvar( "bots_play_move", true );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_play_knife" ) == "" ) // bots knife
|
if ( getdvar( "bots_play_knife" ) == "" ) // bots knife
|
||||||
{
|
{
|
||||||
setDvar( "bots_play_knife", true );
|
setdvar( "bots_play_knife", true );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_play_fire" ) == "" ) // bots fire
|
if ( getdvar( "bots_play_fire" ) == "" ) // bots fire
|
||||||
{
|
{
|
||||||
setDvar( "bots_play_fire", true );
|
setdvar( "bots_play_fire", true );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_play_nade" ) == "" ) // bots grenade
|
if ( getdvar( "bots_play_nade" ) == "" ) // bots grenade
|
||||||
{
|
{
|
||||||
setDvar( "bots_play_nade", true );
|
setdvar( "bots_play_nade", true );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_play_take_carepackages" ) == "" ) // bots take carepackages
|
if ( getdvar( "bots_play_take_carepackages" ) == "" ) // bots take carepackages
|
||||||
{
|
{
|
||||||
setDvar( "bots_play_take_carepackages", true );
|
setdvar( "bots_play_take_carepackages", true );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_play_obj" ) == "" ) // bots play the obj
|
if ( getdvar( "bots_play_obj" ) == "" ) // bots play the obj
|
||||||
{
|
{
|
||||||
setDvar( "bots_play_obj", true );
|
setdvar( "bots_play_obj", true );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_play_camp" ) == "" ) // bots camp and follow
|
if ( getdvar( "bots_play_camp" ) == "" ) // bots camp and follow
|
||||||
{
|
{
|
||||||
setDvar( "bots_play_camp", true );
|
setdvar( "bots_play_camp", true );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_play_jumpdrop" ) == "" ) // bots jump and dropshot
|
if ( getdvar( "bots_play_jumpdrop" ) == "" ) // bots jump and dropshot
|
||||||
{
|
{
|
||||||
setDvar( "bots_play_jumpdrop", true );
|
setdvar( "bots_play_jumpdrop", true );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_play_target_other" ) == "" ) // bot target non play ents (vehicles)
|
if ( getdvar( "bots_play_target_other" ) == "" ) // bot target non play ents (vehicles)
|
||||||
{
|
{
|
||||||
setDvar( "bots_play_target_other", true );
|
setdvar( "bots_play_target_other", true );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_play_killstreak" ) == "" ) // bot use killstreaks
|
if ( getdvar( "bots_play_killstreak" ) == "" ) // bot use killstreaks
|
||||||
{
|
{
|
||||||
setDvar( "bots_play_killstreak", true );
|
setdvar( "bots_play_killstreak", true );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_play_ads" ) == "" ) // bot ads
|
if ( getdvar( "bots_play_ads" ) == "" ) // bot ads
|
||||||
{
|
{
|
||||||
setDvar( "bots_play_ads", true );
|
setdvar( "bots_play_ads", true );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_play_aim" ) == "" )
|
if ( getdvar( "bots_play_aim" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_play_aim", true );
|
setdvar( "bots_play_aim", true );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( !isDefined( game[ "botWarfare" ] ) )
|
if ( !isdefined( game[ "botWarfare" ] ) )
|
||||||
{
|
{
|
||||||
game[ "botWarfare" ] = true;
|
game[ "botWarfare" ] = true;
|
||||||
}
|
}
|
||||||
@@ -301,9 +301,9 @@ handleBots()
|
|||||||
wait 0.05;
|
wait 0.05;
|
||||||
}
|
}
|
||||||
|
|
||||||
setDvar( "bots_manage_add", getBotArray().size );
|
setdvar( "bots_manage_add", getBotArray().size );
|
||||||
|
|
||||||
if ( !getDvarInt( "bots_main_kickBotsAtEnd" ) )
|
if ( !getdvarint( "bots_main_kickBotsAtEnd" ) )
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -312,7 +312,7 @@ handleBots()
|
|||||||
|
|
||||||
for ( i = 0; i < bots.size; i++ )
|
for ( i = 0; i < bots.size; i++ )
|
||||||
{
|
{
|
||||||
kick( bots[ i ] getEntityNumber() );
|
kick( bots[ i ] getentitynumber() );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -365,7 +365,7 @@ fixGamemodes()
|
|||||||
{
|
{
|
||||||
for ( i = 0; i < 19; i++ )
|
for ( i = 0; i < 19; i++ )
|
||||||
{
|
{
|
||||||
if ( isDefined( level.bombzones ) && level.gametype == "sd" )
|
if ( isdefined( level.bombzones ) && level.gametype == "sd" )
|
||||||
{
|
{
|
||||||
for ( i = 0; i < level.bombzones.size; i++ )
|
for ( i = 0; i < level.bombzones.size; i++ )
|
||||||
{
|
{
|
||||||
@@ -375,14 +375,14 @@ fixGamemodes()
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( isDefined( level.radios ) && level.gametype == "koth" )
|
if ( isdefined( level.radios ) && level.gametype == "koth" )
|
||||||
{
|
{
|
||||||
level thread fixKoth();
|
level thread fixKoth();
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( isDefined( level.bombzones ) && level.gametype == "dd" )
|
if ( isdefined( level.bombzones ) && level.gametype == "dd" )
|
||||||
{
|
{
|
||||||
level thread fixDem();
|
level thread fixDem();
|
||||||
|
|
||||||
@@ -405,7 +405,7 @@ fixDem()
|
|||||||
|
|
||||||
for ( i = 0; i < level.bombzones.size; i++ )
|
for ( i = 0; i < level.bombzones.size; i++ )
|
||||||
{
|
{
|
||||||
if ( isDefined( level.bombzones[ i ].trigger.trigger_off ) )
|
if ( isdefined( level.bombzones[ i ].trigger.trigger_off ) )
|
||||||
{
|
{
|
||||||
level.bombzones[ i ].bombexploded = true;
|
level.bombzones[ i ].bombexploded = true;
|
||||||
}
|
}
|
||||||
@@ -430,7 +430,7 @@ fixKoth()
|
|||||||
{
|
{
|
||||||
wait 0.05;
|
wait 0.05;
|
||||||
|
|
||||||
if ( !isDefined( level.radioobject ) )
|
if ( !isdefined( level.radioobject ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -446,7 +446,7 @@ fixKoth()
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
while ( isDefined( level.radioobject ) && level.radio.gameobject == level.radioobject )
|
while ( isdefined( level.radioobject ) && level.radio.gameobject == level.radioobject )
|
||||||
{
|
{
|
||||||
wait 0.05;
|
wait 0.05;
|
||||||
}
|
}
|
||||||
@@ -458,18 +458,18 @@ fixKoth()
|
|||||||
*/
|
*/
|
||||||
auditModels_loop()
|
auditModels_loop()
|
||||||
{
|
{
|
||||||
s_models = getEntArray( "script_model", "classname" );
|
s_models = getentarray( "script_model", "classname" );
|
||||||
|
|
||||||
for ( i = s_models.size - 1; i >= 0; i-- )
|
for ( i = s_models.size - 1; i >= 0; i-- )
|
||||||
{
|
{
|
||||||
model = s_models[ i ];
|
model = s_models[ i ];
|
||||||
|
|
||||||
if ( !isDefined( model ) )
|
if ( !isdefined( model ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( isDefined( model.bot_audit_model ) )
|
if ( isdefined( model.bot_audit_model ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -493,7 +493,7 @@ auditModels()
|
|||||||
{
|
{
|
||||||
wait 0.05;
|
wait 0.05;
|
||||||
|
|
||||||
level.vest_boxes = array_removeUndefined( level.vest_boxes );
|
level.vest_boxes = array_removeundefined( level.vest_boxes );
|
||||||
|
|
||||||
auditModels_loop();
|
auditModels_loop();
|
||||||
}
|
}
|
||||||
@@ -514,7 +514,7 @@ watchRadar_loop()
|
|||||||
{
|
{
|
||||||
grenade = level.players[ i ].deployedportableradar;
|
grenade = level.players[ i ].deployedportableradar;
|
||||||
|
|
||||||
if ( !isDefined( grenade ) )
|
if ( !isdefined( grenade ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -528,12 +528,12 @@ watchRadar_loop()
|
|||||||
{
|
{
|
||||||
player = level.players[ h ];
|
player = level.players[ h ];
|
||||||
|
|
||||||
if ( !isReallyAlive( player ) )
|
if ( !isreallyalive( player ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( isDefined( grenade.owner ) && grenade.owner == player )
|
if ( isdefined( grenade.owner ) && grenade.owner == player )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -543,12 +543,12 @@ watchRadar_loop()
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( player _hasPerk( "specialty_coldblooded" ) )
|
if ( player _hasperk( "specialty_coldblooded" ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( DistanceSquared( player.origin, grenade.origin ) > 256 * 256 )
|
if ( distancesquared( player.origin, grenade.origin ) > 256 * 256 )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -559,12 +559,12 @@ watchRadar_loop()
|
|||||||
|
|
||||||
for ( i = level.players.size - 1; i >= 0; i-- )
|
for ( i = level.players.size - 1; i >= 0; i-- )
|
||||||
{
|
{
|
||||||
if ( !isDefined( level.players[ i ].personalradar ) )
|
if ( !isdefined( level.players[ i ].personalradar ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( !isReallyAlive( level.players[ i ] ) )
|
if ( !isreallyalive( level.players[ i ] ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -573,7 +573,7 @@ watchRadar_loop()
|
|||||||
{
|
{
|
||||||
player = level.players[ h ];
|
player = level.players[ h ];
|
||||||
|
|
||||||
if ( !isReallyAlive( player ) )
|
if ( !isreallyalive( player ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -588,12 +588,12 @@ watchRadar_loop()
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( player _hasPerk( "specialty_coldblooded" ) )
|
if ( player _hasperk( "specialty_coldblooded" ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( DistanceSquared( player.origin, level.players[ i ].origin ) > 256 * 256 )
|
if ( distancesquared( player.origin, level.players[ i ].origin ) > 256 * 256 )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -602,13 +602,13 @@ watchRadar_loop()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( isDefined( level.gameflag ) && isDefined( level.gameflag.carrier ) && isDefined( level.gameflag.portable_radar ) )
|
if ( isdefined( level.gameflag ) && isdefined( level.gameflag.carrier ) && isdefined( level.gameflag.portable_radar ) )
|
||||||
{
|
{
|
||||||
for ( h = level.players.size - 1; h >= 0; h-- )
|
for ( h = level.players.size - 1; h >= 0; h-- )
|
||||||
{
|
{
|
||||||
player = level.players[ h ];
|
player = level.players[ h ];
|
||||||
|
|
||||||
if ( !isReallyAlive( player ) )
|
if ( !isreallyalive( player ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -618,12 +618,12 @@ watchRadar_loop()
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( player _hasPerk( "specialty_coldblooded" ) )
|
if ( player _hasperk( "specialty_coldblooded" ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( DistanceSquared( player.origin, level.gameflag.carrier.origin ) > 256 * 256 )
|
if ( distancesquared( player.origin, level.gameflag.carrier.origin ) > 256 * 256 )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -661,7 +661,7 @@ watchScrabler_loop()
|
|||||||
{
|
{
|
||||||
scrambler = level.scramblers[ i ];
|
scrambler = level.scramblers[ i ];
|
||||||
|
|
||||||
if ( !isDefined( scrambler ) )
|
if ( !isdefined( scrambler ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -670,12 +670,12 @@ watchScrabler_loop()
|
|||||||
{
|
{
|
||||||
player = level.players[ h ];
|
player = level.players[ h ];
|
||||||
|
|
||||||
if ( !isReallyAlive( player ) )
|
if ( !isreallyalive( player ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( isDefined( scrambler.owner ) && scrambler.owner == player )
|
if ( isdefined( scrambler.owner ) && scrambler.owner == player )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -685,12 +685,12 @@ watchScrabler_loop()
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( player _hasPerk( "specialty_spygame" ) )
|
if ( player _hasperk( "specialty_spygame" ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( DistanceSquared( player.origin, scrambler.origin ) > 256 * 256 )
|
if ( distancesquared( player.origin, scrambler.origin ) > 256 * 256 )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -701,12 +701,12 @@ watchScrabler_loop()
|
|||||||
|
|
||||||
drones = [];
|
drones = [];
|
||||||
|
|
||||||
if ( isDefined( level.remote_uav[ "axis" ] ) )
|
if ( isdefined( level.remote_uav[ "axis" ] ) )
|
||||||
{
|
{
|
||||||
drones[ drones.size ] = level.remote_uav[ "axis" ];
|
drones[ drones.size ] = level.remote_uav[ "axis" ];
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( isDefined( level.remote_uav[ "allies" ] ) )
|
if ( isdefined( level.remote_uav[ "allies" ] ) )
|
||||||
{
|
{
|
||||||
drones[ drones.size ] = level.remote_uav[ "allies" ];
|
drones[ drones.size ] = level.remote_uav[ "allies" ];
|
||||||
}
|
}
|
||||||
@@ -719,12 +719,12 @@ watchScrabler_loop()
|
|||||||
{
|
{
|
||||||
player = level.players[ h ];
|
player = level.players[ h ];
|
||||||
|
|
||||||
if ( !isReallyAlive( player ) )
|
if ( !isreallyalive( player ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( isDefined( drone.owner ) && drone.owner == player )
|
if ( isdefined( drone.owner ) && drone.owner == player )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -734,12 +734,12 @@ watchScrabler_loop()
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( player _hasPerk( "specialty_spygame" ) )
|
if ( player _hasperk( "specialty_spygame" ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( DistanceSquared( player.origin, drone.origin ) > 256 * 256 )
|
if ( distancesquared( player.origin, drone.origin ) > 256 * 256 )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -767,13 +767,13 @@ watchScrabler()
|
|||||||
*/
|
*/
|
||||||
addNotifyOnAirdrops_loop()
|
addNotifyOnAirdrops_loop()
|
||||||
{
|
{
|
||||||
dropCrates = getEntArray( "care_package", "targetname" );
|
dropCrates = getentarray( "care_package", "targetname" );
|
||||||
|
|
||||||
for ( i = dropCrates.size - 1; i >= 0; i-- )
|
for ( i = dropCrates.size - 1; i >= 0; i-- )
|
||||||
{
|
{
|
||||||
airdrop = dropCrates[ i ];
|
airdrop = dropCrates[ i ];
|
||||||
|
|
||||||
if ( isDefined( airdrop.doingphysics ) )
|
if ( isdefined( airdrop.doingphysics ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -805,7 +805,7 @@ doNotifyOnAirdrop()
|
|||||||
|
|
||||||
self.doingphysics = false;
|
self.doingphysics = false;
|
||||||
|
|
||||||
if ( isDefined( self.owner ) )
|
if ( isdefined( self.owner ) )
|
||||||
{
|
{
|
||||||
self.owner notify( "crate_physics_done" );
|
self.owner notify( "crate_physics_done" );
|
||||||
}
|
}
|
||||||
@@ -822,7 +822,7 @@ onCarepackageCaptured()
|
|||||||
|
|
||||||
self waittill( "captured", player );
|
self waittill( "captured", player );
|
||||||
|
|
||||||
if ( isDefined( self.owner ) && self.owner is_bot() )
|
if ( isdefined( self.owner ) && self.owner is_bot() )
|
||||||
{
|
{
|
||||||
self.owner BotNotifyBotEvent( "crate_cap", "captured", self, player );
|
self.owner BotNotifyBotEvent( "crate_cap", "captured", self, player );
|
||||||
}
|
}
|
||||||
@@ -864,7 +864,7 @@ connected()
|
|||||||
{
|
{
|
||||||
self endon( "disconnect" );
|
self endon( "disconnect" );
|
||||||
|
|
||||||
if ( !isDefined( self.pers[ "bot_host" ] ) )
|
if ( !isdefined( self.pers[ "bot_host" ] ) )
|
||||||
{
|
{
|
||||||
self thread doHostCheck();
|
self thread doHostCheck();
|
||||||
}
|
}
|
||||||
@@ -874,13 +874,13 @@ connected()
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( !isDefined( self.pers[ "isBot" ] ) )
|
if ( !isdefined( self.pers[ "isBot" ] ) )
|
||||||
{
|
{
|
||||||
// fast_restart occured...
|
// fast_restart occured...
|
||||||
self.pers[ "isBot" ] = true;
|
self.pers[ "isBot" ] = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( !isDefined( self.pers[ "isBotWarfare" ] ) )
|
if ( !isdefined( self.pers[ "isBotWarfare" ] ) )
|
||||||
{
|
{
|
||||||
self.pers[ "isBotWarfare" ] = true;
|
self.pers[ "isBotWarfare" ] = true;
|
||||||
self thread added();
|
self thread added();
|
||||||
@@ -908,48 +908,48 @@ watchBotDebugEvent()
|
|||||||
{
|
{
|
||||||
self waittill( "bot_event", msg, str, b, c, d, e, f, g );
|
self waittill( "bot_event", msg, str, b, c, d, e, f, g );
|
||||||
|
|
||||||
if ( GetDvarInt( "bots_main_debug" ) >= 2 )
|
if ( getdvarint( "bots_main_debug" ) >= 2 )
|
||||||
{
|
{
|
||||||
big_str = "Bot Warfare debug: " + self.name + ": " + msg;
|
big_str = "Bot Warfare debug: " + self.name + ": " + msg;
|
||||||
|
|
||||||
if ( isDefined( str ) && isString( str ) )
|
if ( isdefined( str ) && isstring( str ) )
|
||||||
{
|
{
|
||||||
big_str += ", " + str;
|
big_str += ", " + str;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( isDefined( b ) && isString( b ) )
|
if ( isdefined( b ) && isstring( b ) )
|
||||||
{
|
{
|
||||||
big_str += ", " + b;
|
big_str += ", " + b;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( isDefined( c ) && isString( c ) )
|
if ( isdefined( c ) && isstring( c ) )
|
||||||
{
|
{
|
||||||
big_str += ", " + c;
|
big_str += ", " + c;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( isDefined( d ) && isString( d ) )
|
if ( isdefined( d ) && isstring( d ) )
|
||||||
{
|
{
|
||||||
big_str += ", " + d;
|
big_str += ", " + d;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( isDefined( e ) && isString( e ) )
|
if ( isdefined( e ) && isstring( e ) )
|
||||||
{
|
{
|
||||||
big_str += ", " + e;
|
big_str += ", " + e;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( isDefined( f ) && isString( f ) )
|
if ( isdefined( f ) && isstring( f ) )
|
||||||
{
|
{
|
||||||
big_str += ", " + f;
|
big_str += ", " + f;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( isDefined( g ) && isString( g ) )
|
if ( isdefined( g ) && isstring( g ) )
|
||||||
{
|
{
|
||||||
big_str += ", " + g;
|
big_str += ", " + g;
|
||||||
}
|
}
|
||||||
|
|
||||||
BotBuiltinPrintConsole( big_str );
|
BotBuiltinPrintConsole( big_str );
|
||||||
}
|
}
|
||||||
else if ( msg == "debug" && GetDvarInt( "bots_main_debug" ) )
|
else if ( msg == "debug" && getdvarint( "bots_main_debug" ) )
|
||||||
{
|
{
|
||||||
BotBuiltinPrintConsole( "Bot Warfare debug: " + self.name + ": " + str );
|
BotBuiltinPrintConsole( "Bot Warfare debug: " + self.name + ": " + str );
|
||||||
}
|
}
|
||||||
@@ -972,7 +972,7 @@ added()
|
|||||||
*/
|
*/
|
||||||
add_bot()
|
add_bot()
|
||||||
{
|
{
|
||||||
bot = addTestClient();
|
bot = addtestclient();
|
||||||
|
|
||||||
if ( isdefined( bot ) )
|
if ( isdefined( bot ) )
|
||||||
{
|
{
|
||||||
@@ -987,11 +987,11 @@ add_bot()
|
|||||||
*/
|
*/
|
||||||
diffBots_loop()
|
diffBots_loop()
|
||||||
{
|
{
|
||||||
var_allies_hard = getDVarInt( "bots_skill_allies_hard" );
|
var_allies_hard = getdvarint( "bots_skill_allies_hard" );
|
||||||
var_allies_med = getDVarInt( "bots_skill_allies_med" );
|
var_allies_med = getdvarint( "bots_skill_allies_med" );
|
||||||
var_axis_hard = getDVarInt( "bots_skill_axis_hard" );
|
var_axis_hard = getdvarint( "bots_skill_axis_hard" );
|
||||||
var_axis_med = getDVarInt( "bots_skill_axis_med" );
|
var_axis_med = getdvarint( "bots_skill_axis_med" );
|
||||||
var_skill = getDvarInt( "bots_skill" );
|
var_skill = getdvarint( "bots_skill" );
|
||||||
|
|
||||||
allies_hard = 0;
|
allies_hard = 0;
|
||||||
allies_med = 0;
|
allies_med = 0;
|
||||||
@@ -1006,7 +1006,7 @@ diffBots_loop()
|
|||||||
{
|
{
|
||||||
player = level.players[ i ];
|
player = level.players[ i ];
|
||||||
|
|
||||||
if ( !isDefined( player.pers[ "team" ] ) )
|
if ( !isdefined( player.pers[ "team" ] ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -1070,8 +1070,8 @@ diffBots_loop()
|
|||||||
}
|
}
|
||||||
|
|
||||||
playercount = level.players.size;
|
playercount = level.players.size;
|
||||||
min_diff = GetDvarInt( "bots_skill_min" );
|
min_diff = getdvarint( "bots_skill_min" );
|
||||||
max_diff = GetDvarInt( "bots_skill_max" );
|
max_diff = getdvarint( "bots_skill_max" );
|
||||||
|
|
||||||
for ( i = 0; i < playercount; i++ )
|
for ( i = 0; i < playercount; i++ )
|
||||||
{
|
{
|
||||||
@@ -1104,8 +1104,8 @@ diffBots()
|
|||||||
*/
|
*/
|
||||||
teamBots_loop()
|
teamBots_loop()
|
||||||
{
|
{
|
||||||
teamAmount = getDvarInt( "bots_team_amount" );
|
teamAmount = getdvarint( "bots_team_amount" );
|
||||||
toTeam = getDvar( "bots_team" );
|
toTeam = getdvar( "bots_team" );
|
||||||
|
|
||||||
alliesbots = 0;
|
alliesbots = 0;
|
||||||
alliesplayers = 0;
|
alliesplayers = 0;
|
||||||
@@ -1118,7 +1118,7 @@ teamBots_loop()
|
|||||||
{
|
{
|
||||||
player = level.players[ i ];
|
player = level.players[ i ];
|
||||||
|
|
||||||
if ( !isDefined( player.pers[ "team" ] ) )
|
if ( !isdefined( player.pers[ "team" ] ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -1150,7 +1150,7 @@ teamBots_loop()
|
|||||||
allies = alliesbots;
|
allies = alliesbots;
|
||||||
axis = axisbots;
|
axis = axisbots;
|
||||||
|
|
||||||
if ( !getDvarInt( "bots_team_mode" ) )
|
if ( !getdvarint( "bots_team_mode" ) )
|
||||||
{
|
{
|
||||||
allies += alliesplayers;
|
allies += alliesplayers;
|
||||||
axis += axisplayers;
|
axis += axisplayers;
|
||||||
@@ -1158,7 +1158,7 @@ teamBots_loop()
|
|||||||
|
|
||||||
if ( toTeam != "custom" )
|
if ( toTeam != "custom" )
|
||||||
{
|
{
|
||||||
if ( getDvarInt( "bots_team_force" ) )
|
if ( getdvarint( "bots_team_force" ) )
|
||||||
{
|
{
|
||||||
if ( toTeam == "autoassign" )
|
if ( toTeam == "autoassign" )
|
||||||
{
|
{
|
||||||
@@ -1181,7 +1181,7 @@ teamBots_loop()
|
|||||||
{
|
{
|
||||||
player = level.players[ i ];
|
player = level.players[ i ];
|
||||||
|
|
||||||
if ( !isDefined( player.pers[ "team" ] ) )
|
if ( !isdefined( player.pers[ "team" ] ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -1222,7 +1222,7 @@ teamBots_loop()
|
|||||||
{
|
{
|
||||||
player = level.players[ i ];
|
player = level.players[ i ];
|
||||||
|
|
||||||
if ( !isDefined( player.pers[ "team" ] ) )
|
if ( !isdefined( player.pers[ "team" ] ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -1274,11 +1274,11 @@ teamBots()
|
|||||||
*/
|
*/
|
||||||
addBots_loop()
|
addBots_loop()
|
||||||
{
|
{
|
||||||
botsToAdd = GetDvarInt( "bots_manage_add" );
|
botsToAdd = getdvarint( "bots_manage_add" );
|
||||||
|
|
||||||
if ( botsToAdd > 0 )
|
if ( botsToAdd > 0 )
|
||||||
{
|
{
|
||||||
SetDvar( "bots_manage_add", 0 );
|
setdvar( "bots_manage_add", 0 );
|
||||||
|
|
||||||
if ( botsToAdd > 64 )
|
if ( botsToAdd > 64 )
|
||||||
{
|
{
|
||||||
@@ -1292,14 +1292,14 @@ addBots_loop()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fillMode = getDVarInt( "bots_manage_fill_mode" );
|
fillMode = getdvarint( "bots_manage_fill_mode" );
|
||||||
|
|
||||||
if ( fillMode == 2 || fillMode == 3 )
|
if ( fillMode == 2 || fillMode == 3 )
|
||||||
{
|
{
|
||||||
setDvar( "bots_manage_fill", getGoodMapAmount() );
|
setdvar( "bots_manage_fill", getGoodMapAmount() );
|
||||||
}
|
}
|
||||||
|
|
||||||
fillAmount = getDvarInt( "bots_manage_fill" );
|
fillAmount = getdvarint( "bots_manage_fill" );
|
||||||
|
|
||||||
players = 0;
|
players = 0;
|
||||||
bots = 0;
|
bots = 0;
|
||||||
@@ -1315,7 +1315,7 @@ addBots_loop()
|
|||||||
{
|
{
|
||||||
bots++;
|
bots++;
|
||||||
}
|
}
|
||||||
else if ( !isDefined( player.pers[ "team" ] ) || ( player.pers[ "team" ] != "axis" && player.pers[ "team" ] != "allies" ) )
|
else if ( !isdefined( player.pers[ "team" ] ) || ( player.pers[ "team" ] != "axis" && player.pers[ "team" ] != "allies" ) )
|
||||||
{
|
{
|
||||||
spec++;
|
spec++;
|
||||||
}
|
}
|
||||||
@@ -1325,11 +1325,11 @@ addBots_loop()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( !randomInt( 999 ) )
|
if ( !randomint( 999 ) )
|
||||||
{
|
{
|
||||||
setDvar( "testclients_doreload", true );
|
setdvar( "testclients_doreload", true );
|
||||||
wait 0.1;
|
wait 0.1;
|
||||||
setDvar( "testclients_doreload", false );
|
setdvar( "testclients_doreload", false );
|
||||||
doExtraCheck();
|
doExtraCheck();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1349,7 +1349,7 @@ addBots_loop()
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( !isDefined( player.pers[ "team" ] ) )
|
if ( !isdefined( player.pers[ "team" ] ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -1392,22 +1392,22 @@ addBots_loop()
|
|||||||
amount += players;
|
amount += players;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDVarInt( "bots_manage_fill_spec" ) )
|
if ( getdvarint( "bots_manage_fill_spec" ) )
|
||||||
{
|
{
|
||||||
amount += spec;
|
amount += spec;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( amount < fillAmount )
|
if ( amount < fillAmount )
|
||||||
{
|
{
|
||||||
setDvar( "bots_manage_add", 1 );
|
setdvar( "bots_manage_add", 1 );
|
||||||
}
|
}
|
||||||
else if ( amount > fillAmount && getDvarInt( "bots_manage_fill_kick" ) )
|
else if ( amount > fillAmount && getdvarint( "bots_manage_fill_kick" ) )
|
||||||
{
|
{
|
||||||
tempBot = getBotToKick();
|
tempBot = getBotToKick();
|
||||||
|
|
||||||
if ( isDefined( tempBot ) )
|
if ( isdefined( tempBot ) )
|
||||||
{
|
{
|
||||||
kick( tempBot getEntityNumber() );
|
kick( tempBot getentitynumber() );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1440,7 +1440,7 @@ onGrenadeFire()
|
|||||||
{
|
{
|
||||||
self waittill ( "grenade_fire", grenade, weaponName );
|
self waittill ( "grenade_fire", grenade, weaponName );
|
||||||
|
|
||||||
if ( !isDefined( grenade ) )
|
if ( !isdefined( grenade ) )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -1451,7 +1451,7 @@ onGrenadeFire()
|
|||||||
{
|
{
|
||||||
grenade thread AddToSmokeList();
|
grenade thread AddToSmokeList();
|
||||||
}
|
}
|
||||||
else if ( isSubStr( weaponName, "frag_" ) )
|
else if ( issubstr( weaponName, "frag_" ) )
|
||||||
{
|
{
|
||||||
grenade thread AddToFragList( self );
|
grenade thread AddToFragList( self );
|
||||||
}
|
}
|
||||||
@@ -1464,7 +1464,7 @@ onGrenadeFire()
|
|||||||
AddToFragList( who )
|
AddToFragList( who )
|
||||||
{
|
{
|
||||||
grenade = spawnstruct();
|
grenade = spawnstruct();
|
||||||
grenade.origin = self getOrigin();
|
grenade.origin = self getorigin();
|
||||||
grenade.velocity = ( 0, 0, 0 );
|
grenade.velocity = ( 0, 0, 0 );
|
||||||
grenade.grenade = self;
|
grenade.grenade = self;
|
||||||
grenade.owner = who;
|
grenade.owner = who;
|
||||||
@@ -1481,9 +1481,9 @@ AddToFragList( who )
|
|||||||
*/
|
*/
|
||||||
thinkFrag()
|
thinkFrag()
|
||||||
{
|
{
|
||||||
while ( isDefined( self.grenade ) )
|
while ( isdefined( self.grenade ) )
|
||||||
{
|
{
|
||||||
nowOrigin = self.grenade getOrigin();
|
nowOrigin = self.grenade getorigin();
|
||||||
self.velocity = ( nowOrigin - self.origin ) * 20;
|
self.velocity = ( nowOrigin - self.origin ) * 20;
|
||||||
self.origin = nowOrigin;
|
self.origin = nowOrigin;
|
||||||
|
|
||||||
@@ -1499,7 +1499,7 @@ thinkFrag()
|
|||||||
AddToSmokeList()
|
AddToSmokeList()
|
||||||
{
|
{
|
||||||
grenade = spawnstruct();
|
grenade = spawnstruct();
|
||||||
grenade.origin = self getOrigin();
|
grenade.origin = self getorigin();
|
||||||
grenade.state = "moving";
|
grenade.state = "moving";
|
||||||
grenade.grenade = self;
|
grenade.grenade = self;
|
||||||
|
|
||||||
@@ -1513,9 +1513,9 @@ AddToSmokeList()
|
|||||||
*/
|
*/
|
||||||
thinkSmoke()
|
thinkSmoke()
|
||||||
{
|
{
|
||||||
while ( isDefined( self.grenade ) )
|
while ( isdefined( self.grenade ) )
|
||||||
{
|
{
|
||||||
self.origin = self.grenade getOrigin();
|
self.origin = self.grenade getorigin();
|
||||||
self.state = "moving";
|
self.state = "moving";
|
||||||
wait 0.05;
|
wait 0.05;
|
||||||
}
|
}
|
||||||
|
|||||||
+53
-53
@@ -15,9 +15,9 @@
|
|||||||
*/
|
*/
|
||||||
init()
|
init()
|
||||||
{
|
{
|
||||||
if ( getDvar( "bots_main_chat" ) == "" )
|
if ( getdvar( "bots_main_chat" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_main_chat", 1.0 );
|
setdvar( "bots_main_chat", 1.0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
level thread onBotConnected();
|
level thread onBotConnected();
|
||||||
@@ -41,16 +41,16 @@ onBotConnected()
|
|||||||
*/
|
*/
|
||||||
BotDoChat( chance, string, isTeam )
|
BotDoChat( chance, string, isTeam )
|
||||||
{
|
{
|
||||||
mod = getDvarFloat( "bots_main_chat" );
|
mod = getdvarfloat( "bots_main_chat" );
|
||||||
|
|
||||||
if ( mod <= 0.0 )
|
if ( mod <= 0.0 )
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( chance >= 100 || mod >= 100.0 || ( RandomInt( 100 ) < ( chance * mod ) + 0 ) )
|
if ( chance >= 100 || mod >= 100.0 || ( randomint( 100 ) < ( chance * mod ) + 0 ) )
|
||||||
{
|
{
|
||||||
if ( isDefined( isTeam ) && isTeam )
|
if ( isdefined( isTeam ) && isTeam )
|
||||||
{
|
{
|
||||||
self sayteam( string );
|
self sayteam( string );
|
||||||
}
|
}
|
||||||
@@ -87,9 +87,9 @@ start_onnuke_call()
|
|||||||
|
|
||||||
for ( ;; )
|
for ( ;; )
|
||||||
{
|
{
|
||||||
while ( !isDefined( level.nukeincoming ) && !isDefined( level.moabincoming ) )
|
while ( !isdefined( level.nukeincoming ) && !isdefined( level.moabincoming ) )
|
||||||
{
|
{
|
||||||
wait 0.05 + randomInt( 4 );
|
wait 0.05 + randomint( 4 );
|
||||||
}
|
}
|
||||||
|
|
||||||
self thread bot_onnukecall_watch();
|
self thread bot_onnukecall_watch();
|
||||||
@@ -138,9 +138,9 @@ start_random_chat()
|
|||||||
{
|
{
|
||||||
wait 1;
|
wait 1;
|
||||||
|
|
||||||
if ( randomInt( 100 ) < 1 )
|
if ( randomint( 100 ) < 1 )
|
||||||
{
|
{
|
||||||
if ( randomInt( 100 ) < 1 && isReallyAlive( self ) )
|
if ( randomint( 100 ) < 1 && isreallyalive( self ) )
|
||||||
{
|
{
|
||||||
self thread doQuickMessage();
|
self thread doQuickMessage();
|
||||||
}
|
}
|
||||||
@@ -487,7 +487,7 @@ doQuickMessage()
|
|||||||
self endon( "disconnect" );
|
self endon( "disconnect" );
|
||||||
self endon( "death" );
|
self endon( "death" );
|
||||||
|
|
||||||
if ( !isDefined( self.talking ) || !self.talking )
|
if ( !isdefined( self.talking ) || !self.talking )
|
||||||
{
|
{
|
||||||
self.talking = true;
|
self.talking = true;
|
||||||
soundalias = "";
|
soundalias = "";
|
||||||
@@ -525,10 +525,10 @@ doQuickMessage()
|
|||||||
|
|
||||||
if ( soundalias != "" && saytext != "" )
|
if ( soundalias != "" && saytext != "" )
|
||||||
{
|
{
|
||||||
self maps\mp\gametypes\_quickmessages::saveHeadIcon();
|
self maps\mp\gametypes\_quickmessages::saveheadicon();
|
||||||
self maps\mp\gametypes\_quickmessages::doQuickMessage( soundalias, saytext );
|
self maps\mp\gametypes\_quickmessages::doquickmessage( soundalias, saytext );
|
||||||
wait 2;
|
wait 2;
|
||||||
self maps\mp\gametypes\_quickmessages::restoreHeadIcon();
|
self maps\mp\gametypes\_quickmessages::restoreheadicon();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -576,7 +576,7 @@ endgame_chat()
|
|||||||
|
|
||||||
if ( level.teambased )
|
if ( level.teambased )
|
||||||
{
|
{
|
||||||
winningteam = maps\mp\gametypes\_gamescore::getWinningTeam();
|
winningteam = maps\mp\gametypes\_gamescore::getwinningteam();
|
||||||
|
|
||||||
if ( self.pers[ "team" ] == winningteam )
|
if ( self.pers[ "team" ] == winningteam )
|
||||||
{
|
{
|
||||||
@@ -1091,7 +1091,7 @@ bot_chat_killed_watch( victim )
|
|||||||
{
|
{
|
||||||
self endon( "disconnect" );
|
self endon( "disconnect" );
|
||||||
|
|
||||||
if ( !isDefined( victim ) || !isDefined( victim.name ) )
|
if ( !isdefined( victim ) || !isdefined( victim.name ) )
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -1261,9 +1261,9 @@ bot_chat_killed_watch( victim )
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 40:
|
case 40:
|
||||||
if ( isDefined( victim.attackerdata ) && isDefined( victim.attackerdata[ self.guid ] ) && isDefined( victim.attackerdata[ self.guid ].weapon ) )
|
if ( isdefined( victim.attackerdata ) && isdefined( victim.attackerdata[ self.guid ] ) && isdefined( victim.attackerdata[ self.guid ].weapon ) )
|
||||||
{
|
{
|
||||||
message = ( "Man, I sure love my " + getBaseWeaponName( victim.attackerdata[ self.guid ].weapon ) + "!" );
|
message = ( "Man, I sure love my " + getbaseweaponname( victim.attackerdata[ self.guid ].weapon ) + "!" );
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
@@ -1284,7 +1284,7 @@ bot_chat_death_watch( killer, last_ks )
|
|||||||
{
|
{
|
||||||
self endon( "disconnect" );
|
self endon( "disconnect" );
|
||||||
|
|
||||||
if ( !isDefined( killer ) || !isDefined( killer.name ) )
|
if ( !isdefined( killer ) || !isdefined( killer.name ) )
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -1322,7 +1322,7 @@ bot_chat_death_watch( killer, last_ks )
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 5:
|
case 5:
|
||||||
message = ( "^" + ( randomint( 6 ) + 1 ) + "Stop Spawn KILLING!!!" );
|
message = ( "^" + ( randomint( 6 ) + 1 ) + "Stop spawn KILLING!!!" );
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 6:
|
case 6:
|
||||||
@@ -1542,9 +1542,9 @@ bot_chat_death_watch( killer, last_ks )
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 60:
|
case 60:
|
||||||
if ( isDefined( self.attackerdata ) && isDefined( self.attackerdata[ killer.guid ] ) && isDefined( self.attackerdata[ killer.guid ].weapon ) )
|
if ( isdefined( self.attackerdata ) && isdefined( self.attackerdata[ killer.guid ] ) && isdefined( self.attackerdata[ killer.guid ].weapon ) )
|
||||||
{
|
{
|
||||||
message = "Wow! Nice " + getBaseWeaponName( self.attackerdata[ killer.guid ].weapon ) + " you got there, " + killer.name + "!";
|
message = "Wow! Nice " + getbaseweaponname( self.attackerdata[ killer.guid ].weapon ) + " you got there, " + killer.name + "!";
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
@@ -1592,7 +1592,7 @@ bot_chat_revive_watch( state, revive, c, d, e, f, g )
|
|||||||
switch ( state )
|
switch ( state )
|
||||||
{
|
{
|
||||||
case "go":
|
case "go":
|
||||||
switch ( randomInt( 1 ) )
|
switch ( randomint( 1 ) )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
self BotDoChat( 10, "i am going to revive " + revive.name );
|
self BotDoChat( 10, "i am going to revive " + revive.name );
|
||||||
@@ -1602,7 +1602,7 @@ bot_chat_revive_watch( state, revive, c, d, e, f, g )
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case "start":
|
case "start":
|
||||||
switch ( randomInt( 1 ) )
|
switch ( randomint( 1 ) )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
self BotDoChat( 10, "i am reviving " + revive.name );
|
self BotDoChat( 10, "i am reviving " + revive.name );
|
||||||
@@ -1612,7 +1612,7 @@ bot_chat_revive_watch( state, revive, c, d, e, f, g )
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case "stop":
|
case "stop":
|
||||||
switch ( randomInt( 1 ) )
|
switch ( randomint( 1 ) )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
self BotDoChat( 10, "i revived " + revive.name );
|
self BotDoChat( 10, "i revived " + revive.name );
|
||||||
@@ -1633,7 +1633,7 @@ bot_chat_killcam_watch( state, b, c, d, e, f, g )
|
|||||||
switch ( state )
|
switch ( state )
|
||||||
{
|
{
|
||||||
case "start":
|
case "start":
|
||||||
switch ( randomInt( 2 ) )
|
switch ( randomint( 2 ) )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
self BotDoChat( 1, "WTF?!?!?!! Dude youre a hacker and a half!!" );
|
self BotDoChat( 1, "WTF?!?!?!! Dude youre a hacker and a half!!" );
|
||||||
@@ -1647,7 +1647,7 @@ bot_chat_killcam_watch( state, b, c, d, e, f, g )
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case "stop":
|
case "stop":
|
||||||
switch ( randomInt( 2 ) )
|
switch ( randomint( 2 ) )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
self BotDoChat( 1, "Wow... Im reporting you!!!" );
|
self BotDoChat( 1, "Wow... Im reporting you!!!" );
|
||||||
@@ -1669,7 +1669,7 @@ bot_chat_stuck_watch( a, b, c, d, e, f, g )
|
|||||||
{
|
{
|
||||||
self endon( "disconnect" );
|
self endon( "disconnect" );
|
||||||
|
|
||||||
sayLength = randomintRange( 5, 30 );
|
sayLength = randomintrange( 5, 30 );
|
||||||
msg = "";
|
msg = "";
|
||||||
|
|
||||||
for ( i = 0; i < sayLength; i++ )
|
for ( i = 0; i < sayLength; i++ )
|
||||||
@@ -1727,7 +1727,7 @@ bot_chat_tube_watch( state, tubeWp, tubeWeap, d, e, f, g )
|
|||||||
switch ( state )
|
switch ( state )
|
||||||
{
|
{
|
||||||
case "go":
|
case "go":
|
||||||
switch ( randomInt( 1 ) )
|
switch ( randomint( 1 ) )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
self BotDoChat( 10, "i am going to go tube" );
|
self BotDoChat( 10, "i am going to go tube" );
|
||||||
@@ -1737,7 +1737,7 @@ bot_chat_tube_watch( state, tubeWp, tubeWeap, d, e, f, g )
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case "start":
|
case "start":
|
||||||
switch ( randomInt( 1 ) )
|
switch ( randomint( 1 ) )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
self BotDoChat( 10, "i tubed" );
|
self BotDoChat( 10, "i tubed" );
|
||||||
@@ -1900,7 +1900,7 @@ bot_chat_crate_cap_watch( state, aircare, player, d, e, f, g )
|
|||||||
{
|
{
|
||||||
self endon( "disconnect" );
|
self endon( "disconnect" );
|
||||||
|
|
||||||
if ( !isDefined( aircare ) )
|
if ( !isdefined( aircare ) )
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -1911,7 +1911,7 @@ bot_chat_crate_cap_watch( state, aircare, player, d, e, f, g )
|
|||||||
switch ( randomint( 2 ) )
|
switch ( randomint( 2 ) )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
if ( !isDefined( aircare.owner ) || aircare.owner == self )
|
if ( !isdefined( aircare.owner ) || aircare.owner == self )
|
||||||
{
|
{
|
||||||
self BotDoChat( 5, "going to my carepackage" );
|
self BotDoChat( 5, "going to my carepackage" );
|
||||||
}
|
}
|
||||||
@@ -1933,7 +1933,7 @@ bot_chat_crate_cap_watch( state, aircare, player, d, e, f, g )
|
|||||||
switch ( randomint( 2 ) )
|
switch ( randomint( 2 ) )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
if ( !isDefined( aircare.owner ) || aircare.owner == self )
|
if ( !isdefined( aircare.owner ) || aircare.owner == self )
|
||||||
{
|
{
|
||||||
self BotDoChat( 15, "taking my carepackage" );
|
self BotDoChat( 15, "taking my carepackage" );
|
||||||
}
|
}
|
||||||
@@ -1952,7 +1952,7 @@ bot_chat_crate_cap_watch( state, aircare, player, d, e, f, g )
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case "stop":
|
case "stop":
|
||||||
if ( !isDefined( aircare.owner ) || aircare.owner == self )
|
if ( !isdefined( aircare.owner ) || aircare.owner == self )
|
||||||
{
|
{
|
||||||
switch ( randomint( 6 ) )
|
switch ( randomint( 6 ) )
|
||||||
{
|
{
|
||||||
@@ -1977,7 +1977,7 @@ bot_chat_crate_cap_watch( state, aircare, player, d, e, f, g )
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 5:
|
case 5:
|
||||||
if ( isDefined( aircare.cratetype ) )
|
if ( isdefined( aircare.cratetype ) )
|
||||||
{
|
{
|
||||||
self BotDoChat( 10, ":3 i got my " + aircare.cratetype );
|
self BotDoChat( 10, ":3 i got my " + aircare.cratetype );
|
||||||
}
|
}
|
||||||
@@ -2006,7 +2006,7 @@ bot_chat_crate_cap_watch( state, aircare, player, d, e, f, g )
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 4:
|
case 4:
|
||||||
if ( isDefined( aircare.cratetype ) )
|
if ( isdefined( aircare.cratetype ) )
|
||||||
{
|
{
|
||||||
self BotDoChat( 10, "hahaah jajaja i took your " + aircare.cratetype );
|
self BotDoChat( 10, "hahaah jajaja i took your " + aircare.cratetype );
|
||||||
}
|
}
|
||||||
@@ -2037,7 +2037,7 @@ bot_chat_crate_cap_watch( state, aircare, player, d, e, f, g )
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 4:
|
case 4:
|
||||||
if ( isDefined( aircare.cratetype ) )
|
if ( isdefined( aircare.cratetype ) )
|
||||||
{
|
{
|
||||||
self BotDoChat( 10, "Wow! there goes my " + aircare.cratetype + "!" );
|
self BotDoChat( 10, "Wow! there goes my " + aircare.cratetype + "!" );
|
||||||
}
|
}
|
||||||
@@ -2126,12 +2126,12 @@ bot_chat_attack_vehicle_watch( state, vehicle, rocketAmmo, d, e, f, g )
|
|||||||
case 13:
|
case 13:
|
||||||
weap = rocketAmmo;
|
weap = rocketAmmo;
|
||||||
|
|
||||||
if ( !isDefined( weap ) )
|
if ( !isdefined( weap ) )
|
||||||
{
|
{
|
||||||
weap = self getCurrentWeapon();
|
weap = self getcurrentweapon();
|
||||||
}
|
}
|
||||||
|
|
||||||
self BotDoChat( 10, "Im going to takedown your ks with my " + getBaseWeaponName( weap ) );
|
self BotDoChat( 10, "Im going to takedown your ks with my " + getbaseweaponname( weap ) );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2231,7 +2231,7 @@ bot_chat_follow_watch( state, player, time, d, e, f, g )
|
|||||||
{
|
{
|
||||||
self endon( "disconnect" );
|
self endon( "disconnect" );
|
||||||
|
|
||||||
if ( !isDefined( player ) )
|
if ( !isdefined( player ) )
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -2282,20 +2282,20 @@ bot_chat_equ_watch( state, wp, weap, d, e, f, g )
|
|||||||
switch ( state )
|
switch ( state )
|
||||||
{
|
{
|
||||||
case "go":
|
case "go":
|
||||||
switch ( randomInt( 1 ) )
|
switch ( randomint( 1 ) )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
self BotDoChat( 10, "going to place a " + getBaseWeaponName( weap ) );
|
self BotDoChat( 10, "going to place a " + getbaseweaponname( weap ) );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "start":
|
case "start":
|
||||||
switch ( randomInt( 1 ) )
|
switch ( randomint( 1 ) )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
self BotDoChat( 10, "placed a " + getBaseWeaponName( weap ) );
|
self BotDoChat( 10, "placed a " + getbaseweaponname( weap ) );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2313,20 +2313,20 @@ bot_chat_nade_watch( state, wp, weap, d, e, f, g )
|
|||||||
switch ( state )
|
switch ( state )
|
||||||
{
|
{
|
||||||
case "go":
|
case "go":
|
||||||
switch ( randomInt( 1 ) )
|
switch ( randomint( 1 ) )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
self BotDoChat( 10, "going to throw a " + getBaseWeaponName( weap ) );
|
self BotDoChat( 10, "going to throw a " + getbaseweaponname( weap ) );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "start":
|
case "start":
|
||||||
switch ( randomInt( 1 ) )
|
switch ( randomint( 1 ) )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
self BotDoChat( 10, "threw a " + getBaseWeaponName( weap ) );
|
self BotDoChat( 10, "threw a " + getbaseweaponname( weap ) );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2549,7 +2549,7 @@ bot_chat_turret_attack_watch( state, turret, c, d, e, f, g )
|
|||||||
switch ( state )
|
switch ( state )
|
||||||
{
|
{
|
||||||
case "go":
|
case "go":
|
||||||
switch ( randomInt( 1 ) )
|
switch ( randomint( 1 ) )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
self BotDoChat( 5, "going to this sentry..." );
|
self BotDoChat( 5, "going to this sentry..." );
|
||||||
@@ -2559,7 +2559,7 @@ bot_chat_turret_attack_watch( state, turret, c, d, e, f, g )
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case "start":
|
case "start":
|
||||||
switch ( randomInt( 1 ) )
|
switch ( randomint( 1 ) )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
self BotDoChat( 5, "attacking this sentry..." );
|
self BotDoChat( 5, "attacking this sentry..." );
|
||||||
@@ -2583,7 +2583,7 @@ bot_chat_attack_equ_watch( state, equ, c, d, e, f, g )
|
|||||||
switch ( state )
|
switch ( state )
|
||||||
{
|
{
|
||||||
case "go_ti":
|
case "go_ti":
|
||||||
switch ( randomInt( 1 ) )
|
switch ( randomint( 1 ) )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
self BotDoChat( 10, "going to this ti..." );
|
self BotDoChat( 10, "going to this ti..." );
|
||||||
@@ -2593,7 +2593,7 @@ bot_chat_attack_equ_watch( state, equ, c, d, e, f, g )
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case "camp_ti":
|
case "camp_ti":
|
||||||
switch ( randomInt( 1 ) )
|
switch ( randomint( 1 ) )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
self BotDoChat( 10, "lol im camping this ti!" );
|
self BotDoChat( 10, "lol im camping this ti!" );
|
||||||
@@ -2603,7 +2603,7 @@ bot_chat_attack_equ_watch( state, equ, c, d, e, f, g )
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case "trigger_ti":
|
case "trigger_ti":
|
||||||
switch ( randomInt( 1 ) )
|
switch ( randomint( 1 ) )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
self BotDoChat( 10, "lol i destoryed this ti!" );
|
self BotDoChat( 10, "lol i destoryed this ti!" );
|
||||||
|
|||||||
+313
-313
File diff suppressed because it is too large
Load Diff
+854
-853
File diff suppressed because it is too large
Load Diff
+350
-348
File diff suppressed because it is too large
Load Diff
+184
-184
File diff suppressed because it is too large
Load Diff
+114
-114
@@ -12,67 +12,67 @@
|
|||||||
|
|
||||||
init()
|
init()
|
||||||
{
|
{
|
||||||
if ( getDvar( "bots_main_debug" ) == "" )
|
if ( getdvar( "bots_main_debug" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_main_debug", 0 );
|
setdvar( "bots_main_debug", 0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( !getDVarint( "bots_main_debug" ) )
|
if ( !getdvarint( "bots_main_debug" ) )
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* if(!getDVarint("developer"))
|
/* if(!getdvarint("developer"))
|
||||||
{
|
{
|
||||||
setdvar("developer_script", 1);
|
setdvar("developer_script", 1);
|
||||||
setdvar("developer", 1);
|
setdvar("developer", 1);
|
||||||
|
|
||||||
setdvar("sv_mapRotation", "map "+getDvar("mapname"));
|
setdvar("sv_mapRotation", "map "+getdvar("mapname"));
|
||||||
exitLevel(false);
|
exitlevel(false);
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
setDvar( "bots_main", 0 );
|
setdvar( "bots_main", 0 );
|
||||||
setdvar( "bots_main_menu", 0 );
|
setdvar( "bots_main_menu", 0 );
|
||||||
setdvar( "bots_manage_fill_mode", 0 );
|
setdvar( "bots_manage_fill_mode", 0 );
|
||||||
setdvar( "bots_manage_fill", 0 );
|
setdvar( "bots_manage_fill", 0 );
|
||||||
setdvar( "bots_manage_add", 0 );
|
setdvar( "bots_manage_add", 0 );
|
||||||
setdvar( "bots_manage_fill_kick", 1 );
|
setdvar( "bots_manage_fill_kick", 1 );
|
||||||
setDvar( "bots_manage_fill_spec", 1 );
|
setdvar( "bots_manage_fill_spec", 1 );
|
||||||
|
|
||||||
if ( getDvar( "bots_main_debug_distance" ) == "" )
|
if ( getdvar( "bots_main_debug_distance" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_main_debug_distance", 512.0 );
|
setdvar( "bots_main_debug_distance", 512.0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_main_debug_cone" ) == "" )
|
if ( getdvar( "bots_main_debug_cone" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_main_debug_cone", 0.65 );
|
setdvar( "bots_main_debug_cone", 0.65 );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_main_debug_minDist" ) == "" )
|
if ( getdvar( "bots_main_debug_minDist" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_main_debug_minDist", 32.0 );
|
setdvar( "bots_main_debug_minDist", 32.0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_main_debug_drawThrough" ) == "" )
|
if ( getdvar( "bots_main_debug_drawThrough" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_main_debug_drawThrough", false );
|
setdvar( "bots_main_debug_drawThrough", false );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_main_debug_updateRate" ) == "" )
|
if ( getdvar( "bots_main_debug_updateRate" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_main_debug_updateRate", 500 );
|
setdvar( "bots_main_debug_updateRate", 500 );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( getDvar( "bots_main_debug_dashAmount" ) == "" )
|
if ( getdvar( "bots_main_debug_dashAmount" ) == "" )
|
||||||
{
|
{
|
||||||
setDvar( "bots_main_debug_dashAmount", 35.0 );
|
setdvar( "bots_main_debug_dashAmount", 35.0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
setDvar( "player_sustainAmmo", 1 );
|
setdvar( "player_sustainAmmo", 1 );
|
||||||
|
|
||||||
|
|
||||||
if ( !isDefined( level.waypoints ) )
|
if ( !isdefined( level.waypoints ) )
|
||||||
{
|
{
|
||||||
level.waypoints = [];
|
level.waypoints = [];
|
||||||
}
|
}
|
||||||
@@ -94,7 +94,7 @@ onPlayerSpawned()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
StartDev()
|
startDev()
|
||||||
{
|
{
|
||||||
self endon( "disconnect" );
|
self endon( "disconnect" );
|
||||||
self endon( "death" );
|
self endon( "death" );
|
||||||
@@ -103,18 +103,18 @@ StartDev()
|
|||||||
level.autolink = false;
|
level.autolink = false;
|
||||||
self.nearest = -1;
|
self.nearest = -1;
|
||||||
|
|
||||||
self takeAllWeapons();
|
self takeallweapons();
|
||||||
self giveWeapon( "iw5_m16_mp_gl" ); // to knife windows
|
self giveweapon( "iw5_m16_mp_gl" ); // to knife windows
|
||||||
self giveWeapon( "javelin_mp" ); // to mark jav spots
|
self giveweapon( "javelin_mp" ); // to mark jav spots
|
||||||
self SetOffhandPrimaryClass( "other" );
|
self setoffhandprimaryclass( "other" );
|
||||||
self giveWeapon( "semtex_mp" );
|
self giveweapon( "semtex_mp" );
|
||||||
self _clearperks();
|
self _clearperks();
|
||||||
self.specialty = [];
|
self.specialty = [];
|
||||||
// need to find out how to setperks in mw3
|
// need to find out how to setperks in mw3
|
||||||
/* self maps\mp\perks\_perks::givePerk("specialty_fastmantle");
|
/* self maps\mp\perks\_perks::giveperk("specialty_fastmantle");
|
||||||
self maps\mp\perks\_perks::givePerk("specialty_falldamage");
|
self maps\mp\perks\_perks::giveperk("specialty_falldamage");
|
||||||
self maps\mp\perks\_perks::givePerk("specialty_marathon");
|
self maps\mp\perks\_perks::giveperk("specialty_marathon");
|
||||||
self maps\mp\perks\_perks::givePerk("specialty_lightweight");*/
|
self maps\mp\perks\_perks::giveperk("specialty_lightweight");*/
|
||||||
self freezecontrols( false );
|
self freezecontrols( false );
|
||||||
|
|
||||||
self thread watchAddWaypointCommand();
|
self thread watchAddWaypointCommand();
|
||||||
@@ -123,7 +123,7 @@ StartDev()
|
|||||||
self thread watchLinkWaypointCommand();
|
self thread watchLinkWaypointCommand();
|
||||||
self thread watchLoadWaypointsCommand();
|
self thread watchLoadWaypointsCommand();
|
||||||
self thread watchSaveWaypointsCommand();
|
self thread watchSaveWaypointsCommand();
|
||||||
self thread watchUnlinkWaypointCommand();
|
self thread watchunlinkWaypointCommand();
|
||||||
self thread watchAutoLinkCommand();
|
self thread watchAutoLinkCommand();
|
||||||
self thread updateWaypointsStats();
|
self thread updateWaypointsStats();
|
||||||
self thread watchAstarCommand();
|
self thread watchAstarCommand();
|
||||||
@@ -152,7 +152,7 @@ watchAstarCommand()
|
|||||||
self endon( "disconnect" );
|
self endon( "disconnect" );
|
||||||
self endon( "death" );
|
self endon( "death" );
|
||||||
|
|
||||||
self notifyOnPlayerCommand( "astar", "+gostand" );
|
self notifyonplayercommand( "astar", "+gostand" );
|
||||||
|
|
||||||
for ( ;; )
|
for ( ;; )
|
||||||
{
|
{
|
||||||
@@ -165,7 +165,7 @@ watchAstarCommand()
|
|||||||
|
|
||||||
self iprintln( "Start AStar" );
|
self iprintln( "Start AStar" );
|
||||||
self.astar = undefined;
|
self.astar = undefined;
|
||||||
astar = spawnStruct();
|
astar = spawnstruct();
|
||||||
astar.start = self.origin;
|
astar.start = self.origin;
|
||||||
|
|
||||||
self waittill( "astar" );
|
self waittill( "astar" );
|
||||||
@@ -181,18 +181,18 @@ watchAstarCommand()
|
|||||||
|
|
||||||
drawWaypoint( i )
|
drawWaypoint( i )
|
||||||
{
|
{
|
||||||
if ( !isDefined( level.drawn_wps ) )
|
if ( !isdefined( level.drawn_wps ) )
|
||||||
{
|
{
|
||||||
level.drawn_wps = [];
|
level.drawn_wps = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
newdeathicon = newHudElem();
|
newdeathicon = newhudelem();
|
||||||
newdeathicon.x = level.waypoints[ i ].origin[ 0 ];
|
newdeathicon.x = level.waypoints[ i ].origin[ 0 ];
|
||||||
newdeathicon.y = level.waypoints[ i ].origin[ 1 ];
|
newdeathicon.y = level.waypoints[ i ].origin[ 1 ];
|
||||||
newdeathicon.z = level.waypoints[ i ].origin[ 2 ] + 50;
|
newdeathicon.z = level.waypoints[ i ].origin[ 2 ] + 50;
|
||||||
newdeathicon.alpha = .61;
|
newdeathicon.alpha = .61;
|
||||||
newdeathicon.archived = true;
|
newdeathicon.archived = true;
|
||||||
newdeathicon setShader( "headicon_dead", 5, 5 );
|
newdeathicon setshader( "headicon_dead", 5, 5 );
|
||||||
newdeathicon setwaypoint( true, false );
|
newdeathicon setwaypoint( true, false );
|
||||||
|
|
||||||
level.drawn_wps[ level.drawn_wps.size ] = newdeathicon;
|
level.drawn_wps[ level.drawn_wps.size ] = newdeathicon;
|
||||||
@@ -200,18 +200,18 @@ drawWaypoint( i )
|
|||||||
|
|
||||||
drawPath( where )
|
drawPath( where )
|
||||||
{
|
{
|
||||||
if ( !isDefined( level.drawn_wps ) )
|
if ( !isdefined( level.drawn_wps ) )
|
||||||
{
|
{
|
||||||
level.drawn_wps = [];
|
level.drawn_wps = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
newdeathicon = newHudElem();
|
newdeathicon = newhudelem();
|
||||||
newdeathicon.x = where[ 0 ];
|
newdeathicon.x = where[ 0 ];
|
||||||
newdeathicon.y = where[ 1 ];
|
newdeathicon.y = where[ 1 ];
|
||||||
newdeathicon.z = where[ 2 ] + 20;
|
newdeathicon.z = where[ 2 ] + 20;
|
||||||
newdeathicon.alpha = .61;
|
newdeathicon.alpha = .61;
|
||||||
newdeathicon.archived = true;
|
newdeathicon.archived = true;
|
||||||
newdeathicon setShader( "headicon_dead", 5, 5 );
|
newdeathicon setshader( "headicon_dead", 5, 5 );
|
||||||
newdeathicon setwaypoint( true, false );
|
newdeathicon setwaypoint( true, false );
|
||||||
|
|
||||||
level.drawn_wps[ level.drawn_wps.size ] = newdeathicon;
|
level.drawn_wps[ level.drawn_wps.size ] = newdeathicon;
|
||||||
@@ -219,7 +219,7 @@ drawPath( where )
|
|||||||
|
|
||||||
clearWaypoints()
|
clearWaypoints()
|
||||||
{
|
{
|
||||||
if ( !isDefined( level.drawn_wps ) )
|
if ( !isdefined( level.drawn_wps ) )
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -234,7 +234,7 @@ clearWaypoints()
|
|||||||
|
|
||||||
clearWpLinks()
|
clearWpLinks()
|
||||||
{
|
{
|
||||||
if ( !isDefined( level.drawn_links ) )
|
if ( !isdefined( level.drawn_links ) )
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -254,22 +254,22 @@ clearWpLinks()
|
|||||||
|
|
||||||
showWpLink( i, h )
|
showWpLink( i, h )
|
||||||
{
|
{
|
||||||
if ( !isDefined( level.drawn_links ) )
|
if ( !isdefined( level.drawn_links ) )
|
||||||
{
|
{
|
||||||
level.drawn_links = [];
|
level.drawn_links = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( !isDefined( level.waypoints[ i ].drawn_links ) )
|
if ( !isdefined( level.waypoints[ i ].drawn_links ) )
|
||||||
{
|
{
|
||||||
level.waypoints[ i ].drawn_links = [];
|
level.waypoints[ i ].drawn_links = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( !isDefined( level.waypoints[ h ].drawn_links ) )
|
if ( !isdefined( level.waypoints[ h ].drawn_links ) )
|
||||||
{
|
{
|
||||||
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 ] ) )
|
if ( isdefined( level.waypoints[ h ].drawn_links[ "" + i ] ) || isdefined( level.waypoints[ i ].drawn_links[ "" + h ] ) )
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -280,22 +280,22 @@ showWpLink( i, h )
|
|||||||
start = level.waypoints[ i ].origin + ( 0, 0, 45 );
|
start = level.waypoints[ i ].origin + ( 0, 0, 45 );
|
||||||
end = level.waypoints[ h ].origin + ( 0, 0, 45 );
|
end = level.waypoints[ h ].origin + ( 0, 0, 45 );
|
||||||
diff = end - start;
|
diff = end - start;
|
||||||
dir = VectorToAngles( diff );
|
dir = vectortoangles( diff );
|
||||||
|
|
||||||
dist = distance( start, end );
|
dist = distance( start, end );
|
||||||
dash_count = int( dist / getDvarFloat( "bots_main_debug_dashAmount" ) );
|
dash_count = int( dist / getdvarfloat( "bots_main_debug_dashAmount" ) );
|
||||||
|
|
||||||
for ( j = 0; j < dash_count; j++ )
|
for ( j = 0; j < dash_count; j++ )
|
||||||
{
|
{
|
||||||
dash = spawn( "script_model", start + ( ( diff * j ) / dash_count ) );
|
dash = spawn( "script_model", start + ( ( diff * j ) / dash_count ) );
|
||||||
dash setModel( "weapon_parabolic_knife" );
|
dash setmodel( "weapon_parabolic_knife" );
|
||||||
dash.angles = dir;
|
dash.angles = dir;
|
||||||
|
|
||||||
level.drawn_links[ level.drawn_links.size ] = dash;
|
level.drawn_links[ level.drawn_links.size ] = dash;
|
||||||
}
|
}
|
||||||
|
|
||||||
dash = spawn( "script_model", end );
|
dash = spawn( "script_model", end );
|
||||||
dash setModel( "weapon_parabolic_knife" );
|
dash setmodel( "weapon_parabolic_knife" );
|
||||||
dash.angles = dir;
|
dash.angles = dir;
|
||||||
|
|
||||||
level.drawn_links[ level.drawn_links.size ] = dash;
|
level.drawn_links[ level.drawn_links.size ] = dash;
|
||||||
@@ -328,12 +328,12 @@ updateWaypointsStats()
|
|||||||
wait 0.05;
|
wait 0.05;
|
||||||
intTimer += 50;
|
intTimer += 50;
|
||||||
|
|
||||||
totalWpsHud setValue( level.waypointcount );
|
totalWpsHud setvalue( level.waypointcount );
|
||||||
|
|
||||||
closest = -1;
|
closest = -1;
|
||||||
myEye = self getEye();
|
myEye = self geteye();
|
||||||
myAngles = self GetPlayerAngles();
|
myAngles = self getplayerangles();
|
||||||
timeToUpdate = ( ( intTimer % getDvarInt( "bots_main_debug_updateRate" ) ) == 0 );
|
timeToUpdate = ( ( intTimer % getdvarint( "bots_main_debug_updateRate" ) ) == 0 );
|
||||||
|
|
||||||
if ( timeToUpdate )
|
if ( timeToUpdate )
|
||||||
{
|
{
|
||||||
@@ -350,11 +350,11 @@ updateWaypointsStats()
|
|||||||
|
|
||||||
wpOrg = level.waypoints[ i ].origin + ( 0, 0, 25 );
|
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 ( distance( level.waypoints[ i ].origin, self.origin ) < getdvarfloat( "bots_main_debug_distance" ) && ( bullettracepassed( myEye, wpOrg, false, self ) || getdvarint( "bots_main_debug_drawThrough" ) ) )
|
||||||
{
|
{
|
||||||
if ( timeToUpdate )
|
if ( timeToUpdate )
|
||||||
{
|
{
|
||||||
if ( getConeDot( wpOrg, myEye, myAngles ) > getDvarFloat( "bots_main_debug_cone" ) )
|
if ( getConeDot( wpOrg, myEye, myAngles ) > getdvarfloat( "bots_main_debug_cone" ) )
|
||||||
{
|
{
|
||||||
drawWaypoint( i );
|
drawWaypoint( i );
|
||||||
|
|
||||||
@@ -369,26 +369,26 @@ updateWaypointsStats()
|
|||||||
/* for(h = level.waypoints[ i ].children.size - 1; h >= 0; h--)
|
/* 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));
|
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"))
|
if(getConeDot(wpOrg, myEye, myAngles) > getdvarfloat("bots_main_debug_cone"))
|
||||||
print3d(wpOrg, i, (1,0,0), 2);
|
print3d(wpOrg, i, (1,0,0), 2);
|
||||||
|
|
||||||
if (isDefined(level.waypoints[ i ].angles) && level.waypoints[ i ].type != "stand")
|
if (isdefined(level.waypoints[ i ].angles) && level.waypoints[ i ].type != "stand")
|
||||||
line(wpOrg, wpOrg + AnglesToForward(level.waypoints[ i ].angles) * 64, (1,1,1));
|
line(wpOrg, wpOrg + anglestoforward(level.waypoints[ i ].angles) * 64, (1,1,1));
|
||||||
|
|
||||||
if (isDefined(level.waypoints[ i ].jav_point))
|
if (isdefined(level.waypoints[ i ].jav_point))
|
||||||
line(wpOrg, level.waypoints[ i ].jav_point, (0,0,0));*/
|
line(wpOrg, level.waypoints[ i ].jav_point, (0,0,0));*/
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
self.nearest = closest;
|
self.nearest = closest;
|
||||||
|
|
||||||
nearestWP setValue( self.nearest );
|
nearestWP setvalue( self.nearest );
|
||||||
|
|
||||||
children setValue( buildChildCountString( self.nearest ) );
|
children setvalue( buildChildCountString( self.nearest ) );
|
||||||
|
|
||||||
type setText( buildTypeString( self.nearest ) );
|
type settext( buildTypeString( self.nearest ) );
|
||||||
|
|
||||||
wpToLink setValue( level.wptolink );
|
wpToLink setvalue( level.wptolink );
|
||||||
|
|
||||||
infotext.x = infotext.x - 2;
|
infotext.x = infotext.x - 2;
|
||||||
|
|
||||||
@@ -397,13 +397,13 @@ updateWaypointsStats()
|
|||||||
infotext.x = 800;
|
infotext.x = 800;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( time > 2 && self UseButtonPressed() )
|
if ( time > 2 && self usebuttonpressed() )
|
||||||
{
|
{
|
||||||
time = 0;
|
time = 0;
|
||||||
self iPrintLnBold( self.nearest + " children: " + buildChildString( self.nearest ) );
|
self iprintlnbold( self.nearest + " children: " + buildChildString( self.nearest ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( isDefined( self.astar ) )
|
if ( isdefined( self.astar ) )
|
||||||
{
|
{
|
||||||
// print3d(self.astar.start + (0, 0, 35), "start", (0,0,1), 2);
|
// print3d(self.astar.start + (0, 0, 35), "start", (0,0,1), 2);
|
||||||
// print3d(self.astar.goal + (0, 0, 35), "goal", (0,0,1), 2);
|
// print3d(self.astar.goal + (0, 0, 35), "goal", (0,0,1), 2);
|
||||||
@@ -438,7 +438,7 @@ watchLoadWaypointsCommand()
|
|||||||
self endon( "disconnect" );
|
self endon( "disconnect" );
|
||||||
self endon( "death" );
|
self endon( "death" );
|
||||||
|
|
||||||
self notifyOnPlayerCommand( "[{+actionslot 5}]", "+actionslot 5" );
|
self notifyonplayercommand( "[{+actionslot 5}]", "+actionslot 5" );
|
||||||
|
|
||||||
for ( ;; )
|
for ( ;; )
|
||||||
{
|
{
|
||||||
@@ -452,7 +452,7 @@ watchAddWaypointCommand()
|
|||||||
self endon( "disconnect" );
|
self endon( "disconnect" );
|
||||||
self endon( "death" );
|
self endon( "death" );
|
||||||
|
|
||||||
self notifyOnPlayerCommand( "[{+smoke}]", "+smoke" );
|
self notifyonplayercommand( "[{+smoke}]", "+smoke" );
|
||||||
|
|
||||||
for ( ;; )
|
for ( ;; )
|
||||||
{
|
{
|
||||||
@@ -466,7 +466,7 @@ watchAutoLinkCommand()
|
|||||||
self endon( "disconnect" );
|
self endon( "disconnect" );
|
||||||
self endon( "death" );
|
self endon( "death" );
|
||||||
|
|
||||||
self notifyOnPlayerCommand( "[{+frag}]", "+frag" );
|
self notifyonplayercommand( "[{+frag}]", "+frag" );
|
||||||
|
|
||||||
for ( ;; )
|
for ( ;; )
|
||||||
{
|
{
|
||||||
@@ -474,13 +474,13 @@ watchAutoLinkCommand()
|
|||||||
|
|
||||||
if ( level.autolink )
|
if ( level.autolink )
|
||||||
{
|
{
|
||||||
self iPrintlnBold( "Auto link disabled" );
|
self iprintlnbold( "Auto link disabled" );
|
||||||
level.autolink = false;
|
level.autolink = false;
|
||||||
level.wptolink = -1;
|
level.wptolink = -1;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
self iPrintlnBold( "Auto link enabled" );
|
self iprintlnbold( "Auto link enabled" );
|
||||||
level.autolink = true;
|
level.autolink = true;
|
||||||
level.wptolink = self.nearest;
|
level.wptolink = self.nearest;
|
||||||
}
|
}
|
||||||
@@ -492,7 +492,7 @@ watchLinkWaypointCommand()
|
|||||||
self endon( "disconnect" );
|
self endon( "disconnect" );
|
||||||
self endon( "death" );
|
self endon( "death" );
|
||||||
|
|
||||||
self notifyOnPlayerCommand( "[{+melee_zoom}]", "+melee_zoom" );
|
self notifyonplayercommand( "[{+melee_zoom}]", "+melee_zoom" );
|
||||||
|
|
||||||
for ( ;; )
|
for ( ;; )
|
||||||
{
|
{
|
||||||
@@ -501,12 +501,12 @@ watchLinkWaypointCommand()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
watchUnlinkWaypointCommand()
|
watchunlinkWaypointCommand()
|
||||||
{
|
{
|
||||||
self endon( "disconnect" );
|
self endon( "disconnect" );
|
||||||
self endon( "death" );
|
self endon( "death" );
|
||||||
|
|
||||||
self notifyOnPlayerCommand( "[{+reload}]", "+reload" );
|
self notifyonplayercommand( "[{+reload}]", "+reload" );
|
||||||
|
|
||||||
for ( ;; )
|
for ( ;; )
|
||||||
{
|
{
|
||||||
@@ -520,7 +520,7 @@ watchDeleteWaypointCommand()
|
|||||||
self endon( "disconnect" );
|
self endon( "disconnect" );
|
||||||
self endon( "death" );
|
self endon( "death" );
|
||||||
|
|
||||||
self notifyOnPlayerCommand( "[{+actionslot 3}]", "+actionslot 3" );
|
self notifyonplayercommand( "[{+actionslot 3}]", "+actionslot 3" );
|
||||||
|
|
||||||
for ( ;; )
|
for ( ;; )
|
||||||
{
|
{
|
||||||
@@ -534,7 +534,7 @@ watchDeleteAllWaypointsCommand()
|
|||||||
self endon( "disconnect" );
|
self endon( "disconnect" );
|
||||||
self endon( "death" );
|
self endon( "death" );
|
||||||
|
|
||||||
self notifyOnPlayerCommand( "[{+actionslot 4}]", "+actionslot 4" );
|
self notifyonplayercommand( "[{+actionslot 4}]", "+actionslot 4" );
|
||||||
|
|
||||||
for ( ;; )
|
for ( ;; )
|
||||||
{
|
{
|
||||||
@@ -548,7 +548,7 @@ watchSaveWaypointsCommand()
|
|||||||
self endon( "death" );
|
self endon( "death" );
|
||||||
self endon( "disconnect" );
|
self endon( "disconnect" );
|
||||||
|
|
||||||
self notifyOnPlayerCommand( "[{+actionslot 1}]", "+actionslot 1" );
|
self notifyonplayercommand( "[{+actionslot 1}]", "+actionslot 1" );
|
||||||
|
|
||||||
for ( ;; )
|
for ( ;; )
|
||||||
{
|
{
|
||||||
@@ -574,12 +574,12 @@ watchSaveWaypointsCommand()
|
|||||||
logprint( "*/waypoints[ " + i + " ].children[ " + c + " ] = " + level.waypoints[ i ].children[ c ] + ";\n/*" );
|
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" ) )
|
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/*" );
|
logprint( "*/waypoints[ " + i + " ].angles = " + level.waypoints[ i ].angles + ";\n/*" );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( isDefined( level.waypoints[ i ].jav_point ) && level.waypoints[ i ].type == "javelin" )
|
if ( isdefined( level.waypoints[ i ].jav_point ) && level.waypoints[ i ].type == "javelin" )
|
||||||
{
|
{
|
||||||
logprint( "*/waypoints[ " + i + " ].jav_point = " + level.waypoints[ i ].jav_point + ";\n/*" );
|
logprint( "*/waypoints[ " + i + " ].jav_point = " + level.waypoints[ i ].jav_point + ";\n/*" );
|
||||||
}
|
}
|
||||||
@@ -589,8 +589,8 @@ watchSaveWaypointsCommand()
|
|||||||
|
|
||||||
filename = "waypoints/" + getdvar( "mapname" ) + "_wp.csv";
|
filename = "waypoints/" + getdvar( "mapname" ) + "_wp.csv";
|
||||||
|
|
||||||
PrintLn( "********* Start Bot Warfare WPDump *********" );
|
println( "********* Start Bot Warfare WPDump *********" );
|
||||||
PrintLn( level.waypointcount );
|
println( level.waypointcount );
|
||||||
|
|
||||||
BotBuiltinFileWrite( filename, level.waypointcount + "\n", "write" );
|
BotBuiltinFileWrite( filename, level.waypointcount + "\n", "write" );
|
||||||
|
|
||||||
@@ -613,7 +613,7 @@ watchSaveWaypointsCommand()
|
|||||||
|
|
||||||
str += "," + wp.type + ",";
|
str += "," + wp.type + ",";
|
||||||
|
|
||||||
if ( isDefined( wp.angles ) )
|
if ( isdefined( wp.angles ) )
|
||||||
{
|
{
|
||||||
str += wp.angles[ 0 ] + " " + wp.angles[ 1 ] + " " + wp.angles[ 2 ] + ",";
|
str += wp.angles[ 0 ] + " " + wp.angles[ 1 ] + " " + wp.angles[ 2 ] + ",";
|
||||||
}
|
}
|
||||||
@@ -622,7 +622,7 @@ watchSaveWaypointsCommand()
|
|||||||
str += ",";
|
str += ",";
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( isDefined( wp.jav_point ) )
|
if ( isdefined( wp.jav_point ) )
|
||||||
{
|
{
|
||||||
str += wp.jav_point[ 0 ] + " " + wp.jav_point[ 1 ] + " " + wp.jav_point[ 2 ] + ",";
|
str += wp.jav_point[ 0 ] + " " + wp.jav_point[ 1 ] + " " + wp.jav_point[ 2 ] + ",";
|
||||||
}
|
}
|
||||||
@@ -631,11 +631,11 @@ watchSaveWaypointsCommand()
|
|||||||
str += ",";
|
str += ",";
|
||||||
}
|
}
|
||||||
|
|
||||||
PrintLn( str );
|
println( str );
|
||||||
BotBuiltinFileWrite( filename, str + "\n", "append" );
|
BotBuiltinFileWrite( filename, str + "\n", "append" );
|
||||||
}
|
}
|
||||||
|
|
||||||
PrintLn( "\n\n\n\n\n\n" );
|
println( "\n\n\n\n\n\n" );
|
||||||
|
|
||||||
self iprintln( "Saved!!! to " + filename );
|
self iprintln( "Saved!!! to " + filename );
|
||||||
}
|
}
|
||||||
@@ -644,7 +644,7 @@ watchSaveWaypointsCommand()
|
|||||||
LoadWaypoints()
|
LoadWaypoints()
|
||||||
{
|
{
|
||||||
// self DeleteAllWaypoints();
|
// self DeleteAllWaypoints();
|
||||||
self iPrintlnBold( "Loading WPS..." );
|
self iprintlnbold( "Loading WPS..." );
|
||||||
load_waypoints();
|
load_waypoints();
|
||||||
|
|
||||||
wait 1;
|
wait 1;
|
||||||
@@ -666,7 +666,7 @@ checkForWarnings()
|
|||||||
|
|
||||||
for ( i = 0; i < level.waypointcount; i++ )
|
for ( i = 0; i < level.waypointcount; i++ )
|
||||||
{
|
{
|
||||||
if ( !isDefined( level.waypoints[ i ] ) )
|
if ( !isdefined( level.waypoints[ i ] ) )
|
||||||
{
|
{
|
||||||
self iprintln( "WARNING: waypoint " + i + " is undefined" );
|
self iprintln( "WARNING: waypoint " + i + " is undefined" );
|
||||||
continue;
|
continue;
|
||||||
@@ -678,7 +678,7 @@ checkForWarnings()
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if ( !isDefined( level.waypoints[ i ].children ) || !isDefined( level.waypoints[ i ].children.size ) )
|
if ( !isdefined( level.waypoints[ i ].children ) || !isdefined( level.waypoints[ i ].children.size ) )
|
||||||
{
|
{
|
||||||
self iprintln( "WARNING: waypoint " + i + " children is not defined" );
|
self iprintln( "WARNING: waypoint " + i + " children is not defined" );
|
||||||
}
|
}
|
||||||
@@ -688,7 +688,7 @@ checkForWarnings()
|
|||||||
{
|
{
|
||||||
child = level.waypoints[ i ].children[ h ];
|
child = level.waypoints[ i ].children[ h ];
|
||||||
|
|
||||||
if ( !isDefined( level.waypoints[ child ] ) )
|
if ( !isdefined( level.waypoints[ child ] ) )
|
||||||
{
|
{
|
||||||
self iprintln( "WARNING: waypoint " + i + " child " + child + " is undefined" );
|
self iprintln( "WARNING: waypoint " + i + " child " + child + " is undefined" );
|
||||||
}
|
}
|
||||||
@@ -700,18 +700,18 @@ checkForWarnings()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( !isDefined( level.waypoints[ i ].type ) )
|
if ( !isdefined( level.waypoints[ i ].type ) )
|
||||||
{
|
{
|
||||||
self iprintln( "WARNING: waypoint " + i + " type is undefined" );
|
self iprintln( "WARNING: waypoint " + i + " type is undefined" );
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( level.waypoints[ i ].type == "javelin" && !isDefined( level.waypoints[ i ].jav_point ) )
|
if ( level.waypoints[ i ].type == "javelin" && !isdefined( level.waypoints[ i ].jav_point ) )
|
||||||
{
|
{
|
||||||
self iprintln( "WARNING: waypoint " + i + " jav_point is undefined" );
|
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" ) )
|
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" );
|
self iprintln( "WARNING: waypoint " + i + " angles is undefined" );
|
||||||
}
|
}
|
||||||
@@ -719,7 +719,7 @@ checkForWarnings()
|
|||||||
|
|
||||||
// check reachability, assume bidirectional graph
|
// check reachability, assume bidirectional graph
|
||||||
|
|
||||||
wpIdx = randomInt( level.waypointcount );
|
wpIdx = randomint( level.waypointcount );
|
||||||
|
|
||||||
for ( i = 0; i < level.waypointcount; i++ )
|
for ( i = 0; i < level.waypointcount; i++ )
|
||||||
{
|
{
|
||||||
@@ -741,9 +741,9 @@ checkForWarnings()
|
|||||||
|
|
||||||
UnLinkWaypoint( nwp )
|
UnLinkWaypoint( nwp )
|
||||||
{
|
{
|
||||||
if ( nwp == -1 || distance( self.origin, level.waypoints[ nwp ].origin ) > getDvarFloat( "bots_main_debug_minDist" ) )
|
if ( nwp == -1 || distance( self.origin, level.waypoints[ nwp ].origin ) > getdvarfloat( "bots_main_debug_minDist" ) )
|
||||||
{
|
{
|
||||||
self iprintln( "Waypoint Unlink Cancelled " + level.wptolink );
|
self iprintln( "Waypoint unlink Cancelled " + level.wptolink );
|
||||||
level.wptolink = -1;
|
level.wptolink = -1;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -751,7 +751,7 @@ UnLinkWaypoint( nwp )
|
|||||||
if ( level.wptolink == -1 || nwp == level.wptolink )
|
if ( level.wptolink == -1 || nwp == level.wptolink )
|
||||||
{
|
{
|
||||||
level.wptolink = nwp;
|
level.wptolink = nwp;
|
||||||
self iprintln( "Waypoint Unlink Started " + nwp );
|
self iprintln( "Waypoint unlink Started " + nwp );
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -764,7 +764,7 @@ UnLinkWaypoint( nwp )
|
|||||||
|
|
||||||
LinkWaypoint( nwp )
|
LinkWaypoint( nwp )
|
||||||
{
|
{
|
||||||
if ( nwp == -1 || distance( self.origin, level.waypoints[ nwp ].origin ) > getDvarFloat( "bots_main_debug_minDist" ) )
|
if ( nwp == -1 || distance( self.origin, level.waypoints[ nwp ].origin ) > getdvarfloat( "bots_main_debug_minDist" ) )
|
||||||
{
|
{
|
||||||
self iprintln( "Waypoint Link Cancelled " + level.wptolink );
|
self iprintln( "Waypoint Link Cancelled " + level.wptolink );
|
||||||
level.wptolink = -1;
|
level.wptolink = -1;
|
||||||
@@ -821,7 +821,7 @@ LinkWaypoint( nwp )
|
|||||||
|
|
||||||
DeleteWaypoint( nwp )
|
DeleteWaypoint( nwp )
|
||||||
{
|
{
|
||||||
if ( nwp == -1 || distance( self.origin, level.waypoints[ nwp ].origin ) > getDvarFloat( "bots_main_debug_minDist" ) )
|
if ( nwp == -1 || distance( self.origin, level.waypoints[ nwp ].origin ) > getdvarfloat( "bots_main_debug_minDist" ) )
|
||||||
{
|
{
|
||||||
self iprintln( "No close enough waypoint to delete." );
|
self iprintln( "No close enough waypoint to delete." );
|
||||||
return;
|
return;
|
||||||
@@ -871,35 +871,35 @@ AddWaypoint()
|
|||||||
{
|
{
|
||||||
level.waypoints[ level.waypointcount ] = spawnstruct();
|
level.waypoints[ level.waypointcount ] = spawnstruct();
|
||||||
|
|
||||||
pos = self getOrigin();
|
pos = self getorigin();
|
||||||
level.waypoints[ level.waypointcount ].origin = pos;
|
level.waypoints[ level.waypointcount ].origin = pos;
|
||||||
|
|
||||||
if ( isDefined( self.javelintargetpoint ) )
|
if ( isdefined( self.javelintargetpoint ) )
|
||||||
{
|
{
|
||||||
level.waypoints[ level.waypointcount ].type = "javelin";
|
level.waypoints[ level.waypointcount ].type = "javelin";
|
||||||
}
|
}
|
||||||
else if ( self AdsButtonPressed() )
|
else if ( self adsbuttonpressed() )
|
||||||
{
|
{
|
||||||
level.waypoints[ level.waypointcount ].type = "climb";
|
level.waypoints[ level.waypointcount ].type = "climb";
|
||||||
}
|
}
|
||||||
else if ( self AttackButtonPressed() && self UseButtonPressed() )
|
else if ( self attackbuttonpressed() && self usebuttonpressed() )
|
||||||
{
|
{
|
||||||
level.waypoints[ level.waypointcount ].type = "tube";
|
level.waypoints[ level.waypointcount ].type = "tube";
|
||||||
}
|
}
|
||||||
else if ( self AttackButtonPressed() )
|
else if ( self attackbuttonpressed() )
|
||||||
{
|
{
|
||||||
level.waypoints[ level.waypointcount ].type = "grenade";
|
level.waypoints[ level.waypointcount ].type = "grenade";
|
||||||
}
|
}
|
||||||
else if ( self UseButtonPressed() )
|
else if ( self usebuttonpressed() )
|
||||||
{
|
{
|
||||||
level.waypoints[ level.waypointcount ].type = "claymore";
|
level.waypoints[ level.waypointcount ].type = "claymore";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
level.waypoints[ level.waypointcount ].type = self getStance();
|
level.waypoints[ level.waypointcount ].type = self getstance();
|
||||||
}
|
}
|
||||||
|
|
||||||
level.waypoints[ level.waypointcount ].angles = self getPlayerAngles();
|
level.waypoints[ level.waypointcount ].angles = self getplayerangles();
|
||||||
|
|
||||||
level.waypoints[ level.waypointcount ].children = [];
|
level.waypoints[ level.waypointcount ].children = [];
|
||||||
|
|
||||||
@@ -989,8 +989,8 @@ destroyOnDeath( hud )
|
|||||||
|
|
||||||
initHudElem( txt, xl, yl )
|
initHudElem( txt, xl, yl )
|
||||||
{
|
{
|
||||||
hud = NewClientHudElem( self );
|
hud = newclienthudelem( self );
|
||||||
hud setText( txt );
|
hud settext( txt );
|
||||||
hud.alignx = "left";
|
hud.alignx = "left";
|
||||||
hud.aligny = "top";
|
hud.aligny = "top";
|
||||||
hud.horzalign = "left";
|
hud.horzalign = "left";
|
||||||
@@ -1013,8 +1013,8 @@ initHudElem( txt, xl, yl )
|
|||||||
|
|
||||||
initHudElem2()
|
initHudElem2()
|
||||||
{
|
{
|
||||||
infotext = NewHudElem();
|
infotext = newhudelem();
|
||||||
infotext setText( "^1[{+smoke}]-AddWp ^2[{+melee_zoom}]-LinkWp ^3[{+reload}]-UnLinkWp ^4[{+actionslot 3}]-DeleteWp ^5[{+actionslot 4}]-DelAllWps ^6[{+actionslot 5}]-LoadWPS ^7[{+actionslot 1}]-SaveWp" );
|
infotext settext( "^1[{+smoke}]-AddWp ^2[{+melee_zoom}]-LinkWp ^3[{+reload}]-UnLinkWp ^4[{+actionslot 3}]-DeleteWp ^5[{+actionslot 4}]-DelAllWps ^6[{+actionslot 5}]-LoadWPS ^7[{+actionslot 1}]-SaveWp" );
|
||||||
infotext.alignx = "center";
|
infotext.alignx = "center";
|
||||||
infotext.aligny = "bottom";
|
infotext.aligny = "bottom";
|
||||||
infotext.horzalign = "center";
|
infotext.horzalign = "center";
|
||||||
@@ -1037,7 +1037,7 @@ initHudElem2()
|
|||||||
|
|
||||||
initHudElem3()
|
initHudElem3()
|
||||||
{
|
{
|
||||||
bar = level createServerBar( ( 0.5, 0.5, 0.5 ), 1000, 25 );
|
bar = level createserverbar( ( 0.5, 0.5, 0.5 ), 1000, 25 );
|
||||||
bar.alignx = "center";
|
bar.alignx = "center";
|
||||||
bar.aligny = "bottom";
|
bar.aligny = "bottom";
|
||||||
bar.horzalign = "center";
|
bar.horzalign = "center";
|
||||||
@@ -1052,7 +1052,7 @@ initHudElem3()
|
|||||||
|
|
||||||
initHudElem4()
|
initHudElem4()
|
||||||
{
|
{
|
||||||
OptionsBG = NewClientHudElem( self );
|
OptionsBG = newclienthudelem( self );
|
||||||
OptionsBG.x = 100;
|
OptionsBG.x = 100;
|
||||||
OptionsBG.y = 2;
|
OptionsBG.y = 2;
|
||||||
OptionsBG.alignx = "left";
|
OptionsBG.alignx = "left";
|
||||||
|
|||||||
@@ -34,20 +34,20 @@ do_fileexists( file )
|
|||||||
|
|
||||||
do_botaction( action )
|
do_botaction( action )
|
||||||
{
|
{
|
||||||
self BotAction( action );
|
self botaction( action );
|
||||||
}
|
}
|
||||||
|
|
||||||
do_botstop()
|
do_botstop()
|
||||||
{
|
{
|
||||||
self BotStop();
|
self botstop();
|
||||||
}
|
}
|
||||||
|
|
||||||
do_botmovement( forward, right )
|
do_botmovement( forward, right )
|
||||||
{
|
{
|
||||||
self BotMovement( forward, right );
|
self botmovement( forward, right );
|
||||||
}
|
}
|
||||||
|
|
||||||
do_botmeleeparams( entNum, dist )
|
do_botmeleeparams( entNum, dist )
|
||||||
{
|
{
|
||||||
// self BotMeleeParams( entNum, dist );
|
// self botmeleeparams( entNum, dist );
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user