private static void InitGameCore() { GameHostHolder.Init(); Task.Run(async() => { while (true) { GameHostHolder.Host.GameManager.Update(GameHostHolder.Host.Game); await Task.Delay(50); } }); }
public void Connect() { Console.WriteLine("Connected"); GameHostHolder.Connect(Context.ConnectionId); Task.Run(async() => { while (GameHostHolder.IsClientConnected(Context.ConnectionId)) { var serializedField = JsonConvert.SerializeObject(GameHostHolder.Host.Game.Field); Clients.Caller.SendField(serializedField); //Console.WriteLine($"{DateTime.Now} SendField {serializedField.Length * 2} bytes to {Context.ConnectionId}"); await Task.Delay(20); } }); }
public override Task OnDisconnected(bool stopCalled) { Console.WriteLine("Hard Disconnected"); GameHostHolder.Disconnect(Context.ConnectionId); return(base.OnDisconnected(stopCalled)); }
public void Disconnect() { Console.WriteLine("Soft Disconnected"); GameHostHolder.Disconnect(Context.ConnectionId); }