X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fgame%2Fg_panel.pas;h=ab996040406168f29ced2f9c131f576d080b86fd;hb=77620b19e88e8eb4884be54475632754d8a4014e;hp=af9d35f89cb78dd58e2f60395e06aeb7fd00de01;hpb=ebb13957295d3f50ba51ff5b871310570d0d4dfe;p=d2df-sdl.git diff --git a/src/game/g_panel.pas b/src/game/g_panel.pas index af9d35f..ab99604 100644 --- a/src/game/g_panel.pas +++ b/src/game/g_panel.pas @@ -13,7 +13,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . *) -{$MODE DELPHI} +{$INCLUDE ../shared/a_modes.inc} unit g_panel; interface @@ -41,6 +41,11 @@ type True: (AnTex: TAnimation); end; + private + function getx1 (): Integer; inline; + function gety1 (): Integer; inline; + function getvisvalid (): Boolean; inline; + public FCurTexture: Integer; // Íîìåð òåêóùåé òåêñòóðû FCurFrame: Integer; @@ -54,6 +59,8 @@ type Moved: Boolean; LiftType: Byte; LastAnimLoop: Byte; + ArrIdx: Integer; // index in one of internal arrays; sorry + tag: Integer; // used in coldets and such; sorry constructor Create(PanelRec: TPanelRec_1; AddTextures: TAddTextureArray; @@ -72,6 +79,12 @@ type procedure SaveState(var Mem: TBinMemoryWriter); procedure LoadState(var Mem: TBinMemoryReader); + + property x0: Integer read X; + property y0: Integer read Y; + property x1: Integer read getx1; // inclusive! + property y1: Integer read gety1; // inclusive! + property visvalid: Boolean read getvisvalid; // panel is "visvalid" when it's width and height are positive end; PPanel = ^TPanel; @@ -246,6 +259,10 @@ begin Inherited; end; +function TPanel.getx1 (): Integer; inline; begin result := X+Width-1; end; +function TPanel.gety1 (): Integer; inline; begin result := Y+Height-1; end; +function TPanel.getvisvalid (): Boolean; inline; begin result := (Width > 0) and (Height > 0); end; + procedure TPanel.Draw(); var xx, yy: Integer;