misc
{
	0
	{
		title = "None";
	}
}

polyobj
{
  include("Hexen_linedefs.cfg", "polyobj");

  6 = null; // Polyobj_MoveTimes8
  93 = null; // Polyobj_OR_MoveTimes8

  59
  {
    title = "Polyobject Move to Spot (override)";
    id = "Polyobj_OR_MoveToSpot";
    arg0
    {
      title = "Polyobject Number";
      type = 25;
    }
    arg1
    {
      title = "Speed (mu. per octic)";
      type = 11;
      enum = "stair_speeds";
      default = 16;
    }
    arg2
    {
      title = "Target MapSpot Tag";
      type = 14;
      targetclasses = "MapSpot,MapSpotGravity";
    }
  }

  86
  {
    title = "Polyobject Move to Spot";
    id = "Polyobj_MoveToSpot";
    arg0
    {
      title = "Polyobject Number";
      type = 25;
    }
    arg1
    {
      title = "Speed (mu. per octic)";
      type = 11;
      enum = "stair_speeds";
      default = 16;
    }
    arg2
    {
      title = "Target MapSpot Tag";
      type = 14;
      targetclasses = "MapSpot,MapSpotGravity";
    }
  }

  87
  {
    title = "Polyobject Stop";
    id = "Polyobj_Stop";
    arg0
    {
      title = "Polyobject Number";
      type = 25;
    }
  }

  88
  {
    title = "Polyobject Move to";
    id = "Polyobj_MoveTo";
    arg0
    {
      title = "Polyobject Number";
      type = 25;
    }
    arg1
    {
      title = "Speed (mu. per octic)";
      type = 11;
      enum = "stair_speeds";
      default = 16;
    }
    arg2
    {
      title = "Target X Pos";
    }
    arg3
    {
      title = "Target Y Pos";
    }
  }

  89
  {
    title = "Polyobject Move to (override)";
    id = "Polyobj_OR_MoveTo";
    arg0
    {
      title = "Polyobject Number";
      type = 25;
    }
    arg1
    {
      title = "Speed (mu. per octic)";
      type = 11;
      enum = "stair_speeds";
      default = 16;
    }
    arg2
    {
      title = "Target X Pos";
    }
    arg3
    {
      title = "Target Y Pos";
    }
  }
}

line
{
  title = "Line";

  55
  {
    title = "Line Set Blocking";
    id = "Line_SetBlocking";

    arg0
    {
      title = "Target Line Tag";
      type = 15;
    }
    arg1
    {
      title = "Set Flags";
      type = 12;
      enum = "linesetblockingflags";
    }
    arg2
    {
      title = "Clear Flags";
      type = 12;
      enum = "linesetblockingflags";
    }
  }
}

door
{
  include("Hexen_linedefs.cfg", "door");

  202
  {
    title = "Door Generic";
    id = "Generic_Door";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "flat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Type";
      type = 26;
      enum
      {
        0 = "Open Close";
        1 = "Open Stay";
        2 = "Close Open";
        3 = "Close Stay";
      }
      flags
      {
        64 = "No retrigger";
        128 = "Tag is light tag";
      }
    }
    arg3
    {
      title = "Delay";
      type = 11;
      enum = "generic_door_delays";
      default = 34;
    }
    arg4
    {
      title = "Lock";
      type = 11;
      enum = "keys";
    }
  }

  249
  {
    title = "Door Close Wait Open";
    id = "Door_CloseWaitOpen";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "flat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Delay";
      type = 11;
      enum = "generic_door_delays";
      default = 34;
    }
    arg3
    {
      title = "Light Tag";
      type = 13;
    }
  }
}

floor
{
  include("Hexen_linedefs.cfg", "floor");

  35 = null; // Floor_RaiseByValueTimes8
  36 = null; // Floor_LowerByValueTimes8
  68 = null; // Floor_MoveToValueTimes8

  28	// Floor Crusher Start
  {
    arg3
    {
      title = "Crush Mode";
      type = 11;
      enum = "crush_mode";
    }
  }

  37
  {
    title = "Floor Move to Value";
    id = "Floor_MoveToValue";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Target Height";
    }
  }

  138
  {
    title = "Floor Waggle";
    id = "Floor_Waggle";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Amplitude";
    }
    arg2
    {
      title = "Frequency";
    }
    arg3
    {
      title = "Phase Offset (0-63)";
    }
    arg4
    {
      title = "Duration";
      type = 11;
      enum = "delay_seconds";
      default = 5;
    }
  }

  200
  {
    title = "Floor Generic Change";
    id = "Generic_Floor";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Movement Amount";
    }
    arg3
    {
      title = "Target";
      type = 11;
      enum
      {
        0 = "Move by Movement Amount";
        1 = "Highest neighboring floor";
        2 = "Lowest neighboring floor";
        3 = "Nearest neighboring floor";
        4 = "Lowest neighboring ceiling";
        5 = "Sector ceiling";
        6 = "Move by the height of sector's shortest lower texture";
      }
    }
    arg4
    {
      title = "Flags";
      type = 26;
      enum
      {
        0 = "Don't copy anything";
        1 = "Copy floor texture, remove sector special";
        2 = "Copy floor texture";
        3 = "Copy floor texture and special";
      }
      flags
      {
        4 = "Use numeric model if set, trigger model if not";
        8 = "Raise floor if set, lower it if not";
        16 = "Inflict crushing damage";
      }
    }
  }

  235
  {
    title = "Transfer Floor and Special from Back Side";
    id = "Floor_TransferTrigger";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
  }

  236
  {
    title = "Transfer Floor and Special using Numeric Change Model";
    id = "Floor_TransferNumeric";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
  }

  238
  {
    title = "Floor Raise to Lowest Ceiling";
    id = "Floor_RaiseToLowestCeiling";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
  }

  239
  {
    title = "Floor Raise by TxTy";
    id = "Floor_RaiseByValueTxTy";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Raise by";
    }
  }

  240
  {
    title = "Floor Raise by Texture";
    id = "Floor_RaiseByTexture";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
  }

  241
  {
    title = "Floor Lower to Lowest TxTy";
    id = "Floor_LowerToLowestTxTy";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }

    errorchecker
    {
      floorlowertolowest = true;
    }
  }

  242
  {
    title = "Floor Lower to Highest Floor";
    id = "Floor_LowerToHighest";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Adjust Target Height";
    }
    arg3
    {
      title = "Force Adjust";
      type = 11;
      enum = "noyes";
    }

    errorchecker
    {
      floorraisetohighest = true;
    }
  }

  250
  {
    title = "Floor Donut";
    id = "Floor_Donut";

    arg0
    {
      title = "Center Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Pillar Lower Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Stairs Raise Speed";
      type = 11;
      enum = "stair_speeds";
      default = 4;
    }
  }

  251
  {
    title = "Floor and Ceiling Lower and Raise";
    id = "FloorAndCeiling_LowerRaise";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Floor Lowering Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Ceiling Raising Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg3
    {
      title = "Emulate Boom Bug";
      type = 11;
      enum
      {
        0 = "No";
        1998 = "Yes";
      }
    }
  }
}

stairs
{
  include("Hexen_linedefs.cfg", "stairs");

  204
  {
    title = "Stairs Generic Build";
    id = "Generic_Stairs";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "stair_speeds";
      default = 4;
    }
    arg2
    {
      title = "Step Height";
    }
    arg3
    {
      title = "Options";
      type = 12;
      enum
      {
        1 = "Upwards";
        2 = "Ignore Floor Texture";
      }
    }
    arg4
    {
      title = "Reset Delay";
      type = 11;
      enum = "reset_tics";
    }
  }

  217
  {
    title = "Stairs Build up (Doom mode)";
    id = "Stairs_BuildUpDoom";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "stair_speeds";
      default = 4;
    }
    arg2
    {
      title = "Step Height";
    }
    arg3
    {
      title = "Build Step Delay";
      type = 11;
      enum = "delay_tics";
      default = 35;
    }
    arg4
    {
      title = "Reset Delay";
      type = 11;
      enum = "reset_tics";
    }
  }
}

pillar
{
  include("Hexen_linedefs.cfg", "pillar");

  94	// Pillar_BuildAndCrush
  {
    arg3
    {
      title = "Crush Damage";
      default = 100;
    }
    arg4
    {
      title = "Crush Mode";
      type = 11;
      enum = "crush_mode";
    }
  }
}

forcefield
{
  title = "Forcefield";

  33
  {
    title = "Forcefield Set";
    id = "ForceField";
    requiresactivation = false;
  }

  34
  {
    title = "Forcefield Remove";
    id = "ClearForceField";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
  }
}

ceiling
{
  include("Hexen_linedefs.cfg", "ceiling");

  69 = null; // Ceiling_MoveToValueTimes8

  38
  {
    title = "Ceiling Waggle";
    id = "Ceiling_Waggle";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Amplitude (in 1/8 mu.)";
      default = 128;
    }
    arg2
    {
      title = "Frequency";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg3
    {
      title = "Phase Offset (0-63)";
    }
    arg4
    {
      title = "Duration";
      type = 11;
      enum = "delay_seconds";
      default = 5;
    }
  }

  42	// Ceiling Crusher Start
  {
    arg3
    {
      title = "Crush Mode";
      type = 11;
      enum = "crush_mode";
    }
  }

  43	// Ceiling Crush Once
  {
    arg3
    {
      title = "Crush Mode";
      type = 11;
      enum = "crush_mode";
    }
  }

  97
  {
    title = "Ceiling Lower And Crush Dist";
    id = "Ceiling_LowerAndCrushDist";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }

    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;

    }

    arg2
    {
      title = "Crush Damage";
      default = 100;
    }

    arg3
    {
      title = "Lip";
    }

    arg4
    {
      title = "Crush Mode";
      type = 11;
      enum = "crush_mode";
    }
  }

  104
  {
    title = "Ceiling Crush And Raise Dist";
    id = "Ceiling_CrushAndRaiseSilentDist";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }

    arg1
    {
      title = "Lip";
    }

    arg2
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }

    arg3
    {
      title = "Crush Damage";
      default = 100;
    }

    arg4
    {
      title = "Crush Mode";
      type = 11;
      enum = "crush_mode";
    }
  }

  45	// Ceiling Crush Once and Open
  {
    arg3
    {
      title = "Crush Mode";
      type = 11;
      enum = "crush_mode";
    }
  }

  47
  {
    title = "Ceiling Move to Value";
    id = "Ceiling_MoveToValue";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Target Height";
    }
  }

  169
  {
    title = "Ceiling Generic Crush (Hexen mode)";
    id = "Generic_Crusher2";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Lower Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Raise Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg3
    {
      title = "Silent";
      type = 11;
      enum = "noyes";
    }
    arg4
    {
      title = "Crush Damage";
      default = 100;
    }
  }

  192
  {
    title = "Ceiling Lower to Highest Floor";
    id = "Ceiling_LowerToHighestFloor";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
  }

  193
  {
    title = "Ceiling Lower Instantly by Value * 8";
    id = "Ceiling_LowerInstant";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg2
    {
      title = "Lower by (* 8)";
    }
  }

  194
  {
    title = "Ceiling Raise Instantly by Value * 8";
    id = "Ceiling_RaiseInstant";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg2
    {
      title = "Raise by (* 8)";
    }
  }

  195
  {
    title = "Ceiling Crush Once and Open A";
    id = "Ceiling_CrushRaiseAndStayA";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Lower Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Raise Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg3
    {
      title = "Crush Damage";
      default = 100;
    }
    arg4
    {
      title = "Crush Mode";
      type = 11;
      enum = "crush_mode";
    }

  }

  196
  {
    title = "Ceiling Crush Start A";
    id = "Ceiling_CrushAndRaiseA";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Lower Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Raise Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg3
    {
      title = "Crush Damage";
      default = 100;
    }
    arg4
    {
      title = "Crush Mode";
      type = 11;
      enum = "crush_mode";
    }
  }

  197
  {
    title = "Ceiling Crush Start A (silent)";
    id = "Ceiling_CrushAndRaiseSilentA";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Lower Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Raise Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg3
    {
      title = "Crush Damage";
      default = 100;
    }
    arg4
    {
      title = "Crush Mode";
      type = 11;
      enum = "crush_mode";
    }
  }

  201
  {
    title = "Ceiling Generic Change";
    id = "Generic_Ceiling";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Movement Amount";
    }
    arg3
    {
      title = "Target";
      type = 11;
      enum
      {
        0 = "Move by Movement Amount";
        1 = "Highest neighboring ceiling";
        2 = "Lowest neighboring ceiling";
        3 = "Nearest neighboring ceiling";
        4 = "Highest neighboring floor";
        5 = "Sector floor";
        6 = "Move by the height of sector's shortest upper texture";
      }
    }
    arg4
    {
      title = "Flags";
      type = 26;
      enum
      {
        0 = "Don't copy anything";
        1 = "Copy ceiling texture, remove sector special";
        2 = "Copy ceiling texture";
        3 = "Copy ceiling texture and special";
      }
      flags
      {
        4 = "Use numeric model if set, trigger model if not";
        8 = "Raise ceiling if set, lower it if not";
        16 = "Inflict crushing damage";
      }
    }
  }

  205
  {
    title = "Ceiling Generic Crush (Doom mode)";
    id = "Generic_Crusher";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Lowering Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Raising Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg3
    {
      title = "Silent";
      type = 11;
      enum = "noyes";
    }
    arg4
    {
      title = "Crush Damage";
      default = 100;
    }
  }

  252
  {
    title = "Ceiling Raise to Nearest Ceiling";
    id = "Ceiling_RaiseToNearest";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
  }

  253
  {
    title = "Ceiling Lower to Lowest Ceiling";
    id = "Ceiling_LowerToLowest";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
  }

  254
  {
    title = "Ceiling Lower to Floor";
    id = "Ceiling_LowerToFloor";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
  }

  255
  {
    title = "Ceiling Crush Once and Open A (silent)";
    id = "Ceiling_CrushRaiseAndStaySilA";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Lowering Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Raising Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg3
    {
      title = "Crush Damage";
      default = 100;
    }
    arg4
    {
      title = "Crush Mode";
      type = 11;
      enum = "crush_mode";
    }
  }
}

transfer
{
  title = "Transfer";

  209
  {
    title = "Transfer Heights";
    id = "Transfer_Heights";
    requiresactivation = false;

    errorchecker
    {
      ignoreuppertexture = true;
      ignoremiddletexture = true;
      ignorelowertexture = true;
    }

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
  }
}

platform
{
  include("Hexen_linedefs.cfg", "platform");

  172
  {
    title = "Platform Raise to Nearest Wait Lower";
    id = "Plat_UpNearestWaitDownStay";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Reverse Delay (tics)";
      type = 11;
      enum = "delay_tics";
      default = 35;
    }
  }

  203
  {
    title = "Platform Generic Change";
    id = "Generic_Lift";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Reverse Delay (octics)";
      type = 11;
      enum = "delay_octics";
      default = 24;
    }
    arg3
    {
      title = "Type";
      type = 11;
      enum = "generic_lift_types";
    }
    arg4
    {
      title = "Movement Amount";
    }
  }

  206
  {
    title = "Platform Lower Wait Raise (lip)";
    id = "Plat_DownWaitUpStayLip";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Reverse Delay (tics)";
      type = 11;
      enum = "delay_tics";
      default = 35;
    }
    arg3
    {
      title = "Lip Amount";
    }
    arg4
    {
      title = "Sound Type";
      type = 11;
      enum = "plat_sound";
    }
  }

  207
  {
    title = "Platform Perpetual Move (lip)";
    id = "Plat_PerpetualRaiseLip";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Reverse Delay (tics)";
      type = 11;
      enum = "delay_tics";
      default = 35;
    }
    arg3
    {
      title = "Lip Amount";
    }
  }

  228
  {
    title = "Platform Raise Tx0";
    id = "Plat_RaiseAndStayTx0";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Lockout Mode";
      type = 11;
      enum
      {
        0 = "Lockout in Heretic only";
        1 = "Don't lockout";
        2 = "Lockout in all games";
      }
    }
  }

  230
  {
    title = "Platform Raise by Value Tx (* 8)";
    id = "Plat_UpByValueStayTx";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
    arg2
    {
      title = "Raise by (* 8)";
    }
  }

  231
  {
    title = "Platform Toggle Ceiling";
    id = "Plat_ToggleCeiling";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
  }
}

teleport
{
  include("Hexen_linedefs.cfg", "teleport");

  39
  {
    title = "Teleport to Pain State (silent)";
    id = "Teleport_ZombieChanger";

    arg0
    {
      title = "Target Teleport Dest. Tag";
      type = 14;
      targetclasses = "TeleportDest,TeleportDest2,TeleportDest3";
    }
    arg1
    {
      title = "Target Sector Tag";
      type = 13;
    }
  }

  70	// Teleport
  {
    arg2
    {
      title = "Source Fog";
      type = 11;
      enum = "yesno";
    }
  }

  71	// Teleport_NoFog
  {
    arg1
    {
      title = "Teleport Dest. angle usage";
      type = 11;
      enum
      {
        0 = "Don't change angle and velocity (Hexen-compat)";
        1 = "Always use the teleport exit's angle (Strife-compat)";
        2 = "Adjust relatively to the teleport exit's angle, but in the wrong direction (Boom-compat)";
        3 = "Adjust relatively to the teleport exit's angle (Boom-fixed)";
      }
    }
    arg3
    {
      title = "Keep rel. Height";
      type = 11;
      enum = "noyes";
    }
  }

  74	// Teleport_NewMap
  {
    arg2
    {
      title = "Keep Orientation";
      type = 11;
      enum = "noyes";
    }
  }

  76
  {
    title = "Teleport Other";
    id = "TeleportOther";

    arg0
    {
      title = "Thing Tag";
      type = 14;
    }
    arg1
    {
      title = "Target MapSpot Tag";
      type = 14;
      targetclasses = "MapSpot,MapSpotGravity";
    }
    arg2
    {
      title = "Fog";
      type = 11;
      enum = "noyes";
    }
  }

  77
  {
    title = "Teleport Group";
    id = "TeleportGroup";

    arg0
    {
      title = "Thing Tag";
      tooltip = "The TID of the actor(s) to teleport.\nIf 0, teleports the activator only.";
      type = 14;
    }
    arg1
    {
      title = "Source Teleport Dest. Tag";
      type = 14;
      targetclasses = "TeleportDest,TeleportDest2,TeleportDest3";
    }
    arg2
    {
      title = "Target Teleport Dest. Tag";
      type = 14;
      targetclasses = "TeleportDest,TeleportDest2,TeleportDest3";
    }
    arg3
    {
      title = "Move Source";
      type = 11;
      enum = "noyes";
    }
    arg4
    {
      title = "Fog";
      type = 11;
      enum = "noyes";
    }
  }

  78
  {
    title = "Teleport in Sector";
    id = "TeleportInSector";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Source Tag";
      tooltip = "The spot relative to which to teleport.";
      type = 14;
    }
    arg2
    {
      title = "Target Teleport Dest. Tag";
      type = 14;
      targetclasses = "TeleportDest,TeleportDest2,TeleportDest3";
    }
    arg3
    {
      title = "Fog";
      type = 11;
      enum = "noyes";
    }
    arg4
    {
      title = "Group Thing Tag";
      tooltip = "The TID of the thing(s) to teleport.\nIf 0, teleports all actors in the sector";
      type = 14;
    }
  }

  154
  {
    title = "Teleport (no Stop)";
    id = "Teleport_NoStop";

    arg0
    {
      title = "Target Teleport Dest. Tag";
      type = 14;
      targetclasses = "TeleportDest,TeleportDest2,TeleportDest3";
    }
    arg1
    {
      title = "Target Sector Tag";
      type = 13;
    }
    arg2
    {
      title = "Fog";
      type = 11;
      enum = "yesno";
    }
  }

  215
  {
    title = "Teleport to Line";
    id = "Teleport_Line";

    arg1
    {
      title = "Target Line Tag";
      type = 15;
    }
    arg2
    {
      title = "Reverse Angle";
      type = 11;
      enum = "noyes";
    }
  }
}

thing
{
  include("Hexen_linedefs.cfg", "thing");

  17
  {
    title = "Thing Raise";
    id = "Thing_Raise";

    arg0
    {
      title = "Thing Tag";
      type = 14;
    }
  }

  19
  {
    title = "Thing Stop";
    id = "Thing_Stop";

    arg0
    {
      title = "Thing Tag";
      type = 14;
    }
  }

  72 // ThrustThing
  {
    arg3
    {
      title = "Target Thing Tag";
      type = 14;
    }
  }

  73 // DamageThing
  {
    arg1
    {
      title = "Death";
      type = 11;
      enum = "death_types";
    }
  }

  119
  {
    title = "Damage Thing by Tag";
    id = "Thing_Damage";

    arg0
    {
      title = "Thing Tag";
      type = 14;
    }
    arg1
    {
      title = "Damage";
      default = 100;
    }
    arg2
    {
      title = "Death";
      type = 11;
      enum = "death_types";
    }
  }

  125
  {
    title = "Move Thing";
    id = "Thing_Move";

    arg0
    {
      title = "Thing Tag";
      type = 14;
    }
    arg1
    {
      title = "Target Thing Tag";
      type = 14;
    }
    arg2
    {
      title = "Fog";
      type = 11;
      enum = "yesno";
    }
  }

  127
  {
    title = "Thing Set Special";
    id = "Thing_SetSpecial";

    arg0
    {
      title = "Thing Tag";
      type = 14;
    }
    arg1
    {
      title = "Special";
      type = 4;
    }
    arg2
    {
      title = "Arg 1";
    }
    arg3
    {
      title = "Arg 2";
    }
    arg4
    {
      title = "Arg 3";
    }
  }

  128
  {
    title = "Thing Thrust Z";
    id = "ThrustThingZ";

    arg0
    {
      title = "Thing Tag";
      type = 14;
    }
    arg1
    {
      title = "Force";
    }
    arg2
    {
      title = "Down/Up";
      type = 11;
      enum = "updown";
    }
    arg3
    {
      title = "Set/Add";
      type = 11;
      enum = "setadd";
    }
  }

  135	// Thing_Spawn
  {
    arg3
    {
      title = "New Thing Tag";
      type = 14;
    }
  }

  137	// Thing_SpawnNoFog
  {
    arg3
    {
      title = "New Thing Tag";
      type = 14;
    }
  }

  139
  {
    title = "Spawn Thing Facing";
    id = "Thing_SpawnFacing";

    arg0
    {
      title = "Mapspot Tag";
      type = 14;
      targetclasses = "MapSpot,MapSpotGravity";
    }
    arg1
    {
      title = "Spawn Thing";
      type = 11;
      enum = "spawnthing";
    }
    arg2
    {
      title = "Fog";
      type = 11;
      enum = "yesno";
    }
    arg3
    {
      title = "New Thing Tag";
      type = 14;
    }
  }

  175
  {
    title = "Spawn Projectile (Intercept)";
    id = "Thing_ProjectileIntercept";

    arg0
    {
      title = "Mapspot Tag";
      type = 14;
      targetclasses = "MapSpot,MapSpotGravity";
    }
    arg1
    {
      title = "Projectile Type";
      type = 11;
      enum = "spawn_projectile";
    }
    arg2
    {
      title = "Speed";
    }
    arg3
    {
      title = "Target Thing Tag";
      type = 14;
    }
    arg4
    {
      title = "New Thing Tag";
      type = 14;
    }
  }

  176
  {
    title = "Change Thing Tag";
    id = "Thing_ChangeTID";

    arg0
    {
      title = "Old Thing Tag";
      type = 14;
    }
    arg1
    {
      title = "New Thing Tag";
      type = 14;
    }
  }

  177
  {
    title = "Thing Hate";
    id = "Thing_Hate";

    arg0
    {
      title = "Hater Tag";
      type = 14;
    }
    arg1
    {
      title = "Hatee Tag";
      type = 14;
    }
  }

  178
  {
    title = "Spawn Aimed Projectile";
    id = "Thing_ProjectileAimed";

    arg0
    {
      title = "Mapspot Tag";
      type = 14;
      targetclasses = "MapSpot,MapSpotGravity";
    }
    arg1
    {
      title = "Projectile Type";
      type = 11;
      enum = "spawn_projectile";
    }
    arg2
    {
      title = "Speed";
    }
    arg3
    {
      title = "Target Thing Tag";
      type = 14;
    }
    arg4
    {
      title = "New Thing Tag";
      type = 14;
    }
  }

  248
  {
    title = "Heal Thing";
    id = "HealThing";

    arg0
    {
      title = "Heal Amount";
    }
  }
}

end
{
  include("Hexen_linedefs.cfg", "end");

  243
  {
    title = "End Normal";
    id = "Exit_Normal";

    arg0
    {
      title = "Position";
    }
  }

  244
  {
    title = "End Secret";
    id = "Exit_Secret";

    arg0
    {
      title = "Position";
    }
  }
}

scroll
{
  title = "Scroll";

  52
  {
    title = "Scroll Wall";
    id = "Scroll_Wall";
    requiresactivation = false;

    arg0
    {
      title = "Line Tag";
      type = 15;
    }
    arg1
    {
      title = "Horizontal speed";
    }
    arg2
    {
      title = "Vertical speed";
    }
    arg3
    {
      title = "Side";
      type = 11;
      enum = "frontback";
    }
    arg4
    {
      title = "Flags";
      type = 12;
      enum
      {
        1 = "Scroll upper";
        2 = "Scroll middle";
        4 = "Scroll lower";
      }
    }
  }

  222
  {
    title = "Scroll Texture Model";
    id = "Scroll_Texture_Model";
    requiresactivation = false;

    arg1
    {
      title = "Options";
      type = 12;
      enum
      {
        1 = "Displacement";
        2 = "Accelerative";
      }
    }
  }

  223
  {
    title = "Scroll Floor";
    id = "Scroll_Floor";
    requiresactivation = false;

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Options";
      type = 12;
      enum
      {
        1 = "Displacement";
        2 = "Accelerative";
        4 = "Scroll by linedef dx/dy";
      }
    }
    arg2
    {
      title = "Scroll";
      type = 11;
      enum
      {
        0 = "Texture only";
        1 = "Things only";
        2 = "Both";
      }
    }
    arg3
    {
      title = "Horizontal Speed";
      default = 128;
      type = 11;
      enum = "sector_scroll_speeds_x";
    }
    arg4
    {
      title = "Vertical Speed";
      default = 128;
      type = 11;
      enum = "sector_scroll_speeds_y";
    }
  }

  224
  {
    title = "Scroll Ceiling";
    id = "Scroll_Ceiling";
    requiresactivation = false;

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Options";
      type = 12;
      enum
      {
        1 = "Displacement";
        2 = "Accelerative";
        4 = "Scroll by linedef dx/dy";
      }
    }
    arg3
    {
      title = "Horizontal Speed";
      default = 128;
      type = 11;
      enum = "sector_scroll_speeds_x";
    }
    arg4
    {
      title = "Vertical Speed";
      default = 128;
      type = 11;
      enum = "sector_scroll_speeds_y";
    }
  }
}

light
{
  include("Hexen_linedefs.cfg", "light");

  109 = NULL;

  117
  {
    title = "Light Stop";
    id = "Light_Stop";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
  }

  232
  {
    title = "Light Strobe (Doom mode)";
    id = "Light_StrobeDoom";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Brightest Duration (tics)";
      type = 11;
      enum = "delay_tics";
      default = 35;
    }
    arg2
    {
      title = "Darkest Duration (tics)";
      type = 11;
      enum = "delay_tics";
      default = 35;
    }
  }

  233
  {
    title = "Light Change to Darkest Neightbour";
    id = "Light_MinNeighbor";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
  }

  234
  {
    title = "Light Change to Brightest Neightbour";
    id = "Light_MaxNeighbor";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
  }
}

earthquake
{
  include("Hexen_linedefs.cfg", "earthquake");
}

sector
{
  title = "Sector";

  54
  {
    title = "Sector Change Flags";
    id = "Sector_ChangeFlags";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Set Flags";
      type = 12;
      enum = "sector_flags";
    }
    arg2
    {
      title = "Clear Flags";
      type = 12;
      enum = "sector_flags";
    }
  }

  58
  {
    title = "Sector Copy Scroller";
    id = "Sector_CopyScroller";
    requiresactivation = false;

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Scroller Type";
      type = 12;
      enum
      {
        1 = "Copy ceiling scroller";
        2 = "Copy floor scroller";
        4 = "Copy carrying effect";
      }
    }
  }

  185
  {
    title = "Sector Rotate Flat";
    id = "Sector_SetRotation";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Floor Angle";
      type = 8;
    }
    arg2
    {
      title = "Ceiling Angle";
      type = 8;
    }
  }

  186
  {
    title = "Sector Ceiling Panning";
    id = "Sector_SetCeilingPanning";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Horizontal Integral";
    }
    arg2
    {
      title = "Horizontal Fractional";
    }
    arg3
    {
      title = "Vertical Integral";
    }
    arg4
    {
      title = "Vertical Fractional";
    }
  }

  187
  {
    title = "Sector Floor Panning";
    id = "Sector_SetFloorPanning";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Horizontal Integral";
    }
    arg2
    {
      title = "Horizontal Fractional";
    }
    arg3
    {
      title = "Vertical Integral";
    }
    arg4
    {
      title = "Vertical Fractional";
    }
  }

  188
  {
    title = "Sector Ceiling Scale";
    id = "Sector_SetCeilingScale";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Horizontal Integral";
    }
    arg2
    {
      title = "Horizontal Fractional";
    }
    arg3
    {
      title = "Vertical Integral";
    }
    arg4
    {
      title = "Vertical Fractional";
    }
  }

  189
  {
    title = "Sector Floor Scale";
    id = "Sector_SetFloorScale";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Horizontal Integral";
    }
    arg2
    {
      title = "Horizontal Fractional";
    }
    arg3
    {
      title = "Vertical Integral";
    }
    arg4
    {
      title = "Vertical Fractional";
    }
  }

  214
  {
    title = "Sector Damage";
    id = "Sector_SetDamage";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Damage Amount";
      default = 15;
    }
    arg2
    {
      title = "Death";
      type = 11;
      enum = "death_types";
    }
  }

  216
  {
    title = "Sector Gravity";
    id = "Sector_SetGravity";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Gravity Integral";
    }
    arg2
    {
      title = "Gravity Fractional";
    }
  }

  218
  {
    title = "Sector Wind";
    id = "Sector_SetWind";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Wind Strength";
    }
    arg2
    {
      title = "Wind Angle";
      type = 22;
    }
    arg3
    {
      title = "Use Line Vector";
      type = 11;
      enum = "noyes";
    }
  }

  219
  {
    title = "Sector Friction";
    id = "Sector_SetFriction";
    requiresactivation = false;

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Friction Amount";
      type = 11;
      enum
      {
        0 = "Use Line Length";
        1 = "Very Sludgy";
        50 = "Sludgy";
        100 = "Normal";
        200 = "Icy";
        255 = "Very Icy";
      }
    }
  }

  220
  {
    title = "Sector Current";
    id = "Sector_SetCurrent";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Current Strength";
    }
    arg2
    {
      title = "Current Angle";
      type = 22;
    }
    arg3
    {
      title = "Use Line Vector";
      type = 11;
      enum = "noyes";
    }
  }
}

alert
{
  title = "Alert";

  173
  {
    title = "Alert monsters";
    id = "NoiseAlert";
  }
}

point
{
  title = "Point";

  227
  {
    title = "Point Pusher/Puller Set Force";
    id = "PointPush_SetForce";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Thing Tag";
      type = 14;
    }
    arg2
    {
      title = "Strength";
    }
    arg3
    {
      title = "Use Line Vector";
      type = 11;
      enum = "noyes";
    }
  }
}

elevator
{
  title = "Elevator";

  245
  {
    title = "Elevator Raise to Nearest Floor";
    id = "Elevator_RaiseToNearest";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }

    errorchecker
    {
      floorraisetonexthigher = true;
    }
  }

  246
  {
    title = "Elevator Move to Activated Floor";
    id = "Elevator_MoveToFloor";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
  }

  247
  {
    title = "Elevator Lower to Nearest Floor";
    id = "Elevator_LowerToNearest";

    arg0
    {
      title = "Sector Tag";
      type = 13;
    }
    arg1
    {
      title = "Movement Speed";
      type = 11;
      enum = "plat_speeds";
      default = 16;
    }
  }
}

colormap
{
  title = "Colormap";

  2701
  {
    title = "Map Set Colormap";
    id = "Map_SetColormap";

    arg0
    {
      title = "(switch to string)";
      str = true;
      titlestr = "Colormap";
    }
  }

  2702
  {
    title = "Sector Set Colormap";
    id = "Sector_SetColormap";

    arg0
    {
      title = "(switch to string)";
      str = true;
      titlestr = "Colormap";
    }

    arg1
    {
      title = "Sector Tag";
      type = 13;
    }
  }
}
