Kp
4cec1910e2
Propagate scores_maybe_add_player argument
2016-12-10 17:51:08 +00:00
Kp
a88eb5867d
Fold score saying copy
2016-12-10 17:51:08 +00:00
Kp
1f434f98ad
Use valptridx for ActiveDoors
2016-12-10 17:51:08 +00:00
Kp
65b05638cc
Switch MAX_REACTORS from #define to constexpr
2016-12-10 17:51:08 +00:00
Kp
62a4f001ea
Define valptridx factories of non-const types as mutable
...
Previously:
constexpr vTYPEptr{};
constexpr vcTYPEptr{};
Now:
__attribute_unused static vTYPEptr{};
constexpr vcTYPEptr{}; // unchanged from above
This is necessary for future work. It should have no user observable
effects for now.
2016-12-10 17:51:08 +00:00
Kp
53bf638c2c
Cache valptridx success check
...
Use a compound statement to cache the success condition as a local
boolean, then reference the local in the macro expansions. This should
hint to the optimizer that this is always the same expression, which
should encourage it not to repeat the test in the generated code.
Actual results vary. x86_64-pc-linux-gnu-g++-5.4.0 generates code that
is bigger, but uses fewer instructions.
2016-12-10 17:51:07 +00:00
Kp
9a45534ccc
Require support for reference qualified methods
2016-12-10 17:51:07 +00:00
Kp
ea040f100d
Cache SConstruct startup variables
2016-12-10 17:51:07 +00:00
Kp
73c70566a0
Derive vptr factory from ptr factory
2016-12-10 17:51:07 +00:00
Kp
6c85086a43
Pass vcsegptridx to multi_send_light_specific
2016-12-10 17:51:07 +00:00
kreatordxx
62abd810a4
Merge pull request #282 from dxx-rebirth/demo_fix
...
Fix freeze when aborting game while demo is recording
2016-12-08 13:22:24 +08:00
Kp
6e03e6b4c1
Add hack to compensate for memdebug premature scan
2016-12-08 03:32:06 +00:00
Chris Taylor
17ca665ed5
Only return window_event_result::deleted from game_handler when Game_wind was deleted in that call of game_handler
...
Fixes freeze when aborting game while demo is recording
2016-12-07 09:38:03 +08:00
Kp
515476f02b
Propagate constant third parameter of call_object_create_egg
2016-12-05 00:26:11 +00:00
Kp
19528a85d0
Fix various check_header_includes=1 failures
2016-12-05 00:26:11 +00:00
Kp
0fb59c225c
Move add_points_to_score into namespace dsx
2016-12-05 00:26:10 +00:00
Kp
f3ebdca557
Return segidx from escort_get_goal_segment
2016-12-05 00:26:10 +00:00
Kp
e0f6077afa
Pass vcsegidx to render_mine
2016-12-05 00:26:10 +00:00
Kp
d7ea84aa36
Pass vcsegidx to multi_send_boss_teleport
2016-12-05 00:26:10 +00:00
Kp
31f330c0ff
Pass vcsegidx to multi_send_door_open_specific
2016-12-05 00:26:10 +00:00
Kp
fe44705d2d
Pass vcsegidx to multi_send_effect_blowup
2016-12-05 00:26:10 +00:00
Kp
6bffe9949e
Pass vcsegidx to multi_send_create_powerup
2016-12-05 00:26:09 +00:00
Kp
82b068bf9c
Pass vsegidx to multi_send_door_open
2016-12-05 00:26:09 +00:00
Kp
67afde75e3
Fold net_udp_send_door_updates calls to multi_send_door_open
2016-12-05 00:26:09 +00:00
Kp
b5be5f2099
Pass vcwallptridx to multi_send_hostage_door_status
...
Avoid recomputing the wall pointer that the caller already had.
2016-12-05 00:26:09 +00:00
Kp
3fc128607c
Pass vsegidx_t to disable_flicker
2016-12-05 00:26:09 +00:00
Kp
c035f5e93f
Pass segidx_t to create_path_points
2016-12-05 00:26:09 +00:00
Kp
c60d93326c
Propagate constant third parameter of create_n_segment_path_to_door
2016-12-05 00:26:08 +00:00
Kp
b696d8cf22
Pass segidx_t to create_n_segment_path
2016-12-05 00:26:08 +00:00
Kp
d8a1428f13
Pass segidx_t to init_ai_object
2016-12-05 00:26:08 +00:00
Kp
aaea5411e1
Only set -Wunused if __attribute__((unused)) works
2016-12-05 00:26:08 +00:00
zico
bfe6149cdb
Fixed regression from 6e20d86941
in which flag OF_PLAYER_DROPPED in drop_powerup would only be set for OBJ_ROBOT but not OBJ_POWERUP, making the Guidebot unable to locate player spew
2016-12-04 21:39:03 +01:00
zico
34b24c0d69
Fixed regression from d1x-rebirth 0.57.3: Properly read out flat poly color for morph models from model data
2016-12-04 21:21:49 +01:00
zico
ffb68756e3
Changed handling of scrape_player_on_wall(), preventing it to occur multiple times per frame.
2016-12-02 13:37:08 +01:00
zico
ad5a5047d4
Improved handling for Guidebot goals that are not objects: Set object_none to Escort_goal_index for ESCORT_GOAL_EXIT, ESCORT_GOAL_ENERGYCEN and ESCORT_GOAL_SCRAM. Changed handling for ESCORT_GOAL_EXIT to work like ESCORT_GOALFUELCEN (without needing Escort_goal_index). Let detect_escort_goal_accomplished() bail if Escort_goal_index == object_none (replacing case ahndling for ESCORT_GOAL_SCRAM). Minor formatting improvements of detect_escort_goal_accomplished() and removal of stub case of ESCORT_GOAL_FUELCEN.
2016-11-29 19:30:16 +01:00
Kp
f8cc32a4af
Merge pull #272 into master
2016-11-26 22:51:49 +00:00
Kp
6153fc6f8d
Recharge omega cannon on entering new level
2016-11-26 22:51:49 +00:00
Kp
6226e5fbbf
Remove obsolete operator-(wall *, array<wall, N> &)
2016-11-26 22:51:49 +00:00
Kp
329ff67718
Raise D1 MAX_DOORS to match D2
2016-11-26 22:51:49 +00:00
Kp
66d946f5f7
Use std::find_if in wall_close_door to search ActiveDoors
2016-11-26 22:51:48 +00:00
Kp
ecdefd93ad
Use std::find_if in wall_open_door to search ActiveDoors
2016-11-26 22:51:48 +00:00
Kp
ad806a8251
Reorder newmenu length test to skip key_ascii() call
2016-11-26 22:51:48 +00:00
Kp
46ffb9d3f8
Use remove_if to remove obsolete open doors
2016-11-26 22:51:48 +00:00
Kp
ac5ccf0c08
Pass active_door &to wall_close_door_num
2016-11-26 22:51:48 +00:00
Kp
1acee2d4f4
Remove unused wall_close_door
2016-11-26 22:51:48 +00:00
Kp
5c62f63606
Factor out active_door removal
2016-11-26 22:51:47 +00:00
Kp
be706e190e
Move wall_close_door_num copy loop up
...
There are two callers for wall_close_door_num. The editor calls it in a
loop for all doors, so copying each active_door is wasteful since none
will survive the end of the loop. Move the copy loop into the caller
that removes elements selectively.
This makes no attempt to fix the bugs associated with changing
Num_open_doors while iterating with Num_open_doors as an upper bound.
2016-11-26 22:51:47 +00:00
Kp
16d2a3f866
Fix pch build
...
Move DXX_VERSION_SEQ from DXXProgram to DXXCommon to make it visible to
DXXArchive.configure_environment(). If pch is enabled, define
DXX_VERSION_SEQ in dxxsconf.h and remove it from the command line. This
fixes a build failure where gcc ignored ownpch.cpp.gch because it was
built without DXX_VERSION_SEQ, but some files were built with
DXX_VERSION_SEQ.
2016-11-26 22:51:47 +00:00
Kp
da50b79fb9
Fix syspch build
2016-11-26 22:51:47 +00:00
Kp
64ac7028e6
Pass active_door &to do_door_{open,close}
2016-11-26 22:51:47 +00:00