예제 #1
0
        public void CreateMjGame(CreateMjGameInput input)
        {
            //when creating new game
            //1.create game
            var newGame = _mjGameAppService.CreateMjGame(input);

            //2.create initial game session
            var currentUser = _userRepository.Get(AbpSession.GetUserId());

            var dSesssion = new CreateMjGameSessionInput
            {
                MjGameId = newGame.Id,
                GameNo   = 1,
                Wind     = MjGameWind.East,
            };

            dSesssion.UsersId.Add(AbpSession.GetUserId());

            var newSession = _mjGameAppService.CreateMjGameSession(dSesssion);

            newGame.ActiveSessionId = newSession.Id;

            _mjGameAppService.UpdateMjGame(newGame);

            //3.if everything worked out, add game creator to this session
            Groups.Add(Context.ConnectionId, newSession.Id.ToString());
        }
예제 #2
0
        public MjGame CreateMjGame(CreateMjGameInput input)
        {
            var game = input.MapTo <MjGame>();

            game.CreatorId = AbpSession.UserId;
            return(_mjGameRepository.Insert(game));
        }