Commit graph

645 commits

Author SHA1 Message Date
Kp 9a7185f770 Store warning segments in countarray object 2013-12-22 05:27:16 +00:00
Kp a8e9f9f624 Store found segments in countarray object
Raise MAX_FOUND_SEGS to MAX_SEGMENTS to ease code reuse.
2013-12-22 01:54:15 +00:00
Kp c31c67c587 Store selected segments in countarray object 2013-12-22 01:54:15 +00:00
Kp 4fb6990b6c Make Stolen_items[] a C++ array 2013-12-22 01:53:26 +00:00
Kp 5b5c8a3c6a Remove write-only variable TmapList 2013-12-22 01:16:16 +00:00
Kp 0c30fa7cf3 Whitelist MAX flash missiles as valid laser type 2013-12-22 01:15:40 +00:00
Kp b1c5307eb1 Use array for palette_array_t 2013-12-22 00:37:36 +00:00
Kp e9f9cb676f Centralize palette utilities 2013-12-22 00:05:13 +00:00
Kp a3d66a3b37 Add typedef palette_array_t for palette data 2013-12-22 00:05:13 +00:00
Kp 11f7bc51ee Use unsigned count of frames in a vclip 2013-12-22 00:05:13 +00:00
Kp 1e8036bd24 Split compiler.h for PCH compatibility 2013-12-21 05:12:38 +00:00
Kp 5d801ce386 Add #error diagnostics to compiler.h 2013-12-21 01:54:38 +00:00
Kp c2f6e9f999 Remove obsolete setjmp/longjmp 2013-12-21 01:40:56 +00:00
Kp fbf1f8a658 Annotate mem_malloc/calloc/realloc as __attribute__((alloc_size)) 2013-12-20 03:33:32 +00:00
Kp 737fe73dd7 Annotate mem_malloc/mem_calloc as __attribute__((malloc)) 2013-12-20 03:24:39 +00:00
Kp e4b091dd38 Make ogl_pal a ubyte (*)[256*3] to improve checking 2013-12-20 03:19:40 +00:00
Kp 3bf16e57dc Remove PHYSFSX_gets, PHYSFSX_readString
They do not check for a buffer overflow.
2013-12-20 03:16:46 +00:00
Kp 86a88bedbd Use enum for CockpitMode
This makes the debugger output nicer.
2013-12-20 03:14:16 +00:00
Kp d2a2103cc2 Combine MULTI_PLAYER_EXPLODE and MULTI_PLAYER_DROP
Add a selector byte and use a common primary command code.
2013-12-20 03:11:23 +00:00
Kp 3ca5b4af47 Inline multi_send_quit 2013-12-20 03:11:06 +00:00
Kp c561c3d514 Move multi_send_data_direct type into template parameter
Optimizing compilers may now delete the size check.
2013-12-20 03:08:19 +00:00
Kp ad90c245b6 Improve interaction of Del+F with normal map usage
Refactor edge computation into helper.

Let Automap_visited always be exactly what the player mapped normally.
This allows reversing Del+F.
2013-12-20 03:06:59 +00:00
Kp f0bae2c8cd Add EVENT_WINDOW_CREATED to centralize window init/deinit logic 2013-12-20 02:51:24 +00:00
Kp 985972186f Use separate type for ai_static_rw in Descent, too 2013-12-19 15:11:41 +00:00
zico 35266309d0 Made version mismatch screen spill out some explanatory information about Multi protocol version 2013-12-19 14:03:00 +01:00
zico 5f005baa3b Added MULTI_EFFECT_BLOWUP to remotely blast switches connected to triggers, ensuring sync and preventing misguided (i.e. delayed) player fire accidentially make puzzles or game progress impossible 2013-12-19 13:48:33 +01:00
Kp d2c2dfe95c Make Segments[] a C++ array 2013-12-19 03:31:24 +00:00
Kp 03821fab0d Rely on libc strdup if DEBUG_MEMORY_ALLOCATIONS is unset
If !DEBUG_MEMORY_ALLOCATIONS, our strdup is not special.  Rely on the
compiler one, which might be.
2013-12-19 03:31:24 +00:00
Kp aba6c2dfee Pass glow_values as array<> to retain size information 2013-12-19 03:31:24 +00:00
Kp a40c19f770 Fix con_puts buffer overread
ASan reports a 2K read from a small string literal.

Also, fix silly double copy in con_add_buffer_line and delete too-short
memset in con_add_buffer_line.
2013-12-19 03:31:24 +00:00
Kp 779d1b95db Defer freeing window until after EVENT_WINDOW_CLOSED 2013-12-19 03:11:56 +00:00
Kp 0938e819e5 Advertise map-mode via overload of typing-mode
Tell other clients when map mode is active, for the same reason that
typing mode is advertised.
2013-12-18 04:51:46 +00:00
Kp 8c74708ad4 Improve layout of D2 powerup_info 2013-12-18 04:51:46 +00:00
Kp 9776827a33 Make Objects[] a C++ array 2013-12-18 04:51:46 +00:00
Kp 7caf9bbcd4 Unify WALL_IS_DOORWAY
Both games used the same meaning, but called values by different names.
2013-12-18 04:51:46 +00:00
Kp 2f18c5037d Store group lists as countarray objects 2013-12-18 03:48:52 +00:00
Kp e8de74b8bf Reject inappropriate printf usage 2013-12-17 04:03:35 +00:00
Kp be742f8848 Use powerup_basic_str instead of powerup_basic where possible 2013-12-17 04:03:34 +00:00
Kp 65657c6809 Use nm_messagebox_str instead of nm_messagebox where possible 2013-12-17 04:03:34 +00:00
Kp d15347f16f Use HUD_init_message_literal instead of HUD_init_message where possible 2013-12-17 04:03:34 +00:00
Kp 21de8bc8f6 Use buddy_message_str instead of buddy_message where possible 2013-12-17 04:03:34 +00:00
Kp 21cc89e2c8 Use ui_dputs_at instead of ui_dprintf_at where possible 2013-12-17 04:03:34 +00:00
Kp 7efeb3f29d Use PHYSFSX_puts instead of PHYSFSX_printf where possible 2013-12-17 04:03:34 +00:00
Kp c3c1695ba5 Use gr_ustring instead of gr_uprintf where possible 2013-12-17 04:03:34 +00:00
Kp 1bf3722670 Use gr_string instead of gr_printf where possible 2013-12-17 04:03:34 +00:00
Kp 3d79fe9b40 Use editor_status instead of editor_status_fmt where possible 2013-12-17 04:03:34 +00:00
Kp a99b07c98e Use Error_puts instead of Error where possible 2013-12-17 04:03:34 +00:00
Kp f82ba904bd Use Warning_puts instead of Warning where possible 2013-12-17 04:03:34 +00:00
Kp 335cabcc79 Use con_puts instead of con_printf where possible 2013-12-17 04:03:34 +00:00
Kp 38a5c03d5d Add type checking for newmenu_listbox 2013-12-17 03:58:17 +00:00
Kp be041a9cfc Add type checking for ui_create_dialog 2013-12-17 03:49:24 +00:00
Kp d1fa9ff7a6 Simplify setup for ui_messagebox_n 2013-12-15 21:54:59 +00:00
Kp 92e8cb7a31 Add type checking to newmenu subfunction userdata 2013-12-15 21:54:38 +00:00
Kp 3908215e73 Add type checking to nm_messagebox format string 2013-12-15 21:54:17 +00:00
Kp 5d306d06be Switch endlevel message dialog not to use nm_messagebox1 2013-12-15 19:00:59 +00:00
Kp 3fb0ffa19b Add typedef for newmenu subfunction 2013-12-15 18:57:54 +00:00
Kp cea46651fc Check type of window handler function 2013-12-15 18:51:26 +00:00
Kp f05b6f0008 Use on-stack bit array for tracking AI segment visits 2013-12-15 18:50:39 +00:00
Kp 7088720507 Use C++ array for Automap_visited 2013-12-15 18:46:42 +00:00
Kp 2ce15e5703 Remove unused extern object variables 2013-12-15 01:59:05 +00:00
Kp ddffec01c7 Use enum for multi_send_msgsend_state values 2013-12-15 01:52:13 +00:00
Kp 6779dc4991 Remove unused command MULTI_DROP_ORB 2013-12-15 01:45:19 +00:00
Kp 00a9ca2423 Remove unused MULTI_PLAY_BY_PLAY
The sending function has been disabled since Bazaar import.
2013-12-15 01:45:19 +00:00
zico ec516b5675 Disable powerup capping for cooperative game mode as it potentially deletes weapons carried over from another level 2013-12-14 02:53:45 +01:00
Kp cb4fd7c1b4 Compact known file extension storage 2013-12-13 03:58:01 +00:00
Kp 4dfceab50b Factor out file extension filtering 2013-12-13 03:51:14 +00:00
Kp 2bd302cddd Move Controls ubyte values into substructure 2013-12-13 03:47:57 +00:00
Kp 07877853ba Use static_assert where available 2013-12-13 03:44:02 +00:00
zico e195290fe4 Added quick load ability for savestates 2013-12-10 18:13:32 +01:00
zico dae83f9edc Set PPS limits from 5 to 40 2013-12-09 14:25:32 +01:00
zico 2e407fa5a8 Removed short packets and added segment number to quaternion structure 2013-12-09 14:00:23 +01:00
Kp 322c61ef01 Remove use of heap-based splitword 2013-12-08 21:43:53 +00:00
Kp b7fe431979 Use RAII for playsave strings 2013-12-08 21:02:10 +00:00
Kp 3b9b5ebfb0 Use RAII to manage function-local heap objects 2013-12-08 19:04:52 +00:00
Kp 38e92ddce0 Remove useless __pack__ on PlayerCfg 2013-12-08 00:15:13 +00:00
Kp 141ead1830 Move ramped controls into template structure 2013-12-07 21:13:37 +00:00
Kp 75c229c6bf Normalize con_printf newline usage 2013-12-07 21:13:37 +00:00
Kp 61d8fe7cc8 Remove unused return value of gr_*printf / gr_*string 2013-12-07 18:44:07 +00:00
Kp 60727dd7d5 Add missing va_end calls 2013-12-07 18:42:50 +00:00
Kp c3dd634cce Remove unused flag OF_HARMLESS 2013-12-07 18:41:35 +00:00
Kp 706b458699 Mark PHYSFSX_find* functions nonnull 2013-12-07 18:40:32 +00:00
Kp a2cec5d71f Switch PHYSFSX_fgets to auto-sized variant where possible 2013-12-07 18:39:19 +00:00
Kp 7f5410cc8b Use lengthof instead of sizeof(A)/sizeof(A[0])
The latter form can accept pointers, but the template lengthof cannot.
2013-12-07 18:38:10 +00:00
Kp babbe8e9e6 Move */arch/carbon -> common/arch/carbon 2013-12-06 03:58:10 +00:00
Kp 18bf9b94ea Move */arch/cocoa -> common/arch/cocoa 2013-12-06 03:57:18 +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 eb84a067fa Remove now unused fgets_unlimited 2013-12-06 03:28:59 +00:00
Kp 3620392f56 Remove unused nm_messagebox_fixedfont 2013-12-06 00:24:07 +00:00
Kp 91b57e52c3 Mark ui_messagebox button strings const 2013-12-06 00:24:07 +00:00
Kp 1d3395cad1 Improve strlen usage 2013-12-06 00:24:07 +00:00
zico 7b0bda3302 Merge branch 'unification/master' of github.com:dxx-rebirth/dxx-rebirth into unification/master 2013-12-05 13:39:53 +01:00
Drakona 04d84ae61d Pass shot orientation with each weapon packet 2013-12-05 13:11:49 +01:00
Kp be0e9f5162 Use d_strdup for ui_add_gadget_button 2013-12-05 00:10:35 +00:00
Kp accaef2ecb Remove unused REMOVE_EOL macro in keypad.cpp
It conflicts with pre-compiled headers.
2013-12-05 00:08:58 +00:00
Kp 18aea17f9e Move */main/fireball.c -> similar/main/fireball.c 2013-12-02 00:21:31 +00:00
Kp 2ac98f7269 Move */main/gamemine.c -> similar/main/gamemine.c 2013-12-01 23:55:29 +00:00
Kp 38832fd1af Restructure gamemine.c for merge 2013-12-01 23:52:27 +00:00
Kp 2d01f3a649 Optimize references to player ship 2013-12-01 22:53:25 +00:00
Kp 74ac85076f Store joystick button text in one allocation 2013-12-01 22:42:47 +00:00
Kp 5354d05fbf Store joystick axis text in one allocation 2013-12-01 22:42:47 +00:00
Kp 25c731cc2c Probe for usable array template 2013-12-01 22:42:47 +00:00
Kp d3637e7524 Invert sense of SysUseNiceFPS 2013-12-01 22:37:21 +00:00
Kp d626b6c3d4 Add include guard to kdefs.h 2013-12-01 00:53:22 +00:00
Kp 08efe14586 Remove unused Laser_player_fire parameter harmless_flag 2013-11-28 02:12:13 +00:00
Kp 3e2c0b5e1b Switch multi_allow_powerup_text to [][] from *[] 2013-11-28 02:09:30 +00:00
Kp 5d1769cd2c Switch RankStrings to be [][14] instead of *[]
Saves 10 .rel.ro entries and 6 bytes on x86 / 46 bytes on x64.
2013-11-28 02:08:54 +00:00
Kp 6439e41e3a Store SDL key name inline 2013-11-28 00:52:37 +00:00
Kp 86c49079a1 Move rod_points onto stack 2013-11-28 00:27:43 +00:00
Kp c47d1b3d30 Move lrgb_list onto stack 2013-11-28 00:27:43 +00:00
Kp 86a6f4b18b Mark rod.cpp uvl_list[] static 2013-11-28 00:27:43 +00:00
Kp 541961a2f7 Make Object_type_names const 2013-11-28 00:27:43 +00:00
Kp 386c193cae Make med_functions const 2013-11-28 00:27:43 +00:00
Kp 68732756e8 Make Wall_names const 2013-11-28 00:27:43 +00:00
Kp cbc46e343d Remove unused MULTI_ANGER 2013-11-24 23:11:30 +00:00
Kp a65d774c83 Improve packing of struct segment
Shrinks Segments[] by 36000 bytes.
2013-11-24 23:08:32 +00:00
Kp c70c6c98b3 Remove obsolete segment::degenerated flag
Shrinks Segments[] by 36000 bytes.
2013-11-24 23:08:32 +00:00
Kp e30f548d60 Invert sense of DbgAltTexMerge 2013-11-24 22:57:36 +00:00
Kp 761795e4c8 Invert sense of DbgBigPig 2013-11-24 22:57:36 +00:00
Kp 3b49e65f95 Invert sense of DbgUseDoubleBuffer 2013-11-24 22:57:36 +00:00
Kp bbb9214e0e Invert sense of hires/lowres options 2013-11-24 22:57:36 +00:00
Kp 8899120312 Remove SndDisableSdlMixer when mixer=0 2013-11-24 22:57:36 +00:00
Kp 6be79cadce Unify ai_follow_path 2013-11-23 22:41:01 +00:00
Kp 7a9db6716a Make ready_to_fire static 2013-11-18 04:51:33 +00:00
Kp f4cbfca8e2 Use helper to test for thief flag 2013-11-18 04:51:33 +00:00
Kp dc72fb5932 Use player_awareness_type_t for create_awareness_event 2013-11-18 04:51:33 +00:00
Kp 6becfdacca Remove NUM_DXX_REBIRTH_CONTROLS 2013-11-18 00:54:59 +00:00
Kp a842b31a20 Remove NUM_MOUSE_CONTROLS 2013-11-18 00:54:59 +00:00
Kp 04b0bd892d Remove NUM_JOYSTICK_CONTROLS 2013-11-18 00:54:59 +00:00
Kp bf7063080e Remove NUM_KEY_CONTROLS 2013-11-18 00:54:59 +00:00
Kp c3d328ea5c Use helper to test for guidebot flag 2013-11-16 23:24:12 +00:00
Kp d0514455b3 Use automap_state instead of automap_count 2013-11-16 23:24:12 +00:00
Kp 321e240744 Use rear_view_state instead of rear_view_count 2013-11-16 23:24:12 +00:00
Kp cda0b60687 Remove unused fire_secondary_count 2013-11-16 23:24:12 +00:00
Kp 494c380abb Switch automap to use fire_primary_state
Counting is unnecessary here.
2013-11-16 23:24:12 +00:00
Kp 1312369c94 Restructure ai.c for merging 2013-11-16 23:20:30 +00:00
Kp e2a2cc579a Remove unused piggy_dump_all 2013-11-10 19:08:12 +00:00
Kp 9b167689ba Remove unused variable joy_num_axes 2013-11-09 05:08:37 +00:00
Kp ce929926e8 Remove duplicate warning on excess joystick axes 2013-11-08 03:14:44 +00:00
Kp f11e787ef3 Use helper for bounding check 2013-11-08 03:14:44 +00:00
Kp ed8484f096 Remove unnecessary packing on vms_vector 2013-11-08 03:14:43 +00:00
Kp 6e6b480082 Use enum for weapon types 2013-11-02 04:26:51 +00:00
Kp 6fc8d110f3 Only give secondaries that exist 2013-11-02 04:25:33 +00:00
Kp 58958e091b Only give primaries that exist 2013-11-02 04:24:14 +00:00
Kp 2714679284 Mark private functions static 2013-11-02 04:23:55 +00:00
Kp 9dec31d801 Remove unused vms_svec 2013-11-01 02:58:05 +00:00
Kp 663d81cc8f Remove unused function med_rotate_segment_ang 2013-10-29 03:24:43 +00:00
Kp be777c78a3 Remove unused function med_copy_segment 2013-10-29 03:24:43 +00:00
Kp 765f34eb0a Remove unused function med_check_all_vertices 2013-10-29 03:24:42 +00:00
Kp aa7f36e3b7 Provide HUD prototypes in Descent 1 2013-10-29 03:24:42 +00:00
Kp 50392e9a3c Mark OpenGL loader functions static 2013-10-29 03:24:42 +00:00