Commit graph

861 commits

Author SHA1 Message Date
zicodxx 100cbe51cb One more take on Mouse cursor friendliness: Merged mouse_toggle_cursor and mouse_toggle_grab; instead of trying to use SDL_GetAppState (which does not work as expected on Windows) to release mouse, use strict calls of mouse_toggle_cursor so we at least have a free mouse outside of Game_wind and Automap; decreased time to automatically hide cursor; added mouse_close to release mouse in case of emergency 2010-07-28 17:27:35 +00:00
zicodxx 9f5860a54a Moved digi_set_digi_volume call from config loading to designated audio subsystem init function so it will be correctly set after the sound system is auctionlly initialized 2010-07-27 20:42:54 +00:00
zicodxx 406a599aeb Fixing bug in MIDI header - format was written in size of int instead of short 2010-07-27 20:16:39 +00:00
zicodxx 0e0b04c138 Fixing automatic mouse release function - still this does not seem to work in every case 2010-07-27 19:42:28 +00:00
kreatordxx 1f6e72f781 Show stars background for died in mine and secret level messageboxes; equalise fuelcen.h and cntrlcen.h 2010-07-27 11:41:43 +00:00
zicodxx 3a67eed1a8 Overhauling showing/grabbing cursor and also taking care of case if program looses focus; store old_delta_x/y in mouse info structure 2010-07-26 18:10:21 +00:00
kreatordxx c7da78f144 Fix crash caused by last commit (whoops) 2010-07-25 02:43:22 +00:00
kreatordxx 961fd2b1b8 For menus, only call the user function for closing immediately before closing, fixing memory errors when the user function frees memory 2010-07-25 02:30:53 +00:00
kreatordxx 936f46fbeb Rewrite quit system, fixing *many* bugs with it :P 2010-07-25 01:22:44 +00:00
kreatordxx 88373bd89d Exit SDL_PollEvent early if window changes, to avoid menu problems when pressing keys fast; fix 'condition is always false' warning 2010-07-25 00:49:33 +00:00
zicodxx 6c4cd7b22e Fixing crash when joinging game over UDP Netlist: when exiting the menu for any reason, return 0 instead of following the code and possibly lead to drawing text from a newly free'd pointer - D'OH 2010-07-21 16:58:38 +00:00
zicodxx 8d78876d13 Thanks to Marix for hinting me I should not init a pointer with quotes if I plan to allocate/free it... my stupid-level officially broke the record 2010-07-20 18:38:29 +00:00
zicodxx 4ed5696661 Removed redundant Winsock calls from Windows-specific IPX code - it's already in net_ipx.c 2010-07-19 18:28:33 +00:00
zicodxx d99abc5afd Fixing some harmless compiler warnings caused by missing includes, missing newlines at end of file; cleaned up strutil.h 2010-07-19 18:17:08 +00:00
zicodxx d78a16e229 In briefings make sure Current_color cannot exceed possible array bounds 2010-07-19 17:30:25 +00:00
zicodxx c6594d2184 Introduced state_quick_item so we can safly check if there is a valid quicksave slot wihtout messing around with state_Default_item which is supposed to always show a valid slot in the first place 2010-07-19 17:07:12 +00:00
zicodxx 58affab121 Did not close hmp after MIDI conversion which caused some unfree memory - fixed 2010-07-19 17:05:41 +00:00
zicodxx 27c1d4733a Merged all HMP-related code into hmp.c/h; Also introduced new HMP to MIDI conversion functions based on JJFFE which use former Win32-related HMP-code - fixes some bugs in MIDI conversion and cleaner 2010-07-18 20:28:15 +00:00
zicodxx c25dfdc7e7 For normal digital audio (11/22Khz) use buffer of 1024 for all platforms to prevent delay 2010-07-17 13:07:23 +00:00
zicodxx f5aa8ce8bc Instead of screwing by possibly using negative array indicies in find_seg_side() return -1. In ordering segments make this result in unimportant order; Taking in some Asserts which were disabled years ago by me. Let's fix this for real when we get to it 2010-07-17 11:57:07 +00:00
zicodxx fc44ec76f5 Removed OGL hack to fix overlapping room in D1 lvl19 and rather move vertex a little. Still a hack but now without messing Depth test 2010-07-17 11:19:29 +00:00
zicodxx 2c1045d4b5 If newdemo_start_playback fails if random file is given set -autodemo to 0 to prevent endless loop 2010-07-16 13:03:12 +00:00
zicodxx f2df60a12d Only use one single call of timer_get_fixed_seconds() for whole SDL event loop; Abstracted grabbing mouse and mouse cursor toogle to mouse functions instead of calling SDL functions inside of non-arch code; Automatically hide mouse cursor if it's not used for more than 3 seconds; Reworked placement of mouse grabbing toggle; Do not read any mouse input if -nomouse is given 2010-07-16 11:07:42 +00:00
zicodxx 1833474b12 Fixing showing options menu in demos - was still called (or rather not) by obsolete variable 2010-07-16 06:27:49 +00:00
kreatordxx f16671a077 Make sure the right canvas is set for titles and briefings, fixing bug where briefing is shown in the cockpit when using 'freespace' cheat 2010-07-15 09:45:25 +00:00
zicodxx 896a3770c8 Scale tab stops in briefings to font-size correctly 2010-07-15 09:22:33 +00:00
zicodxx ac8cf9aaf6 Cleaned the variables used for newdemo code; Instead of giving both old and new values to special recording functions, added new variables to demo code serving this purpose and also checking for redundant record calls which only would waste bytes; Removed duplicated-object-id-hack which did not work as expected and caused jittering on playback; In that process, found a bug where Num_open_doors might nor be set correctly - cleaned that up a little and got also rid of one aweful goto; Made sure cloaked walls are recorded FPS-independent but rather fade-value-dependent 2010-07-15 06:09:23 +00:00
zicodxx 8c19958db8 Cleaned the variables used for newdemo code; Instead of giving both old and new values to special recording functions, added new variables to demo code serving this purpose and also checking for redundant record calls which only would waste bytes; Removed duplicated-object-id-hack which did not work as expected and caused jittering on playback; In that process, found a bug where Num_open_doors might nor be set correctly - cleaned that up a little and got also rid of one aweful goto; Made sure cloaked walls are recorded FPS-independent but rather fade-value-dependent 2010-07-15 05:40:25 +00:00
zicodxx debfa159d7 Addition for last revision - just screwed up my working copies 2010-07-13 06:45:15 +00:00
zicodxx 0ce37b89bb Added expandable classes for HUD messages (like D1X but slacked) to better handle Multi messages or redundant messages; Rewrote HUD code completely; Changes -playermessages to -multimessages since this is more appropriate; Removed remnants of -mprofile 2010-07-13 06:35:25 +00:00
zicodxx 65679c7c0f Trying to improve reliability to find appropriate homing object by using vm_vec_mag/normalize instead of their *quick equivalents; Removed code which supposedly meant to track objects near reticle - don't like that 2010-07-09 07:58:48 +00:00
zicodxx b6d7b9d266 When reading mission file, check for sanity of possible breifing or ending to make sure author did not just screw up the file; Fixed slight bug when playing ending briefings from secret levels 2010-07-08 22:20:39 +00:00
zicodxx 98a1b97fb9 When reading mission file, check for sanity of possible breifing or ending to make sure author did not just screw up the file; Fixed slight bug when playing ending briefings from secret levels 2010-07-08 22:12:53 +00:00
zicodxx 68aa94f180 Fixing typo 2010-07-08 10:59:51 +00:00
zicodxx e5130c21b5 Also send event KEY_COMMAND if there's somethig in our Unicode buffer since not every Unicode key corresponds to a keysym on every layout 2010-07-08 10:55:20 +00:00
zicodxx 1093aa0d07 Improved hanlding for closing sockets - doing via closing of Game_wind when available or in specific multi menus; Also handling GM_GAME_OVER setting over Game_wind closing as well if apprpriate - cleaner and helps to cleanup multi when mission is over 2010-07-08 09:35:59 +00:00
zicodxx cb1b0bdb26 Reworked handling of Netlist now also showing full game info; Prevent Clients from sending lite_info; Make lite_info show numconnected instead of numplayers as this would show disconnected ones as well; Removed reusing ports on different instances in Windows build - only screws up several games running on one machine 2010-07-08 06:37:23 +00:00
zicodxx 98fb362850 Fixing building on Windows if SDL_Mixer is not a target 2010-07-05 12:14:49 +00:00
zicodxx 0b8e26161b Reducing sending objects per frame from 20 to 1 again to reduce possibility of timeout on stressed systems 2010-07-05 12:12:12 +00:00
zicodxx 02247f5abb When selecting coop game mode, make sure that besides max players menu values also actual player number is set and menu text is updated properly 2010-07-05 08:05:32 +00:00
zicodxx d74b94b9bd Addition for rev1152: After setting mouse button, reset mouse state properly 2010-07-05 07:53:38 +00:00
zicodxx d4eddd177f Fixing issue introduced in rev1139: Game could of course not open music files which are not inside Searchpath or added to it - re-added playing over absolute path 2010-07-05 07:41:30 +00:00
zicodxx 74674220ff Fixing issue when assigning mouse button if a citem is still pointed out; Fixing still processing key commands even if we want to assign a key 2010-07-05 07:31:03 +00:00
zicodxx 9d3abbbf32 Fixes for rev1148: Was too hasty with calling net_udp_close; Fixing typo in WSACleanup() 2010-07-04 13:57:21 +00:00
zicodxx 0a143da860 Since time is not suspended between levels in Multiplayer, call reset_time after level change. Apply this in Singleplayer, too since it should always be safe - and appropriate - to reset timer_value soon as a new level begins 2010-07-04 13:12:08 +00:00
zicodxx faab4b0acb Implemented Winsock functions for UDP which I totally forgot about; Now when leaving game in any way, close sockets and Winsock stuff 2010-07-04 12:47:30 +00:00
zicodxx 4d5ff1bd29 Fixed Compiler-warning on Windows; Fixing Windows build which was not linking against SDL 2010-07-04 07:07:51 +00:00
zicodxx 3ee2d7c4fa Renamed manual_join to direct_join; Aligned letlist tabs a little bit 2010-07-01 09:08:30 +00:00
zicodxx d3a10e1516 For gr_get_string_size introduced get_char_width_f to calculate with floats to measure non-integer font scalings; Cleanup 2010-07-01 09:03:52 +00:00
zicodxx 3033cea7b4 Always try to open UDP default port when discovering Netgames and give warning if that fails; If entered IP address cannot be resoled, do not warn me twice 2010-06-30 15:57:13 +00:00