Commit Graph

121 Commits

Author SHA1 Message Date
Léo Lam d5b981a233 ksys: Add ActorMessageTransceiver 2021-02-05 22:03:02 +01:00
Léo Lam 2e4ecb41cf ksys: Start adding MessageTransceiver 2021-01-29 19:20:48 +01:00
Léo Lam 387de6cefb Move mesTransceiver to ksys/Utils/Thread 2021-01-29 13:04:23 +01:00
Léo Lam b9ec01bcad Move members in ksys::mes:: to ksys::
To match the name "ksys::MessageDispatcher"
2021-01-29 12:55:54 +01:00
Léo Lam f9a5601556 Fix formatting issue 2021-01-23 21:48:08 +01:00
Léo Lam 0d9117c1b8 ksys/act: Add remaining actInfoCommon functions 2021-01-22 16:37:57 +01:00
Léo Lam ad95be2d08 ksys/act: Fix missing parameter for InfoData::getStringByKey
Callers in actInfoData.cpp still matched because LLVM detected that the
last argument is unused and optimized it out (or inlined the function
entirely)
2021-01-22 16:37:57 +01:00
Léo Lam 5d36832608 Add a script to generate actInfoCommon
It's too tedious to write by hand
2021-01-22 16:37:57 +01:00
Léo Lam 24bb3a679a ksys/act: Add InfoCommon Bow and Master Sword functions 2021-01-22 14:19:40 +01:00
Léo Lam 73329896f9 ksys/act: Add convenient default for InfoData::getString 2021-01-22 12:35:54 +01:00
Léo Lam 48276bb4e7 uking/ui: Implement material sorting for inventory 2021-01-22 00:14:41 +01:00
Léo Lam 620eb2b39e uking/ui: Add even more inventory functions 2021-01-21 18:12:04 +01:00
Léo Lam 30bbc0c54a uking/ui: Add even more inventory functions 2021-01-20 01:36:14 +01:00
Léo Lam 1999ea8721 ksys/act: Add GlobalParameter 2021-01-09 19:39:33 +01:00
Léo Lam 8569722db6 ksys/act: Start adding actInfoCommon 2021-01-09 17:23:38 +01:00
Léo Lam 9069c4e9f8 ksys/act: Add convenience wrappers for InstParamPack 2021-01-09 16:46:34 +01:00
Léo Lam 3ce19016ec uking/ui: Add more inventory functions 2021-01-09 13:40:43 +01:00
Léo Lam b9d37afa1c ksys/act: Add SameGroupActorName getters 2021-01-07 15:32:59 +01:00
Léo Lam 117e6891b0 Reduce code size by avoiding static inline member variables
Static inline member variables require the compiler to emit a static
runtime constructor in all translation units that can see the variables
in question. This normally wouldn't be a problem, but it gets expensive
really quickly when you have ~3000 classes and ~3000 duplicate
static constructors.

This drops the ELF size from ~270MB to ~220MB and probably speeds up
builds a little bit.
2021-01-01 19:10:46 +01:00
Léo Lam cb19f53a48 Implement some commonly used ActorConstDataAccess functions 2021-01-01 17:29:34 +01:00
Léo Lam 3f9172043c ksys: Implement ActorLimiter 2021-01-01 12:52:58 +01:00
Léo Lam 1ab2897cf4 ksys: Forward declare BaseProc in actAiParam to improve build times
Also fix an indirect include.
2021-01-01 12:52:57 +01:00
Léo Lam 93a82661f0 ksys: Break an include cycle
BaseProcHandle was including BaseProc, which was including
BaseProcHandle, ...
2021-01-01 12:52:42 +01:00
Léo Lam 256f22deb9 ksys: Implement ActorHeapUtil 2020-12-31 17:10:05 +01:00
Léo Lam a9de0746e2 Update sead 2020-12-31 16:59:38 +01:00
Léo Lam 3869e440e7 Generate AIs 2020-12-31 14:16:09 +01:00
Léo Lam dd99768dc1 ksys/act: Implement most other base Ai functions
Remaining: two ASList functions we can't implement yet
2020-12-31 01:26:42 +01:00
Léo Lam 02c583ca4d Generate actions 2020-12-28 01:26:51 +01:00
Léo Lam 18b90cea29 ksys/act: Add copies of getDynamicParam that are sometimes used 2020-12-26 16:21:16 +01:00
Léo Lam 6f71b7b30a ksys/act: Add more ActionBase functions 2020-12-25 12:11:33 +01:00
Léo Lam 399cde1271 ksys/act: Give more meaningful names to ai::ActionBase functions 2020-12-23 21:02:43 +01:00
Léo Lam eba2713653 Generate query factories as well 2020-12-23 14:22:24 +01:00
Léo Lam f98d3ee758 Generate stubs for queries 2020-12-22 01:50:49 +01:00
Léo Lam 60b2362ddc Add EventFlow submodule 2020-12-21 19:38:57 +01:00
Léo Lam f376435211 ksys/act: Fix Query's second loadParams overload 2020-12-21 19:16:49 +01:00
Léo Lam b1470e45fa ksys/act: Add Queries 2020-12-21 16:53:44 +01:00
Léo Lam 64b93c984e ksys/act: Add Behaviors 2020-12-21 16:33:04 +01:00
Léo Lam 258bfd057a ksys/act: Give better names to ActionBase/Actions functions
And get rid of Ais::clone, which is unused.
2020-12-21 15:50:21 +01:00
Léo Lam 62014b715b ksys/act: Implement Actions, Ais 2020-12-20 18:38:18 +01:00
Léo Lam dbe6afa97a ksys/act: Fix matching issue in AiClassDef 2020-12-20 16:08:51 +01:00
Léo Lam 058cca1a3f ksys: Replace ClassContainer<T> with 4 different classes
Some functions look really similar but other functions have significant
differences, so it is probably not a class template.
2020-12-19 21:52:22 +01:00
Léo Lam 19ef291d20 ksys/act: Add two more simple Query functions 2020-12-19 21:00:37 +01:00
Léo Lam 8a22f0bb50 ksys/act: Add more ActionBase, Ai and RootAi functions 2020-12-19 20:37:37 +01:00
Léo Lam a92b163884 Remove unneeded KSYS_ALWAYS_INLINE 2020-12-11 00:24:53 +01:00
Léo Lam 9269283b71 ksys/act: Add more ActionBase functions 2020-12-11 00:22:27 +01:00
Léo Lam e9cf096819 ksys/act: Rename Query::preInit -> loadParams 2020-12-09 20:51:14 +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 ad32d1abe0 ksys/act: Start adding Behavior 2020-12-09 16:10:28 +01:00
Léo Lam 632517f727 ksys/act: Add trivial Action functions 2020-12-09 14:53:37 +01:00