Kp
95ab6076a4
Move FakingInvul to player_info
...
Every player can fake invulnerability independently. In preparation for
host tracking, store FakingInvul as a player property, not a static
global.
2016-02-27 19:02:21 +00:00
Kp
788ed1bd70
Compact laser firing code
2016-02-27 19:02:21 +00:00
zico
901a554e96
New powerup management code: Addeed functions and packet type to keep track of original and current level inventory as well as player and thief inventories. Calling maybe_drop_net_powerup() for all ammo based weapons except Concussion missiles. Limiting maybe_drop_net_powerup() to only spawn items missing from initial level inventory. Added function to let host respawn items that were lost for whatever reason. Expanded maybe_drop_net_powerup() and child functions to be able to drop item based on a random player. Changed back maybe_drop_secondary_weapon_egg() to its original behavior, dropping 3 of each type max.
2016-02-25 14:11:08 +01:00
Kp
ea8ca1d1e2
Pass update_flicker timer as argument
...
Clang fails to compile update_flicker<0x80000000>(...); gcc handles it
properly. A template is not necessary here, so switch to passing the
value as an argument. Both compilers accept this.
Reported-by: kreatordxx <private mail>
Fixes: 5b9ccda8e8
("Simplify update_flicker")
2016-02-25 02:36:40 +00:00
Kp
08de1bbff0
Remove cv_color
...
It is only ever set to 0 or copied from other canvases. Set it to zero
everywhere.
2016-02-12 04:02:28 +00:00
Kp
23047b1165
Pass color to gr_rect
2016-02-12 04:02:28 +00:00
Kp
2fd6a425b0
Remove highest_valid
2016-02-12 04:02:28 +00:00
Kp
b57f08c798
Use partial_const_range
2016-02-12 04:02:28 +00:00
Kp
5b9ccda8e8
Simplify update_flicker
2016-01-26 03:45:08 +00:00
Kp
7386094bc3
Rename menu macros to reduce token pasting
2016-01-09 16:38:17 +00:00
Kp
fd64d3284c
Cache ConsoleObject in move_player_2_segment
2016-01-09 16:38:14 +00:00
Kp
86709f547b
Fix capitalization of PHYSFS_File
...
Per comment in physfs.h, the spelling PHYSFS_file is deprecated.
Replace all instances with PHYSFS_File.
2016-01-09 16:38:14 +00:00
Kp
a3ae630829
Remove default argument for basic_ptridx(index)
2016-01-09 16:38:14 +00:00
Kp
1f91897f5d
Move some game symbols to namespaces
2016-01-09 16:38:12 +00:00
Kp
3acfdcd00a
Remove sprintf from game.cpp
2016-01-03 20:21:36 +00:00
Kp
2629b5b3d9
Move SysAutoRecordDemo to CArg
2015-12-24 04:01:27 +00:00
Kp
23bb4c5826
Move SysNoNiceFPS to CArg
2015-12-24 04:01:26 +00:00
Kp
29e305c6df
Use namespace dcx for SDL save_screen_shot
2015-12-23 03:28:18 +00:00
Kp
1975cdb912
Reorder flicker_lights tests
2015-12-22 04:18:52 +00:00
Kp
e8c34be843
Use v*ptr* factories with highest_valid
2015-12-22 04:18:51 +00:00
Kp
db9fb0ed42
Move more symbols into namespace dcx/dsx
2015-12-22 04:18:50 +00:00
Kp
132367ce27
Fix SDL-only build after namespace changes
2015-12-18 04:08:24 +00:00
Kp
2b51578ba6
Use enum class for Player_dead_state (formerly Player_is_dead)
2015-12-15 04:09:35 +00:00
Kp
26e948d5f1
Uninline namespace dsx
2015-12-13 18:00:49 +00:00
Kp
8109379fdd
Use inline namespace dsx for similar/misc/
2015-12-13 18:00:48 +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
Kp
9b8a956431
Make palette_save static for D2
2015-12-04 03:36:31 +00:00
Kp
ed55763603
Remove unused symbols
2015-12-04 03:36:31 +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
64dee5d52a
Move SysMaxFPS to CGameArg
...
Both games support SysMaxFPS. Move it to the common structure.
2015-11-24 04:05:35 +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
6b353cb9ac
Move player powerup_flags to object.ctype.player_info
2015-11-07 21:55:59 +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
17b8b64980
Use macro get_local_player_flags for player's flags
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
8b61b9f0db
Remove unused symbols
2015-10-24 03:13:11 +00:00
Kp
48af374924
Reduce direct use of Segments[]
2015-10-21 02:45:43 +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
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
ad14362db0
Simplify do_invulnerable_stuff
2015-09-26 21:17:13 +00:00
zico
e0785251c4
Reset homing_object_dist along with d_homer_tick_step instead of every frame to make sure lock indicator is visible in frames where homers wait for a new chance to turn; Also moved call of calc_d_tick() to calc_frame_time() - shouldn't be nested in calc_d_homer_tick()
2015-09-10 14:11:30 +02:00
zico
51049794ce
Break screenshot numbering on 9999 instead of 99999 due to formatting of the string (it's still enough)
2015-09-01 19:06:14 +02:00
zico
818017398d
Added a little failsafe to screenshot function to make sure the game will not cause an endless loop if savenum ever rolls over
2015-08-30 12:47:47 +02:00
Kp
f15116f2cb
Simplify multiplayer sound handling
2015-08-05 02:59:02 +00:00
Kp
bda7fef3a0
Use get_local_player to compute reference to local player
2015-07-25 23:10:46 +00:00
Kp
f00725f740
Use forward-declaration header for player.h
2015-07-25 23:10:45 +00:00