DEADSOFTWARE

trigger loading now works; map loading code cleanup
[d2df-sdl.git] / src / shared / MAPDEF.pas
index a7137162c81c5be25db278bc34b11462913c11a9..ededbdd40c7f885f7d8ea932af4493002678f51d 100644 (file)
@@ -117,6 +117,11 @@ type
     {$INCLUDE mapdef_help.inc}
     function trigMonsterId (): Integer; inline;
 
+  private
+    // user fields
+    function getGamePanelId (): Integer; inline;
+    procedure setGamePanelId (v: Integer); inline;
+
   public
     property panel[idx: Integer]: TDynRecord read getPanelByIdx;
     property panelIndex[pan: TDynRecord]: Integer read getPanelIndex;
@@ -124,6 +129,8 @@ type
     property tgPanelID: Integer read getPanelId {write setPanelId};
     property tgShotPanelID: Integer read getPanelId {write setPanelId};
     property TexturePanel: Integer read getTexturePanel {write setTexturePanel}; // texturepanel, int
+    // user fields
+    property gamePanelId: Integer read getGamePanelId write setGamePanelId;
   end;
 
 implementation
@@ -136,6 +143,22 @@ uses
 constructor TDFPoint.Create (ax, ay: LongInt); begin X := ax; Y := ay; end;
 
 
+// ////////////////////////////////////////////////////////////////////////// //
+function TDynRecordHelper.getGamePanelId (): Integer; inline;
+var
+  fld: TDynField;
+begin
+  fld := field['gamePanelId'];
+  if (fld = nil) or (fld.baseType <> TDynField.TType.TInt) then result := -1 else result := fld.ival;
+end;
+
+
+procedure TDynRecordHelper.setGamePanelId (v: Integer); inline;
+begin
+  setUserField('gamePanelId', Integer(v));
+end;
+
+
 // ////////////////////////////////////////////////////////////////////////// //
 function TDynRecordHelper.getFieldWithType (const aname: AnsiString; atype: TDynField.TType): TDynField; inline;
 begin