Commit graph

2849 commits

Author SHA1 Message Date
Kp a6c8087815 Remove unused compute_object_light parameter rotated_pnt 2017-03-11 19:56:24 +00:00
Kp dfbcc02346 Pass const object to compute_object_light 2017-03-11 19:56:24 +00:00
Kp 84faf8aa73 Pass canvas to draw_object_blob 2017-03-11 19:56:24 +00:00
Kp 4e1156a996 Use canvas in OGL g3_draw_sphere 2017-03-11 19:56:24 +00:00
Kp 9ccddf5366 Pass canvas to draw_exit_model 2017-03-11 19:56:23 +00:00
Kp 719de35484 Pass grs_bitmap to gr_pixel 2017-03-11 19:56:23 +00:00
Kp 9dbec8433d Pass grs_bitmap to gr_upixel 2017-03-11 19:56:23 +00:00
Kp 9311548eba Pass grs_bitmap to ogl_upixelc 2017-03-11 19:56:23 +00:00
Kp c725a6cb88 Pass canvas to gr_init_font 2017-03-11 19:56:22 +00:00
Kp afb52a5a3e Pass canvas to draw_hud 2017-03-11 19:56:22 +00:00
Kp a19286437a Pass canvas to show_mousefs_indicator 2017-03-11 19:56:22 +00:00
Kp 4b6f42a962 Pass canvas to show_reticle 2017-03-11 19:56:22 +00:00
Kp 5e1b27120d Pass canvas to HUD_render_message_frame 2017-03-11 19:56:21 +00:00
Kp d67a27df65 Fix SDL check_header_includes=1 build
Type `SyncGLMethod` was defined conditional on DXX_USE_OGL, but header
`common/include/ogl_sync.h` used `SyncGLMethod` unconditionally.  This
works fine in the normal build since SDL builds never include
`common/include/ogl_sync.h`, but broke the check_header_includes=1 test
since that compiles `common/include/ogl_sync.h` even for SDL builds.

Wrap type `ogl_sync` in `#if DXX_USE_OGL` to hide it from the
check_header_includes=1 test in SDL mode.
2017-03-11 19:56:21 +00:00
Kp f5a17abbe8 Pass canvas to show_HUD_names 2017-03-10 01:22:28 +00:00
Kp 7410ad343c Pass canvas to render_mine 2017-03-10 01:22:28 +00:00
Kp 8542940b24 Pass canvas to render_frame 2017-03-10 01:22:27 +00:00
Kp 393e96b8d8 Unify SDL/OGL save_screen_shot
This simplifies maintenance and reduces the potential for inconsistency.
It also cleans up one existing inconsistency.
2017-03-10 01:22:27 +00:00
Kp c50756c958 Cache canvas in radio.cpp 2017-03-10 01:22:25 +00:00
Kp 5be6b53d16 Fold calls in ui_draw_radio 2017-03-10 01:22:25 +00:00
Kp 0f93dc6e34 Cache canvas in message.cpp 2017-03-10 01:22:25 +00:00
Kp 4d9541d776 Cache canvas in menubar.cpp 2017-03-10 01:22:25 +00:00
Kp a730f68e0b Cache canvas in listbox.cpp 2017-03-10 01:22:25 +00:00
Kp 6ff14b7688 Cache canvas in keypad.cpp 2017-03-10 01:22:25 +00:00
Kp dff67dad1b Cache canvas in inputbox.cpp 2017-03-10 01:22:24 +00:00
Kp 8d5ca033e1 Cache canvas in icon.cpp 2017-03-10 01:22:24 +00:00
Kp 9d4e1e307c Shorten ui_dialog_do_gadgets 2017-03-10 01:22:24 +00:00
Kp 0dc59ab3f2 Simplify ui_dialog_handler switch 2017-03-10 01:22:24 +00:00
Kp 8633b85ee4 Simplify draw_tmap interpolation
Prior changes removed most of what made the switch branches distinct.
Capitalize on that to combine identical code paths.
2017-03-10 01:22:24 +00:00
Kp fe7bb8d36b Use valptridx<wall>::magic_constant for wall_none 2017-03-04 22:25:54 +00:00
Kp a8c3a7f10b Alias Side_to_verts to Side_to_verts_int 2017-03-04 22:25:54 +00:00
Kp cebd2fd36d Pass object &to boss_init_all_segments
The index is not needed.
2017-03-01 02:48:41 +00:00
Kp 482dcf0ba3 Avoid temporarily moving boss while probing layout
Expose sphere_intersects_wall and call it directly from
boss_fits_in_seg, so that boss_fits_in_seg does not need to modify the
position and segment of the boss during the test.
2017-03-01 02:48:40 +00:00
Chris Taylor 19e4c07bb0 Bosses generated by a robot maker or even released by another robot will now teleport
Fixes issue #328.
2017-02-26 10:21:10 +08:00
Chris Taylor 32286ed4fc Play boss looping immediately on loading saved game
If boss has teleported before, even before a loaded state was saved, play the boss looping sound immediately when loading the saved game (if near the boss). Resolves issue #326.
2017-02-26 10:21:10 +08:00
Kp ba914fea81 Pass up various return values 2017-02-26 00:00:02 +00:00
Kp 8a89313ec4 Move compute_segment_center body to dcx 2017-02-22 03:05:44 +00:00
Kp 892d450022 Move compute_center_point_on_side body to dcx 2017-02-22 03:05:43 +00:00
Kp 08e4a6e620 Use stdint constants for some INT*_MAX
clang becomes confused trying to determine which vm_distance_squared
constructor to use for a literal input of 0x7fffffffffffffff, even
though the size of the input requires it to be `long` and only one
constructor can take a `long`.  Switch from an explicit
0x7fffffffffffffff to the symbolic constant INT64_MAX, which has the
same value, but a platform-appropriate suffix to force the compiler to
pick the right type.

For general clarity, switch some other instances of integer maximum
literals to symbolic constants of the same value.

This commit has no effect on the generated code (except for changes to
line numbers).

Reported-by: kreatordxx <https://github.com/dxx-rebirth/dxx-rebirth/pull/324>
Fixes: 17208cca79 ("Disallow int for vm_distance_squared")
2017-02-22 03:05:43 +00:00
Kp dc090958d1 Reduce D1 spreadfire cost
Reported-by: zicodxx <https://github.com/dxx-rebirth/dxx-rebirth/issues/322>
Analyzed-by: kreatordxx <https://github.com/dxx-rebirth/dxx-rebirth/issues/322#issuecomment-280896375>
Fixes: 10ff2b9ea2 ("Change Primary_weapon_to_weapon_info key to weapon_id_type")
2017-02-19 19:33:45 +00:00
Kp 6cd6189681 Never pass nullptr to ai_door_is_openable
When objp is nullptr, ai_door_is_openable assumes Buddy_objnum is a
valid object number, but this assumption is not guaranteed to be true.
When it is false, the game crashes.  This crash can be triggered by a
brain robot trying to make nearby robots snipe.

Fix the crash by passing the robot of interest.

Reported-by: Yarn <http://www.dxx-rebirth.com/frm/index.php/topic,2165.0.html>
2017-02-19 19:33:45 +00:00
Kp 859b399d20 Use mask for Secondary_last_was_super 2017-02-19 19:33:45 +00:00
Kp 7c658fd8cd Use mask for Primary_last_was_super 2017-02-19 19:33:44 +00:00
Kp a6cd87613c Pass polymodel &to free_model 2017-02-19 19:33:44 +00:00
Kp 1a7659897a Pass canvas to draw_model_picture 2017-02-19 19:33:44 +00:00
Kp 39071d124d Pass canvas to draw_polygon_model 2017-02-19 19:33:43 +00:00
Kp b918760b3f Move find_connect_side body to dcx 2017-02-19 19:33:38 +00:00
Kp b82d9d2b51 Move get_side_verts body to dcx 2017-02-19 19:33:38 +00:00
Kp 9821a77372 Simplify use of get_num_faces 2017-02-19 19:33:38 +00:00
Kp cdb193c053 Use unsigned for sides/verts in more places 2017-02-19 19:33:38 +00:00