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
85ed489642
Use ?: for multi sounds
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
1af81af4ec
Reorder show_HUD_names bool tests
...
This improves the generated code by ~60 instructions.
2015-10-30 02:52:55 +00:00
Kp
f50189dc23
Factor out gauge box color computation
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
cc345aa83d
Simplify demo cloak/invul processing
2015-10-30 02:52:54 +00:00
Kp
6b831b08ec
Update demo caching variables sooner
2015-10-30 02:52:54 +00:00
Kp
9a6d027e63
Factor out weapon cycling
2015-10-30 02:52:54 +00:00
Kp
ff2c88c498
Factor out cockpit/statusbar key gauges
2015-10-30 02:52:54 +00:00
Kp
64c161c4b2
Remove unnecessary zero of .invulnerable_time
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
zico
bd391e2363
Reduced the level rendering from 3 passes to 2 while maintinaing the original function (may need optimization, tho); Rendering level parts with transparency effects (force fields, energy center sparks) in same pass as objects to prevent them from making objects invisible behind them; Changed object sorting to they render back to front to prevent rendering issues (robots disappearing behind explosions, further away powerup rendered over a closer one, etc)
2015-10-25 18:16:34 +01:00
Kp
2ac6c0e72b
Factor out red/gold/blue key messages
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
0c303bc539
Use ?: for drop_player_eggs flag
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
48af374924
Reduce direct use of Segments[]
2015-10-21 02:45:43 +00:00
Kp
21057db809
Move DbgSafelog, DbgVerbose to CArg
2015-10-18 21:01:21 +00:00
Kp
b0541daf19
Remove dead code in D1 demo fixup
2015-10-18 21:01:21 +00:00
Kp
682b845b9d
Reorder gameseg distance tests
2015-10-18 21:01:20 +00:00
Kp
54e12654bb
Factor out side_pokes_out
2015-10-18 21:01:20 +00:00
Kp
f5abe5bc5e
Combine gameseg vm_dist_to_plane calls
2015-10-18 21:01:20 +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
228dd75260
Switch Side_to_verts to unsigned
2015-10-18 21:01:20 +00:00
Kp
ed668b611f
Record start time in demo
2015-10-18 21:01:20 +00:00
Kp
1f63bfeee5
Reduce lifetime of returned get_seg_masks result
2015-10-18 21:01:19 +00:00
Kp
4163510b09
Move compare_func into render_compare_context_t
2015-10-18 21:01:19 +00:00
Kp
c172d2c4c4
Omit OBJ_PLAYER from window.rendered_robots
...
The only user of rendered_robots filters for type OBJ_ROBOT.
2015-10-18 21:01:19 +00:00
Kp
6d714520ee
Skip rendering Viewer sooner
...
Move the skip-Viewer check from render_object up to build_object_lists
so that, instead of skipping the viewer, the viewer is not scheduled
to be rendered.
2015-10-18 21:01:19 +00:00
Kp
f4f451606b
Pass vobjptridx_t to compute_light_emission
2015-10-18 21:01:19 +00:00
Kp
ae338abdc7
Make compute_seg_dynamic_light static
2015-10-18 21:01:19 +00:00
Kp
c5f6878f72
Use bitset for set_dynamic_light vertex visit tracking
2015-10-18 21:01:19 +00:00
Kp
6259e80206
Remove useless Omega blob light hack
...
The code immediately overwrites the computed value with a standard
value. Optimizing compilers deleted the `light_intensity=0` store as
dead. Delete the entire block to save a d_rand call.
2015-10-18 21:01:19 +00:00
Kp
c0d45ab0d4
Compact compute_light_emission OBJ_FIREBALL path
2015-10-18 21:01:19 +00:00
Kp
5d79694584
Cache rotate_list global references
2015-10-18 21:01:18 +00:00
Kp
faf698703e
Make rotate_list result anonymous
2015-10-18 21:01:18 +00:00
Kp
d767f7cd5e
Pass vcsegptridx to render_face
2015-10-18 21:01:18 +00:00
Kp
309426e024
Use enum class for descent_version
2015-10-18 21:01:18 +00:00
Kp
f46a2802aa
Simplify object_nearby_aux return
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
8f656c40db
Use range_for for validate_path
2015-10-13 02:43:24 +00:00
John Ackerman
a606caa2b4
Improve .ini files and help message output
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
ddf1ded74c
Simplify add_missions_to_list
2015-10-11 22:21:00 +00:00
Kp
ad8c64d7ff
Remove unnecessary extension strip in promote
2015-10-11 22:21:00 +00:00
Kp
61f6c81f74
Use std::replace for rewriting count to wide 1s
2015-10-10 03:44:14 +00:00
Kp
4585faa461
Cache reference to secondary_ammo
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
48b7416433
Factor out gauge width string
2015-10-09 02:46:11 +00:00
Kp
a47c6e599d
Shrink menu_bit_wrapper_t when B is empty
2015-10-09 02:46:11 +00:00
Kp
927618e650
Remove useless PHYSFS_eof tests
...
Each test triggers a system seek call. EOF will be signalled by
PHYSFSX_fgets returning nullptr.
2015-10-09 02:46:11 +00:00
Kp
1ecbeb6bf9
Remove redundant use of PHYSFSX_exists
2015-10-09 02:46:11 +00:00
Kp
61fe046ba2
Reuse show_first_found_title_screen for Descent 1
...
This avoids an Error call if none of the titles are available.
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
5fc3e44bee
Simplify setup of linked ham
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
78de0ac119
Add fwd-event.h with forward declarations of event.h
2015-10-09 02:46:10 +00:00
Kp
72400b1a4c
Remove unused read_player_dxx return value
2015-10-09 02:46:10 +00:00
Kp
8032aee461
Enable ammo-based auto-select for Gauss
...
Autoselect from pick_up_vulcan_ammo only ever armed the Vulcan cannon,
even if the user has and prefers a Gauss cannon. This is probably an
oversight from when D2 weapons were added. Rework the pickup logic in
D2 so that the more desirable of Vulcan or Gauss is picked.
2015-10-09 02:46:10 +00:00
Kp
29f79f0a6b
Enable -notitles for Descent 2
2015-10-09 02:46:09 +00:00
Kp
71bde6f35f
Use range_for for properties_read_cmp
2015-10-09 02:46:09 +00:00
Kp
8d2d69d663
Always run mini-autoselect for bombs
...
Autoselect events are gated on the player having none of the item prior
to this pickup, so making the mini-autoselect more aggressive should not
cause unwanted switches.
Since the main autoselect is complicated, requiring the mini-autoselect
to happen only when the main autoselect is skipped makes it complicated
for players to reason about whether the mini-autoselect will happen.
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
8dd1f7c2cf
Move texture_list_index into local scope
2015-10-09 02:46:09 +00:00
Kp
745161a2d1
Tighten alt_textures test
2015-10-09 02:46:09 +00:00
Kp
75104b80f0
Fix operand ordering for team kills
...
Fixes: 4a0a2b7da5
("Use team_kills in team games")
2015-10-04 22:30:02 +00:00
Kp
9da2a938d8
Make team_kills signed
...
Suicides can make kill counts negative.
2015-10-03 22:15:17 +00:00
Kp
4a0a2b7da5
Use team_kills in team games
2015-10-03 22:15:17 +00:00
Kp
b447adcce1
Initialize all vertices in create_abs_vertex_lists
...
Some compiler configurations warn that vertices[4] and vertices[5] may
be used uninitialized. Initialize them to a bogus value so that any
actual use will trap, but the comparisons will be well defined.
2015-10-03 17:17:50 +00:00
Kp
111fc56b00
Return objptridx from maybe_drop_primary_weapon_egg
2015-10-03 17:17:50 +00:00
Kp
3d2591f1ad
Remove unnecessary scores_rprintf macro
2015-10-03 17:17:50 +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
9ba1369d58
Remove useless do_powerup test
...
Remote player shields are not tracked. Remove the test on their value.
2015-10-03 17:17:49 +00:00
Kp
9d4a55ae47
Move fvi globals into anonymous namespace
2015-10-03 17:17:49 +00:00
Kp
e2c6e8449f
Factor out cloak/invul timer display
2015-10-03 17:17:49 +00:00
Kp
85d9f1f3b0
Fix various issues from splitting sensitivity
...
Remove redundant undefine/redefine of helper macros.
Clean up loop conditional.
2015-10-03 17:17:49 +00:00
Kp
aa1a1c5a6a
Fix regressions from changes to advanced host menu
...
Non-static globals were initialized at wrong scope, leading to netgame
duplicate options being forgotten across program restart.
Netgame.DuplicatePowerups is not initialized until well after global
initialization runs.
Literal strings were copied into a local buffer. Replace with a pointer
to the appropriate literal string.
Fixes: aa9a5df0d4
("Rearrange Advanced Hosting Menu")
2015-10-03 17:17:49 +00:00
Kp
271c465a7c
Use <algorithm> for adjust_segment_limit
2015-10-03 17:17:49 +00:00
Kp
d4df692d30
Use range_for in draw_all_edges
2015-10-03 17:17:49 +00:00
Kp
a6d6eceea3
Reduce indirection in automap drawingListBright
2015-10-03 17:17:48 +00:00
Kp
bf52ebf4cd
Skip do_weapon_n_item_stuff if Player_is_dead
...
Fixes: 29aa820dc0
("Only respawn when the player presses fire")
2015-09-30 02:41:55 +00:00
Christian
ab85c6f0e9
Merge pull request #144 from Mako88/new-menu
...
Rearrange Advanced Hosting Menu (by Mako88/A Future Pilot)
2015-09-29 13:41:12 +02:00
Christian
b09cb8f738
Merge pull request #145 from Mako88/calibration-menu
...
Split Sensitivity into Separate Menus (by Mako88/A Future Pilot)
2015-09-29 13:36:58 +02:00
zico
a96ceb2a46
Enabled multi_do_ranking() for D1X
2015-09-29 11:58:42 +02:00
Kp
edccaa91f6
Check return of pick_connected_segment before use
2015-09-29 02:41:22 +00:00
Kp
6224b53581
Use operator?: for flash_cursor gr_set_fontcolor
2015-09-29 02:41:22 +00:00
Kp
43d634a4aa
Use operator?: for newmenu_draw gr_string strings
2015-09-29 02:41:22 +00:00
Kp
50f672ba34
Reuse computed string length
2015-09-29 02:41:22 +00:00
Kp
3d37b01177
Refactor draw_numerical_display
2015-09-29 02:41:22 +00:00
Kp
af949820b6
Use ?: for show_bomb_count gr_set_fontcolor
2015-09-29 02:41:22 +00:00
Kp
574555029f
Simplify sb_show_score sprintf
2015-09-29 02:41:22 +00:00
Kp
78926b0aa8
Simplify con_draw while loop condition
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
Kp
c45a8a8427
Override PRIi64 on Win32 also
...
Some outdated mingw32 headers also set the POSIX value when used on
Windows. Expand the override to force the non-standard Microsoft format
for all Windows platforms.
2015-09-29 02:41:22 +00:00
John Ackerman
0e73b2a209
Revert "Change friendly fire wording"
...
This reverts commit 8128d68e3d
.
2015-09-27 12:40:14 -05: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
35cd1261df
Respect autoselect order for granted items
...
Additionally, improve handling of Primary_last_was_super. Previously,
it was cleared to 0, which made sense if the ship starts with only
lasers. Now that the ship can start with other weapons, clearing
Primary_last_was_super to 0 may override a player's choice. Preserve
player's last-was-super choice when the grant gives both the base and
super forms of a weapon.
Requested-by: Mako88 <https://github.com/dxx-rebirth/dxx-rebirth/issues/140 > [for the Primary_weapon part]
2015-09-26 21:17:14 +00: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
80e98ce2d3
Fix invalid access reading demos
2015-09-26 21:17:14 +00:00
Kp
ad14362db0
Simplify do_invulnerable_stuff
2015-09-26 21:17:13 +00:00
Kp
de3575a647
Shorten fuelcen_check_for_goal
2015-09-26 21:17:13 +00:00
Kp
39bf7c2206
Simplify apply_damage_to_controlcen time calculation
2015-09-26 21:17:13 +00:00
Kp
467c82ec31
Cache get_local_player in ai.cpp
2015-09-26 21:17:13 +00:00
Kp
d6059a3abf
Rework pickup of weapon powerups
2015-09-26 21:17:12 +00:00
zico
a175812000
Reworded text for Descent 1 bomb counter
2015-09-26 20:45:59 +02:00
zico
69353631f0
Made missile views from friendly players optional (off by default)
2015-09-26 20:28:49 +02:00
zico
db2ed6d766
Cleaned up options menu with clearer structure, added hud options under graphics menu and sorted existing items
2015-09-26 19:48:57 +02:00
John Ackerman
d5c580845e
Split Sensitivity into separate menus
2015-09-25 16:59:20 -05:00
John Ackerman
8128d68e3d
Change friendly fire wording
2015-09-25 16:52:41 -05:00
John Ackerman
aa9a5df0d4
Rearrange Advanced Hosting Menu
2015-09-25 15:31:42 -05:00
zico
f8f9843f35
Mouse overrun improvements: Reduced the range of Overrun (from 32 to 16) based on feedbach and restored original mouse base divisor for mouse X/Y axes (changed in 5a36ffdb17
)
2015-09-25 12:07:30 +02:00
zico
d3660207d2
Added Mouse Overrun Buffer option as proposed by kp
2015-09-24 16:31:10 +02:00
Kp
da4d1e0670
Remove bool SysNoHogDir on non-unix
2015-09-22 02:28:38 +00:00
Kp
f9469ffe18
Fix clang warning for powerup caps
2015-09-22 02:28:38 +00:00
Kp
c0e7f70638
Update reactor life text as slider moves
...
Reported-by: Mako88 <https://github.com/dxx-rebirth/dxx-rebirth/issues/125 >
2015-09-22 02:28:38 +00:00
zico
b984243d8e
Fixed a bunch of uninitialized object variables Valgrind complained about
2015-09-20 19:24:25 +02:00
Kp
7673bba50d
Factor out special handling of super laser
2015-09-19 23:04:36 +00:00
Kp
155cd3c928
Remove literal snprintf
2015-09-19 23:04:35 +00:00
Kp
69e3762933
Return joystick axis values by reference
2015-09-19 23:04:34 +00:00
zico
41983dc051
Reworked Advanced Netgame Menu to fit on all possible resolutions and added tracker address to seperate line as newmenu does not really like \n (yet)
2015-09-17 13:55:19 +02: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
be62f446f1
Use range_for for clear_stuck_objects
2015-09-15 02:48:03 +00:00
Kp
ff8aab4694
Move guided missile logic to helper function
...
Fix original bug that tested wrong field for guided missile signature
check.
2015-09-15 02:48:03 +00:00
Kp
3823f0f414
Fix spelling errors in help text
...
keymoard -> keyboard
immedaitely -> immediately
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
83f77fbc48
Use fill_n to store runs of cockpitbuf TRANSPARENCY_COLOR
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
204b608fa6
Normalize MACH&&APPLE vs APPLE&&MACH
2015-09-13 20:23:05 +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
cbaac96324
Fixed (hacked) homing missiles fired by bots that would not track players if player with lowest objnum is dead
2015-09-10 13:19:34 +02:00
zico
6ba89b5abd
If sending robot fire of a non-controlled robot, send fire packet immediately (as the comment suggests); also reformatted robot fire send/do functions to improve readability a bit
2015-09-10 13:05:10 +02:00
Kp
bdbd56c024
Use C++ <cinclude> style
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
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