Mitchell Richters
9e8e441d02
Further improve Duke3D and RR main game loop.
...
- Replace if statement containing nested do/while loop with a while loop.
2020-03-30 09:53:04 +02:00
Mitchell Richters
d4dd737cd5
SW: Amend scaleAdjustmentToInterval() with correct value for SW.
2020-03-30 09:52:14 +02:00
Mitchell Richters
1cdd5b08d8
SW: Fix incorrectly declared function input type.
2020-03-30 09:52:14 +02:00
Mitchell Richters
eaa51138ad
SW: Amendments to accommodate changes in master.
2020-03-30 09:52:14 +02:00
Mitchell Richters
c162014dab
SW: Process input at frame rate.
2020-03-30 09:52:14 +02:00
Mitchell Richters
d78d046bad
SW: Minor repairs for Q16.16 implementation.
2020-03-30 09:52:14 +02:00
Mitchell Richters
1ecc74c2ec
SW: Use Q16.16 for angle.
2020-03-30 09:52:14 +02:00
Mitchell Richters
f07a0ae01e
SW: Use Q16.16 for horiz.
2020-03-30 09:52:14 +02:00
Mitchell Richters
e878c5bab8
SW: Improve main game loop.
...
- Remove MoveLoop() as it's only ever called by RunLevel().
- Continuously call getinput() and domovethings() within the game's tic rate.
2020-03-30 09:52:14 +02:00
Christoph Oelckers
5af0217db7
- got rid of the software rendering blend tables.
2020-03-29 17:23:57 +02:00
Christoph Oelckers
41545b644a
- cleaned out most of the software renderer's static global variables.
2020-03-29 16:59:49 +02:00
Christoph Oelckers
7392b699e4
- cleaning out a few more parts of the software renderer.
2020-03-29 15:54:02 +02:00
Christoph Oelckers
3f69044770
- removed all references to sdlayer.cpp as all that was left in there was only needed for software rendering.
...
- removed now unused a-c.cpp.
2020-03-29 15:22:07 +02:00
Christoph Oelckers
0de4b134da
- stripped out most of the software renderer.
...
Now that the camera textures can be handled through the hardware renderer this isn't needed anymore.
2020-03-29 14:55:09 +02:00
Christoph Oelckers
621a9338e5
- render camera textures with the hardware renderer.
...
This removes the last active use case for the software renderer and allows rendering the camera views at a higher resolution.
For Shadow Warrior this necessitated a split of JS_DrawMirrors, because it processed cameras and mirrors in the same loop which cannot be done with the hardware renderer.
2020-03-29 14:01:46 +02:00
Christoph Oelckers
8f3cc0b5af
- removed screen tilting code for software renderer.
...
Since this doesn't work anymore the code is no longer needed - and it stands in the way of doing camera textures purely in hardware.
2020-03-29 08:36:39 +02:00
Mitchell Richters
2cbbe9ec61
Remove last vestiges of input latency from Duke3D and RR main game loops.
...
- Hack code to break loop early removed. If game code is running slow, that's not the fix.
- Get input and fill the input_t struct in same loop as G_DoMoveThings().
- Remove unnecessary do/while (0) loop.
2020-03-25 14:42:51 +01:00
Mitchell Richters
1a2663f7ac
Change detection arrays for Redneck games.
...
- Redneck Deer Huntin' also comes with Redneck Rampage Rides Again.
- Changes permit all games to be detected, including RRRA if you own Deer Huntin'.
2020-03-22 12:05:01 +01:00
Mitchell Richters
b1ebb897e8
Repair HUD scaling returning to 100% when relaunching Duke or RR games.
...
- Resolves https://forum.zdoom.org/viewtopic.php?f=340&t=67811
2020-03-22 10:37:43 +01:00
Mitchell Richters
e272286df5
Repair vehicle acceleration following changes to input handling.
...
- Make localInput.fvel only equal to input.fvel + pPlayer->moto_speed.
- Define MOTOTURN and MAXVELMOTO in line with other defines used throughout P_GetInput*() functions.
- Clamped minimum fvel value is also now correct.
2020-03-21 11:30:36 +01:00
alexey.lysiuk
b923f9612b
- fixed compilation with MSVC 16.5.0 when using std::sort() with TArray<>
...
error C2676: binary '[': 'TIterator<T>' does not define this operator or a conversion to a type acceptable to the predefined operator
2020-03-21 11:18:04 +02:00
Mitchell Richters
f1b7707f7a
Repair vehicle input functions following changes to input handling.
...
- Calculate turnAmount in 1st 'if (turn)' statement to save on a 2nd.
- Divide all subsequent values from turAmount for cascasing effect.
- Rearrange some code to save on if statements checking the same condition.
- Remove q16horz code since player has no vertical movement on a vehicle.
- Remove horizAngleAdjust code as it's not necessary and has a jarring effect.
2020-03-20 23:21:54 +01:00
Christoph Oelckers
fca147c83b
- fixed compilation.
2020-03-20 21:26:28 +01:00
ny00123
da1d97ba9c
sw/src/draw.cpp: Don't draw rooms if textured overhead map is drawn
...
later. This also turns out to fix a Polymost-specific bug revealed
in SVN r8711. Further remove a call to PicInView which does nothing.
git-svn-id: https://svn.eduke32.com/eduke32@8766 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:39:35 +01:00
terminx
c110c1018d
Fix IF crouch jumping and unintentional automatic crouching under sprites
...
git-svn-id: https://svn.eduke32.com/eduke32@8737 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:38:33 +01:00
terminx
6c9bdae0ec
Reduce width of a couple fields in memberlabel_t
...
git-svn-id: https://svn.eduke32.com/eduke32@8735 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:38:05 +01:00
terminx
7dc1a3c904
Make gamestructures a proper object
...
git-svn-id: https://svn.eduke32.com/eduke32@8734 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# GNUmakefile
# platform/Windows/eduke32.vcxproj
# platform/Windows/eduke32.vcxproj.filters
# source/duke3d/src/gamedef.cpp
# source/duke3d/src/gameexec.cpp
# source/duke3d/src/gamevars.cpp
# source/duke3d/src/m32def.cpp
# source/duke3d/src/m32def.h
# source/duke3d/src/m32exec.cpp
# source/duke3d/src/m32structures.cpp
2020-03-20 17:37:54 +01:00
terminx
21ec33ac51
Eliminate unnecessary goto
...
git-svn-id: https://svn.eduke32.com/eduke32@8731 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:35:25 +01:00
terminx
2e17467a8f
Fix return type of A_CheckHitSprite()
...
Since the returned value is a distance, it should be int32_t.
git-svn-id: https://svn.eduke32.com/eduke32@8730 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:35:09 +01:00
terminx
4bdffa4f0f
Patch from Nuke.YKT to fix a y-flipped voxel rendering issue in Polymost
...
git-svn-id: https://svn.eduke32.com/eduke32@8727 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:34:48 +01:00
terminx
a7e1d3f307
Patch from Nuke.YKT to fix a couple of NAM/WW2GI issues
...
git-svn-id: https://svn.eduke32.com/eduke32@8726 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:34:27 +01:00
terminx
3941fccc4c
Patch from Striker to improve sprite interpolation
...
git-svn-id: https://svn.eduke32.com/eduke32@8724 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:34:19 +01:00
terminx
8c5e3116c9
Make SE_13_EXPLOSIVE call A_GetZLimits() for all statnum 0-2 sprites in sector when triggering
...
This fixes the fire sprites inside exploding walls not waking up after the wall explodes.
git-svn-id: https://svn.eduke32.com/eduke32@8723 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:33:51 +01:00
terminx
7ed8f5aec4
Fix a bug with swinging doors
...
This fixes a bug with swinging doors where multiple swinging doors linked together could become out of sync with each other if you block one door from moving and activate the second door again while the first is still blocked.
git-svn-id: https://svn.eduke32.com/eduke32@8721 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:33:25 +01:00
terminx
086141e205
Fix off-by-one error in various CON text truncation warnings
...
git-svn-id: https://svn.eduke32.com/eduke32@8720 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/duke3d/src/gamedef.cpp
2020-03-20 17:33:15 +01:00
terminx
19630b0d4e
Add missing diagnostic information for getactor/setactor
...
Internally, there are several different permutations of the opcodes that implement CON_GETACTOR and CON_SETACTOR. This maps the internal opcodes back to the external keywords that generated them and makes sure they all have the script line number attached to them for use in diagnostic warning and error messages.
git-svn-id: https://svn.eduke32.com/eduke32@8719 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:32:13 +01:00
terminx
e88535a228
Fix tripbomb laser
...
git-svn-id: https://svn.eduke32.com/eduke32@8718 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:31:46 +01:00
terminx
8def930980
Replace MERGE_NODES macro with vsmerge() function
...
git-svn-id: https://svn.eduke32.com/eduke32@8715 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/build/src/polymost.cpp
2020-03-20 17:31:21 +01:00
terminx
05b59467f5
Merge fix16.cpp and fix16_str.cpp
...
git-svn-id: https://svn.eduke32.com/eduke32@8709 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# GNUmakefile
# platform/Windows/build.vcxproj
# platform/Windows/build.vcxproj.filters
# source/thirdparty/src/fix16_str.cpp
2020-03-20 17:29:20 +01:00
Mitchell Richters
88502f9962
Manually merge missed aliasing from EDuke32 SVN commit 8555.
2020-03-20 17:04:34 +01:00
Mitchell Richters
8bef451ed9
Manually merge EDuke32 SVN commit 8619.
2020-03-20 17:04:33 +01:00
Mitchell Richters
029b0bbb45
Manually merge EDuke32 SVN commit 8617.
2020-03-20 17:04:33 +01:00
Mitchell Richters
15a362f9ac
Manually merge EDuke32 SVN commit 8605.
2020-03-20 17:04:33 +01:00
Mitchell Richters
a5612b1a02
Manually merge EDuke32 SVN commit 8565.
2020-03-20 17:04:33 +01:00
Mitchell Richters
1222a3a56a
Manually merge parts of EDuke32 SVN commit 8559.
2020-03-20 17:04:33 +01:00
Mitchell Richters
062850c30a
Manually merge parts of EDuke32 SVN commit 8243.
2020-03-20 17:04:32 +01:00
Mitchell Richters
53c9d8425c
Manually merge EDuke32 SVN commit 8555.
2020-03-20 17:04:32 +01:00
Mitchell Richters
2124862a9a
Manually merge EDuke32 SVN commit 8554.
2020-03-20 17:04:32 +01:00
Mitchell Richters
e964837219
Manually merge EDuke32 SVN commit 8552.
2020-03-20 17:04:32 +01:00
Mitchell Richters
84c518a067
Manually merge EDuke32 SVN commit 8551.
2020-03-20 17:04:31 +01:00
Mitchell Richters
61135e2635
Manually merge EDuke32 SVN commit 8541.
2020-03-20 17:04:31 +01:00
Mitchell Richters
71ada1d674
Manually merge EDuke32 SVN commit 8539.
2020-03-20 17:04:31 +01:00
Mitchell Richters
63edfcf7c7
Manually merge EDuke32 SVN commit 7775.
2020-03-20 17:04:31 +01:00
terminx
cefb1a5551
Fix stupid typo that broke conveyor belts
...
git-svn-id: https://svn.eduke32.com/eduke32@8620 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:01:12 +01:00
terminx
9630126a6d
Improve player input locking logic
...
This fixes the issue with mouse input and viewscreens.
git-svn-id: https://svn.eduke32.com/eduke32@8619 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:01:12 +01:00
terminx
bcb561014d
Fix hilarious bug where holding the strafe modifier and pressing turn left/right moved the player in the wrong direction
...
git-svn-id: https://svn.eduke32.com/eduke32@8617 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:01:11 +01:00
terminx
ce2c378dcb
Emulate previous behavior for player oang/ohoriz/angvel struct members
...
git-svn-id: https://svn.eduke32.com/eduke32@8605 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:01:11 +01:00
terminx
b48de3ca3c
Take CRANE sprites into account before applying mouse input
...
git-svn-id: https://svn.eduke32.com/eduke32@8565 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:01:11 +01:00
terminx
d04bf2cfb9
Ion Fury compatibility improvements
...
git-svn-id: https://svn.eduke32.com/eduke32@8559 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:01:11 +01:00
terminx
ae9b6915ce
Get rid of the globals used when implementing the framerate based input polling
...
git-svn-id: https://svn.eduke32.com/eduke32@8555 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:01:11 +01:00
terminx
e94ce88b27
Use the saturating versions of the fix16 functions for player input
...
git-svn-id: https://svn.eduke32.com/eduke32@8554 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:01:10 +01:00
terminx
659ebf82d8
Improve player view recentering
...
git-svn-id: https://svn.eduke32.com/eduke32@8552 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:01:10 +01:00
terminx
3b43bba32f
Tie player input to the frame rate instead of the game tickrate
...
This voodoo bullshit entirely eliminates any and all player viewport input latency.
git-svn-id: https://svn.eduke32.com/eduke32@8551 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-20 17:01:10 +01:00
Christoph Oelckers
de2c07aa6a
- revert all consolidation efforts between Duke and RR frontends.
...
Too many problems with different code.
2020-03-18 08:24:31 +01:00
Christoph Oelckers
ef63e47cbf
- fixed per-level music in RR.
2020-03-14 18:14:50 +01:00
Christoph Oelckers
c9a69d96b2
- SW: copied fix from SWR to always spawn anime girls for the addons.
2020-03-08 20:53:04 +01:00
Christoph Oelckers
80cc12001f
- a bit of cleanup.
2020-03-08 13:54:00 +01:00
Christoph Oelckers
62fa254497
- 0.5.1
2020-03-08 08:05:19 +01:00
ny00123
d98bf9ba62
sw/src/draw.cpp:ResizeView: Make map zooming less dependent
...
on the frame rate
git-svn-id: https://svn.eduke32.com/eduke32@8700 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/sw/src/draw.cpp
2020-03-08 08:02:01 +01:00
Christoph Oelckers
93eea97477
- allow selecting frontend for Duke3D in gameinfo.txt
2020-03-07 20:14:03 +01:00
ny00123
68f249873c
sw/src/weapon.cpp: Comment out unused MissileSeek and ComboMissileSeek
...
params, but leave them for documentation. Note that currently, the
only use of ComboMissileSeek is in the saveable_weapon_code array.
git-svn-id: https://svn.eduke32.com/eduke32@8698 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-07 19:49:24 +01:00
ny00123
cf093e9ea6
SW: Comment out function parameters accessed only in commented out code
...
git-svn-id: https://svn.eduke32.com/eduke32@8697 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-07 19:48:28 +01:00
ny00123
4842f18f1b
SW: Mark function parameters as unused in cases we can't easily change
...
the functions' signatures (often due to being used as callbacks/hooks)
git-svn-id: https://svn.eduke32.com/eduke32@8696 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/sw/src/jnstub.cpp
# source/sw/src/menus.cpp
# source/sw/src/panel.cpp
# source/sw/src/text.cpp
2020-03-07 19:48:14 +01:00
ny00123
3e8dc4e509
SW: Remove a bunch of unused function parameters
...
git-svn-id: https://svn.eduke32.com/eduke32@8694 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/sw/src/brooms.cpp
# source/sw/src/draw.cpp
# source/sw/src/game.cpp
# source/sw/src/inv.cpp
# source/sw/src/save.cpp
# source/sw/src/spike.cpp
# source/sw/src/text.cpp
# source/sw/src/weapon.cpp
2020-03-07 19:45:38 +01:00
ny00123
f9155048fc
sw/src/weapon.cpp: Remove conditional set of unused variable hsp
...
in InitMineShrap, as well as unused variable sp in TestDontStick
git-svn-id: https://svn.eduke32.com/eduke32@8693 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-07 19:38:46 +01:00
ny00123
9c7553c776
sw/src/weapon.cpp: Insert unused SHRAP structs into #if 0 blocks
...
git-svn-id: https://svn.eduke32.com/eduke32@8692 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-07 19:38:21 +01:00
Christoph Oelckers
73a4e0d1fe
- made Blood's FullMap flag global and removed the hacks to show the full automap.
...
Also refactor show2dsector into a bit array to get rid of the bit shifting code at play here.
2020-03-07 19:30:18 +01:00
ny00123
14a2560d5f
sw/src/player.cpp: Remove unused globals related to mouse status
...
git-svn-id: https://svn.eduke32.com/eduke32@8690 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-07 19:30:18 +01:00
ny00123
f5df1b5a19
sw/src/player.cpp: A bit more complicated cases of unused vars
...
git-svn-id: https://svn.eduke32.com/eduke32@8689 1a8010ca-5511-0410-912e-c29ae57300e0
2020-03-07 19:30:18 +01:00
ny00123
ed6e9df07c
SW: Handle cases in which the result of an expression
...
with (possible) side-effects is written to an unused var.
git-svn-id: https://svn.eduke32.com/eduke32@8688 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/sw/src/console.cpp
# source/sw/src/jnstub.cpp
# source/sw/src/save.cpp
# source/sw/src/sounds.cpp
# source/sw/src/swconfig.cpp
2020-03-07 19:30:18 +01:00
ny00123
d55871927a
SW: Comment out unused vars, which would become
...
used if previously commented out code was uncommented
(including a few instances of uninitialized var reads).
git-svn-id: https://svn.eduke32.com/eduke32@8686 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/sw/src/brooms.cpp
# source/sw/src/cheats.cpp
# source/sw/src/draw.cpp
# source/sw/src/game.cpp
# source/sw/src/jnstub.cpp
# source/sw/src/menus.cpp
# source/sw/src/rts.cpp
# source/sw/src/sector.cpp
# source/sw/src/setup.cpp
# source/sw/src/sounds.cpp
# source/sw/src/weapon.cpp
2020-03-07 19:30:17 +01:00
ny00123
896de8aa1c
SW: Remove a ton of unused vars
...
git-svn-id: https://svn.eduke32.com/eduke32@8685 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/sw/src/anim.cpp
# source/sw/src/border.cpp
# source/sw/src/brooms.cpp
# source/sw/src/config.cpp
# source/sw/src/console.cpp
# source/sw/src/coolie.cpp
# source/sw/src/draw.cpp
# source/sw/src/game.cpp
# source/sw/src/hornet.cpp
# source/sw/src/jbhlp.cpp
# source/sw/src/jnstub.cpp
# source/sw/src/jsector.cpp
# source/sw/src/menus.cpp
# source/sw/src/miscactr.cpp
# source/sw/src/network.cpp
# source/sw/src/ninja.cpp
# source/sw/src/player.cpp
# source/sw/src/save.cpp
# source/sw/src/serp.cpp
# source/sw/src/setup.cpp
# source/sw/src/sounds.cpp
# source/sw/src/sprite.cpp
# source/sw/src/swconfig.cpp
# source/sw/src/weapon.cpp
2020-03-07 19:30:17 +01:00
Christoph Oelckers
5a6096c740
- no Lunatic
2020-03-07 19:30:17 +01:00
alexey.lysiuk
53cda00747
- added detection of Redneck Deer Huntin' installed from Steam
2020-03-07 11:31:46 +02:00
Christoph Oelckers
2c203fbf80
- more consolidation between RR and Duke.
2020-03-06 19:29:13 +01:00
Christoph Oelckers
cb322a1a1b
Merge branch 'master' of https://github.com/coelckers/Raze
2020-03-06 17:44:53 +01:00
Christoph Oelckers
6095808503
- consolidation of dynamic sound remapping
2020-03-06 17:23:30 +01:00
Christoph Oelckers
a5c2152530
- consolidated the dynamic tile handling for Duke and RR frontends
2020-03-06 17:12:38 +01:00
alexey.lysiuk
12a655b58f
- fixed build with GCC and Clang
...
source/duke3d/src/gameexec.h:109:35: error: expected primary-expression before ‘)’ token
source/duke3d/src/gameexec.h:115:35: error: expected primary-expression before ‘)’ token
2020-03-06 13:26:32 +02:00
NoOneBlood
aa5b7033de
- Condition type update (WIP)
...
- IncDec type update (can iterate multiple data fields)
- Fix compile warning (?)
2020-03-05 22:11:22 +01:00
Christoph Oelckers
86278fc79c
- fixed bad annotation.
2020-03-05 21:14:45 +01:00
Christoph Oelckers
a519861571
- I think this is needed...
2020-03-05 21:14:34 +01:00
Christoph Oelckers
b3c1d5001e
- used double frame buffering for VPX playback.
...
With a single buffer this tends to run into situations where an unrendered texture gets deleted before it is drawn.
2020-03-05 20:56:41 +01:00
Christoph Oelckers
e2fab16fd4
- fixed crashes with VM asserts.
...
No idea what went wrong here - formatting the string in two stages works fine, though.
2020-03-05 20:28:37 +01:00
Christoph Oelckers
4a76674f4b
- deleted a few unused files
2020-03-05 01:20:58 +01:00
Christoph Oelckers
4788dc42fb
- cleanup of the screentext consolidation
...
Since SetIfGreater is only used by the text code, the redundant copies could be removed.
2020-03-05 01:17:31 +01:00
Christoph Oelckers
822079abe0
fixed some compiler warnings listed by XCode
2020-03-05 01:01:05 +01:00
Christoph Oelckers
2c50554c6f
- Hmmm... Clang...
2020-03-05 01:01:05 +01:00
Christoph Oelckers
a00bb4cbea
- started consolidation of EDuke/RedNukem code by moving the identical parts of actor.h to a shared namespace.
2020-03-05 01:01:05 +01:00
Christoph Oelckers
a203e37aeb
- removed buggy diagnostics print.
2020-03-05 01:01:04 +01:00