Christoph Oelckers
56f5e01c84
fix tileCRC
2023-05-20 18:08:58 +02:00
Christoph Oelckers
a2b2e2ec87
- got rid of tileHeight and tileWidth.
2023-05-20 18:08:40 +02:00
Christoph Oelckers
2f2021f5d2
- Blood: simplify burnTable.
2023-05-20 13:17:55 +02:00
Christoph Oelckers
058f1b4233
- handle exclusion of tilenum 0 for sprites in the backend.
2023-05-20 12:55:58 +02:00
Christoph Oelckers
a76494363c
- get rid of 'picnum' in common code.
2023-05-20 12:40:57 +02:00
Christoph Oelckers
de6b5fec7b
- got rid of some 'picnum's that don't reference spritetype.
2023-05-20 10:59:03 +02:00
Christoph Oelckers
5999cb8218
- fix savegame size of temp_data
2023-05-20 10:00:29 +02:00
Christoph Oelckers
43bc6edba3
- print errors in red.
2023-05-20 09:11:14 +02:00
Christoph Oelckers
4e6023ea34
add a bit of vertical tolerance to neartag's sprite check.
...
This is not pitch aware and can cause problems with very small sprites on occasion.
2023-05-20 09:01:46 +02:00
Christoph Oelckers
5ba01bb38d
- fix crash in RR when dying with an item-less weapon.
2023-05-20 07:19:35 +02:00
Christoph Oelckers
a8e03723ef
- NOSHADOW flag.
2023-05-19 23:03:20 +02:00
Christoph Oelckers
b993f05c8f
- fixed missing handling for BADGUYSTAYPUT flag.
2023-05-19 23:00:27 +02:00
Christoph Oelckers
b6767aa7a3
- fixed: The MVE player ignored the initial sound playing state.
...
If that is off, sound must remain off.
2023-05-19 22:59:48 +02:00
Christoph Oelckers
11ba136df1
- make autosaving happen immediately for other games than Blood only.
...
Blood does not like it, but for the others it should be ok.
2023-05-19 22:59:47 +02:00
Christoph Oelckers
513de38723
- pass the spawner to Initialize as an explicit parameter.
...
Using ownerActor is not robust, for some actors this will have unwanted side effects.
2023-05-19 22:57:26 +02:00
Christoph Oelckers
22415d0d22
- Duke: for camera textures, set display_mirror
to 2, not 1.
...
This avoids actually mirroring the sprites while otherwise retaining the effects on player visibility. Although a value of 1 was working previously it was merely by happenstance, not by design.
Also remove two redundant local copies of display_mirror in Blood and SW.
2023-05-19 22:53:17 +02:00
Christoph Oelckers
6e060c2e83
Revert "- Tidy up autosaving for all the games."
...
This reverts commit 10445635cf
.
Contrary to what the reverted commit states, it is absolutely essential to have this delay. Duke and Blood initialize a lot of things in their first tick that are necessary before the world is stable to save.
2023-05-19 22:53:17 +02:00
Christoph Oelckers
5d4e6696ca
- Blood: clear gHitInfo when starting a level.
2023-05-19 22:53:17 +02:00
Christoph Oelckers
cf349fbd7d
- Duke: clear resource ID when setting up the original sounds for World Tour.
...
This made them unconditionally override the replacements - bad as they are.
2023-05-19 22:53:16 +02:00
Christoph Oelckers
3b0da4c221
- fix '-gamegrp' path
2023-05-19 22:53:16 +02:00
Christoph Oelckers
e0de0893a9
- autoaim must never apply to WW2GI's pistol.
2023-05-19 22:53:16 +02:00
Christoph Oelckers
bab432ed72
- refinement of aiming fix.
2023-05-19 22:53:15 +02:00
Christoph Oelckers
fa1e667140
- Duke/RR: Use the exact same trajectory for autoaiming and the actual attack hitscan for the pistol.
...
These were not identical so the pistol was likely to miss small targets the autoaim acquired. This was particularly bad for Duke's ceiling turret and RR's mosquito.
2023-05-19 22:52:36 +02:00
Christoph Oelckers
94a80dda11
- initialize the angle of script spawned actors.
2023-05-19 22:52:00 +02:00
Christoph Oelckers
e8a3e2ee53
- fixed sprite rotation in mirrors.
2023-05-19 22:51:45 +02:00
Christoph Oelckers
ff24711710
-put the remaining directly accessed textures into the aTexIDs arrays for Blood and Exhumed.
2023-05-19 22:51:32 +02:00
Christoph Oelckers
481f139962
- put texture ID lists into a namespace.
...
These conflicted with each other.
2023-05-19 22:51:31 +02:00
Christoph Oelckers
28e451311b
- fixed ActorInfo inheritance.
2023-05-19 22:50:47 +02:00
Christoph Oelckers
aee26c2637
- reset counter in SetMove
2023-05-19 22:50:02 +02:00
Christoph Oelckers
8aaa8b4113
- use the native implementation for Duke.rnd.
...
This ensures that results are consistent.
2023-05-19 22:46:43 +02:00
Rachael Alexanderson
fc45636215
- remove vid_gpuswitch
and all associated handling
2023-04-30 10:57:28 -04:00
Christoph Oelckers
7bb678bb7e
- fixed 'move' property handler to properly store its z value.
2023-04-30 13:33:05 +02:00
Christoph Oelckers
b07a43a9db
- Duke: fixed ChangeType to also change the actor's base pic.
2023-04-30 13:33:05 +02:00
alexey.lysiuk
a69d904192
- fix GCC/Clang compilation error
...
source/games/duke/src/types.h:178:14: error: exception specification of overriding function is more lax than base version
2023-04-30 13:14:45 +03:00
Christoph Oelckers
ecfa45c3ec
- Duke: fixed animation lookup code.
2023-04-30 10:51:48 +02:00
Christoph Oelckers
b55d39e58d
- fixed invocation of RunState.
2023-04-30 10:51:48 +02:00
Christoph Oelckers
83c401574c
- remove debug check
2023-04-30 10:51:48 +02:00
Christoph Oelckers
4010fc1aa7
- Duke: init the animation arrays early.
...
app_init is too late for having the data set up during script compilation.
2023-04-30 10:51:48 +02:00
Christoph Oelckers
96b0542cd8
- flag all actors that override RunState.
...
This is for allowing quick checks of actors which need the special consideration.
2023-04-30 09:01:28 +02:00
Christoph Oelckers
2a38e83a2f
- moved the animation code out of execute so it can be used without CON.
2023-04-30 08:57:28 +02:00
Christoph Oelckers
29322777dd
- adapt the animation init code for CON replaced actors and consolidated the two cases.
2023-04-30 08:46:51 +02:00
Christoph Oelckers
21a37d2c07
- added helpers needed to run CON replacement code.
...
* killit must exit to the top level right away. Use an exception for this.
* two new flags to make checking easier.
* do not export killit_flag to scripting.
2023-04-30 08:11:30 +02:00
Christoph Oelckers
960e58cdf2
- move the action default propeerties into FActorInfo
2023-04-30 08:07:10 +02:00
Christoph Oelckers
9d43729e8c
get rid of the killit_flag in the parse state.
...
Use the one in the actor instead.
2023-04-30 08:04:56 +02:00
Christoph Oelckers
4e8dfe8986
- got rid of the laat picnums in Blood.
2023-04-29 11:32:04 +02:00
Christoph Oelckers
a662a3bd12
- another bunch of picnums in Blood removed.
...
4 remaining after this.
2023-04-29 11:32:04 +02:00
Christoph Oelckers
83dfd77bd0
- eliminate picnums in QAV code.
2023-04-29 11:32:04 +02:00
Christoph Oelckers
9a703639cb
- final cleanup of Blood/Exhumed changes.
2023-04-29 11:32:04 +02:00
Christoph Oelckers
01b6d9f27f
- eliminated all remaining uses of picnum in Exhumed.
2023-04-29 11:32:03 +02:00
Christoph Oelckers
44e9a66319
- handle 3 more of Exhumed's picnums that were quick to refactor
2023-04-29 11:32:03 +02:00
Christoph Oelckers
0e097903c4
- got rid of a large chunk of picnum accesses in Exhumed.
2023-04-29 11:32:03 +02:00
Christoph Oelckers
f115f9427d
- got rid of a few more picnum references in Blood.
2023-04-29 11:32:03 +02:00
Christoph Oelckers
76c0de2ef1
- moved some of Blood's precaching info to external data.
2023-04-29 11:32:03 +02:00
Christoph Oelckers
52706e9afd
- handle the direct assignments of values to picnum in Blood.
2023-04-29 11:32:02 +02:00
Christoph Oelckers
36c07aaca5
- did some simple picnum replacements in Blood.
2023-04-29 11:32:02 +02:00
Christoph Oelckers
47f9642294
- added compile time validation for SetAction, SetAI and SetMove.
...
the expression classes were deleted again, this can be done without them.
2023-04-29 10:09:36 +02:00
Christoph Oelckers
bf577916ec
- made the is*** checkers compiler intrinsics.
...
With the exception of isWorldTour, isPlutoPak and isShareware when playing Duke these are always constant and this way can be used to completely eliminate unneeded code.
2023-04-29 10:09:36 +02:00
Christoph Oelckers
f1f1e54e04
- moved the remaining content of the flags* files directly into game.cpp
2023-04-29 09:59:54 +02:00
Christoph Oelckers
bfcceccc98
- consolidated checkhitdefault functions.
2023-04-29 09:58:42 +02:00
Christoph Oelckers
6fd4368592
- moved Duke/RR's tile name list to raze.pk3, now that internally it is not used anymore.
...
This way it can later also be used by editors.
2023-04-29 09:55:48 +02:00
Christoph Oelckers
44f4104eda
- got rid of the last tilenum uses in Duke.
...
This meant refactoring the crosshair drawer to work on a named texture called "CROSSHAIR" and hard coding the magic numbers for spawndebris.
2023-04-29 09:54:15 +02:00
Christoph Oelckers
bb08a118d9
- replaced the sprite precaching code with one that scans the actual content.
...
This will currently not do proper precacing for Duke, which requires actions to be defined as the ones from CON cannot be assigned to an actor.
2023-04-29 09:53:52 +02:00
Christoph Oelckers
83eb4852f7
- do not use literal tile numbers for initializing WW2GI's weapon gamevars.
...
Instead use the type numbers of the items to be spawned so it is derived from configurable data.
2023-04-29 09:51:51 +02:00
Mitchell Richters
312b649d93
- Duke: Pass HUD offsets to bike/moto drawers by const reference.
2023-04-29 09:19:09 +02:00
Christoph Oelckers
f278a29fad
- migrated all RR weapons to texture names.
2023-04-29 09:16:55 +02:00
Christoph Oelckers
5d4f137623
- migrated Duke's entire HUD weapon code to texture names.
2023-04-29 09:16:46 +02:00
Christoph Oelckers
d5f1a82f21
- Duke shotgun and chaingun handled.
2023-04-29 09:13:42 +02:00
Christoph Oelckers
1aa88bd201
- more HUD refactoring
2023-04-29 09:13:28 +02:00
Christoph Oelckers
8f61abdf75
- more HUD refactoring and fixed issues with badly named textures crashing the precacher.
2023-04-29 09:08:42 +02:00
Christoph Oelckers
8a331e226f
- handle cases where CON tries to spawn unknown actors.
...
It must fall back to spawning an inert sprite in these cases, not just fail.
2023-04-29 07:06:53 +02:00
Christoph Oelckers
34160a4354
- ported the scuba mask drawers to texture IDs.
...
These were also the last places in Duke using tileWidth and tileHeight.
2023-04-29 07:06:42 +02:00
Mitchell Richters
ef81e713e2
- Exhumed: Clamp off vale in fix from adbd5c3c69
.
...
* Fixes example situations where the player is underwater and smashing against the ceiling, etc.
2023-04-28 19:30:14 +10:00
Mitchell Richters
742d76a4bf
- Exhumed: Tidy up some unnecessarily nested if statements in movespritez()
.
2023-04-27 22:51:30 +10:00
Mitchell Richters
adbd5c3c69
- Exhumed: Fix velocity loss in movespritez()
when warping.
...
* Old code was adjusting the actor's Z to right off the ceiling with no factoring in of the old interpolation position.
* Due to this, we were hitting the `nCamerapos.Z = min(max(nCamerapos.Z, pSector->ceilingz + 1), pSector->floorz - 1);` bounding in the draw code.
* Since game puts you right at the ceiling, we apply this to the old interpolation position, as well as the current position, however we then add their velocity back onto the current position to make the warp seamless.
2023-04-27 22:51:30 +10:00
Mitchell Richters
78df82e1ed
- Exhumed: Clean up loHit
global in move.cpp
.
...
* More lazy arg passing via a global...
2023-04-27 22:51:30 +10:00
Mitchell Richters
4c5339274d
- Exhumed: Fix bad velocity zeroing from ece41ac84c
.
2023-04-27 21:32:36 +10:00
Mitchell Richters
3edc1a5a5a
- Exhumed: Make getSequence()
return a pointer instead of a reference.
...
* Gets rid of the awkward `operator[]()` calls.
* Gets rid of `std::ref()` setup in gun.cpp.
* Ensures a copy isn't made if the caller accidentally leaves off an ampersand.
* Allows us to use a consistent getter for native code and VM exports.
2023-04-27 20:16:14 +10:00
Mitchell Richters
ea7fe0e0b4
- Exhumed: Add fixSeqs()
and use it to patch OOB issue with skulstrt.seq
.
2023-04-26 20:27:28 +10:00
Mitchell Richters
33d4809663
- Exhumed: Ensure sequence data cannot be changed via the getters.
2023-04-26 20:13:26 +10:00
Mitchell Richters
64c47b0385
- Exhumed: Slightly tune damage pushback from previous commit.
...
* The logic here is that the player's running/double speed velocity is scaled by 0.375 in `updatePlayerVelocity()`, so 0.1875 is half of that scale.
2023-04-25 20:07:10 +10:00
Mitchell Richters
64745dff89
- Exhumed: Allow damage pushback behind CVAR cl_exdamagepush
.
...
* Fixes #907 .
* Works in conjunction with ece41ac84c
by using the player actor's velocity.
* Original game blanket reset the sprite/actor's vel each tic which cancelled this out.
* Original damage value is far, far too high. Had to scale it back by 1024 units to make it reasonable!
2023-04-25 19:55:05 +10:00
Mitchell Richters
0a6ff79f4f
- Exhumed: Give runlist_CheckRadialDamage()
a bit of a tidy.
2023-04-25 19:44:25 +10:00
Mitchell Richters
ece41ac84c
- Exhumed: Move player's velocity back into the actor, again.
...
* Was done in 67c7dd65f9
but caused issues.
* Reverted in 3d6f1e1a04
to ensure the game worked as expected.
* Actual problem identified and isolated to remove this duplication.
2023-04-25 19:36:46 +10:00
Mitchell Richters
7c2bd266b9
- Exhumed: Fix incorrect distance check operator for the rat.
2023-04-25 18:39:56 +10:00
Mitchell Richters
fe356f3183
- Exhumed: Fix OOB frame with the rat.
...
* No idea what this does in the original source... plays the first frame of the next sequence?
2023-04-25 18:18:26 +10:00
Mitchell Richters
52ab0fae19
- Duke: Allow reversing while moving forwards to act as the brake.
...
* Much more intuitive for controllers.
2023-04-25 11:30:48 +10:00
Mitchell Richters
6d2e114dec
- Duke: Move moto tilt scaling into main tilt function, not within the draw code.
2023-04-25 08:37:38 +10:00
Mitchell Richters
6004a9fb5a
- Exhumed: Fix bad jump setup from c252b19e9a
.
2023-04-24 23:27:02 +10:00
Mitchell Richters
fd1c3dffe8
- Duke: Allow view tilting for RRRA vehicles on separate CVAR.
...
* Tilts at the same angle as the HUD.
2023-04-24 23:20:14 +10:00
Mitchell Richters
918789705f
- Duke: Use the player's angle when adjusting vehicle's HUD rotation.
2023-04-24 22:44:22 +10:00
Mitchell Richters
14629e7b2b
- Clamp vehicle input to 1.5x the calculated velocity.
2023-04-24 22:18:40 +10:00
Mitchell Richters
6ac2af9f3c
- Duke: Convert RRRA's vehicle HUD tilting to a DAngle.
2023-04-24 22:17:37 +10:00
Mitchell Richters
11181f51f8
- Allow roll input through the packet system, giving us 6DOF for VR usage, etc.
2023-04-24 21:31:21 +10:00
Mitchell Richters
8e3df00b8b
- SW: Hook up InputPacket::uvel
to relevant code.
2023-04-24 21:01:32 +10:00
Mitchell Richters
67390511b7
- Blood: Hook up InputPacket::uvel
to relevant code.
2023-04-24 19:06:48 +10:00
Mitchell Richters
c252b19e9a
- Exhumed: Hook up InputPacket::uvel
to relevant code.
2023-04-24 19:06:48 +10:00
Mitchell Richters
80f2afd6a4
- Exhumed: Slightly tidy up updatePlayerWeapon()
.
2023-04-24 19:06:46 +10:00
Mitchell Richters
e29726370c
- Exhumed: Tidy up two if statements in AIPlayer::Damage()
.
2023-04-24 19:03:04 +10:00
Mitchell Richters
afcc65c332
- Duke: Hook up InputPacket::uvel
to remainder of relevant code.
2023-04-24 18:27:44 +10:00
Mitchell Richters
09ab66b8c9
- Duke: Clean up p->GetActor()
calls in movement()
funcs.
2023-04-24 16:16:07 +10:00
Christoph Oelckers
1c7ca7b63a
- moved all indirect precaching info to external definition files.
2023-04-23 17:43:22 +02:00
Christoph Oelckers
6924869895
- store texture IDs in the sprite set.
2023-04-23 17:42:07 +02:00
Christoph Oelckers
1bace1d508
- use texture IDs in the spawn records.
2023-04-23 17:33:50 +02:00
Christoph Oelckers
4692cc55f7
- cleaned up checkhitdefault
...
Only required 4 new flags plus one property...
2023-04-23 17:33:36 +02:00
Christoph Oelckers
125ea52e57
- handle special case for activation sounds when player bumps into other actors.
2023-04-23 17:33:35 +02:00
Christoph Oelckers
524df20d26
- renamed most local picnum variables in shaded code to reduce search noise.
2023-04-23 17:33:35 +02:00
Christoph Oelckers
fd7a4e050a
- no more picnum in gameexec.cpp
2023-04-23 12:15:36 +02:00
Christoph Oelckers
cd2cb8d60e
- minor cleanup
2023-04-23 12:15:36 +02:00
Mitchell Richters
a731db95ae
- Add initial support for up/down movement within the game, either by key or joystick axis.
...
* Started with Duke's jetpack, other games to follow for swimming, etc.
2023-04-23 19:53:45 +10:00
Mitchell Richters
87144564fd
- Duke: Consolidate the mostly duplicate underwater()
functions.
2023-04-23 19:21:04 +10:00
Mitchell Richters
02325c37bc
- Duke: Fix incorrect scaling of underwater bubble.
2023-04-23 19:21:04 +10:00
Mitchell Richters
8db8d43f89
- Duke: Tidy up underwater()
.
2023-04-23 19:21:04 +10:00
Mitchell Richters
95fe3d1bc4
- Duke: Tidy up operateJetpack()
.
2023-04-23 19:21:04 +10:00
Mitchell Richters
eca8526c11
- Exhumed: Unlimit the SeqNames[]
array.
2023-04-23 19:20:19 +10:00
Mitchell Richters
19501f3ed0
- Exhumed: Fix some typos in comments.
2023-04-23 19:19:47 +10:00
Mitchell Richters
e60e767232
- Break down some increasingly long lines in GameInput::processMovement()
.
2023-04-23 19:19:26 +10:00
Christoph Oelckers
07c4b61260
- make sure that the aplWeapon* stuff is never accessed outside of WW2GI.
2023-04-23 10:45:44 +02:00
Christoph Oelckers
f0a6c4ecd8
- check for NOGRAVITY in 'fall'.
2023-04-23 10:45:44 +02:00
Christoph Oelckers
17a8dd5c2e
- added tile names for all of Vacation's new actors.
...
Although several just replace existing actors, we want different names for these when replacing them.
2023-04-23 10:45:44 +02:00
Christoph Oelckers
4c1e379149
- only declare the weapon gamevars for WW2GI.
...
none of the other games uses any of this.
2023-04-23 10:45:44 +02:00
Christoph Oelckers
d5fa2d73ad
- removed code for unused ATWITH gamevar.
2023-04-23 10:45:44 +02:00
Christoph Oelckers
fc0c8e0787
- NOHITJIBS flag.
2023-04-23 10:45:44 +02:00
Christoph Oelckers
91ee3cb7b8
- got rid of the picnum CreateActor variant.
2023-04-23 10:45:43 +02:00
Christoph Oelckers
a6600c200f
- a lot of simple picnum or TILE_* replacements.
2023-04-23 10:45:43 +02:00
Christoph Oelckers
5d43975467
- store class pointers in weaprecs.
2023-04-23 10:36:39 +02:00
Christoph Oelckers
2f78a10ce1
- don't use picnum to address gs.actorinfo
2023-04-23 10:36:39 +02:00
Christoph Oelckers
b56aa1e1a3
- no more picnum in spawn CCMD
2023-04-23 10:36:38 +02:00
Christoph Oelckers
745275dc24
- use texture names for special player sprites,
2023-04-23 10:36:38 +02:00
Christoph Oelckers
bfc8862071
- use texture IDs in the sprite animator
2023-04-23 10:36:27 +02:00
Christoph Oelckers
cc83438e31
- replace dispicnum with dispictex
2023-04-23 10:32:58 +02:00
Christoph Oelckers
b2493116f8
- use texture IDs in the model interface.
2023-04-23 09:52:56 +02:00
Christoph Oelckers
1bc9de1cf0
- the last picnums in actors_r.cpp
2023-04-23 09:52:56 +02:00
Christoph Oelckers
14bf74c0f9
- turned adjustfall into a 'gravityfactor' property.
2023-04-23 09:51:24 +02:00
Christoph Oelckers
687cfd610f
- copied ST160/161 handling to movetransports_d.
2023-04-23 09:43:21 +02:00
Christoph Oelckers
ac50daf5f3
- split a large bunch of code out of movetransports that can be consolidated between Duke and RR.
2023-04-23 09:43:21 +02:00
Christoph Oelckers
a0de956bef
- got rid of tilenum checks in movetransports_r.
2023-04-23 09:43:21 +02:00
Christoph Oelckers
4812e1431e
- made fallspecial game independent and eliminated all the wrapping and callback weirdness with fall.
2023-04-23 09:43:20 +02:00
Christoph Oelckers
7f19a120a0
- clean out RRRA move flags in the CON parser for the other games.
...
This allows keeping their function enabled everywhere so that they can become a common feature without further need for validation.
2023-04-23 09:42:30 +02:00
Christoph Oelckers
b2b4d432fc
- handle tilenum access in movetransports_d.
2023-04-23 09:42:30 +02:00
Christoph Oelckers
91d864ac8f
- use classtypes in fallspecial.
2023-04-23 09:42:30 +02:00
Christoph Oelckers
35a088ba04
- added map flags to enable RR's special sector types in Duke as well.
2023-04-23 09:42:29 +02:00
Christoph Oelckers
c8853de0ef
- use the symbolic constants for ST_160 and ST_161 in the last remaining places where they hadn't been put before.
2023-04-23 09:42:29 +02:00
Christoph Oelckers
0b3f18a903
- consolidated move functions.
2023-04-23 09:42:29 +02:00
Christoph Oelckers
5a2410cbbb
- more properties to get rid of the remaining actor type checks in move_d and move_r.
2023-04-23 09:42:29 +02:00
Christoph Oelckers
c4c035a527
- handle more of move's special cases with flags and properties.
2023-04-23 09:42:28 +02:00
Christoph Oelckers
2d4eee4153
- eliminated the last references to picnum in actors.cpp.
2023-04-23 09:42:28 +02:00
Christoph Oelckers
0249725ed8
- got rid of all TILE_* globals, except TILE_CROSSHAIR.
2023-04-23 09:42:28 +02:00
Christoph Oelckers
b78d268ef2
- clean up the lotsofstuff calls by correcting the class pointers on game load.
2023-04-23 09:42:27 +02:00
Christoph Oelckers
1b64b207bb
- consolidated movesprite_ex functions.
2023-04-23 09:42:27 +02:00
Christoph Oelckers
46f7e38e46
- cleaned up movesprite_ex.
...
This needed 5 actor flags to handle some really inane special cases!
2023-04-23 09:42:27 +02:00
Mitchell Richters
83365a9a14
- Fix typo in menu and clean up leftover variable in Exhumed's doPlayerCameraEffects()
.
2023-04-23 10:20:10 +10:00
Mitchell Richters
175f858047
- Make scaletozero()
static again within gameinput.cpp.
2023-04-23 09:06:31 +10:00
Mitchell Richters
05cb6563f3
- Add roll output to stat coord
since we're now using this angle.
...
* Do a line split between coords and angles since it was getting a bit long.
* Was going to allow warping to a specific roll as well, but its pretty useless.
2023-04-23 09:03:02 +10:00
Mitchell Richters
0a90ed4802
- Remove some duplicated lines in PlayerAngles::doViewTilting()
.
2023-04-23 08:51:14 +10:00
Mitchell Richters
b179079168
- Move constant from previous commit into the class with the other constants.
2023-04-22 22:45:12 +10:00
Mitchell Richters
df30c01472
- Rework cl_viewtilting 1
to be consistent across games.
...
* Setup before from when it was Exhumed-only assumed a 30Hz clock. Needed adjusted variables and setup for Shadow Warrior.
2023-04-22 21:40:57 +10:00
Christoph Oelckers
542083af30
- merged both hitradius variants, now that all the critical differences are properly handled by actor flags.
2023-04-22 12:08:47 +02:00
Christoph Oelckers
927d014cea
- final cleanup on hitradius.
...
Several dead code paths were also removed that are unable to be triggered by any event in the game - due to the spaghetti-style checks this hadn't been obvious before.
Also one more flag that handles the WT flamethrower's special case of not hurting any actors of the shooter's kind in a more generalized form
2023-04-22 12:08:47 +02:00
Christoph Oelckers
ac430e6bc7
- another flag and the second old one renamed.
2023-04-22 12:08:47 +02:00
Christoph Oelckers
9ddb5987cd
- two new flags and one renamed one for hitradius.
...
slowly getting closer to sorting this one out. The new flags already make operation a lot clearer.
2023-04-22 12:08:47 +02:00
Christoph Oelckers
19f4e4ff63
- added a new flag and split out the geometry destruction part from the hitradius functions
...
... which suddenly look a lot less menacing...
2023-04-22 12:08:47 +02:00
Christoph Oelckers
53e92097ac
- converted weaponsandammosprites into a class pointer array and fixed RR's bogus content.
...
It's a Duke only feature. RR can use it but would have spawned some non-functional items.
2023-04-22 12:08:47 +02:00
Christoph Oelckers
f78c971eac
- refactored shoot API to exclusively work with class pointers.
2023-04-22 12:08:46 +02:00
Christoph Oelckers
65e66a573d
- Duke: look up all internally used actor classes at game startup.
...
This allows early validation of the names but is also more efficient.
2023-04-22 12:08:46 +02:00
Christoph Oelckers
36d5ab74bb
- eliminated lots of direct tile references in spawn() calls.
2023-04-22 12:08:46 +02:00
Mitchell Richters
6ba227ab8b
- Spaces be damned!
2023-04-22 19:50:55 +10:00
Mitchell Richters
71d833f9ea
- Make Exhumed's new view tilting features accessible for all games.
2023-04-22 19:34:53 +10:00
Mitchell Richters
faaffa0d40
- Exhumed: Change formula for cl_exviewtilting 2
.
...
* Makes this proper strafe rolling based on the actual strafe velocity.
* Implement movement rolling as `cl_exviewtilting 3` as well.
2023-04-22 14:10:10 +10:00
Mitchell Richters
b93a2cf61b
- Exhumed: Move UpdateCreepySounds()
into MoveThings()
so its processing time can be clocked.
2023-04-21 21:13:19 +10:00
Mitchell Richters
b958ae2340
- Exhumed: Move bobangle
global into Player struct.
2023-04-21 21:13:19 +10:00
Mitchell Richters
6799322544
- Exhumed: Add view bobbing, with defaults matching intensity of Powerslave Exhumed.
...
* `cl_viewbob` extended from bool to int, and allowing two modes: 1 == Powerslave Exhumed bobbing, 2 == Duke 3D-style bobbing.
* Height and speed of bobbing customisable.
2023-04-21 21:13:19 +10:00
Mitchell Richters
8283895828
- Exhumed: Increase precision of Player::totalvel
.
2023-04-21 21:13:18 +10:00
Mitchell Richters
e0964eef7a
- Exhumed: Add toggle-able jump rebounding.
2023-04-21 21:13:18 +10:00
Mitchell Richters
8255a23833
- Exhumed: Move bTouchFloor
into Player
struct.
...
* No need to save this out either, it's reset at the start of every tic.
2023-04-21 21:13:18 +10:00
Mitchell Richters
bb19997a2c
- Apply pitch/yaw input along-side the key inputs.
...
* Removes a lot of duplicated code.
2023-04-21 21:13:18 +10:00
Mitchell Richters
70dd565c50
- Slightly tune mouse formula in GameInput::processVehicle()
.
2023-04-21 21:13:17 +10:00
Mitchell Richters
f9b9345e01
- Exhumed: Tidy up a long ternary in updatePlayerAction()
.
2023-04-21 21:13:17 +10:00
Mitchell Richters
258ab0db89
- Exhumed: Initial setup of view rolling effects.
...
* `cl_exviewtilting 1` enables a console-like view rolling upon yaw input.
* `cl_exviewtilting 2` enables a Quake-like view rolling upon strafe input.
2023-04-21 21:13:17 +10:00
Mitchell Richters
83a371e23d
- Exhumed: Remove Player::nPlayerD
, since we have the player actor's opos.
2023-04-21 21:13:16 +10:00
Mitchell Richters
29bf5e4cce
- Exhumed: Move updatePlayerTarget()
call back to main ticker loop.
...
* While it's cleaner in the AIPlayer ticker, AIRa requires its target set (which is done in this func also) and I don't know whether AIPlayer is ticked before AIRa is.
2023-04-21 21:13:16 +10:00
Mitchell Richters
19da7a61bb
- Exhumed: Setup detection for Steam version.
...
* Buying games for $15 AUD that I already own just so I can add a detection... aren't I super? 🙃 .
2023-04-21 21:13:16 +10:00
Mitchell Richters
28893663a5
- Exhumed: Reduce length of stack arrays in addSeq()
.
2023-04-21 21:13:16 +10:00
Mitchell Richters
4c49b91635
- Exhumed: Incorporate player weapon bobbing into pilot light angle.
2023-04-21 21:13:16 +10:00
Mitchell Richters
a28ca29493
- Exhumed: Repair pilot light angle that's been broken for some time.
...
* Interpolate it as well 🙂 .
2023-04-21 21:13:15 +10:00
Mitchell Richters
dc857aec3d
- Exhumed: Tidy up remainder of DrawWeapons()
.
2023-04-21 21:13:15 +10:00
Mitchell Richters
d309406473
- Exhumed: Rename sequence texture getters to separate frame/chunks.
...
* This will make it easier to compare against the source if there's a mistake, etc.
2023-04-21 21:13:15 +10:00
Mitchell Richters
1162954b03
- Exhumed: Move AISpider's null chunk texture check into the getter.
...
* It's needed for the rat as well...
2023-04-21 21:13:15 +10:00
Mitchell Richters
408c71513b
- Exhumed: Manually review all nAction
changes and ensure nFrame
is reset also.
2023-04-21 21:13:14 +10:00
Mitchell Richters
ba8bdf347e
- Exhumed: Repair OOB seq access with Anubis.
...
* Everytime `nAction` changes, `nFrame` must be reset as well.
* One `AnubisSeq[]` index has an `nSeqId` of `-1`, this must be handled.
2023-04-21 21:13:14 +10:00
Mitchell Richters
27b9b0d2f8
- Exhumed: Reduce repeated hashtable lookups when building chunks.
2023-04-21 21:13:14 +10:00
Mitchell Richters
04eb0fe926
- Exhumed: Tidy up a few remaining globals in the sequence system.
2023-04-21 21:13:14 +10:00
Mitchell Richters
4a37453765
- Exhumed: Convert sequence system to FTextureIDs.
2023-04-21 21:13:13 +10:00
Mitchell Richters
fcfee9addc
- Exhumed: Convert remainder of statusbar code and delete old system.
2023-04-21 21:13:13 +10:00
Mitchell Richters
7ca73aa562
- Exhumed: Initial setup of new statusbar sequence exports, starting with DrawStatusSequence()
.
2023-04-21 21:13:12 +10:00
Mitchell Richters
95e84ba1f8
- Exhumed: Make playFrameSound()
a method of SeqFrame
.
2023-04-21 21:13:12 +10:00
Mitchell Richters
32cc320195
- Exhumed: Refactor new sequence setup to not use naked TArray of frames.
...
* Also gives access to the previously discarded sequence flags that are currently not in any kind of use.
2023-04-21 21:13:12 +10:00
Mitchell Richters
4b223ab26d
- Exhumed: Tidy up DExhumedActor
variables for clarity.
2023-04-21 21:13:11 +10:00
Mitchell Richters
5efc14411a
- Exhumed: Use actor variables for sequences, not player ones.
2023-04-21 21:11:55 +10:00
Mitchell Richters
5c0b6858b1
- Exhumed: Remove seq_GetSeqPicnum()
.
2023-04-21 21:11:55 +10:00
Mitchell Richters
b4502626fa
- Exhumed: Tidy up some picnum accesses.
2023-04-21 21:11:55 +10:00