diff --git a/maps/mp/bots/_bot.gsc b/maps/mp/bots/_bot.gsc index aa5814a..a295000 100644 --- a/maps/mp/bots/_bot.gsc +++ b/maps/mp/bots/_bot.gsc @@ -207,8 +207,11 @@ init() if ( !isdefined( game[ "botWarfare" ] ) ) { game[ "botWarfare" ] = true; + game[ "botWarfareInitTime" ] = gettime(); } + level.bot_inittime = gettime(); + level.defuseobject = undefined; level.bots_smokelist = List(); level.tbl_perkdata[ 0 ][ "reference_full" ] = true; @@ -439,6 +442,21 @@ fixPerksAndScriptKick() self.pers[ "isBot" ] = true; } +/* + When a bot disconnects. +*/ +onDisconnectPlayer() +{ + self waittill( "disconnect" ); + waittillframeend; + + for ( i = 0; i < level.bots.size; i++ ) + { + bot = level.bots[ i ]; + bot BotNotifyBotEvent( "connection", "disconnected", self, self.name ); + } +} + /* When a bot disconnects. */ @@ -456,6 +474,14 @@ connected() { self endon( "disconnect" ); + for ( i = 0; i < level.bots.size; i++ ) + { + bot = level.bots[ i ]; + bot BotNotifyBotEvent( "connection", "connected", self, self.name ); + } + + self thread onDisconnectPlayer(); + if ( !isdefined( self.pers[ "bot_host" ] ) ) { self thread doHostCheck(); diff --git a/maps/mp/bots/_bot_chat.gsc b/maps/mp/bots/_bot_chat.gsc index 97eaf7e..07cbf1f 100644 --- a/maps/mp/bots/_bot_chat.gsc +++ b/maps/mp/bots/_bot_chat.gsc @@ -268,10 +268,31 @@ start_chat_watch() case "attack_dog": self thread bot_chat_attack_dog_watch( a, b, c, d, e, f, g ); break; + + case "connection": + self thread bot_chat_connection_player_watch( a, b, c, d, e, f, g ); + break; } } } +/* + When a player connected +*/ +bot_chat_connection_player_watch( conn, player, playername, d, e, f, g ) +{ + self endon( "disconnect" ); + + switch ( conn ) + { + case "connected": + break; + + case "disconnected": + break; + } +} + /* start_startgame_watch */