Commit graph

127 commits

Author SHA1 Message Date
kreatordxx 00347f0bcb Add endian converter for demos, read shareware demos, various bugfixes to demo system 2009-11-15 08:22:08 +00:00
kreatordxx dd8f679724 Make game.c more similar between D1X and D2X, making related changes to other files (\!) 2009-07-01 11:35:33 +00:00
kreatordxx 532bdc3a2f Make inferno.c more similar between D1X and D2X 2009-05-31 07:20:26 +00:00
kreatordxx bf512bb9ec Remove redundant conf.h directives 2009-04-30 13:01:31 +00:00
zicodxx b3bf4813df Abstracting networking protocols - Step 2: Introducing new structure to hold protocol-dependend and -independend information about Netgame and it's Players; Further isolation of the IPX code and renaming the netdrv_* code to ipxdrv_* as this is now actually IPX-only; Next up: Renaming network_* functions to net_ipx_*, writing wrappers for protocol dependend functions in multi.c, Implementing protocol selection and Cleanup 2009-03-20 12:10:38 +00:00
zicodxx 8da36f8873 Abstracting networking protocols - Step 1: Renaming network-related files; Removing net_ipx.h (former network.h) includes from as much files as possible to make isolation of IPX-related functions easier in Step 2; Version defines Cleanup - needed later for good Version-Checking 2009-03-04 21:04:43 +00:00
kreatordxx b537639fac Associate the jukebox with Redbook Audio via new 'extmusic' layer - separating from MIDI and making it handle ALL music (not just game music) 2009-03-03 12:55:27 +00:00
zicodxx 8e7fe53610 Defined some default cockpit modes in Demo mode so we do not get invalid values when demo starts in non-default-view mode (as new HUD modes are only triggered at beginning and end of event); Removed Newdemo_flying_guided global; Init seismic disturbances in demo mode just to make sure tey are switched off when coming from game mode; Made initialisation for Missile_viewer signature saving global so we can reset it for each new level and make sure we get a correct missile view; Fixed regression in Ai_last_missile_camera 2009-02-02 08:49:58 +00:00
zicodxx fb939d8abb Patch from Damjan Cvetko <zobo@lana.krneki.org> for better support building with a non-free compiler... 2009-01-15 01:00:19 +00:00
kreatordxx 45801a75d8 Fix Mac OS 9 compile issues, update Xcode project 2008-12-21 08:54:03 +00:00
zicodxx 4bf841f3c9 Seperated help screens for game, netgame and demo; Also show them in Controls menu; Small Menu UI fix for ScrollOffset when calling menus in a scrolled area of a menu 2008-12-13 12:58:57 +00:00
kreatordxx 777f76aedf Get Mac command keys working, MACINTOSH code cleanup, update Xcode project 2008-12-07 12:26:43 +00:00
zicodxx ee5dff5c41 Do not allow to restore games while player is dead... again - to much trouble right now; Solving small display issue when fading out weapons which ran out of ammo 2008-11-21 00:12:41 +00:00
zicodxx 7d9e7d9bfc Actually demand ANY valid key to abort the Death sequence 2008-11-19 12:34:50 +00:00
zicodxx 1cdf95ed2f Fixed Cheats 2008-11-18 14:34:52 +00:00
zicodxx 02b1872aa9 Yet another UNICODE overhaul - Using seperate buffer for UNICODE chars and only use it in key_ascii() while still using keysyms for the rest of the program so we do not screw up readings by key values altered by modifers - possibly still room to optimize 2008-11-17 23:38:43 +00:00
zicodxx 1de53497b2 Using a clean flow for closing game data at the end of main() instead of using atexit; Now only use atexit for SDL stuff, error, mem, console (and editor which we do later); Small Cleanup 2008-11-14 16:56:40 +00:00
zicodxx 9cc62df60d Always use printable UNICODE characters for the key_handler and included routine to assign key symbols to UNICODE so we get an equivalent of a Key-Released state which we need for the Keyboard buffer; Removed the shifted_ascii_value field from key_props and stored all usable characters in seperate rows; Improves Text input and makes keyboard mapping independent from keyboard layout without breaking any compability 2008-10-31 16:57:36 +00:00
zicodxx 51c322d3aa Cleanup: Renderstats; Made PRShot a non-OpenGL-related feature and added to Misc Options; Added command for SDL_ASYNCBLIT to command-line args 2008-10-28 17:04:35 +00:00
zicodxx 490726b4ac Setting Fullscreen toggle setting the GameCfg value at each change, not only in change_res(); Do not allow the toggle while playing since ALT-GR+ENTER could be used as game-keys; Reorganized Resolutions menu to automatically calculate aspect ratio for preset resolutions and making custom fields exclusive 2008-10-19 12:53:30 +00:00
zicodxx 6dc900f51d Giving credits function ability to use custom creditfile (again); Made laser-offset for laser exclusive so Prox mines won't go tru doors; Preventing cycling tru cockpit modes while dead, but allowing to load a state; Implemented D2X' lighting code to D1X (faster, better, sexier - weeee); Try to hop over some errors regarding walls/doors in levels instead of using -1 indexes for arrays; Made the briefing text ptr a bit more failsafe in case the file is corrupt/non-standard; Made scores use the menu screen even in GAME OVER; Fixed bug in neighbour fields of Weapon Keys table; Added the Weapon Keys stuff to TABLE_CREATION; Fixed bug where D2X did not recall applied resolution in the resolutions menu; Simpler check to create DEMO_DIR; Seperated X/Y sensitivity for mouse and joystick; Flush controls when Automap toggles so keypress won't deactivate it again; Made FrameCount in Demos aligned to the Dropframe condition; Added KEy to ttoggle playback text off; Gracefully exit demo code if demo is corrupt; Removed that new percent counter because many old demos seem to have corrupted last frames; Closing endlevel data file if IFF error so the mission still can be freed; Fixed Cruising for keyboard which was not aligned to FPS correctly; Used mouse delta scaling in kconfig.c instead of mouse.c to not screw up when delta is requested in non-ingame situations - it actually belongs to the controls IMHO; Now support up to 8 joysticks; Changed some leftover malloc's to d_malloc and free to d_free 2008-10-16 17:27:02 +00:00
zicodxx f108f30ffd Added new function to calculate common timesteps; Increased MAXIMUM_FPS to 200 for release and 1000 for debug; Used fixed sim_time for do_physics_sim and Interpolating to ensure collisions stay accurate at high FPS; New code and faster code for dot products by The_Lion; Disabled Nice-FPS and common Frame-Loop if VSync is active; More accurate delta timer for mouse (consider overhead); Added SDL_(Un)LockAudio for old SDL Audio interface; General support for up to 16 mouse buttons; Code cleanup; Made some AI movement and Player shaking FPS-independent 2008-09-30 00:07:07 +00:00
kreatordxx 0b7aa9dc0d add necessary #includes for last commit (whoops) 2008-06-15 11:48:01 +00:00
kreatordxx 558b2399a3 tidy up music keys, ALT-SHIFT-F9 ejects audio CDs 2008-06-15 08:50:05 +00:00
zicodxx c61b18b576 Generally increasing Menu rendering from 20 to 50 FPS; Allowed Fullscreen toggle in Pause menu and correctly releasing mouse; Fixed broken Death sequence timer; Fixed incorrect data offset for UDP player relay; Fixed crash in Multiplayer summary; Reworked player loading a little bit, making sure kconfig controls are all set; Some small Status bar correction; Implemented real Pause/Reume for Jukebox via SDL_mixer 2008-06-04 19:30:43 +00:00
zicodxx 3d1e2ed850 Using Windows code to play HMP files on Windows build; Fixed Jukebox keys in help screen; Allow -noredundancy in Singleplayer; Fixed processing of Console keys if Console is not active; Added Multiplayer hints to README; Made INI wrapping safer and more accurate 2008-06-01 12:53:03 +00:00
kreatordxx fd95b79cae Add audio CD support to D1X, fix associated bugs 2008-05-24 08:59:35 +00:00
zicodxx 0afae4e25c If a key combo is called which uses key of default wepaon binding, flush inputs 2008-05-19 11:31:15 +00:00
zicodxx 6f5d6fd2e2 Reworked keys for song changing a bit; Added Song control keys to help menu 2008-05-18 13:20:06 +00:00
zicodxx e6ec09869e Some code improvements and small fixes 2008-05-08 18:29:52 +00:00
zicodxx b772706508 Return unicode characters in key_to_ascii for non-EN keyboard layouts; Fixed sound menu issue if not compiled with SDL_mixer; switched -ip_norelay to -ip_relay since it's not tested enough; Renamed jukebox_free() to jukebox_unload() to stay with naming-convention 2008-05-07 14:02:01 +00:00
zicodxx ec7f8b68de Extended Jukebox capabilities for looping and continous playing and added jukebox_free() which allows calling jukebox_load() being able to load a new directory; Added Jukebox options to sound options menu; Removed loop hack for Windows MIDI playback; SDL_mixer implementation can now be used for Windows build as well 2008-05-01 21:40:34 +00:00
zicodxx d457f9430d Reworked timer_delay2() and calc_frame_time() to be more accurate and CPU-friendly; -nicefps replayced by -nonicefps to disable sleeping for calc_frame_time; Implemented VSync via SDL; Fixed compilation issues; Code cleanup 2008-04-21 18:39:49 +00:00
zicodxx 9bcea627d1 Made joy_flush also resetting button state; Improved glReticle; Implemented Fallback resolution if SDL may fail; Code cleanup 2008-04-19 19:11:32 +00:00
zicodxx 3a52d03d21 Added structure for values saved in PLR/PLX files; Added most common command-line options to options menu 2008-04-13 00:28:36 +00:00
zicodxx 44bbb66101 Implemented Console-style game logging system to print graphics, to stdout and gamelog.txt; Added structure to keep values for descent.cfg; Added aspect and Texture Filtering to descent.cfg; Removed mono code - printing important stuff over console; Removed some obsolete or very common defines; Code cleanup and small fixes 2008-04-06 20:23:28 +00:00
zicodxx d2365d65f0 Simplification of palette code; Properly screen clearing in SDL-only build when palette changes; Removed obsolete functions like gr_update (replaced by gr_flip), gr_palette_fade_in/out, gr_palette_clear; Added functionality to render Automap while menu display as well; Improved blocking of some controls code while Automap active; Fixed some compiler warnings 2008-03-20 23:23:46 +00:00
zicodxx 6479a897b2 Fixed some memory issues; Fixed some HUD element alignment; Only send NetDrv packets if NetDrvInstalled is true; Fixed demo glitches; Actually using Game_mode in demos to make Newdemo_game_mode hacking obsolete 2008-03-08 22:37:09 +00:00
zicodxx 10f39559bf Fixed wrong font width spacing, -gl_prshot, mission loading, null-terminatinon in several menus, cockpit glitch; Improved gl_reticle, -noredundancy; Some code cleanup 2008-02-27 22:05:58 +00:00
zicodxx f3d8d50a94 Reworked fonts routines - makes easier to expand and scale correctly; Reworked menus with better border scaling, improved rendering and cleanups; Improved font priniting ingame, better alignment; Reworked Netgame list; Real Doublebuffering in SDL-mode; Removed old and unused sources 2008-02-24 14:41:27 +00:00
zicodxx df7a1ca071 Introduced timer_delay2 as replacement for timer_delay to sleep according to given FPS rate considering calc time between frames 2007-11-21 12:46:09 +00:00
zicodxx a5e460e66e Correctly saving Reverse Stereo setting; Added Demo playback help keys; aligned Demo recording to 20 frames per second to save lots of hard drive space 2007-11-06 20:33:22 +00:00
zicodxx 453cf2d609 Fixed problems with GameTime wraparound - delay sounds, cloak, invulnerability, ping; Added debug key to Reset GameTime for testing; Removed -gl_vidmem; Cheat-code cleanup; Some HUD message redundancy 2007-10-28 20:14:25 +00:00
zicodxx 567af2ae9a Reworked Pause-screen 2007-10-14 16:25:55 +00:00
zicodxx e955dff203 Updated docs; Removed GP2X support since I won't support this device anymore 2007-09-28 22:44:04 +00:00
zicodxx 4bb97b0476 Moved some game keys to not apply if Player_is_dead flag is set 2007-09-24 21:25:47 +00:00
md2211 a0b4cac982 * Removed executable flag on most files
* Reverted value of SOUND_MAX_VOLUME
2007-09-21 19:06:05 +00:00
md2211 324c0df6a1 * Huge SDL_mixer refactoring; sound backend now selectable at runtime, in D1X & D2X
* Sound system now uses a set of function pointers (digi.c) as a single interface to either SDL or SDL_mixer
* Ported jukebox functionality to D2X
2007-09-18 13:37:39 +00:00
zicodxx 7ab0e53e2d Code Re-formatting; Preventing Redundancy in Restricted-game joining; Dumping refused player back to Join-menu; Expanded Game-help screen 2007-09-13 10:05:36 +00:00
zicodxx eb2c82b887 Added complex netgame information screen (key PAUSE), Removed ping commands because ping handled in new screen 2007-09-08 11:11:41 +00:00
kreatordxx dfb133d378 allow framerate indicator to be toggled in-game again 2007-08-24 00:01:39 +00:00
zicodxx 77cb0fac31 Control Redbook activity with GameArg.SndEnableRedbook only 2007-07-27 13:35:40 +00:00
zicodxx 928a542b88 Removed old Tactile-code since ForceFeedback is currently out of question 2007-07-22 02:01:02 +00:00
zicodxx 860b964ee4 Code cleanup and small fixes 2007-07-22 01:34:00 +00:00
zicodxx 7d23cb6772 Cleaned up more FindArg's - Networking Options; Some fixes 2007-07-16 02:34:51 +00:00
zicodxx 29ef28bef3 Cleaned up more FindArg's - (most important) OpenGL Options 2007-07-15 21:22:07 +00:00
zicodxx a2a6959d39 Cleaned up more FindArg's - Graphics Options 2007-07-15 15:23:45 +00:00
zicodxx 0aa3fc1acf adjusted size of Inputbox; code cleanup for saving/restoring state; also display savegame thumbnail when saving game 2007-06-16 08:14:00 +00:00
zicodxx b5a5352a41 fixed axis direction for vertical and sideways thrust time; fixed y-Offset for mouse selection in kconfig_sub; removed (useless) Shrink/Grow window feature to clean code a bit; improved grabmouse so mouse is always released in non-SCREEN_GAME modes 2007-06-14 20:52:14 +00:00
zicodxx c2270758ef free grabbed mouse in Demo Playback; improved Player-files deletion 2007-05-16 11:26:34 +00:00
zicodxx f20ec1e42e Added config field to map a Mouse Axis/Wheel to cycle Primary and Secondary weapons; lots of controls-related code cleaning 2007-05-14 13:38:44 +00:00
zicodxx d758d1bda6 update viewing values at Fullscreen Toggle; added Fullscreen Toggle to Menus and Demo Playback 2007-05-09 09:44:45 +00:00
kreatordxx 4ff4ddd0a3 include SDL/SDL.h for all platforms and physfs/physfs.h for Mac OS X to avoid having to add some hard-coded include paths 2007-04-09 02:41:45 +00:00
kreatordxx 5e207b4eb5 remove 'extern int last_drawn_cockpit[2]' since it's now a single int (not an array), fixing memory corruption (whoops!!) 2007-04-01 02:14:38 +00:00
kreatordxx a50d211aa4 move variable declarations to the top for non-gcc compilers (like MrC for MPW) 2007-03-31 00:37:58 +00:00
zicodxx c6d15d70e7 Addition/Fix for rev454: unbind Minus/Equal from Shrink/Grow window 2007-03-29 22:19:31 +00:00
zicodxx c6e19652a6 unbind Minus/Equal from Shrink/Grow-window - only use ALT-F9/F10 to get richt with all keyboard layouts; Always allow screen resolution switching, even if selected is not supported to ensure Multi-Monitor support 2007-03-26 08:20:46 +00:00
zicodxx febaa9f672 allow Quick-Exit with SHIFT+ESC; blocking 'SUPER LASER MAXED OUT' redundancy in stdout 2007-03-25 21:14:02 +00:00
zicodxx b41a8a437a Use Doublebuffer in OGL for all parts of the game and properly redraw elements, fixed Profiler build 2007-03-22 11:32:22 +00:00
kreatordxx 751cbe1a91 add gr_flip, allowing significant cleanup including the moving of gr_show_canvas, Pages and VR_screen_pages to arch/dos/gr.c 2007-03-21 11:32:33 +00:00
zicodxx 6fb8e560e6 fixed energy->shield transfer message output showing 'No transfer: Shields already at max' everytime if there is enough energy 2007-01-29 15:55:57 +00:00
zicodxx 3431db5ab0 also use ALT-F9/F10 for demo playback 2007-01-13 14:20:48 +00:00
zicodxx 3d3188473b GP2X handheld support; added SConstruct file (MAC support incomplete); code optimisations for software renderer; fixed memleaks 2006-12-19 02:25:50 +00:00
zicodxx fd609ae169 introduced FSAA; fixed fullscreen toggle glitches; adjusted OGL_TEXTURE_LIST_SIZE and OGLTEXBUFSIZE; code cleanup; fixed memleak in game pause; restored font.c (oops) 2006-10-09 21:44:24 +00:00
zicodxx b25b1ab4cd cleaned up options menu and removed 'd1x options' because not really necessary anymore 2006-10-08 17:54:32 +00:00
zicodxx 6bec053b4b some fixes for menus and automap; new aspect code; improved code to scale window for cockpits; introducing new variable in playsave.c to store game resolution and saving Game_window_h/h again properly - fixes bugs with screwed resolutions; making menus in game-resolution as default and re-activating old command-line arg '-menu<X>x<Y>' to scale menus 2006-08-30 18:12:04 +00:00
zicodxx b94413b91b initial import 2006-03-20 17:12:09 +00:00