Mitchell Richters
e9326fffe3
- processMovement()
: Slightly adjust some ratios to provide proper average values.
2020-09-25 23:07:38 +10: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
73f52b2cee
- SW: Fix turn scaling while pp->sop_control
and specify !pp->sop
to processMovement()
s allowstrafe
bool instead of an unconditional true.
2020-09-25 22:17:21 +10:00
Rachael Alexanderson
c8a74a8f3f
- sw: flykey: guard against non-godmode, bind to j by default
2020-09-25 13:50:29 +02:00
Rachael Alexanderson
410d392ba8
- enable fly cheat for shadow warrior. in other games it is currently ignored, but I think Redneck Rampage and Blood both need it at some point too
2020-09-25 13:50:29 +02:00
Mitchell Richters
ce269808dc
- Remove leftover Ion Fury stuffs causing log errors like "Script error, 'D:/Program Files (x86)/Steam/steamapps/common/Ion Fury/fury.grpinfo" line 10: Warning: GRP without game defined. Ignoring'".
2020-09-25 18:06:06 +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
e7de0da36c
- Duke: Changed some downscaled and upscaled Q16.16 variables missed when doing 46810ec490
.
2020-09-25 17:08:44 +10:00
Mitchell Richters
0746b98886
- RR: Don't draw weapon on screen when in 3rd person view.
2020-09-25 16:17:55 +10:00
Mitchell Richters
9c0667a7ce
- Duke: Don't display cracking knuckles while in 3rd person view.
2020-09-25 16:17:34 +10:00
Mitchell Richters
71d667cdc9
- ApplyGlobalInput()
: Fix const issue.
2020-09-25 13:33:44 +10:00
Mitchell Richters
67c8187d62
- processMovement()
: Attenuate hidInput->dyaw
when using for strafing.
2020-09-25 12:03:56 +10:00
Mitchell Richters
038edfe972
- Exhumed: A few more positioning tweaks for the classic full and split HUDs.
2020-09-25 11:02:06 +10:00
Mitchell Richters
2679e28a2e
- Exhumed: Tune positioning of classic full and split HUDs.
2020-09-25 10:42:46 +10:00
Mitchell Richters
c4f4468fd4
- Exhumed: Tune DrawHUD2()
sizing positioning to match other games.
2020-09-25 09:42:02 +10:00
Mitchell Richters
ad1f0ce6c3
- Duke: Tune sizing in FullscreenHUD1 for Duke 3D 1.3D and Nam/WW2GI.
2020-09-25 09:26:55 +10:00
Mitchell Richters
5e947cd78f
- Duke: Fix occasional flicker in corner of 'Completed' text. Need to do the text after all backdrop changes.
2020-09-25 09:08:22 +10:00
Mitchell Richters
439633e6db
- Duke: Don't play 3rd pipebomb explosion if not Plutonium/Atomic.
2020-09-25 08:40:58 +10:00
Christoph Oelckers
8480aca6f1
Merge remote-tracking branch 'remotes/Github_private/Input_UnifyProcessMovement'
2020-09-24 20:21:45 +02:00
Christoph Oelckers
0f96d6a003
- fixed transition to the next level from Ramses cutscenes.
2020-09-24 20:14:25 +02:00
Mitchell Richters
6aa494285d
- processMovement(): Add scaling for Exhumed's keymove. Input was far too slow and didn't match the others.
2020-09-25 00:57:48 +10:00
Mitchell Richters
aa14ee1232
- InputState: Scale dyaw/dpitch with regards to ticrate. All testing on initial uplift was with Duke at 30Hz. SW running at 40Hz therefore is not at the same speed as the others.
2020-09-25 00:25:49 +10:00
Mitchell Richters
9e0bd569f7
Merge branch 'back_to_basics2' into Input_UnifyProcessMovement
...
# Conflicts:
# source/exhumed/src/input.cpp
2020-09-25 00:17:16 +10:00
Mitchell Richters
16cee1148b
- Duke: Change a few ps[] to use the p alias available following changes in f4fff5ee30
.
2020-09-25 00:09:31 +10:00
Mitchell Richters
f0262039b6
- Exhumed: Fixed issues with call to playerProcessHelpers()
not occurring after dying.
2020-09-25 00:04:19 +10:00
Mitchell Richters
a4438fd218
- Exhumed: Actually fix ramses/spirit head issues...
2020-09-24 22:55:27 +10:00
Mitchell Richters
04af1d9ce8
- All Games: Unify processMovement()
.
2020-09-24 22:32:37 +10:00
Mitchell Richters
081dfb187c
- Duke: Make changes in ce7af5fe0e
easier to read by way of aliases.
2020-09-24 09:05:42 +10:00
Mitchell Richters
ca2f1bb556
- Exhumed: Fix ramses/spirit head issues in DoSpiritHead()
and clamp horizon in draw code in case for whatever reason (like before) we exceed the game's defined bounds.
2020-09-24 08:11:56 +10:00
Christoph Oelckers
44fc452747
- World Tour: Fixed missing smoke on burning monsters
...
Yay, another one-liner...
2020-09-23 19:24:40 +02:00
Christoph Oelckers
daabb31bff
- more stat constants
2020-09-23 19:24:01 +02:00
Christoph Oelckers
67985b7819
- changespritestat literal number replacement
2020-09-23 18:51:43 +02:00
Christoph Oelckers
71213bf8bd
- added a missing code fragment for WT's lavapool.
...
This made them float in the air instead of being on the ground.
2020-09-23 18:18:23 +02:00
Christoph Oelckers
f106f35598
- fixed interpolation of palette emulation.
2020-09-23 18:18:23 +02:00
Christoph Oelckers
a6c45a8e52
- Duke: must serialize SB_CENTERVIEW (but no other bits.)
2020-09-23 18:18:23 +02:00
Christoph Oelckers
f4fff5ee30
- moved sync structure into the playerstruct for easier maintenance.
2020-09-23 18:18:23 +02:00
Christoph Oelckers
5a76dce5f8
- reinstated setuptile.
...
Apparently this is needed by some hires packs to fudge the sprite offsets.
Fortunately, setting sprite offsets is the only thing this was ever used for so it's relatively uninvasive.
2020-09-23 18:18:22 +02: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
9b85816f70
- Exhumed: Fix ordering issue in gi->GetInput()
preventing player from pressing use to start again.
2020-09-23 23:45:32 +10:00
Mitchell Richters
2bb5ef0d2e
- Exhumed: Don't return to center after jumping or having something of a fall while playing with mouselook enabled.
2020-09-23 23:37:06 +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
ce7af5fe0e
- Duke: Fix security cameras skewing over time.
...
* Fixes regression from e1ee9bc83c
. +='ing the angle by 16 gave a noticeable hiccup, but was keeping the poor math before in-check so the angle didn't drift.
* Using more temp data fields in hittype, properly define a min/max using the initial camera angle and the hitag which is conveniently the camera's viewing arc.
2020-09-23 18:31:12 +10:00
Christoph Oelckers
5784ff6ef7
- fixed damage type of incinerator's fireball.
...
A one-liner, what else... :D
2020-09-23 07:37:08 +02:00
Mitchell Richters
470f481619
- Duke: Simplify entire camera angle setup.
2020-09-23 15:34:03 +10:00
Mitchell Richters
ed9c8af82f
- Duke: Move changes performed in 53038e1b29
from FinalizeInput()
to processInputBits()
.
2020-09-23 15:03:34 +10:00
Mitchell Richters
53038e1b29
- Duke: Don't allow looking left/right when on a security camera screen.
2020-09-23 15:00:33 +10:00
Mitchell Richters
88608e0682
- Duke: Interpolate camera sprite angle in animatecamsprite()
. Fixes a "fixme".
2020-09-23 14:42:33 +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
sinisterseed
0aa6b99287
- CMakeLists.txt fixes
...
Corrected some typos in the file.
2020-09-22 23:24:39 +02:00
Christoph Oelckers
2a2209b085
- cleanup and minor fixes.
2020-09-22 23:07:11 +02:00
Christoph Oelckers
d6bf4306eb
- simplified the parser for blend modes
2020-09-22 23:05:43 +02:00
Christoph Oelckers
ec0e2be607
- better error message
2020-09-22 23:05:00 +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
28c5c72605
- fixed: black fog does not mean FogColor == 0 because its alpha component is non-0
2020-09-22 22:38:08 +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
fdbc4d0e67
- Build: Fix precision loss when calculating an angle in renderPrepareMirror()
.
2020-09-22 23:12:31 +10:00
Mitchell Richters
7bb3ab8188
- Build: Remove unused inline function in-case it accidentally gets used...
2020-09-22 23:01:45 +10: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
77265b3138
- SW: Fix regression from 1900cf1fcc
where the conversion from GetDeltaAngle()
to getincangle()
got muddled up.
2020-09-22 20:02:58 +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
Christoph Oelckers
b06fe35c56
- removed redundant null entry in 'give' types.
2020-09-22 08:40:33 +02:00
Mitchell Richters
d338e60841
- Exhumed: Hook up crouch action to applylook()
that was forgotten during initial implementation.
2020-09-22 16:06:12 +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
f8210ef8ee
- Exhumed: Clean out some old bools regarding old panning code.
2020-09-21 20:44:02 +10:00
Mitchell Richters
d46787cd96
- Exhumed: Restore synchronised input, hook up rest of backend input functions and get rid of nPlayerDAng
.
2020-09-21 20:37:09 +10:00
Mitchell Richters
5324d9680b
- Exhumed: Fixed a few missed constants when changing horizon to 100.
2020-09-21 19:59:20 +10:00
Mitchell Richters
fa1ce1c021
- Exhumed: Hooked up tic-rate input helpers. Also removed nDestVertPan[]
.
2020-09-21 19:29:16 +10:00
Mitchell Richters
8a4d4b6905
- Exhumed: Open game's constrained horizon as much as sky tile in first level permits.
2020-09-21 18:48:38 +10:00
Mitchell Richters
bdc53ed7b0
- Exhumed: Standardise horizon on 100 and remove backend extern'd polymostcenterhoriz
variable.
2020-09-21 18:41:56 +10:00
Mitchell Richters
3de787235d
- Exhumed: Initial uplift of player input. Still more to do.
2020-09-21 18:36:11 +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
Christoph Oelckers
c1a8d55d24
- removed Softpoly from the startup screen and its enabling define in the project.
...
Since this not only crashes but also has totally unfitting lighting, which is unlikely to be fixed it really makes no sense offering this to the users.
Vulkan may also have to be disabled for release builds because it's not working yet but that needs to be fixed later and should eventually be supported.
2020-09-20 21:15:16 +02:00
Christoph Oelckers
78be8f866b
- always use the containing sector's fog when rendering sprites.
...
This is for consistency, otherwise sprites with a palette translation would stand out. Also use shade dependent fog density instead of a single global value.
Currently this only has an effect in true color rendering mode.
2020-09-20 20:39:11 +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
f0b32b6078
- SW: Implement cl_viewbob
.
2020-09-20 18:25:16 +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
Mitchell Richters
d2501007f2
- Blood: Adapt uplifted DoPlayerHorizon()
from SW to Blood.
...
* Horizon now standardised on 100 like the other games.
* Need to determine where/why/how the player's horizon is starting out at 0 and get it to init at 100 like the other games.
2020-09-20 16:21:36 +10:00
Mitchell Richters
f2b48fe79c
- SW: Uplift DoPlayerHorizon()
with changes to serve as basis for standardised backend player horizon function.
...
* Pre-requisite to make it possible to stop using Q16.16 for horizon input.
* Perform look up/down and aim up/down using true pitch without the need for a helper.
* Adapt SW's return to center function to work based on true pitch (Duke's is a bit too fast for my liking).
* Duke's aim up/down and look up/down is 6 & 12 respectively, SW's is 8 & 16 respectively. Let's go half-way at 7 & 14.
2020-09-20 16:21:35 +10:00
Mitchell Richters
6a091deb67
- Blood: Re-apply input scaling removed in 495c522096e0c9b31bdf6952e612bc3d03030da2 until the entire return to centre function is standardised across games.
2020-09-20 16:21:31 +10:00
Mitchell Richters
40bbb61239
- Blood: Get death chase-cam going while unsynchronised using input helpers.
2020-09-20 16:21:28 +10:00
Mitchell Richters
6e4ee9e975
- Blood: Forbid unsynchronised input if dead.
2020-09-20 16:21:26 +10:00
Mitchell Richters
85e81c94c7
- Blood: Bring in SW's input helpers and hook up within input code.
2020-09-20 16:21:23 +10:00
Mitchell Richters
1900cf1fcc
- Move Duke's getincangle()
function to the backend, create Q16.16 variant (getincangleq16()
) and replace Shadow Warrior's discrete implementations shared versions.
...
* Need SW's input helpers available for Blood but therefore also need an angle delta function that does not seem to exist in Blood.
* Realise that gamecontrol.h/cpp might not be the most appropriate place, but it's a shared location and these will go into binaryangle.h when its utilisation can be more realised.
* Because SW's logic was reversed, in that param #1 was the new angle and param #2 was the current, all calls have been reversed.
* By happenstance, also fixes an issue with multiple 180° turns in quick succession.
2020-09-20 16:21:13 +10:00
Mitchell Richters
db7793bf54
- Blood: Clean up remainder of control.cpp in-line with Duke/SW.
...
* Split input bits and movement into separate functions.
* Reordered movement to be more like Duke/SW for ease of comparison.
* Removed a global.
* Removed a few includes.
2020-09-20 16:20:20 +10:00
Mitchell Richters
9c56dfffe0
- Blood: Apply horizon input outside of pPlayer->q16look
and fix some incorrectly declared types.
...
* Looking up/down is a bit rough at first as q16look is disproportionate to where the player is currently looking.
* Won't be an issue with a unified horizon algorithm in the backend.
2020-09-20 16:20:18 +10:00
Mitchell Richters
eb0bd9638b
- Blood: Re-implement unsynchronised q16horiz.
2020-09-20 16:20:16 +10:00
Mitchell Richters
ae5b6b6a91
- Blood: Re-implement unsynchronised q16ang.
2020-09-20 16:20:14 +10:00
Mitchell Richters
547bf110b2
- Blood: Create high-precision Sinf()
and Cosf()
inlines and use for player's horizon, using calcSinTableValue()
from the backend, bypassing game's costable[]
.
2020-09-20 16:20:12 +10:00
Mitchell Richters
c38c1cb1f1
- Blood: Re-do interpolating code in viewDrawScreen()
in preparation for returning unsynchronised input.
...
* Changed config so `cl_interpolate` bool doesn't apply to player's overall movement. While it might be handy for debugging moving sector objects, I see no valid reason why there'd be a need to ever un-interpolate the player's position.
2020-09-20 16:20:10 +10:00
Mitchell Richters
20c73e1249
- Blood: Remove r_horizcenter
and standardise horizon in game to that of the default in the backend (currently 100).
...
* The use of this will go when the input is re-factored to operate on the standard horizon of 100, not 0.
2020-09-20 16:20:08 +10:00
Mitchell Richters
4d47fe7e85
- Blood: Remove bVanilla
.
2020-09-20 16:20:06 +10:00
Mitchell Richters
c835d9cadc
- Blood: Revert upstream unsynchronised input implementation.
2020-09-20 16:20:04 +10:00
Mitchell Richters
20f94c5895
- Blood: Use backend input scaling.
2020-09-20 16:20:00 +10:00
Mitchell Richters
5e484bddad
- Blood: Make gInput
static within controls.cpp.
2020-09-20 16:19:58 +10:00
Christoph Oelckers
bac357a6be
- disable the weapon in SW's savepics.
...
The way the weapon drawer is implemented does not work well with save pictures.
2020-09-19 21:31:35 +02:00
Christoph Oelckers
a27211dc34
- added support for SSI containers to the file system.
2020-09-19 10:07:53 +02:00
Christoph Oelckers
2bf5933923
- fixed weapon sprite translation index when in paletted mode.
2020-09-19 00:06:07 +02:00
Christoph Oelckers
d8639a9a64
- fixed bad checks for uncapped frame rate.
2020-09-18 23:18:42 +02:00
Christoph Oelckers
005f8feceb
- properly use the correct delay for an ANM's final frame.
2020-09-18 22:49:51 +02:00
Christoph Oelckers
29a10cabcb
- fixed most issues with palette emulation.
...
Brightness is now correct - I have no idea why this factor of 1/0.85 is needed - something must reduce the brightness of the entire scene but I have no idea what.
2020-09-18 22:29:13 +02:00
Christoph Oelckers
7b879f6fe7
- removed now unused SavegameLoaded variable.
2020-09-18 01:11:38 +02:00
Christoph Oelckers
77a2bcb958
- SW: make ambients start properly.
...
This fell victim to some fudging code that was needed to avoid crashes with the original game loop.
All that fudging could easily be removed now because nothing of it is needed anymore.
2020-09-18 00:33:18 +02:00
Christoph Oelckers
af298411df
- added widescreen titlepic for Duke Nukem 3D:
...
Also made some tweaks to the intro sequence drawer so that it recognizes image formats not depending on the game palette.
2020-09-17 23:20:50 +02:00
Christoph Oelckers
f5d14f826a
- added the SHOOT event and fixed some issues with poor code generation for the game data accessors.
...
They created different code depending on the passed index, this was changed to always emit the optional parameter, even when not needed, so that the interpreter does not need to second-guess.
2020-09-17 23:06:54 +02:00
Christoph Oelckers
8fa5d3d9d2
- added the remaining CON features from EDuke 2.x
...
Not everything will do something, though. This was some incredibly careless code operating without a safety net allowing uncontrolled write access to the map structure.
Most of the critical fields have been made read-only, which has been the only mode of access in the mods I checked.
Note that this does not enable scripting of the weapon sprite drawer, only the gameplay related features were done.
2020-09-17 23:06:54 +02:00
Mitchell Richters
e1ee9bc83c
- Duke: Fix camera advancing angle by 16 instead of 8 under circumstances.
2020-09-17 18:31:09 +10:00
Mitchell Richters
71a06b7cdd
- SW: Fix quake intensity.
2020-09-17 09:01:19 +10:00
Christoph Oelckers
4dc7f8b142
- undid some formatting screwups from the merge.
2020-09-16 19:28:51 +02:00
Christoph Oelckers
942beea1ff
Merge branch 'back_to_basics2'
2020-09-16 19:26:23 +02:00
Mitchell Richters
4370686c81
- SW: Allow disabling melee weapon blurring.
2020-09-16 19:18:08 +02:00
Christoph Oelckers
b0090b07fc
- do not fade screen jobs in when in the menu.
...
This doesn't work properly because the timer is stopped, leading to visual artifacts with the fading.
2020-09-16 19:13:21 +02:00
Christoph Oelckers
6776508239
- widescreen asset setup and consolidation of .def file loading.
2020-09-16 19:13:06 +02:00
Christoph Oelckers
2095e9e3c6
- code changes for last commit - they were not picked up automatically.
...
# Conflicts:
# source/build/src/defs.cpp
2020-09-16 19:13:05 +02:00
Christoph Oelckers
5c777eeb38
- moved implementation of 'animtilerange' into buildtiles.cpp.
2020-09-16 19:13:05 +02:00
Christoph Oelckers
616838dd0a
- little bit of cleanup on tileImport.
2020-09-16 19:13:05 +02:00
Mitchell Richters
ce82eaf899
- Duke/RR: Address weapon drawer interpolation concerns raised in #403 .
2020-09-16 21:01:09 +10:00
Christoph Oelckers
b26a5b800e
- make sure that changing the texture filter mode does not clobber the global state
...
Need to rebind the samplers after modifying them to avoid undefined behavior.
Fixes #397
2020-09-15 22:00:15 +02:00
Christoph Oelckers
867b8f006f
Reverted key input changes from yesterday.
...
At least the SW version did not work right so let's take no chances here.
2020-09-15 21:54:10 +02:00
Christoph Oelckers
d74d65bece
- clear the 2D drawers in the correct place.
2020-09-15 21:52:02 +02:00
Christoph Oelckers
8babdd6296
- fixed "pointers to temporary" errors reported by XCode
2020-09-15 21:45:54 +02:00
Christoph Oelckers
e7ddc4178a
- fixed bad Printf formatting directives in swcustom parser.
2020-09-15 21:45:05 +02:00
Christoph Oelckers
c98f7d304b
- added a list compare function to FScanner.
2020-09-15 21:21:16 +02:00
Christoph Oelckers
2c3041081d
- remove indirection in picanm access.
2020-09-15 21:17:08 +02:00
Christoph Oelckers
d1293da8dc
- connecting the dots for Blood's special tile features.
2020-09-15 01:27:24 +02:00
Christoph Oelckers
bc5d3eea88
- split the worker part for tileImportTexture out of the parser.
2020-09-15 01:21:17 +02:00
Christoph Oelckers
09a6534270
- redid scriptfile as a wrapper around FScanner
...
Another piece of Build licensed code gone, yay!
This will also allow gradual conversion of the DEF parser to our own code, unencumbered by the Build license. :)
2020-09-15 00:11:08 +02:00
Christoph Oelckers
e382690f9c
- migrated defs error reporting to FScriptPosition
...
This not only prints better formatted texts, it also takes a lot of script maintenance out of the code.
2020-09-14 22:55:21 +02:00
Christoph Oelckers
8a7502c00d
- I wish, MSVC flagged struct params to variadic functions properly…
...
XCode reported these as errors.
2020-09-14 22:44:21 +02:00
Christoph Oelckers
70a6fbe9be
- do not interpolate while playing the flash at Exhumed's exits.
...
Fixes #395
2020-09-14 22:31:15 +02:00
Christoph Oelckers
cf6b497d02
- fixed animation of weapon sprites
...
This also disables palette emulation for weapons because it's too buggy right now. Will be re-enabled once fixed.
2020-09-14 22:16:33 +02:00
Christoph Oelckers
4485587088
- removed the palette remapping in the lookup texture generators because it is no longer needed.
...
Fixes #396
2020-09-14 21:54:29 +02:00
Christoph Oelckers
42d4e112a1
- clear the message display unconditionally when restarting the game.
...
It was only done when the level was reloaded.
Fixes #400
2020-09-14 21:32:36 +02:00
Christoph Oelckers
eb4e0b1b83
- restrict keyboard input to the actual tic in SW as well.
...
Also fixed the blocking of the strafe key with sector objects - this must have gotten lost somewhere.
2020-09-14 21:25:53 +02:00
Christoph Oelckers
1f4594b450
- Duke: Only read keyboard input for movement when called for the actual tic.
...
Since the added values are not scaled, doing this per frame has the potential risk of achieving too high total velocity when combined with other means of input.
The change here was kept as simple as possible.
2020-09-14 21:10:34 +02:00
Mitchell Richters
c5648be2bd
- SW: Properly scale controller input.
2020-09-14 19:29:12 +10:00
Mitchell Richters
3fc96e8840
- SW: Stop keyboard fvel/svel from allowing loc.fvel
/loc.svel
like Duke.
...
* Stops overshooting keymove when playing with `cl_syncinput 0`.
* Keymove is never as high as MAXFVEL/MAXSVEL, which is used as a thrash point for controller input.
* Fixes #390 .
2020-09-14 18:54:03 +10:00