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
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
515210ea50
Make Boss_cloak_interval const in D1
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
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
0fe724b229
Adjust multiplayer kill handling
2015-11-27 03:56:13 +00:00
Kp
0c75aecc45
Check most uses of object id
2015-11-27 03:56:13 +00:00
Kp
266a2aecdb
Extend check_warn_object_type to report always-wrong cases
2015-11-27 03:56:12 +00:00
Kp
bdbc129d14
Optimize out some object type warnings
2015-11-26 02:56:56 +00:00
Kp
9f26e2211e
Warn on invalid object ID access
2015-11-26 02:56:56 +00:00
Kp
90fdcfe846
Inline parameter to digi_select_system
2015-11-26 02:56:56 +00:00
Kp
166d203474
Use fwd-gr.h instead of repeated grs_canvas declarations
2015-11-26 02:56:55 +00:00
Kp
b59f5d091e
Remove SDL stub gr_set_attributes
2015-11-26 02:56:55 +00:00
Kp
5782d3c604
Remove unused digi_debug
2015-11-26 02:56:55 +00:00
Kp
b1ec69a3a2
Move CtlNoJoystick to CArg
2015-11-26 02:56:55 +00:00
Kp
a5fb497e41
Include cstdint in ogl_extensions to fix Win32 check_headers build
2015-11-26 02:56:55 +00:00
Kp
fee144261f
Add if-D2 to Dont_start_sound_objects
...
Dont_start_sound_objects is defined for D1, but never set. Restrict it
to D2 and let D1 skip the test.
2015-11-26 02:56:55 +00:00
Kp
40588aaa0a
Remove unnecessary key.cpp Installed
2015-11-26 02:56:55 +00:00
Kp
bb41075adb
Add preprocessor guards around types that vary by game
2015-11-26 02:56:55 +00:00
Kp
db77622f0e
Move array_size into valptridx_specialized_types
2015-11-26 02:56:55 +00:00
Kp
dad504cfef
Fix some -Wshadow warnings
2015-11-26 02:56:54 +00:00
Kp
7153ec69a9
Move SndNoSound to CGameArg
2015-11-24 04:05:36 +00:00
Kp
a579f75d05
Move SndDisableSdlMixer to CGameArg
2015-11-24 04:05:36 +00:00
Kp
2e91f1ac45
Simplify event_key_get_raw
2015-11-24 04:05:36 +00:00
Kp
bca44c3199
Make keyd_repeat static
2015-11-24 04:05:35 +00:00
Kp
ed2fa6f76a
Remove unused PHYSFSX_getFreeDiskSpace
2015-11-24 04:05:35 +00:00
Kp
e33f7f751b
Move SysShowCmdHelp to CGameArg
...
Both games support SysShowCmdHelp. Move it to the common structure.
2015-11-24 04:05:35 +00:00
Kp
d4511b3128
Move SysNoHogDir to CGameArg
...
Both games support SysNoHogDir. Move it to the common structure.
2015-11-24 04:05:35 +00:00
Kp
9981dc622e
Move SysMissionDir to CGameArg
...
Both games support SysMissionDir. Move it to the common structure.
2015-11-24 04:05:35 +00:00
Kp
64dee5d52a
Move SysMaxFPS to CGameArg
...
Both games support SysMaxFPS. Move it to the common structure.
2015-11-24 04:05:35 +00:00
Kp
63ca0eb87b
Make respawn-on-fire configurable
...
Requested-by: Mako88 <https://github.com/dxx-rebirth/dxx-rebirth/issues/162 >
2015-11-21 18:12:13 +00:00
Kp
0fbccd609c
Ignore lifetime kills/killed in cooperative games
2015-11-21 18:12:13 +00:00
Kp
ceafa62d64
Use enum class for CLI_insert_mode
2015-11-19 03:23:35 +00:00
Kp
82d0c2ed96
Make some implicit uses of ptridx construction explicit
2015-11-19 03:23:34 +00:00
Kp
edc4015c97
Compute Boss_cloak_end_time as needed
2015-11-19 03:23:34 +00:00
Kp
f2a0edfd35
Expand Boss_cloak_duration inline
2015-11-19 03:23:34 +00:00
Kp
c0149be92a
Use enum class explosion_vclip_stage for get_explosion_vclip
2015-11-15 22:30:41 +00:00
Kp
5f5fd23060
Use enum class for HUD type
2015-11-14 18:17:22 +00:00
Kp
44753209d6
Move homing_object_dist to object.ctype.player_info
2015-11-14 18:17:22 +00:00
Kp
52051c427b
Move invulnerable_time to object.ctype.player_info
2015-11-14 18:17:21 +00:00
Kp
9eb8aba4c9
Move cloak_time to object.ctype.player_info
2015-11-14 18:17:21 +00:00
Kp
f509073b65
Move font allocdata pointer to grs_font
2015-11-14 18:17:21 +00:00
Kp
74290b5150
Add some error checking to font loader
2015-11-14 18:17:21 +00:00
Kp
8997ec557d
Simplify valptridx get_global_array definition
2015-11-14 18:17:21 +00:00
Kp
a7e44f58ce
Use enum class for tmap_drawer_constant
...
This allows tmap_drawer_type to use regular functions instead of
template functions and causes the debugger to show the symbolic name of
the type.
2015-11-14 18:17:20 +00:00
Kp
6b353cb9ac
Move player powerup_flags to object.ctype.player_info
2015-11-07 21:55:59 +00:00
Kp
8a81e25ab0
Move player laser_level to object.ctype.player_info
2015-11-07 21:55:59 +00:00
Kp
b788d0b563
Move player primary_weapon_flags to object.ctype.player_info
2015-11-07 21:55:59 +00:00
Kp
8d6949efa6
Move player killer_objnum to object.ctype.player_info
2015-11-07 21:55:59 +00:00
Kp
6037372cdf
Move player vulcan_ammo to object.ctype.player_info
2015-11-07 21:55:59 +00:00
Kp
e227ef1b32
Move player secondary_ammo to object.ctype.player_info
2015-11-07 21:55:58 +00:00
Kp
6fd6436f14
Move player energy to object.ctype.player_info
2015-11-07 21:55:58 +00:00
Kp
2e28a491f2
Move player shields to struct object
2015-11-07 21:55:58 +00:00
Kp
ccee595321
Remove Interpolation_method from OGL build
2015-11-06 03:51:10 +00:00
Kp
a40d1efcd0
Sort joystick data smallest first
2015-11-01 21:15:40 +00:00
Kp
6111e5adbf
Allow configuring max joysticks at build time
2015-11-01 21:15:40 +00:00
Kp
37bffb75dd
Use std::tuple for storing d_physical_joystick members
...
Simplify later cleanup by hiding the members behind accessors.
2015-11-01 21:15:39 +00:00
Kp
b639ba151a
Remove unused joystick globals n_axes,n_buttons,n_hats
...
These are used only in one function. Make them local only.
2015-11-01 21:15:39 +00:00
Kp
04ee450a07
Take local references to joystick text
2015-11-01 21:15:39 +00:00
Kp
545b71c1cc
Use enum class for kconfig subtype
2015-11-01 21:15:38 +00:00
Kp
df5e02aed0
Use macro get_local_player_invulnerable_time for player's invulnerable_time
2015-10-30 02:52:56 +00:00
Kp
0285efe49d
Use macro get_local_player_cloak_time for player's cloak_time
2015-10-30 02:52:56 +00:00
Kp
17b8b64980
Use macro get_local_player_flags for player's flags
2015-10-30 02:52:56 +00:00
Kp
92f78caf22
Use macro get_local_player_vulcan_ammo for player's vulcan_ammo
2015-10-30 02:52:56 +00:00
Kp
dc5dfb80e8
Use macro get_local_player_secondary_ammo for player's secondary_ammo
2015-10-30 02:52:56 +00:00
Kp
ea5b7a08c1
Use macro get_local_player_energy for local player's energy
2015-10-30 02:52:55 +00:00
Kp
3ffd207e44
Use macro get_local_player_shields for local player's shields
2015-10-30 02:52:55 +00:00
Kp
f07e08fa2f
Move netgame_info::players to end
...
This saves ~200 bytes of text.
2015-10-30 02:52:55 +00:00
Kp
731e287329
Clean up trailing whitespace on rank strings
2015-10-30 02:52:55 +00:00
Kp
070444157e
Use type safe player flags
2015-10-30 02:52:55 +00:00
Kp
7ac2840bfe
Rename Netgame.player_flags to .net_player_flags
...
The simple name conflicts with an upcoming change.
2015-10-30 02:52:54 +00:00
Kp
4882558d6e
Remove unnecessary zero of .cloak_time
2015-10-30 02:52:54 +00:00
Kp
e130ea7b36
Remove unnecessary secondary_weapon_flags
2015-10-30 02:52:53 +00:00
Kp
ea3c4a8986
Switch const multi text to array<>
2015-10-29 03:01:43 +00:00
Kp
2a713567a0
Guard create_*vert*lists in D1||D2
...
check_header_includes=1 fails when create_*vert*lists is tested in
common code. Preprocess it out when built for common.
2015-10-24 03:13:11 +00:00
Kp
1c84b7ab9c
Use enum class for wall_hit_process_t
2015-10-24 03:13:11 +00:00
Kp
8b61b9f0db
Remove unused symbols
2015-10-24 03:13:11 +00:00
Kp
cf9f777187
Simplify select_tmap
...
Remove unreachable nullptr case. Use case-sensitive comparison. Remove
unsupported entry i386 from documentation.
2015-10-21 02:45:44 +00:00
Kp
21057db809
Move DbgSafelog, DbgVerbose to CArg
2015-10-18 21:01:21 +00:00
Kp
6f94cc933c
Fold create_abs_vertex_lists into create_all_vertnum_lists
2015-10-18 21:01:20 +00:00
Kp
af2d8f7deb
Factor out create_vert*_lists switch
2015-10-18 21:01:20 +00:00
Kp
6f10a67c09
Move segment::sides to end
...
sides[] is large and caused all members after it to require disp32
offsets. Move it to the end so that all members can use disp8 offsets.
This saves ~1300 bytes of text on an editor+debug build.
2015-10-18 21:01:20 +00:00
Kp
228dd75260
Switch Side_to_verts to unsigned
2015-10-18 21:01:20 +00:00
Kp
ae338abdc7
Make compute_seg_dynamic_light static
2015-10-18 21:01:19 +00:00
Kp
309426e024
Use enum class for descent_version
2015-10-18 21:01:18 +00:00
Kp
533f1cb3bb
Qualify references to primary weapons
2015-10-18 21:01:18 +00:00
Kp
7da64d3782
Add new autoselect-while-firing mode: "when firing stops"
...
Mako88 reports that some users want not to autoselect while firing, but
do not notice when a new weapon is added to the HUD, and end up never
activating a preferred weapon. Add a new autoselect mode that remembers
what would be selected and switches to it once the player ceases firing.
Changes since Mako88's proposed version:
- Use `enum class` for autoselection mode and a radio button to
represent the decision of Immediate/Never/Delayed.
- Handle delayed autoselect for vulcan ammo.
- Set Delayed_primary == Primary_weapon to indicate no change is needed,
rather than Delayed_primary==-1. This lets some paths use
Delayed_primary without checking for a magic value.
- Likewise Delayed_secondary / Secondary_weapon.
- Update Delayed_primary/Delayed_secondary when changing active
primary/secondary weapon, so that a player who changes weapons while
firing will automatically clear any deferred change.
Requested-by: Mako88 <https://github.com/dxx-rebirth/dxx-rebirth/issues/97 >
Based-on-patch-by: Mako88 <https://github.com/dxx-rebirth/dxx-rebirth/pull/147 >
2015-10-18 18:11:57 +00:00
Kp
5f29170702
Move valptridx error reporting out of main header
2015-10-13 02:43:25 +00:00
Kp
b4556d13fa
Move UDP_netgame_info_lite into D1||D2
...
UDP_netgame_info_lite has a member that is only defined if D1||D2.
Guard the whole structure since it cannot be used in common code.
2015-10-13 02:43:24 +00:00
Kp
9bd5c492aa
Move valptridx size call out of line
2015-10-13 02:43:24 +00:00
Kp
a0919bf345
Add support for -add-missions-dir
2015-10-11 22:21:00 +00:00
Kp
a37bae4b4f
Track output size for PHYSFSX_getRealPath
2015-10-11 22:21:00 +00:00
Kp
3ceefb4189
Pass filename to Error
2015-10-11 22:21:00 +00:00
Kp
ad8b4230df
Move fwdsegment.h -> fwd-segment.h for consistency
2015-10-10 03:44:14 +00:00
Kp
2196008178
Move fwdobject.h -> fwd-object.h for consistency
2015-10-10 03:44:14 +00:00
Kp
36c52f7437
Reduce pointer->int->pointer conversions for thief
2015-10-10 03:44:14 +00:00
Kp
a47c6e599d
Shrink menu_bit_wrapper_t when B is empty
2015-10-09 02:46:11 +00:00
Kp
1d99084026
Use UserError when main hog is missing
...
Error traps to the debugger and then aborts, which is not appropriate
for a user setup error.
2015-10-09 02:46:11 +00:00
Kp
dd0f5cb83f
Move fwdvalptridx.h -> fwd-valptridx.h for consistency
2015-10-09 02:46:11 +00:00
Kp
ffd6c113ae
Move fwdwall.h -> fwd-wall.h for consistency
2015-10-09 02:46:10 +00:00
Kp
743f2df80f
Add fwd-window.h with forward declarations of window.h
2015-10-09 02:46:10 +00:00
Kp
78de0ac119
Add fwd-event.h with forward declarations of event.h
2015-10-09 02:46:10 +00:00
Kp
e8a4a25639
Use template alias for window_subfunction_t
2015-10-09 02:46:10 +00:00
Kp
cb5c0186b3
Remove obsolete PHYSFSX_check_read/PHYSFSX_check_write overloads
2015-10-09 02:46:10 +00:00
Kp
bca143d87d
Only include ogl_init.h in OpenGL builds
2015-10-09 02:46:10 +00:00
Kp
29f79f0a6b
Enable -notitles for Descent 2
2015-10-09 02:46:09 +00:00
Kp
7034b68357
Manage world time automatically where possible
...
For all cases where world time nests, use automatic management. Some
sites disable time in one function and enable it elsewhere. These are
untouched.
2015-10-09 02:46:09 +00:00
Kp
820abdad41
Fix SDL build break in clipper.h
2015-10-09 02:46:09 +00:00
Kp
8dd1f7c2cf
Move texture_list_index into local scope
2015-10-09 02:46:09 +00:00
Kp
9da2a938d8
Make team_kills signed
...
Suicides can make kill counts negative.
2015-10-03 22:15:17 +00:00
Kp
9df40a86cb
Use uint8 for secondary ammo counts
...
Maximum non-cheating is 40 missiles, which fits in a signed 8 bit value.
Maximum cheating is 200 missiles, which fits in an unsigned 8 bit value.
2015-10-03 17:17:49 +00:00
Kp
e2c6e8449f
Factor out cloak/invul timer display
2015-10-03 17:17:49 +00:00
zico
708372a148
Included compiler-range_for.h into joy.cpp to fix compiler error of undefined range_for
2015-09-29 12:02:49 +02:00
Kp
9642a4c31d
Close SDL joystick handles at shutdown
2015-09-29 02:41:22 +00:00
Kp
e5dff6d63f
Use array<> for d_physical_joystick hat_map, button_map
2015-09-29 02:41:22 +00:00
Kp
46bbdd43af
Move Joystick.n_axes, Joystick.n_buttons into local scope
2015-09-29 02:41:22 +00:00
Kp
edccaa91f6
Check return of pick_connected_segment before use
2015-09-29 02:41:22 +00:00
Kp
50f672ba34
Reuse computed string length
2015-09-29 02:41:22 +00:00
Kp
d9cef82f81
Allow nullptr for gr_get_string_size
2015-09-29 02:41:22 +00:00
Kp
71ffbdf719
Replace fill(0) with ={}
2015-09-29 02:41:22 +00:00
zico
9292431396
Merge branch 'unification/master' of github.com:dxx-rebirth/dxx-rebirth into unification/master
2015-09-27 10:52:04 +02:00
zico
cbe0b4ec69
Added Cloak and Invulnerability Timers to Cockpit and Statusbar and made this feature optional (defaults to off)
2015-09-27 10:51:37 +02:00
Kp
230bc630ed
Store FriendMissileView inside MissileViewEnabled
...
This allows it to persist silently when configuration files are read and
rewritten by versions of Rebirth which do not understand
FriendMissileView.
2015-09-26 21:17:14 +00:00
Kp
d971cf7702
Wrap game-specific types in game-specific preprocessor guards
...
These types are not used in common code, and in some cases would provoke
a -Wodr warning if they were used.
2015-09-26 21:17:12 +00:00
Kp
76b94de1de
Add commented out hook for warning on valptridx exceptions
2015-09-26 21:17:12 +00:00
zico
69353631f0
Made missile views from friendly players optional (off by default)
2015-09-26 20:28:49 +02:00
zico
d3660207d2
Added Mouse Overrun Buffer option as proposed by kp
2015-09-24 16:31:10 +02:00
Kp
b48efd0c56
Initialize the largest subobjects in object unions
2015-09-22 02:28:38 +00:00
Kp
da4d1e0670
Remove bool SysNoHogDir on non-unix
2015-09-22 02:28:38 +00:00
Kp
37aac31d0c
Switch i2f/f2i to inline functions
2015-09-19 23:04:36 +00:00
Kp
fcab519693
Remove extern for vms_vector_swap
...
It is only used in the interpreter.
2015-09-19 23:04:36 +00:00
Kp
b626ca67e7
Combine game-specific preprocessor blocks
...
Change:
#ifdef D1
x;
#endif
...
#ifdef D1
y;
#endif
to:
#ifdef D1
x;
y;
#endif
...
2015-09-19 23:04:35 +00:00
Kp
7821af1303
Move axis values into individual joysticks
...
SDL2 allows joysticks to come and go. This conflicts with the unified
virtual joystick.
2015-09-19 23:04:35 +00:00
Kp
21be29e0d4
Optimize out button_last_state
...
This shrinks struct Joystick and makes joy_hat_handler much shorter.
2015-09-19 23:04:34 +00:00
Kp
69e3762933
Return joystick axis values by reference
2015-09-19 23:04:34 +00:00
Kp
38dc303bf8
Simplify joy_flush
2015-09-19 23:04:34 +00:00
Kp
2f927c68f9
Improve support for using exact_type with valptridx
2015-09-15 02:48:04 +00:00
Kp
1cdd4ac2ce
Pass object & to [gs]et_*_id
2015-09-15 02:48:04 +00:00
Kp
8185991062
Ignore excess joysticks
2015-09-13 21:02:19 +00:00
Kp
4df9a4b0f0
Use declval for serial class_type
2015-09-13 21:02:19 +00:00
Kp
cd0b3965a4
Use little endian for control center triggers
2015-09-13 21:02:19 +00:00
Kp
888cfddabd
Combine gauges left/right window boxes
2015-09-13 21:02:19 +00:00
Kp
c4a8432081
Remove WORDS_NEED_ALIGNMENT memcpy src cast to const uint8_t*
...
The cast provokes a warning on systems that require alignment, so remove
it. memcpy takes const void* input, so the cast is unnecessary.
Reported-by: MattWatt <https://github.com/dxx-rebirth/dxx-rebirth/issues/119 >
2015-09-13 21:02:19 +00:00
Kp
fb5ae4e0bc
Fix various header freestanding issues
2015-09-09 03:27:52 +00:00
zico
4a562bf098
Added multi_send_theif_frame() function to update thief bot more frequently (by PPS) and even if it is not controlled by a player to counter discrepancies caused by client side AI movement of the bot
2015-09-03 15:13:56 +02:00
Kp
fd5d7b800d
Move reactor gun loop into calc_controlcen_gun_point
2015-08-26 03:15:10 +00:00
Kp
d3ca71c8d0
Inline get_num_reactor_models
2015-08-26 03:15:10 +00:00
Kp
9ca2bc20c6
Use DXX_CONSTANT_TRUE for valptridx static checks
2015-08-22 20:43:04 +00:00
Kp
9ed4754009
Remove typedef valptridx<T>::array_managed_type managed_type##_array_t
2015-08-22 20:43:04 +00:00
Kp
2833e81ab4
Disallow copying vptr factories
2015-08-22 20:43:04 +00:00
Kp
e6fab164ae
Remove valptridx internal use of operator-(ptr,array)
2015-08-22 20:43:04 +00:00
Kp
2155c417cb
Move array_managed_type into valptridx<T>
2015-08-22 20:43:04 +00:00
Kp
f8008ca34f
Only define object_array_t::object_array_t if VALGRIND
2015-08-22 20:43:04 +00:00
Kp
946048c54b
Move valptridx subtypes to individual fwd headers
2015-08-22 20:43:04 +00:00
Kp
a126f72bef
Remove array for basic_ptr(basic_ptr<rpolicy>,array)
2015-08-22 20:43:04 +00:00
Kp
a606b89fe8
Make robot_flags unsigned
2015-08-22 20:43:03 +00:00
Kp
b946011299
Remove non-GNU PIGGY_PAGE_IN
...
Non-GNU PIGGY_PAGE_IN uses a do {} while(0), but some callers are in a
context where do{}while() is an error.
2015-08-22 20:43:03 +00:00
Kp
b8baddb5a2
Use uint8_t for player_awareness_type_t
...
Fixes: 9157e5f970
("Use enum class for player_awareness_type_t")
2015-08-22 20:43:02 +00:00
Kp
64ff1cda89
Only restore non-alpha when alpha was used
2015-08-21 03:12:35 +00:00
Kp
fcfd3d7e54
Cast valptridx size_t to unsigned long for Windows
...
Windows has `typedef unsigned size_t`, so %lu triggers a format warning
for Windows targets.
Reported-by: Mako88 <https://github.com/dxx-rebirth/dxx-rebirth/issues/116 >
2015-08-19 02:42:49 +00:00
Kp
be3ab3bd81
Use range_for in PHYSFSX_checkMatchingExtension
2015-08-14 03:02:04 +00:00
Kp
e5683593ef
Expand ZERO_VECTOR inline
2015-08-13 03:15:53 +00:00
Kp
4f871c43fe
Add compile-time check for non-overlapping vm_matrix_x_matrix
2015-08-13 03:15:52 +00:00
Kp
17b1943c5e
Mark various per-file structures as static
2015-08-12 03:11:46 +00:00
Kp
bc7c469ab2
Use array<> for more globals
2015-08-12 03:11:46 +00:00
Kp
fa9f2e626d
Move DbgShowMemInfo to CArg
...
Members of Arg are not visible to common code, so common/mem/mem.cpp
broke during the -Wodr cleanup.
Reported-by: zicodxx <https://github.com/dxx-rebirth/dxx-rebirth/issues/114 >
Fixes: 6bd93e466f
("Guard args.h for LTO -Wodr")
2015-08-11 03:05:55 +00:00
Kp
0a3de25d7a
Flatten valptridx ptr/idx further
...
Use a dummy template parameter to prevent slicing, instead of an extra
class in the inheritance chain. This improves the generated code
slightly.
2015-08-07 03:13:51 +00:00
Kp
3458454f7e
Flatten valptridx hierarchy
2015-08-06 02:57:59 +00:00
Kp
b3d1c6efaa
Use helper for valptridx array size checks
2015-08-06 02:57:58 +00:00
Kp
e3dbe7a07c
Add workaround for gcc-4.7 type inheritance quirk
...
In gcc-4.7, a type inherited via using is distinct from a type defined
by using.
$ cat t.cpp
template <typename>
class A
{
public:
typedef void a;
typedef void b;
};
template <typename T>
class B : protected A<T>
{
protected:
using typename A<T>::a;
using b = typename A<T>::b;
public:
static inline a f1();
static inline b f2();
};
template <typename T>
typename B<T>::a B<T>::f1() {} // fails for gcc-4.7, works in later
template <typename T>
typename B<T>::b B<T>::f2() {} // works in both
$ gcc-4.7 -Wall -Wextra -std=gnu++0x -O2 -c t.cpp
t.cpp:21:18: error: prototype for 'typename B<T>::a B<T>::f1()' does not match any in class 'B<T>'
t.cpp:16:18: error: candidate is: static typename A<T>::a B<T>::f1()
t.cpp:16:18: warning: inline function 'static typename A<T>::a B<T>::f1() [with T = int; typename A<T>::a = void]' used but never defined [enabled by default]
$ gcc-4.8 -Wall -Wextra -std=gnu++0x -O2 -c t.cpp
$
Fixes: 8b7c5c3e2b
("Rewrite valptridx")
2015-08-05 02:59:03 +00:00
Kp
f15116f2cb
Simplify multiplayer sound handling
2015-08-05 02:59:02 +00:00
Kp
6870b48710
Remove unused return value of digi_link_sound_to_object*
2015-08-05 02:59:02 +00:00
Kp
9fb9aef509
Remove unused return value of digi_link_sound_to_pos
2015-08-05 02:59:02 +00:00
Kp
c47b7e383f
Make template alias support mandatory
2015-08-03 03:11:25 +00:00
Kp
20b1db3483
Expand dxx_explicit_operator_bool to "explicit"
...
Many files now use "explicit", so compilers which reject
explicit operator bool() will not work. Remove the macro.
2015-08-03 03:11:25 +00:00
Kp
2fb03da475
Inline multi_send_endlevel_start secret for D2
2015-08-03 03:11:25 +00:00
Kp
978cf91a96
Reduce partial_range error argument shuffling
2015-08-03 03:11:24 +00:00
Kp
eb5fcb34e6
Remove default argument for basic_ptr(reference,array)
2015-07-29 03:05:28 +00:00
Kp
e0e1b28c72
Remove default argument for basic_ptr(reference,index,array)
2015-07-29 03:05:28 +00:00
Kp
84bd64a14c
Remove default argument for basic_ptridx(magic,array)
2015-07-29 03:05:28 +00:00
Kp
ba38214bab
Remove default argument for basic_ptridx(pointer,index,array)
2015-07-29 03:05:28 +00:00
Kp
4d8ae44794
Add helper macro DXX_CONSTANT_TRUE
2015-07-29 03:05:28 +00:00
Kp
a2816617fe
Pass reactor& to read_model_guns
2015-07-25 23:10:48 +00:00
Kp
c9dff229f1
Remove dead AI fire leading code
2015-07-25 23:10:47 +00:00
Kp
822f8ad5c0
Use __builtin_object_size to check some unchecked ranges
2015-07-25 23:10:47 +00:00
Kp
2f847030ce
Combine partial_range_error reporting
...
Use iterator type instead of container type, so that T[1] and T[2] use
the same reporting function. This saves ~7k in an LTO build.
2015-07-25 23:10:47 +00:00
Kp
3f6a402bfd
Include bound in partial_range always_error function name
2015-07-25 23:10:47 +00:00
Kp
9a5654e002
Move similar/editor/autosave.cpp -> common/editor/autosave.cpp
2015-07-25 23:10:47 +00:00
Kp
720cc9db98
Move tmap scanline pointers to structure
2015-07-25 23:10:47 +00:00
Kp
1738870b22
Make some c_tmap scanline functions static
2015-07-25 23:10:47 +00:00
Kp
c942d28197
Use accessor for grs_bitmap::bm_type
2015-07-25 23:10:47 +00:00
Kp
b7838318b1
Fix valptridx for -fno-inline
2015-07-25 23:10:46 +00:00
Kp
b8cc2f4172
Inline multi_i_am_master
2015-07-25 23:10:46 +00:00
Kp
bda7fef3a0
Use get_local_player to compute reference to local player
2015-07-25 23:10:46 +00:00
Kp
f38e80c053
Use get_local_plrobj to compute reference to object of local player
2015-07-25 23:10:45 +00:00
Kp
f00725f740
Use forward-declaration header for player.h
2015-07-25 23:10:45 +00:00
Kp
70c4cc87ab
Use forward-declaration header for weapon.h
2015-07-25 23:10:45 +00:00
Kp
f899aaeaca
Move player callsign to player-callsign.h
2015-07-25 23:10:45 +00:00
Kp
9bfea35e4f
Use forward-declaration header for gr.h
2015-07-25 23:10:45 +00:00
Kp
15fb75c1c7
Fix check_header_includes build
2015-07-25 23:10:45 +00:00
Kp
cdb113a050
Diagnose including compiler-type_traits without dxxsconf.h
2015-07-25 23:10:45 +00:00
Kp
8594086b23
Move magic_constant definition into valptridx
2015-07-21 02:57:27 +00:00
Kp
644c80e632
Pass vsegptr to add_stuck_object
2015-07-21 02:57:27 +00:00
Kp
1f301770d7
Remove always-NULL gr_bitblt_fade_table
2015-07-21 02:57:27 +00:00
Kp
82e1ea5636
Move similar/mem/mem.cpp -> common/mem/mem.cpp
2015-07-18 21:01:56 +00:00
Kp
a58e8f87a0
Move similar/misc/hash.cpp -> common/misc/hash.cpp
2015-07-18 21:01:56 +00:00
Kp
cfdffa184f
Move similar/arch/sdl/event.cpp -> common/arch/sdl/event.cpp
2015-07-18 21:01:56 +00:00
Kp
04d9f82a50
Move similar/arch/sdl/key.cpp -> common/arch/sdl/key.cpp
2015-07-18 21:01:56 +00:00
Kp
c7542fe9fc
Move similar/arch/sdl/mouse.cpp -> common/arch/sdl/mouse.cpp
2015-07-18 21:01:56 +00:00
Kp
d8f28a8767
Move Cfg::Grabinput to CCfg to improve code sharing
2015-07-18 21:01:56 +00:00
Kp
6bd93e466f
Guard args.h for LTO -Wodr
2015-07-18 21:01:56 +00:00
Kp
3015db64ad
Guard segment.h for LTO -Wodr
2015-07-18 21:01:55 +00:00
Kp
4c200342dd
Use range_for for PHYSFS archive types
2015-07-18 21:01:55 +00:00
Kp
095e64fd5a
Support serializing enum class
2015-07-18 21:01:55 +00:00
Kp
d3df8b8e83
Fix LTO -Wodr for cheats
2015-07-18 03:49:47 +00:00
Kp
bbcdf9f7d2
Fix LTO -Wodr for GameCfg
2015-07-18 03:49:47 +00:00
Kp
19ed586988
SDL2: SDL_JoystickName parameter changed
2015-07-14 02:42:12 +00:00
Kp
b822f4c049
Simplify joystick setup
2015-07-14 02:42:12 +00:00
Kp
7a16099aaf
Fix gcc-4.6 cmd build
...
gcc-4.6 lacks forward_list<T>::splice_after(iterator, forward_list&).
Add an explicit std::move to help it.
2015-07-14 02:42:12 +00:00
Kp
7dd310c8e9
Use helper macro for reading/writing short in rle
2015-07-14 02:42:12 +00:00
Kp
1c5399427a
Work around clang name lookup bug #13983
...
clang searches scopes in the wrong order, causing strange failures when
an inner template has a parameter with the same name as a type in an
outer scope.
clang bug report: <https://llvm.org/bugs/show_bug.cgi?id=13983 >
2015-07-13 01:09:37 +00:00
Kp
6c94416a90
Pass array from ptridx factory
2015-07-13 01:09:37 +00:00
Kp
fa8dcc9113
Explicitly delete basic_ptridx(pointer_type); require array
...
Require the array argument for basic_ptridx, which is supplied
automatically when the factory is used.
2015-07-13 01:09:37 +00:00
Kp
1adb56f16b
Make draw_mine_all static
2015-07-13 01:09:36 +00:00
Kp
ff5bb37c5c
Combine basic_ptr_global_factory, basic_vptridx_global_factory
2015-07-13 01:09:36 +00:00
Kp
73fdd59225
Require exact type for valptridx factory
2015-07-13 01:09:36 +00:00
Kp
745de17c41
Use T::index_type for highest_valid
2015-07-13 01:09:36 +00:00
Kp
012b65a37c
Pass vcobjptridx to check_trigger
2015-07-12 01:04:22 +00:00
Kp
13bcdcf0ca
Use valptr for fireball.cpp
2015-07-12 01:04:19 +00:00