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
Kp
b316afc30f
Clear exploding walls during init
2018-08-12 21:08:07 +00:00
Kp
30a83eec41
Eliminate some uses of valptridx::operator->
2018-06-24 05:06:15 +00:00
Kp
0c3e99f14c
Split side uses based on shared vs unique
2018-06-24 05:06:15 +00:00
Kp
93789f0666
Use valptridx for Dl_indices
2018-06-06 04:53:45 +00:00
Kp
e08ea9f29a
Clear weapon hitobj list on level load
2018-03-31 21:53:01 +00:00
Kp
29c6d63daa
Move flickering light state into structure
2018-03-31 21:53:01 +00:00