Commit graph

47 commits

Author SHA1 Message Date
Kp 2e28a491f2 Move player shields to struct object 2015-11-07 21:55:58 +00:00
Kp df5e02aed0 Use macro get_local_player_invulnerable_time for player's invulnerable_time 2015-10-30 02:52:56 +00:00
Kp 0285efe49d Use macro get_local_player_cloak_time for player's cloak_time 2015-10-30 02:52:56 +00:00
Kp 17b8b64980 Use macro get_local_player_flags for player's flags 2015-10-30 02:52:56 +00:00
Kp 92f78caf22 Use macro get_local_player_vulcan_ammo for player's vulcan_ammo 2015-10-30 02:52:56 +00:00
Kp dc5dfb80e8 Use macro get_local_player_secondary_ammo for player's secondary_ammo 2015-10-30 02:52:56 +00:00
Kp ea5b7a08c1 Use macro get_local_player_energy for local player's energy 2015-10-30 02:52:55 +00:00
Kp 3ffd207e44 Use macro get_local_player_shields for local player's shields 2015-10-30 02:52:55 +00:00
Kp 070444157e Use type safe player flags 2015-10-30 02:52:55 +00:00
Kp e130ea7b36 Remove unnecessary secondary_weapon_flags 2015-10-30 02:52:53 +00:00
Kp 9df40a86cb Use uint8 for secondary ammo counts
Maximum non-cheating is 40 missiles, which fits in a signed 8 bit value.
Maximum cheating is 200 missiles, which fits in an unsigned 8 bit value.
2015-10-03 17:17:49 +00:00
Kp bda7fef3a0 Use get_local_player to compute reference to local player 2015-07-25 23:10:46 +00:00
Kp f38e80c053 Use get_local_plrobj to compute reference to object of local player 2015-07-25 23:10:45 +00:00
Kp f00725f740 Use forward-declaration header for player.h 2015-07-25 23:10:45 +00:00
Kp f899aaeaca Move player callsign to player-callsign.h 2015-07-25 23:10:45 +00:00
Kp d73e5a24c3 Reduce scope of ifdef(D1||D2) 2015-07-04 21:01:17 +00:00
Kp 8d849b2b39 Wrap laser level in class
Move enum laser_level_t to weapon.h for the new class.
2015-04-26 20:15:56 +00:00
Kp 28b4a65547 Centralize ammo rack bonus 2015-04-19 04:18:52 +00:00
Kp ae8a8c98ce Reduce player.h includes 2015-04-19 04:18:52 +00:00
Kp 9751022b1b Use static_assert for player_rw size check 2015-04-19 04:18:50 +00:00
Kp 90fbebf8fd Convert most global arrays to array<> 2015-04-02 02:36:52 +00:00
Kp 91d31b1952 Wrap object signature in subtype 2015-03-22 18:49:21 +00:00
zico afd70564e5 Gave client address as player_address for all UPID_SYNC packets so clients can properly discover their player number when (re)joining running games. Defined 0xcc as MULTI_PNUM_UNDEF for purpose of uninitialized Multiplayer client slots. 2015-02-22 01:41:02 +01:00
Kp 6798c8410b Refactor callsign_t constants 2014-12-07 00:53:15 +00:00
Kp 6977a0eb74 Add operator!= to callsign_t 2014-10-11 04:33:22 +00:00
Kp e6b9f3f923 Use typedef for player number 2014-09-21 22:10:12 +00:00
Kp 703f60ac3f Fix -Wtype-limits warnings 2014-09-21 21:41:55 +00:00
Kp 8d835f8e34 Reduce inclusion of compiler-begin.h 2014-08-24 03:36:35 +00:00
Kp 8cd2cd216d Fix Player_num regression in multiplayer startup 2014-08-13 03:20:59 +00:00
Kp 125d9257be Use special type names for segment/object numbers 2014-08-13 02:57:12 +00:00
Kp 79d2c968a3 Use array<> for Players 2014-08-08 03:02:59 +00:00
Kp 44d1924e96 Use special type for player callsign 2014-07-05 19:20:56 +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
zico ad7cb106bc Changed custom D1X license to GPLv3 2014-06-01 19:55:23 +02:00
Kp cc6d72b9ee Unpack player to fix build on old compilers 2014-01-11 21:53:09 +00:00
Kp 094dfbf3d4 Reduce header inclusions 2013-12-31 03:22:03 +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 9de54cfa74 Switch to C++ linkage
import fileinput
guard = 0
cxxguard = '#ifdef __cplusplus\n'
for line in fileinput.input(inplace=True):
	if line == cxxguard:
		guard = 1
		continue
	if guard:
		if line == 'extern "C" {\n':
			guard = 2
			continue
		if line == '}\n':
			guard = 0
			continue
		if guard == 2:
			assert(line == '#endif\n')
			guard = 0
			print cxxguard,
			continue
	print line,
2013-12-06 03:35:32 +00:00
Kp 2d01f3a649 Optimize references to player ship 2013-12-01 22:53:25 +00:00
Kp 1d073475e7 Mark various headers for C linkage 2013-10-20 22:49:11 +00:00
Kp 9210a3870e Remove unused fields in struct player 2013-09-21 18:04:10 +00:00
Kp 83df42af8e Fix loading of older save files
struct player_rw offsets must not change within a savefile version
2013-09-21 17:47:03 +00:00
Kp f4b21088a0 Track vulcan ammo explicitly 2013-09-20 23:12:54 +00:00
Kp a881ee455e Remove fix.h 2013-08-08 03:01:48 +00:00
Kp 4577dd3977 Merge branch 'd2x-rebirth/master' into unification/master 2013-07-21 21:34:46 +00:00
Kp 8a153d1f63 Allow common headers with private dependencies to be used in common 2013-03-24 20:32:01 +00:00
Kp 3125d6bd52 Move */main/player.h -> common/main/player.h 2013-03-03 01:03:33 +00:00
Renamed from d2x-rebirth/main/player.h (Browse further)