Commit Graph

18662 Commits

Author SHA1 Message Date
Christoph Oelckers 7d36af8840 - put things in their proper place. 2020-04-11 20:19:55 +02:00
Christoph Oelckers 00bbc48e70 - music.cpp include cleanup
- use a TMap to store music volume settings instead of using a homegrown linked list.
2020-04-11 20:19:54 +02:00
Christoph Oelckers f0534afde6 - separated the game-dependent music lookup parts from the core player. 2020-04-11 20:19:54 +02:00
Christoph Oelckers 4af96bab47 - some cleanup on music code.
* change the license of the main file because there is no more id-based code here licensed under the GPL.
* moved VM interface definition out of the implementation.
* moved idmus CCMD out of implementation because it is dependent on Doom level definitions.
* moved s_music.cpp into the music folder with the rest of the music code.
2020-04-11 20:19:54 +02:00
Christoph Oelckers 56f2b2ac56 - reduce backend's dependency on game state by using callbacks. 2020-04-11 20:19:53 +02:00
Christoph Oelckers 721b857e5e - minor FTexture cleanup. 2020-04-11 20:19:53 +02:00
Christoph Oelckers b4e9c3f20d - missed two things that need to be 'common'. 2020-04-11 20:19:53 +02:00
Christoph Oelckers ac610d87e5 - merged FPalette and PaletteContainer. 2020-04-11 20:19:53 +02:00
Christoph Oelckers f94e4a908c - m_png is common. 2020-04-11 20:19:52 +02:00
Christoph Oelckers 7243495b16 - moved special color maps to utilities.
The default tables are needed by the texture compositor which should be universal, so this needs to be, too.
2020-04-11 20:19:52 +02:00
Christoph Oelckers db62aeb671 - c_cmds is not 'common'. 2020-04-11 20:19:52 +02:00
Christoph Oelckers 777f2ee7c6 - moved stringtable to 'common'. 2020-04-11 20:19:51 +02:00
Christoph Oelckers b3c7b81893 - decoupled the string table from game implementation details.
Using callbacks now to query needed game state.
2020-04-11 20:19:51 +02:00
Christoph Oelckers c3a381ed92 - moved most of the console code to 'common'.
The main console.cpp file cannot be done yet, but the rest is ready to go.
2020-04-11 20:19:51 +02:00
Christoph Oelckers a712866219 - split out non-game specific CCMDs into their own file. 2020-04-11 20:19:51 +02:00
Christoph Oelckers 8dacdf2951 - use an array to store the buttons.
This puts a lot less knowledge about the game's features into the low level code.
2020-04-11 20:19:50 +02:00
Christoph Oelckers 0e7480b4ed - moved the file lookup functions to utilities.
# Conflicts:
#	src/common/utility/findfile.cpp
2020-04-11 20:19:50 +02:00
Christoph Oelckers 5dd89541fe - made console notification scrolling independent of the global game ticker variable. 2020-04-11 20:19:25 +02:00
Christoph Oelckers d7a9bdc858 - moved key definitions to their own header.
- moved VM hooks to vmthunks.cpp.
- header cleanup for c_bind.h to avoid including high level game definitions.
2020-04-11 20:19:25 +02:00
Christoph Oelckers 756a743974 - uncouple console's cursor blinking from the game ticker.
This is now done in real time by the drawer.
2020-04-11 20:19:25 +02:00
Christoph Oelckers 31fbff85f4 - c_dispatch header cleanup and splitting of gamestate into a separate header, to avoid polluting low level code with game specific headers. 2020-04-11 20:19:25 +02:00
Christoph Oelckers b7ff7302e5 - copied some CCMD improvements from Raze
* no longer uses copystring function.
* ability to dynamically register CCMDs.
2020-04-11 20:19:24 +02:00
Christoph Oelckers d63a6baa5d - removed the 'caller' parameter from the CCMD dispatcher.
This can never be anything but players[consoleplayer].mo, so there is no need to pass it through the interface.
2020-04-11 20:19:24 +02:00
Christoph Oelckers 603ad755ab - separated the button code from c_dispatch.
Two separate features justify two separate files.
2020-04-11 20:19:24 +02:00
Christoph Oelckers 4a50f78bfe - more work on console code. 2020-04-11 20:19:24 +02:00
alexey.lysiuk 0b39911385
- replaced continuous integration badges in readme 2020-04-11 20:51:53 +03:00
alexey.lysiuk e88c19ec67 - replaced Travis and AppVeyor with GitHub actions 2020-04-11 20:37:12 +03:00
alexey.lysiuk 0d420a75b7 - fixed compilation for Linux and macOS 2020-04-11 20:36:36 +03:00
Christoph Oelckers 76db26ee0b - split off the console's command line class into its own file. 2020-04-11 14:00:22 +02:00
Christoph Oelckers e425615770 - moved the V_GetColor family of functions to the global palette utilities. 2020-04-11 14:00:22 +02:00
Christoph Oelckers 1479e3a1c3 - CVAR cleanup, in particular decoupling from game internals, which now get handled via callbacks. 2020-04-11 14:00:22 +02:00
Christoph Oelckers 05239c63f9 - moved some palette related code into the 'common' folder. 2020-04-11 14:00:22 +02:00
Christoph Oelckers c713850dac - moved sc_man and palettecontainer to the 'common' folder. 2020-04-11 14:00:21 +02:00
Christoph Oelckers 98472d999b - moved name.cpp to 'common'.
Still got to find a way to handle namedef.h without polluting the low level code with game content.
2020-04-11 14:00:21 +02:00
Christoph Oelckers a00c976245 - removed a large batch of unused names. 2020-04-11 14:00:21 +02:00
Christoph Oelckers 5ac88ebce2 - added some Raze-specific file system utilities so that both can work with the same code. 2020-04-11 14:00:21 +02:00
Christoph Oelckers 05d8856fe0 - moved file system implementation to 'common'. 2020-04-11 14:00:20 +02:00
Christoph Oelckers 80c6d5b276 - renamed more stuff and also moved the Strife teaser voice handling out of the file system. 2020-04-11 14:00:19 +02:00
Christoph Oelckers c1bb7de23a - more file system refactoring.
* moved the sprite renaming out of the file system entirely into a caller-provided callback.
* renamed several functions to closer match the terms of a file system.
* moved the VM interface out of the implementation.
2020-04-11 14:00:19 +02:00
Christoph Oelckers 6bccde3b51 - renamed the file system related classes to actually use the term "FileSystem". 2020-04-11 14:00:18 +02:00
Christoph Oelckers 83befa7686 - moved the "??? lumps" messages out of the single resource file handlers into the calling function and did a bit of include cleanup. 2020-04-11 14:00:18 +02:00
Christoph Oelckers 7d83dfa03a - moved the file names used for deciding to remove the root directory of zips out of the resource file management.
Yet again too much dependencies on game specifics in low level code.
2020-04-11 14:00:18 +02:00
Christoph Oelckers 135f159927 - pass lump filters as parameter when initializing the file system to reduce dependencies on high level state in the low level code. 2020-04-11 14:00:17 +02:00
Christoph Oelckers d12a9bb77a - renamed the caching functions of FResourceLump. 2020-04-11 14:00:17 +02:00
Christoph Oelckers 510fc2d549 - added handler for Witchaven's sound resource files.
Useful for loading these to play the MIDIs. Since these files have no named directory, the content just gets inserted into a subdirectory named after the file with each entry given a 4 digit hex number as a name.
2020-04-11 14:00:17 +02:00
Christoph Oelckers 1574799683 - moved most parts of the Doom specific lump setup out of the file format implementations into the main class.
This is to keep as much higher level logic out of these as possible. The presentation of the data should be a concern of the file system, not the data containers.
2020-04-11 14:00:16 +02:00
Christoph Oelckers ef300a9ea8 - lump flags cleanup. 2020-04-11 14:00:16 +02:00
Christoph Oelckers 025e80b74a - moved NeedFileStart out of the lump flag word into an empty part of the FZipLump structure. 2020-04-11 14:00:16 +02:00
Christoph Oelckers a38633aa22 - moved the file name management out of the single resource lumps.
This is now being managed by the main file system class. The single lumps should only concern themselves with the actual data they manage, not with how the file system presents them to the outside.
The IWAD detection code was also switched to use a file system wrapper instead of looking at the single files directly.
2020-04-11 14:00:16 +02:00
Christoph Oelckers 89fb479c19 - moved the linkedTexture pointer up one level out of the resource descriptor into the file system record. 2020-04-11 14:00:15 +02:00