sirlemonhead
8f8f033956
Rednukem: Limit sprite shade change to Redneck Rampage games, and add guard for invalid array access. Fixes ASAN error.
2020-05-22 17:22:18 +02:00
sirlemonhead
19ab05655b
Prevent invalid array index in polymost_spriteIsModelOrVoxel()
...
# Conflicts:
# source/build/src/polymost.cpp
2020-05-22 17:22:18 +02:00
sirlemonhead
73a56f76af
PCExhumed: Avoid some original memory read bugs and correct some bullet code branching.
2020-05-22 17:22:00 +02:00
sirlemonhead
02d4712e57
Rednukem: Fix MVE crash on Release gcc builds.
2020-05-22 17:21:03 +02:00
sirlemonhead
808d0591eb
Rednukem: Add newline to end of playmve.h
2020-05-22 17:21:03 +02:00
sirlemonhead
b89c6da6b8
Rednukem: Playback support added for Rides Again intro movie. Closes #266
...
# Conflicts:
# GNUmakefile
# platform/Windows/rednukem.vcxproj
# platform/Windows/rednukem.vcxproj.filters
# source/rr/src/game.cpp
2020-05-22 17:21:03 +02:00
sirlemonhead
20cfbc1786
PCExhumed: Fix the timing of credits text when not using CD audio.
...
# Conflicts:
# source/exhumed/src/exhumed.cpp
2020-05-22 17:17:54 +02:00
Evan Ramos
262f2234c6
Duke3D: Disable dead code in implementation of undocumented SE 128
...
Avoids warning: bitwise or with non-zero value always evaluates to true [-Wtautological-bitwise-compare]
2020-05-22 17:11:16 +02:00
Jordon Moss
49deeb350e
Fix trains not moving spawn points with higher indexes than player count.
2020-05-22 17:11:16 +02:00
Richard C. Gobeille
d9b8f58558
Duke3d: make CON_GETFLORZOFSLOPE and CON_GETCEILZOFSLOPE TROR aware
2020-05-22 17:01:37 +02:00
Richard C. Gobeille
e2d79b4682
engine: add yax_getflorzofslope() and yax_getceilzofslope()
2020-05-22 17:01:36 +02:00
Richard C. Gobeille
5e677d6089
Duke3d: restore previous version of VM_ASSERT macro for compilers other than MSVC
2020-05-22 17:01:35 +02:00
Richard C. Gobeille
3ab314e95a
engine: make cliptestsector() (used by clipmove(), etc) TROR aware
...
This is intended to help with issues where enemies get stuck in thin TROR layers.
# Conflicts:
# source/build/src/clip.cpp
2020-05-22 17:00:55 +02:00
Richard C. Gobeille
14f3eb17f1
Duke3d: flip CON_USE_COMPUTED_GOTO dispatch macro logic around so the branch is taken less often
2020-05-22 17:00:12 +02:00
Richard C. Gobeille
34126a50be
Duke3d: change random_angle hack in CON_MOVE to match CON_AI
2020-05-22 17:00:11 +02:00
Richard C. Gobeille
b0902f916a
Duke3d: zero player return_to_center when setting horizRecenter to false
2020-05-22 17:00:10 +02:00
Richard C. Gobeille
2d4f6be147
Duke3d: convert several more VM error checks into VM_ASSERT statements
...
# Conflicts:
# source/duke3d/src/gameexec.cpp
2020-05-22 17:00:09 +02:00
Richard C. Gobeille
7fbcab3dc1
Duke3d: VM_ASSERT fix
2020-05-22 16:57:34 +02:00
Richard C. Gobeille
86e2f4ec8a
Revert "Duke3d: set .horizRecenter when handling SK_CENTER_VIEW"
...
This reverts commit ef06d8c3dba3e4ccf9388bf31404ab23ebdcb37e.
2020-05-22 16:57:01 +02:00
Richard C. Gobeille
1f82cfa3bf
Duke3d: replace VM_CONDITIONAL macro with a lambda
...
# Conflicts:
# source/duke3d/src/gameexec.cpp
2020-05-22 16:57:00 +02:00
Richard C. Gobeille
c0160065e4
Duke3d: this is intended to fix an issue where CON VM errors within a CON_FOR loop could cause an infinite loop
2020-05-22 16:56:24 +02:00
Richard C. Gobeille
8cf064b90c
Duke3d: add a few missing VM_ASSERT checks
2020-05-22 16:56:23 +02:00
Richard C. Gobeille
1a1112b4c1
Duke3d: fix OOB memory access in CON_FOR
2020-05-22 16:55:37 +02:00
Richard C. Gobeille
dc9c6ce2e6
Duke3d: allow SE_14_SUBWAY_CAR to move STAT_PLAYER sprites
...
Fixes #18 .
2020-05-22 16:54:12 +02:00
Richard C. Gobeille
23909f8ca1
Duke3d: hoist checks for ST_2_UNDERWATER outside of loops in SE_14_SUBWAY_CAR processing
2020-05-22 16:54:10 +02:00
Richard C. Gobeille
45fd214ffe
Duke3d: remove interpolation fixups from subway
...
These aren't needed anymore after Striker's patch to improve overall interpolation.
2020-05-22 16:54:09 +02:00
Richard C. Gobeille
b19d258870
Duke3d: fix APLAYER radius damage distance calculation regression
...
Fixes #20 .
2020-05-22 16:54:08 +02:00
Richard C. Gobeille
f5788c331e
Clarify clipupdatesector() log message a bit
...
# Conflicts:
# source/build/src/clip.cpp
2020-05-22 16:52:08 +02:00
Richard C. Gobeille
32ddabb12c
Derp...
...
Probably actually fixes #4 . Regardless, I want to note that this is really sub-optimal.
# Conflicts:
# source/duke3d/src/m32def.cpp
2020-05-22 16:51:27 +02:00
Richard C. Gobeille
61d82c8152
Fix really stupid error with CON_NULLOP branch detection
...
Fixes #4 .
# Conflicts:
# source/duke3d/src/gamedef.cpp
# source/duke3d/src/m32def.cpp
2020-05-22 16:50:28 +02:00
Richard C. Gobeille
94d098f8ef
Fix a crash with tabledivide64()
...
Fixes #1 .
2020-05-22 16:50:02 +02:00
Jordon Moss
79d2bb1bb8
Fix player sprite disappearing and chat indicator using the wrong sprite when typing.
2020-05-22 16:48:44 +02:00
Jordon Moss
658a96ce19
Re-added a check in VM_Move that probably should't have been removed.
2020-05-22 16:48:24 +02:00
Mitchell Richters
d98813f00f
SW: Allow sector object interpolations to be disabled for debugging.
...
New code is causing some issues. Upstream allow it to be toggled, so let's do that also.
2020-05-22 16:43:34 +02:00
Christoph Oelckers
bad17f29e0
- made some tweaks to the anti-z-fighting code in Polymost.
...
It now picks the minimum of the current formula and the one from before June 2017 - the current one was causing problems with sprites in the distance so now the old one is used as an upper bound.
2020-05-22 16:27:45 +02:00
Christoph Oelckers
683672a1be
- added missing game specific autoload handler.
2020-05-22 01:24:40 +02:00
Mitchell Richters
45cc95401f
SW: Make game compile after upstream backports.
2020-05-21 18:47:37 +02:00
Evan Ramos
0ab81904c2
SW: Allow Strafe Left and Right to turn vehicles
2020-05-21 18:47:37 +02:00
Evan Ramos
9d11c7dfb1
SW: Add FOV support.
2020-05-21 18:47:37 +02:00
Evan Ramos
edccdccfb4
SW: Fall back gracefully if map mirror tags are not fully correct
2020-05-21 18:47:37 +02:00
Evan Ramos
e6dd2741f3
SW: Instrument Saveables with debug_break
2020-05-21 18:47:37 +02:00
Evan Ramos
9eefd3d892
SW: Add PanelSpriteFunc values to saveables
2020-05-21 18:47:37 +02:00
NY00123
024d4e7297
SW: Afraid that we should disable almost all kinds of SOs in multiplayer
...
for now, due to possible jitters. Currently leaving remote-controlled SOs.
2020-05-21 18:47:37 +02:00
NY00123
ab99b3b79d
SW: Call FunctionKeys from getinput only if the latter is called
...
from faketimerhandler. This should fix the timing of playing an
RTS file's sound and sending the corresponding message.
2020-05-21 18:47:37 +02:00
NY00123
75c76f073a
SW: Fix aiming in coop view
2020-05-21 18:47:37 +02:00
NY00123
5baba6b9f3
SW: Don't interpolate a non-remote sector object controlled
...
by the player. Make sure looking up/down is still smooth.
2020-05-21 18:47:37 +02:00
NY00123
bdacab366a
SW: Disable interpolation of sector objects that
...
don't move as smooth as possible in multiplayer
2020-05-21 18:47:37 +02:00
NY00123
f3654d80e7
Store sector object interpolation data in saved game
2020-05-21 18:47:37 +02:00
NY00123
27675d9f4f
Remove the preceding sprite interpolation functions, not needed anymore
2020-05-21 18:47:37 +02:00
NY00123
221172311c
SW: Let's make use of interpso.*. Still need to do a few more things.
2020-05-21 18:47:37 +02:00
NY00123
2b1e32bf3d
SW: Add the currently-unused interpso.* files, enabling interpolation
...
of sector objects as whole groups of points and sprite angles.
The following goals are intended to be achieved with this code:
- Make it easy to let the user toggle sector object interpolation.
- Interpolate the angles of sprites carried by sector objects.
- Use the right amount of samples for interpolating a sector object,
depending on the players' locations, as done in the checks within
DoSector. Unfortunately, modifying DoSector itself to
unconditionally call MoveSectorObjects(sop, synctics) technically
changes the way sectors move (in the logical sense), and was
found out to make a specifically constructed user map unbeatable.
- Make it easy to disable interpolation of a whole sector object in
case of a need. This is especially important if such an object
is controlled by a player in multiplayer, mostly since this
isn't compatible with the way player prediction is working.
2020-05-21 18:47:37 +02:00
NY00123
f6a5572775
SW: Add the currently unused InterpolateSO option.
...
A known issue, which also applies to existing settings like the voxel
toggle, is that its value gets written to the saved game, and when such
a game is loaded, the its value gets overwritten by the one in the
saved game. Options should move to settings.cfg later, anyway.
2020-05-21 18:47:37 +02:00
NY00123
890a737152
SW: Add the oangdiff field to USER struct as suggested by Hendricks,
...
and use it in MovePoints. This will be used for interpolating
the angles of sprites carried by SOs soon.
2020-05-21 18:47:37 +02:00
NY00123
d467ce3eb8
SW: Interpolate the player's bob_z, based on suggestion by Striker.
...
Using pp instead of ppp seems to work better with prediction.
2020-05-21 18:47:37 +02:00
NY00123
10e4c3e121
sw/src/draw.cpp: Import from Duke3D the Polymost shadow drawing hacks
2020-05-21 18:47:37 +02:00
NY00123
33043b3b05
sw/src/network.cpp: Fix waitforeverybody in Master/Slave
...
modes. This uses SVN r1135 and r1143 as a reference.
2020-05-21 18:47:37 +02:00
NY00123
dea7c83361
sw/src/network.cpp: Fix sending of messages in Master/Slave.
...
Thanks Dynamo for spotting the bug.
2020-05-21 18:47:37 +02:00
NY00123
63743eea67
sw/src/draw.cpp:analyzesprites: Interpolate other players' sprites, in a
...
similar manner to what's done in Duke3D (with the addition of the angle).
There seem to be some jitters with this, mostly in Master/Slave mode.
Decreasing PAKRATE in mmulti.cpp might also increase the frequency
of this occuring in Peer-2-Peer mode.
2020-05-21 18:47:37 +02:00
NY00123
5a6dd2224f
sw/src/jsector.cpp:JS_DrawCameras: Make camera oscilation
...
less dependent on the frame rate.
It would probably be better to update this from the game loop side,
like in Duke3D, but it's still better than the preceding situation.
2020-05-21 18:47:37 +02:00
Mitchell Richters
471f0df69d
SW: Q16.16 refinements in DoPlayerDeathFollowKiller.
2020-05-21 18:47:37 +02:00
Mitchell Richters
14273dd200
SW: Add GetDeltaQ16Angle.
2020-05-21 18:47:37 +02:00
NY00123
36e6dee64c
Add PedanticQ16AngleFloor to sw/src/game.h and use it in DoPlayerTurn
2020-05-21 18:47:37 +02:00
NY00123
b84975e406
SW: Remove drive_oangvel from PLAYERstruct. We can use local variables instead.
2020-05-21 18:47:37 +02:00
NY00123
6aecd46dbc
SW - Hopefully a better way to decide if getinput should call
...
DoPlayerTurn/DoPlayerHorizon while input is tied to the frame rate:
Introduce the new player flags PF2_INPUT_CAN_TURN and PF2_INPUT_CAN_AIM.
Set PF2_INPUT_CAN_TURN if DoPlayerTurn can be called outside
of getinput. Similarly set PF2_INPUT_CAN_AIM if DoPlayerHorizon
can be called in this manner.
getinput will only call DoPlayerTurn/DoPlayerHorizon
if PF2_INPUT_CAN_TURN/PF2_INPUT_CAN_AIM is set. These flags are reset
right before the call to the player's current DoPlayerAction function.
For one example in which this assists, it's not always the
case that DoPlayerDeathFollowKiller may call DoPlayerTurn,
even if we assume that pp->input.q16angvel is never zero.
2020-05-21 18:47:37 +02:00
NY00123
e3197d206d
SW: Temporarily lock angle and horiz right upon player death
2020-05-21 18:47:37 +02:00
NY00123
bfd79d8bc2
sw/src/draw.cpp:drawscreen: Don't interpolate while the game is paused
2020-05-21 18:47:37 +02:00
NY00123
656e059c86
sw/src/game.cpp: Remove unused ReloadPromptMode variable
2020-05-21 18:47:37 +02:00
NY00123
8d748c19e4
Minor SW cleanup: Have a single declaration of
...
GamePaused within game.h. Do the same with ReloadPrompt.
2020-05-21 18:47:37 +02:00
NY00123
5a0e54b63e
SW: Migrate the player's RevolveAng field to Q16.16 format.
...
This fixes truncations of q16ang in MovePlayer. One known
fixed issue is a minor micro-shaking effect, reproduced
while standing on a non-moving SO (e.g., the bus in level 1).
The latter is also related to the use of camq16ang.
Based in idea on patch from mjr4077au.
2020-05-21 18:47:37 +02:00
NY00123
ef85bc58c3
sw/src/draw.cpp:drawscreen: Use GetQ16AngleFromVect for pointing
...
at a remote-controlled SO. In case PedanticMode == FALSE, this
leads to small improvements with aiming at the car in EXAMPLE.MAP.
2020-05-21 18:47:37 +02:00
NY00123
207240f277
Add GetQ16AngleFromVect wrapper function to sw/src/game.h
2020-05-21 18:47:37 +02:00
NY00123
6fcb8f7a6a
Add gethiq16angle and the getq16angle wrapper to the engine
2020-05-21 18:47:37 +02:00
NY00123
e2a789b8cc
SW: Lock angle and horiz right after teleporting to sprite
2020-05-21 18:47:37 +02:00
NY00123
8e9130c31a
sw/src/draw.cpp:drawscreen: Removing the check that pp->sop_control
...
is non-null seems to resolve the newly introduced interpolation
issue for looking up/down while controlling a sector object.
We can also remove the PF_DEAD test, since
game.cpp:getinput should lock any kind of aiming.
src/src/game.cpp:getinput: We now, however, need to further
lock turning here while controlling a sector object.
2020-05-21 18:47:37 +02:00
NY00123
4c73c11255
SW: Ensure the player's rendering angle is in sync with a rotating
...
sector. This re-introduces the angle interpolation in drawscreen
while sector object interpolation is in use.
A side-effect of this is that looking up/down is now less smooth
while controlling a sector object (e.g., a turret).
2020-05-21 18:47:37 +02:00
NY00123
0c4deb9298
sw/src/track.cpp:MovePlayer: We also need to update pp->camq16ang here.
...
Note that this angle is currently not interpolated,
as done for the sector.
2020-05-21 18:47:37 +02:00
NY00123
fd6df8e509
sw/src/track.cpp:MovePlayer: Missed this in preceding interpolation fixes
2020-05-21 18:47:37 +02:00
NY00123
1d1aa4581b
sw/src/track.cpp: If interpolation is enabled, also cover
...
the SO's midpoint. Fixes aiming at a remote controlled SO.
2020-05-21 18:47:37 +02:00
alexey.lysiuk
2974af3178
- fixed a bunch of compilation errors with MSVC 16.6.0
2020-05-21 10:29:59 +03:00
Mitchell Richters
559539bed2
- bump save versions for SW following the massive amount of changes.
2020-05-20 14:43:03 +02:00
Mitchell Richters
979c4846a4
SW: Fixes and cleanups following backporting upstream's input changes.
2020-05-20 14:43:03 +02:00
Mitchell Richters
2c0ad0dd12
SW: Fix compilation after backporting upstream's input changes.
2020-05-20 14:43:03 +02:00
NY00123
3913a05713
Use pragma pack in sw/src/network.h instead of the locally defined
...
PACKED macro. This is more consistent with the current Duke3D codebase,
and further fixes build with older versions of MinGW GCC, in which
attribute packed is broken without specifying -mno-ms-bitfields.
2020-05-20 14:43:03 +02:00
NY00123
ff49bc2209
SW: Remove unused wfe_Clock variable
2020-05-20 14:43:03 +02:00
NY00123
b0318afbdb
Fix usage of possibly wrong address in sw/src/player.cpp:DoPlayerHorizon
2020-05-20 14:43:03 +02:00
NY00123
10a5120e40
sw/src/network.cpp: I think that it's safe to enable
...
the sync check on the slave side in Master/Slave mode.
2020-05-20 14:43:03 +02:00
NY00123
0f761cdc77
SW: This hopefully resolves issues with leaving multiplayer games
2020-05-20 14:43:03 +02:00
NY00123
7749b0f7b9
SW: Interpolate sector objects in non-demo, single player games.
...
Let's see if this is breaking anything.
2020-05-20 14:43:03 +02:00
NY00123
25be14ccc0
Another change modifying saved game format in SW:
...
Increase MAXINTERPOLATIONS from 1024 to MAXSPRITES.
2020-05-20 14:43:03 +02:00
NY00123
bf0ace3748
SW change breaking compatibility with existing saved games:
...
Remove startofdynamicinterpolations and short_startofdynamicinterpolations.
2020-05-20 14:43:03 +02:00
NY00123
18602d41c9
SW: Reset the number of interpolations on level load
2020-05-20 14:43:03 +02:00
NY00123
47ac981a3a
SW: Let's replace the macro PEDANTIC_MODE with variable PedanticMode
2020-05-20 14:43:03 +02:00
NY00123
cc4f1f21f9
Interpolation fixes for SW:
...
draw.cpp: Fix the lack of interpolation while walking on a sector
object, like the bus roof or the floor of the train in Seppuku Station.
track.cpp: Make sure the player's location and angle aren't mistakenly
interpolated while standing on a moving sector object as a consequence.
2020-05-20 14:43:03 +02:00
NY00123
eaefc2576c
SW: Rename q16avel -> q16angvel and q16horz -> q16aimvel.
...
While it is understandable that avel and horz came from Duke3D,
having both q16horiz and q16horz in the updated SW_PACKET struct
can be confusing, and the alternative notation is more consistent
with the original struct field names of angvel and aimvel, as well
as the differing uses of the name angvel still present in player.cpp.
2020-05-20 14:43:03 +02:00
NY00123
952c578957
SW (DoPlayerTurn): The 180-degrees turns should be clockwise
2020-05-20 14:43:03 +02:00
NY00123
d07470ec4a
sw/src/player.cpp:PlayerAutoLook: Modify function to
...
test for PF_MOUSE_AIMING_ON only if PEDANTIC_MODE == FALSE
2020-05-20 14:43:03 +02:00
NY00123
6d9c657b11
SW: This is a better place for a slave which quits to set QuitFlag
2020-05-20 14:43:03 +02:00
NY00123
d50410f06b
SW: With the input tied to frame rate, disable aiming while the
...
player is dead, and also disable horizontal aiming while on a ladder.
2020-05-20 14:43:03 +02:00
NY00123
820e9ef5f9
SW: Use the old interpolation path in drawscreen if player is dead
2020-05-20 14:43:03 +02:00
NY00123
701b33da0d
SW: Make horiz centering a bit less immediate again
2020-05-20 14:43:03 +02:00
Mitchell Richters
cba38c5cfc
SW: Tie player input to frame rate.
2020-05-20 14:43:03 +02:00
Mitchell Richters
8b10f53450
SW: Add and use elapsedInputTicks and scaleAdjustmentToInterval
...
as one more step before tying input to frame rate.
2020-05-20 14:43:03 +02:00
NY00123
8085c8473d
SW: Add the q16ang and q16horiz fields to SW_PACKET. These
...
will be filled by faketimerhandler with the current player's
most recent camq16ang and camq16horiz values, respectively.
2020-05-20 14:43:03 +02:00
NY00123
de0ed067f5
SW: Modify DoPlayerTurn/DoPlayerHorizon to make it possible
...
for them to modify the player's camq16ang/camq16horiz field
instead of q16ang/q16horiz. Additionally, pass to them the
change in angle/horiz via a parameter, as an alternative
to direct access to the corresponding player input field.
2020-05-20 14:43:03 +02:00
NY00123
1f9e319d39
SW - First step in tying player input to frame rate:
...
Add the camq16ang and camq16horiz fields to the player struct.
With the exception of DoPlayerTurn and DoPlayerHorizon, whenever
code in player.cpp updates player's q16ang/q16horiz, also write
the updated values to camq16ang/camq16horiz. These variables'
preceding values are never used in these functions.
2020-05-20 14:43:03 +02:00
NY00123
b447feef91
sw/src/game.cpp:LoadLevel: Rename q16ang -> ang
2020-05-20 14:43:03 +02:00
NY00123
a2a1642f3d
SW: We can revert the change of siang to q16 now
2020-05-20 14:43:03 +02:00
NY00123
1d2aadd229
sw/src/draw.cpp:drawscreen: We can set the pp->si* fields just once,
...
a bit later.
2020-05-20 14:43:03 +02:00
NY00123
2d4766555c
SW: Revert commented out horiz->q16horiz renames in DSPRINTF strings
2020-05-20 14:43:03 +02:00
NY00123
a8a47a9eb0
SW: Fix typo in DoPlayerTeleportToSprite, following the migration to q16 angles
2020-05-20 14:43:03 +02:00
NY00123
4a8ad9b550
Fix multiplayer desync after the change to q16 angle and horiz.
...
Note that this includes non-portable unaligned accesses, but this
already applies to surrounding code. Just add comments for now.
2020-05-20 14:43:03 +02:00
NY00123
6faa73286f
SW: Trim q16 angle and horiz during demo playback/recording.
...
This uses the newly introduced PEDANTIC_MODE macro.
2020-05-20 14:43:03 +02:00
NY00123
8284fcba9a
sw/src/player.cpp:DoPlayerTurn: Increase turning precision
...
with q16 angle. This uses the new NORM_Q16ANGLE macro.
2020-05-20 14:43:03 +02:00
NY00123
1a46afaf27
Fix compatibility with existing demo files after the migration
...
to q16 angle and horiz. The original SW_PACKET structure,
named OLD_SW_PACKET here, is used while accessing demo files.
2020-05-20 14:43:03 +02:00
Mitchell Richters
0431f5ffed
SW: Refinements for Q16.16 implementation.
2020-05-20 14:43:03 +02:00
Mitchell Richters
a4fdabd860
SW: Use Q16.16 for angle.
2020-05-20 14:43:03 +02:00
Mitchell Richters
2bf2055c65
SW: Use Q16.16 for horiz.
2020-05-20 14:43:03 +02:00
NY00123
c32a8cab29
SW: Revert the changes from JFSW commit 7d0deafe81b0ffa30d77cfe242e454f8b4487a1f
...
related to the definitions of RANDOM_NEG in bunny.cpp, ripper.cpp
and ripper2.cpp. Do so in a way that isn't re-introducing compiler
warnings. This partially fixes compatibility with demos made for SW 1.2.
Additionally, replace the 3 separate definitions of RANDOM_NEG
with a common one within game.h.
From-SVN: r8798
2020-05-20 14:43:03 +02:00
NY00123
00daf6295e
SW: Fix a few memory access errors related to demo support
...
From-SVN: r8797
2020-05-20 14:43:03 +02:00
NY00123
6d537f6d75
Pack the struct SW_PACKET. While this makes demo playback
...
functional with existing demo files, the code is known
to be incompatible with demos made for SW 1.2.
From-SVN: r8792
2020-05-20 14:43:03 +02:00
Mitchell Richters
83936bf5eb
Revert "SW: Improve main game loop."
...
This reverts commit e878c5bab8
.
Revert "SW: Use Q16.16 for horiz."
This reverts commit f07a0ae01e
.
Revert "SW: Use Q16.16 for angle."
This reverts commit 1ecc74c2ec
.
Revert "SW: Minor repairs for Q16.16 implementation."
This reverts commit d78d046bad
.
Revert "SW: Process input at frame rate."
This reverts commit c162014dab
.
Revert "SW: Amendments to accommodate changes in master."
This reverts commit eaa51138ad
.
Revert "SW: Fix incorrectly declared function input type."
This reverts commit 1cdd5b08d8
.
Revert "SW: Amend scaleAdjustmentToInterval() with correct value for SW."
This reverts commit d4dd737cd5
.
Revert "SW: Refinements to new input code."
This reverts commit 5ebc65a1fb
.
Revert "SW: Adjust look and snap up/down keys and slightly tune PLAYER_TURN_AMOUNT."
This reverts commit 2852536dbf
.
Revert "SW: Get PLAYER_TURN_SCALE to be just right."
This reverts commit 4630c8a0b7
.
Revert "SW: Make map follow mode work better."
This reverts commit 8e94c48eff
.
Revert "SW: Remove line accidentally left from 'MoveScrollMode2D()'."
This reverts commit 5db8047b41
.
Revert "Fix multiplayer desync after the change to q16 angle and horiz."
This reverts commit 3bc46078b8
.
Revert "SW: Revert commented out horiz->q16horiz renames in DSPRINTF strings"
This reverts commit 537313f620
.
Revert "sw/src/draw.cpp:drawscreen: We can set the pp->si* fields just once,"
This reverts commit d2e9595980
.
Revert "sw/src/game.cpp:LoadLevel: Rename q16ang -> ang"
This reverts commit a178961a3e
.
Revert "SW: Minor tweaks."
This reverts commit 377ba68344
.
Revert "SW: Further refine turning and optimise horizon adjustment."
This reverts commit 039022d9ac
.
Revert "SW: Don't process input at frame rate if ScrollMode2D is true."
This reverts commit 1aa1e62c4d
.
Revert "SW: Use a bit more Q16.16 in places."
This reverts commit 40ca656f38
.
Revert "SW: Use the old interpolation path in drawscreen if player is dead"
This reverts commit 2d73466425
.
Revert "SW: Smooth out 180 degree turn landing and replace some fix16_min/max with fix16_clamp."
This reverts commit 0996e87f79
.
Revert "Change Next/Previous Weapon button handling for Shadow Warrior."
This reverts commit f6b8ca6a22
.
Revert "SW: Make "Center_View" key return smoothly."
This reverts commit 23c401fbc2
.
Revert "SW: Use the old interpolation path in drawscreen if player is dead"
This reverts commit 43ec16eb55
.
Revert "Interpolation fixes for SW:"
This reverts commit ac8a7ecfbd
.
Revert "SW: Reset the number of interpolations on level load"
This reverts commit 04bf8499e7
.
Revert "Another change modifying saved game format in SW:"
This reverts commit e80888523e
.
Revert "SW: Interpolate sector objects in non-demo, single player games."
This reverts commit 996ab77cf4
.
Revert "- fixed merge errors in SW."
This reverts commit b8cfa94568
.
Revert "- fix interpolation stutters when opening console for SW."
This reverts commit 99fdbfb6cb
.
Revert "- reset buttonMap button states after returning from pause for SW (stops keys acting stuck down if down prior to pausing)."
This reverts commit 693b6955da
.
Revert "SW: fix stupid input scaling bug"
This reverts commit 1c79e6e17c
.
Revert "SW: Make vehicle input better."
This reverts commit 670a53c402
.
Revert "SW: Change fix16_from_float() to fix16_from_int() that was changed in 4630c8a0b7
but should have been reverted in 377ba68344e34495638c6fa7685ff78c9a0ed6f8."
This reverts commit 423c9da071
.
Revert "SW: Remove ScrollMode2D extern boolean and move into PLAYERp struct."
This reverts commit 31eb55c1fa
.
2020-05-20 14:43:03 +02:00
Mitchell Richters
31eb55c1fa
SW: Remove ScrollMode2D extern boolean and move into PLAYERp struct.
2020-05-19 12:55:32 +02:00
Mitchell Richters
423c9da071
SW: Change fix16_from_float() to fix16_from_int() that was changed in 4630c8a0b7
but should have been reverted in 377ba68344
.
2020-05-19 12:55:32 +02:00
Mitchell Richters
670a53c402
SW: Make vehicle input better.
...
- Define new boolean 'on_vehicle' in PLAYERp struct for use with interpolating while on vehicle and other checks.
- Move horizon code back into separate DoPlayerHorizon() function. Adjusting horizon while in vehicle must come at the end of the DoPlayerOperate*() function.
- Make DoPlayerHorizon() accessible in game.cpp.
- Change code in DoPlayerHorizon() to process according how 'pp->on_vehicle' is set.
- Make scaleAdjustmentToInterval available outside of getinput().
- Don't process input at frame-rate while on a vehicle. Vehicle code is too difficult to process outside of the game's clock.
Partially based on NY00123's upstream implementation of tying player input to frame-rate.
2020-05-19 12:55:32 +02:00
Mitchell Richters
58bb2e149b
SW: Fix broken interpolation pathway following changes in 43ec16eb55
.
...
What 43ec16eb55
intends to do was already done via 2d73466425
, however I applied the if statement in the opposite order so when it was cherry-picked again, the pathway was actually reversed - interpolating when alive and not when dead.
Rather than re-apply the opposite order, I've made the if statement match upstream for more consistency and to avoid further conflicts.
2020-05-15 15:00:58 +02:00
Mitchell Richters
9a144a9afb
- bump save versions for Duke3D following changes to DukePlayer_t struct.
2020-05-14 15:15:59 +02:00
Mitchell Richters
10142eee6b
RR: Move lastInputTicks from DukePlayer_t struct to PlayerData_t struct.
...
Better location for it since it never needs to be sent across the wire in a multiplayer situation. It's now also located where the other properties to do with input being tied to frame-rate are located.
2020-05-14 10:00:16 +02:00
Mitchell Richters
1f807792af
Duke3D: Move lastInputTicks from DukePlayer_t struct to PlayerData_t struct.
...
Better location for it since it never needs to be sent across the wire in a multiplayer situation. It's now also located where the other properties to do with input being tied to frame-rate are located.
2020-05-14 10:00:16 +02:00
Mitchell Richters
22ae4182b5
RR: Properly reset pPlayer->lastInputTicks in G_EnterLevel() since all calls to P_ResetPlayer() are commented out.
...
Repairs issue with player spinning out of control when entering a new level.
2020-05-13 15:12:44 +02:00
Mitchell Richters
d411defd04
RR: Reset one_eighty_count if player angle input is detected.
2020-05-13 15:12:44 +02:00
Mitchell Richters
2c13e746c5
Duke3D: Reset one_eighty_count if player angle input is detected.
2020-05-13 15:12:44 +02:00
Mitchell Richters
5f59c1364c
RR: Process one_eighty_count (Turn-around key) at frame-rate.
2020-05-13 15:12:44 +02:00
Mitchell Richters
2129d3b4e7
Duke3D: Process one_eighty_count (Turn-around key) at frame-rate.
2020-05-13 15:12:44 +02:00
Mitchell Richters
5299a0625d
RR: Process q16rotscrnang and q16look_ang at frame-rate.
...
Had to move lastInputTicks to the DukePlayer_t struct. When first running P_GetInput(), the initial value of elapsedInputTicks is the actual value of timerGetHiTicks(), which is into the thousands. This high initial value was affecting how scaleAdjustmentToInterval() scales as it was taking an initial q16look_ang value of 512 and overflowing the fix16_t type, making it -32,768.
2020-05-13 15:12:44 +02:00
Mitchell Richters
22e9396feb
RR: Promote look_ang to Q16.16.
2020-05-13 15:12:44 +02:00
Mitchell Richters
21e58160bf
RR: Promote rotscrnang to Q16.16.
2020-05-13 15:12:44 +02:00
Mitchell Richters
3af6ad697b
Duke3D: Process q16rotscrnang and q16look_ang at frame-rate.
...
Had to move lastInputTicks to the DukePlayer_t struct. When first running P_GetInput(), the initial value of elapsedInputTicks is the actual value of timerGetHiTicks(), which is into the thousands. This high initial value was affecting how scaleAdjustmentToInterval() scales as it was taking an initial q16look_ang value of 512 and overflowing the fix16_t type, making it -32,768.
2020-05-13 15:12:44 +02:00
Mitchell Richters
de0cc8f164
Duke3D: Promote look_ang to Q16.16.
2020-05-13 15:12:44 +02:00
Mitchell Richters
ac4b33a770
Duke3D: Promote rotscrnang to Q16.16.
2020-05-13 15:12:44 +02:00
Mitchell Richters
3749a89d6a
Build: Change renderSetRollAngle() to take a float and not an int32_t.
2020-05-13 15:12:44 +02:00
Mitchell Richters
bece408548
Exhumed: Set scaleAdjustmentToInterval to correct value for game's ticrate.
2020-05-13 15:10:18 +02:00
Richard C. Gobeille
98f4bac708
Exhumed: fix stupid input scaling bug
2020-05-11 21:27:29 +02:00
Richard C. Gobeille
1c79e6e17c
SW: fix stupid input scaling bug
2020-05-11 21:27:29 +02:00
Richard C. Gobeille
c5e4c9631d
RR: fix stupid input scaling bug
2020-05-11 21:27:29 +02:00
Mitchell Richters
e7621b4e05
RR: Properly scale tilt_status on vehicles with input being tied to frame-rate.
2020-05-11 21:27:29 +02:00
Mitchell Richters
da04a1d0aa
RR: Return to centre improvements.
...
- Lock player horizon while returning to centre.
- Precisely scale player's horizon in time with rate at which 'pPlayer->return_to_center' decrements.
- Check player's horizon is between 99 and 101 degrees, not 99.9 and 100.1. The extra 0.9 degrees of precision is not noticeable and is dramatically slower.
- Reset 'pPlayer->return_to_center' to '0' when player's horizon is at 100.
- Match q16horizoff precision to precision of q16horiz.
2020-05-11 21:27:29 +02:00
Mitchell Richters
549ff75b99
RR: Change horizSkew from fix16_t to int8_t.
...
- No point converting an int to fix16, only to convert it back. It's only ever an unrounded integer.
2020-05-11 21:27:29 +02:00
Mitchell Richters
742974c61c
Duke3D: Return to centre improvements.
...
- Lock player horizon while returning to centre.
- Precisely scale player's horizon in time with rate at which 'pPlayer->return_to_center' decrements.
- Check player's horizon is between 99 and 101 degrees, not 99.9 and 100.1. The extra 0.9 degrees of precision is not noticeable and is dramatically slower.
- Reset 'pPlayer->return_to_center' to '0' when player's horizon is at 100.
- Match q16horizoff precision to precision of q16horiz.
2020-05-11 21:27:29 +02:00
Mitchell Richters
ae353b93fb
Duke3D: Change horizSkew from fix16_t to int8_t.
...
- No point converting an int to fix16, only to convert it back. It's only ever an unrounded integer.
2020-05-11 21:27:29 +02:00
Mitchell Richters
c7d3753c2b
Revert "RR: Fix hard landing from preventing vertical mouse movement with player input tied to frame-rate."
...
This reverts commit 4bc105ec07
.
2020-05-11 21:27:29 +02:00
Mitchell Richters
d088795f28
Revert "Duke3D: Fix hard landing from preventing vertical mouse movement with player input tied to frame-rate."
...
This reverts commit 6dcd83b734
.
2020-05-11 21:27:29 +02:00
Mitchell Richters
9cc86bd003
RR: Restore old interpolations when camera is chasing actor who whacked you (idea from NY00123).
2020-05-11 21:26:34 +02:00
Mitchell Richters
d30bf548bd
Duke3D: Restore old interpolations when camera is chasing actor who whacked you (idea from NY00123).
2020-05-11 21:26:34 +02:00
Richard C. Gobeille
3b6b1a3063
Fix stupid typo that broke the camera aiming at the enemy that killed you in Duke3D
2020-05-11 21:26:34 +02:00
Mitchell Richters
aad2b3a782
- hacks to make IF launch again after gamefunc changes in 57cb22f135
.
...
Also re-ordered gamefuncs to 1:1 match EDuke32.
2020-05-11 13:30:14 +02:00
Mitchell Richters
8730bd9dda
- allow game's clock to keep running while paused (restores interpolations/animations in menus).
2020-05-08 21:23:02 +02:00
Mitchell Richters
401e87f3d9
RR: Remove left-over else statement that should have been removed in 0ec2b87.
2020-05-08 10:51:59 +02:00
Mitchell Richters
d58f90de19
RR: Properly lock player movement when necessary while in a vehicle.
...
- This makes map follow mode work as expected again.
2020-05-08 10:51:59 +02:00
Mitchell Richters
9c27f49d42
RR: restore proper vehicle accuracy to RedNukem code-base.
...
- I tried to do something smarter originally but want the values to be 100% accurate to upstream.
2020-05-08 10:51:59 +02:00
Mitchell Richters
4bc105ec07
RR: Fix hard landing from preventing vertical mouse movement with player input tied to frame-rate.
2020-05-08 10:51:59 +02:00
Mitchell Richters
6dcd83b734
Duke3D: Fix hard landing from preventing vertical mouse movement with player input tied to frame-rate.
2020-05-08 10:51:59 +02:00
Mitchell Richters
2e3bcdadd6
Duke 3D & RR: Repair issue where player would not return to centre following hard landing.
...
- Accidentally left in while merging changes from upstream.
- Change restores accuracy to game play in that a hard landing now returns the player's view to center.
2020-05-08 10:51:59 +02:00
Richard C. Gobeille
08bc2fbbcd
RR: set .horizRecenter when handling SK_CENTER_VIEW
...
This seems so obvious that I almost think I intentionally left it out before, but I can't remember why I would have.
2020-05-08 10:51:59 +02:00
Richard C. Gobeille
8225d20e23
RR: zero .horizAngleAdjust and .horizSkew after checking playerquitflag instead of before
...
I don't think this actually makes a difference, but it's more consistent.
2020-05-08 10:51:59 +02:00
Richard C. Gobeille
bcf4903505
RR: zero .horizSkew in P_DoJetpack()
2020-05-08 10:51:59 +02:00
Richard C. Gobeille
818e14448d
RR: zero player .horizRecenter, .horizSkew, and .horizAngleAdjust in P_ResetPlayer()
2020-05-08 10:51:59 +02:00
Richard C. Gobeille
3f7914ad57
Duke3d: set .horizRecenter when handling SK_CENTER_VIEW
...
This seems so obvious that I almost think I intentionally left it out before, but I can't remember why I would have.
2020-05-08 10:51:59 +02:00
Richard C. Gobeille
c53edd9e5a
Duke3d: zero .horizAngleAdjust and .horizSkew after checking playerquitflag instead of before
...
I don't think this actually makes a difference, but it's more consistent.
2020-05-08 10:51:59 +02:00
Richard C. Gobeille
26b87e3aa0
Duke3d: zero .horizSkew in P_DoJetpack()
2020-05-08 10:51:59 +02:00
Richard C. Gobeille
0ec9dd9a14
Duke3d: zero player .horizRecenter, .horizSkew, and .horizAngleAdjust in P_ResetPlayer()
2020-05-08 10:51:59 +02:00
Mitchell Richters
ca994b31c9
SW: Set certain sync keys prior to checking them in the same function.
...
- Ensures action occurs within the requested frame and not the next.
2020-05-08 10:51:59 +02:00
Mitchell Richters
7b35e04c0c
- reset buttonMap button states after returning from pause for Exhumed (stops keys acting stuck down if down prior to pausing).
2020-05-06 10:51:08 +02:00
Mitchell Richters
419329b5b2
- standardise main loop for Exhumed following changes to Duke3D/RR/SW main loops.
2020-05-06 10:51:08 +02:00
Mitchell Richters
693b6955da
- reset buttonMap button states after returning from pause for SW (stops keys acting stuck down if down prior to pausing).
2020-05-06 10:51:08 +02:00
Mitchell Richters
99fdbfb6cb
- fix interpolation stutters when opening console for SW.
2020-05-06 10:51:08 +02:00
Mitchell Richters
d99c907acb
- reset buttonMap button states after returning from pause for Duke3D (stops keys acting stuck down if down prior to pausing).
2020-05-06 10:51:08 +02:00
Mitchell Richters
1bb3640bc9
- fix interpolation stutters when opening console for Duke3D.
2020-05-06 10:51:08 +02:00
Mitchell Richters
4e1905e630
- reset buttonMap button states after returning from pause for RR (stops keys acting stuck down if down prior to pausing).
2020-05-06 10:51:08 +02:00
Mitchell Richters
e0e06284a5
- fix interpolation stutters when opening console for RR.
2020-05-06 10:51:08 +02:00
alexey.lysiuk
d8e3d60e85
- fixed compilation of Cocoa backend
2020-05-05 10:55:35 +03:00
Mitchell Richters
68a0ead5f0
- fix Linux builds following reset of master branch. ( #44 )
...
* - fix Linux builds following reset of master branch.
* - fix Linux Clang CI failure.
* - change '#ifdef __linux__' to '#ifndef _WIN32' as requested/required.
* - initialise batchrun in proper spot.
2020-05-05 10:45:21 +03:00
Christoph Oelckers
44519cc877
- added missing dirent.h include to findfile.h.
2020-05-04 00:25:27 +02:00
Christoph Oelckers
b8cfa94568
- fixed merge errors in SW.
2020-05-04 00:04:54 +02:00
Christoph Oelckers
e6031654f2
- uncommented the compatibility case in updatesector.
...
In the RedNukem frontend this was causing view interpolation glitches, this probably should be disabled a bit more targeted but right now I do not know yet which call causes the problem
2020-05-04 00:03:51 +02:00
Richard C. Gobeille
b21a4d5880
Duke3d: fix stupid input scaling bug
2020-04-16 00:03:06 +02:00
NY00123
996ab77cf4
SW: Interpolate sector objects in non-demo, single player games.
...
Let's see if this is breaking anything.
# Conflicts:
# source/sw/src/draw.cpp
# source/sw/src/game.cpp
# source/sw/src/game.h
# source/sw/src/interp.cpp
# source/sw/src/track.cpp
2020-04-16 00:03:05 +02:00
NY00123
e80888523e
Another change modifying saved game format in SW:
...
Increase MAXINTERPOLATIONS from 1024 to MAXSPRITES.
# Conflicts:
# source/sw/src/interp.cpp
# source/sw/src/interp.h
2020-04-16 00:03:04 +02:00
NY00123
04bf8499e7
SW: Reset the number of interpolations on level load
2020-04-16 00:03:04 +02:00
NY00123
ac8a7ecfbd
Interpolation fixes for SW:
...
draw.cpp: Fix the lack of interpolation while walking on a sector
object, like the bus roof or the floor of the train in Seppuku Station.
track.cpp: Make sure the player's location and angle aren't mistakenly
interpolated while standing on a moving sector object as a consequence.
# Conflicts:
# source/sw/src/track.cpp
2020-04-16 00:03:03 +02:00
NY00123
43ec16eb55
SW: Use the old interpolation path in drawscreen if player is dead
...
# Conflicts:
# source/sw/src/draw.cpp
2020-04-16 00:03:02 +02:00
Mitchell Richters
1ce4081d37
- change 'refreshfreq' from int to double.
...
A double is already used in CalcSmoothRatio. Further to this, displays that use TV standard frequencies do not use perfect 60Hz frequencies, but frequencies such as 59.94Hz, 23.976Hz (precisely, 24*(1000/1001) = 23.9760239760239760...) etc.
Reference: 'https://www.ghacks.net/2010/04/28/59-hertz-refresh-rate/ ', 'http://www.paradiso-design.net/videostandards_en.html '.
# Conflicts:
# source/build/include/baselayer.h
# source/platform/posix/cocoa/i_main.mm
2020-04-16 00:03:00 +02:00
Mitchell Richters
22a940c922
- don't make assumptions about refreshfreq when calculating smoothratio.
2020-04-16 00:01:51 +02:00
Mitchell Richters
5c3c55b6cd
- fix issues with Linux SDL builds following changes to refreshfreq.
2020-04-16 00:01:49 +02:00
Mitchell Richters
587a5d5d9a
- fix loading of CRC cache if file does not exist.
2020-04-16 00:01:13 +02:00
Mitchell Richters
4654fd648d
Renderer: Disable models by default since they're not supported currently.
...
- Better to see sprites in HRPs than nothing on-screen.
2020-04-14 00:00:23 +02:00
Mitchell Richters
23c401fbc2
SW: Make "Center_View" key return smoothly.
2020-04-14 00:00:22 +02:00
Mitchell Richters
db428a4f03
All Games: Make more precise use of 'scaleAdjustmentToInterval()'.
...
- Inline function returns a double, therefore we should use it and not potentially truncate the mantissa.
- Use divisors to get true numbers of some floats (3.333 -> 10/3, etc).
- Remove a few brackets/parentheses where possible from what are already exceedingly bracketed lines.
2020-04-14 00:00:21 +02:00
alexey.lysiuk
e6431a756b
- fixed error when Steam config cannot be opened
...
https://forum.zdoom.org/viewtopic.php?t=68193
2020-04-13 23:59:53 +02:00
Mitchell Richters
654ab5bee4
- Repair compiling on Arch Linux with GCC 9.3.0.
...
'countof()' was not available.
2020-04-13 23:59:51 +02:00
alexey.lysiuk
e220b47469
- require ZMusic library for non-MSVC targets
...
This improves error reporting when ZMusic was not found during CMake configuration step
2020-04-13 23:59:50 +02:00
Mitchell Richters
f6b8ca6a22
Change Next/Previous Weapon button handling for Shadow Warrior.
...
- Makes consistent with Duke 3D, RR and Blood.
2020-04-13 23:59:49 +02:00
Mitchell Richters
f302ccb715
Change Next/Previous Weapon button handling for Blood.
...
- Makes consistent with Duke 3D and RR.
- Makes weapon selection work in Windows until refactoring can occur.
2020-04-13 23:59:48 +02:00
Mitchell Richters
02d436f802
Change Next/Previous Weapon button handling for Duke and RR games.
...
- Resolves inability to change weapons under SDL-based environments as reported at https://forum.zdoom.org/viewtopic.php?f=340&t=67232#p1142970
2020-04-13 23:59:47 +02:00
Mitchell Richters
0996e87f79
SW: Smooth out 180 degree turn landing and replace some fix16_min/max with fix16_clamp.
2020-04-13 23:59:17 +02:00
NY00123
2d73466425
SW: Use the old interpolation path in drawscreen if player is dead
2020-04-13 23:59:16 +02:00
NY00123
120abb1029
SW: With the input tied to frame rate, disable aiming while the
...
player is dead, and also disable horizontal aiming while on a ladder.
2020-04-13 23:59:15 +02:00
Mitchell Richters
40ca656f38
SW: Use a bit more Q16.16 in places.
2020-04-13 23:59:14 +02:00
Christoph Oelckers
156a225ff4
- renamed global palookup variable.
...
Since the same word gets used in text messages and local variables in the game code it is easier this way to search for it and facilitate its transition to the translation table management in PaletteContainer.
2020-04-13 23:58:46 +02:00
Christoph Oelckers
fda4293013
- draw the movie franes outside of the tile system to reduce the palette maintenance.
...
The movie code has always been the part causing the most issues because it alters the palettes - the rest treats them as static data.
2020-04-13 23:58:45 +02:00
Christoph Oelckers
fac004b4d2
- palette code cleanup
2020-04-13 23:58:44 +02:00
Christoph Oelckers
f74ba52990
- compile fixes.
2020-04-12 05:40:16 +02:00
Christoph Oelckers
d46ea7481f
- handle RRRA E1L2's fog in the shader instead of hacking the shade tables.
2020-04-12 08:30:43 +02:00
Christoph Oelckers
ee11fba4e7
- cleaned out some software rendering-only palette code from Blood.
2020-04-12 08:30:43 +02:00
Christoph Oelckers
29f95e2000
- added 3 missing files.
2020-04-12 08:30:43 +02:00
Christoph Oelckers
4d1d90d712
- use a global constant for the transparent palette index instead of hardcoding it to the 255 literal everywhere.
...
- added the needed glue to allow palettecontainer.cpp to compile.
2020-04-12 08:30:43 +02:00
Christoph Oelckers
ac07af7028
- m_png.cpp is common.
2020-04-12 08:30:42 +02:00
Christoph Oelckers
2c5d081799
- added the special colormaps for the texture compositor.
2020-04-12 08:30:42 +02:00
Christoph Oelckers
f1040fa699
- match with GZDoom's console code, move to 'common'.
2020-04-12 08:30:42 +02:00
Christoph Oelckers
57cb22f135
- console code matching with GZDoom
...
Refactored the buttons to be definable locally per game for easier handling of differing input.
2020-04-12 08:30:41 +02:00
Christoph Oelckers
14cdfa3f3c
- more file matching.
...
- moved c_con to Duke subproject because it's the only one using this stuff.
2020-04-12 08:30:41 +02:00
Christoph Oelckers
2883553ed2
- moved file lookup functions to utilities and matched to GZDoom's version.
2020-04-12 08:30:41 +02:00
Christoph Oelckers
a60a0eeefa
- use GZDoom's CMake based updaterevision tool.
2020-04-12 08:30:41 +02:00
Christoph Oelckers
8e87674d4c
- backend code matching with GZDoom
2020-04-12 08:30:40 +02:00
Christoph Oelckers
0ca4bbd0c4
- changed some menu related names to match GZDoom.
2020-04-12 08:30:40 +02:00
Christoph Oelckers
5584c726ba
- file system update and adjustment.
2020-04-12 08:30:40 +02:00
Christoph Oelckers
ac32194079
- code cleanup / removal of imgui.
2020-04-12 08:30:39 +02:00
Christoph Oelckers
f671eb622f
- migrated to GZDoom's utility code.
2020-04-12 08:30:39 +02:00
Christoph Oelckers
2a9813eb5c
- code matching with GZDoom.
2020-04-12 08:30:38 +02:00
Christoph Oelckers
797640c494
- use ZDoom's memory allocation wrapper instead of EDuke's.
...
This simply plays nicer with the compiler's diagnostics.
2020-04-12 08:30:38 +02:00
Christoph Oelckers
66ecb05eb8
- use Printf as the only command to print to the console.
...
All uses of OSD_Printf, initprintf etc. have been renamed.
2020-04-12 08:30:38 +02:00
Christoph Oelckers
588162e083
- removed redundant MAKE_ID definition.
2020-04-12 08:30:37 +02:00
Christoph Oelckers
69b8976c66
- GZDoom timer code added.
...
This may come in handy later.
2020-04-12 08:30:37 +02:00
Christoph Oelckers
672a9eb912
- removed the unused CompressedFileWriter class.
2020-04-12 08:30:37 +02:00
Christoph Oelckers
6ef93ba514
- match cmdlib.cpp/.h with GZDoom.
2020-04-12 08:30:36 +02:00
Christoph Oelckers
e2f5e8fe34
- renamed 'common' to 'core'.
...
We'll need 'common' for something else.
2020-04-12 08:30:36 +02:00
Mitchell Richters
c23351a4b9
Menu System: Add confirmation to FOptionMenuItemSafeCommand()
...
- Resolves 'https://forum.zdoom.org/viewtopic.php?f=340&t=67721 '.
2020-04-10 10:29:50 +02:00
Mitchell Richters
4eb7b11ea6
Blood: Workaround for map view showing 1px of non-border at the bottom.
2020-04-09 08:14:10 +02:00
Mitchell Richters
c750614211
SW: Workaround for map view showing 1px of non-border at the bottom.
2020-04-09 08:14:10 +02:00
Christoph Oelckers
6589d31678
0.6.0
...
- fixed compilation.
2020-04-08 00:51:46 +02:00
Christoph Oelckers
3c3ea281f0
- fixed compilation.
2020-04-08 00:40:02 +02:00
Richard C. Gobeille
01bb5491af
Rename G_HaveActor() and G_DefaultActorHealth() for clarity
...
The new names are G_TileHasActor() and G_DefaultActorHealthForTile().
# Conflicts:
# source/duke3d/src/duke3d.h
2020-04-08 00:38:50 +02:00
Richard C. Gobeille
c8f15f8e4b
Demote labeltype to uint8_t
2020-04-08 00:38:49 +02:00
NY00123
3610609659
Add a workaround for possible rounding errors in calculations of
...
sintable and radarang. sintable[512] was different in a 32-bit build.
From-SVN: r8796
2020-04-08 00:38:48 +02:00
Evan Ramos
b54a6e0565
WT Incinerator projectile velocity hotfix from Nuke.YKT
...
From-SVN: r8791
2020-04-08 00:38:48 +02:00
Evan Ramos
fd025374d4
Implement WT episode 5 ending
...
From-SVN: r8790
2020-04-08 00:38:47 +02:00
Evan Ramos
52eab0545b
Implement WT's widescreen tiles
...
From-SVN: r8789
# Conflicts:
# source/duke3d/src/menus.cpp
# source/duke3d/src/premap.cpp
# source/duke3d/src/sbar.h
2020-04-08 00:38:46 +02:00
Evan Ramos
e6940cd591
Implement hardcoded WT stuff
...
Includes the new weapon, enemy projectiles, and breakable objects.
Patch from Nuke.YKT.
I edited it some, mostly to add the proper "if (WORLDTOUR)" checks.
From-SVN: r8788
# Conflicts:
# source/duke3d/src/namesdyn.cpp
2020-04-08 00:38:45 +02:00
Evan Ramos
0d576cf798
Fix negative viewtypes to match what World Tour expects
...
From-SVN: r8787
2020-04-08 00:38:45 +02:00
Evan Ramos
2dbbfd4db2
Cleanup some Duke game logic, mostly to allow easier chaining to the default case
...
From-SVN: r8786
2020-04-08 00:38:44 +02:00
Richard C. Gobeille
ec3e8bffe1
Are you kidding me? This fixes the elevator in Duke3D E2L3.
2020-04-08 00:38:43 +02:00
Richard C. Gobeille
53baf228eb
Fix stupid typo that broke the camera aiming at the enemy that killed you in Duke3D
2020-04-08 00:38:43 +02:00
Christoph Oelckers
eaf27c2583
- fixed joystick CVAR use.
2020-04-08 00:38:42 +02:00
Mitchell Richters
1aa1e62c4d
SW: Don't process input at frame rate if ScrollMode2D is true.
...
- ScrollMode2D was running at the frame rate, turning off vsync made it unacceptable.
2020-04-06 21:28:36 +02:00
Mitchell Richters
b801a73db9
Exhumed: Fix look up/down in line with input amendments.
2020-04-06 08:06:38 +02:00
Mitchell Richters
2ddc442e48
Exhumed: Improve player input.
...
- Input velocity now consistent irrespective of frame rate.
- Angle and horizon calculated at frame rate.
- Replace usage of F16() macro with fix16_from_int() in GetInterruptKeys().
Note: Known issues with look up/down keys that is to be repaired.
2020-04-06 08:06:38 +02:00
Mitchell Richters
039022d9ac
SW: Further refine turning and optimise horizon adjustment.
...
- Move DoPlayerTurn() into getinput(). Vehicle code remains external for now.
- Remove horizAdjust boolean and always do horizon code in getinput(). Eliminates single off frame at start of a new level until DoPlayerMove() is called at least once.
2020-04-05 21:28:25 +02:00
Mitchell Richters
377ba68344
SW: Minor tweaks.
2020-04-05 21:28:25 +02:00
NY00123
a178961a3e
sw/src/game.cpp:LoadLevel: Rename q16ang -> ang
2020-04-05 21:28:25 +02:00
NY00123
d2e9595980
sw/src/draw.cpp:drawscreen: We can set the pp->si* fields just once,
...
a bit later.
2020-04-05 21:28:25 +02:00
NY00123
537313f620
SW: Revert commented out horiz->q16horiz renames in DSPRINTF strings
2020-04-05 21:28:25 +02:00
NY00123
3bc46078b8
Fix multiplayer desync after the change to q16 angle and horiz.
...
Note that this includes non-portable unaligned accesses, but this
already applies to surrounding code. Just add comments for now.
2020-04-05 21:28:25 +02:00
Christoph Oelckers
536ed3827d
- removed debug messages in Blood's savegame code.
2020-04-03 23:35:52 +02:00
Mitchell Richters
5db8047b41
SW: Remove line accidentally left from 'MoveScrollMode2D()'.
2020-04-02 08:18:23 +02:00
Christoph Oelckers
a7caa7b63c
- fixed some reporting stuff for Blood.
2020-04-01 22:35:56 +02:00
Mitchell Richters
68bf97462a
Blood: Remove constexpr on player horizon values.
2020-04-01 22:34:57 +02:00
Mitchell Richters
e6420e1eb4
Blood: Rebalance q16mlook.
...
- Make scaling more consistent with other games.
- Fix CONSTEXPR to constexpr.
- Remove usage of macro 'F16()' by using explicit fix16_from_*() type.
2020-04-01 22:34:57 +02:00
Mitchell Richters
8e94c48eff
SW: Make map follow mode work better.
...
- Input was too fast following input code changes.
- Speed of input can now be changed with toggling the run key.
- Remove function 'MoveScrollMode2D()' and incorporate into 'getinput()' to reduce code duplication.
- Store map follow coordinates in PLAYERp struct and remove old globals.
2020-04-01 13:05:54 +02:00
Mitchell Richters
4630c8a0b7
SW: Get PLAYER_TURN_SCALE to be just right.
...
- Original value was 12 and was far, far too high following the Q16.16 implementation.
- Value of 3 is too fast.
- Value of 2 is too slow.
- Value of 2.4 (12 / 5) feels just right.
2020-03-31 23:15:09 +02:00
Mitchell Richters
2852536dbf
SW: Adjust look and snap up/down keys and slightly tune PLAYER_TURN_AMOUNT.
...
- Look and snap up/down action was too aggressive and unlike vanilla, corrected.
- PLAYER_TURN_AMOUNT was slightly high, unbalancing the axes.
2020-03-31 08:58:56 +02:00
Mitchell Richters
533d5dd42f
Blood: Repair issue with strafing following cherry pick merge conflicts.
2020-03-31 08:56:36 +02:00
nukeykt
348cecb644
Blood: revert change that broke demos
2020-03-31 08:56:36 +02:00
nukeykt
c50f54d064
Blood: don't update view angle when game is paused
2020-03-31 08:56:36 +02:00
nukeykt
c8372c233e
Blood: Tie player input to the frame rate instead of the game tickrate
...
Look up/down and spin180 are a bit broken right now.
Big thanks to terminx for similar commit for eduke32.
2020-03-31 08:56:36 +02:00
nukeykt
371b613ebe
Blood: reduce handleevents calls
2020-03-31 08:56:36 +02:00
Mitchell Richters
5ebc65a1fb
SW: Refinements to new input code.
...
- videoNextPage() moved to after restoring interpolations.
- Properly use Q16.16 in as many places as possible. This fixes the angle/X-axis issues.
- Remove unnecessary call to timerUpdate() in main loop, only needs calling once and is called by eventhandlers().
2020-03-30 16:20:25 +02:00
ny00123
28e69d0793
Revert the change of call to FAF_DrawRooms into a conditional one,
...
as done in r8766, since this breaks status bar output in tiled
overhead map with Polymost. Do add comment about this for now.
git-svn-id: https://svn.eduke32.com/eduke32@8779 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/sw/src/draw.cpp
2020-03-30 09:55:30 +02:00
CommonLoon102
26344d1193
Blood: fix ILLUSION.MAP crash
2020-03-30 09:55:15 +02:00
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
Christoph Oelckers
f59bfa1224
- consolidation of screentext code
2020-03-05 00:58:38 +01:00
nukeykt
b88eeea9a2
Exhumed: Correctly set player action id for mummified state
2020-03-04 17:57:16 +01:00
nukeykt
2bf65c9108
Exhumed: Use old ksqrt implementation
2020-03-04 17:57:15 +01:00
NoOneBlood
bdca9420f5
- Event redirection support for modern types
...
- New modern type "Condition" (WIP)
- Fix damage scale for custom dude
- Extend Impact and Vector flags so they can be used with dudes
- Impact condition can be triggered with missiles and explosions
- Updates for Teleport Target type (gModernMap)
- Updates for Effect Gen type
- Updates for Wind Gen type
# Conflicts:
# source/blood/src/actor.cpp
# source/blood/src/aiunicult.h
2020-03-02 23:53:33 +01:00
Christoph Oelckers
8eef69b1a6
- compile fixes.
2020-03-02 23:05:07 +01:00
sirlemonhead
df34d8ca85
PCExhumed: Big bunch of AI tidying, code consistency changes and misc fixes. Aiming to get compatibility with new demos from DOS exe.
...
# Conflicts:
# source/exhumed/src/anubis.cpp
# source/exhumed/src/bubbles.cpp
# source/exhumed/src/bubbles.h
# source/exhumed/src/bullet.cpp
# source/exhumed/src/bullet.h
# source/exhumed/src/fish.cpp
# source/exhumed/src/fish.h
# source/exhumed/src/grenade.cpp
# source/exhumed/src/grenade.h
# source/exhumed/src/lavadude.cpp
# source/exhumed/src/lavadude.h
# source/exhumed/src/lion.cpp
# source/exhumed/src/lion.h
# source/exhumed/src/mummy.cpp
# source/exhumed/src/mummy.h
# source/exhumed/src/queen.cpp
# source/exhumed/src/queen.h
# source/exhumed/src/ra.cpp
# source/exhumed/src/ra.h
# source/exhumed/src/rat.cpp
# source/exhumed/src/rat.h
# source/exhumed/src/rex.cpp
# source/exhumed/src/roach.cpp
# source/exhumed/src/roach.h
# source/exhumed/src/runlist.cpp
# source/exhumed/src/scorp.cpp
# source/exhumed/src/set.cpp
# source/exhumed/src/set.h
# source/exhumed/src/snake.cpp
# source/exhumed/src/snake.h
# source/exhumed/src/spider.cpp
# source/exhumed/src/spider.h
# source/exhumed/src/wasp.cpp
# source/exhumed/src/wasp.h
2020-03-02 23:01:55 +01:00
Christoph Oelckers
6656547908
- fixed some warnings in Deer Huntin' code
2020-03-02 15:41:30 +01:00
Christoph Oelckers
348325c879
- removed some editor-only code from engine.cpp
2020-03-01 19:12:18 +01:00
Christoph Oelckers
375bf639de
- that was stupid.
2020-03-01 18:40:49 +01:00
Christoph Oelckers
951d28f15d
- Exhumed movie fix.
2020-03-01 18:32:43 +01:00
Christoph Oelckers
cf662de165
- commented out diagnostic messages.
2020-03-01 17:22:31 +01:00
Christoph Oelckers
edf513a789
- Clang complained again. :(
2020-03-01 16:43:34 +01:00
Christoph Oelckers
f89915ac8f
- fixed game start check for Exhumed's ingame menu.
2020-03-01 16:40:19 +01:00
Christoph Oelckers
ee191f0681
- SW: map cheat partially reimplemented.
2020-03-01 16:33:06 +01:00
Christoph Oelckers
12af524dcc
- fixed Exhumed's ingame menu.
...
The bad setup here didn't let the menu's exit action pass to the game code, it still needed ugly workarounds.
2020-03-01 16:32:41 +01:00
Christoph Oelckers
2e8ace603b
- fixed SW sound crash.
2020-03-01 13:10:07 +01:00
Christoph Oelckers
f1e2c0c226
- use the proper way to register an empty song on Blood maps without music.
2020-03-01 12:57:23 +01:00
Christoph Oelckers
3596be48bf
- Clang did not like this.
2020-03-01 11:33:46 +01:00
Christoph Oelckers
fde633041b
- SW: fixed ownership of non-following sounds.
2020-03-01 10:59:53 +01:00
Christoph Oelckers
b06c84ad8c
- fix case sensitive path composition.
2020-03-01 10:17:26 +01:00
Christoph Oelckers
809d2fc555
- fixed SW: DoPlayerFall should only stop the scream sound, but nothing else.
2020-03-01 09:59:52 +01:00
Christoph Oelckers
d6b17c0406
- fixed bad vector comparison in SW's sound code.
2020-03-01 09:18:23 +01:00
Christoph Oelckers
cd5ff69c98
- Duke: Do not let the max kill counter underflow.
...
The entire thing looks broken anyway but this at least prevents the broken values from showing up in the statistics.
2020-03-01 08:35:05 +01:00