Commit graph

976 commits

Author SHA1 Message Date
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 d945a95d47 Use std::default_delete<Mission> for Mission_ptr 2014-08-16 04:22:01 +00:00
Kp c85819ac94 Forbid d_free on non-POD 2014-08-16 04:18:58 +00:00
Kp 4d4dbab52f Use std::swap to implement EXCHG 2014-08-16 04:18:41 +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
Kp bfda4c554e Inline med_get_vertex_list 2014-08-12 03:01:14 +00:00
Kp 31fe0dc9ce Reduce code duplication in !OGL g3_draw_bitmap 2014-08-12 03:01:05 +00:00
Kp bc721dbc8f Remove unused g3_draw_rod_tmap return value 2014-08-12 02:58:46 +00:00
Kp b5693e65e0 Remove serial detail class_type_indirection 2014-08-12 02:56:59 +00:00
Kp 7888c13b6b Write point_seg carefully 2014-08-12 02:55:23 +00:00
Kp cec32ce3f5 Move render state arrays onto stack 2014-08-12 02:28:03 +00:00
Kp 903258f54b Make valptridx constructors ready for constexpr
Wait on constexpr marking since array in <gcc-4.8 is not constexpr.
2014-08-09 17:38:45 +00:00
Kp d0db98fe01 Use array<> for netgame_info members 2014-08-09 16:43:55 +00:00
Kp d13e0c9840 Add compile time check to partial_range 2014-08-09 04:14:59 +00:00
Kp 104333391f Print more information from partial_range_error_t 2014-08-09 03:59:49 +00:00
Kp 79d2c968a3 Use array<> for Players 2014-08-08 03:02:59 +00:00
Kp 597a55558f Use array<> for Segment_points 2014-08-08 03:02:43 +00:00
Kp 9308162c80 Make alloc_vert/free_vert static 2014-08-08 03:02:24 +00:00
Kp 62c656c00c Pass quadint to quad_sqrt 2014-08-08 02:53:57 +00:00
Kp 279d39a2d7 Inline fixdivquadlong 2014-08-08 02:53:26 +00:00
Kp 52527e48ee Optimize out unused g3_set_special_render arguments 2014-08-08 02:52:35 +00:00
Kp 1c064b8efb Remove unused find_hitpoint_uv l parameter 2014-08-08 02:51:02 +00:00
Kp b276590998 Change gr_fade_table to array<array<>> 2014-08-08 02:50:27 +00:00
Kp f47aa29cd9 Use color_t for color values 2014-08-08 02:07:47 +00:00
Kp fc979001cb Remove assembler-only variables 2014-08-08 02:07:07 +00:00
Kp 1560dd43e1 Use unique_ptr for font->ft_bitmaps 2014-08-07 03:09:28 +00:00
Kp fd6a7c218e Use unique_ptr for font->ft_chars 2014-08-07 03:05:48 +00:00
Kp ee4773d3ba Use unique_ptr for menu 2014-08-07 02:58:00 +00:00
Kp 37f5aa7960 Use unique_ptr for MenuX 2014-08-07 02:57:39 +00:00
Kp 4acbb40ad7 Use enum for window event result 2014-08-07 02:47:48 +00:00
Kp 553f17a3be Initialize MarkerObject properly 2014-08-05 03:10:04 +00:00
Kp 5c5eb1f1f7 Let WINDOW_SEND_EVENT return a value 2014-08-05 02:34:06 +00:00
Kp ee32a200ea Change window_create<void> to be non-template 2014-08-05 02:33:40 +00:00
Kp efb8c495f6 Use unique_ptr for hmp_track data 2014-08-05 02:31:03 +00:00
Kp 81cb86f2e3 Use unique_ptr for hmp_file 2014-08-05 02:29:43 +00:00
Kp 1adaad4147 Remove broken assembler support
Assembler failed to build in 0.58.1.  Assembler failed to run correctly
after 59344482 / fc92651eb changed y_pointers from int[] to int*.
2014-08-04 03:09:33 +00:00
Kp d9f6e944c9 Use template aliases when available 2014-08-03 03:08:15 +00:00
Kp d667772b21 Move valptridx operator- into DEFINE_VALPTRIDX_SUBTYPE 2014-08-02 00:46:56 +00:00
Kp b29f2ef7bd Replace hashtable with std::map 2014-08-02 00:46:56 +00:00
Kp 9c6cc3b3c9 Allow constructing valptridx_t(index_type) from ~0 2014-08-01 03:34:08 +00:00
Kp f1713f2fec Rewrite DXX_PHYSFS_CHECK_* to avoid if 2014-08-01 03:34:08 +00:00
Kp 0fc376d92a Simplify DXX_VALPTRIDX_STATIC_CHECK 2014-08-01 03:34:08 +00:00
Kp de56714572 Optimize gr_ubox0 2014-07-30 03:12:52 +00:00
Kp 4fadbbc92c Replace render globals with const 2014-07-30 03:06:41 +00:00
Kp 0f7e561775 Add helper to iterate over objects in segment 2014-07-30 03:06:40 +00:00
Kp 13b233b7d7 Fix Windows build 2014-07-26 22:53:41 +00:00
Kp b37c295c59 Pick default extra_version from git tag 2014-07-26 22:53:41 +00:00
Kp 9e619f73d5 Inline polymodel_read_n 2014-07-26 04:18:06 +00:00
Kp 51fdeea84b Use unique_ptr for model_data 2014-07-26 04:01:35 +00:00
Kp ebb1b70350 Fix polymodel writing on x64
Packed writing a structure containing a pointer, but reading it as an
int, is wrong on x64.
2014-07-26 04:01:35 +00:00
Kp af912ea84d Use unique_ptr for level_names 2014-07-25 02:54:31 +00:00
Kp d1eaa1819c Use unique_ptr for secret_level_names 2014-07-25 02:54:31 +00:00
Kp 3bf30f9cf7 Use unique_ptr for secret_level_table 2014-07-25 02:54:31 +00:00
Kp 6020c9c013 Use d_fname for DOS filenames 2014-07-25 02:54:31 +00:00
Kp 2ddc37d804 Write tmap_info carefully 2014-07-25 02:54:31 +00:00
Kp 79708e14f4 Use unique_ptr for alternate_ham_file 2014-07-25 01:48:36 +00:00
Kp ba05b20c3c Forbid MALLOC of non-POD types 2014-07-25 01:47:21 +00:00
Kp 9778c1a151 Use unique_ptr to manage sub bitmaps 2014-07-22 23:48:24 +00:00
Kp 323e796cd0 Use unique_ptr to manage grs_bitmap 2014-07-22 23:48:24 +00:00
Kp 6826e966a7 Use unique_ptr for Current_mission 2014-07-22 23:48:23 +00:00
Kp c1d184240d Use unique_ptr to manage fonts 2014-07-22 23:48:23 +00:00
Kp bd1c6d8c5d Reduce header includes of physfsx.h 2014-07-22 23:48:23 +00:00
Kp a6dcfa2e30 Simplify audio CD discovery 2014-07-22 23:48:23 +00:00
Kp b4a778ed9d Use DXX_ALWAYS_ERROR_FUNCTION for printf check
Enable printf check without relying on embedded compound statements.
2014-07-19 21:15:01 +00:00
Kp eec1cfdc34 Add <cstdint> to gr.h for old compilers 2014-07-19 18:01:15 +00:00
Kp 3a35179e50 List initialize avg_color_rgb 2014-07-19 03:09:58 +00:00
Kp a4f7f607db List initialize input to vm_vec_zero 2014-07-19 03:09:26 +00:00
Kp 6370292202 Pass array<> to create_*_vertex_lists 2014-07-17 03:29:57 +00:00
Kp d3d457cf19 Pass array<> to gr_list_modes to preserve size information 2014-07-17 03:29:57 +00:00
Kp 7552ceb259 Remove unused arguments 2014-07-16 03:24:40 +00:00
Kp 07036e7962 Use consistent static on process_buffer(message) 2014-07-16 03:21:04 +00:00
Kp 3946be044c Replace newmenu template specializations with free functions 2014-07-16 03:21:04 +00:00
Kp cf75bb6699 Define away printf %s check if __builtin_constant_p not available 2014-07-16 03:14:57 +00:00
Kp 5f9b981380 Move cstring_tie.p init to member initialization 2014-07-16 03:14:51 +00:00
Kp 9f685a0d0a List initialize unicode_frame_buffer 2014-07-16 03:14:04 +00:00
Kp dc87c78fd2 Mark grs_bitmap as prohibit_void_ptr 2014-07-16 03:14:04 +00:00
Kp b97ff9d496 Simplify cstring_tie 2014-07-14 02:27:11 +00:00
Kp 166253f4c2 Compact grs_canvas 2014-07-14 02:17:40 +00:00
Kp 41e016954a Remove unused add_flicker 2014-07-14 02:17:40 +00:00
Kp 2a8e0a78c6 Use partial_range with RBAudio 2014-07-14 02:17:40 +00:00
Kp afeaa09e9a Replace vm_copy_transpose_matrix with vm_transposed_matrix
Also, delete obsolete broken inlining support.
2014-07-14 02:17:40 +00:00
Kp 4c7249a016 Return vms_matrix from vm_matrix_x_matrix 2014-07-14 02:17:40 +00:00
Kp 08d72ae525 Mark find_connected_distance vms_vector const 2014-07-13 22:57:45 +00:00
Kp 03574d0f5e Change vm_vec_* macros to inline functions 2014-07-13 03:43:32 +00:00
Kp e765fd74fc Move Highest_segment_index into Segments 2014-07-13 03:43:32 +00:00
Kp b2a7195643 Remove unused multi_dump_robots 2014-07-13 03:43:32 +00:00
Kp 082bb43ede Fold valptridx_t features into template 2014-07-13 03:43:32 +00:00
Kp dd70a3f03d Use array<> for PowerupsInMine, MaxPowerupsAllowed 2014-07-12 19:23:37 +00:00
Kp c1aebe6771 Remove unused OBJ_FLARE 2014-07-12 16:38:33 +00:00
Kp d94139c79d Remove redundant partial_range iterator specification 2014-07-06 03:34:43 +00:00
Kp fa24a40033 Move Highest_object_index into Objects[] 2014-07-06 03:34:43 +00:00
Kp 08546489c3 Require integral index to Objects[] 2014-07-06 03:34:43 +00:00
Kp 229dbe1b47 Add runtime exception reporting to valptridx 2014-07-05 22:00:08 +00:00
Kp 44d1924e96 Use special type for player callsign 2014-07-05 19:20:56 +00:00
Kp 689c2496d0 Unify IFF palette handling 2014-07-05 03:48:57 +00:00
Kp e259857fea List initialize UDP mdata pkt_num array 2014-07-04 04:12:45 +00:00
Kp d5b55cf512 List initialize kill_matrix 2014-07-04 04:07:14 +00:00
Kp a07376fe05 List initialize hmp event 2014-07-04 03:43:38 +00:00
Kp 5339c4873a Use assignment to clear Joystick 2014-07-04 03:43:01 +00:00
Matt Vandermeulen 28f307eb85 Fixes #5 - Byteswap header renamed to byteutil, plus sed magic
[Kp: switch to #pragma for byteutil.h]
2014-07-03 02:03:08 +00:00
Kp 7a1b103ed1 Reduce template recursion in serializer 2014-07-02 03:08:44 +00:00
Kp 9f03076a58 Remove write-only variable Beam_brightness 2014-07-02 02:31:32 +00:00
Kp 6222b58bbc Move uvl_list into g3_draw_rod_tmap 2014-07-01 03:10:56 +00:00
Kp d8a1971769 Decode transparent RLE in pieces 2014-07-01 02:30:39 +00:00
Kp b6033c49f2 Use unsigned transparent bitmap bounds 2014-07-01 01:34:16 +00:00
Kp 3abc33d6cc Optimize gr_rle_decode 2014-06-30 23:56:51 +00:00
Kp 8958a0dfbe Remove unnecessary typename usage 2014-06-30 03:25:47 +00:00
Kp d35b021ac6 Fix misspelled C++ guard in loadgl.h 2014-06-28 03:57:57 +00:00
Kp 39a56ae244 Unpack UDP_mdata_store 2014-06-27 03:11:39 +00:00
Kp 6091496b28 Unpack UDP_mdata_info 2014-06-26 03:17:23 +00:00
Kp c7b161cf2d Unpack UDP_frame_info 2014-06-26 03:17:23 +00:00
Kp f1970ad129 Unpack netplayer_info 2014-06-26 03:17:23 +00:00
Kp 291d11d17e Unpack UDP_sequence_packet 2014-06-26 03:17:23 +00:00
Kp 65fedf7b59 Unpack netgame_info 2014-06-26 03:17:23 +00:00
Kp e99b496d72 Unpack game_cheats 2014-06-26 03:17:23 +00:00
zico f6a18e05a6 Reworked packet loss prevention system to send and receive protected packets in correct order 2014-06-24 14:49:18 +02:00
Kp da1bd2fd08 Precompute collision tables 2014-06-24 03:40:31 +00:00
Kp 90300d54d9 Precompute fix_recip table 2014-06-23 04:46:07 +00:00
Kp 7836562a24 Switch serial pad constants to static const 2014-06-22 22:12:17 +00:00
Kp 77ba463614 Compile out unneeded pad initialization 2014-06-22 22:04:23 +00:00
Kp b3c953375c Read lines in blocks 2014-06-22 21:56:03 +00:00
Kp ad3e540b62 Simplify lengthof header 2014-06-22 21:05:08 +00:00
Kp 599520fabb Add operator bool to exact_type<T> 2014-06-22 21:03:23 +00:00
Kp b9de0787ce Optimize multi_send_drop_marker 2014-06-22 20:59:04 +00:00
Kp 362f0a5d23 Use array<> for Point_segs 2014-06-22 20:56:47 +00:00
Kp 794572b771 Enable using count_array_t<T,S> with prohibit_void_ptr<T> 2014-06-22 19:06:52 +00:00
Kp c4b31f875f Use array<> for MarkerMessage 2014-06-22 18:53:42 +00:00
Kp dc42dad15a Check that types passed to PHYSFS_read are POD
More is needed to trap some misuses, but those traps flag existing code.
2014-06-22 18:52:00 +00:00
Kp e6a691c5c7 Check that types passed to PHYSFS_write are POD
More is needed to trap some misuses, but those traps flag existing code.
2014-06-22 03:54:35 +00:00
Kp f6631ce742 Unpack various structures
Prohibit conversion to void* to avoid accidental use with memcpy
2014-06-21 23:56:27 +00:00
Kp 78143eb045 Read walls carefully 2014-06-21 23:56:27 +00:00
Kp b3dc2a1bc0 Move D1X trigger read out of line 2014-06-21 23:56:27 +00:00
Kp 57a3541424 Fix serial::pad for gcc 4.5 2014-06-21 23:21:30 +00:00
Kp c016ace90b Fix partial_range.h for gcc 4.5 2014-06-21 23:21:03 +00:00
Kp 993f778e61 Write active_door carefully 2014-06-20 02:59:53 +00:00
Kp 5af9e8d5b2 Use array<> for ActiveDoors 2014-06-20 02:59:53 +00:00
Kp 2e95d8c0a8 Use array<> for Walls 2014-06-20 02:59:53 +00:00
Kp 176525cf71 Read cloaking_wall structures carefully 2014-06-20 02:59:53 +00:00
Kp 0ef949ab9e Use array<> for CloakingWalls 2014-06-20 02:59:53 +00:00
Kp d3ecca360c Read matcen_info structures carefully 2014-06-20 02:59:53 +00:00
Kp 2d26de003a Read trigger structures carefully 2014-06-20 02:59:53 +00:00
Kp 3c6f787e15 Use array<> for Polygon_models 2014-06-20 02:59:53 +00:00
Kp 58350edab7 Convert polymodel_read_n to call polymodel_read 2014-06-20 02:59:53 +00:00
Kp 7b33018cb5 Use array<> for Textures 2014-06-20 02:59:53 +00:00
Kp 3200823a8b Use array<> for TmapInfo 2014-06-20 02:59:53 +00:00
Kp be8c9d5d2d Split out trigger_write
Conditional trigger_write is hard to read.
2014-06-20 02:59:53 +00:00
Kp 8cc3e2c9e9 Use array<> for Triggers 2014-06-20 02:59:53 +00:00
Kp cb498b3b38 Make padding value customizable 2014-06-20 02:59:53 +00:00
Kp fa77105084 Simplify D2X trigger upgrade code 2014-06-20 02:59:53 +00:00
Kp 952fc31449 Simplify d1_matcen_info_read 2014-06-20 02:59:53 +00:00
Kp 92814475a9 Use array<> for RobotCenters 2014-06-20 02:59:52 +00:00
Kp 958f452d2e Improve UDT static_assert messages 2014-06-15 22:19:26 +00:00
Kp d510438fd4 Use array<> for WallAnims 2014-06-15 03:35:21 +00:00
Kp bd35eb7469 Use array<> for wclip arrays 2014-06-14 23:13:38 +00:00
Kp 1cf1373fb2 Use array<> for control_center_triggers members 2014-06-14 23:13:38 +00:00
Kp 9ab8a587b8 Write FuelCenter structures carefully 2014-06-14 23:13:38 +00:00
Kp 4bc9475076 Use array<> for Station 2014-06-14 23:13:37 +00:00
Kp 93ec327a10 Write powerup_type_info structures carefully 2014-06-14 23:13:37 +00:00
Kp 7c62bf98ef Use array<> for Powerup_info 2014-06-14 01:15:33 +00:00
Kp 488e46b562 Return reasonable type from deleted partial_range
Avoid secondary errors related to binding void as a range.
2014-06-14 01:15:33 +00:00
zico 1136619786 merge 2014-06-12 10:42:26 +02:00
zico c96aece6d2 Removed PARALLAX banner from source files that were not released by PARALLAX; most importantly C source code translated from Assembler and args.cpp which was rewritten from scratch 2014-06-12 10:41:03 +02:00
Kp 743cb49ed8 Make cockpit_decode_alpha static 2014-06-08 00:05:33 +00:00
Kp 6f9cdcd01c Pass player number to multibot functions 2014-06-08 00:05:33 +00:00
Kp e5673ae8ea Pass pnum to boss action 2014-06-08 00:05:33 +00:00
Kp b7a9701564 Get rid of MarkerPoint
Hope MT's ambiguous "horrible bug" is long gone since he never said what
it was.
2014-06-08 00:05:33 +00:00
Kp 41dc39c64c Remove unused v19_door 2014-06-08 00:05:33 +00:00
Kp b5701bf202 Add __attribute__((warn_unused_result)) to partial_range 2014-06-08 00:05:33 +00:00
Kp 5c14cf870f Add optional offset to partial_range 2014-06-08 00:05:33 +00:00
Kp 20164b0639 Use symbolic constants for trigger types 2014-06-08 00:05:33 +00:00
Kp 6f84624f4c Remove write-only D1X trigger field type 2014-06-08 00:05:32 +00:00
Kp ebfb559fe1 Add dummy parameter version to D2 matcen_info_read 2014-06-08 00:05:32 +00:00
Kp 0257b9ca1c Disallow using signed offsets with partial_range 2014-06-08 00:05:32 +00:00
zico ad7cb106bc Changed custom D1X license to GPLv3 2014-06-01 19:55:23 +02:00
zico 8a4ac70541 Reverted commit ec709efaa3. 2014-06-01 19:08:29 +02:00
Kp 72b7ff6720 Write vclip structures carefully 2014-02-01 19:26:16 +00:00
Kp 9b0fb5da0a Write eclip structures carefully 2014-02-01 18:55:18 +00:00
Kp 24706b50c8 Remove unused MP commands 2014-01-25 21:59:39 +00:00
Kp d4da8b1f1d Move multi_send_data type into template parameter 2014-01-25 21:44:34 +00:00
Kp 6ba95cb83b Use objptridx_t for detect_escort_goal_accomplished 2014-01-25 18:06:54 +00:00
Kp e7d16f095e Remove redundant FuelCenter::Center 2014-01-25 17:21:56 +00:00
Kp b9764fb45e Use array<> for Effects 2014-01-25 17:21:56 +00:00
Kp 917ef39258 Use array<> for Vclip 2014-01-23 03:48:25 +00:00
Kp a2427f58b5 Use special type to reduce pointer/index conversions 2014-01-12 19:32:12 +00:00
Kp da8e5459d6 Return objptridx_t from obj_create_copy 2014-01-12 19:32:10 +00:00
Kp 599af3e1ba Return objptridx_t from obj_allocate 2014-01-12 19:14:16 +00:00
Kp 89a383e6a9 Pass objptridx_t in newdemo.cpp 2014-01-12 01:44:07 +00:00
Kp e402b0ee51 Pass objptridx_t to draw_powerup 2014-01-12 00:33:33 +00:00
Kp e2afc332ac Pass objptridx_t to explode_object 2014-01-12 00:33:28 +00:00