Mitchell Richters
1ee6fd76c4
Merge branch 'blood-qavrework'
...
# Conflicts:
# source/core/gamecvars.cpp
# source/core/gamecvars.h
# source/games/blood/src/weapon.cpp
2021-08-23 11:02:09 +10:00
Christoph Oelckers
fb5e8e72ab
- fixed Exhumed credits display.
2021-08-14 10:54:51 +02:00
Christoph Oelckers
40730d26b8
- Exhumed: fixed incorrect CD tracks being played through cutscenes
2021-08-14 10:40:38 +02:00
Christoph Oelckers
9680674dec
- Duke: fixed sound lists for E4 intro cutscene.
2021-08-14 09:25:50 +02:00
Christoph Oelckers
b057e59924
- Exhumed: fixed bad arguments of BuildGameoverScene.
2021-08-14 09:19:27 +02:00
Mitchell Richters
0d9afc1aaf
- Extend menu's ImageScroller
ZScript class with mAnimated
and use with Blood for the help and credits menu.
2021-08-05 14:52:51 +10:00
Mitchell Richters
1ed1222e10
- Extend menu's ListMenu
ZScript class with mAnimated
already natively available, and use with Blood where BloodDripDrawer
is defined.
...
* Finalises the interpolated blood dripping code changes from 9884d5f396
.
2021-08-04 10:31:45 +10:00
Mitchell Richters
f6c7ed3984
- Blood: Restore originally intended isRunning
code that never worked behind two CVARs to offer an alternative playing experience.
...
* `cl_bloodvanillarun` enables/disables the `isRunning` code that affects AI, bobbing and swaying.
* `cl_bloodvanillabobbing` enables/disables the `isRunning` code that affects bobbing and swaying, allowing only the `isRunning` AI changes.
2021-07-31 10:14:56 +10:00
Mitchell Richters
1685890bc5
- Replace calcSinTableValue()
with game's native bsin()
export.
...
* Also repair light for Duke's `DrawCursor()` with a multiply and shift down to get the `bsin()` output up to 24 and not 21.33 etc
2021-07-26 17:28:32 +10:00
Mitchell Richters
8a029cb4e1
- Blood: Fix ammo colour for status bar and first fullscreen HUD.
...
* Reported by Spill.
* Fixes #490 .
2021-07-24 22:06:00 +10:00
Mitchell Richters
cb01fb0cf2
- Duke/RR: Remove check p.gotweapon[]
check in DrawWeaponBar()
that was causing weapon bar to display incorrect tiles and values.
...
* Fixes https://forum.zdoom.org/viewtopic.php?f=340&t=72541 .
2021-07-24 16:18:06 +10:00
Mitchell Richters
20bffbd94d
- Exhumed: Revert source for ammo
in DrawHUD2()
from 7b8dcde5d2
.
...
* Fixes https://forum.zdoom.org/viewtopic.php?f=340&t=72853 .
2021-07-24 15:40:48 +10:00
Mitchell Richters
0778dfb22a
- Exhumed: Move key display on DrawHUD2()
to accommodate larger ammo display for M60 with cl_showmagamt 1
from 2a8e636066
.
2021-07-17 15:03:00 +10:00
Mitchell Richters
2a8e636066
- Exhumed: Extend 7b8dcde5d2
by showing the M60's clip/magazine amount available when cl_showmagamt 1
is set.
2021-07-17 14:57:43 +10:00
Mitchell Richters
7b8dcde5d2
- Exhumed: Make use of cl_showmagamt
.
...
* Fixes #463 .
2021-07-16 23:52:56 +10:00
Christoph Oelckers
6062af562d
- allow external replacements of SW's 3D Realms logo to use their own palette.
...
This was already present for Duke, but not here.
2021-07-05 22:43:23 +02:00
Mitchell Richters
326a0798a1
- Exhumed: Fix alignment issues with ammo counter and compass on full HUD.
2021-06-27 21:34:04 +10:00
Christoph Oelckers
3512fe8fba
- dynamically adjust SW's menu spacing based on language.
2021-06-26 11:58:40 +02:00
Mitchell Richters
9ed27effe5
- SW: Tune position of HUD elements since ZScript-ification.
...
* Fixes #428 .
2021-06-24 21:13:05 +10:00
Mitchell Richters
30da87d55b
- Exhumed: Fix level stat position on full HUD.
...
* Fixes #429 .
2021-06-24 20:56:20 +10:00
Mitchell Richters
a27888f9df
- Duke (RR): Tune position of RR HUD elements since ZScript-ification.
...
* Fixes #433 .
2021-06-24 20:28:29 +10:00
Christoph Oelckers
9ab24f6031
- make sure that substitution remaps work in Duke's menus.
2021-05-31 21:20:32 +02:00
Christoph Oelckers
8900cc2f2e
- cleanup of automap label printing.
...
Moved larger parts of the font selection logic into common code.
2021-05-31 21:20:32 +02:00
Christoph Oelckers
ee60a92b69
- removed debug output.
2021-05-31 21:20:32 +02:00
Christoph Oelckers
9c60ab791b
- implemented all needed font overrides for localization.
2021-05-31 21:20:31 +02:00
Christoph Oelckers
90bcba302e
- layout adjustments for localized texts.
...
In particular SW's main menu was far too tightly spaced, allowing no room for accents.
2021-05-31 21:20:31 +02:00
Christoph Oelckers
39b84c4063
- don't use DI_ITEM_RELCENTER for Blood's animated heart.
...
It does not look right for this sprite.
2021-05-29 13:42:00 +02:00
Christoph Oelckers
8fae793341
- defined a new constant, CR_NATIVEPAL, to use the font functions with a predefined palette.
...
This is mainly for code clarification, the value is the same as CR_UNDEFINED.
2021-05-29 11:47:05 +02:00
Christoph Oelckers
d44500863b
- removed the multiplayer scoreboard screens.
...
Since there is no plan to keep them in case MP gets implemented there's no need to maintain them.
These should later be replaced by a generic screen using a better font and a layout that takes higher resolutions into account.
2021-05-27 13:33:54 +02:00
Christoph Oelckers
b2545f8042
- PlayMusic script function.
2021-05-23 16:21:04 +02:00
Christoph Oelckers
0c6e2f0c9e
- silenced some warnings.
2021-05-22 15:34:04 +02:00
Christoph Oelckers
d7a47b2f3a
- route all accesses to gameaction from the backend through the sysCallbacks.
...
gameactions are frontend specific so this needs to be decoupled.
2021-05-22 13:02:34 +02:00
Christoph Oelckers
6ae09f8ec9
- ported Doom's type-on text screens as a screen job overlay.
2021-05-22 12:08:08 +02:00
Christoph Oelckers
5337513044
- ported GZDoom's subtitle drawer to the cutscene framework.
...
For later use, this isn't used yet.
2021-05-22 10:26:53 +02:00
Christoph Oelckers
d2ed4e703d
- made Exhumed's text scroller a universal component of the cutscene system, usable by all games.
2021-05-22 10:06:15 +02:00
Christoph Oelckers
0d793a59fd
- moved the cutscene core to 'engine'.
...
More adjustments for making this code compatible with GZDoom.
2021-05-22 02:15:49 +02:00
Christoph Oelckers
c80c2e7a6c
- this wasn't supposed to be changed.
2021-05-19 22:48:21 +02:00
Christoph Oelckers
75cc66083d
- Blood: fixed use of wrong font for ammo display on statusbar.
2021-05-19 22:40:10 +02:00
Christoph Oelckers
91bd24f8b5
- fixed level name display on automap.
2021-05-19 22:21:11 +02:00
Christoph Oelckers
98bb8c516d
- added missing declarations for RR's intro movies.
2021-05-18 00:08:32 +02:00
Christoph Oelckers
4d226d19e7
- Exhumed: fixed jumping icons on the status bar.
...
Unfortunately, due to the utterly broken design of the sequences the fullscreen HUD is not fixed. This would require graphics replacements that fix the bad offsetting in the torch.
2021-05-17 19:22:57 +02:00
Christoph Oelckers
61d81efe45
- fixed definition of ExhumedCutscenes.BuildGameoverScene.
...
Needs to be declared static.
2021-05-17 18:17:15 +02:00
Christoph Oelckers
24ce5d6130
- Exhumed: fix animation stopping for inventory torch item.
...
I have no idea how the old code could ever work...
2021-05-16 20:25:56 +02:00
Christoph Oelckers
88fe8e49a3
- Blood: fixed throw power meter.
2021-05-16 18:56:56 +02:00
Christoph Oelckers
25d516c36f
- fixed shadow and positioning of stats display.
2021-05-16 16:12:44 +02:00
Christoph Oelckers
ee559b7ba9
- removed all leftover parts of the native status bars.
2021-05-16 10:35:33 +02:00
Christoph Oelckers
83f151529b
- fixed SW status bar.
2021-05-16 10:25:56 +02:00
Christoph Oelckers
8d8b3cda46
- scriptified SW's status bar.
...
Not tested yet. This just compiles without errors.
2021-05-16 09:34:08 +02:00
Christoph Oelckers
f136330628
- removed the native versions of Duke's and RR's status bar.
2021-05-15 17:15:29 +02:00
Christoph Oelckers
781cb32dcf
- fixed all issues with Duke's/RR's status bar.
2021-05-15 16:46:08 +02:00
Christoph Oelckers
f84f58e714
- ported Duke and RR status bars.
...
Compiles but not tested yet.
2021-05-15 14:27:32 +02:00
Christoph Oelckers
d311792e06
- engine side preparations for Duke Statusbar scriptification.
...
Mainly, gotweapon had to be reverted to a flat bool array to avoid implementing FixedBitArray for the VM.
Also adding a few new tile names and PushV for string arrays.
2021-05-15 10:44:35 +02:00
Christoph Oelckers
b520d38bc0
- removed the native implementation od Exhumed's status bar.
2021-05-15 10:25:39 +02:00
Christoph Oelckers
663f330684
- fixed GetChunkFrame implementation and one bad GetString call.
...
Exhumed's status bar is fully working with this.
2021-05-15 10:25:38 +02:00
Christoph Oelckers
b71c725e3e
- ported Exhumed's status bar.
...
Not tested yet.
2021-05-15 10:25:38 +02:00
Christoph Oelckers
5a6121d424
- status bar interface work.
2021-05-15 10:25:38 +02:00
Christoph Oelckers
317238147b
- Blood: fixed scriptified MP statusbar code to the point where it compiles.
...
Mainly to avoid code rot by future changes, this probably cannot remain as it is if MP gets reimplemented.
2021-05-15 10:25:37 +02:00
Christoph Oelckers
e5dd4a8638
- made the scripted version of Blood's status bar functional.
2021-05-12 21:50:02 +02:00
Christoph Oelckers
778378fd5c
- scriptified version of Blood's status bar compiles.
...
Not tested yet.
2021-05-12 21:50:02 +02:00
Christoph Oelckers
4ad20e4c00
- more preparations for scriptification of Blood's status bar.
...
* restructured some code that could not be converted as-is due to access to data that should be off-limits to scripts.
* exporting most of PLAYER's member fields.
2021-05-12 21:50:02 +02:00
Christoph Oelckers
acb4830eb5
- ported the BaseStatusBar class to ZScript.
...
Not hooked up yet, but it compiles.
2021-05-12 21:50:01 +02:00
Christoph Oelckers
56fcf904b5
- Backend update from GZDoom.
2021-05-03 14:48:55 +02:00
Christoph Oelckers
bb9d492db6
- migrated RRRA as well.
2021-05-02 14:01:10 +02:00
Christoph Oelckers
6f4e380728
- migrated RR's cutscene definitions.
...
Also turned several level-specific init options into map flags or map parameters.
2021-05-02 13:12:24 +02:00
Christoph Oelckers
2d4e91615f
- migrated Duke's cutscene definitions to the new RMAPINFO.txt.
2021-05-02 12:02:55 +02:00
Christoph Oelckers
1798380f23
- adapted map transition in Duke/RR.
...
There's still some issues which will be taken care of by adding map flags.
2021-05-02 10:35:43 +02:00
Christoph Oelckers
825963661b
- migrated volumes to the new storage.
2021-05-02 00:35:56 +02:00
Christoph Oelckers
03b9275244
- removed debug printf.
2021-05-01 23:59:45 +02:00
Christoph Oelckers
51aeb6dd39
- fixed issues with skipping over an entire cutscene.
...
This must never destroy the last element of the cutscene because it is still needed to draw something while shutdown is performed.
2021-05-01 20:54:57 +02:00
Christoph Oelckers
fa3fd9ac8f
- removed unused array.
2021-05-01 20:34:43 +02:00
Christoph Oelckers
4c2266ee88
- fixed incomplete SW ending cutscene.
2021-05-01 20:31:51 +02:00
Christoph Oelckers
a2a850ea3c
- center the texts on Duke's loading screen.
2021-05-01 20:14:30 +02:00
Christoph Oelckers
512f1d852b
- fixed: Blood's summary screen needs to stop it sound when it ends.
2021-05-01 20:11:47 +02:00
Christoph Oelckers
f0bd290801
- corrected speed of RR intro videos.
2021-05-01 20:04:22 +02:00
Christoph Oelckers
27799def63
- rewrote movie player so that the decoder backends only perform the decoding but do not draw the frames themselves.
...
This caused twq problems:
1. It made it impossible to let the client apply effects to the video.
2. The client had no control when rendering stopped.
Now the backends only provide a texture handle that the client must draw. One immediate benefit is that Blood's fixed viewport scaling is now available to all video formats.
2021-05-01 18:59:16 +02:00
Christoph Oelckers
4069a5096a
- scriptified Exhumed's 2D content (minus the programmatic textures.)
2021-04-30 20:08:36 +02:00
Christoph Oelckers
5b54e9c1ad
- removed the 26 factor from Duke's par times.
...
What were they thinking?
2021-04-30 20:08:36 +02:00
Christoph Oelckers
aa148d602c
- scriptified SW's 2D screens.
...
Compiles but not tested yet.
2021-04-30 20:08:35 +02:00
Christoph Oelckers
6c2aab3017
- fixed remaining issues with Blood's cutscenes.
2021-04-30 20:08:34 +02:00
Christoph Oelckers
eaf5e1fba5
- Cutscene support in Blood.
...
Intro tested, rest to do.
2021-04-30 20:08:34 +02:00
Christoph Oelckers
869dbd70e5
- fixed the design by merging the episode start handler into ShowIntermission.
...
Tying the start-of-episode cutscene to the cluster does not really work because it gets triggered by all maps of the cluster.
All currently existing intro cutscenes are tied to the map anyway.
Also correcting transition movie name for RRRA E2L1.
2021-04-30 20:08:34 +02:00
Christoph Oelckers
cdccdec3e7
- final cleanup on new cutscene interfacw
...
* fixed frame gaps when exiting a cutscene. This must be properly synchronized with the state handler in the main loop.
* reactivated the loading screens. With texture precaching working the delay when loading a map becomes significant enough to require a visual feedback.
* RR does not play 'bonusmusic' on its summary screen.
2021-04-30 20:08:34 +02:00
Christoph Oelckers
ad01aee5ec
- fixed RR summary screen
2021-04-30 20:08:33 +02:00
Christoph Oelckers
6d743ce921
- most of the summary screen is working
2021-04-30 20:08:33 +02:00
Christoph Oelckers
3c27ec8cbd
- tested all of Duke's and RR's cutscenes.
2021-04-30 20:08:33 +02:00
Christoph Oelckers
06abc0cfe2
- removed debug output and fixed fade flag setup and missing OnTick return
2021-04-30 20:08:33 +02:00
Christoph Oelckers
26a7700579
- Duke's intro works, without fading.
2021-04-30 20:08:32 +02:00
Christoph Oelckers
1166b00af2
- switched intro movie playing over to the new system
...
Not tested yet.
2021-04-30 20:08:32 +02:00
Christoph Oelckers
af8d06994a
- implemented the scripting interface layer.
2021-04-30 20:08:32 +02:00
Christoph Oelckers
ef6d8c2c67
- added cutscene definitions for Duke and finalized the definecutscene parser.
2021-04-30 20:08:32 +02:00
Christoph Oelckers
021f1b7832
- make SummaryInfo a struct instead of passing a list of values to the script classes.
2021-04-30 20:08:32 +02:00
Christoph Oelckers
57853bf8fe
- RR Cutscene generators.
2021-04-30 20:08:31 +02:00
Christoph Oelckers
f077359196
- merge DukeDC's end of episode cutscene into BuildE3End.
...
This will make things a bit easier on the setup side because it eliminates the need for mission pack specific definitions.
2021-04-30 20:08:31 +02:00
Christoph Oelckers
21aa5c9234
- added game flags for all supported add-ons.
2021-04-30 20:08:31 +02:00
Christoph Oelckers
88dfb93865
- redid Duke cutscene code to use functions, not classes as exports and added the missing screens.
...
Functions are better because they allow doing more in the internal setup code.
2021-04-30 20:08:31 +02:00
Christoph Oelckers
eeefc4355e
- scriptified all of Duke's end of episode cutscenes.
2021-04-30 20:08:30 +02:00
Christoph Oelckers
9d20185b39
- used pushv to make the intro init code look nicer.
2021-04-30 20:08:30 +02:00
Christoph Oelckers
b515543016
- added varargs pushv function to Array<int>.
...
We'll need this for the ANM sound arrays.
Support for other array<> types to be done later.
2021-04-30 20:08:30 +02:00
Christoph Oelckers
66799d9a6d
- more screen job setup work.
...
* interface for movie player done.
* first cutscene definition done.
* all converted classes removed from C++ code.
2021-04-30 20:08:30 +02:00
Christoph Oelckers
4ff2010bd1
- moved the entire screen job management to the script side.
...
This isn't hooked up yet and lots of code is commented out, the games won't start with this commit.
2021-04-30 20:08:30 +02:00