1+ use crate :: block:: metadata:: u3;
12use crate :: constants:: Particle ;
23use crate :: entity:: entity:: { Entity , EntityId , EntityImpl } ;
34use crate :: entity:: entity_metadata:: EntityMetadata ;
@@ -7,6 +8,7 @@ use crate::network::internal_packets::{MainThreadMessage, NetworkThreadMessage};
78use crate :: network:: packets:: packet:: ProcessPacket ;
89use crate :: network:: protocol:: play:: clientbound:: { DestroyEntites , JoinGame , Particles , PlayerData , PlayerListItem , PositionLook } ;
910use crate :: player:: player:: { ClientId , GameProfile , Player , PlayerExtension } ;
11+ use crate :: types:: status:: StatusUpdate ;
1012use crate :: world:: chunk:: chunk_grid:: ChunkGrid ;
1113use crate :: world:: chunk:: get_chunk_position;
1214use enumset:: EnumSet ;
@@ -287,7 +289,8 @@ impl<E : WorldExtension> World<E> {
287289 match event {
288290 MainThreadMessage :: NewPlayer { client_id, profile } => {
289291 println ! ( "new player" ) ;
290- E :: on_player_join ( self , profile, client_id)
292+ E :: on_player_join ( self , profile, client_id) ;
293+ let _ = self . network_tx . send ( NetworkThreadMessage :: UpdateStatus ( StatusUpdate :: Players ( self . players . len ( ) as u32 ) ) ) ;
291294 }
292295 MainThreadMessage :: PacketReceived { client_id, packet } => {
293296 if let Some ( index) = self . player_map . get ( & client_id) {
@@ -297,6 +300,7 @@ impl<E : WorldExtension> World<E> {
297300 }
298301 MainThreadMessage :: ClientDisconnected { client_id } => {
299302 self . remove_player ( client_id) ;
303+ let _ = self . network_tx . send ( NetworkThreadMessage :: UpdateStatus ( StatusUpdate :: Players ( self . players . len ( ) as u32 ) ) ) ;
300304 }
301305 }
302306 }
0 commit comments