Commit graph

200 commits

Author SHA1 Message Date
zicodxx 66f2045c59 using our own functions for strdup and _splitpath with the d_ prefix for all platforms for consistency 2012-05-19 02:16:43 +02:00
zicodxx 70287bfde6 using our own functions for stricmp, strnicmp, strlwr, strupr, strrev with a d_ prefix for all platforms for consistency 2012-05-19 01:36:43 +02:00
zicodxx d3fb313fd9 Renamed FixedStepCalc() to cald_d_tick() and FixedStep became d_tick_step; Also ther eonly is a 50ms-timer used to d_tick_step as it was the only one used so far; Replaced FrameCount with d_tick_count which only increments by 50ms-timer used in calc_d_tick() - that now scales timed actions for certain functions properly and makes AI work FPS-independent without any hacks in that regard 2012-05-14 19:06:28 +02:00
zicodxx 6d3782996c Fixed some non-critical compiler warnings; Now compiling with -std=c99 -pedantic and fixed warnings (except for editor build) caused by this 2012-05-14 12:20:30 +02:00
Chris Taylor 0ec49d71bd Rename MessageBoxN (meant to go with previous commit) 2012-04-17 16:14:18 +08:00
Chris Taylor ef2df1225d Rename MessageBox to ui_messagebox to avoid a conflict with Windows' MessageBox 2012-04-17 16:11:42 +08:00
Chris Taylor 311f835bf8 Clicking on mine elements in the editor now works in ogl 2012-04-15 13:45:45 +08:00
Chris Taylor 372d0f2733 Set Gamesave_current_version to correct version when making a new mine, move create_new_mine to gamesave.c 2012-04-14 13:46:20 +08:00
Chris Taylor e7e034b7bd Editor exits cleanly when clicking the close box, no more redundant gr_uscanline call in gl_urect for ogl (an initial attempt to fix the previous bug) 2012-04-09 20:41:47 +08:00
Chris Taylor ea2de8cb44 Get the clock, 'keypad' info, texture choosing page and object choosing page to draw (latter two just show black squares for ogl) 2012-04-09 10:14:10 +08:00
zicodxx 84a3eb2fac Introduced fixmul64 returning fix64 type to use with check_point_to_face() and prevent fix overflow with very large faces; on the way cleaned up NO_FIX_INLINE remnants and replaced QLONG with fix64 2012-04-05 02:41:59 +02:00
Chris Taylor 8a250ad48a Make all drawing in the editor single buffered, since the whole screen is double buffered. Fixes crash - but only shows a black screen and the menu for ogl 2012-03-31 12:28:01 +08:00
Chris Taylor 0c7e61de92 Update the canvas data pointers for all windows after changing the screen mode, so the main menu draws properly after leaving the editor 2012-03-24 14:43:45 +08:00
Chris Taylor e28ba63503 The editor now falls back to the main event loop in inferno.c, File->Exit now works as intended and get closer to making the editor and game work together 2012-03-19 13:49:19 +08:00
Chris Taylor 2d54617b91 Remove redundant ui_event_process and duplicate mouse.c in ui/. All editor input is now event-based. 2012-03-18 18:03:29 +08:00
Chris Taylor 8d784e848b Make editor_handler into a proper callback, iron some problems out. Seems to draw a different bunch of stuff now (still erroneous) 2012-03-18 16:02:32 +08:00
Chris Taylor cb0f7a4b04 Do a bit of a tidy up for the editor, dump code from editor() within the loop into new editor_handler() 2012-03-18 12:13:12 +08:00
Chris Taylor ffab790447 Use the gadget-sent events in the dialogs in ui 2012-03-05 19:08:41 +08:00
Chris Taylor dc84147b51 All gadgets now send events 2012-03-03 20:19:15 +08:00
Chris Taylor e50a82c743 Actually add editor data files and make sure DXX can find them 2012-03-03 16:03:03 +08:00
zicodxx 02fbfada3a 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:21:09 +01:00
Chris Taylor 16b5d1b101 Make editor menubar and associated menus into windows; either remove or make event-based all the B1_* macros 2011-12-31 17:12:09 +08:00
Chris Taylor 9da79266ee Remove redundant canvas, next and prev members in the UI_DIALOG struct 2011-12-18 20:41:31 +08:00
Chris Taylor 576054be55 Make ui_listbox_do fully event-responsive 2011-11-06 11:06:38 +08:00
Chris Taylor 008b24a451 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:08:17 +08:00
Chris Taylor b8b6a234c2 Pass the event to the individual gadgets' 'do' functions, fix compile warnings introduced in last commit 2011-10-25 09:39:35 +08:00
Chris Taylor 25c1b74e57 Pass the event to ui_dialog_do_gadgets and use it in that immediate function 2011-10-23 17:08:47 +08:00
Chris Taylor 5dc76799f2 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:32:53 +08:00
zicodxx d9ca3a2287 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:32 +02:00
zicodxx 8a6839e8a1 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 dd991fbf6b 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:55 +02:00
zicodxx 7ae49da7cf 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:51 +02:00
zicodxx eb7e001c2f 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:51 +02:00
zicodxx 7f18afd5d7 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:34 +02:00
zicodxx c960d5505a 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:39 +01:00
zicodxx d020a3136e 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:51 +01:00
zicodxx d6fbef4e43 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:07 +01:00
zicodxx 031420cf74 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:08 +01:00
zicodxx da43cc7d37 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:16 +01:00
zicodxx 9f6cbc8c6c 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
Chris Taylor eca34c30f5 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:42:18 +08:00
zicodxx 025a6c3951 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 2011-01-16 01:50:42 +01:00
zicodxx 0d997ed81a 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:56:00 +01:00
Chris Taylor 030aef43e3 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-14 17:51:13 +08:00
zicodxx 39e956e2bc Added different reticle types with RGBA and size settings; Apply RGBA and size to FlightSim Indicator and Guided Crosshair; Added Brightness Slider to Graphics options menu; Added OpenGL usage for gr_disk 2011-01-10 16:12:04 +01:00
zicodxx adad856f38 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:48 +01:00
zicodxx 449a5dffb1 Added OpenGL ES support - contributed by Florian Feucht and Oliver Haag 2011-01-06 12:43:58 +01:00
zicodxx 307d92c644 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:37 +01:00
zicodxx 281c9668bb Moved NoRedundancy, MultiMessages and NoRankings toggles from GameArg to PlayerCfg to be set via Misc Options 2011-01-03 02:01:26 +01:00
zicodxx 3adc5fe77a Saving weapon keys in PLX like in D1X-Rebirth; 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:09:09 +01:00