Kp
0eaabdb2fb
Move N_polygon_models into d_level_shared_polygon_model_state
2020-08-24 01:31:28 +00:00
Kp
de4efc4f46
Qualify more uses of shared_segment members
2020-08-24 01:31:28 +00:00
Kp
038c6aef4d
Move d_level_unique_object_state to a separate header
...
This is required to untangle the cross-inclusion of object.h and
morph.h.
2020-08-10 03:45:14 +00:00
Kp
7ad8d8c28b
Rename object::movement_type to movement_source
...
gcc and clang disagree about how to disambiguate when an identifier is
both a typename and a member. Avoid the disagreement by renaming the
member.
2020-08-10 03:45:13 +00:00
Kp
5245b1c4a3
Rename object::control_type to control_source
...
gcc and clang disagree about how to disambiguate when an identifier is
both a typename and a member. Avoid the disagreement by renaming the
member.
Reported-by: Kreeblah <https://github.com/dxx-rebirth/dxx-rebirth/issues/532 >
2020-08-10 03:45:13 +00:00
Kp
1c42f69ff2
Use enum class for object_signature_t
2020-08-10 03:45:13 +00:00
Kp
38cddb0289
Use enum class for object movement_type
2020-08-10 03:45:13 +00:00
Kp
9e2543ecbf
Use enum class for object control_type
2020-08-06 03:47:56 +00:00
Kp
b948da1a1f
Replace uses of enumerate with zip where appropriate
...
In some places, enumerate was used only to get an index value because
zip was not available. Switch those sites to use zip directly.
2020-07-05 23:34:33 +00:00
Kp
0a1f2ad55e
Tighten type for trigger action values
2020-07-05 23:34:32 +00:00
Kp
a4f2edfaa9
Move LevelSharedVertexState into d_level_shared_segment_state
2020-05-17 23:35:25 +00:00
Kp
399aee8d49
Use dedicated type for object render_type
...
Check conversions. On invalid input, coerce to RT_NONE and print a
warning.
2020-05-02 21:18:43 +00:00
Kp
53761500f1
Qualify uses of std::array
2020-05-02 21:18:42 +00:00
Kp
714c13b3c1
Move WallAnims into d_game_shared_state
2020-04-04 19:30:22 +00:00
Kp
c93e7f44c3
Move object::last_pos to LevelUniqueObjectState
...
Only the console player's last position needs to be remembered across
frames. Copy the console player's position out before processsing
object movement. For all other objects, retain a temporary for use by
the position recovery code.
2019-12-22 05:34:08 +00:00
Kp
c3265f6b90
Convert segment &
to susegment
where possible
2019-12-22 05:34:08 +00:00
Kp
9f0b455f6d
Move Reactor_strength to d_level_shared_control_center_state
2019-08-15 01:34:22 +00:00
Kp
9689a7f7d2
Move Base_control_center_explosion_time to d_level_shared_control_center_state
2019-08-15 01:34:22 +00:00
Kp
4b0f797d7e
Move Secret_return_orient to d_level_shared_segment_state
2019-08-06 02:59:41 +00:00
Kp
ad16d90dd5
Move Secret_return_segment to d_level_shared_segment_state
2019-08-06 02:59:41 +00:00
Kp
49fd1f358e
Eliminate unnecessary Gamesave_current_filename
...
It is only read in contexts where the initializing filename is still
available, so pass the filename down instead of copying it to a global.
2019-08-06 02:59:40 +00:00
Kp
d413a5da13
Initialize powerup flags at level load
2019-07-07 22:00:02 +00:00
Kp
01eb585c7a
Set matcen_creator on loaded robots
...
This avoids a Valgrind warning for use of an uninitialized field.
2019-07-07 22:00:02 +00:00
Kp
bfeca84bb8
Change object::signature to be a generation counter
...
This removes the need to walk all objects when creating a new one, since
each object can have a private generation counter, unaware of other
objects. For compatibility with demos, mix in the object's index when
writing the signature value.
2019-07-07 22:00:02 +00:00
Kp
2243cd7f58
Use xrange for loops with zero start and constant numerical end
...
s/for\s*(\s*\(\w\+\)\s\+\(\w\+\)\s*=\s*0\+u\?\s*;\s*\2\s*\(!=\|<\)\s*\([0-9]\+\)u\?\s*;\s*\(++\s*\2\|\2\s*++\s*\))/range_for (const \1 \2, xrange(\4u))/
2019-05-04 18:27:36 +00:00
Kp
3aed2a1719
Move Num_robot_centers to d_level_shared_robotcenter_state
2019-03-12 04:01:07 +00:00
Kp
1008ab397e
Move Objects to d_level_unique_object_state
2019-03-03 00:31:08 +00:00
Kp
919580eaa9
Move RobotCenters to d_level_shared_robotcenter_state
2019-02-02 18:36:39 +00:00
Kp
12c06e59aa
Move N_robot_types into LevelSharedRobotInfoState
2018-12-30 00:43:59 +00:00
Kp
e84a65edc6
Move Robot_info into LevelSharedRobotInfoState
2018-12-30 00:43:59 +00:00
Kp
03fe3a6696
Move Polygon_models into LevelSharedPolygonModelState
2018-12-30 00:43:59 +00:00
Kp
6ee28c3fe0
Move Triggers to d_level_unique_trigger_state
2018-12-30 00:43:58 +00:00
Kp
4b125af449
Move ActiveDoors to d_level_unique_active_door_state
2018-12-30 00:43:58 +00:00
Kp
9be3c8e2e8
Move Walls into d_level_unique_wall_state
2018-12-30 00:43:58 +00:00
Kp
b3cd7588ef
Move Delta_lights into d_level_shared_destructible_light_state
2018-12-30 00:43:58 +00:00
Kp
46644b4e91
Move Dl_indices into d_level_shared_destructible_light_state
2018-12-30 00:43:58 +00:00
Kp
040de5b10e
Rename ObjectState to LevelUniqueObjectState for consistency
2018-12-30 00:43:57 +00:00
Kp
1a5844e218
Move Vertices out of global scope
2018-12-30 00:43:57 +00:00
Kp
65225680c1
Move Num_vertices into d_level_shared_vertex_state
2018-12-30 00:43:57 +00:00
Kp
aa9e6da297
Pass Dl_indices as context
2018-12-30 00:43:57 +00:00
Kp
992f35feb8
Expand Num_walls to Walls.get_count()
...
This will simplify propagating use of Walls.
2018-12-13 02:31:39 +00:00
Kp
9745236c7e
Expand Num_triggers to Triggers.get_count()
...
This will simplify propagating use of Triggers.
2018-12-13 02:31:39 +00:00
Kp
706a704c6d
Move unique_side to unique_segment
2018-12-13 02:31:38 +00:00
Kp
a0ed5cb283
Pass Vclip as context
2018-10-21 00:24:07 +00:00
Kp
991f72a775
Add fwd-vclip.h
2018-10-21 00:24:07 +00:00
Kp
e1d1cbb0ed
Pass context to set_powerup_id
2018-10-08 03:58:48 +00:00
Kp
e9c9943470
Pass context to update_object_seg
2018-10-08 03:58:48 +00:00
Kp
01512015a8
Move Num_segments to new d_level_shared_segment_state
2018-09-19 02:13:29 +00:00
Kp
a8d5f83770
Remove reset_walls
...
Nothing should access the unassigned walls, so there is no need to clear
them.
2018-08-12 21:08:07 +00:00
Kp
36ada21c0c
Fold exploding walls into regular walls
2018-08-12 21:08:07 +00:00