Kp
90879d0796
Pass std::span to con_scrub_markup
2022-10-02 19:51:36 +00:00
Kp
3379078f04
Pass std::span to PHYSFSX_puts
2022-10-02 19:51:36 +00:00
Kp
f3fae646f9
Pass std::span to warning_puts
2022-10-02 19:51:36 +00:00
Kp
53c1550254
Remove special case for 0 argument err_printf
...
Fix the remaining sites that were redirected by this. Remove the
redirection macro.
2022-10-02 19:51:36 +00:00
Kp
0409e75278
Pass std::span to err_puts
2022-10-02 19:51:36 +00:00
Kp
e0123dead5
Remove special case for 0 argument PHYSFSX_printf
...
Fix the remaining sites that were redirected by this. Remove the
redirection macro.
2022-10-02 19:51:36 +00:00
Kp
01c07156bd
Remove special case for 0 argument HUD_init_message
...
Fix the one remaining site that was redirected by this. Remove the
redirection macro, so that the literal and variadic forms can have
differing types for their string field.
2022-10-02 19:51:36 +00:00
Kp
f3d4dff941
Use enum class for clipping_code
...
Adjust code_window_point to use the same masks as clipping_code.
Previously, it had top and bottom swapped. However, since its output
was only ever compared for equality to 0, this transposition should not
affect the observable behavior.
2022-10-02 19:51:35 +00:00
Kp
1808b6badd
Use enum class for projection_flag
2022-10-02 19:51:35 +00:00
Kp
e499dd55f7
Use std::span for piggy_write_pigfile argument filename
2022-10-02 19:51:35 +00:00
Kp
aaac0e69fa
Use std::span for piggy_new_pigfile argument pigname
2022-10-02 19:51:35 +00:00
Kp
1101b02f84
Use std::span for PlayMovie argument subtitles
2022-10-02 19:51:35 +00:00
Kp
73bcfb6d63
Simplify ogl_ubitblt_i GL array initialization
...
- Avoid zero-filling arrays that can be directly initialized with real
values.
- Hold color_array const so it can be stored statically.
2022-10-02 19:51:35 +00:00
Kp
eca189e8aa
Use enum class for SoundOffset
...
Change piggy_register_sound to take the sound offset as a parameter,
rather than assuming the caller will set SoundOffset accordingly.
Remove a spurious sound reset in piggy_register_bitmap. Based on the
duplicated comment, this was probably incorrectly copied from
piggy_register_sound, where it made sense, into piggy_register_bitmap,
where it does not.
2022-10-02 19:51:35 +00:00
Kp
14bf2dc59a
Pass std::span to piggy_register_bitmap
2022-10-02 19:51:35 +00:00
Kp
f0d118ed42
Use std::span for PHYSFSX_fgets
2022-10-02 19:51:35 +00:00
Kp
8fe9b8322d
Check return value of PHYSFSX_fgets
2022-10-02 19:51:35 +00:00
Kp
a55579bb8f
Flatten net_udp call chain for ntstring::copy_out
2022-10-02 19:51:35 +00:00
Kp
9fe23b7dce
Rework loading weapon reorder values
...
- Document the logic for resetting the values to default
- For D1: load the untrusted values directly into an array, instead of
loading them to temporaries and then copying the temporaries to the
array.
- For D2: optimize the read by loading 22 bytes in a single step,
instead of loading single bytes 22 times.
2022-10-02 19:51:35 +00:00
Kp
4fe8d6dcaf
Use std::span for net_udp_prepare_*_game_info
2022-10-02 19:51:35 +00:00
Kp
8c08dcc20f
Merge branch 'refs/pull/633/head' into master
2022-10-02 19:50:49 +00:00
Kp
9a8c49ccbf
Fix OpenGL ES build on SDL1
...
The preceding commit breaks OpenGLES + SDL1 support, by referencing
SDL_GL_* constants that are new in SDL2. Add a preprocessor guard to
skip over the new constants when using SDL1.
Fixes: c90ac3e611
("Fix OpenGL ES build on SDL2.")
2022-10-02 19:50:32 +00:00
Kp
e3faab0899
Use alias template per_player_array for arrays that are MAX_PLAYERS long
...
This removes the need to repeat MAX_PLAYERS in every usage, and prepares
for a future change to use enumerated_array instead of std::array.
2022-09-24 17:47:53 +00:00
Kp
0ed90715b6
Cache operator[] result in render_compare_context_t
2022-09-24 17:47:53 +00:00
Kp
e377ac3caf
Pass std::span to convert_pattern_array
2022-09-24 17:47:53 +00:00
Kp
0cb9ab58b0
Pass std::span to print_pattern_array
2022-09-24 17:47:53 +00:00
Kp
6de5587a06
Pass std::span to nd_read_string
2022-09-24 17:47:53 +00:00
Kp
f91d0c404c
Pass std::span to set_briefing_filename
2022-09-24 17:47:53 +00:00
Kp
9d238eedf8
Pass std::span to callsign_t::copy
2022-09-24 17:47:53 +00:00
Kp
294a78a1aa
Pass std::span to powerup_basic_str
2022-09-24 17:47:53 +00:00
Kp
ea5d0136dc
Pass std::span to msgbox_warning
2022-09-24 17:47:53 +00:00
Kp
6d0a5f5783
Pass std::span to location_value_wrapper::prepare_buffer
2022-09-24 17:47:53 +00:00
Kp
56a68f3c63
Pass std::span to con_force_puts
2022-09-24 17:47:53 +00:00
Kp
27ec8f41ba
Pass std::span to con_add_buffer_line
2022-09-24 17:47:52 +00:00
Kp
ae5e5c699a
Use std::array for console_buffer::line
2022-09-24 17:47:52 +00:00
Kp
b1da47a34b
Compare d1 extra pig in place
...
Instead of creating a copy, modifying the copy, and comparing to it, use
std::span to pass down the maximum allowed length for comparison.
2022-09-24 17:47:52 +00:00
Kp
c464ddeae1
Sanitize control center triggers on load
...
Descent 2: Vertigo level 10 has invalid data in its control center
triggers. Sanitize invalid data at load to avoid problems in
memory-poisoning builds.
2022-09-24 17:47:52 +00:00
Kp
ad7057be87
Add hack for case mismatch in Vertigo robot movies
...
PhysFS 3 is case-sensitive for movie filename lookup. The consequence
of this was first reported in [1]. In [2], @icculus stated this was a
bug in PhysFS 3 that would be fixed in PhysFS 3.0.2. However, [3] and
[4] assert that the fix was never included. The existence of [5] seems
to support this. The original problem was reported in 2019. As of
2022, user @AlumiuN, running PhysFS 3.0.2, is affected. Therefore, this
commit adds code to detect the relevant robot movies and adjust the case
in the Rebirth code.
[1]: https://github.com/dxx-rebirth/dxx-rebirth/issues/379
[2]: https://github.com/dxx-rebirth/dxx-rebirth/issues/379#issuecomment-389400528
[3]: https://github.com/dxx-rebirth/dxx-rebirth/issues/379#issuecomment-462083489
[4]: https://github.com/dxx-rebirth/dxx-rebirth/issues/379#issuecomment-477790175
[5]: https://github.com/dxx-rebirth/dxx-rebirth/issues/644
2022-09-24 17:47:52 +00:00
Kp
9fa97573c4
Move RoboFile to briefing scope
2022-09-24 17:47:52 +00:00
Kp
af8efbf830
Clear GameSounds, SoundOffset in bulk
2022-09-24 17:47:52 +00:00
Kp
9cad6c0eaa
Use std::span for sound_slot samples
2022-09-24 17:47:52 +00:00
Kp
ceef174418
Cache strlen call result
2022-09-24 17:47:52 +00:00
Kp
5eb41816f3
Use std::span for CREDITS_FILE
2022-09-24 17:47:52 +00:00
Kp
a79ed84112
Use std::span in location_wrapper
2022-09-24 17:47:52 +00:00
Kp
e4e8259253
Reduce scope of callback_handler newpath
...
If select_file_recursive is not called again, then the handler returns
without reading newpath. Skip defining it if it will not be read.
2022-09-24 17:47:52 +00:00
Kp
a48e6ab56b
Pass std::span to _g3_draw_tmap
2022-09-24 17:47:52 +00:00
Kp
ad8325b63c
Pass std::span to _g3_draw_tmap_2
2022-09-24 17:47:52 +00:00
Kp
491d23e2d9
Pass std::span to _g3_draw_poly
2022-09-24 17:47:52 +00:00
Kp
97f0c5a6d0
Pass std::span to decode_data
2022-09-24 17:47:52 +00:00
Kp
0b91da6d9c
Use span methods to construct dxx_sendto input
2022-09-24 17:47:52 +00:00