X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fgame%2Fg_panel.pas;h=96bd7f1817f333246c470eea1933052bf2c2df83;hb=674a902ed6e62076ad4bafc2b8f74d181f6bf287;hp=4374cf180f3e8027b750c7f382614cdb6164c956;hpb=dd0d8ac4cc2a0aa774f25c8a1a774f7358acfae7;p=d2df-sdl.git diff --git a/src/game/g_panel.pas b/src/game/g_panel.pas index 4374cf1..96bd7f1 100644 --- a/src/game/g_panel.pas +++ b/src/game/g_panel.pas @@ -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,7 +59,9 @@ type Moved: Boolean; LiftType: Byte; LastAnimLoop: Byte; - ArrIdx: Integer; // index in one of internal arrays; sorry + arrIdx: Integer; // index in one of internal arrays; sorry + tag: Integer; // used in coldets and such; sorry + proxyId: Integer; // proxy id in map grid (DO NOT USE!) constructor Create(PanelRec: TPanelRec_1; AddTextures: TAddTextureArray; @@ -73,6 +80,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; @@ -247,13 +260,17 @@ 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; NoTextureID: DWORD; NW, NH: Word; begin - if Enabled and (FCurTexture >= 0) and + if {Enabled and} (FCurTexture >= 0) and (Width > 0) and (Height > 0) and (FAlpha < 255) and g_Collide(X, Y, Width, Height, sX, sY, sWidth, sHeight) then