Commit graph

7701 commits

Author SHA1 Message Date
Kp 3d246427e1 Poison objects on level load
Objects are overwritten without using obj_allocate, so the normal poison
path is not triggered.  Poison objects explicitly to trap uninitialized
data from a previous level.

This also fixes an unreported issue where player shields always reset to
100 on entering a new level.  The game is supposed to raise shields to
100 if the player was lower on exiting the level.  However, it is not
supposed to reduce shields to 100 if the player had a higher value on
exiting the level.

This also fixes a demo consistency issue reported by zicodxx <https://github.com/dxx-rebirth/dxx-rebirth/issues/168>.

Fixes: 2e28a491f2 ("Move player shields to struct object")
2015-12-10 03:25:37 +00:00
Kp 45f1a71420 Move valptridx get_global_array to DXX_VALPTRIDX_DECLARE_GLOBAL_SUBTYPE
This removes the need to repeat the array name when invoking
DEFINE_VALPTRIDX_SUBTYPE.
2015-12-08 04:20:24 +00:00
Kp 34d89d5139 Use inline namespace dsx for segment.h 2015-12-05 22:57:25 +00:00
Kp e549f3451e Use inline namespace dsx for object.h 2015-12-05 22:57:25 +00:00
Kp 1e50c23a8c Use inline namespace dsx for inferno.cpp 2015-12-05 22:57:25 +00:00
Kp 22bd3ce8d8 Use inline namespace dcx for common/ui 2015-12-05 22:57:24 +00:00
Kp e784fd96fa Use inline namespace dcx for common/texmap 2015-12-05 22:57:24 +00:00
Kp 5b9e50a815 Use inline namespace dcx for common/misc 2015-12-05 22:57:24 +00:00
Kp 463ed96b4b Use inline namespace dcx for common/mem 2015-12-05 22:57:24 +00:00
Kp cfc35e819d Use inline namespace dcx for common/maths 2015-12-05 22:57:24 +00:00
Kp bf60f19aef Use inline namespace dcx for common/editor 2015-12-05 22:57:24 +00:00
Kp 2445c8457c Use inline namespace dcx for common/arch/win32 2015-12-05 22:57:24 +00:00
Kp dbe4918f27 Use inline namespace dcx for common/arch/sdl 2015-12-05 22:57:24 +00:00
Kp de6c2b3982 Use inline namespace dcx for common/arch/ogl 2015-12-05 22:57:24 +00:00
Kp 43dd620557 Use inline namespace dcx for common/3d 2015-12-05 22:57:24 +00:00
Kp 69c5a79058 Use inline namespace dcx for common/2d 2015-12-05 22:57:23 +00:00
Kp 32c7214f5a Add vecmat forward declaration header 2015-12-05 22:57:23 +00:00
Kp 93a441b81e Remove unused editor func_* functions 2015-12-05 22:57:23 +00:00
Kp 66f0f26ef4 Remove unused gr_bitmap_check_transparency 2015-12-05 22:57:23 +00:00
Kp af97689d98 Fix demo id check bug
Test for type OBJ_FIREBALL before comparing the object ID to a fireball
ID.
2015-12-05 15:51:29 +00:00
zico b286458119 Upon user request: reverted commits 1c8dc35 and 1431d3bc so the game will automatically close menus and automap upon taking damage in multiplayer - restoring the original game behavior 2015-12-05 13:12:21 +01:00
zico d493912bcc Fixed demo playback which would not transition to Descent 2 secret levels due to interpolated playback triggering ND_STATE_PAUSED and skipping oder ND_EVENT_SECRET_THINGY 2015-12-04 21:01:37 +01:00
Kp 60e6c23ccc Always pass tuple for argument prefix list
Fixes: dd59be7163 ("Cache various SConstruct temporaries")
2015-12-04 03:36:33 +00:00
Kp aaaa7e6aa4 Make font datasize const after fixup 2015-12-04 03:36:32 +00:00
Kp fdddfb4a75 Simplify build_colormap_good frequency table clear 2015-12-04 03:36:32 +00:00
Kp 8a97c173a3 Remove useless gr_remap_mono_fonts
gr_remap_mono_fonts searches for fonts with !(font->ft_flags & FT_COLOR)
and calls gr_remap_font on any it finds.

gr_remap_font starts with:

	if (!(font->ft_flags & FT_COLOR))
		return;
2015-12-04 03:36:32 +00:00
Kp ff51ff5474 Copy sdl-config CPPDEFINES before modification
Fixes: 6111e5adbf ("Allow configuring max joysticks at build time")
2015-12-04 03:36:32 +00:00
Kp ddc3cd0201 Make Boss_teleport_interval const in D1 2015-12-04 03:36:32 +00:00
Kp 515210ea50 Make Boss_cloak_interval const in D1 2015-12-04 03:36:32 +00:00
Kp b4cd091412 Combine D1/D2 gamedata_close 2015-12-04 03:36:32 +00:00
Kp 954d473d47 Remove unused Do_ai_flag 2015-12-04 03:36:32 +00:00
Kp e77a6ea923 Remove write-only variable r_upixelc 2015-12-04 03:36:32 +00:00
Kp 9231cfb853 Remove write-only D1 variable Boss_been_hit 2015-12-04 03:36:32 +00:00
Kp bc204403ba Remove write-only variable Ai_initialized 2015-12-04 03:36:31 +00:00
Kp 9b8a956431 Make palette_save static for D2 2015-12-04 03:36:31 +00:00
Kp a9b82e3f7f Make vlighting static 2015-12-04 03:36:31 +00:00
Kp ed55763603 Remove unused symbols 2015-12-04 03:36:31 +00:00
Kp 1adf34403e Compile out unused wclip_write
Unused since 547193c591 ("Compile out unused bm_write_all") disabled caller bm_write_all.
2015-12-04 03:36:31 +00:00
Kp edfd337c50 Compile out unused weapon_info_write
Unused since 547193c591 ("Compile out unused bm_write_all") disabled caller bm_write_all.
2015-12-04 03:36:31 +00:00
Kp 6210d1008b Add if !OGL to SDL-only functions 2015-12-04 03:36:31 +00:00
Kp a49fc821a0 Restrict listbox_get_window to _WIN32 2015-12-04 03:36:31 +00:00
Kp 143612df6a Make multi_send_message static 2015-12-04 03:36:30 +00:00
Kp a245ff8130 Mark multi_who_is_master static 2015-12-04 03:36:30 +00:00
Kp 111ac7f7f3 Fix player/marker confusion due to sorting
Fixes: 1d7418497e ("Condense collision table")
2015-12-03 03:26:49 +00:00
Kp 01c0280e82 Optimize marker map drawing 2015-12-03 03:26:49 +00:00
Kp dd59be7163 Cache various SConstruct temporaries
This started as a project to make SConstruct take less time on an empty
build.  Unforunately, most of the major gains lie elsewhere and require
deeper changes to the build system.  These changes do not help much, but
they are better than nothing.
2015-12-03 03:26:49 +00:00
Kp 708dc0a7e1 Use vobjptr/vcobjptr for more Objects[] access 2015-12-03 03:26:49 +00:00
Kp b683b4cc68 Scope weapon type 2015-12-03 03:26:49 +00:00
Kp 31d538ebe2 Use helper for robot weapon type 2015-12-03 03:26:48 +00:00
Kp c45f93b503 Short out apply_damage_to_player friendly fire check 2015-11-27 03:56:13 +00:00