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
71d833f9ea
- Make Exhumed's new view tilting features accessible for all games.
2023-04-22 19:34:53 +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
Christoph Oelckers
07102fbd39
- fixed missing CANNONBALLS texture alias.
2023-04-16 21:47:06 +02:00
Christoph Oelckers
608b4e8e0f
- initialize the new temporary actor properties to something useful.
2023-04-16 17:35:23 +02:00
Christoph Oelckers
5da28bf5ad
- added new CHANF_SINGULAR flag plus a handler for CHANF_LOCAL in Duke.
2023-04-16 17:35:22 +02:00
Christoph Oelckers
a3da3a4c43
- added a large bunch of script exports.
2023-04-16 17:35:15 +02:00
Christoph Oelckers
5f68291f69
- added skeleton definitions for all new Nuclear Winter items and their base tiles.
2023-04-16 16:53:53 +02:00
Christoph Oelckers
ea96c66a93
- made some annotations in concmd_shoot how to deal with RRRA's merged projectiles.
2023-04-16 16:53:52 +02:00
Christoph Oelckers
712ed44e94
- use names instead of strings with FindActor.
2023-04-16 16:53:52 +02:00
Christoph Oelckers
cb8137c32b
- consolidated shoot_d and shoot_r.
2023-04-16 16:53:52 +02:00
Christoph Oelckers
ef412c20cc
- scriptified shootrpg.
...
Due to its ugly special cases this function is most likely not modding-safe.
2023-04-16 16:53:52 +02:00
Christoph Oelckers
3d09be118a
- scriptified the freezeblast shooter.
2023-04-16 16:53:52 +02:00
Christoph Oelckers
e97fc54179
- scriptified shootstuff.
2023-04-16 16:53:52 +02:00
Christoph Oelckers
9085157130
- scriptified shootwhip.
2023-04-16 16:53:51 +02:00
Christoph Oelckers
afe7086189
- reimplemented WW2GI's hitscan related events in ZScript.
2023-04-16 16:53:51 +02:00
Christoph Oelckers
3af08ecbac
- scriptified and consolidated the hitscan attacks.
2023-04-16 16:53:51 +02:00
Christoph Oelckers
1f5cd93564
- wall flag interface cleanup.
...
With wall textures now available the workarounds could be removed.
2023-04-16 16:53:51 +02:00
Christoph Oelckers
041d5214a4
- two new flags for the hitscan attack.
2023-04-16 16:53:51 +02:00
Christoph Oelckers
0643ab22c0
- scriptified the melee attack.
2023-04-16 16:53:51 +02:00
Christoph Oelckers
1d887755a5
- scriptified shootfireball.
2023-04-16 16:53:50 +02:00
Christoph Oelckers
76b9314f63
- scriptified shootMortar.
2023-04-16 16:53:50 +02:00
Christoph Oelckers
48f7690756
- scriptified tripbomb 'shooting'.
2023-04-16 16:53:50 +02:00
Christoph Oelckers
1462cb5e9d
- refactored some of WW2GI's gamewar stuff so that it is accessible to ZScript as well.
...
The features here are useful, the way they were handled not so much. What is there now can also be set from proper definition files instead of CON hacks.
2023-04-16 16:53:50 +02:00
Christoph Oelckers
1597cf5400
- exported the grower's shoot function and moved stuff to a separate file.
2023-04-16 11:49:47 +02:00
Christoph Oelckers
71a005fda6
- added a few 'const'.
2023-04-16 11:47:56 +02:00
Christoph Oelckers
77d14ec721
- scriptified shootshrinker and moved all shrinker code to a separate file.
2023-04-16 11:47:56 +02:00
Christoph Oelckers
e15517cf57
- fixed some issues with projectile ownership.
...
Some init code was run here that should not be run. Added a new flag to handle this case without major code explosion.
2023-04-16 07:54:26 +02:00
Christoph Oelckers
c73830992f
- added a few exports and properties for weapon shooting and added missing 'const' annotations for ShootThis overrides.
2023-04-15 23:23:09 +02:00
Christoph Oelckers
17cde1e3ca
- Duke: fixed bad init of hitag in initspriteforspawn
2023-04-15 19:53:04 +02:00
Christoph Oelckers
0a91a9a199
- route checkhitsprite fully through the virtual interface so that the player class can finally be exported.
2023-04-12 22:02:01 +02:00
Christoph Oelckers
60af1b4c62
- renamed temp_data[0] to 'counter' and map temp_data[5] to the now free temp_data[0].
...
This not only matches its use in CON but seems to be used as a counter in most other places as well.
The main reason is to improve readability of CON to ZScript conversions.
2023-04-12 21:54:33 +02:00
Christoph Oelckers
8bd88b8678
- migrate all script related info to the data stored in the actor classes.
...
This also needs cactor to really change the class descriptor now so that the correct script code is found.
2023-04-12 21:54:20 +02:00
Christoph Oelckers
c418356420
- added the action, move and ai properties.
2023-04-12 21:52:56 +02:00
Christoph Oelckers
947d427a9d
- merged tileinfo and actorinfo.
2023-04-12 21:52:28 +02:00
Christoph Oelckers
ebf7b4a121
- copy the CON defined info into the actual actors.
...
Only using the strength value right now.
2023-04-12 20:29:37 +02:00
Christoph Oelckers
a155a09f9f
- deleted the setflag inlines.
2023-04-12 20:07:12 +02:00
Christoph Oelckers
62ace9371f
- moved the 3 actor properties out of the global data.
2023-04-12 20:07:12 +02:00
Christoph Oelckers
cc8495c31e
- got rid of the g_t pointer in the CON interpreter.
...
Using g_ac->temp_data now.
2023-04-12 20:07:12 +02:00
Christoph Oelckers
f0637cfc83
- moved actioncounter and curframe to a dedicated variable.
...
The third generic counter is not as easy to fix as its use is far more widespread
2023-04-12 20:07:12 +02:00
Christoph Oelckers
4b096f4f3e
- nulling contents of a freshly spawned actor is not necessary.
...
All objects are zero inited.
2023-04-12 20:07:11 +02:00
Christoph Oelckers
14dd9c3711
- refactored AI storage as well to not use ScriptCode anymore.
2023-04-12 20:07:11 +02:00
Christoph Oelckers
b9702fbb66
- moved 'move' data out of the ScriptCode array as well.
2023-04-12 20:07:11 +02:00
Christoph Oelckers
30ccbe2710
- moved actions out of the ScriptCode array and gave them a dedicated struct with meaningful member names.
2023-04-12 20:07:11 +02:00
Christoph Oelckers
94b676bd7c
- wrapped access to the current 'move' values read from CON.
2023-04-12 20:07:11 +02:00
Christoph Oelckers
c76c511da2
- moved sprite animation code out of 'execute'.
2023-04-12 20:07:10 +02:00
Christoph Oelckers
0c17a369db
- Duke: changed skill filter to be solely controlled by the spawnclasses definitions.
...
All classes with no skill filter now need an explicit noskill declaration.
The only exception is inert sprites using DukeActor directly, these will never get filtered by skill.
2023-04-12 20:06:25 +02:00
Christoph Oelckers
53e41bd3b3
- Duke: added missing texture alias for the cannon.
2023-04-11 20:23:34 +02:00
Christoph Oelckers
660227e175
- Duke: restrict skill filter to those actors which originally handled it.
...
For flexibility there now is a flag that can be set on any actor class, but due to precedent it needs to be off by default.
2023-04-11 20:14:02 +02:00
Christoph Oelckers
ee61daed97
- reinstate code from e2db4a8
that got removed by a badly resolved merge conflict in ae4ef64
.
2023-04-10 16:48:08 +02:00
Christoph Oelckers
2f61a44329
- Duke: do not clear the KILLCOUNT flag.
...
This seems to have gotten back by accident.
2023-04-10 16:41:58 +02:00
Christoph Oelckers
1d79d0cee3
- Duke: fixed pitch calculation for explosion sounds.
...
This part was missed when the backend's pitch management was changed to floats instead of Q1.7 fixed point numbers.
2023-04-10 09:13:33 +02:00
Christoph Oelckers
7b1ef9e020
- Duke: Do not set SFLAG_BADGUY for internal bad guys.
...
This will pass an incorrect value for clipdist to clipmove.
2023-04-10 08:56:37 +02:00
Christoph Oelckers
3df7539eb9
- fixed return values of badguy()
and bossguy()
functions.
2023-04-09 15:45:19 +02:00
Christoph Oelckers
684fb5eb74
- added a few things missing for RR and Route 66.
...
R66's gator was also added - this is the only completely new actor in this mod.
2023-04-09 09:46:10 +02:00
Christoph Oelckers
7f758eef2b
- got rid of the script-side flag wrappers.
2023-04-09 09:46:09 +02:00
Christoph Oelckers
04a027f748
- removed most parameters from fall_common.
2023-04-09 09:46:09 +02:00
Christoph Oelckers
cfa18952d1
- deleted the native flag setter code.
2023-04-09 09:46:09 +02:00
Christoph Oelckers
918c75cb6e
- validate statnum before spawning an actor.
2023-04-09 09:46:09 +02:00
Christoph Oelckers
da0b429751
- migrated attackertype to class objects.
2023-04-09 09:46:09 +02:00
Christoph Oelckers
ae4ef6401c
- use the actual actor flags.
...
Not fully working yet...
2023-04-09 09:45:42 +02:00
Christoph Oelckers
b908ede470
- reviewed actor flags and applied several fixes.
2023-04-09 09:35:37 +02:00
Christoph Oelckers
8172a9ac0c
- moved all flags into the actor definitions.
2023-04-09 09:35:37 +02:00
Christoph Oelckers
f4c176988a
- first round of flag additions.
2023-04-09 09:35:36 +02:00
Christoph Oelckers
50d406be4e
- Duke: Do not call Initialize()
for player actors.
...
The base function is doing things not meant for players, and we do not have a proper class yet that can deal with it.
2023-04-09 08:15:23 +02:00
Christoph Oelckers
e2db4a834e
- Duke: apply default scale only to enemies defined in CON.
...
This code does not apply to the Recon!
2023-04-08 09:37:51 +02:00
Christoph Oelckers
9c164ad290
- fixed crash when stomping shrunk enemies.
2023-04-08 07:14:07 +02:00
Christoph Oelckers
60339a217c
- moved a lot of shareable code out of the CON interpreter.
2023-04-07 13:15:06 +02:00
Christoph Oelckers
9ba0b18013
- moved the 3 health related instructions out of the CON interpreter.
...
This code can be shared with ZScript so it needs to be elsewhere.
2023-04-07 13:15:06 +02:00
Christoph Oelckers
980b3f257a
- converted the final set of actor classes the native code needs to reference.
2023-04-07 13:15:06 +02:00
Christoph Oelckers
2ba204444c
- merged the spawn init code now that all differences are externalized
2023-04-07 13:15:06 +02:00
Christoph Oelckers
aae2c2dc3c
- exported RR's enemies
2023-04-07 13:15:06 +02:00
Christoph Oelckers
779026162d
- exported all of RR's pickup items.
2023-04-07 13:14:19 +02:00
Christoph Oelckers
3dd87cfd7f
- got rid of checkType.
2023-04-07 12:22:46 +02:00
Christoph Oelckers
f2d802b537
- exported RR's remaining controllers.
2023-04-07 12:22:45 +02:00
Christoph Oelckers
98d5a2686e
- use for loop instead of repeating the same line 10x.
2023-04-07 12:22:45 +02:00
Christoph Oelckers
0e169759d5
- animatesprites_r.cpp cleanup
2023-04-07 12:22:45 +02:00
Christoph Oelckers
f9e5f2c137
- final clenaup on animatesprites_d.cpp.
...
Only the player actor is left, which is also the messiest part...
2023-04-07 12:22:44 +02:00
Christoph Oelckers
ce00183707
- scriptified PlayerOnWater.
2023-04-07 12:17:56 +02:00
Christoph Oelckers
3106c8e6f5
- exported most of the remaining content in spawn_d.cpp
2023-04-07 12:14:16 +02:00
Christoph Oelckers
8b04f42ab5
- exported several fire related actors.
2023-04-07 11:52:53 +02:00
Christoph Oelckers
ef6a8c010a
- exported ceilingsteam and consolidated movefallers functions.
2023-04-07 11:52:53 +02:00
Christoph Oelckers
82d04756be
- exported a few of Duke's decorations
2023-04-07 11:52:53 +02:00
Christoph Oelckers
551e0af58d
- exported the egg, also marking it non-killcount.
2023-04-07 11:52:53 +02:00
Christoph Oelckers
b4dcf8ddcf
- exported the remaining Duke enemies.
2023-04-07 11:52:53 +02:00
Christoph Oelckers
0636358b5f
- fixes for RR items.
2023-04-07 11:52:53 +02:00
Christoph Oelckers
1bc7c53351
- move the recon's FTA sound into the scripted actor.
2023-04-07 11:52:52 +02:00
Christoph Oelckers
ef54987a58
- exported WT's Firefly
2023-04-07 11:52:52 +02:00
Christoph Oelckers
4e0dad54a5
- exported all of Duke's pickup items.
2023-04-07 11:51:41 +02:00
Christoph Oelckers
7a699e032f
- cleaned up Duke's very broken kill count system.
...
This now uses a static flag to denote an actor as countable and an internal flag to track its killed state, because CON can toggle that at will.
2023-04-07 09:49:20 +02:00
Mitchell Richters
bf58879b08
- Duke/RRRA: Fix HUD tilting when reversing motorcycle backwards.
2023-04-04 15:14:44 +10:00
Mitchell Richters
a68fcfc71c
- Remove GameInterface::getConsoleAngles()
, it's not needed anymore.
2023-04-04 07:02:39 +10:00
Mitchell Richters
3ef431a428
- Make scaleAdjust
a float since it's what's needed anyway.
2023-04-03 19:38:00 +10:00
Mitchell Richters
69c65dfe7e
- Internalise InputPacket
used in movement functions.
2023-04-03 19:35:35 +10:00
Mitchell Richters
dbba0abb2e
- Move all mouse handling into GameInput
class.
2023-04-03 18:47:14 +10:00
Mitchell Richters
8d11fef916
- Initial conversion of game input into class GameInput
.
2023-04-03 18:46:36 +10:00
Christoph Oelckers
0706a8a5bb
- exported LizTrooper and Lizman.
2023-04-02 17:37:30 +02:00
Christoph Oelckers
240b24d771
- exported all females.
2023-04-02 17:34:37 +02:00