Commit graph

5403 commits

Author SHA1 Message Date
Kp 774d01ddcc Use enable_if dispatching for serial message_type 2014-08-17 23:24:24 +00:00
Kp f5a85b0f65 Enable converting vvalptridx->valptridx for subtypes 2014-08-17 22:09:32 +00:00
zico d2b0a4d02d Fixed incorrect/missing calculation of collision point in check_vector_to_sphere_1 and added special check in check_vector_to_object to only apply for certain objects; Removed extrapolation of physics as it would unintentionally cause premature collisions (requires further fixing of do_physics_sim and do_physics_sim_rot to properly scale to FrameTime) 2014-08-17 23:57:56 +02:00
Kp 3ea6b0eb18 Explicitly delete nullptr construction of valptridx 2014-08-17 20:41:59 +00:00
Kp 66cb80c343 Propagate use of objptridx 2014-08-17 20:31:18 +00:00
Kp 001c0b6f51 Fix crash on failure to create mine exit explosion 2014-08-17 19:33:43 +00:00
Kp 56557a0443 Explicitly delete vvalptridx(valptridx&&) 2014-08-17 19:32:16 +00:00
Kp 83c6b60123 Use array<> for textures_list 2014-08-16 22:18:14 +00:00
Kp 99f1777983 Move point_list onto interpreter stack 2014-08-16 22:18:09 +00:00
Kp dfb7026724 Only set canvas color if it is used 2014-08-16 21:58:37 +00:00
Kp 1d16377d48 Change isyou to your_index and promote it out a layer
There is only ever one record for which isyou is true.
2014-08-16 21:56:46 +00:00
Kp 4b7c823f2f Remove write-only variable morph_uvls 2014-08-16 21:56:18 +00:00
Kp d74e36507c Propagate NULL arguments to g3_check_and_draw_poly 2014-08-16 21:54:48 +00:00
Kp 22a34809ee Move interpreter g3s_lrgb onto stack
MAX_POINTS_PER_POLY is 25, so storing lrgb on the stack fits easily and
saves memory allocation/deallocation.
2014-08-16 21:53:29 +00:00
Kp cbd341e8ee Remove unused !FADE_FLATPOLY code 2014-08-16 21:52:56 +00:00
Kp 1cd6277a3f Move interpreter OP_ constants to static const 2014-08-16 21:52:37 +00:00
Kp bd739041f8 Remove special case for SP homing missiles
The special case let robot homing missiles track players without a line
of sight and prevented player homing missiles from tracking robots out
of the player's sight.
2014-08-16 21:52:25 +00:00
Kp e9e02355cc Fix crash on exiting game 2014-08-16 18:32:24 +00:00
Kp 9483cc7280 Compact find_goal_texture, multi_apply_goal_textures 2014-08-16 18:16:59 +00:00
Kp 14532e2a32 Use helper functions for apply_light 2014-08-16 18:15:16 +00:00
Kp 353e22d314 Default construct g3s_codes to 0/ff 2014-08-16 18:14:11 +00:00
Kp 2a3176dc98 Use array<> for segment members 2014-08-16 18:14:00 +00:00
Kp bd1ca6bf4d Rewrite find_seg_side to be iterator based 2014-08-16 17:59:36 +00:00
Kp 4b04ccc1c2 Pass quadint to fixdivquadlongu 2014-08-16 17:44:26 +00:00
Kp 0ec8b6671f Use native int64 math for fixmulaccum 2014-08-16 17:43:56 +00:00
Kp ceeaadb940 Add native int64 to quadint struct 2014-08-16 17:42:34 +00:00
Kp 47d0ecee39 Use array<> for get_side_verts 2014-08-16 17:42:23 +00:00
Kp e1cdd44998 Remove unused return value for g3_check_and_draw_poly 2014-08-16 17:35:44 +00:00
Kp 913a095be7 Remove unused return value of g3_draw_tmap 2014-08-16 17:35:44 +00:00
Kp a42a403198 Remove unused return value of g3_draw_morphing_model 2014-08-16 17:35:44 +00:00
Kp 0228b067c1 Remove unused return value of g3_draw_polygon_model 2014-08-16 17:35:44 +00:00
Kp 38c55434e4 Remove Microsoft-specific #define inline
Microsoft compilers currently cannot compile Rebirth, but even if they
could, they now understand the standard keyword inline.
2014-08-16 17:34:09 +00:00
Kp afd26ccd75 Add VS2013 build files
This does not compile yet, but commit the files to save others the work
of creating the framework.

Known issues:
- Some editor-specific files do not find their headers due to missing
  AdditionalIncludeDirectories
- VS2013.2 picks incorrect variadic template overloads.  VS2013.3 might
  do better.
- VS2013.2 C preprocessor mishandles C99 __VA_ARGS__ usage
2014-08-16 17:02:21 +00:00
Kp d945a95d47 Use std::default_delete<Mission> for Mission_ptr 2014-08-16 04:22:01 +00:00
Kp 621f947241 Switch builtin_mission_filename to d_fname 2014-08-16 04:20:48 +00:00
Kp c85819ac94 Forbid d_free on non-POD 2014-08-16 04:18:58 +00:00
Kp b8ee7b23df Use std::swap in promote(mle) 2014-08-16 04:18:49 +00:00
Kp 4d4dbab52f Use std::swap to implement EXCHG 2014-08-16 04:18:41 +00:00
Kp 3ecaf15d58 Add braces to fix gcc 4.6 build 2014-08-14 02:34:15 +00:00
Kp 414cf3b29b Remove useless buddy rediscovery loop
Assume Buddy_objnum will be set right.
2014-08-14 02:03:27 +00:00
Kp bf8d29b348 Remove useless buddy bot checks
These are only hit after the condition is assumed true.
2014-08-13 22:17:38 +00:00
Kp 55063abade Use static_assert to reject invalid vvalptridx_t constants 2014-08-13 22:10:20 +00:00
Kp 8cd2cd216d Fix Player_num regression in multiplayer startup 2014-08-13 03:20:59 +00:00
Kp d6b81d2fe3 Deduce create_bfs_list max_segs 2014-08-13 03:19:13 +00:00
Kp c3086f0875 Split out boss action messages 2014-08-13 03:19:13 +00:00
Kp 9979302303 Change IS_CHILD to inline function 2014-08-13 03:19:12 +00:00
Kp 915b78b5e1 Add vvalptridx_t for always-valid valptridx values 2014-08-13 03:19:12 +00:00
Kp 125d9257be Use special type names for segment/object numbers 2014-08-13 02:57:12 +00:00
Kp 2764e3652a Propagate use of objptridx_t 2014-08-13 02:56:58 +00:00
Kp 81c6f27f44 Change point_seg::segnum to short 2014-08-13 02:56:58 +00:00