ziplantil
d9c113c315
load .s11,.s22 when loading D2 mission to allow custom sounds
2019-08-13 22:47:22 +03:00
Christian Beckhäuser
38fabd7c49
Fixed two issues with game's transparency effects feature (which I introduced when implementing it): First, Superprox mines dropped by enemies were made undesirably transparent since they have their own ID not considered by is_proximity_bomb_or_smart_mine(). Second, only some force field textures in D2X had transparency effects since the game has two different textures for force fields - eclip num 78 and 93 - but only the former was defined and used in is_alphablend_eclip()
2019-08-08 11:57:52 +02:00
Kp
ec234e0b8e
Cache intermediate values in draw_mine_exit_cover
2019-08-06 03:02:32 +00:00
Kp
7f4c57b614
Merge https://github.com/ziplantil/dxx-rebirth.git branch 'exithatchfix'
2019-08-06 02:59:41 +00:00
Kp
a4d3cbe5e5
Check for invalid orb dimensions when loading hoard data
2019-08-06 02:59:41 +00:00
Kp
31136cfd1b
Fix undefined access if N_bitmaps <= 1
...
clang-check warns that if `N_bitmaps <= 1`, then
`DiskBitmapHeader_d1_read` will never run, but `bmh.wh_extra` will be
read in `bitmap_read_d1`. Reorder the logic to return early if there
are no bitmaps.
2019-08-06 02:59:41 +00:00
Kp
04b50757c5
Explicitly test for nullptr in do_physics_align_object
...
clang-check warns about a potential binding a reference to nullptr in
the case that a segment has 0 sides. While this is silly and
impossible, a related failure mode would occur if vm_vec_dot never
indicated a side as good. This should be impossible, but the test for
nullptr is cheap, so add it to silence the checker.
2019-08-06 02:59:41 +00:00
Kp
4295eb7e4a
Pass CPPDEFINES into compilation database
2019-08-06 02:59:41 +00:00
Kp
334da8e8e6
Move some SDL-only symbols into !DXX_USE_OGL
2019-08-06 02:59:41 +00:00
Kp
f0faac66d4
Move Seismic_tremor_magnitude to d_level_unique_seismic_state
2019-08-06 02:59:41 +00:00
Kp
4b0f797d7e
Move Secret_return_orient to d_level_shared_segment_state
2019-08-06 02:59:41 +00:00
Kp
4eb61ecf5c
Fix original game bug: failure to reset Level_shake_duration
...
The game has an alternative level file format that is not normally used.
This format can enable seismic events on a timer, independent of reactor
countdown or earthshaker usage. However, this feature is not reset on
loading a regular level after playing a level with the timer-driven
seismic events, so the regular level shakes according to the timer, even
though its author never designed it to do so.
Fix that by resetting the timer state to 0 before loading a regular
level.
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
7691e98304
Factor out seismic effect processing
...
Level seismic events and Earthshaker seismic events start with different
intensities, but share everything afterward. Move the common parts to a
function.
2019-08-06 02:59:41 +00:00
Kp
625d863c55
Move Smega_detonate_times to d_level_unique_seismic_state::Earthshaker_detonate_times
2019-08-06 02:59:41 +00:00
Kp
140711cb35
Move Next_seismic_sound_time to d_level_unique_seismic_state
2019-08-06 02:59:41 +00:00
Kp
596a17db69
Fold Seismic_sound_playing into Next_seismic_sound_time
...
When Next_seismic_sound_time is non-zero, a seismic sound is playing.
When Next_seismic_sound_time is zero, no sound is playing. Use this to
eliminate the explicit tracking variable Seismic_sound_playing.
2019-08-06 02:59:41 +00:00
Kp
8fd231e501
Move Seismic_tremor_volume to d_level_unique_seismic_state
2019-08-06 02:59:41 +00:00
Kp
42778ff7fa
Move Level_shake_duration to d_level_shared_seismic_state
2019-08-06 02:59:41 +00:00
Kp
b8fa75c8cb
Move Level_shake_frequency to d_level_shared_seismic_state
2019-08-06 02:59:41 +00:00
Kp
184337e6e1
Move Seismic_disturbance_end_time to d_level_unique_seismic_state
2019-08-06 02:59:40 +00:00
Kp
ef0e64d421
Move awareness events to d_level_unique_robot_awareness_state
2019-08-06 02:59:40 +00:00
Kp
03214c0e6f
Fix original game bug that meant to reset camera flag, but did not
2019-08-06 02:59:40 +00:00
Kp
215252b8ca
Fold Final_boss_is_dead into Final_boss_countdown_time
2019-08-06 02:59:40 +00:00
Kp
5455a65d33
Move Final_boss_countdown_time to d_game_unique_state
2019-08-06 02:59:40 +00:00
Kp
3d8c02fefa
Move Final_boss_is_dead to d_game_unique_state
2019-08-06 02:59:40 +00:00
Kp
7d803cf63e
Move some save/restore functions to dcx/dsx as appropriate
2019-08-06 02:59:40 +00:00
Kp
be84013494
Move Boss_hit_time to d_level_unique_boss_state
2019-08-06 02:59:40 +00:00
Kp
0a74eb6989
Move Boss_hit_this_frame to d_level_unique_boss_state
2019-08-06 02:59:40 +00:00
Kp
75440153a0
Move Boss_dying_sound_playing to d_level_unique_boss_state
2019-08-06 02:59:40 +00:00
Kp
a0c242c46f
Move Boss_dying_start_time to d_level_unique_boss_state
2019-08-06 02:59:40 +00:00
Kp
63d869fa0c
Move Boss_dying to d_level_unique_boss_state
2019-08-06 02:59:40 +00:00
Kp
4ec96337b6
Move Last_teleport_time to d_level_unique_boss_state
2019-08-06 02:59:40 +00:00
Kp
69404ebc6e
Move Boss_cloak_start_time to d_level_unique_boss_state
2019-08-06 02:59:40 +00:00
Kp
184be218b7
Emulate D1 bosses more accurately
...
Use D1 timing for gating, cloaking, and teleporting
2019-08-06 02:59:40 +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
de77d2412b
Move Automap_visited to d_level_unique_automap_state
2019-08-06 02:59:40 +00:00
ziplantil
bea2eaaec9
exit tunnel cover shape: make code neater
2019-07-29 00:57:55 +03:00
ziplantil
e6f07a7b2f
add black shape to cover 'mine' after exit hatch blows up
2019-07-29 00:43:04 +03:00
Kp
dde11d0495
Merge https://github.com/ziplantil/dxx-rebirth.git branch 'cloakeffect'
2019-07-28 21:34:48 +00:00
Kp
445a734779
buddy_message_ignore_time: respect guidebot cage
...
Commit dc79bb8e4a
intended to clean up processing guidebot messages,
but accidentally allowed the guidebot to report certain status messages
before its cage was opened. Normal missions still do not report these
messages, but some custom levels do.
Reported-by: ziplantil <https://github.com/dxx-rebirth/dxx-rebirth/issues/438 >
Fixes: dc79bb8e4a
("Remove hack for bypassing buddy time restriction")
2019-07-28 21:09:07 +00:00
Kp
635ae0b595
Use typedef for savegame description
2019-07-28 21:09:07 +00:00
Kp
5683c2b6ed
Simplify skipping unnecessary callsign in savegame preview
2019-07-28 21:09:07 +00:00
Kp
f43141f738
Use typedef for savegame file path
2019-07-28 21:09:07 +00:00
Kp
76cfe1368d
do_new_game_menu
: improve new game dialog text
2019-07-28 21:09:07 +00:00
ziplantil
639d33b4de
reorder palfx logic; use inline func in gr_palette_step_up
2019-07-28 12:47:24 +03:00
ziplantil
4f3b2a1520
make alast_* function-local
2019-07-28 01:41:37 +03:00
ziplantil
f446790b03
optimize; abs no longer necessary
2019-07-28 00:49:30 +03:00
ziplantil
4eab54284c
change palfx code; special only for all < 0 (cloak)
2019-07-28 00:42:37 +03:00
ziplantil
3753e5942d
fix effect (on GL) when picking up cloak
2019-07-27 23:38:34 +03:00