public async Task <IActionResult> DeleteQPlayer([FromRoute] string playername)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            Tblplayersv2 player = await _context.Tblplayersv2.SingleOrDefaultAsync(p => p.Playername == playername);

            Tblboardsquaresv2 boardsquare = await _context.Tblboardsquaresv2.SingleOrDefaultAsync(bs => bs.Playerid == player.Id);


            if (player == null)
            {
                return(NotFound());
            }

            boardsquare.Playerid = null;
            boardsquare.Player   = null;

            _context.Tblplayersv2.Remove(player);
            await _context.SaveChangesAsync();

            return(Ok(player));
        }
        public async Task <IActionResult> PutTblplayersv2([FromRoute] int id, [FromBody] Tblplayersv2 tblplayersv2)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != tblplayersv2.Id)
            {
                return(BadRequest());
            }

            _context.Entry(tblplayersv2).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!Tblplayersv2Exists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
        public async Task <IActionResult> PostTblplayersv2([FromBody] Tblplayersv2 tblplayersv2)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            _context.Tblplayersv2.Add(tblplayersv2);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetTblplayersv2", new { id = tblplayersv2.Id }, tblplayersv2));
        }
Exemplo n.º 4
0
        public async Task <IActionResult> PutQBoardSquare([FromRoute] int col, [FromRoute] int row, [FromBody] QBoardSquare qboardsquare)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            Tblboardsquaresv2 boardsquare = await _context.Tblboardsquaresv2.SingleOrDefaultAsync(bs => (bs.Colposition == col) && (bs.Rowposition == row));

            Tblplayersv2 player = await _context.Tblplayersv2.SingleOrDefaultAsync(p => p.Id == boardsquare.Playerid);

            if (boardsquare != null)
            {
                boardsquare.Northwall   = qboardsquare.Northwall;
                boardsquare.Southwall   = qboardsquare.Southwall;
                boardsquare.Westwall    = qboardsquare.Westwall;
                boardsquare.Eastwall    = qboardsquare.Eastwall;
                boardsquare.Colposition = col;
                boardsquare.Rowposition = row;
                if (player != null)
                {
                    boardsquare.Playerid = player.Id;
                }
                else
                {
                    boardsquare.Playerid = null;
                }
            }
            else
            {
                return(NotFound());
            }

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!Tblboardsquaresv2Exists(boardsquare.Id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
        public async Task <IActionResult> PutQPlayer([FromRoute] string playername, [FromBody] QPlayer qplayer)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            Tblplayersv2 player = await _context.Tblplayersv2.SingleOrDefaultAsync(p => p.Playername == playername);

            Tblboardsquaresv2 boardsquare = await _context.Tblboardsquaresv2.SingleOrDefaultAsync(bs => bs.Playerid == player.Id);

            if (player != null)
            {
                player.Playername      = qplayer.Playername;
                player.Facingdirection = qplayer.Facingdirection;

                /* Has Player Moved ?*/
                if ((boardsquare.Colposition == qplayer.Colposition) && (boardsquare.Rowposition == qplayer.Rowposition))
                {
                    /* Player has NOT moved */
                }
                else
                {
                    boardsquare.Playerid = null;
                    boardsquare.Player   = null;
                    Tblboardsquaresv2 newboardsquare = await _context.Tblboardsquaresv2.SingleOrDefaultAsync((bs => (bs.Colposition == qplayer.Colposition) && (bs.Rowposition == qplayer.Rowposition)));

                    newboardsquare.Player = player;
                }

                try
                {
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!Tblplayersv2Exists(player.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
            }
            return(NoContent());
        }
Exemplo n.º 6
0
        public async Task <IActionResult> PostQBoardSquare([FromBody] QBoardSquare qboardsquare)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            Tblboardsquaresv2 boardsquare = new Tblboardsquaresv2
            {
                Northwall = qboardsquare.Northwall,
                Southwall = qboardsquare.Southwall,
                Westwall  = qboardsquare.Westwall,
                Eastwall  = qboardsquare.Eastwall
            };

            Tblplayersv2 player = await _context.Tblplayersv2.SingleOrDefaultAsync(p => (p.Id == boardsquare.Playerid));

            _context.Tblboardsquaresv2.Add(boardsquare);

            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetTblboardsquaresv2", new { id = boardsquare.Id }, boardsquare));
        }
        public async Task <IActionResult> PostQPlayer([FromBody] QPlayer qplayer)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            Tblplayersv2 player = new Tblplayersv2
            {
                Playername      = qplayer.Playername,
                Facingdirection = qplayer.Facingdirection
            };

            Tblboardsquaresv2 boardsquare = await _context.Tblboardsquaresv2.SingleOrDefaultAsync((bs => (bs.Colposition == qplayer.Colposition) && (bs.Rowposition == qplayer.Rowposition)));

            boardsquare.Player = player;

            _context.Tblplayersv2.Add(player);

            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetTblplayersv2", new { id = player.Id }, player));
        }