Exemple #1
0
        /// <summary>
        /// Select all the votes based on <paramref name="filter"/>
        /// </summary>
        /// <param name="filter">Filter used to select votes to kick</param>
        /// <param name="totalPlayers">The total number of players in the game</param>
        /// <returns>The list of votes</returns>
        public List <Entities.GamePlayerKickVote> Execute(Entities.Filters.GamePlayerKickVote.Select filter, out Int32 totalPlayers)
        {
            bool totalPlayersRead = false;
            List <Entities.GamePlayerKickVote> votes = new List <Entities.GamePlayerKickVote>();

            totalPlayers = 0;

            using (DbCommand cmd = _db.GetStoredProcCommand("GamePlayerKickVote_Select"))
            {
                _db.AddInParameter(cmd, "@GameID", DbType.Int32, filter.GameID);
                _db.AddInParameter(cmd, "@KickUserId", DbType.Int32, filter.KickUserId);
                _db.AddInParameter(cmd, "@PlayerType", DbType.Int32, filter.PlayerType);
                _db.AddOutParameter(cmd, "@TotalPlayers", DbType.Int32, sizeof(Int32));

                using (IDataReader idr = _db.ExecuteReader(cmd))
                {
                    while (idr.Read())
                    {
                        votes.Add(new Entities.GamePlayerKickVote(idr));
                    }
                }

                if (totalPlayersRead == false)
                {
                    totalPlayers     = (Int32)_db.GetParameterValue(cmd, "@TotalPlayers");
                    totalPlayersRead = true;
                }
            }

            return(votes);
        }
Exemple #2
0
        /// <summary>
        /// Check to see if the user has enough votes to be kicked
        /// </summary>
        /// <param name="gameID">The ID of the game the user belongs to</param>
        /// <param name="kickUserId">The ID of the user to kick</param>
        /// <param name="votedToKick">Number of votes to kick</param>
        /// <param name="votedNotToKick">Number of votes not to kick</param>
        public void Execute(Int32 gameID, Int32 kickUserId, out Int32 votedToKick, out Int32 votedNotToKick)
        {
            Entities.Filters.GamePlayerKickVote.Select filter = new Entities.Filters.GamePlayerKickVote.Select();
            filter.GameID     = gameID;
            filter.KickUserId = kickUserId;
            //TODO: When spectator's can be kicked this will need to change
            filter.PlayerType = Entities.Enums.GamePlayerType.Player;

            Int32 totalPlayers = 0;

            List <Entities.GamePlayerKickVote> votes = _selectVotes.Execute(filter, out totalPlayers);

            votedToKick    = votes.Count(x => x.Vote);
            votedNotToKick = votes.Count(x => !x.Vote);

            Int32 notVoted = totalPlayers - votedToKick - votedNotToKick;

            votedNotToKick += notVoted;
        }
Exemple #3
0
        /// <summary>
        /// Check to see if the user has enough votes to be kicked
        /// </summary>
        /// <param name="gameID">The ID of the game the user belongs to</param>
        /// <param name="kickUserId">The ID of the user to kick</param>
        /// <param name="votedToKick">Number of votes to kick</param>
        /// <param name="votedNotToKick">Number of votes not to kick</param>
        public void Execute(Int32 gameID, Int32 kickUserId, out Int32 votedToKick, out Int32 votedNotToKick)
        {
            Entities.Filters.GamePlayerKickVote.Select filter = new Entities.Filters.GamePlayerKickVote.Select();
            filter.GameID = gameID;
            filter.KickUserId = kickUserId;
            //TODO: When spectator's can be kicked this will need to change
            filter.PlayerType = Entities.Enums.GamePlayerType.Player;

            Int32 totalPlayers = 0;

            List<Entities.GamePlayerKickVote> votes = _selectVotes.Execute(filter, out totalPlayers);

            votedToKick = votes.Count(x => x.Vote);
            votedNotToKick = votes.Count(x => !x.Vote);

            Int32 notVoted = totalPlayers - votedToKick - votedNotToKick;

            votedNotToKick += notVoted;
        }
Exemple #4
0
 /// <summary>
 /// Select all the votes based on <paramref name="filter"/>
 /// </summary>
 /// <param name="filter">Filter used to select votes to kick</param>
 /// <param name="totalPlayers">The total number of players in the game</param>
 /// <returns>The list of votes</returns>
 public List <Entities.GamePlayerKickVote> Execute(Entities.Filters.GamePlayerKickVote.Select filter, out Int32 totalPlayers)
 {
     return(_select.Execute(filter, out totalPlayers));
 }