DEADSOFTWARE

Add flamethrower weapon, item and ammo
[d2df-sdl.git] / src / shared / MAPDEF.pas
index d414e7248661e5768524bbd1e4c5748c981b839f..ef4eaf63675fdd137368ba9a01b2a85da2738146 100644 (file)
@@ -92,8 +92,10 @@ const
   ITEM_HELMET                = 34;
   ITEM_JETPACK               = 35;
   ITEM_INVIS                 = 36;
+  ITEM_WEAPON_FLAMETHROWER   = 37;
+  ITEM_AMMO_FUELCAN          = 38;
 
-  ITEM_MAX                   = 36; // store the last item's id in here
+  ITEM_MAX                   = 38; // store the last item's id in here
                                    // use this in for loops
 
   ITEM_OPTION_ONLYDM = 1;
@@ -160,7 +162,8 @@ const
   TRIGGER_HEALTH          = 26;
   TRIGGER_SHOT            = 27;
   TRIGGER_EFFECT          = 28;
-  TRIGGER_MAX             = 28;
+  TRIGGER_SCRIPT          = 29;
+  TRIGGER_MAX             = 29;
 
   TRIGGER_SHOT_PISTOL  = 0;
   TRIGGER_SHOT_BULLET  = 1;
@@ -187,6 +190,11 @@ const
   TRIGGER_SHOT_TARGET_MONPLR = 5;
   TRIGGER_SHOT_TARGET_PLRMON = 6;
 
+  TRIGGER_SHOT_AIM_DEFAULT   = 0;
+  TRIGGER_SHOT_AIM_ALLMAP    = 1;
+  TRIGGER_SHOT_AIM_TRACE     = 2;
+  TRIGGER_SHOT_AIM_TRACEALL  = 3;
+
   TRIGGER_EFFECT_PARTICLE  = 0;
   TRIGGER_EFFECT_ANIMATION = 1;
 
@@ -224,7 +232,7 @@ const
   TEXTURE_SPECIAL_ACID2 = DWORD(-3);
   TEXTURE_NONE = DWORD(-4);
 
-Type
+type
   TPoint = packed record
     X, Y: LongInt;
   end;
@@ -304,13 +312,13 @@ Type
                              HealInterval: Word;
                              HealMax: Boolean;
                              HealSilent: Boolean);
-      TRIGGER_SHOT:         (ShotType: Byte;
+      TRIGGER_SHOT:         (ShotPos: TPoint;
+                             ShotType: Byte;
+                             ShotTarget: Byte;
                              ShotSound: Boolean;
+                             ShotAim: Byte;
                              ShotPanelID: Integer;
-                             ShotTarget: Byte;
                              ShotIntSight: Word;
-                             ShotAllMap: Boolean;
-                             ShotPos: TPoint;
                              ShotAngle: Word;
                              ShotWait: Word;
                              ShotAccuracy: Word;
@@ -330,6 +338,8 @@ Type
                              FXSpreadR: Byte;
                              FXSpreadU: Byte;
                              FXSpreadD: Byte);
+      TRIGGER_SCRIPT:       (SCRProc: Char64;
+                             SCRArg: Integer);
   end;
 
 {$INCLUDE mapstructsizes.inc}