dxx-rebirth/similar
Kp a98ddfbe9b Tighten type for trigger behavior flags
Use an enum class to prevent implicit conversion between trigger
behavior flags and other integers.  Fix up various resulting breaks,
which look like bugs:

- Descent 2 editor mode could modify trigger::flags, but used
  TRIGGER_FLAG_* values, which specify the actions for a Descent 1
  trigger when it executes, not the behavior properties for a trigger.
- Adding a trigger set its flags to 0, then cleared all flags except
  TRIGGER_ON.  Since the flags were just set to 0, the mask operation is
  useless.  Remove it.
- trigger_turn_all_ON cleared all flags except TRIGGER_ON.  This seems
  to be completely wrong.  Change it to remove
  trigger_behavior_flags::disabled.  Descent 1 has no (working) support
  for disabling triggers, so make trigger_turn_all_ON exclusive to
  Descent 2.
- wall_restore_all would enable TRIGGER_ON in both games.  Descent 1
  never reads TRIGGER_ON.  Descent 2 uses this field for trigger
  behavior flags, and TRIGGER_ON is not a behavior flag.
  - For Descent 1 builds, remove the modification of the field.
  - For Descent 2 builds, change it to clear
    trigger_behavior_flags::disabled.
2020-07-05 23:34:32 +00:00
..
2d Delegate bald_guy_load PCX to SDL image 2020-05-17 23:35:26 +00:00
3d Qualify uses of std::array 2020-05-02 21:18:42 +00:00
arch Use stack arrays for polygon texture mapping temporaries 2020-06-10 02:25:33 +00:00
editor Tighten type for trigger behavior flags 2020-07-05 23:34:32 +00:00
main Tighten type for trigger behavior flags 2020-07-05 23:34:32 +00:00
misc Remove static inline declarations from fwd-partial_range.h 2020-06-10 02:25:32 +00:00