Exemplo n.º 1
0
 /// <summary>
 /// 连接到服务器
 /// </summary>
 /// <param name="hostname"></param>
 /// <param name="port"></param>
 /// <returns></returns>
 public void Connect(string hostname, ushort port)
 {
     _lastServerHostname = hostname;
     _lastServerPort     = port;
     if (State == MinecraftClientState.InGame)
     {
         _adapter.Disconnect();
     }
     _logger.Info($"Connecting {hostname}, {port}");
     _adapter = new MinecraftClientAdapter(hostname, port, this);
     _adapter.Disconnected += (sender, e) =>
     {
         State = MinecraftClientState.InTitle;
         Disconnected?.Invoke(sender, e);
         _world  = null;
         _player = null;
     };
     _adapter.Chat += (sender, e) =>
     {
         //TODO: Use ChatEventArgs and Minecraft.Text.RichText
         ChatReceived?.Invoke(sender, e.jsonData);
     };
     _player = new ClientPlayerEntityHandler(_adapter);
     _world  = new WorldHandler(_adapter, _player);
     _adapter.Connect();
     State = MinecraftClientState.InGame;
 }
Exemplo n.º 2
0
        public static int GetTime(this IWorldHandler worldhandler)
        {
            DateTime now   = DateTime.Now;
            int      year  = (now.Year - 2000) << 24;
            int      month = (now.Month - 1) << 20;
            int      day   = (now.Day - 1) << 14;
            int      dow   = (int)now.DayOfWeek << 11;
            int      hour  = now.Hour << 6;

            return(now.Minute + hour + dow + day + month + year);
        }