Example #1
0
        public override void HandlerRequest(CriminalCase criminal)
        {
            Random random = new Random();

            //если попытка удачная
            //вероятность успеха (ранг, число рангов - ранг + сложность) успех если результат прока равен правой части
            if (random.Next(this.Rank, (DataSingleton.GetInstance().Ranks.Count - 1) + criminal.Complexity + 1)
                == ((DataSingleton.GetInstance().Ranks.Count - 1) + criminal.Complexity))
            {
                criminal.Disclosed         = true;
                criminal.FullNamePoliceman = this.FirstName + " " + this.LastName;
                DataSingleton.GetInstance().Logs.Add(DateTime.Now.ToString("HH:mm:ss") + "- Полицейский: " + this.ToString() + " раскрыл преступление");
                if ((this.Rank + 1) < DataSingleton.GetInstance().Ranks.Count)
                {
                    this.Rank++;
                    DataSingleton.GetInstance().Logs.Add(DateTime.Now.ToString("HH:mm:ss") + "- Полицейский: " + LastName + " " + FirstName + " повышен до звания: " + DataSingleton.GetInstance().Ranks[Rank]);
                }
            }
            else
            {
                DataSingleton.GetInstance().Logs.Add(DateTime.Now.ToString("HH:mm:ss") + "- Полицейский: " + this.ToString() + " не смог раскрыть преступление");
                if (Successor != null)
                {
                    Successor.HandlerRequest(criminal);
                }
            }
        }
 public static DataSingleton GetInstance()
 {
     if (instance == null)
     {
         instance = new DataSingleton();
     }
     return(instance);
 }
 public override string ToString()
 {
     return(String.Format("{0}, Сложность -{1}", Name, DataSingleton.GetInstance().Complexity[Complexity]));
 }
Example #4
0
 public override string ToString()
 {
     return(String.Format("{2}  {0} {1}", FirstName, LastName, DataSingleton.GetInstance().Ranks[Rank]));
 }