diff --git a/src/game/g_panel.pas b/src/game/g_panel.pas
index ab996040406168f29ced2f9c131f576d080b86fd..c46cf8c456d1f591698f72dc96593132c17680e0 100644 (file)
--- a/src/game/g_panel.pas
+++ b/src/game/g_panel.pas
interface
uses
- MAPSTRUCT, BinEditor, g_textures;
+ MAPDEF, BinEditor, g_textures;
type
TAddTextureArray = Array of
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;
implementation
uses
- SysUtils, g_basic, g_map, MAPDEF, g_game, e_graphics,
+ SysUtils, g_basic, g_map, g_game, e_graphics,
g_console, g_language, e_log, GL;
const
case PanelRec.PanelType of
PANEL_WATER:
- FTextureIDs[0].Tex := TEXTURE_SPECIAL_WATER;
+ FTextureIDs[0].Tex := LongWord(TEXTURE_SPECIAL_WATER);
PANEL_ACID1:
- FTextureIDs[0].Tex := TEXTURE_SPECIAL_ACID1;
+ FTextureIDs[0].Tex := LongWord(TEXTURE_SPECIAL_ACID1);
PANEL_ACID2:
- FTextureIDs[0].Tex := TEXTURE_SPECIAL_ACID2;
+ FTextureIDs[0].Tex := LongWord(TEXTURE_SPECIAL_ACID2);
end;
FCurTexture := 0;
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
+ (g_dbg_scale_05 or g_Collide(X, Y, Width, Height, sX, sY, sWidth, sHeight)) then
begin
if FTextureIDs[FCurTexture].Anim then
begin // Àíèìèðîâàííàÿ òåêñòóðà
else
begin // Îáû÷íàÿ òåêñòóðà
case FTextureIDs[FCurTexture].Tex of
- TEXTURE_SPECIAL_WATER:
+ LongWord(TEXTURE_SPECIAL_WATER):
e_DrawFillQuad(X, Y, X+Width-1, Y+Height-1,
0, 0, 255, 0, B_FILTER);
- TEXTURE_SPECIAL_ACID1:
+ LongWord(TEXTURE_SPECIAL_ACID1):
e_DrawFillQuad(X, Y, X+Width-1, Y+Height-1,
0, 128, 0, 0, B_FILTER);
- TEXTURE_SPECIAL_ACID2:
+ LongWord(TEXTURE_SPECIAL_ACID2):
e_DrawFillQuad(X, Y, X+Width-1, Y+Height-1,
128, 0, 0, 0, B_FILTER);
- TEXTURE_NONE:
+ LongWord(TEXTURE_NONE):
if g_Texture_Get('NOTEXTURE', NoTextureID) then
begin
e_GetTextureSize(NoTextureID, @NW, @NH);
if not FTextureIDs[FCurTexture].Anim then
begin
case FTextureIDs[FCurTexture].Tex of
- TEXTURE_SPECIAL_WATER: exit;
- TEXTURE_SPECIAL_ACID1: exit;
- TEXTURE_SPECIAL_ACID2: exit;
- TEXTURE_NONE: exit;
+ LongWord(TEXTURE_SPECIAL_WATER): exit;
+ LongWord(TEXTURE_SPECIAL_ACID1): exit;
+ LongWord(TEXTURE_SPECIAL_ACID2): exit;
+ LongWord(TEXTURE_NONE): exit;
end;
end;
if (X+Width < lightX-radius) then exit;
function TPanel.GetTextureID(): DWORD;
begin
- Result := TEXTURE_NONE;
+ Result := LongWord(TEXTURE_NONE);
if (FCurTexture >= 0) then
begin