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
Kp
9d2c847b02
Pass objptridx_t to do_debris_frame
2014-01-12 00:33:19 +00:00
Kp
3a889b5825
Pass objptridx_t to apply_damage_to_robot
2014-01-12 00:33:14 +00:00
Kp
d246005c7e
Move object_create_explosion_sub pointer into loop
2014-01-12 00:33:08 +00:00
Kp
b17bafa29f
Pass objptridx_t to apply_damage_to_controlcen
2014-01-12 00:33:03 +00:00
Kp
27c9bea1a8
Pass objptridx_t to object_create_badass_explosion
2014-01-12 00:32:46 +00:00
Kp
9d0cc8324e
Pass objptridx_t to net_destroy_controlcen
2014-01-12 00:32:30 +00:00
Kp
a8aa9965e8
Pass objptridx_t to collide_*_and_*
2014-01-12 00:19:12 +00:00
Kp
8cffd14b8c
Pass objptridx_t to collide_two_objects
2014-01-11 23:19:44 +00:00
Kp
c0ae10a0d6
Pass objptridx_t to explode_badass_weapon
2014-01-11 23:11:04 +00:00
Kp
1c7f58b448
Pass objptridx_t to collide_object_with_wall
2014-01-11 23:07:51 +00:00
Kp
377626541d
Pass objptridx_t to render_object
2014-01-11 23:06:33 +00:00
Kp
24570e2726
Pass objptridx_t to compute_object_light
2014-01-11 22:58:58 +00:00
Kp
a3dd2ea963
Pass objptridx_t to create_player_appearance_effect
2014-01-11 22:57:55 +00:00
Kp
2effc847aa
Pass objptridx_t to create_path_points
2014-01-11 22:55:21 +00:00
Kp
0b529d16c7
Pass objptridx_t to do_controlcen_destroyed_stuff
2014-01-11 22:54:46 +00:00
Kp
70b8a2bb6d
Disallow using operator-(objptridx_t,Objects)
...
Implicit conversions made this work, but it just does extra work for no gain.
2014-01-11 22:50:07 +00:00
Kp
e06f53feb8
Pass objptridx_t to draw_weapon_vclip
2014-01-11 22:47:38 +00:00
Kp
93db613176
Reduce includes in vclip.h
2014-01-11 22:47:38 +00:00
Kp
7af7f60ffb
Pass objptridx_t to add_stuck_object
2014-01-11 22:47:38 +00:00
Kp
f9c7311214
Pass objptridx_t to do_physics_sim
2014-01-11 22:47:37 +00:00
Kp
85b95efc70
Fix ugly hack of using -4 for fuelcen reached
2014-01-11 22:24:55 +00:00
Kp
21c9aa6c16
Remove unused ESCORT_GOAL_EXIT2
2014-01-11 22:20:48 +00:00
Kp
09767b933f
Pass objptridx_t to player_is_visible_from_object
2014-01-11 21:54:44 +00:00
Kp
8e6e450df6
Pass objptridx_t to do_controlcen_frame
2014-01-11 21:54:44 +00:00
Kp
cc6d72b9ee
Unpack player to fix build on old compilers
2014-01-11 21:53:09 +00:00
Kp
8cbd85a77d
Unpack laser_info to fix build on old compilers
2014-01-11 21:51:29 +00:00
Kp
aac0ab26d7
Refactor _DEFINE_VALPTRIDX_SUBTYPE_USERTYPES
2014-01-11 18:20:33 +00:00
Kp
fca105e95d
Pass objptridx_t to create_small_fireball_on_object
2014-01-11 17:25:26 +00:00
Kp
a0ac77569b
Pass objptridx_t to obj_delete
2014-01-11 17:22:11 +00:00
Kp
0b820e1e7b
Pass objptridx_t to object_move_one
2014-01-11 17:19:22 +00:00
Kp
813bbb079f
Pass objptridx_t to do_ai_frame
2014-01-11 17:14:20 +00:00
Kp
1296662e96
Pass objptridx_t to object_create_badass_explosion
2014-01-10 04:02:53 +00:00
Kp
07a23cbaf2
Detect always-invalid valptridx indexes
2014-01-10 03:58:03 +00:00
Kp
0d49f5b55a
Use objptridx_t for object_create_badass_explosion
2014-01-10 03:23:57 +00:00
Kp
58ed12ffce
Use objptridx_t for create_morph_robot
2014-01-10 03:20:11 +00:00
Kp
ab3806af83
Use objptridx_t for object_create_explosion
2014-01-10 03:20:11 +00:00
Kp
f1a6757693
Use objptridx_t for obj_create
2014-01-10 03:20:11 +00:00
Kp
9843406588
Remove unused return value of explode_badass_weapon
2014-01-10 03:17:55 +00:00
Kp
d6fab53199
Remove unused return value of object_create_muzzle_flash
2014-01-10 03:14:14 +00:00
Kp
61ad220d42
Remove unused who_killed_controlcen
2014-01-08 03:54:44 +00:00
Kp
a748065fe5
Explicitly delete valptridx subtype default constructors
2014-01-06 04:17:57 +00:00
Kp
9a5d0f6f09
Use symbolic values for segment/object first/none
2014-01-06 04:17:55 +00:00
Kp
67741cf603
Remove unused multi_explode_robot_sub parameter killer
2014-01-04 22:04:34 +00:00
Kp
3ca0a6aca6
Remove unused return value of explode_badass_player
2014-01-04 18:03:10 +00:00
Kp
8218af34b5
Add special type to let obj_*link take either pointer or index
2014-01-03 04:04:04 +00:00
Kp
888f44336f
Use segment array for render visited[]
2014-01-01 03:42:00 +00:00
Kp
40e90fea22
Move Light_subtracted[] to Segments[].light_subtracted
2014-01-01 03:33:27 +00:00
Kp
094dfbf3d4
Reduce header inclusions
2013-12-31 03:22:03 +00:00
Kp
d7d052857a
Use bitmask for hitobj_list
...
Reduces sizeof(laser_info) from 392 to 80.
2013-12-31 03:22:03 +00:00
Kp
549d7ea261
Use correct size for flickering_light mask
2013-12-31 00:11:05 +00:00
Kp
cf7a3edee3
Move object::rtype up to improve packing
2013-12-29 04:54:22 +00:00
Kp
745633eabe
Use vector to allow rendering unlimited robots
2013-12-29 04:54:08 +00:00
Kp
7cf6877e2a
Rename D1 ai_local::wait_time to ::next_action_time to match D2
2013-12-29 04:33:30 +00:00
Kp
cf5343db18
Move ai_local into ai_static
...
Eliminates a global and some pointer math.
2013-12-29 03:59:21 +00:00
Kp
64e2ab55a0
Combine control_center_triggers_read and _swap variant
2013-12-29 03:56:41 +00:00
Kp
dd583e9c2b
Add packed *_rw versions of object subfields
2013-12-29 00:32:58 +00:00
Kp
073f00974a
Eliminate uses of the typedef struct X { ... } X; pattern
...
C++ does not require this pattern.
import re, fileinput
to = re.compile(r'^typedef struct ([a-z_A-Z]+)\s*{')
tc = re.compile(r'^}(.*?)\s*([a-z_A-Z]+);$')
osn = None
for line in fileinput.input(inplace=True):
m = to.match(line)
if m:
osn = m.group(1)
print 'struct %s\n{' % osn
continue
if osn:
m = tc.match(line)
if m:
csn = m.group(2)
if osn == csn:
print '}%s;' % m.group(1)
osn = None
continue
else:
osn = None
print line,
2013-12-28 22:48:07 +00:00
Kp
67ad7811bd
Remove unused physics_info::brakes
2013-12-28 22:47:46 +00:00
Kp
dfbe78c214
Remove useless 'unused' field in grs_bitmap
...
Saves a realignment to pointer boundary.
2013-12-28 22:38:02 +00:00
Kp
2d274dba8b
Tighten SWAPINT
2013-12-28 22:37:00 +00:00
Kp
cc9f7f669d
Tighten definition of SWAPSHORT
2013-12-28 22:36:59 +00:00
Kp
38b2dbe639
Move object* -> objnum conversion into init_ai_object
2013-12-28 22:10:24 +00:00
Kp
79fe1d899c
Simplify control_center_triggers_read_n
2013-12-28 22:04:47 +00:00
Kp
1694eed536
Match PHYSFSX_readSXE?? return types to the internal type
2013-12-28 22:03:50 +00:00
Kp
aa16a01fec
Mark control_center_triggers_write input as const
2013-12-25 23:51:28 +00:00
Kp
8c63ad4d09
Use dedicated type for Objects[] array
2013-12-25 23:49:04 +00:00
Kp
7fb4c6307f
Add debug option -no-grab to prevent window grabbing
2013-12-22 20:56:55 +00:00
Kp
456c2d0bb0
Scrub control codes from stdout/file, but not HUD/console
2013-12-22 20:56:55 +00:00
Kp
a7bd19a7ca
Convert fvi to use countarray for segment list
...
Also fixes a bug where seglist could receive wrong elements when
fvi_sub recursive call returns a type other than HIT_NONE. Bug caused
by badly named variables:
int ii;
for (ii=0;i < temp_n_segs && *n_segs < MAX_FVI_SEGS-1;)
seglist[(*n_segs)++] = temp_seglist[ii++];
The wrong counter is used for first part of the conditional, so
uninitialized elements of temp_seglist could be read back if i
(==n_segs_visited) is smaller than temp_n_segs or elements could be
skipped if i is greater than temp_n_segs.
2013-12-22 20:56:53 +00:00
Kp
038bbad26a
Rearrange headers to build under all test modes
2013-12-22 20:56:35 +00:00
Kp
58e740c0bd
Remove unused declaration of Center_names
2013-12-22 20:56:35 +00:00
Kp
c28d0c984c
Combine nearby d1/d2 guard in powerup.h
2013-12-22 20:56:35 +00:00