Commit graph

1208 commits

Author SHA1 Message Date
zicodxx 0c0a55e65b Fixed little memory issue while playing movies introduced by overhaul of window closing 2011-02-09 16:52:13 +01:00
zicodxx 753178a30f Reintroduced Savegames for Coop games using the original Descent2 implementation but correctly handling player slots in their pre-loading state preventing accidential player shifting which never really worked in the original game and we do not want with UDP anyways - was all tested but still might need a fix or two; Added some missing initializations for saving players and AI stuff; Completely ripped out remnants of saving between levels code 2011-02-09 12:58:32 +01:00
zicodxx 488c44f9cf Increased key repeat values to react a little more like the MS-DOS version of the game but a little slower so I can still stop at the correct item; In automap reorganized control_info swapping as well as wiggle state handling to properly work in connection with the new input handling and Multiplayer where game is not paused 2011-02-06 14:25:37 +01:00
zicodxx c7a65c9313 Included new window structure flag w_closing_state and let window_close() set this flag - after drawing all windows, check them again and call window_do_close() which then actually closes the window(s) marked to. Solving all sorts of problems when windows close while being drawn (network error messageboxes, game_leave_menus(), etc.) 2011-02-03 11:48:27 +01:00
zicodxx 9a64614a04 fix to rev 1048 - not completely there today... 2011-02-03 01:19:33 +01:00
zicodxx 7f49e118da Corrected values for gr_ubox while drawing a window_view to not mess up at some widescreen resolutions 2011-02-03 01:10:30 +01:00
zicodxx fbf27484f1 Little fixes for recent kconfig/event overhaul: Automap inputs read by kconfig should be processed by input rather than idle and automap frame calculations should be done while drawing; Fixed drop_bomb_count which could roll over to 255 dropping bombs without end 2011-02-03 01:05:06 +01:00
zicodxx 3c9c7af995 Little more smoothness for Multiplayer: Before dropping Powerups in random segment, make sure it's accessible by the player who drops it; Got rid of goto in InitPlayerPositions() and made code more D2-ish; Allow host to send 50 object/extra packets per second which does not overload network stack, yet but speeds up joining 2011-02-02 23:51:34 +01:00
zicodxx 21836c5c6b After rendering Reboot reticle, reset glLineWidth to default value again 2011-02-02 02:12:05 +01:00
zicodxx 800dcc3b48 Small correction for last commit - key handler of automap was reacting to non-key events as well 2011-02-02 02:08:29 +01:00
zicodxx 96782e092a Added event types for all input actions; Rewrote kconfig code to work with events; static defined inputs will not trigger kconfig-mapped inputs anymore; Simplified keyboard, mouse and joystick code a lot due to event-based handling; Added function to toggle SDL key repeats on and off; Put timer_update() to event_process; Removed return when event_poll() is idle to get cursor hiding to work again; Added a small delay between cursoe hiding and re-enabling to cursor will not accidentially enable by SDL event centering cursor while hiding 2011-02-02 01:36:49 +01:00
zicodxx 518e01fbe8 In event_process() check for wind->next before sending EVENT_WINDOW_DRAW in case drawing will free wind 2011-01-26 11:55:47 +01:00
zicodxx fd740500c1 Some improvements and cleanups for Persistent Debris: Let them bounce, added drag and let them explode on hazardous walls 2011-01-24 21:51:08 +01:00
zicodxx 2844337521 Added some new conditions to the bumping code: Only bump objects which can slide (alive robots and players) and added a count making sure this function can never get stuck in an infinite loop 2011-01-24 20:46:01 +01:00
zicodxx 3a91bdb89d Added some new conditions to the bumping code: Only bump objects which can slide (alive robots and players) and added a count making sure this function can never get stuck in an infinite loop 2011-01-24 20:37:47 +01:00
zicodxx 4f160df96e Revamped what previously was the BUMP_HACK by checking if an object is actually intersecting a segment and move it out towards segment center just after the initial object movement composed by fvi and before velocity is made - should make inaccurate wall collisions a bit smoother and prevent objects from goind inside or through walls, too 2011-01-24 15:26:08 +01:00
zicodxx ee56fead58 For new player, set ReticleSize to 0 which is the smallest size 2011-01-23 18:21:13 +01:00
zicodxx 0fac02ecee Increasing the collision count for objects so there can be 8 for all objects; also do not increase count when colliding with a powerup as it should not change our movement 2011-01-23 11:59:48 +01:00
zicodxx 169df35455 Taking out one Int3 in init_boss_segments() stopping the program if there is more than one boss in level - taking out because it's not fatal or unsafe to do that; Also removed one conditional size_check which was meant for one mprintf we removed long ago 2011-01-23 09:57:52 +01:00
zicodxx 4e3eeee326 Removed fvi_a.h and added the asm code from it as comment to fvi.c in case we need it again some day 2011-01-22 21:43:21 +01:00
zicodxx 37f59aa896 in show_framerate do not use gr_get_string_size at all but rather use hardcoded coordinates - less CPU-intense 2011-01-22 18:46: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 78569ea1bc Fixed small issue parsing killreactor command in Multiplayer 2011-01-22 17:56:25 +01:00
zicodxx 5eb05548c3 Added timer_update() to stop/start/reset_time() functions so resumed last_timer_value will be precise; Added new FPS counter which actually does count the frames rendered per second and is less irritating; Added timer_dleay2 call to console to not stress CPU too much; Imporoved placement for show_time(), multi messages, marker messages and orb counts 2011-01-22 13:30:20 +01:00
zicodxx 3046fcf7dd Protection for negative array index in find_seg_side was accidentially checking for vv1 != -1 - fixed that 2011-01-21 17:45:29 +01:00
zicodxx 33d3b1c6a8 Added a simple random function for the Jukebox; Removed one small printf I once added for debugging 2011-01-20 12:17:30 +01:00
zicodxx e60a7e1bca Additional commit for last revision - didn't selected all files properly 2011-01-19 21:52:01 +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
zicodxx fd53a1264b On NETGAMES list Bounty mode was not shown since MODE_NAMES define was not adjusted - so in the end introduced GMNames and GMNamesShrt Arrays in multi.c for globally displaying full or short Multiplayer game mode names 2011-01-19 19:55:38 +01:00
zicodxx 16f2b23fe2 Fix for showing bounty target in kill list - was not actually checking if player_num == Bounty_target; When Bounty_target player leaves game host must select a new target so the game can proceed 2011-01-19 12:22:01 +01:00
zicodxx a1f7da133e Introducing new BOUNTY Multiplayer game mode by Matt -1360- Vandermeulen <matt1360@gmail.com> 2011-01-19 02:19:17 +01:00
zicodxx 931d134357 Instead of calling object/extras sending every frame, use a delay of 100ms between packet send to not overload the network stack 2011-01-19 00:07:10 +01:00
zicodxx 3266e8c141 Correction for rev1009: Do not need to delete object Dead_player_camera since it's a new level with new objects to begin with 2011-01-18 20:02:04 +01:00
zicodxx 9cace92b4e In net_udp_send_objects() player_num byte was not considered for mode 1 resulting on incorrect object count for this mode 2011-01-18 19:43:07 +01:00
zicodxx ab79094700 Allowing loading a savestate while being in death sequence and resetting Dead_player_camera correctly in init_player_stats_level() so forther death sequences won't screw up 2011-01-18 15:53:28 +01:00
zicodxx c0864b71a9 Fixed small bug in net_udp_list_join_poll() which was introduced when I reorganized the events for making console render global 2011-01-18 14:37:19 +01:00
zicodxx 59344482e3 Fixing memory corruptions produced by the scanline renderer; Dynamically allocate y_pointers to free scanline renderer from resolution limits 2011-01-17 21:00:52 +01:00
zicodxx 65aeb5a291 opengles variable in SConstruct could be activated by command-line argument opengl 2011-01-17 19:27:55 +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 d5ac0af494 Before duplicating last pixel column or row in ogl_filltexbuf, make sure we are still in actual bitmap boundaries; Incrementing defines SHIELD_GAUGE_Y, SHIP_GAUGE_Y for HIRESMODE to fit these gauges pixel-correct in Cockpit mode 2011-01-17 15:00:26 +01:00
Chris Taylor 335a99eedc Fix cursor recentering issues - comment out redundant event_toggle_focus(1) calls in kconfig.c and newmenu.c and use event_toggle_focus(0) in ui_mouse_show() 2011-01-17 16:11:24 +08:00
Chris Taylor 7651a43b70 No referring to non-existent ogl_maxanisotropy for non-OGL build 2011-01-17 12:38:32 +08:00
Chris Taylor b64794e1b4 Still send idle events when receiving SDL joystick events, fixing possible joystick issues 2011-01-17 12:17:21 +08:00
zicodxx acb1494124 in ogl_filltexbuf add pixel row matching color of bitmap edge to get a clean border when filtering cockpit overlay bitmaps 2011-01-16 19:33:41 +01:00
zicodxx af651ac749 Toggle console by KEY_SHIFTED+KEY_ESC again - as it should be 2011-01-16 11:55:31 +01:00
zicodxx a4e07c142b For more consistency to original game, show descent(b).pcx before pilot selection if available; Generally use PATH_MAX for filename arrays in titles code 2011-01-16 11:39:46 +01:00
zicodxx e5fc130b82 When changing resolutions and Game_wind is present, send EVENT_WINDOW_ACTIVATE shortly so it's canvase will align to the new resolution seamlessly 2011-01-16 02:09:47 +01: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 a52875f96e Fixed alpha limit for ogl_ulinec(), gr_uricle(), gr_disk() 2011-01-15 20:51:17 +01:00
zicodxx 5b899ad0fd main/game.c: Due to recent changes in event_poll() game_handler() must call ReadControls() for EVENT_MOUSE_MOVED, too; Little fix for FixedStepCalc() 2011-01-15 13:51:21 +01:00