Mitchell Richters
3625a6af52
- Move PlayerAngles
class directly into DCorePlayer
.
...
* No refactoring around it yet.
* The #includes could use some cleaning up...
2023-11-04 19:10:03 +11:00
Christoph Oelckers
c64d333379
Blood: fixed packSlots being cleared on loading a savegame.
...
Since the player refactor the order of operations had changed and this got called after reading the player, not before.
2023-10-31 16:32:24 +01:00
Christoph Oelckers
be9ddb0007
Blood: fixed initialization of dmgControl array.
...
This got lost somewhere in the commit shuffling.
2023-10-26 20:26:53 +02:00
Christoph Oelckers
bb6bb85508
added some awful hackery to handle the different offsetting of Blood's native voxels vs. those imported via .DEF.
2023-10-26 19:28:49 +02:00
Christoph Oelckers
94b92a355d
Blood: fixed bad parameters in playSound inlines
2023-10-26 19:09:10 +02:00
Christoph Oelckers
6eae603d20
removed voxel offsetting in Blood's animateSprites function
...
Since offsetting is being done in the backend now, this one is redundant.
2023-10-24 16:45:17 +02:00
Christoph Oelckers
a717491a1b
fix one remaining static declaration of an interface function.
2023-10-23 18:22:49 +02:00
Christoph Oelckers
66db6c5855
remove static declarators from exported action functions.
...
This made GCC error out.
2023-10-23 16:12:43 +02:00
Christoph Oelckers
b0b3f00d18
add missing null check
2023-10-23 16:09:36 +02:00
Christoph Oelckers
a5b37d55a8
added some more symbolic constants.
2023-10-13 23:08:06 +02:00
Christoph Oelckers
dc02d9edbc
fixed some issues with feature flags.
2023-10-13 23:08:06 +02:00
Christoph Oelckers
3e17a9cc88
enabled nnext's grow and shrink shrooms by feature flag.
...
This is a contained feature with no wide reaching impact so it's fine to support.
2023-10-13 23:07:52 +02:00
Christoph Oelckers
065de5979d
did some flag naming
2023-10-13 23:07:52 +02:00
Christoph Oelckers
8ca2ce3042
fix some bad English
2023-10-13 23:07:30 +02:00
Christoph Oelckers
12fe313f4c
clean up burning dude handling in actCheckDudes
2023-10-13 23:07:17 +02:00
Christoph Oelckers
401c260f9c
cleanup of Blood sound playing interface
2023-10-13 23:07:17 +02:00
Christoph Oelckers
7b3203c607
made 'modern' custom monster health an engine feature.
2023-10-13 23:07:17 +02:00
Christoph Oelckers
7a7d579b8e
use symbolic constants for explosion types.
2023-10-13 23:07:00 +02:00
Christoph Oelckers
04a94f70f7
replace sprintf with snprintf.
2023-10-13 23:06:52 +02:00
Christoph Oelckers
603ab5dd73
make TrapExploder feature controlled by a flag.
...
This part of nnext can be retained easily this way.
2023-10-13 23:06:30 +02:00
Christoph Oelckers
2480f27eb4
#ifdef some nnext stuff
2023-10-13 23:06:13 +02:00
Christoph Oelckers
f61dc0467f
Blood: route all state actions through the VM interface and renamed all states and functions with disassembly names
2023-10-08 10:07:05 +02:00
Christoph Oelckers
495e236764
allow Blood to compile with NOONE_EXTENSIONS disabled.
2023-10-08 10:07:05 +02:00
Christoph Oelckers
24a3d91d0d
scriptified the things
2023-10-08 09:41:15 +02:00
Christoph Oelckers
c7e993d949
got rid of missileInfo
2023-10-08 09:41:15 +02:00
Christoph Oelckers
6250906879
implemented proper handling of VM functions as identifiers.
2023-10-08 09:41:15 +02:00
Christoph Oelckers
2c08ee0c5d
refactored SEQ callbacks as well.
2023-10-08 09:41:15 +02:00
Christoph Oelckers
11f094c7fb
reference event callbacks by name, not by internal index.
...
This is needed to allow writing new callbacks.
2023-10-08 09:41:15 +02:00
Christoph Oelckers
47f09c61fc
WIP for event callback refactor
2023-10-08 09:41:14 +02:00
Christoph Oelckers
d86e99a2e1
added class registration code for Blood
2023-10-08 09:41:14 +02:00
Christoph Oelckers
cb443d443c
Blood projectile scriptification.
2023-10-08 09:41:14 +02:00
Christoph Oelckers
93dde24ae1
added native script exports for all functions referenced b AISTATEs.
2023-10-08 09:41:13 +02:00
Christoph Oelckers
d3867cba5f
removed the unused int parameter from state callbacks.
...
This makes handling a lot easier because all state related functions have the same signature
2023-10-08 09:41:13 +02:00
Christoph Oelckers
40ca77c6b5
use a feature flag for the enemy attacks in 3 callback functions.
...
This is simple enough to handle without gModernMap
2023-10-08 09:41:13 +02:00
Christoph Oelckers
11caee7477
exported actGetRespawnTime as a first simple test case.
2023-10-08 09:41:13 +02:00
Christoph Oelckers
79ae66d5ec
exported gGameOptions.
2023-10-08 09:41:12 +02:00
Christoph Oelckers
8e5f2cceda
we really do not need to pack the GAMEOPTIONS struct...
2023-10-08 09:41:12 +02:00
Christoph Oelckers
986d13ea7f
moved 3 functions from actor.cpp to aiunicult.cpp
2023-10-08 09:41:12 +02:00
Christoph Oelckers
91660b71d6
same procedure for PickupWeapon to delete gWeaponItemData.
2023-10-08 09:41:12 +02:00
Christoph Oelckers
9340f39053
use the actor's metadata in PickupAmmo
...
This allows removing the AmmoItemData array.
Also make some tweaks to handle the nnext extension for customizable ammo amount given. Instead of tying it to gModernMap this now also uses a feature flag that will later be exposed to RMAPINFO.
2023-10-08 09:41:11 +02:00
Christoph Oelckers
e8eb558025
hardcode gAmmoItemData[0].count in 4 places.
...
This will have to be done differently later so simplify matters for now by removing the dependency.
2023-10-08 09:41:11 +02:00
Christoph Oelckers
6eda7d930e
read packslot from the actor metadata so that gItemData can be removed.
2023-10-08 09:41:11 +02:00
Christoph Oelckers
64d8fd6072
Blood: scriptified item spawning
...
This was merely a testbed with a limited amount of code, the biggest gain here is that the spawning no longer depends on item IDs but classes so new ones can be added later.
2023-10-08 09:41:11 +02:00
Christoph Oelckers
d83c9f51c3
added texture and class definitions for the 18 items that have no coded function
2023-10-08 09:39:46 +02:00
Christoph Oelckers
4c34f414dc
added the remaining needed GetChars calls.
2023-10-08 09:15:32 +02:00
Mitchell Richters
03a69c24b3
- Move syncinput mechanism into GameInput
object.
2023-10-05 13:10:47 +11:00
Mitchell Richters
623e453d4d
- Fix all GCC warnings in the game-side code.
...
* Most of these were due to mixed spaces/tabs playing nastiness with non-braced if/else statements.
2023-10-04 19:28:25 +11:00
Mitchell Richters
80dd01aef0
- Remove GameInput
friendships inside PlayerAngles
in lieu of a local inline function.
2023-10-04 19:28:25 +11:00
Mitchell Richters
d6de57095d
- Take better advantage of InputPacket::ang
's FRotator
status.
...
* Change it to a DRotator as that's what the game is expecting. Too many narrowings against DAngle objects needed.
* Utilise object methods where possible.
* Do all math against the object where possible, not its members.
2023-10-03 23:07:45 +11:00
Mitchell Richters
1732cd2e83
- Change InputPacket
angles to an FRotator
.
2023-10-03 23:07:45 +11:00