Ejemplo n.º 1
0
        /// <summary>
        /// Catches the fish a user has hooked. If no fish is hooked, the user
        /// will reel in the empty line.
        /// </summary>
        /// <param name="fisher">The fisher that is trying to catch.</param>
        /// <returns>The catch data for this fish.</returns>
        public Catch CatchFish(Fisher fisher)
        {
            var catchData = default(Catch);

            if (fisher != null)
            {
                catchData = CalculateFishSizes(fisher);
                if (catchData != null && Tournament.IsRunning)
                {
                    UpdatePersonalLeaderboard(fisher, catchData);
                    UpdateGlobalLeaderboard(catchData);
                    Tournament.AddTournamentPoints(fisher.UserId, catchData.Points);
                }
                fisher.IsFishing  = false;
                fisher.Hooked     = null;
                fisher.HookedTime = null;
            }
            return(catchData);
        }