zico
586ba9ff6d
Added ability to show ping on HUD player list (to cycle via F7)
2016-03-30 13:54:21 +02:00
Kp
dd3cedff3d
Add get_ghost_id for multi_do_reappear
...
Ghosts use the same ID space as players, so reuse function get_player_id
to fetch the ID after checking.
Reported-by: zicodxx <https://github.com/dxx-rebirth/dxx-rebirth/issues/182 >
Fixes: 9f26e2211e
("Warn on invalid object ID access")
2016-03-20 20:38:54 +00:00
Kp
c1503d0e0f
Widen scope of player_info preservation
2016-03-19 19:08:11 +00:00
Kp
dc70dd61a5
Move gameseq_init_network_players call into LoadLevel
...
gameseq_init_network_players updates the Players array after loading a
level. This should always be done, since players may change their
object number across levels. Move the call into LoadLevel since some
callers failed to do it.
2016-03-19 19:08:10 +00:00
Kp
daaad3b049
Factor out 3d interpreter functions
2016-03-19 19:08:10 +00:00
Kp
34417e9b7a
Simplify track_goal setup
...
Fixes: 7cce4e292d
("Fixed up non-NEWHOMER code for testing purposes")
2016-03-19 19:08:10 +00:00
Kp
27cef20eb3
Move namespace dsx handling to dsx-ns.h
2016-03-19 19:08:10 +00:00
Kp
b8f39b024a
Move DoMenu into dsx
2016-03-19 19:08:10 +00:00
Kp
fcf59268c9
Use range_for for state.cpp
2016-03-19 19:08:09 +00:00
Kp
20e72128de
Add configure test and fallback code to support ancient Windows
...
Windows 2000 has no support for getaddrinfo. Five years ago (Apr 5
2011), the addition of tracker support
(7f18afd5d7
) brought a requirement for
getaddrinfo. Recently, someone with a working Windows 2000 system
reported that Rebirth no longer starts on Windows 2000. Although such
systems should not be connected to the Internet, they may still need
name resolution on a LAN. Add a configure test to probe for getaddrinfo
support and fall back to gethostbyname if needed.
Compiling a binary that works on Windows 2000 requires one of:
* using an ancient SDK that does not declare getaddrinfo
* defining _WIN32_WINNT to exclude Windows XP support
* overriding the SConf test to force failure
Fixes: 7f18afd5d7
("Client-side implementation for Tracker support by Matt 1360 Vandermeulen including improvements in udp_dns_filladdr and IPv4/IPv6 compability; Very little adjustments by me, too including IPv6 support for Windows (untested); Actual tracker code will follow later as seperate branch when it's done")
2016-03-18 02:05:16 +00:00
Kp
8a09513934
Cache get_local_player in init_player_stats_level
2016-03-18 02:05:16 +00:00
Kp
be17cc929d
Combine count_number_of_{robots,hostages} into template
2016-03-17 03:34:24 +00:00
Kp
0f35160d55
Shorten gameseq_init_network_players
2016-03-17 03:34:23 +00:00
Kp
aaaabfeb31
Fix count of hostages lost
...
Reported-by: Mako88 <https://github.com/dxx-rebirth/dxx-rebirth/issues/186 >
Fixes: c0ca1248fd
("Simplify hostage lost message")
2016-03-09 02:18:52 +00:00
Kp
4b4077bab9
Fix template/helper confusion
...
Sync non-template types to make helper a better match. Rename helper to
clarify code flow for readers.
Reported-by: kreatordxx <https://github.com/dxx-rebirth/dxx-rebirth/issues/183 >
Fixes: ff67afd440
("Propagate partial_range up into PHYSFSX_findFiles family")
2016-03-06 18:11:20 +00:00
Chris Taylor
e7c437f7fb
Address Clang name lookup issues: lookup descent_version_type enumerations against 'Mission' type instead of from Mission/Mission_path instances
2016-03-06 13:01:41 +08:00
Kp
06ed8865b7
Use ={} for init_all_vertices Vertex_active
2016-03-05 17:26:24 +00:00
zico
57c33695e6
Do not read pdata packets while the level isn't loaded and try not to send packets to players in these states.
2016-03-05 12:05:43 +01:00
Kp
4a5b2c0999
Remove morphing model stub glow_num support
...
Simplify the code by removing the dead path.
2016-03-04 04:12:35 +00:00
Kp
195c589e3f
Move file-local classes into anonymous namespace
2016-03-04 04:12:35 +00:00
Kp
0ff78c5475
Fix incorrect index in MultiLevelInv_Count Stolen_items loop
...
Fixes: cf512cd368
("In MultiLevelInv_Count, use range_for for powerup-object and StolenItems loops. Also do not set unwanted objects to 0 in switch cases as this is redundant due to initialization at the beginning of the function.")
2016-03-04 04:12:35 +00:00
zico
49a336b263
Reintroduced the lost HOMING_TURN_TIME division for homing missile acceleration
2016-03-03 19:39:29 +01:00
Kp
217357711f
Move some argument processing to dcx
2016-03-02 02:52:44 +00:00
zico
7cce4e292d
Fixed up non-NEWHOMER code for testing purposes
2016-02-29 16:42:49 +01:00
zico
8d69b1924b
Added a failsafe to randomized player selection in maybe_drop_net_powerup() that will prevent the loop to hang and go with Player_num instead
2016-02-29 16:31:20 +01:00
zico
cf512cd368
In MultiLevelInv_Count, use range_for for powerup-object and StolenItems loops. Also do not set unwanted objects to 0 in switch cases as this is redundant due to initialization at the beginning of the function.
2016-02-29 16:13:48 +01:00
zico
d5c11c42e4
In multi_prep_level_player() declared i as loop-local
2016-02-29 16:04:44 +01:00
zico
e47a1f3d91
Turned drop_playerobj in chrose_drop_segment() into reference
2016-02-29 15:58:36 +01:00
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
zico
2e6aa0f081
Took out obj_unlink() call in net_udp_read_object_packet(). As of 7064fcccba
obj->segnum is undefined and obj_unlink() would be called for undefined objects, causing some new objects to not appear for rejoining players. Since init_objects() is called beforehand and host should not be able to send the same object twice, this whole call should be unnecessary to begin with.
2016-02-23 14:25:17 +01:00
Kp
c26a688af5
Unify tmap storage branches
2016-02-20 17:28:11 +00:00
Kp
d5a12ba5af
Cache afterburner bar temporaries
2016-02-20 17:28:11 +00:00
Kp
0bf60e5661
Hide bogus demo cloak/invul timers
...
Demo files do not record cloak/invulnerability times, so the playback
code sets a fake time of "50% elapsed" for the entire time that the
effect is active. This causes two problems in playback. The first,
which always applied, but was mostly ignored, is that the viewer does
not get the blinking warning that the effect will expire soon. The
second, which became visible with the addition of cloak/invulnerability
digital timers, is that demos always report "15" as the time remaining,
for the entire time that the effect is active. Old demos cannot be
fixed, so hide the problem by forcing the timers to be hidden when
viewing a demo.
2016-02-20 17:28:11 +00:00
Kp
c3003fbb22
Fix vulcan ammo display
...
Do not abuse `f2i` to shift an unsigned quantity. `f2i` is defined to
work on `fix`, which is `int`.
2016-02-20 17:28:11 +00:00
Kp
3c20c24ac0
Disable piggy_bitmap_page_out_all
2016-02-20 17:28:11 +00:00
zico
0215759746
Merge branch 'unification/master' of github.com:dxx-rebirth/dxx-rebirth into unification/master
2016-02-15 13:05:38 +01:00
zico
4ef50976ed
Revised a055aecee5
. Removed secondaries cap for Multiplayer but restared for Singleplayer (for gameplay/balance). Limit could be restored for Multiplayer if levels were otherwise properly repopulated (planned)
2016-02-15 13:05:17 +01:00
Kp
90de22b2a5
Fix invalid access reading demos
...
Fixes: 74dfa29d31
("Convert most Trigger references to valptridx")
2016-02-14 18:40:57 +00:00
Kp
e36abb25cb
Fix invalid access reading demos
...
Casting the address of a short to `sbyte*` invites trouble. In this
case, it allows uninitialized garbage to be used as the high bits of the
wall index.
Fixes: 553b313099
("Use vwallptr")
2016-02-14 18:40:57 +00:00
zico
081e5d5e3c
Removed rounding offset of x starting coordinate in ogl_ulinec which should hopefully unwanted horizontal offsets in Status Bar energy and afterburner gauges (without causing more problems) if Multisampling is applied
2016-02-14 13:59:02 +01:00
zico
a055aecee5
Apply count cap in maybe_drop_secondary_weapon_egg to bombs only
2016-02-14 12:49:45 +01:00
zico
ed25a5c38d
Eliminate frame dependent damage with blast weapons - as seen in DXX-Retro 532f271af26d6341563d3763d5bb2dce33de7582
2016-02-14 12:15:30 +01:00
Kp
6091b65707
Move score to screen edge for CM_FULL_SCREEN
...
The score is moved in from the edge to avoid overlapping the cockpit
graphic, but the move was applied even when no cockpit was shown.
Change it to align the score when running without the cockpit graphic.
Reported-by: roncli <https://github.com/dxx-rebirth/dxx-rebirth/issues/175 >
2016-02-12 04:02:28 +00:00
Kp
6edab5ca0a
Pass cv_font to get_centered_x
2016-02-12 04:02:28 +00:00
Kp
a92ab4079f
Cache font extent while drawing
2016-02-12 04:02:28 +00:00
Kp
85129248c9
Combine gr_internal_string0_template VideoOffset updates
2016-02-12 04:02:28 +00:00
Kp
938032e51d
Unify gauges draw paths
2016-02-12 04:02:28 +00:00
Kp
cc18ad2b68
Fix some -Wshadow warnings
2016-02-12 04:02:28 +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
f4e1ebb576
Remove unnecessary gr_setcolor calls
2016-02-12 04:02:28 +00:00
Kp
5f073b6546
Avoid reloading cv_color in reticle drawer
2016-02-12 04:02:28 +00:00
Kp
972654c140
Pass color to draw_listed_segments
2016-02-12 04:02:28 +00:00
Kp
9d2659ab26
Pass color to draw_wall_side
2016-02-12 04:02:28 +00:00
Kp
12bd8bce35
Pass color to draw_trigger_side
2016-02-12 04:02:28 +00:00
Kp
cc8bed5b95
Pass color to draw_side_edge
2016-02-12 04:02:28 +00:00
Kp
7694fff456
Pass color to draw_seg_side
2016-02-12 04:02:28 +00:00
Kp
fd834f0924
Pass color to draw_segment
2016-02-12 04:02:28 +00:00
Kp
8066361076
Pass color to draw_player
2016-02-12 04:02:28 +00:00
Kp
68cf7939a2
Pass color to draw_line
2016-02-12 04:02:28 +00:00
Kp
d08bfc3170
Pass color to g3_draw_sphere
2016-02-12 04:02:28 +00:00
Kp
1b4b6673ee
Pass color to g3_draw_poly
2016-02-12 04:02:28 +00:00
Kp
8c24eaa721
Pass color to g3_draw_line
2016-02-12 04:02:28 +00:00
Kp
36bd39babe
Pass color to gr_line
2016-02-12 04:02:28 +00:00
Kp
3c73d44771
Pass color to gr_disk
2016-02-12 04:02:28 +00:00
Kp
ecb71ba22e
Pass color to gr_ucircle
2016-02-12 04:02:28 +00:00
Kp
edd2acc86b
Pass color to gr_box
2016-02-12 04:02:28 +00:00
Kp
de08a67321
Pass color to gr_ubox
2016-02-12 04:02:28 +00:00
Kp
23047b1165
Pass color to gr_rect
2016-02-12 04:02:28 +00:00
Kp
35a4736df0
Pass color to gr_urect
2016-02-12 04:02:28 +00:00
Kp
f235d6b12b
Pass color to gr_pixel
2016-02-12 04:02:28 +00:00
Kp
053901b62b
Pass color to gr_uline
2016-02-12 04:02:28 +00:00
Kp
0dcfa6fba5
Pass color to ogl_urect
2016-02-12 04:02:28 +00:00
Kp
228bbe999a
Unify draw_automap key color lookup
2016-02-12 04:02:28 +00:00
Kp
d2d9d2bf5a
Unify op_flatpoly color setup
2016-02-12 04:02:28 +00:00
Kp
1c04cb70d9
Change ogl_ubitmapm_cs constant -1 to const white
2016-02-12 04:02:28 +00:00
Kp
2a50243a07
Separate out ogl_ubitmapm_cs color setup
2016-02-12 04:02:28 +00:00
Kp
553b313099
Use vwallptr
2016-02-12 04:02:28 +00:00
Kp
2fd6a425b0
Remove highest_valid
2016-02-12 04:02:28 +00:00
Kp
e07c9a5f87
Combine ft_chars, ft_allocdata into one allocation
2016-02-12 04:02:28 +00:00
Kp
4aea3b8fdc
Shorten ogl_set_blending
2016-02-12 04:02:28 +00:00
Kp
230f2dbb19
Make cv_blend_func OGL-specific
2016-02-12 04:02:28 +00:00
Kp
b57f08c798
Use partial_const_range
2016-02-12 04:02:28 +00:00
Kp
31716bbf42
Factor out draw_special_segments color lookup
2016-02-11 03:25:52 +00:00
Kp
2acad85061
Remove unnecessary zero-fill in ogl_ubitmapm_cs
2016-02-11 03:25:52 +00:00
Kp
17c750a101
Cache font scale values at function scope
2016-02-10 03:58:05 +00:00
Kp
5c75d19dba
Fold ogl_internal_string calls to ogl_ubitmapm_cs
2016-02-10 03:58:05 +00:00
Kp
c5f4daa11b
Remove write-only trigger field time
2016-02-06 22:12:55 +00:00
Kp
6e20d86941
Move OF_PLAYER_DROPPED into drop_powerup
...
This fixes an issue where calling drop_powerup with num > 1 only tagged
one powerup as player-dropped.
This also changes powerups dropped by the thief to be "player-dropped",
since, aside from the initial shields/energy, they came from the player
originally.
2016-02-06 22:12:55 +00:00
Kp
08248331a9
Unify do_door_close
2016-02-06 22:12:55 +00:00
Kp
1f9e69b0b7
Replace highest_valid(V,offset) with partial_range
2016-02-06 22:12:55 +00:00
Kp
71d4c3a0e1
Reuse gr_init_font for gr_remap_font
2016-02-06 22:12:55 +00:00
Kp
5d9c64e8fc
Fuse gr_string test/add
2016-02-06 22:12:55 +00:00
Kp
198540d080
Use range_for in bm.cpp
2016-02-06 22:12:54 +00:00
Kp
ec025d4e88
Pass common highest_valid to vptr factory
2016-02-06 22:12:54 +00:00
Kp
0101f98905
Use wallnum_t in more places
2016-02-06 22:12:54 +00:00
Kp
bb5d1bb7e5
Use valptridx array type for Walls
2016-02-06 22:12:54 +00:00
Kp
72d2844070
Use enum for trigger flags
2016-02-06 22:12:54 +00:00
Kp
74dfa29d31
Convert most Trigger references to valptridx
2016-02-06 22:12:54 +00:00
Kp
4f0cbcffa9
Use valptridx array type for Triggers
2016-02-06 22:12:53 +00:00
Kp
4d72f88ae1
Preprocess out PHYSFSX_writeAngleVec
...
This is unused now that jointpos_write is preprocessed out.
Fixes: ed55763603
("Remove unused symbols")
2016-02-02 03:10:53 +00:00
Kp
0d1dd636ca
Move extraAccessory into if(D2)
...
It is only used in D2, so do not use the space when compiling D1.
2016-02-02 03:10:53 +00:00
Kp
e283a22709
Use enum class for check_volatile_wall
2016-01-29 04:05:47 +00:00
Kp
bc488a8f57
Improve check_volatile_wall
2016-01-29 04:05:47 +00:00
Kp
905d935a6b
Remove write-only cv_drawmode
2016-01-29 04:05:47 +00:00
Kp
d8292300ab
Switch select_file_subfunction_t to anonymous template typedef
2016-01-29 04:05:47 +00:00
Kp
ff67afd440
Propagate partial_range up into PHYSFSX_findFiles family
2016-01-29 04:05:47 +00:00
Kp
92625ff2d0
Fix clang build of CGameArg
...
clang is confused by the use of a class named dcx. Move the declaration
into a namespace{} block to avoid this.
2016-01-29 04:05:47 +00:00
Kp
1eb54bcf4f
Fix clang build of CGameCfg
...
clang is confused by the use of a class named dcx. Move the declaration
into a namespace{} block to avoid this.
2016-01-29 04:05:47 +00:00
Kp
5b9ccda8e8
Simplify update_flicker
2016-01-26 03:45:08 +00:00
Kp
e3033d939e
Simplify wall_restore_all flags update
2016-01-26 03:45:08 +00:00
Kp
3d13e66f6a
Use C++ array in more places
2016-01-26 03:45:08 +00:00
Kp
7fced24bbd
Use ={} to clear unused UVL during load
2016-01-26 03:45:08 +00:00
Kp
38bc1fb28f
Use range_for for medwall CountedWalls
2016-01-26 03:45:08 +00:00
Kp
8cbc672080
Factor out draw_special_wall BM_XRGB
2016-01-26 03:45:07 +00:00
Kp
994f2edc4d
Factor out draw_special_wall color choice
2016-01-26 03:45:07 +00:00
Kp
c476c42e8e
Factor out kill names in multi_compute_kill
2016-01-26 03:45:07 +00:00
Kp
c641a0404a
Use range_for for multi_message_feedback team_name
2016-01-26 03:45:06 +00:00
Kp
bad07b668e
Fix misplaced preprocessor directive
2016-01-26 03:45:06 +00:00
Kp
4e29e2625d
Move multi_endlevel_poll* lookups to menu creation
2016-01-26 03:45:06 +00:00
Kp
124a2ee09c
Move net_udp.cpp specific defines out of header
2016-01-26 03:45:06 +00:00
Kp
08f7d850e0
Fix SDL build failure
2016-01-26 03:45:06 +00:00
Kp
9e174a0e0e
Factor out primary/secondary search/reorder
2016-01-17 17:36:48 +00:00
Kp
b8026fa2d5
Factor out some texture precache calls
2016-01-17 05:19:10 +00:00
Kp
ba7e64bec5
Cache obj->size in draw_player
2016-01-17 05:19:10 +00:00
Kp
1880648c2b
Use ?: for endlevel glitz menu
2016-01-10 21:18:09 +00:00
Kp
499060ef4c
Use open_font[] only for color fonts
2016-01-10 21:18:09 +00:00
Kp
677c70c64e
Move font filename into grs_font
2016-01-10 21:18:09 +00:00
Kp
54d5ab84ca
Refactor gr_string delegation
2016-01-10 21:18:09 +00:00
Kp
609f4e9261
Remove vsprintf in 2d/font.cpp
2016-01-10 21:18:08 +00:00
Kp
5d4fff1534
Combine gr_printf/gr_uprintf into template
2016-01-10 21:18:08 +00:00
Kp
7386094bc3
Rename menu macros to reduce token pasting
2016-01-09 16:38:17 +00:00
Kp
2b34547b05
Remove redundant DXX_UDP_MENU_OPTIONS(ENUM)
2016-01-09 16:38:17 +00:00
Kp
de6b66a9cb
Remove sprintf from main/state.cpp
2016-01-09 16:38:17 +00:00
Kp
c07c7e204f
Remove sprintf from editor/mine.cpp
2016-01-09 16:38:17 +00:00
Kp
c140f8aae4
Remove sprintf from editor/medwall.cpp
2016-01-09 16:38:17 +00:00
Kp
858c3e26e0
Remove sprintf from editor/medrobot.cpp
2016-01-09 16:38:17 +00:00
Kp
4e863716d9
Remove sprintf from editor/med.cpp
2016-01-09 16:38:16 +00:00
Kp
8ea6e67d1c
Remove sprintf from editor/kmine.cpp
2016-01-09 16:38:16 +00:00
Kp
8602245c5e
Remove sprintf from editor/kgame.cpp
2016-01-09 16:38:16 +00:00
Kp
78830627da
Remove sprintf from editor/group.cpp
2016-01-09 16:38:16 +00:00
Kp
dacf771d43
Remove sprintf from OGL gr.cpp
2016-01-09 16:38:16 +00:00
Kp
28649da083
Remove stub support for demo editor
2016-01-09 16:38:16 +00:00
Kp
079c4d8b5c
Move netgame setup strings to param_opt
2016-01-09 16:38:15 +00:00
Kp
bc392aaaf3
Move net_udp start_poll data onto stack
2016-01-09 16:38:15 +00:00
Kp
15c947d732
Remove unused step_up/step_down direction argument
2016-01-09 16:38:15 +00:00
Kp
7b5d74fddb
Remove write-only last_scroll_check
2016-01-09 16:38:15 +00:00
Kp
548af4475d
Factor some newmenu function calls
2016-01-09 16:38:15 +00:00
Kp
e39b609553
Factor out calls to draw_weapon_info_sub
2016-01-09 16:38:15 +00:00
Kp
dd877f52c2
Remove unused weapon defines
2016-01-09 16:38:15 +00:00
Kp
25feb65a6f
Remove unnecessary pointer subtraction in laser.cpp
...
`parent` can be compared to `Viewer` without converting `Viewer` to an
index.
2016-01-09 16:38:14 +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
9ceedc96a8
Propagate valptridx requirement up
2016-01-09 16:38:14 +00:00
Kp
cefc79f869
Construct find_point_seg segptridx explicitly
2016-01-09 16:38:13 +00:00
Kp
d6359d0eb7
Use template for object rotation functions
2016-01-09 16:38:13 +00:00
Kp
988df1cc42
Factor out marker index number
2016-01-09 16:38:13 +00:00
Kp
a32d9f01a1
Remove return value truncation in find_object_seg
2016-01-09 16:38:13 +00:00
Kp
98f5afa9f8
Remove default argument for basic_ptr(pointer,array &)
2016-01-09 16:38:13 +00:00
Kp
d17b12da31
Remove default argument for basic_ptr(index,array &)
2016-01-09 16:38:12 +00:00
Kp
8a30fc656b
Factor out editor special segment drawing
2016-01-09 16:38:12 +00:00
Kp
7064fcccba
Skip setting segnum/signature of non-objects
2016-01-09 16:38:12 +00:00
Kp
96898bab0a
Block direct changes to Highest_segment_index
...
Route updates through helper functions.
2016-01-09 16:38:12 +00:00
Kp
f48eddeece
Block direct changes to Highest_object_index
...
Route updates through helper functions.
2016-01-09 16:38:12 +00:00
Kp
1cd77754ee
Remove write-only Highest_ever_object_index
2016-01-09 16:38:12 +00:00
Kp
1f91897f5d
Move some game symbols to namespaces
2016-01-09 16:38:12 +00:00
Kp
8dc0f3bd37
Remove unnecessary newmenu_free_background
2016-01-09 16:38:11 +00:00
Kp
fe1c0ee59b
Remove unnecessary free_text
...
The text is stored in a global unique_ptr, so running global destructors
will free the text.
2016-01-09 16:38:11 +00:00
Kp
100af92d3f
Remove unnecessary error_init(NULL)
2016-01-09 16:38:11 +00:00
Kp
7cc8920736
Pass new_wall_type to do_change_walls
...
Each caller knows the trigger type, so pass new_wall_type from the
caller instead of recomputing it inside do_change_walls.
2016-01-09 16:38:11 +00:00
Kp
c2c95e7b4b
Factor out trigger segment loop
2016-01-09 16:38:11 +00:00
Kp
0635dbf108
Pass trigger &
2016-01-09 16:38:11 +00:00
Kp
e24f84298f
Skip rescan walls for force fields
...
Record force fields in the on/off path instead of scanning the array
again.
2016-01-09 16:38:11 +00:00
Kp
3aefd0bf2f
Defer change_segment_light multiply
...
If light_intensity is zero, skip the multiplication.
2016-01-09 16:38:11 +00:00
Kp
4770d3a35e
Factor out wall_illusion_* common logic
2016-01-09 16:38:10 +00:00
Kp
16c754f3a2
Split key_toggle_repeat paths at compile time
...
Every caller passes a literal truth value. Split the implementation by
the truth value. This saves loading the value before the call and
testing it inside the call.
2016-01-09 16:38:10 +00:00
Kp
23d6735f7a
Use .reset() for free_endlevel_data bm
2016-01-09 16:38:10 +00:00
Kp
31360adb9c
Combine command line help printf calls
2016-01-09 16:38:10 +00:00
Kp
68a31121ee
Use menu macros for sound menu
2016-01-09 16:38:10 +00:00
Kp
410b09a330
Expand macro Player_exploded
2016-01-09 16:38:10 +00:00
Kp
7c8b36ec1d
Use automatic cleanup of GL client state
2016-01-09 16:38:10 +00:00
Kp
47190be8e9
Fold Player_exploded into Player_dead_state
2016-01-09 16:38:10 +00:00
Kp
608cfdbf07
Combine Mission::enhanced with Mission::descent_version
2016-01-09 16:38:09 +00:00
Kp
0c0dff9def
Fix fvi sqrt
...
A previous optimization restructured the code in a way that lost the
>>16 normally applied to the product of two fix values.
Fixes: 707b69220d
("Skip sqrt,square in check_vector_to_sphere_1")
2016-01-03 20:21:36 +00:00
Kp
e3e77f8724
Remove sprintf from automap.cpp
2016-01-03 20:21:36 +00:00
Kp
3acfdcd00a
Remove sprintf from game.cpp
2016-01-03 20:21:36 +00:00
Kp
b2882fd48f
Remove sprintf from gamerend.cpp
2016-01-03 20:21:36 +00:00
Kp
e222a13495
Remove sprintf from gameseq.cpp
2016-01-03 20:21:36 +00:00
Kp
0d15877010
Remove sprintf from gauges.cpp
2016-01-03 20:21:36 +00:00
Kp
421fd8a11c
Remove sprintf from newmenu.cpp
2016-01-03 20:21:36 +00:00
Kp
842756630f
Remove sprintf from piggy.cpp
2016-01-03 20:21:36 +00:00
Kp
4afe97fd71
Remove sprintf from piggy_is_substitutable_bitmap
2016-01-03 20:21:36 +00:00
Kp
fd85e3cfc0
Remove sprintf from scores.cpp
2016-01-03 20:21:35 +00:00
Kp
24e902d4cf
Simplify find_connect_side
2016-01-03 20:21:35 +00:00
Kp
5ba5910e7a
Use symbolic side_none for testing find_connect_side result
2016-01-03 20:21:35 +00:00
Kp
2ef83ad002
Remove redundant segptr computation
2016-01-03 20:21:35 +00:00
Kp
34df375032
Cache remove_trigger wall_num
2016-01-03 20:21:35 +00:00