diff --git a/maps/mp/bots/_bot.gsc b/maps/mp/bots/_bot.gsc index be977d5..ff6c7a1 100644 --- a/maps/mp/bots/_bot.gsc +++ b/maps/mp/bots/_bot.gsc @@ -218,8 +218,11 @@ init() if ( !isdefined( game[ "botWarfare" ] ) ) { game[ "botWarfare" ] = true; + game[ "botWarfareInitTime" ] = gettime(); } + level.bot_inittime = gettime(); + level.defuseobject = undefined; level.bots_smokelist = List(); level.bots_fraglist = List(); @@ -847,6 +850,21 @@ onPlayerConnect() } } +/* + 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. */ @@ -864,6 +882,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 703505a..05ed4e4 100644 --- a/maps/mp/bots/_bot_chat.gsc +++ b/maps/mp/bots/_bot_chat.gsc @@ -328,10 +328,31 @@ start_chat_watch() case "box_cap": self thread bot_chat_box_cap_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 */