Commit Graph

190 Commits

Author SHA1 Message Date
Christoph Oelckers a28cd17454 - refactoring of DN3D sound code complete but not tested yet. 2019-12-15 13:34:00 +01:00
Christoph Oelckers 957d997353 - made joystick configuration menu operational. 2019-12-14 19:21:49 +01:00
Christoph Oelckers 28cbecea67 - fixed some menu issues.
The submenus still do not work. Something's off here.
2019-12-14 13:40:58 +01:00
Christoph Oelckers cc81b95570 - main menu works in the common framework.
The rest is messed up, though. This menu is really on an entirely different level of crappiness, even for a 1995 game.
2019-12-14 12:39:18 +01:00
Christoph Oelckers 5ac0eaad0b - added support data for the Powerslave demo. 2019-12-14 09:48:04 +01:00
Christoph Oelckers 7e73073103 - Exhumed menu definition. 2019-12-13 21:44:51 +01:00
Christoph Oelckers 052ed5fff7 Merge branch 'master' into powerslave 2019-12-13 20:43:23 +01:00
Christoph Oelckers 264a450bbe - corrected labels for Blood's weapon pickup strings. 2019-12-11 23:52:34 +01:00
Christoph Oelckers 86dc909559 - added detection logic for zipped versions of the Cryptic Passage add-on for Blood and the Route66 add-on for Redneck Rampage.
- added command line options to load the original file dump of both mods in the game directory.
- both also require loading additional non-standard-named .art files
2019-12-11 23:41:05 +01:00
Christoph Oelckers 7942bc9490 - completed work on Shadow Warrior main menu.
This one will definitely be a problem for localization because the font is extremely large.
2019-12-11 20:35:25 +01:00
Christoph Oelckers ae0687a300 - exported level strings from Blood and Shadow Warrior to the string table. 2019-12-11 19:36:38 +01:00
Christoph Oelckers 16818d2d71 - exported Shadow Warrior strings to stringtable.
The MP obituaries are not handled yet, they were only copied but there's no code using them.
2019-12-09 21:19:05 +01:00
Christoph Oelckers e62f6cbc20 - weapon and ammo names are now also localizable. 2019-12-09 19:49:36 +01:00
Christoph Oelckers da1900dc8a - same for inventory pickup messages. 2019-12-09 19:00:30 +01:00
Christoph Oelckers 670c8b1408 - use the quote array to store the key, door and fortune cookie messages in Shadow Warrior.
This is infinitely better than leaking char pointers.
2019-12-09 18:40:07 +01:00
Christoph Oelckers 9134bebc46 - use base SWCustom.txt as the default way to define stuff, instead of relying on the hard coded texts. 2019-12-09 17:22:38 +01:00
Christoph Oelckers ba978ab0d9 - text update and missing includes. 2019-12-09 17:17:15 +01:00
Christoph Oelckers 9f25c9c117 - some string rework
* removed temporary placeholder content from string init function. All this gets properly read from definition files now.
* preinitialize a few quotes that are used for status display purposes and are needed in all games
* only use the global episode name table in Blood to avoid redundancy
* let SW's swcustom parser write to the global tables instead of local ones.
2019-12-09 01:00:46 +01:00
Christoph Oelckers f2d0665557 - connected the screen size CVAR and slider with Shadow Warrior's internal setting. 2019-12-07 21:39:17 +01:00
Christoph Oelckers 8f90cc8324 - more Shadow Warrior cleanup. 2019-12-07 20:48:16 +01:00
Christoph Oelckers 0157446ad1 - thorough cleanup of the Shadow Warrior music code.
This was one huge mess where nothing fit together.
Also added an enhancement that the CD Audio boss theme tracks are also played when CD music is generally off, because these have no equivalent in MIDI. This needs to be checked if it's stylistically ok, though.
2019-12-07 19:57:19 +01:00
Christoph Oelckers 2ed03214b1 - disable the save option in SW's main menu if no game is running. 2019-12-07 15:07:43 +01:00
Christoph Oelckers 9960b505e8 - added captions to SW's game menus.
- made Duke Nukem's quote strings localizable.
2019-12-07 12:42:25 +01:00
Christoph Oelckers 66756bfa13 - final fixes for Blood's and Duke Nukem's menus. 2019-12-06 18:36:49 +01:00
Christoph Oelckers 1b9d1943c9 - initialize all dynamic music related menus. 2019-12-05 20:50:19 +01:00
Christoph Oelckers 54177cd27d - added the animated player display. 2019-12-05 19:52:46 +01:00
Christoph Oelckers 98d3cb19c9 - added the miscellaneous options menu.
This should be the last one, except for the message confirmation screen.
Not all options are implementation backed yet, there's still work to do
2019-12-05 19:17:44 +01:00
Christoph Oelckers 169d68f583 - fixed stuff and cleaned out most of the old menu code. 2019-12-05 19:00:40 +01:00
Christoph Oelckers 628bd9efc6 Filled in the rest of the menus
Sound is only partially functional, video mode completely nonfunctional, but it makes no sense adjusting them to the current backend code when it's due for replacement.
2019-12-05 00:47:05 +01:00
Christoph Oelckers cb0538d0f2 - mouse aiming cleanup.
Reverted this to a sane setting, as it was in the original games and in all other games I have ever seen, i.e. there is a global setting to enable mouse view, and a button to manually trigger it. The toggle can be easily handled by flipping the CVAR directly.
The main problem here was that it triggered a few cases for mouse-less gameplay in the default case with a mouse present, because the mouseaim CVAR was no longer what the game expected.
This misguided change seems to have originated in JFDuke but by now had propagated to all the other games as well, the code was in all 4 frontends.
2019-12-05 01:08:35 +01:00
Christoph Oelckers 5b0033c08c - minor menu tweaks and fixes. 2019-12-04 18:52:39 +01:00
Christoph Oelckers dca118881a - added graphics for the mouse back button and reactivated the code for it. 2019-12-04 17:55:43 +01:00
Christoph Oelckers 138326314e - text update. 2019-12-04 17:30:41 +01:00
Christoph Oelckers 7d1eb74b5e - more menus implemented 2019-12-04 01:38:51 +01:00
Christoph Oelckers fb5d944170 - made the mouse sensitivity CVARs floating point so that the menu can display them properly.
- disabled the mouse movement sensitivity CVARs pending a refactoring of the code to handle them in the input backend instead of the individual input handlers.
2019-12-03 20:49:56 +01:00
Christoph Oelckers 49e0e551d6 - fixed the sliders. 2019-12-03 20:32:35 +01:00
Christoph Oelckers 6245a0e2e2 - added mouse and controller menus
The controller menu obviously does not work yet, it needs quite a bit of backing code fron GZDoom first.
2019-12-03 01:21:27 +01:00
Christoph Oelckers 65ae00fb74 - completion of controls menu
- some message printing cleanup in SW frontend. This still has its native console that needs to be removed.
2019-12-03 00:57:03 +01:00
Christoph Oelckers d40cdd0af4 - added map definition file for Wanton Destruction add-on. 2019-12-02 21:48:04 +01:00
Christoph Oelckers bc3a921a72 - fixed newly added menu content. 2019-12-02 19:21:45 +01:00
Christoph Oelckers 026cc7153c - externalized the controller bindings and removed all code responsible for maintaining them separately.
Bindings were changed a bit because what was there was a very poor default for my own controller.
2019-12-02 18:33:11 +01:00
Christoph Oelckers 26daff79db - fixed compile errors and updated string table. 2019-12-02 18:11:10 +01:00
Christoph Oelckers 3cf6e6eb78 - Ion Fury inventory actions 2019-12-02 12:11:42 +01:00
Christoph Oelckers 2c218349d4 - added control menu contents 2019-12-02 00:43:33 +01:00
Christoph Oelckers 71c2a8f33a - made the main option menu work. 2019-12-02 00:16:48 +01:00
Christoph Oelckers eb668180c8 - implemented help and credits menu for Blood. 2019-12-01 21:44:50 +01:00
Christoph Oelckers 1cfe5be130 - fixed creation of true color textures.
The palette check was not correct so they ended up empty and caused other problems down the line.
2019-12-01 21:43:54 +01:00
Christoph Oelckers e8c5939695 - more work on Blood menus. Game start works. 2019-12-01 20:17:30 +01:00
Christoph Oelckers e2be025433 - fixed the Ion Fury credit screens.
The entire 'fix' here consisted of hacks to give the CON script exactly what it needs to show them as intended.
2019-12-01 17:48:56 +01:00
Christoph Oelckers b372cb5f35 - the primary Blood menus are working.
Now this was magnitudes easier than the EDuke menu - NBlood's menu is actually clean and usable code but still nothing compared to a unified menu system.
2019-12-01 15:31:08 +01:00
Christoph Oelckers 0fc439a969 - fixed Redneck Rampage ingame menu and added selection validation to the load menu. 2019-11-30 23:59:22 +01:00
Christoph Oelckers 41b116e2f2 - save menu in Duke Nukem is working. 2019-11-30 22:46:00 +01:00
Christoph Oelckers 9d71416a55 - key binding verification.
Should be correct now, except for a few places which were unified.
2019-11-30 20:18:42 +01:00
Christoph Oelckers d474478800 Merge branch 'master' into powerslave
# Conflicts:
#	wadsrc/static/demolition/demolition.grpinfo
2019-11-30 01:12:20 +01:00
Christoph Oelckers 8df8fc436a - fixed GRPINFO. 2019-11-30 01:07:47 +01:00
Christoph Oelckers b3c335cd1d Merge branch 'menu_for_real' of https://github.com/coelckers/demolition into menu_for_real
# Conflicts:
#	source/common/menu/loadsavemenu.cpp
#	source/duke3d/src/d_menu.cpp
#	source/rr/src/d_menu.cpp
2019-11-30 01:06:37 +01:00
Christoph Oelckers 94b4044d95 - text file update. 2019-11-29 21:06:38 +01:00
Christoph Oelckers eded45cf98 - fixed GRPINFO. 2019-11-29 20:44:36 +01:00
Christoph Oelckers a7bbd7324e Merge branch 'master' into menu_for_real 2019-11-29 19:55:16 +01:00
hendricks266 1616ee0c6a - added more SW GRP detection data (from latest VoidSW)
- added SWCustom.txt from SWP, mainly as reference. What's really needed is one for Wanton Destruction, though.
2019-11-29 19:51:28 +01:00
Christoph Oelckers ebcc25f36d - prototyping the Blood fullscreen menu entries
These are a bit more sophisticated than what the other games have. ;)
2019-11-29 02:12:38 +01:00
Christoph Oelckers af81141f82 - defined credits and "help" menu for Shadow Warrior
Credits follows the recent VoidSW change, so the help menu will now take care of the ad screens - provided that someone goes to the console and tries to open it.
2019-11-29 01:52:21 +01:00
Christoph Oelckers f1f5d432d0 - adjustment for pulled changes. 2019-11-29 00:51:40 +01:00
Christoph Oelckers 0cedad6390 - started work on load/save menus. 2019-11-29 00:37:19 +01:00
Christoph Oelckers 943cb64eda - image scroller menus working. 2019-11-28 23:27:10 +01:00
Christoph Oelckers 1f1b927b6b - fixed a few issues. 2019-11-28 20:11:27 +01:00
Christoph Oelckers 115675417a Merge branch 'master' into powerslave 2019-11-28 17:07:11 +01:00
Christoph Oelckers 4e5f59a373 - Menu WIP
* implemented single image screens
* implemented skeleton of the image scroller
* added RR-specific definitions to the menus (need to copy and adjust d_menu.cpp)
* added definitions for credits screens.
2019-11-28 01:02:45 +01:00
Christoph Oelckers 2c36e986b9 - fixed most issues with Ion Fury's game startup menus. 2019-11-27 22:41:15 +01:00
Christoph Oelckers 46d1f8517a - animated transitions are working. 2019-11-26 22:05:52 +01:00
Christoph Oelckers 248c2feba2 - missed one binding definition file. 2019-11-26 21:26:01 +01:00
Christoph Oelckers 1adceb82ef - consolidation of defbinds definitions.
Putting all the generic definitions in files used by all games greatly reduces the clutter and chance for errors.
2019-11-26 21:06:43 +01:00
Christoph Oelckers a74a670c99 -- more work on the menu - episode and skill menus are working in DN3D. 2019-11-25 23:21:51 +01:00
Christoph Oelckers d73f915c66 - episode menu setup. 2019-11-25 18:41:39 +01:00
Christoph Oelckers 1f1e39fac0 - consolidation of texts for episode and skill menus
So far without localization capability - the engine cannot handle it yet.
2019-11-25 00:02:00 +01:00
Christoph Oelckers d7bc013eee - empty templates for the programmatically generated menus 2019-11-24 23:12:58 +01:00
Christoph Oelckers 42b3d12630 - Ion Fury's main menu now looks correct. 2019-11-24 22:31:27 +01:00
Christoph Oelckers 6e3bd75b1a - fixed Blood fullscreen tinting.
The lookup table for blend equations was missing one entry at the start. No idea why this became apparent only now.
2019-11-24 21:21:31 +01:00
Christoph Oelckers 57b542671c - Ion Fury main menu fixes. 2019-11-24 20:40:53 +01:00
Christoph Oelckers b3b5ac440a - fixed Blood fullscreen tinting.
The lookup table for blend equations was missing one entry at the start. No idea why this became apparent only now.
2019-11-24 19:07:23 +01:00
Christoph Oelckers 40772d9f0c - making more things compile. 2019-11-24 10:03:19 +01:00
Christoph Oelckers 52cfb7fb92 - completely disconnected the old menu from the rest of the game to allow rebuilding the new one.
Sadly this uncovered a few more places where script events are allowed too broad access to the game state.
2019-11-23 23:05:24 +01:00
Christoph Oelckers 326d0f5f76 - the new menu displays something. 2019-11-23 17:50:36 +01:00
Christoph Oelckers f2fc3fc2cb - WIP commit. 2019-11-23 12:38:38 +01:00
Christoph Oelckers ceb07280cf - more work on the menu.
Duke Nukem's menu title is getting rendered.
2019-11-22 22:52:11 +01:00
Christoph Oelckers 5f9b57519a - hooked up the menu code so that it can receive events.
Nothing pretty yet but a start is made.
2019-11-21 22:31:46 +01:00
Christoph Oelckers 81ddf22d5d - added ZDoom's menu system as a base to build a new menu on.
# Conflicts:
#	source/CMakeLists.txt
#	source/build/src/engine.cpp
2019-11-21 18:03:09 +01:00
Christoph Oelckers 022c074ece - fixed brightmaps again - hopefully for real this time.
The lighting model being used here is not really good for implementing render effect.
2019-11-11 23:54:09 +01:00
Christoph Oelckers 9f9748ede6 - initial ZMusic hookup. 2019-11-10 23:58:51 +01:00
Christoph Oelckers 5fc81d1bd4 - made brightmaps operational.
The logic is not yet optimal but at least it works.
2019-11-10 19:42:26 +01:00
Christoph Oelckers cae710bd59 - fixed alpha threshold.
Not only is this a deprecated feature - it also does not work right when complex lighting is at play, it must be done in the shader to get proper results.
2019-11-10 10:01:31 +01:00
Christoph Oelckers 2997bb6292 - the keybinding menu is finally working.
Obviously the existing menu implementation from Duke Nukem needs to be tossed out at some point, but at least the functionality is there again.
2019-11-09 22:22:51 +01:00
Christoph Oelckers 2d46827ecc font
- Dear ImGUI test.
2019-11-07 20:32:49 +01:00
Christoph Oelckers b6a3a60251 - console output is functional. 2019-11-06 23:40:10 +01:00
Christoph Oelckers 5d31119a49 - fixed the Shadow Warrior menu, but it doesn't do much good. The game appears to be thoroughly broken. 2019-11-06 19:22:14 +01:00
Christoph Oelckers f252eaffbc - fixed font translation setup. 2019-11-06 00:00:33 +01:00
Christoph Oelckers d943fe036d - added the ZDoom console and made all needed changes to get it compiled. 2019-11-05 19:57:48 +01:00
Christoph Oelckers bbf0a73471 - input works again. 2019-11-04 20:29:07 +01:00
Christoph Oelckers 25341c7221 - hook up the buttons.
This is still just glue code, the Build implementation suffers from poor support for multiple keys bound to a single button so they are due for replacement as soon as input is working again.
2019-11-04 18:17:14 +01:00
Christoph Oelckers 1b65510bc2 - kaybinds updated, including mouse buttons.
Joysticks not yet done.
2019-11-04 00:05:11 +01:00