public void Update(Match match)
        {
            //if (Authentication.getInstance().isAuthenticateWithHeader(Request))
            //{
            IMatchDao  MatchDao  = DalFactory.CreateMatchDao(database);
            IPlayerDao PlayerDao = DalFactory.CreatePlayerDao(database);


            if (match.Finished)
            {
                Player w1;
                Player w2;
                Player v1;
                Player v2;

                if (match.ResultPointsPlayer1 > match.ResultPointsPlayer2)
                {
                    w1 = PlayerDao.FindById(match.Team1Player1);
                    w2 = PlayerDao.FindById(match.Team1Player2);
                    v1 = PlayerDao.FindById(match.Team2Player1);
                    v2 = PlayerDao.FindById(match.Team2Player2);
                }
                else
                {
                    w1 = PlayerDao.FindById(match.Team2Player1);
                    w2 = PlayerDao.FindById(match.Team2Player2);
                    v1 = PlayerDao.FindById(match.Team1Player1);
                    v2 = PlayerDao.FindById(match.Team1Player2);
                }
                BLPlayer.UpdateElo(w1, w2, v1, v2);

                BLStatistic.Insert(w1.ID, w1.Skills);
                BLStatistic.Insert(w2.ID, w2.Skills);
                BLStatistic.Insert(v1.ID, v1.Skills);
                BLStatistic.Insert(v2.ID, v2.Skills);

                PlayerDao.Update(w1);
                PlayerDao.Update(w2);
                PlayerDao.Update(v1);
                PlayerDao.Update(v2);
            }
            MatchDao.Update(match);
            //}
        }
Example #2
0
        public static void Decay()
        {
            IDatabase     database = DalFactory.CreateDatabase();
            IPlayerDao    pDao     = DalFactory.CreatePlayerDao(database);
            IStatisticDao sDao     = DalFactory.CreateStatisticDao(database);

            List <Player> pList = pDao.FindAll().Where(p =>
            {
                var statList = sDao.FindByPlayer(p.ID);
                if (!statList.Any())
                {
                    return(false);
                }
                var maxdate = statList.Max(s => s.Timestamp);
                return(DateTime.Now.AddDays(-60) < maxdate);
            }).ToList();

            foreach (Player p in pList)
            {
                p.Skills = (int)(p.Skills * 0.98);
                pDao.Update(p);
            }
        }
        public HttpResponseMessage Update([FromBody] Player player, int playerId)
        {
            //if (Authentication.getInstance().isAuthenticateWithHeader(Request))
            //{
            IPlayerDao PlayerDao = DalFactory.CreatePlayerDao(database);

            Player pl = PlayerDao.FindById(player.ID);

            Player p = new Player(playerId, player.isAdmin, player.FirstName, player.LastName,
                                  player.Nickname, player.Skills, pl.PhotoPath, player.Password, player.isMonday,
                                  player.isTuesday, player.isWednesday, player.isThursday, player.isFriday, player.isSaturday);
            var boo = PlayerDao.Update(p);

            if (boo)
            {
                return(new HttpResponseMessage(HttpStatusCode.OK));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.Conflict));
            }

            //}
        }