Пример #1
0
 void IИгра.ФигуруПовернуть()
 {
     if (Фигура == null)
     {
         return;
     }
     lock (SyncRoot)
     {
         var повёрнутаяФигура      = Фигура.Повернуть();
         var фигураСдвинутаяВлево  = повёрнутаяФигура.СдвинутьВлево();
         var фигураСдвинутаяВправо = повёрнутаяФигура.СдвинутьВправо();
         var фигураСдвинутаяВниз   = повёрнутаяФигура.СдвинутьВниз();
         var фигураСдвинутаяВниз2  = фигураСдвинутаяВниз.СдвинутьВниз();
         var возможныеФигуры       = new[]
         {
             повёрнутаяФигура,
             фигураСдвинутаяВлево,
             фигураСдвинутаяВправо,
             фигураСдвинутаяВниз,
             фигураСдвинутаяВниз2,
         };
         возможныеФигуры.FirstOrDefault(фигура => ФигуруСменить(фигура));
     }
 }