Christoph Oelckers
4bb66fb44e
- Duke: Fixed WT fallback for classic sounds in cases the user data does not exist.
...
currently that's only the case for CRANEGRAB which is aliased because of differences between Duke and RR.
2023-09-23 14:29:41 +02:00
Christoph Oelckers
a41ebfeb73
- Duke: fixed the explosion's lighting hackery.
...
The animatesprites handler in the old code got called on the already animated sprite, meaning it will only activate for the first frame.
To do this right the code had to be moved to applyanimations and be guarded by a flag.
2023-09-10 20:42:26 +02:00
Christoph Oelckers
230c1b9041
- fix animatesprite loop aborts on sector effectors
2023-09-10 19:55:41 +02:00
Christoph Oelckers
b95a5a4b2b
- yet another backend update.
2023-08-20 02:15:57 +02:00
Christoph Oelckers
d34bad3045
- adapted game side code.
2023-08-19 19:41:40 +02:00
Christoph Oelckers
32ede813e9
- new files for backend update.
2023-08-19 18:17:17 +02:00
Christoph Oelckers
2095a2120c
- consolidated the 4 ReadSound functions.
2023-08-19 18:11:19 +02:00
Christoph Oelckers
3c695a5abd
- adapted to backend changes.
2023-08-19 18:08:27 +02:00
Christoph Oelckers
76e77d4e64
- Duke: fix enemy counting
2023-08-06 09:59:33 +02:00
Christoph Oelckers
c19653262e
- Duke: fix management of killit_flag.
...
This cannot be in the actor because event scripts can be called without a valid actor.
It is now part of the parse state, but execute allows returning it to the caller, which is needed in one place.
2023-07-22 10:24:20 +02:00
Christoph Oelckers
ce34ef2921
- Duke: fixed skill filter handling for CON defined enemies.
2023-07-17 00:32:27 +02:00
Christoph Oelckers
c4cb44f5f0
- RR: thunder may only be triggered when the player sees a sector with an activating texture as sky.
2023-06-19 20:45:16 +02:00
Christoph Oelckers
5bbcb82ef2
- unlimited the number of sectors to have window lightning.
2023-06-19 20:34:04 +02:00
Christoph Oelckers
af4189c2a1
- RR: fixed shotgun HUD placement
...
This original code is technically dead wrong - it just works by happenstance.
2023-05-30 18:26:05 +02:00
Christoph Oelckers
f8de8eb7a3
- Duke: fixed bad range check in tripbomb drawer.
2023-05-30 17:18:31 +02:00
Christoph Oelckers
517b77bfdc
- RR: spawn the correct player class.
2023-05-30 00:11:49 +02:00
Christoph Oelckers
213bdbadad
- allocate VMFunction's PrintableName from the ClassDataAllocator arena.
...
This avoids execution order issues on shutdown. VMFunction should not use FString.
2023-05-27 22:40:47 +02:00
Christoph Oelckers
5dfb0c902a
- consolidation of sound init code.
2023-05-27 09:12:51 +02:00
Christoph Oelckers
92f2503160
- did a bit of optimization on sfxinfo_t.
...
Using two bytes of alignment gap to add a userval variable.
2023-05-27 09:03:10 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
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