Kp
dd3f272929
Use enum class for actdoornum_t
2020-12-20 20:39:07 +00:00
Kp
1c2fcf86e0
Convert multi_leave_game to dispatch through a vtable
2020-12-20 20:39:07 +00:00
Kp
e2c95058db
Convert multi_endlevel to dispatch through a vtable
2020-12-20 20:39:07 +00:00
Kp
a3eb82cefd
Move multi code into namespaces
2020-12-20 20:39:07 +00:00
Kp
5e4047ce2a
Convert disconnect_player to dispatch through a vtable
2020-12-20 20:39:07 +00:00
Kp
955ce55661
Convert kick_player to dispatch through a vtable
2020-12-20 20:39:07 +00:00
Kp
2007257064
Convert get_multi_endlevel_poll2 to dispatch through a vtable
2020-12-20 20:39:07 +00:00
Kp
407678dfdf
Convert multi_send_endlevel_packet to dispatch through a vtable
2020-12-20 20:39:07 +00:00
Kp
ea6504e60b
Convert multi_level_sync to dispatch through a vtable
2020-12-20 20:39:07 +00:00
Kp
2f90d7a208
Convert multi_do_protocol_frame to dispatch through a vtable
2020-12-20 20:39:07 +00:00
Kp
d070377e6b
Convert multi_objnum_is_past to dispatch through a vtable
...
This reduces the call depth by one, and eliminates a load of a global
variable that always has the value MULTI_PROTO_UDP. It adds a load of
the address of the empty dispatch object. Overall, this should be an
improvement.
2020-12-20 20:39:07 +00:00
Kp
696141eabf
Use enum class for weapon_info::bounce
2020-12-20 20:39:07 +00:00
Kp
e261ca2884
Use enum class for weapon_info::matter
2020-12-20 20:39:07 +00:00
Kp
9f8fbb1a77
Remove newdemo_strip_frames
...
The sole user is based on newdemo_do2, which is being retired. This
feature was only available in developer builds.
2020-12-20 20:39:07 +00:00
Kp
df1ee5e671
Make weapon reorder menu inherit from newmenu
2020-12-20 20:39:07 +00:00
Kp
303815f80c
Make netgame_list_game_menu inherit from newmenu
2020-12-20 20:39:07 +00:00
Kp
e57c9efa7e
Change main F1 help menu to inherit from newmenu
2020-12-19 16:13:26 +00:00
Kp
76acfdd38f
Convert main menu to inherit from newmenu
2020-12-19 16:13:26 +00:00
Kp
8e65573c56
Eliminate move construction of newmenu_layout
...
Construct one in place, update it, and then use it to initialize the
rest of the newmenu.
2020-12-19 16:13:26 +00:00
Kp
c68dddd372
Move various definitions into namespaces
2020-12-19 16:13:26 +00:00
Kp
b1b2300c7d
Use enum class for wall_key
2020-12-19 16:13:26 +00:00
Kp
47c33cbd55
Use enum class for WALL_IS_DOORWAY_FLAG
...
This reduces the size of the debug information substantially.
2020-12-19 16:13:26 +00:00
Kp
efcd9b91ce
Use enum class for WALL_IS_DOORWAY_sresult_t
...
This generates the same code, but shrinks the debug information.
2020-12-19 16:13:26 +00:00
Kp
56122687d1
Delegate newmenu subfunction handling into virtual function
2020-12-19 16:13:26 +00:00
Kp
d4cf9943c5
Make newmenu subfunction const
2020-12-19 16:13:26 +00:00
Kp
1032462988
Make newmenu max_displayable const
2020-12-19 16:13:26 +00:00
Kp
de5c300724
Make newmenu_layout::all_text const
2020-12-19 16:13:26 +00:00
Kp
530f396b2e
Make newmenu::tiny_mode_flag, tabs_flag, max_on_menu const
2020-12-19 16:13:26 +00:00
Kp
200952c3d9
Add type-specific tag wrappers for newmenu calls
...
Make the compiler check that title, subtitle, and filename are passed in
the right places.
2020-12-19 16:13:26 +00:00
Kp
53566b7673
Move struct newmenu to newmenu.h
2020-12-19 16:13:26 +00:00
Kp
017c4ce933
Restore buffering on PCX loads
...
Commit 3114874713
delegated PCX loading to
SDL_image, and as an incidental change, switched to using an unbuffered
PHYSFS file. On Linux, this has no perceptible difference in
performance. On Windows, the unbuffered accesses cause enough of a
performance problem for users to notice and report an issue. Add a new
helper to create an SDL_RWops around a buffered file, and use that for
PCX loading.
Fixes: 3114874713
("Delegate PCX loading to SDL_image")
Reported-by: Q3BFG10K <https://github.com/dxx-rebirth/dxx-rebirth/issues/549 >
Reported-by: aybe <https://github.com/dxx-rebirth/dxx-rebirth/issues/555 >
Analyzed-by: arbruijn <https://github.com/dxx-rebirth/dxx-rebirth/issues/555#issuecomment-735442076 >
2020-11-30 05:12:00 +00:00
Kp
a028ea14ae
Restore format(printf) attribute for powerup_basic
...
Kreeblah reports that clang now warns for powerup.cpp due to a missing
__attribute_format_printf. This was incorrectly dropped in
ffb653c0b8
. gcc did not warn, but clang
now warns. Add back the attribute.
Fixes: ffb653c0b8
("Pass control_info & to various functions")
Reported-by: Kreeblah <https://github.com/dxx-rebirth/dxx-rebirth/pull/547 >
2020-10-27 04:27:55 +00:00
Kp
ddcf8c1798
Remove support for show_order_form
...
The original way to order the full version is defunct. Remove the code
that showed that page.
2020-10-22 02:26:17 +00:00
Kp
52e4d6f103
Remove printf checking on vnm_messagebox_aN
...
It is always invoked with format arguments.
2020-10-22 02:26:17 +00:00
Kp
e7cd8bedec
Remove obsolete embed_window_pointer_t
2020-10-22 02:26:16 +00:00
Kp
d2c5b4d64a
Make listbox inherit from window
2020-10-22 02:26:16 +00:00
Kp
09531047b9
Use uint8_t for allow_abort_flag
...
It is only ever 0 or 1.
2020-10-22 02:26:16 +00:00
Kp
ffb653c0b8
Pass control_info & to various functions
...
Switch from a direct global reference to passing control_info& as a
parameter.
2020-10-12 03:28:26 +00:00
Kp
7e73ee2c78
Pass newmenu& to newmenu_create_structure
2020-10-12 03:28:26 +00:00
Kp
2ccfcb64d8
Use named enum for newmenu TinyMode
2020-10-12 03:28:26 +00:00
Kp
96f5428378
Use named enum for newmenu TabsFlag
2020-10-12 03:28:26 +00:00
Kp
a6abf76d0a
Use enum class for index into ObjBitmaps
2020-10-07 03:59:14 +00:00
Kp
24497fa085
Use enum class for bmread mode selector
2020-10-07 03:59:14 +00:00
Kp
c482d01be5
Move some fvi types to namespaces
2020-10-01 03:25:27 +00:00
Kp
b136994551
Move valptridx<segment> to dcx
...
segment is now dcx, so move the valptridx wrapper.
2020-10-01 03:25:27 +00:00
Kp
e6126b800f
Reorder endlevel definitions to split by dcx/dsx
2020-10-01 03:25:27 +00:00
Kp
e068c685f4
Make scores_menu inherit from window
2020-09-21 03:18:12 +00:00
Kp
08701ca190
Store kmatrix_result in a uint8_t size enum
2020-09-21 03:18:12 +00:00
Kp
3ee3ac7b7a
Delete multi_do_death
...
It is not needed. Deathmatch players never lose their keys, so there is
no need to reapply them.
2020-09-11 03:08:02 +00:00
Kp
6a9444e5d6
Move some multiplayer functions into namespaces
2020-09-11 03:08:02 +00:00