Chris Taylor
6068bf961d
All gadgets now send events
2012-03-03 20:12:25 +08:00
Chris Taylor
e05a2d3483
Actually add editor data files and make sure DXX can find them
2012-03-03 16:02:16 +08:00
zicodxx
af6caef756
Unbuffered writing of gamelog.txt has it's own argument and is not triggered by -verbose argument anymore; Also increases verbosity of packet-loss-prevented packets by showing their types when added to queue
2012-01-09 15:19:12 +01:00
Chris Taylor
1c6ecbece0
Make editor menubar and associated menus into windows; either remove or make event-based all the B1_* macros
2011-12-31 17:10:40 +08:00
Chris Taylor
ff3f419c31
Remove redundant canvas, next and prev members in the UI_DIALOG struct
2011-12-18 20:33:51 +08:00
Chris Taylor
d8a1aaff32
Make ui_listbox_do fully event-responsive
2011-11-06 11:05:45 +08:00
Chris Taylor
89b36e8be0
Make B1_JUST_PRESSED event-based, leave ui_dialog_do_gadgets early if a key makes another gadget current, make ui_button_do fully event-responsive (but won't *send* events yet)
2011-11-05 17:07:25 +08:00
Chris Taylor
91e0f976f7
Pass the event to the individual gadgets' 'do' functions, fix compile warnings introduced in last commit
2011-10-25 09:38:12 +08:00
Chris Taylor
5d6c06c723
Pass the event to ui_dialog_do_gadgets and use it in that immediate function
2011-10-23 17:07:18 +08:00
Chris Taylor
3121fb4990
Add support for 'modeless' windows - windows that will allow events to be passed on to the underlying window. Intended for the editor
2011-10-09 18:31:44 +08:00
zicodxx
7638390173
Removed support for IPX protocol and MS-DOS-Multiplayer-compability due to age and lack of real need and to really improve on the Multiplayer without adding too much complexity for backwards-compability
2011-09-14 01:15:20 +02:00
zicodxx
4fcfe5618c
changed variables and pointer carrying vertex indexes from short to int to handle levels with over 900 segments properly
2011-06-30 12:23:38 +02:00
zicodxx
dcc964817e
Got rid of cfile code: Renamed cfile-functions to use PHYSFSX-naming convention, Replaced cfile-macros with proper PHYSFS(X) calls; Introduced PHYSFSX_exists() which can check case-sensitive or case-insensitive to give more flexibility with game content
2011-06-01 09:59:51 +02:00
zicodxx
6bb12ba926
Execute set_dynamic_light 60 times per second max since more would just be a waste of CPU time; When executing set_dynamic_light, process ALL lights; Instead of storing light color in objects, do it on-thy-fly but store bitmap-based color in grs_bitmap - vastly speeds up colored dynamic lights; Improved saturation for vertex lighting to make light color a bit more subtile
2011-04-12 03:02:49 +02:00
zicodxx
357e1b0144
Made lighting code work with actual RGB values and added feature to let certain objects emit colored dynamic light as well as let mine flash red when control center destroyed (OpenGL-only at the moment)
2011-04-07 22:32:47 +02:00
zicodxx
85f7be583f
Client-side implementation for Tracker support by Matt 1360 Vandermeulen including improvements in udp_dns_filladdr and IPv4/IPv6 compability; Very little adjustments by me, too including IPv6 support for Windows (untested); Actual tracker code will follow later as seperate branch when it's done
2011-04-05 02:24:30 +02:00
zicodxx
fe2dd897f7
Added cv_fade_level to canvas structure to replace Gr_scanline_darkening_level; Added cv_blend_func to canvas structure to set blending; Introduced gr_settransblend to set cv_fade_level and cv_blend_func; Added function to set normal blending, additive alpha blending and additive color blending; Moved Special transparency effects from g3_draw_bitmap to render_object to set individual transparency and/or blending for each object outside of OpenGL-specific code; Added special blending for fuelcenter and force field effects as well; Removed unused LASER_HACK code; Renamed OglAlphaEffects variable of PalyerCfg to AlphaEffects as I plan to implement this kind of effects for Software renderer, too
2011-02-23 17:46:36 +01:00
zicodxx
79e84f8d17
Draw laser effects with special blending instead of disabled DepthMask; Added special blending for transparency effects as well to let them kick more ass; Corrections while rendering outside part of endlevel sequence with disabled depth testing and dynamically changing Render_depth to make the mine exit visible again while not rendering the exit tunnel tru the planet terrain
2011-02-18 00:17:49 +01:00
zicodxx
c1e4e9c3d7
Moved all these unsorted global cheat variables to a handy structure; Simplified reading of the cheats without trying to make it complicated so no one finds them (everyone can get the source); Removed one or two cheats which carry more garbage than they are worth; Added replacement for the bittersweet cheat; Made FPS Counter an option of Graphics menu
2011-02-14 22:27:02 +01:00
zicodxx
6bc439a343
Simplified ogl version of gr.c in terms of SDL video flags and fullscreen toggle; Added command-line/INI option to remove borders from windowed program
2011-02-10 15:30:05 +01:00
zicodxx
6bcb2ef0cf
Added swapping for 64Bit sized integers in case we want to store/read them some day (i.e. new Savegame version storing object instead of object_rw)
2011-01-22 18:14:14 +01:00
zicodxx
45d8b82ab6
Additional commit for last revision - didn't selected all files properly
2011-01-19 21:51:59 +01:00
zicodxx
c124b0883f
Retired most of the Assembler code except the generic i386 scanline renderer; Removed all leftovers of Direct3D implementation; On the way make a some code more similar between D1X-Rebirth and D2X-Rebirth
2011-01-19 21:35:14 +01:00
zicodxx
493f1cff34
Introducing new BOUNTY Multiplayer game mode by Matt -1360- Vandermeulen <matt1360@gmail.com>; Fit show_HUD_names code to be more similar to D2X - names display still client-decided tho
2011-01-19 02:19:15 +01:00
Chris Taylor
45930e9afe
Rename ui/window.c to ui/dialog.c to avoid confusion with arch/sdl/window.c, also rename UI_WINDOW to UI_DIALOG, rename all associated functions, constants, parameters, local variables etc too; make a window when making a UI_DIALOG (does nothing yet)
2011-01-17 22:41:05 +08:00
zicodxx
a8f3f4764f
Added feature to enable Anisotropic filtering is supported by hardware or driver; Reworked way of handling texture filtering information so ingame switching is possible again; Little fix for ogl_get_verinfo which was taken out for ordinary OGL code but should for OGLES
2011-01-16 01:50:28 +01:00
zicodxx
eb1ad2655f
Converted console into a window and allow it to show in every part of the game; Fit several poll functions and kmatrix so they won't get interrupted by the console
2011-01-14 22:55:55 +01:00
Chris Taylor
2bd3385abd
For editor, replace use of ui_mega_process() with event_process(), with the editor's own default event handler; add EVENT_MOUSE_MOVED event with event_mouse_get_delta() accessor; add event_key_get() to replace ugly casting; rename mouse_get_button() with event_mouse_get_button() to keep with name convention; only send idle events when there are no input events so editor still works properly (or the same anyway); add and use event_send() function for input events (including idle)
2011-01-13 12:36:19 +08:00
zicodxx
31d17380ec
Added different reticle types with RGBA and size settings; Apply RGBA and size to FlightSim Indicator; Added Brightness Slider to Graphics options menu; Added OpenGL usage for gr_disk
2011-01-10 16:12:00 +01:00
zicodxx
8bda08ed7f
Improvement on the HMP track loop feature by TURRICAN; Added small template fix for descent.hmp which is supposed to be activated soon as we have some kind or Checksum function
2011-01-09 17:51:45 +01:00
zicodxx
28bf026158
Added OpenGL ES support - contributed by Florian Feucht and Oliver Haag
2011-01-06 12:43:55 +01:00
zicodxx
6d665fbb10
Introduced FlightSim control scheme for mouse which adds delta values to absolute position to behave like a Joystick; Added Deadzone slider for FlightSim as well as an optional Reticle display to show the positional data on screen; Removed old Mouselook hack in favor of this new feature
2011-01-04 11:43:30 +01:00
zicodxx
8c75bd0957
Added feature to disable D2-style Prox. Bomb Gauge; Moved NoRedundancy and MultiMessages toggles from GameArg to PlayerCfg to be set via Misc Options
2011-01-03 02:01:09 +01:00
zicodxx
919470db2f
Added Cycle Primary/Secondary to the config panels for keyboard and joystick like in D2X-Rebirth and store them in the designated key/button arrays; Added Cycle Primary/Secondary for Mouse which makes wheel axis cycling unnecessary and also let Weapon Keys be assigned to a Mouse button; If GameArg.NoStickyKeys do flush these keys so they can be used as normal game keys - otherwise ban them; Fixed crash when reassigning mouse button greater than 3; Joystick/Mouse function taking button as argument now check for sanity of this value so they can safely be used in kconfig code and deal with unassigned key values
2011-01-03 01:08:52 +01:00
zicodxx
05236e9c45
Added Sensitivity/Deadzone menu with sliders for each movement based action seperated for joystick and mouse to support all kinds of configuration - regardless the amount of joystick axes and whatnot; SDL_WM_GrabInput does not only capture mouse but also focus keyboard input - changed code to respect this fact and made grabbing a menu option which is enabled by default
2010-12-28 19:11:06 +01:00
Chris Taylor
54fea43e07
Make the keypad info display into a window
2010-12-28 12:27:34 +08:00
Chris Taylor
0557c8bb43
Copy lots of editor stuff from d2x-rebirth to d1x-rebirth, getting it to work on Mac OS X
2010-12-24 12:26:24 +08:00
zicodxx
4b265301a0
Made GameTime to GameTime64 using fix64; Changed all structures saving GameTime64 for internal timer purposes to store fix64 and added converting functions to save such times in fix; For Savegames/Demos always reset GameTime64 to 0 while saving and putting all timer values to safe limits, Multiplayer objects are sent in similar fashion
2010-12-22 01:17:49 +01:00
zicodxx
ffc73ed4f2
Introduced new data type fix64 to be used for new timers which can last 4462756 years instead of 9 hours; Introduced new timer functions to update and query program time; Used new timer all over the program except GameTime (which comes next)
2010-12-11 00:18:03 +01:00
zicodxx
82053d1bd8
Changed another WIN32 to _WIN32 to avoid accidentially compiling with WORDS_BIGENDIAN when using VisualC
2010-12-04 21:58:59 +01:00
zicodxx
bb0391467e
Little fixes for rev939 - changed definition from WIN32 to _WIN32, added little hack for incorrectly set HMP loop in Descent2-version of descent.hmp
2010-11-30 12:19:41 +01:00
zicodxx
ce2fb8db90
Large improvement for _WIN32 native MIDI code by TURRICAN0: supprt for HMP track loop, seamless song looping, GS reset, pausing/resuming midi, volume control for each MIDI channel; Set GameArg.SndDisableSdlMixer automatically if compiled without SDL_mixer support; On _WIN32 play HMP natively again
2010-11-28 16:49:32 +01:00
zicodxx
365def54ed
Implemented PHYSFSX_checkSupportedArchiveTypes to check if essential archive types are supported. Print warnings if not and stop program if necessary. Also added PHYSFSX_listSearchPAthContent to print out search path contents (figures) each time the function is called. Doing this before main HOG inits as well after sucessfully adding archives. Made PHYSFSX_addArchiveContent a bit more verbose as well.
2010-11-26 12:50:01 +01:00
zicodxx
5cd011214f
Created function PHYSFSX_isNewPath to check wether given path has already been added to Searchpath or not; Used PHYSFSX_isNewPath for menu browsing code instead it's own implementation; Using PHYSFSX_isNewPath for Jukebox directory, too to make sure Jukebox will not accidentially remove Game content depending on user selection; Also only keep Jukebox directory added until files are stored to prevent any other file present in this path can override or add anything to the game
2010-11-21 12:55:08 +01:00
zicodxx
95f1c1793e
Instead of writing converted MIDI to file, write to buffer so it can be played directly
2010-10-29 17:40:21 +02:00
Chris Taylor
541e422611
Fix errors for Mac OS 9, Mac OS X 'd1x' target builds again
2010-10-16 18:53:05 +08:00
zicodxx
4c7879b740
Added format arguments to all printf, sprintf and snprintf calls missing them to prevent warnings/errors with some distributions of gcc
2010-10-14 16:45:58 +02:00
Chris Taylor
499c8e3799
Fix errors for Mac OS 9, Mac OS X 'd1x' target builds again
2010-10-10 18:42:53 +08:00
kreatordxx
704a4e7be5
Add support for M3U playlists, tweak 'Jukebox playing' message so it shows the end of the path when truncating
2010-09-26 13:15:20 +00:00
kreatordxx
403169df7e
Add 'Data' subdir as a searchpath, so D2X will find descent.pig and to simplify a lot of file opening/checking/closing code
2010-09-25 03:35:23 +00:00
kreatordxx
35a69d5a0f
Link to PhysicsFS static library and use header from source for Mac OS X
2010-09-17 10:44:21 +00:00
zicodxx
a68da514b6
Rewrote code to control Texture Filtering a little so it's easier to apply Mipmaps for different parts of the game independently; Made Movie Filtering a menu option which must be enabled seperately; Added Movie Subtitles toggle to misc game options
2010-09-02 13:55:28 +00:00
zicodxx
445fc76554
Added feature to let select_file_reursive() change drive on _WIN32 via CTRL-D; Removed second definition of MEM_K accidentially happened due to bad communication
2010-08-31 13:25:45 +00:00
kreatordxx
1fcd5afe1b
Make define of MEM_K apply to non-debug builds as well (whoops)
2010-08-28 01:13:01 +00:00
zicodxx
887e8ed22c
Moving upwards definition of MEM_K so it's not restricted to \!NDEBUG; Initialized **i in list_dir_el properly to silence gcc when compiling
2010-08-27 15:43:24 +00:00
kreatordxx
72c62df583
Add path browsing feature to make song file/directory selection easier
2010-08-27 14:09:19 +00:00
zicodxx
ac92d9c971
Patching together editor so it compiles again (while still not running); Implemented PhysFS for file accessing for editor- and debugging-related code
2010-08-19 13:32:33 +00:00
zicodxx
0a86348aab
Added support to automatically load/mount ZIP files at startup, giving option to dynamically override or replace game content; Updated docs
2010-08-15 06:57:51 +00:00
zicodxx
5611e1c110
Cleaned and simplified includes to fix possible and actual problems with PATH_MAX
2010-08-09 19:19:36 +00:00
kreatordxx
3ed285f469
Add 'Resources' in .app bundle to searchpath for Mac; move bigger functions from physfsx.h to physfsx.c; resolve conflict with definition of 'bool'
2010-08-09 14:04:22 +00:00
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