Christoph Oelckers
a39cf290e3
- Blood: fixed: The player's inventory and some other state were reset for each level, not each new game.
2020-10-10 20:20:12 +02:00
Christoph Oelckers
db21d5e946
- took all script exports out of the namespaces.
...
It looks like GCC cannot deal with this - on MSVC it works fine.
2020-10-10 10:11:22 +02:00
Christoph Oelckers
a10aacea3a
- added the QAV drawer page.
2020-10-09 00:50:21 +02:00
Christoph Oelckers
a953404331
- SW's text menus done.
...
This also copies the Build texture animation info into the texture manager so that the 2D code can access it through existing interfaces.
2020-10-07 23:22:29 +02:00
Christoph Oelckers
6041a3355c
- removed the file location reporting for Blood errors because it embeds the full path into the executable, which is not acceptable.
2020-10-07 20:52:25 +02:00
Christoph Oelckers
789eb6d51d
- Most of Duke's menus work again.
2020-10-07 20:32:43 +02:00
Christoph Oelckers
2bb38f7d67
- get load and save game menus and related CCMDs working again.
2020-10-07 18:32:57 +02:00
Christoph Oelckers
0968a9d97e
- renamed the Customizer to 'Delegate' because this works very much like a delegate in Objective-C.
...
- route menu sound calls through the delegate to better deal with differences between games.
2020-10-07 01:00:43 +02:00
Christoph Oelckers
603c3b50ec
- reimplemented Blood's menu items.
2020-10-07 00:50:26 +02:00
Christoph Oelckers
06b00887f5
- added a menu control for Blood's dripping blood.
2020-10-06 23:49:34 +02:00
Christoph Oelckers
b8941a09ad
- we need this...
2020-10-06 21:11:37 +02:00
Christoph Oelckers
d22bdf9dc7
- use an alias for the menu bar texture in Blood.
...
Direct tile access has been disabled for now, hopefully this can be buried deep in the engine for all eternity.
2020-10-06 20:05:51 +02:00
Christoph Oelckers
3dbb8cbb11
- safety commit
2020-10-05 21:47:53 +02:00
Christoph Oelckers
82612a1330
- it compiles again (with lots of code commented out.)
2020-10-04 20:11:02 +02:00
Christoph Oelckers
7661720585
- fixed Blood map loading
...
Whoever designed that map format with its idiotic encryption should burn in Hell >)
It's a needless complication and open invitation for errors.
To avoid follow up problems it now uses its own local struct for loading in the sprites and the global spritetype no longer depends on any map format and can be changed as the need arises.
Fixes #101
2020-10-03 18:35:47 +02:00
Christoph Oelckers
89d5d18b9e
- these parts were missed somehow.
2020-10-02 22:42:54 +02:00
Christoph Oelckers
4e67197838
- added back the hijacked 'detail' member to spritetype.
...
This changes the Blood map loader to not use the in-game sprite structure for loading a level and moves the qsprite_filler array back into the sprite.
2020-10-02 22:18:08 +02:00
Christoph Oelckers
e8cd336f86
- same procedure for Blood.
...
This time there were 3 additional texts and the notify display, though, except for multiplayer content that wasn't touched yet.
The result is the same: No need to extend the tiny font with international characters
2020-09-29 22:20:25 +02:00
Christoph Oelckers
47c1c22ff7
- do not stop the music in the cross-game level-end handler.
...
Some maps require that it continues playing here.
2020-09-27 20:42:55 +02:00
Christoph Oelckers
3210dd5782
- fixed the noisiest value truncation warnings after shortly re-enabling them in the compiler, plus a few places where the warning pointed to incorrect code.
2020-09-26 11:59:24 +02:00
Christoph Oelckers
64607834f3
- Blood: fixed application of palette from the QAV data for HUD weapons.
2020-09-25 23:55:20 +02:00
Christoph Oelckers
89bc194035
- added shareware checks to the "start game" menus.
2020-09-25 19:36:50 +02:00
Mitchell Richters
9b12675f4e
- processMovement()
: Re-arrange parameter variables somewhat so game-specific parameters are at the end and to allow some common defaults so they don't need specifying.
2020-09-25 22:26:50 +10:00
Mitchell Richters
4ff3810711
- Blood/Duke/RR/SW: Improvements to 3rd person viewing by modifying the rendered player's posz so the camera is looking further above the camera sprite as EDuke32 does. Blood just enables the crosshair when using 3rd person view.
2020-09-25 17:52:00 +10:00
Mitchell Richters
04af1d9ce8
- All Games: Unify processMovement()
.
2020-09-24 22:32:37 +10:00
Mitchell Richters
8690c633d8
- Blood: Add extra call to inputState.ClearAllInput()
in StartLevel()
.
2020-09-24 00:20:40 +10:00
Mitchell Richters
e078ea6ebd
- Blood/Exhumed/SW: Hook up gi->clearlocalinputstate()
.
2020-09-24 00:15:51 +10:00
Mitchell Richters
64113f8f9c
- Blood/Duke/SW: Smooth out player's zpos adjustment while in 3rd person view.
2020-09-23 23:12:59 +10:00
Mitchell Richters
407b5346e3
- Blood: Fix issues taking damage following level transitions.
...
Fixes https://forum.zdoom.org/viewtopic.php?f=340&t=69919 .
2020-09-23 13:28:07 +10:00
Mitchell Richters
d391e56d81
- Blood: Fix a few more issues following horizon change. Chase-cam now has proper z-pos.
2020-09-23 13:20:57 +10:00
Mitchell Richters
3d58a09aeb
- Blood: Fix player's z-pos with changed horizon.
2020-09-23 08:54:19 +10:00
Christoph Oelckers
5e6317b8b9
Merge remote-tracking branch 'remotes/Github_private/Blood_InputReworking'
2020-09-22 23:32:28 +02:00
Christoph Oelckers
880b811e0d
- rewrote map loader to work independently of data structure sizes.
...
This is needed to extend a few fields that are too narrow - e.g. the texture offset fields have no room for interpolating scrolling textures.
Blood not done yet, will also need to be changed to get rid of the limits.
2020-09-22 22:40:53 +02:00
Christoph Oelckers
43a9be0ad0
- removed Blood's loadboard replacement hook.
...
It never calls engineLoadBoard but always its own map loading function directly.
2020-09-22 22:38:08 +02:00
Mitchell Richters
2f9783150c
- Blood: Correctly set playerHorizMin()
and playerHorizMax()
with respect to horizon changing from 0 to 100 like the other games (min used to be -180, max used to be 120).
2020-09-22 22:55:23 +10:00
Mitchell Richters
639ad46af1
- Blood: When dead, ensure player's horizon scales to max horizon value like before (old horizon was based on 0, not 100, so 100+120 is gi->playerHorizMax().
2020-09-22 22:52:17 +10:00
Mitchell Richters
ac635ebd0f
- Blood/RR: Replace a few playerSet*()
calls with playerAdd*()
. Because the setters continually set until target is reached, can cause some perceivable smoothness issues if ticker re-targets's player's angle/horizon before input code has reached target.
2020-09-22 22:50:27 +10:00
Mitchell Richters
f168373ecf
- Blood: Repair some ROR regressions from 31fc39b051
.
...
Potentially addresses #87 and #88 .
2020-09-22 18:14:43 +10:00
Mitchell Richters
46810ec490
- fix a few places where Q16.16 values were downscaled, only to be scaled back up again.
2020-09-22 15:51:48 +10:00
Mitchell Richters
31bb9e4d8d
- Blood: Open up MAXHORIZVEL to SW levels to compensate for removal of q16horz scaling in previous horizon code.
2020-09-22 07:46:30 +10:00
Mitchell Richters
d40a2d3e95
Merge branch 'back_to_basics2' into Blood_InputReworking
...
# Conflicts:
# source/blood/src/hudsprites.cpp
# source/exhumed/src/status.cpp
# source/games/duke/src/game_misc.cpp
# source/sw/src/draw.cpp
2020-09-22 07:34:39 +10:00
Mitchell Richters
9859571ded
- DrawCrosshair(): Factor in Blood's adjustable horizon which defaults to 90.
...
* Fixes https://forum.zdoom.org/viewtopic.php?f=340&t=69920 .
2020-09-22 07:29:52 +10:00
Mitchell Richters
5c097c4a74
- Blood: Fix player's slope with horizon now based on 100 and not 0.
2020-09-22 07:13:48 +10:00
Mitchell Richters
59e4fae064
- Game input: Fix miscellaneous issues.
...
* Duke/RR: Fix `SB_CENTERVIEW` not clearing while `cl_syncinput 1`.
* Duke/RR: Remove superfluous call to `apply_seasick()`.
* RR: Change two calls from `playerSetAngle()` to `playerAddAngle()` Updated version of `playerSetAngle()` doesn't stop setting angle until target is reached, a bit too strict for this and compromised vehicle turning.
* `applylook()`: Remove dead flag. Was only used with Duke, no other game called the function when dead anyway. Since the input helpers are processed outside of `applylook()` now this is not needed.
* `applylook()`: Extend function with a bit of commentary.
2020-09-21 17:12:53 +10:00
Mitchell Richters
f806cdcec6
- Blood/Duke/RR/SW: Unify the player's angle/horizon helper functions.
2020-09-21 17:12:51 +10:00
Mitchell Richters
7bf1cacc7f
- Blood/Duke/RR/SW: Unify the player's angle function.
...
* For Blood/SW, exposes `SB_LOOK_LEFT`/`SB_LOOK_RIGHT` to games, hooking up `q16look_ang` and `q16rotscrnang` within.
* For SW, use Duke & Blood's return to center function and remove `PF_TURN_180` bit.
* For RR, replace a few misused bits with some bools inside of `player_struct`.
* Since bulk of functionality is sourced from Duke (30Hz), apply proper scaling so SW speed matches (40Hz).
2020-09-21 17:12:26 +10:00
Christoph Oelckers
3810c4cb51
- Blood: instead of running the indexer after saving a state, just save the pointer before indexing to directly restore it.
2020-09-20 22:00:39 +02:00
Mitchell Richters
0ab3b33a6c
- Blood/Duke/RR/SW: Unify the player's horizon function.
...
* For Duke/SW, we continually apply `SB_CENTERVIEW` only if it was previously a toggled action, similar to Blood.
* For SW, we remove two SW-specific bits (`PF_LOCK_HORIZ` and `PF_LOOKING`) that are no longer needed.
* For Duke, we remove `return_to_center` and just use the `SB_CENTERVIEW` action bit as required.
* For `sethorizon()`, feature set and adjustment speeds are an averaged out accumulation across Duke/SW:
** GameTicRate is factored in for adjustment decisions to provide consistency for SW being the faster game.
** Adjustment amounts are half way between Duke/SW.
2020-09-20 20:01:36 +10:00
Mitchell Richters
0c4fe5f91b
- Blood: Fix remaining issues such as starting horizon, remove q16look and clean up some remaining bits in nnexts.cpp.
2020-09-20 16:21:40 +10:00
Mitchell Richters
f7957fc237
- Blood: Factor in game's tic-rate when aiming/looking up/down.
...
* Doesn't matter for Blood, but will matter for SW in a unified approach. Might as well get it right here.
* Appreciate the literal doubles in lieu of the enums isn't great, but this function will go into the backend in due course.
2020-09-20 16:21:38 +10:00