Commit graph

12735 commits

Author SHA1 Message Date
Christoph Oelckers
7f921be824 - activated weapon code and reverted quick graphics test.
Weapons do not work yet, though.
2020-10-31 14:07:43 +01:00
Christoph Oelckers
e33c7d54ac - added the weapon drawer. 2020-10-31 14:07:43 +01:00
Christoph Oelckers
25a0ce51ba - route the input to the player.
Still very broken.
2020-10-31 14:07:42 +01:00
Christoph Oelckers
dc24dcadf5 - added input code.
Not tested yet!
2020-10-31 14:07:42 +01:00
Christoph Oelckers
725cacb8e8 - added a bit more of the GameInterface. 2020-10-31 14:07:42 +01:00
Christoph Oelckers
a31bc4be6b - added the needed parts to start the game from the menu.
Levels render, but gameplay has not been hooked up yet.
2020-10-31 14:07:42 +01:00
Christoph Oelckers
f09db4c943 - fixed issues with the skill menu. 2020-10-31 14:07:41 +01:00
Christoph Oelckers
629737bd72 - main 3D render function. 2020-10-31 14:07:41 +01:00
Christoph Oelckers
15eae9c4a2 - added native notify text positioning for Witchaven.
Nothing fancy here - just a single line of text in the top left - just offset a bit from the edge of the screen.
2020-10-31 14:07:41 +01:00
Christoph Oelckers
30e96293cf - implemented the game progression interface. 2020-10-31 14:07:40 +01:00
Christoph Oelckers
9952e6d2b0 - added 'dophysics'. 2020-10-31 14:07:40 +01:00
Christoph Oelckers
434e4479a1 - added the loading screen - although this will be disabled just like the other games for now. 2020-10-31 14:07:40 +01:00
Christoph Oelckers
abc61902bb - added the WH! victory sequence. 2020-10-31 14:07:40 +01:00
Christoph Oelckers
18e37577bc - ported the statistics screen. 2020-10-31 14:07:39 +01:00
Christoph Oelckers
0e051a9d96 - precaching for WH. 2020-10-31 14:07:39 +01:00
Christoph Oelckers
33f44c5627 - temporarily reinstated rotatesprite, for easier porting of the 2D code. This will have to be removed again afterward. 2020-10-31 14:07:39 +01:00
Christoph Oelckers
23c6f4434e - analyzesprites function. 2020-10-31 14:07:39 +01:00
Christoph Oelckers
5c22908dc2 - added the screen flash code, although I have no idea how to properly render this.
What's there is an extrapolation of how Exhumed handled a similar blend mode but this needs thorough testing to fine tune.
2020-10-31 14:07:38 +01:00
Christoph Oelckers
fca94d64ed - added savegame code. 2020-10-31 14:07:38 +01:00
Christoph Oelckers
453e273d0c - implemented the WH2 menu.
This is a rather liberal reinterpretation because the original assets are unusable (text as graphics with baked-in highlights) and the highlight graphics used by GDX are too ugly for serious consideration.
As a result this highlights the font like the first Witchaven, i.e. coloring it green.
2020-10-31 14:07:38 +01:00
Christoph Oelckers
0a03331400 - added a bit more code for the main loop. 2020-10-31 14:07:38 +01:00
Christoph Oelckers
82f23a4733 - implemented the sound system for Witchaven.
The sound system itself is as primitive as it can get, the main change was to link sounds to sprites and not just their coordinates.
2020-10-31 14:07:37 +01:00
Christoph Oelckers
c77a072628 - added all needed parts of Witchaven's native looking menu.
This isn't particularly faithful, though, neither with DOS nor GDX because both menus have UX issues.

Main menu items reflect what a modern engine needs, not what DOS had.
The hi-res menu background is not being used because it forces the entire menu into the upper left corner.
The original game had the difficulty only as a setting on the "gore" page and could not start the game from there. This has been changed to a more traditional skill menu.
The only other part that has been ported over is the help screens.
2020-10-31 14:06:12 +01:00
Christoph Oelckers
45d2fd95a9 - implementing the Witchaven menu.
Main menu is working, skill menu still to do.
2020-10-31 14:06:12 +01:00
Christoph Oelckers
6dfd36dba7 - draw the menu background. 2020-10-31 14:06:12 +01:00
Christoph Oelckers
f32e9b25e0 - Witchaven 2 font 2020-10-31 14:05:39 +01:00
Christoph Oelckers
2bebe0fa6a - the WH intro movies are playing now. 2020-10-31 14:05:01 +01:00
Christoph Oelckers
b8c700e284 - Witchaven 1 small and big font plus other graphics assets. 2020-10-31 14:05:01 +01:00
Christoph Oelckers
a23839b8e8 WIP 2020-10-31 14:05:01 +01:00
Christoph Oelckers
7f7a576961 - music code. 2020-10-31 14:05:00 +01:00
Christoph Oelckers
a4ce1688d5 - hooked up the Witchaven frontend with the core. 2020-10-31 14:05:00 +01:00
Christoph Oelckers
d9757017ee - re-added the texture animation code. 2020-10-31 14:05:00 +01:00
Christoph Oelckers
e1a9ce86be - grpinfo IDs. 2020-10-31 14:05:00 +01:00
Christoph Oelckers
ff06895470 - added game identifiers for Witchaven 1+2
Lacking any main resource file, this checks for the JOESND containers to avoid rewriting the detection logic to work without containers.
2020-10-31 14:05:00 +01:00
Christoph Oelckers
fb2629002f - fixed things so that everything compiles.
This isn't usable yet because only the play code is present.
2020-10-31 14:04:59 +01:00
Christoph Oelckers
f50b0f937d - added most of the remaining play code. 2020-10-31 14:04:59 +01:00
Christoph Oelckers
96637a25d1 - importing Witchaven code from GDX
This is a straight port of the GDX Java code to C++ with as few changes made as possible.
Part 1: AI code.
2020-10-31 14:04:59 +01:00
Christoph Oelckers
c93b8f3e54 - copyright headers added. 2020-10-31 13:20:55 +01:00
Christoph Oelckers
30c4a0856e - moved common script files. 2020-10-31 13:20:54 +01:00
Christoph Oelckers
7a482c6284 - make DHUDFont an object. 2020-10-31 13:20:54 +01:00
Christoph Oelckers
7de6528a1f - the status bars work as objects.
# Conflicts:
#	source/common/menu/menudef.cpp
2020-10-31 13:20:54 +01:00
Christoph Oelckers
3b7ce26c86 - final function moves and renamed hud_scale to hud_scalefactor. 2020-10-31 13:20:00 +01:00
Christoph Oelckers
0270dcd5f6 - cleaned up leftovers. 2020-10-31 13:20:00 +01:00
Christoph Oelckers
37024df405 - Status bar draw code is now identical with GZDoom's. 2020-10-31 13:20:00 +01:00
Christoph Oelckers
3a0c84d3ca - split statusbar.cpp in two.
To keep Raze-exclusive content out of the main file that's about to be edited.
2020-10-31 13:19:59 +01:00
Christoph Oelckers
41e1e9b51c - ifhitbyweapon.
# Conflicts:
#	source/games/duke/src/actors_d.cpp
#	source/games/duke/src/actors_r.cpp
2020-10-31 13:19:26 +01:00
Christoph Oelckers
92c21e7259 - ifhitbyweapon cleanup.
Variables renamed and array accesses replaced with pointers in RR version.
2020-10-31 13:19:26 +01:00
Christoph Oelckers
28d0bc7477 - movecrane interface cleanup. 2020-10-31 13:19:26 +01:00
Christoph Oelckers
08f3e9e722 - variable renaming in movecrane for clarity 2020-10-31 13:19:25 +01:00
Christoph Oelckers
d95131cb4d - actor iterators for movefx and its RRRA subfunction. 2020-10-31 13:19:25 +01:00