Связанные файлы: Capacities.txt, Динамика изменения счета и золота на уровнях 2-5.xlsx
{******************************************************************************}
//Проект: Игра: Tetris - New Generation
//Описание: Протокол разработки, внесенные изменения и комменатрии
//Автор: Геннадий Малинин
//Год: 2013
//Дата создания: 10.05.2013 13:10
//Последнее изменение: 31.05.2013 16:37
{******************************************************************************}

 +1. Вариант бонуса - Дробь
 +2. Вариант бонуса - Рисование фигуры
 +3. Система отображения имеющихся бонусов их использование и покупка
 +4. Переработать систему отрисовки:
   -4.1 Перечень графических объектов, которые отвечают за определенную область и отрисоваваются в определенный момент
   -4.2 Отказаться от ... отмена
   +4.3 Изменить некоторые элементы отрисовки
   +4.4 Загрузка графики путем вырезания элементов графики из большего холста
 +5.Вариант бонуса: Смещение элементов в пустые ячекйи сверху вниз ("Гравитационное воздействие")
   +5.1 Эффект: Анимация поднятия поля и "удар" о границу игрового поля (сверху вниз)

10.05.2013 13:10
  Улучшен механизм удаления заполненных строк. Проработана система ускорения падения фигуры и ее удар об элементы поля.
 Ошибки при игре не обнаружены. 
  Вчера был создан модуль для работы с PNG объектами. В ходе создания было разработано несколько процедур и функций:
   - Процедура рисования источника (Src) на цели (Dest) в координаты X;Y - procedure DrawTo(X, Y:Integer; Src, Dest:TPNGObject);
   - Процедура копирования части рисунка - procedure CopyFrom(SrcPt, DestPt, Size:TPoint; Src:TPNGObject; var Dest:TPNGObject);
   - Взятая из DelphiWorld функция смешивания битов - function MixBytes(FG, BG, TRANS:Byte):Byte;
   - Взятая из DelphiWorld функция смешивания цветов, основанная на смешании битов - function MixColors(FG, BG:TColor; T:Byte):TColor;
   - Функция создания PNG объекта путем копирования части объекта Src - function CreateFrom(X, Y, W, H:Word; Src:TPNGObject):TPNGObject;
   - Ранее созданная функция конструкции PNG объекта напрямую из файла - function CreatePNG(FName:string):TPNGObject;
 В результате чего появилась возможность использовать вместо набора PNG файлов единый PNG файл, расчленяя его на более мелкие части.
 
10.05.2013 21:44
  Изменен механизм спуска фигуры. Для сильного удара необходимо продолжительное время держать кнопку вниз зажатой.
  Восстановлена работа некоторых "забытых" частей кода.
  Результаты Alpha тестирования:
   - Alpha тест показал, что бонусные действия в бонусных элементах слишком РЕДКО ПОПАДАЮТСЯ.
   - Время игры составило около 50 мин. (с 1 по 15 уровень, без использования бонусов).
   - Статистика игр пополнила данные в XLSX файле "Динамика изменения счета и золота на уровнях 2-5".
   - Динамика отображает следующие результаты:
     1. Средний подъем счета за уровень равен 33203
     2. Средний подъем золота за уровень составил 321 ед. золота
     3. Таблица                                /\    \\ `
       -----------------------------------  __/  \____\\____
       | Уровень | Ср. счет | Ср. золото | /\ \  /    /\    \
       |---------------------------------|/  \_\/____/  \ ___\
       |    2    |    14389 |        265 |\  /    /\.\  /    /
       |    3    |    38080 |        488 | \/____/  \ \/____/
       |    4    |    68420 |        751 |  \ .  \  / 
       |    5    |   113999 |       1299 |   \____\/
       -----------------------------------
                _____                _____
               /    /\              /\   /\
              /____/  \ ___        /__\_/__\ ___
              \    \  /    /\      \  / \  /\   /\
               \____\/____/  \      \/___\/__\_/__\
               /    /\    \  /      /\   /\  / \  /
              /____/  \____\/      /__\_/__\/___\/
              \    \  /            \  / \  /
               \____\/              \/___\/
              ________________     ________________
              Геннадий Малинин	          =)
			  _____
			 /    /\
			/____/  \ ___
            \    \  /    /\
             \____\/___ /  \
              \    \    \  /\
			   \____\____\/  \
                     \    \  /
                      \____\/
			__________________
                  Tetris
   
  Учитывая то, что на следующих уровнях меняется система разброса бонусов, динамика справедлива лишь для этих уровней и не отражает
 реальные данные для последующих.

31.05.2013 16:37
  На данный момент изменен алгоритм отрисовки. Пришлось вернутся к использованию дополнительного потока "TDrawThread".
 В период с 10.05 - 31.05 продолжение разработки проходило 2 - 3 раза. (P.S. Лень. Что тут скажешь!)
 Было несколько попыток изменить технологию рисования: Рисовать отдельные части игрового экрана только в нужный момент, т.е.
 только тогда, когда были изменения на этом участке. Проблемма заключалась в том, что для обеспечения прозрачной графики
 необходимо рисовать на PNG объектах, имеющих канал прозрачности, но рисование на таких объектах слишком медленное, что не
 сможет компенсировать текущие сложности - непосредственную перерисовку всех объектов.

02.06.2013 16:09
  Включена возможность сохранять игру. Точнее игра, при нажатии кнопки "Выход", если игра не окончена, спрашивает:
 "Сохранить ли игру?". Игра требует намного меньше ресурсов компьютера по сравнения с предыдущими версиями.
 Размер кода составляет около 6к строк считая комментарии.




































