Сравнительное объектно-ориентированное проектирование - 6 стр.

UptoLike

Составители: 

6
// Устанавливает состояние видимости спрайта
procedure SetVisible(const aVisible: Boolean);
// Возвращает прямоугольник спрайта
function GetSpriteRect:Types.TRect;
// Конструктор
// Создает и инициализирует спрайт, принадлежащий списку Sprites
// с прямоугольником SpriteRect
constructor Create(const SpriteRect: Types.TRect;const Sprites: TSpriteList);
protected
// Методы
// Восстанавливает изображение фона спрайта
procedure Restore;virtual;
// Изображает спрайт
procedure Paint;virtual;
// Формирует реальное изображение спрайта (в этом классе метод абстрактный)
procedure PaintPicture;virtual;abstract;
public
// Свойства
// Возвращает слой спрайта
property Z:integer read FZ;
// Устанавливает и возвращает обработчик при перемещении спрайта
property OnMove:OnMoveEvent read FOnMove write FOnMove;
// Устанавливает и возвращает состояние видимости спрайта
property Visible:Boolean read FVisible write SetVisible;
// Возвращает положение левого верхнего угла спрайта
property Location:Types.TPoint read FLocation;
// Возвращает размеры спрайта
property SpriteSize:Types.TSize read FSize;
// Возвращает прямоугольник спрайта
property SpriteRect:Types.TRect read GetSpriteRect;
// Возвращает ссылку на список, которому спрайт принадлежит
property SpriteList:TSpriteList read FSpriteList;
// Методы
// Выполняет инициализирующие действия сразу после создания спрайта
procedure AfterConstruction;override;
// Выполняет действия непосредственно перед освобождением спрайта
procedure BeforeDestruction;override;
// Перемещает спрайт на вектор drift
function Move(const drift: Types.TSize): boolean;virtual;
// Перемещает спрайт в новое положение NewLocation
function MoveTo(const NewLocation: Types.TPoint): boolean;virtual;
end;
// Тип массива, хранящего карту следов (пикселей) спрайтов на канве
TTraceMap=Array of array of Boolean;
// Список спрайтов, оставляющих след на канве