Commit Graph

390 Commits

Author SHA1 Message Date
Léo Lam 39856b1a7d uking/ui: Implement getWeaponStats 2021-01-22 19:55:52 +01:00
Léo Lam 5280254ef1 uking/dmg: Implement DamageInfoMgr::isTrueFormMasterSword
And some trivial getters.
2021-01-22 17:36:21 +01:00
Léo Lam 5328fd2782 Move Damage to Game/ and add more DamageInfoMgr members
Damage stuff seems to be considered game code rather than KingSystem
code based on the function order in the executable and on the fact
that the Damage code uses other components that are known to be
in Game/U-King rather than in KingSystem.
2021-01-22 17:10:53 +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 bb3f05e209 uking/ui: Implement weapon and bow sorting in inventory 2021-01-22 12:35:54 +01:00
Léo Lam d9f7561588 uking/ui: Implement food sorting in inventory 2021-01-22 12:35:53 +01:00
Léo Lam 48276bb4e7 uking/ui: Implement material sorting for inventory 2021-01-22 00:14:41 +01:00
Léo Lam 7814fd527b uking/ui: Implement shield sorting for inventory 2021-01-22 00:14:40 +01:00
Léo Lam 3e31611d2a uking/ui: Clean up PauseMenuDataMgr::getItemByIndex
Deduplicate the nullptr checks.
2021-01-21 18:17:37 +01:00
Léo Lam 620eb2b39e uking/ui: Add even more inventory functions 2021-01-21 18:12:04 +01:00
Léo Lam 57d3a082c2 uking/ui: Add more PauseMenuDataMgr functions 2021-01-21 01:03:57 +01:00
Léo Lam 30bbc0c54a uking/ui: Add even more inventory functions 2021-01-20 01:36:14 +01:00
Léo Lam 0ac3ba93ad uking/ui: Add more inventory functions 2021-01-19 19:01:27 +01:00
Léo Lam fe3a437a26 uking/ui: Rename mItem_44488 to mLastAddedItem
That's what it is
2021-01-19 19:01:26 +01:00
Léo Lam a0f67e2f7d uking/ui: Implement PauseMenuDataMgr::addToPouch 2021-01-18 02:08:34 +01:00
Léo Lam 36fa2b36c2 uking/ui: Remove setValue() for consistency 2021-01-17 23:46:31 +01:00
Léo Lam 268f7f2d8a uking/ui: Add inventory loading function 2021-01-17 19:46:43 +01:00
Léo Lam a338f4f6f0 uking/ui: Fix some clang-tidy warnings 2021-01-17 16:08:30 +01:00
Léo Lam 01b8a01ec3 uking: Mark WeaponModifierInfo member functions as const when possible 2021-01-17 14:53:13 +01:00
Léo Lam eeeab7ab93 uking/ui: Add inventory saving function 2021-01-17 14:34:52 +01:00
Léo Lam 404597421d ksys/gdt: Add some special flag utils 2021-01-16 21:18:24 +01:00
Léo Lam 4a6f3f9786 uking/ui: Implement "item get" PauseMenuDataMgr function 2021-01-16 21:18:24 +01:00
Léo Lam 2f9e3d0c32 ksys/map: Fix include cycle 2021-01-14 12:51:48 +01:00
Léo Lam ee713ab899 uking/ui: Add "can get item" inventory functions 2021-01-11 19:00:31 +01:00
Léo Lam c28e7ace3d uking/ui: Implement PauseMenuDataMgr::countItems 2021-01-11 15:51:22 +01:00
Léo Lam 4c171605ff uking/ui: Fix PouchConstants struct 2021-01-11 15:51:22 +01:00
Léo Lam d943be4ea1 uking/ui: Add named constants for inventory item limits
Cleaner
2021-01-11 15:45:06 +01:00
Léo Lam 2ae06d6b39 uking/ui: Fix another minor accuracy issue (add inline function)
Both versions match perfectly, but there is a wrapper function for
getSameGroupActorName in the Wii U version.
2021-01-10 22:58:38 +01:00
Léo Lam dd653e871f uking/ui: Fix minor accuracy issue (don't use memcpy)
Still matches, but the original code didn't use memcpy (according to
the Wii U version)
2021-01-10 22:58:11 +01:00
Léo Lam 29817a3e21 uking/act: Add most of the weapon modifier utils 2021-01-10 02:14:31 +01:00
Léo Lam d67568341b ksys/util: Remove unnecessary include 2021-01-10 01:37:20 +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 23b3047f49 Add aocManager header stub 2021-01-08 19:37:21 +01:00
Léo Lam 5912b65eff uking/ui: Add Master Sword related inventory functions 2021-01-08 12:55:01 +01:00
Léo Lam e3791db95e Remove incomplete match 2021-01-08 12:47:44 +01:00
Léo Lam f90e96360e uking/ui: Add some more PauseMenuDataMgr functions 2021-01-08 11:51:49 +01:00
Léo Lam 8a18657290 Add missing trailing newlines 2021-01-07 22:15:11 +01:00
Léo Lam ebc09f924a uking/ui: Start adding PauseMenuDataMgr 2021-01-07 22:11:41 +01:00
Léo Lam b9d37afa1c ksys/act: Add SameGroupActorName getters 2021-01-07 15:32:59 +01:00
Léo Lam b3fa7ae230 uking: Implement GameDataConvertIntToSring action 2021-01-01 19:21:17 +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 cb33d236a3 uking: Implement GameDataAddVec3 action 2021-01-01 19:00:46 +01:00
Léo Lam f621d136c0 uking: Implement GameDataAddInt action 2021-01-01 19:00:41 +01:00