Реферат: Помощь в обучении программированию
Позволяет определить фактический размер поля в количестве ячеек вдоль Y
FieldVisibleCountY
Число ячеек по Y (integer)
Позволяет определить видимый размер поля в количестве ячеек вдоль Y
* Фактически размерность массива по X совпадает с тем что отображается на экране, по Y ситуация другая. Фактически в памяти поле представлено по Y с большим размером (+ReservedLines). Это вызвано необходимостью хранить данные о фигуре которая только начала падать и находится вне пределов видимости в верних строках и тем что именно по занятости хотя бы одной ячейки верхних ReservedLines строк определяется окончена игра или нет. Фактический размер определяется FieldRealCountY, допустимый для нахождения фигур FieldCountY. В то же время на экране может отображаться любое число строк от 1 до FieldRealCountY. Поэтому присутствует еще одно свойство FieldVisibleCountY, которое как раз и определяет сколько строк видно пользователю. В частности этот момент использовался при отладке - когда на экране было все поле целиком, фигура начинала падать не с самого верха и игра заканчивалась когда фигура застревала на верхних ReservedLines строках, а не обязательно достигнув верхней границы.
методы:
ClearAll |
Очистка игрового поля, путем занесения 0 во все ячейки |
ClearCell (x,y:integer) |
Очистка ячейки (x,y) путем занесения 0 в эту ячейку |
SetAtCell (x,y:integer;const Cell:TFieldCell) |
Установка в ячейку (x,y) значения Cell. Т.е. логическое получение занятой ячейки |
GetAtCell (x,y:integer) |
Получение значения из ячейки (x,y) |
ClearAt (x,y:integer;CurCell:PFieldCell=nil) |
Определяет свободна ли ячейка (x,y) логически и если указан CurCell то ячейка считается свободной даже когда там находится значения совпадающее с CurCell. |
DelFullLine |
Удаление одной из полностью занятых строк. |
IsOverflow |
Проверка на переполнение. Переполненным полем считается поле для которого хотя бы одна ячейка верхних ReservedLines занята |
DeleteFigure(FigureNum:integer) |
Удаление с поля фигуры с номером FigureNum. Используется при падении Бомбы-2 |
DrawToImage |
Прорисовка текущего состояния поля |
Игра может находится в одном из логических состояний:
gmNothing |
Игра не начата |
gmActive=1 |
Игра идет |
К-во Просмотров: 434
Бесплатно скачать Реферат: Помощь в обучении программированию
|