Commit graph

973 commits

Author SHA1 Message Date
Kp 1eabce05b1 Only use defined AI path 2014-06-08 00:05:33 +00:00
Kp 7f3ad84094 Use std::swap instead of inline swap 2014-06-08 00:05:33 +00:00
Kp 5d34d178dc Remove write-only variable tmap_times_used 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 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 766ed23dda Remove broken TRIGGER_MATCEN check
D1X sets flags to TRIGGER_MATCEN, not 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 090e4c5f1d Reverted commit 8f112d669c. 2014-06-01 19:10:38 +02:00
zico a5893af38b Reverted commit 0c10c9db7f. 2014-06-01 19:09:42 +02:00
zico ab4975bab0 Reverted commit 347292d866 2014-06-01 19:08:17 +02:00
Kp 14cdf1b352 Fix crash loading game with in-flight weapon 2014-02-02 00:22:12 +00: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 9b46761650 Move RobotCenters initialization out of #if guard 2014-01-25 17:21:57 +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 84bd6b6086 Remove needless recomputation of Station[] pointer 2014-01-25 17:21:56 +00:00
Kp 8a4c553a8a Remove needless recomputation of Effects[] pointer 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 43c1ce1360 Use objptridx_t in multi_explode_robot_sub 2014-01-12 00:33:24 +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 f9bd37e149 Pass objptridx_t to object_create_explosion_sub 2014-01-12 00:32:58 +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 03f54571fb Pass objptridx_t to apply_force_damage 2014-01-12 00:32:27 +00:00
Kp 6f895e1a24 Pass objptridx_t to bump_this_object 2014-01-12 00:19:12 +00:00
Kp a31fa65872 Pass objptridx_t to bump_two_objects 2014-01-12 00:19:12 +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 fe9c1a139a Pass objptridx_t to do_any_robot_dying_frame 2014-01-11 23:17:14 +00:00
Kp 0666b863e7 Pass objptridx_t to do_boss_dying_frame 2014-01-11 23:16:02 +00:00
Kp 1f0db4e7e5 Pass objptridx_t to do_boss_stuff 2014-01-11 23:15:04 +00:00
Kp 2cc9fc3cc3 Pass objptridx_t to do_super_boss_stuff 2014-01-11 23:14:23 +00:00
Kp c0ae10a0d6 Pass objptridx_t to explode_badass_weapon 2014-01-11 23:11:04 +00:00
Kp f79aebed51 Pass objptridx_t to collide_weapon_and_wall 2014-01-11 23:10:44 +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 f0ad549a7e Pass objptridx_t to render_object_search 2014-01-11 23:03:56 +00:00
Kp f4deb058a5 Pass objptridx_t to do_render_object 2014-01-11 23:02:43 +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 f12dd0b2f8 Pass objptridx_t to boss_fits_in_seg 2014-01-11 21:54:44 +00:00
Kp b8b2b047cd Use objptridx_t in init_boss_segments 2014-01-11 21:54:44 +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 cfa4bda3a4 Pass objptridx_t to compute_vis_and_vec 2014-01-11 21:54:44 +00:00
Kp 5a3158e7a3 Remove unreachable return in multi_check_robot_timeout 2014-01-11 21:54:44 +00:00
Kp c64e96cb59 Pass objptridx_t to ai_multi_send_robot_position 2014-01-11 21:54:43 +00:00
Kp 5527feec15 Pass objptridx_t to ai_fire_laser_at_player 2014-01-11 21:54:43 +00:00
Kp 172066f3fb Use objptridx_t in Laser_create_new 2014-01-11 17:55:32 +00:00
Kp 3bdfc28ef5 Return objptridx_t from create_weapon_object 2014-01-11 17:55:01 +00:00
Kp 68125a472a Pass objptridx_t to set_camera_pos 2014-01-11 17:26:11 +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 10676c1821 Use objptridx_t in boss_spew_robot 2014-01-11 17:09:39 +00:00
Kp 65e8f223a4 Return objptridx_t from create_gated_robot 2014-01-11 17:09:39 +00:00
Kp 799fc04805 Use objptridx_t in create_gated_robot 2014-01-11 17:09:39 +00:00
Kp 201cc2c8ac Use consistent semantics for gate_in_robot
Fixes an ancient bug where the wrong object would be mapped to a remote
object number if the gate_in_robot call failed.
2014-01-11 17:08:58 +00:00
Kp 087c5261ac Remove unused return value of object_create_debris 2014-01-10 04:13:16 +00:00
Kp 392206c378 Use objptridx_t in object_create_debris 2014-01-10 04:09:52 +00:00
Kp 8d2945accd Pass objptridx_t to object_create_explosion_sub 2014-01-10 04:05:24 +00:00
Kp 1296662e96 Pass objptridx_t to object_create_badass_explosion 2014-01-10 04:02:53 +00:00
Kp 0776e692a7 Use objptridx_t in obj_create 2014-01-10 04:00:34 +00:00
Kp f0aad4dcd6 Remove unnecessary double conversion in explode_badass_object 2014-01-10 03:40:43 +00:00
Kp ed218f1893 Pass objptridx_t to explode_badass_object 2014-01-10 03:40:16 +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 a76e088df4 Use objptridx_t for object_create_explosion_sub 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
vobject 9529f60d5d Use correct type for diskid. The *_DISKID defines are larger than a 32bit signed integer. 2014-01-07 22:04:23 +01:00
vobject bb38e8232f Use correct unsigned format specifier for sprintf 2014-01-07 22:01:33 +01:00
vobject 455c46aff0 Remove redundant assignment 2014-01-07 22:00:07 +01:00
vobject c28a0c5dfa Remove unnecessary null check 2014-01-07 21:59:22 +01:00
vobject 1b54c54c58 Fix uninitialized valiable when compiling DEMO_ONLY 2014-01-07 21:58:47 +01:00
vobject a7099aa63a Fix copy&paste error in AI 2014-01-07 21:57:27 +01:00
vobject 35ada6e8d9 Fix copy&paste error in UI debugging info 2014-01-07 21:56:05 +01:00
Kp 5dcf833da6 Remove useless NULL test on robot pointer 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 f4a7b23bf5 Fix incorrect use of assignment in assert statements 2014-01-05 01:51:22 +00:00
Kp 67741cf603 Remove unused multi_explode_robot_sub parameter killer 2014-01-04 22:04:34 +00:00
Kp d5aaf8af0e Remove unused return value of explode_badass_object 2014-01-04 18:03:10 +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 ec4317fef2 Fix variable overread when leaving hole for MarkerOwner 2014-01-03 02:55:20 +00:00
Kp f894ad92d0 Use correct player index for dropping markers
Fixes a bug where each players sees markers dropped with the orientation
matrix of the local player.
2014-01-01 23:38:06 +00:00
Kp 67e1c7fef4 Require integral types to newdemo_read 2014-01-01 03:47:37 +00:00
Kp a7d87134db Only use newdemo_write on integral types 2014-01-01 03:46:08 +00:00
Kp 888f44336f Use segment array for render visited[] 2014-01-01 03:42:00 +00:00
Kp 164001d977 Use 3 instead of 255 for third mode in rendering 2014-01-01 03:41:58 +00:00
Kp 40e90fea22 Move Light_subtracted[] to Segments[].light_subtracted 2014-01-01 03:33:27 +00:00
Kp 89a5450bfc Fix memory overread when saving Boss_dying_sound_playing
AddressSanitizer reports that Boss_dying_sound_playing is saved as an
int, but occupies only one byte.
2014-01-01 03:30:36 +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 510fe02825 Use on stack array<> for New_awareness 2013-12-31 00:12:08 +00:00
Kp 549d7ea261 Use correct size for flickering_light mask 2013-12-31 00:11:05 +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 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 3563bfb85a Enable Descent II divide-by-zero check in Descent too 2013-12-28 22:45:27 +00:00
Kp fbd35de5f0 Remove bogus fvi assertion 2013-12-28 22:40:11 +00:00
Kp 8a83c93c8c Move ai_local_read_n_swap loop into caller 2013-12-28 22:21:00 +00:00
Kp 94ce68f556 Color code weapon gauges 2013-12-28 22:21:00 +00:00
Kp 16f1044930 Switch init_ai_objects to range_for to eliminate a variable 2013-12-28 22:10:24 +00:00
Kp 38b2dbe639 Move object* -> objnum conversion into init_ai_object 2013-12-28 22:10:24 +00:00
Kp 7acd98949f Remove reliance on layout of control_center_triggers 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 0aba1b9d76 Use correct SWAP for wall segnum 2013-12-28 22:02:54 +00:00
Kp 75ce83098d Write log message when local player escapes the mine
For consistency with messages that other players have escaped, also log
the local player escaping.
2013-12-28 18:17:09 +00:00
Kp facb6a3598 Add console prints of PhysFS search path changes 2013-12-28 18:16:19 +00:00
Kp aa16a01fec Mark control_center_triggers_write input as const 2013-12-25 23:51:28 +00:00
Kp bdf55f907b Use assignment instead of memcpy 2013-12-25 23:50:26 +00:00
Kp 8c63ad4d09 Use dedicated type for Objects[] array 2013-12-25 23:49:04 +00:00
Kp f9fca1c9bd Fix editor crash introduced by bad use of globals 2013-12-25 23:48:39 +00:00
Kp 46f97e9f41 Reduce sprintf usage in kmatrix 2013-12-25 04:41:42 +00:00
Kp 93ce29f88d Simplify test for exit tunnel with wrong final child 2013-12-25 04:39:54 +00:00
Kp 25e95936d5 When pursuing player, avoid segment_none instead of segment 1
Avoiding segment 1 makes no sense, and appears to be a bug.
2013-12-25 04:39:16 +00:00
Kp f9269b0fb4 Show failed hostname when DNS lookup fails 2013-12-25 03:22:06 +00:00
Kp f6ea0815cd Remove unread player structure from savefile 2013-12-25 03:22:06 +00:00