Commit Graph

5414 Commits

Author SHA1 Message Date
Christoph Oelckers 25ade79b90 - stat display fine tuning. 2020-08-24 22:18:45 +02:00
Christoph Oelckers fef7608705 - made a few fixes for the fullscreen HUD in Nam:
* the font was placed too low
* the Duke health icon is not a health icon in this game so it had to be exchanged for something proper.
2020-08-24 22:12:56 +02:00
Christoph Oelckers 88bcaf37ab - changed the scale range of hud_statscale so that 1 is for fullscreen 320x200. 2020-08-24 22:02:49 +02:00
Christoph Oelckers e7c58a5b29 - make hud_scale a floating point CVAR. 2020-08-24 21:48:47 +02:00
Christoph Oelckers 3a6ccac8ea - fixed bad offset with vertically mirrored sprites.
Fixes #239
2020-08-24 21:15:22 +02:00
Christoph Oelckers 6d1e3e77fc - fixed item percentage display on SW's status bar.
Fixes #242
2020-08-24 20:46:14 +02:00
Christoph Oelckers 76811a1881 - InputState cleanup
This removes most of the InputState class because it is no longer used.
The only remaining places still checking scan codes are the modifiers for sizeup and sizedown.
All the rest was remapped to safer methods. The multiplayer taunts are currently inoperable, they will need support of shift-bindings to get proper support.
2020-08-24 20:34:18 +02:00
Christoph Oelckers b88a279a57 - removed the mouse wheel up event hackery
With the weapon cycling commands being done as CCMDs this is no longer needed.
2020-08-24 20:26:32 +02:00
Christoph Oelckers c09a5150a9 - added some predefined fullscreen modes
This is to cut down on boilerplate code because these encode the virtual screen size in the mode parameter, making it unnecessary to specify a virtual size separately.
2020-08-24 20:25:53 +02:00
Christoph Oelckers f1a988b221 - make use of map bindings
All automap controls have been moved there, and sizeup/sizedown have been made CCMDs, taking screen size management entirely out of the game modules
2020-08-24 20:20:15 +02:00
Christoph Oelckers 092fb55db3 - hooked up the automap bindings.
Now, with centralized state management these can finally work.
2020-08-24 19:55:21 +02:00
Christoph Oelckers e158775e67 - … and for Exhumed
This game does not implement follow mode.
Note: Follow mode needs to be simplified across games!
2020-08-24 19:54:26 +02:00
Christoph Oelckers 0ee042fb60 - same procedure for Blood 2020-08-24 19:47:09 +02:00
Christoph Oelckers debb4b17b6 - transitioned SW's automap to the global variables
Also copied the automap label output to the status bar for proper ordering.
2020-08-24 19:36:17 +02:00
Christoph Oelckers 7859a29e95 - use global variables to track automap state
So far implemented in Duke/RR.
2020-08-24 19:31:43 +02:00
Mitchell Richters 89a15335df - Exhumed: Clear the screen in the 2D drawer prior to drawing in `menu_DoPlasma()`.
Fixes #237.
2020-08-24 17:44:39 +10:00
Mitchell Richters e8057cd871 - Exhumed: Fix menu scaling upon opening following changes in 979cc63835.
Fixes #238.
2020-08-24 17:11:51 +10:00
Mitchell Richters 6cbd607f31 - Exhumed: Stop playing `kSoundJonLaugh2` in `DLobotomyScreen` screenjob if `skiprequest` is true. 2020-08-24 16:51:38 +10:00
Mitchell Richters b5823385e1 - Exhumed: Fix if statement in `DrawWeapons()` following changes in e225e85ae1. 2020-08-24 16:02:12 +10:00
Mitchell Richters e225e85ae1 - Exhumed: Perform weapon bobbing with maximum precision and implement `cl_weaponsway`. 2020-08-24 13:22:52 +10:00
Christoph Oelckers fed70e6df7 - make Exhumed's intro block the UI.
Fixes #235.
2020-08-24 00:36:47 +02:00
Christoph Oelckers c60acd7af4 - fixed RR's HUD positioning when the weapon bar is active. 2020-08-24 00:35:04 +02:00
Christoph Oelckers e25d1c4cda - improvements for automap labels.
* use a CVAR to decide whether to show them at the top or bottom
* draw them on top of the screen border so that they don't get overdrawn on smaller windows.
2020-08-24 00:25:42 +02:00
Christoph Oelckers e7c1595531 - allow using a better font for the map name on the automap.
- allow displaying the map label on the automap.

So far only for Duke and related games, the rest will follow.
2020-08-24 00:05:36 +02:00
Christoph Oelckers f6417f5876 - fixed bad texture validation in Duke automap. 2020-08-23 23:02:15 +02:00
Christoph Oelckers 91b31cec39 - fixed: hud_messages completely blocked the messages, even from going to the console.
It should only block the on-screen notification display, which the backend already implements. The game code should not check this CVAR again.
2020-08-23 22:46:53 +02:00
Christoph Oelckers 41a1120033 - added a native style display mode to the notification message display.
Fixes #9
2020-08-23 22:39:53 +02:00
Christoph Oelckers 4469cf7edb - only go from menu to console when closing with Escape. 2020-08-23 21:24:31 +02:00
Christoph Oelckers c0da85d0ff - SW: fixed: When entering the summary screen, clear the FinishedLevel variable immediately.
So that its value won't stick around and trigger the screen again. Same when an exception occurs.
Fixes #232.
2020-08-23 20:55:21 +02:00
Christoph Oelckers 7417160abd - when closing the main menu, go directly to the full console.
Fixes #27
2020-08-23 20:48:48 +02:00
Christoph Oelckers c777fea1af - added back the player sprites in Duke/RR's player setup menu.
Fixes #46
2020-08-23 20:44:17 +02:00
Christoph Oelckers 8b8f048393 - moved parts of videoNextPage to app_loop. 2020-08-23 18:08:08 +02:00
Christoph Oelckers adb98a47ba - restructured the main loop code so that the actual loop is in the common code. 2020-08-23 17:47:05 +02:00
Christoph Oelckers 85875da77a - removed the old start-of-level-only savegame code.
This serves no purpose anymore, even with a checkpoint-based gameplay the full saves will do just as well.
2020-08-23 16:30:20 +02:00
Christoph Oelckers f7fcd341ec - removed redundant levelnum variable.
Better use the global map record.
2020-08-23 16:24:54 +02:00
Christoph Oelckers 1a0e413d5c - use CCMDs for Exhumed's input where applicable.
- made crosshair toggle consistent across games.
2020-08-23 16:11:18 +02:00
Christoph Oelckers 7fe7b9b8e0 - be gone, rotatesprite. 2020-08-23 14:59:34 +02:00
Christoph Oelckers a4a26ef6bc - removed the last uses of the original rotatesprite function. 2020-08-23 14:55:19 +02:00
Christoph Oelckers 2a3f7a48c9 - implemented a proper kill counter.
Unfortunately the display is a bit limited by the available font characters.
2020-08-23 14:39:14 +02:00
Christoph Oelckers e75cfd82f9 - the training map could not be started. 2020-08-23 14:00:53 +02:00
Christoph Oelckers 979cc63835 - use DrawTexture for rendering the menu items. 2020-08-23 13:57:56 +02:00
Christoph Oelckers 4d477bc15b - fixed uninitialized GameAction variable. 2020-08-23 13:57:31 +02:00
Christoph Oelckers 212b3ae0f9 - Exhumed: fixed map startuo 2020-08-23 12:59:01 +02:00
Christoph Oelckers 5c7b613aa7 - reworked the main loop. 2020-08-23 12:26:52 +02:00
Christoph Oelckers 7889605ff4 - condensed main loop further, started laying out the new one. 2020-08-23 09:11:32 +02:00
Christoph Oelckers 9e5ca8c408 - moved game and level init code out of app_main. 2020-08-23 08:22:59 +02:00
Christoph Oelckers 5ba384db35 - moved the main game ticker out of app_main. 2020-08-23 07:49:58 +02:00
Christoph Oelckers 3a3ba43985 - Exhumed: moved the input code out of the main loop 2020-08-23 07:41:29 +02:00
Christoph Oelckers fccd054381 - split off the entire game loop related code into its own file.
This should make it easier to work on this.
2020-08-22 22:40:22 +02:00
Christoph Oelckers 7401c0e133 - moved Ramses head code into its own file. 2020-08-22 21:39:14 +02:00