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