Commit graph

170 commits

Author SHA1 Message Date
kreatordxx 9e4b8db5f6 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 1c6c1b3a9d 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 9070771c47 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 9933bb81ce 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 509e5be5a7 Added function to list valid resolutions and build resolutions menu dynamically with the resulting list 2010-06-24 09:29:11 +00:00
zicodxx c3d91ceeca emoved PHYSFSX_getFreeDiskSpace and relying on success of buffered writing to see if demo recording must be stopped 2010-06-18 08:22:45 +00:00
zicodxx e4a0c20f76 Introducing gr_bitblt_find_transparent_area to dynamically detect boundaries of sub cancas used for CM_REAR_VIEW; On the way also allowing to create weapon box sub bitmaps from uncompressed cockpit bitmaps 2010-06-18 07:31:06 +00:00
zicodxx f09a336184 Increased SDL_mixer music abilities to play non-hmp from HOGs, having Level-music path to play, options to specify non-level tracks and added various playing order methods; Abstracted SDL_mixer- and Redbook-interfaces; Simplified program flow through all music functions 2010-06-14 08:13:16 +00:00
zicodxx 539abbffb6 Ignore case-sensitivity for cfile_init/close/size and PHYSFSX_openReadBuffered; Give error message if default sound file cannot be opened so user knows what's going on 2010-03-26 21:17:56 +00:00
kreatordxx d5cf0dd85b Move MAX_SUBMODELS from inferno.h to polyobj.h, fixing #include loop by removing some (mainly object.h) and instead using explicit 'struct' declarations; compile net_ipx.c for Mac SDL Video build 2010-02-07 07:28:49 +00:00
zicodxx 2bcf54b77a Added real Doublebuffering to SDL-build; While on the way, making Bpp selection available for SDL-build, too 2010-01-29 21:53:17 +00:00
zicodxx 75062a8d96 Making files in 2d directory more similar and removed unused and broken code; Fixing a bunch of memory errors; Removed stack protecting flag for gcc in debug mode 2009-11-30 22:42:55 +00:00
zicodxx fb08673f54 Removed timer_get_approx_seconds() and replaced with timer_get_fixed seconds since it was too inaccurate and created significant offset 2009-11-24 22:43:41 +00:00
zicodxx dbf4d55839 Abstracting networking protocols - Step 4: Implemented new UDP layer with Client/Server communication, Packet Loss Prevention and strict Version checking. Netgames list will follow later. 2009-11-24 09:48:53 +00:00
kreatordxx 96d305e54c Only list resolutions that can actually be used, using new gr_check_mode 2009-11-17 14:27:39 +00:00
kreatordxx 70bbac21b7 Read big endian savegames on little endian computers and vice versa 2009-10-05 02:51:37 +00:00
kreatordxx 78d9b8f15f Make inferno.c more similar between D1X and D2X 2009-05-31 07:20:26 +00:00
kreatordxx db27b1723d Remove redundant conf.h directives 2009-04-30 13:01:31 +00:00
zicodxx 0c36fecb42 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
kreatordxx f149ace782 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 6ba4be9e2b Changed function naming convention in netdrv and below to general Descent code convention 2009-01-26 05:01:18 +00:00
zicodxx 3699f316cc Took out old missile tracking code to be selectable over command-line to preserve consistency 2009-01-17 11:11:07 +00:00
kiplingw 70fd9452f1 Added: Better support for non-free compiler... (patch from Damjan Cvetko <zobo@lana.krneki.org>) 2009-01-14 19:54:45 +00:00
zicodxx be02298290 Added other SDL_(Un)LockAudio statements to protect the audio_mixcallback function - making that hopefully stable on multicores; Resetting warn_func at quit_request so we do not accidently show any menu; Open gamelog.txt unbuffered 2008-11-15 20:49:54 +00:00
zicodxx aee0198f2e 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 15d25cc54a Always keep aspect scaling (lowest scalar of width and height) for fonts, lines, dots, spheres, reticle and non-Cockpit-/Statusbar-related HUD-elements; Moved the Cockpit alpha decoding to gauges.c and created a seperate bitmap for the alpha fields and create subbitmaps from this one - more memory but this way we do not modify the cockpit bitmap itself 2008-11-09 14:31:30 +00:00
zicodxx 7e1141a881 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 92cec5ced3 Removed hack for Cockpit-window transparencies and added function to decode and add alpha to the bitmap directly (now works in non-OGL as well); Using sub-bitmaps for Cockpit-windows and menu backgrounds; Cleaned old bkg stuff from menu GUI 2008-10-28 13:28:10 +00:00
zicodxx c09620f160 Readded -ip_hostaddr optional to the value stored in descent.cfg for automated program starts or whatever; Fix by Locate: Correctly close UDP sockets on Win32; Fix by Locate: Ability to select Secret levels on Multiplayer in D1X again which was broken in r619 2008-10-20 12:34:45 +00:00
zicodxx 69c66b9afb 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 63d2c4a2cf 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
kiplingw 94e47b14f9 Added: Minor improvement and fix to dl_list code...
Added: More work on tracker code base and protocol documentation...
2008-08-19 04:50:47 +00:00
kiplingw 1f7de002ad Added: More thought on tracker protocol and code... 2008-08-12 06:11:39 +00:00
kiplingw 41e1b91dd4 Added: Much more work on tracker...
Changed: Added PROGRAM_NAME to list of CPPDEFINES. Needed for tracker protocol's useragent submission...
2008-08-11 05:30:42 +00:00
kiplingw 97f7a1e851 Added: More work on tracker client side code...
Added: DXX-Rebirth tracker communication protocol documentation...
Warning: Broken and will segfault. Will figure out later. Disabled in release mode anyways...
2008-08-10 06:51:32 +00:00
kiplingw 75227cf100 Added: Some notes regarding the warning raised in main/newdemo.c...
Fixed: Warning in 2d/pcx.c...
2008-07-27 22:12:19 +00:00
kiplingw 4328ddcb05 Added: Mostly stubbed out test code for game tracker server stuff...
Fixed: Cleaned up some GUI macro code in menu.c...
Updated: CHANGELOG.txt for end user level changes...
SConstruct: Cleaned up build system a bit with prettier build messages, added a feature or two, and included tracker source
Fixed: Fixed harmless warnings on no new line at end of some source files...
2008-07-26 17:57:13 +00:00
zicodxx e54992a974 Fixed IPX default socket (typo); Using function pointer for IPX-based sockets instead of globals 2008-07-19 22:28:31 +00:00
kreatordxx 0866c3c66c Add BALDGUY cheat for Mac data (see if anyone finds it ;-) ) 2008-07-15 12:50:27 +00:00
kreatordxx ce914f552e No using chdir for Mac OS 9 - it doesn't have it 2008-07-01 11:22:36 +00:00
kreatordxx 402fe0ec51 Add snprintf for Mac OS 9 2008-07-01 11:15:52 +00:00
kreatordxx 16cfedcccd tidy up music keys, ALT-SHIFT-F9 ejects audio CDs 2008-06-15 08:50:05 +00:00
zicodxx 885074607c 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 565ea29e05 Add audio CD support to D1X, fix associated bugs 2008-05-24 08:59:35 +00:00
zicodxx 2de6240191 Added -nomusic ability for SDL_mixer API; Added -gl_fontfixwidth to scale fonts with fixed aspect on widescreen resolutions, scaled to height 2008-05-19 19:28:27 +00:00
kreatordxx fa16bbc0f2 set Jukebox as the default jukebox path, for Mac OS 9 look for dxx.ini outside the app bundle 2008-05-18 07:13:07 +00:00
kreatordxx 3aa8f5ece7 remember the last IP address entered for UDP instead of parsing -ip_hostaddr 2008-05-16 11:39:27 +00:00
zicodxx 91e2934ca1 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 039b8b551e 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
kreatordxx 27e288b21d get it to work for Mac OS 9 2008-04-24 14:27:54 +00:00
zicodxx ec70ae0413 Added function gr_set_attributes to change Options like Texture Filtering and SDL_GL attributes while runtime (if supported); Added 4x Multisample support 2008-04-22 08:29:29 +00:00
zicodxx a40b362ced 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 24d1cf52f6 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
kreatordxx 39a68c665b show a messagebox if there's an error and graphics are initialised, update Xcode project 2008-04-08 12:51:21 +00:00
zicodxx a172315d4a 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 5b30bcd4dc Added definitions for OpenGL fucntions which might not be included in system headers; Use more HiRes content from dxx.zip; Removed briefings palette hacks; Menu right border shadow was too wide; Corrected reading for some PLX content which seemed not to work on all archs 2008-03-25 12:25:19 +00:00
kreatordxx 6aa3819282 detect the number of songs actually available if no descent.sng file (max 22) 2008-03-23 08:42:24 +00:00
kreatordxx b33c08cea2 allow dxx.ini to stay with the binary for *NIX systems, with Mac OS 9 don't put user-created files inside the .app bundle 2008-03-21 13:52:54 +00:00
zicodxx f014231a78 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
kreatordxx 032018ccc4 add support for Mac pigfile (which doesn't include sounds yet) 2008-03-16 08:11:08 +00:00
zicodxx 8eb5c965d2 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
kreatordxx 3a188fa14d support PC shareware files in full version build, make game data loading code easier to follow 2008-02-11 12:12:57 +00:00
zicodxx fe98538b2b Cleanung up arch/ a little bit; Added mouse delta time interval for more more accurate reading at high FPS 2008-01-29 14:49:54 +00:00
zicodxx d9e23370f9 Implemented PhysFS support; Implemended D2X memory functions; Code cleanups 2008-01-23 17:25:09 +00:00
kreatordxx da7fd57332 merge loadrl2.c into gamemine.c and gamesave.c 2008-01-19 01:13:47 +00:00
zicodxx 7c38557284 Removed SDL Gammaramp code (obsolete); Improvements on Demo code 2008-01-13 13:27:58 +00:00
kreatordxx 0837b91f53 complete bigendian support, without touching network code 2008-01-13 00:58:49 +00:00
zicodxx 091526789e Added BigEndian-related multiplayer/network code (unfinished); Re-Added IPX Socket option to Host menu for IPX games; Removed ForceVersionCheck global - conditions with driver->type; Merged netmisc.* and netpkt.*; Handling host disconnect for UDP games in network.c 2008-01-08 16:33:19 +00:00
kreatordxx 2ac1559a8b get D1X to build for Mac OS X, conditionals for Mac OS 9 2008-01-03 10:31:02 +00:00
zicodxx 96cc6e1006 Cleaned/Rewritten/Renamed lower level network layer to make it (look) less IPX-oriented 2008-01-02 15:36:51 +00:00
kreatordxx 588d1b000a rename types.h to pstypes.h to avoid name conflict with Mac OS 9's MrC (it doesn't respect the difference between project and system headers) 2008-01-02 03:37:13 +00:00
zicodxx d6c708c111 Implemented new UDP/IP interface with Server-Relay (for firewalled users) and IPv6 compability; Fixed memory issues; If arguments -gl_mipmap and -gl_trilinear used both, always select -gl_trilinear 2007-12-17 22:45:45 +00:00
zicodxx 17c16bfc5b 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 4f399bbfea Improvements for -gl_prshot; Improved show_netgame_info(); Removed obsolete multisave code; Removed mekh stuff and wide cleanings in whole multi code; Incremented MULTI_PROTO_D1X_VER (for version checks in the future if needed); Renamed 'D1X-only game' to 'Version Check' 2007-10-31 00:49:24 +00:00
zicodxx 9d1a374447 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 60e30cb40a Small fixes; Code cleanup; Implemented PR-Screenshot feature 2007-10-18 14:44:02 +00:00
zicodxx bf2e42d2b0 Set SOUND_BUFFER_SIZE for SDL_mixer to 1024 to minimize delay; Removed MIDI-existance check and store all music to Music/ subdirectory of writedir - keeps clean if user has tons of levels; Added SDL_mixer command-line help output; Implemented new way to read command-line args; Stored MAXIMUM_FPS in game.h - where it belongs to 2007-10-13 23:49:07 +00:00
zicodxx 103f8e3737 Readded -notitles switch; Removed use of tempfile for PLX writing 2007-10-06 14:50:19 +00:00
zicodxx 487c6fa0e2 Implemented -use_players_dir 2007-09-28 15:14:09 +00:00
md2211 d393f32eed * Removed executable flag on most files
* Reverted value of SOUND_MAX_VOLUME
2007-09-21 19:06:05 +00:00
zicodxx f17be32e17 Code-cleanup; Implemented new multi profile feature 2007-09-20 14:22:57 +00:00
md2211 cd6e155579 * 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 bbf30c223c Removed handicapping remnants, Removed -msgcolorlevel, color names in Multi-messages to Player- or Team-color 2007-09-05 17:31:05 +00:00
zicodxx 1e74aac248 Added command-line option to disable reticle 2007-08-29 23:21:13 +00:00
zicodxx 46c785f3fc Fixed some mem-leaks; Made show_fullscr() use ogl_ubitmapm_cs(); Removed use of glScissor for menus - using Blitting; Code cleanup 2007-08-27 23:01:34 +00:00
zicodxx c5b265db30 Added -ip_hostaddr argument to specify a host IP address via command-line/INI 2007-08-08 21:11:51 +00:00
zicodxx a01b75737c FindArg cleanup - GL-Debug and SDL arguments 2007-07-23 18:13:49 +00:00
zicodxx 44ae14c363 Even more FindArg cleanups 2007-07-22 20:56:23 +00:00
zicodxx 88c53d941a Even more FindArg cleanups 2007-07-22 20:40:39 +00:00
zicodxx d6d1a2ca1f Code cleanup and small fixes 2007-07-22 01:34:00 +00:00
zicodxx 1907daaef3 Cleanups 2007-07-18 22:23:06 +00:00
zicodxx ca9e82fe80 Cleaned up more FindArg's - general Debug Options; Cleanups 2007-07-18 20:13:17 +00:00
zicodxx e274230e38 Cleaned up more FindArg's - Networking Options; Some fixes 2007-07-16 02:34:51 +00:00
zicodxx c19d49d65d Cleaned up more FindArg's - (most important) OpenGL Options 2007-07-15 21:22:07 +00:00
zicodxx 90e50806ba Cleaned up more FindArg's - Graphics Options 2007-07-15 15:23:45 +00:00
zicodxx f3ae339f9f Cleaned up more FindArg's - Sound Options 2007-07-14 22:36:04 +00:00
zicodxx 38cde9ec87 Placing FindArg calls to seperated function, putting variables to a struct - frist step, not finished, yet; Large code cleanup 2007-07-14 20:33:42 +00:00
zicodxx c3fa1eb778 fixed more compiler warnings 2007-06-11 15:54:09 +00:00
zicodxx 86c18a63c3 fixed a bunch of compiler warnings 2007-06-11 09:06:14 +00:00
zicodxx 6049574cd2 introduced new bitmap flag to draw cockpit bitmap with transparency; draw transparent cockpit bitmap over gauges to make it more pixel-correct; code cleanups 2007-06-10 16:21:53 +00:00