public int Add(string connectionId) { User newUser = new User(connectionId); Ship newShip = shipManager.Create(); newUser.Ship = newShip; Users.Add(connectionId, newUser); return newShip.Id; }
public object[] Serialize(World world, User user) { // Serialize the ships List<object> serializedShips = new List<object>(); foreach (Ship ship in world.ShipManager.Ships.Values) { object[] serializedShip = Serialize(ship); serializedShips.Add(serializedShip); } // Serialize the bullets List<object> serializedBullets = new List<object>(); lock (world.BulletManager.Bullets) { List<Bullet> bullets = new List<Bullet>(world.BulletManager.Bullets); foreach (Bullet bullet in bullets) { object[] seriealizedBullet = Serialize(bullet); serializedBullets.Add(seriealizedBullet); } } // Serialize the bots List<object> serializedBots = new List<object>(); foreach (Bot bot in world.BotManager.Bots) { object[] serializedBot = Serialize(bot); serializedBots.Add(serializedBot); } // Serialize the world object[] serializedWorld = new object[4]; serializedWorld[0] = serializedShips; serializedWorld[1] = serializedBullets; serializedWorld[2] = serializedBots; serializedWorld[3] = user.LatestCommandId; return serializedWorld; }