Exemplo n.º 1
0
        public async Task <ActionResult <Game_Player> > GetGamePlayer(string id1, string id2)
        {
            Game   g = _context.Game.SingleOrDefault(item => item.name == id1);
            Player p = _context.Player.SingleOrDefault(item => item.username == id2);

            if (g == null || p == null)
            {
                return(NotFound());
            }
            //TODO: Verify that player is requesting their own
            Game_Player gp = await _context.Game_Player.SingleOrDefaultAsync(item => item.GameID == g.GameID && item.PlayerID == p.PlayerID);

            if (gp == null)   //TODO: Authenticate player
            {
                gp = new Game_Player {
                    GameID   = g.GameID,
                    PlayerID = p.PlayerID,
                    active   = true,
                    money    = 4
                };
                _context.Game_Player.Add(gp);
                _context.SaveChanges();
            }

            gp.RedCards = _context.Player_Hand.Where(item => item.Game_PlayerID == gp.Game_PlayerID).OrderBy(item => item.IssueID).ToList();
            if (gp.RedCards.Count < g.hand_size)
            {
                Random rng = new Random();
                while (gp.RedCards.Count < g.hand_size)
                {
                    Player_Hand ph = new Player_Hand
                    {
                        Game_PlayerID = gp.Game_PlayerID,
                        //ph.GamePlayer = gp;
                        IssueID = rng.Next(g.deck_size) + 1,
                        score   = rng.Next(2) * 2 - 1
                    };
                    if (!gp.RedCards.Any(item => item.IssueID == ph.IssueID))
                    {
                        gp.RedCards.Add(ph);
                        _context.Player_Hand.Add(ph);
                        _context.SaveChanges();
                    }
                }
            }

            return(gp);
        }
Exemplo n.º 2
0
        public async Task <ActionResult <int> > GetGP_GP(string id1, string id2)
        {
            Game   g = _context.Game.SingleOrDefault(item => item.name == id1);
            Player p = _context.Player.SingleOrDefault(item => item.username == id2);

            if (g == null || p == null)
            {
                return(NotFound());
            }
            //TODO: Verify that player is requesting their own
            Game_Player gp = await _context.Game_Player.SingleOrDefaultAsync(item => item.GameID == g.GameID && item.PlayerID == p.PlayerID);

            //TODO: Authenticate player
            if (gp == null)
            {
                return(NotFound());
            }
            return(gp.money);
        }
Exemplo n.º 3
0
 private void Start()
 {
     Instance = this;
 }
Exemplo n.º 4
0
 public void SetMainPlayer(Game_Player p)
 {
     m_mainPlayer = p;
 }