Commit Graph

27 Commits

Author SHA1 Message Date
Léo Lam 8eca2642b0 ksys, uking: move four definitions to match link order
calc_ goes before leave_ in ForceSetCameraPos and InWaterSelForkASPlay,
and RailRoute's dtor goes after getCheckPointName (an unnamed row
there is likely its D0).

BaseProcJobHandler's ctor is linked right before BaseProc's ctor, so it
moves into actBaseProc.cpp, and the class moves into actBaseProc.h so
that its declaration stays with its definition.

(AI assisted using Claude Opus 5.5)
2026-10-15 01:59:46 +02:00
Léo Lam 419f8f46bb ksys/act: split IDamageManager out of DamageManagerBase
DamageManagerBase's root base class (previously
DamageManagerBase_UnknownBase1) holds the damage callback list, and its
code is linked among the ActorSystem objects rather than with the
Game/Actor/Damage files. It appears to be an engine-side abstract base,
so let's move it to KingSystem/ActorSystem as ksys::act::IDamageManager
(unofficial name, following the ksys IManager/Manager pattern and
Actor::getDamageMgr), together with DamageCallback and Struct20Base, and
have Actor::getDamageMgr return it. DamageManagerBase now overrides its
getters and inherits addDamageCallback/removeDamageCallback from it.

The rest of the damage code stays in Game/Actor/Damage but is regrouped
to match link order: Struct20::combineMaybe moves into
actDamageManagerBase.cpp, Struct20::reset becomes inline and
dmgStruct20.cpp becomes actDamageMgr.cpp. The uking::dmg namespace is
merged into uking::act, so the files there take the act prefix too, and
dmgInfoManager becomes actDamageInfoMgr after the class it holds.

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
2026-10-11 04:53:08 +02:00
Léo Lam 7bc225838a Name placeholder declarations after the IDB
Keeps source and CSV from drifting from the IDB. Names are read from the
bodies, e.g. ActionBase::applyParams is what all 13 non-stub overrides
of that slot do.

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
2026-10-06 03:19:37 +02:00
Nitr4m12 5094381e62 lib: Add xlink2 decomp as submodule 2026-07-11 23:40:06 -04:00
bomba1749 f62a726266 most of AirOctaFlyUp is done, some of AirOctaDataMgr is done (#121) 2024-03-18 01:44:47 +00:00
Martin Aguayo 78fd3c6e7a Add uking::ai::ActorWaterDepthSelect functions (#117) 2023-05-14 15:01:16 +01:00
notyourav 2f62d26424 Decompile some Action classes (#104)
* various action classes

* rename instanceset fns

* rename isFork -> isChangeable
2022-10-18 08:27:57 +02:00
Léo Lam a86fb2a9ed ksys/phys: Rename BodyGroup -> StaticCompoundRigidBodyGroup
Makes it obvious that it is related to StaticCompound stuff

Also fixes the relative ordering (BodyGroup is located after Mgr code).
2022-03-23 00:52:23 +01:00
theo3 3d1cb480c2 auto placement work 2022-03-16 17:54:50 -07:00
theo3 20f0a07ab0 AddAutoPlacementCreator action 2022-03-15 22:59:38 -07:00
Léo Lam 423eb84362 ksys/phys: Implement more StaticCompound functions
The other functions require RE'ing BodyGroup, which in turn requires
RigidBody stuff
2022-01-06 23:51:07 +01:00
Léo Lam 5580b49345 ksys/act: Add more Actor members 2021-10-17 23:32:24 +02:00
Léo Lam f726f3b68d ksys/act: Add Actor getDummyBaseProcLink() 2021-07-07 13:56:28 +02:00
theo3 60dd80779a match some ai::Query 2021-07-01 21:05:10 -07:00
Léo Lam 8e0d05234f ksys/act: Start adding LodInfo 2021-05-17 01:37:13 +02:00
Léo Lam c181eb05b7 ksys/act: Add some ActorCreator functions 2021-03-19 01:20:18 +01:00
Léo Lam d5b981a233 ksys: Add ActorMessageTransceiver 2021-02-05 22:03:02 +01:00
Léo Lam cb19f53a48 Implement some commonly used ActorConstDataAccess functions 2021-01-01 17:29:34 +01:00
Léo Lam 9269283b71 ksys/act: Add more ActionBase functions 2020-12-11 00:22:27 +01:00
Léo Lam 930b780cd1 ksys/act: Implement more Query functions 2020-12-09 20:43:22 +01:00
Léo Lam fcbe17a3f0 ksys/act: Start adding RootAi 2020-12-09 18:11:24 +01:00
Léo Lam a72a4b25c0 ksys/act: Add most remaining ParamPack functions 2020-12-06 02:38:22 +01:00
Léo Lam 5b523db03b ksys/act: Implement more ActorUtil functions 2020-12-03 01:45:28 +01:00
Léo Lam b28ba7b3ad ksys/act: Add Actor::getMaxLife and fix encapsulation 2020-11-08 23:04:14 +01:00
Wildex999 05a69f745b ksys/dmg: Implementing some of DamageManagerBase. Added some temporary classes/variables used by DamageManagerBase. 2020-10-21 00:19:48 +02:00
Léo Lam 0dc0752530 ksys/act: Implement ActorLinkConstDataAccess 2020-08-20 01:26:10 +02:00
Léo Lam 2de366be0f Initial commit 2020-08-18 22:50:25 +02:00