Количество игроков

Версия Minecraft
1.12.2
5
0
При подключении игрока к серверу нужно узнать количество игроков на нем (со стороны клиента)
Java:
public void clientConnected(FMLNetworkEvent.ClientConnectedToServerEvent event){
  if(event.isLocal()){
    //...
  }
  else{
    //Количество игроков
  }
}

Пробовал вот так:
Java:
int playersCount = 0;
NetHandlerPlayClient conn = Minecraft.getMinecraft().getConnection();
if(conn != null){
  Collection<NetworkPlayerInfo> playersList = conn.getPlayerInfoMap();
  for (NetworkPlayerInfo loadedPlayer : playersList) {
    playersCount++;
  }
}
Но Minecraft.getMinecraft().getConnection() всегда null
 
5
0
Решено.
Сделал таймер

Event
Java:
public void clientConnected(FMLNetworkEvent.ClientConnectedToServerEvent event){
  if(event.isLocal()){
    //...
  }
  else{
    CountTimer.setTimer(30);
  }
}


Timer
Java:
public class CountTimer {
  static Timer timer;
  static void setTimer(int time) {
    timer = new Timer();
    timer.schedule(new TimerTask(), time * 1000, time*1000);
  }
  static class TimerTask extends TimerTask {
    public void run() {
      NetHandlerPlayClient conn = Minecraft.getMinecraft().getConnection();
      if (conn == null) return;
      int pCount = 0;
      Collection<NetworkPlayerInfo> InfoMap = conn.getPlayerInfoMap();
      for (final NetworkPlayerInfo networkplayerinfo : InfoMap) {
        pCount++;
      }
      System.out.print(pCount);
    }
  }
}
 
Сверху