public Task StartGame(HostedGameSASRequest request)
 {
     Log.InfoFormat("Start Game Request {0}",request.Id);
     var ret = new Task(() => SasManager.GetContext().StartGame(request));
     ret.Start();
     return ret;
 }
Example #2
0
        public void StartGame(HostedGameSASRequest request)
        {
            var hostName = Tools.HostName;
            var port = Tools.GetNextPort();
            var uri = new Uri("http://" + hostName + ":" + port);
            var model = request.ToHostedGameSasModel(uri);

            var state = model.ToHostedGameState(EnumHostedGameStatus.BootRequested);
            state.Engine().Register().LaunchProcess();
        }
Example #3
0
        public static HostedGameSASRequest ToHostedGameSasRequest(this HostedGameRequest request)
        {
            var ret = new HostedGameSASRequest
            {
                GameId        = request.GameId,
                GameName      = request.GameName,
                GameVersion   = Version.Parse(request.GameVersion),
                HasPassword   = request.HasPassword,
                HostUserName  = request.HostUserName,
                Id            = Guid.NewGuid(),
                Name          = request.Name,
                Password      = request.Password,
                TwoSidedTable = request.TwoSidedTable
            };

            return(ret);
        }
Example #4
0
        public static HostedGameSASModel ToHostedGameSasModel(
            this HostedGameSASRequest request, Uri host)
        {
            var ret = new HostedGameSASModel
            {
                GameId        = request.GameId,
                GameName      = request.GameName,
                GameVersion   = request.GameVersion,
                HasPassword   = request.HasPassword,
                HostUserName  = request.HostUserName,
                Id            = request.Id,
                Name          = request.Name,
                Password      = request.Password,
                HostUri       = host,
                TwoSidedTable = request.TwoSidedTable
            };

            return(ret);
        }
Example #5
0
        public static HostedGameSASRequest ToHostedGameSasRequest(this HostedGameRequest request)
        {
            var ret = new HostedGameSASRequest
                          {
                              GameId = request.GameId,
                              GameName = request.GameName,
                              GameVersion = Version.Parse(request.GameVersion),
                              HasPassword = request.HasPassword,
                              HostUserName = request.HostUserName,
                              Id = Guid.NewGuid(),
                              Name = request.Name,
                              Password = request.Password,
                              TwoSidedTable = request.TwoSidedTable,
							  Spectators = request.Spectators,
							  GameIconUrl = request.GameIconUrl,
							  HostUserIconUrl = request.HostUserIconUrl
                          };
            return ret;
        }