Commit Graph

773 Commits

Author SHA1 Message Date
Léo Lam b0498a15bf
ksys/act: Fix one matching issue 2020-11-16 20:44:20 +01:00
Léo Lam 9ee0c750f2
ksys/res: Add ModelResourceDivide header 2020-11-16 15:01:36 +01:00
Léo Lam 1cbf7fae43
ksys/act: Start adding ActorInfoData 2020-11-16 02:31:22 +01:00
Léo Lam ff80573a97
ksys/Byaml: Add getter wrappers 2020-11-15 23:11:35 +01:00
Léo Lam e9dacfa3d3
ksys/Byaml: Implement al::ByamlIter::operator= more accurately 2020-11-15 21:49:36 +01:00
Léo Lam 3dbd022014
ksys/act: Implement async ActorParamMgr functions 2020-11-15 15:17:16 +01:00
Léo Lam ffe38d0076
ksys/act: Implement more ActorParamMgr functions 2020-11-14 21:06:08 +01:00
Léo Lam d9356ffa90
ksys/res: Add stubs for the remaining ActorParam resource classes
* RagdollConfig
* Physics
* Chemical
* RagdollBlendWeight
* AISchedule
* BoneControl
* AnimInfo
2020-11-14 18:21:32 +01:00
Léo Lam aa636bd44a
ksys/res: Add AttClient header 2020-11-14 14:36:40 +01:00
Léo Lam dcdb1fa70e
ksys/res: Add AS header 2020-11-14 14:19:43 +01:00
Léo Lam c59f8d3dce
ksys/res: Add RagdollConfigList to build 2020-11-14 14:19:27 +01:00
Léo Lam 73d39268fd
Merge pull request #14 from wildex999/Byaml
ksys/utils/byaml: First iteration of implementation.
2020-11-14 14:08:36 +01:00
Wildex999 56f9c3ac0c ksys/utils/byaml: First iteration of implementation.
4 Functions are still not fully matching with their inlined functions,
and at least one function is still missing.
2020-11-14 13:07:07 +01:00
Léo Lam 7b813bdddf
ksys/res: Add RagdollConfigList header 2020-11-14 12:13:39 +01:00
Léo Lam 272926a797
ksys/res: Add AttClientList header 2020-11-14 00:24:58 +01:00
Léo Lam c639c70c5b
ksys/res: Add ASList header 2020-11-13 20:19:27 +01:00
Léo Lam 4c18e03834
ksys/res: Add UMii 2020-11-13 19:03:47 +01:00
Léo Lam c3d665f1c1
ksys/res: Add ModelList (incomplete) 2020-11-13 16:36:40 +01:00
Léo Lam 13d1f0d0be
ksys/res: Add TempResourceLoader 2020-11-12 12:38:47 +01:00
Léo Lam 2f80f2b581
ksys/res: Add ArchiveWork
Required for TempResourceLoader, which is used by ActorParamMgr among
other things
2020-11-12 00:12:56 +01:00
Léo Lam 2abce16984
ksys/act: Implement more ActorParamMgr functions 2020-11-11 19:17:31 +01:00
Léo Lam 27afd0aa6a
ksys/gdt: Implement Manager increase functions 2020-11-11 12:35:59 +01:00
Léo Lam fc4536b0d3
ksys/gdt: Add reset wrappers to Manager and CommonFlags 2020-11-11 02:04:17 +01:00
Léo Lam acda8ab02c
ksys/gdt: Fix typo 2020-11-10 23:11:13 +01:00
Léo Lam f2bce04e0c
Fixup 93b1b17 2020-11-10 22:01:36 +01:00
Léo Lam 93b1b17979
Fix matching errors 2020-11-10 21:52:48 +01:00
Léo Lam a3abb115b9
ksys/res: Fix missing destructor for Resource 2020-11-10 21:25:45 +01:00
Léo Lam 8fd9863e1a
ksys/gdt: Fix "no check, force" setters for vector flags
And add the other setters to the CSV.
2020-11-10 17:51:41 +01:00
Léo Lam d5bdc23ef5
ksys/gdt: Fix array getters/setters being generated incorrectly
They were treated as non-array flags.
2020-11-09 17:30:51 +01:00
Léo Lam aee089b720
ksys/gdt: Fix Manager setter wrappers for string types 2020-11-09 16:45:29 +01:00
Léo Lam 607389e86e
ksys/gdt: Fix several issues in the gdtCommonFlags generation script 2020-11-09 16:35:35 +01:00
Léo Lam 441b98a31e
ksys/gdt: Add getFlagGenericBool/S32 2020-11-09 16:22:59 +01:00
Léo Lam f2927c1de8
ksys/gdt: Do not inline gdtCommonFlagsUtils functions 2020-11-09 16:02:22 +01:00
Léo Lam 79ad7f328d
ksys/gdt: Add commonFlagsUtils
This is separate from gdtCommonFlags.h to avoid having a header with
over 10 thousand lines...
2020-11-09 15:43:26 +01:00
Léo Lam f242ce69ee
ksys/gdt: Add more flag utilities 2020-11-09 15:40:30 +01:00
Léo Lam b28ba7b3ad
ksys/act: Add Actor::getMaxLife and fix encapsulation 2020-11-08 23:04:14 +01:00
Léo Lam 3b36b3af2b
ksys/res: Fix EntryFactory<T>::newResource_ return type
Having a covariant return type that isn't sead::DirectResource* will
cause an extra nullptr check to be emitted
2020-11-08 22:55:24 +01:00
Léo Lam 9749f30484
ksys/res: Fix ActorCapture vtable 2020-11-08 22:45:24 +01:00
Léo Lam 7d2ef1d6b2
ksys/act: Start adding ActorCaptureMgr 2020-11-08 22:26:54 +01:00
Léo Lam ff3421d4eb
ksys: Add Timer (header only for now) 2020-11-08 22:04:33 +01:00
Léo Lam f7e6cce7a9
ksys/act: Implement final non-dev-only ActorParam function 2020-11-08 18:28:43 +01:00
Léo Lam f128251414
ksys/act: Add ActorTemplate 2020-11-08 18:16:55 +01:00
Léo Lam a9ec880f2e
ksys/act: Fix ActorParamMgr struct and add ASSetting stub 2020-11-08 16:17:44 +01:00
Léo Lam aa92bf882c
ksys/act: Implement more ActorParam functions 2020-11-08 15:13:59 +01:00
Léo Lam 23ec19806c
ksys/util: Add Event::isSignalSet
Missed it because of IDA's function tail mechanism...
2020-11-08 13:42:14 +01:00
Léo Lam bdfebd669b
ksys/act: Fix ActorParam encapsulation 2020-11-08 13:27:47 +01:00
Léo Lam bdb97007b1
ksys/act: Remove obsolete comment 2020-11-08 12:25:55 +01:00
Léo Lam ad01b2b1fb
ksys/act: Fix matching issue in ActorParam 2020-11-08 12:22:08 +01:00
Léo Lam 9eb8806b6f
ksys/act: Implement a couple more ActorParam functions 2020-11-08 01:44:58 +01:00
Léo Lam f9456b5b1c
ksys: Fix ActorParam struct 2020-11-08 00:56:14 +01:00
Léo Lam 3bd9d7a599
aoc2: Implement more functions 2020-11-07 23:28:51 +01:00
Léo Lam 3f11fdb6d2
ksys/gdt: Add flag setters (by handle and by name) 2020-11-07 23:28:09 +01:00
Léo Lam bfa4a2553e
ksys/gdt: Add getBool helper 2020-11-07 22:00:27 +01:00
Léo Lam dd8ef71390
ksys/gdt: Add flag value getters to Manager 2020-11-07 16:54:19 +01:00
Léo Lam f60734bded
aoc2: Fix the struct and implement more functions 2020-11-07 02:10:12 +01:00
Léo Lam d87fefe1fb
ksys/gdt: Add common flags 2020-11-06 22:21:02 +01:00
Léo Lam f2a8d32f29
ksys/gdt: Implement more Manager functions 2020-11-06 01:24:28 +01:00
Léo Lam f9373cd154
ksys/gdt: Fix typo in TriggerParam comment 2020-11-04 17:25:22 +01:00
Léo Lam 0b6cdede6d
Add functions to CSV and fix matching issue in InitTimeInfoEx 2020-11-04 12:08:53 +01:00
Léo Lam e70c1c37cd
ksys/gdt: Start adding GameDataMgr 2020-11-04 02:12:27 +01:00
Léo Lam 213d9fb00d
ksys/res: Add missing cLoadDataAlignment constant to GameData 2020-11-04 00:41:27 +01:00
Léo Lam f602b5c6be
ksys/res: Declare registerEntryFactory
Implementation coming soon.
2020-11-04 00:41:02 +01:00
Léo Lam 7d8183f0b2
ksys: Add KingEditor (stub) 2020-11-04 00:40:08 +01:00
Léo Lam 0cb4d828fc
ksys/gdt: Add SaveMgr (stub) to prepare for GameDataMgr 2020-11-04 00:39:09 +01:00
Léo Lam c9998d3abf
ksys/gdt: Make ~Manager the key function to help with dtor matching
Make syncData a pure virtual function that is overridden in Manager
to turn the destructor into the key function.

Otherwise, the GOT would be used to load the vtable pointer until
syncData is implemented, which is quite inconvenient.
2020-11-03 18:57:52 +01:00
Léo Lam 835e11cb16
ksys/gdt: Add missing <algorithm> include 2020-11-03 02:35:38 +01:00
Léo Lam 911625ac23
ksys/res: Add GameSaveData 2020-11-03 02:27:38 +01:00
Léo Lam 382cb57fc1
ksys/gdt: Declare all remaining TriggerParam functions 2020-11-01 11:45:51 +01:00
Léo Lam 6c686fb962
ksys/gdt: Implement more TriggerParam copy functions 2020-11-01 02:34:14 +01:00
Léo Lam 1ccd65836d
ksys/gdt: Start adding TriggerParam's copy record functions 2020-10-31 14:58:32 +01:00
Léo Lam 2cd8eb111f
ksys/gdt: Implement flag+index getters 2020-10-29 21:56:29 +01:00
Léo Lam abf3276642
ksys/gdt: Implement more parts of TriggerParam (notably setters) 2020-10-28 22:19:34 +01:00
Léo Lam fd9b8ad11d
ksys/gdt: Add TriggerParamConfig 2020-10-27 00:52:51 +01:00
Léo Lam 82a6c0152e
ksys/gdt: Add wrappers for property getters 2020-10-26 02:08:45 +01:00
Léo Lam c612f77fcd
ksys/gdt: Implement TriggerParam::recordFlagChange 2020-10-25 14:32:56 +01:00
Léo Lam 660336044f
ksys/gdt: Implement more TriggerParam functions 2020-10-24 23:30:53 +02:00
Léo Lam 6cae9c75b5
Use sead::SafeString overload of HashCRC32::calcStringHash 2020-10-24 21:00:59 +02:00
Léo Lam 45b4c7e29f
ksys/util: Fix minor regalloc issue in TaskQueueBase 2020-10-24 17:49:27 +02:00
Léo Lam f974569ef4
ksys/gdt: Fix class hierarchy 2020-10-24 01:27:17 +02:00
Léo Lam 1cbb1a3311
Merge pull request #13 from notyourav/pr
decompile DamageParam
2020-10-24 01:21:18 +02:00
theo3 b11347344a decompile DamageParam 2020-10-23 16:15:23 -07:00
Léo Lam 7f0d6a9b1d
ksys/util: Add safeDeleteHeap 2020-10-22 19:01:18 +02:00
Léo Lam a26ae0ba91
ksys/gdt: Start adding TriggerParam 2020-10-22 18:54:26 +02:00
Léo Lam 228471ee3c
Merge pull request #12 from notyourav/pr3
decompiled resResourceAwareness
2020-10-21 00:59:59 +02:00
theo3 4bb4c935a6 decompiled resResourceAwareness 2020-10-20 15:48:31 -07:00
Léo Lam 3287f5eb25
Merge pull request #8 from notyourav/pr
resResourceShop decompiled
2020-10-21 00:40:39 +02:00
Léo Lam 38859e0f6e
Merge pull request #11 from wildex999/master
ksys/dmg: Implementing some of DamageManagerBase.
2020-10-21 00:32:43 +02: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
theo3 c562d67fab resResourceShop decompiled 2020-10-20 15:00:08 -07:00
Léo Lam 27da317935
ksys/res: Add GameData 2020-10-18 20:52:02 +02:00
Léo Lam eb222dc784
ksys/util: Add missing const qualifier to one ByamlIter member function 2020-10-17 23:17:09 +02:00
Léo Lam e3fd543178
ksys/gdt: Add Flag 2020-10-17 22:31:35 +02:00
theo3 b2134d8304 fix missing pragma once 2020-10-16 19:10:04 -07:00
Léo Lam dbaac9cb78
ksys/act: Add InstParamPack 2020-10-16 00:06:18 +02:00
Léo Lam 2d721f8969
ksys/eco: Add LevelSensor header
It's not implementable yet because Ecosystem and some act:: code hasn't
been decompiled yet.
2020-10-15 21:04:51 +02:00
Léo Lam eedba1cd95
ksys/res: Remove obsolete comment for Handle 2020-10-15 18:40:14 +02:00
Léo Lam b16ba552db
ksys/res: Implement all of Handle 2020-10-15 17:09:26 +02:00
theo3 f47c49b5a0 decompile actorCapture 2020-10-14 15:24:24 -07:00
Léo Lam afec1a82cc
ksys/res: Implement Handle destructor 2020-10-12 01:46:30 +02:00
Léo Lam 0a0d287e37
ksys/res: Implement ResourceMgrTask cache clear functions 2020-10-11 21:42:10 +02:00
Léo Lam 1c9d5781ae
ksys/res: Implement more ResourceMgrTask and OverlayArena functions 2020-10-11 19:24:03 +02:00
Léo Lam fc0d0ddaf7
ksys/res: Implement more ResourceUnit functions 2020-10-11 01:15:56 +02:00
Léo Lam 689221f4a2
ksys/res: Rename TaskRequest to ControlTaskRequest
Avoids possible confusion with ksys::util::TaskRequest.
2020-10-10 23:43:46 +02:00
Léo Lam c080f61e35
ksys/res: Add size assertion for MemoryTaskRequest
Helps avoid regressions.
2020-10-10 13:59:51 +02:00
Léo Lam 00b9296aa9
ksys/res: Implement ResourceMgrTask::calc_ and fix MemoryTaskRequest 2020-10-10 13:50:55 +02:00
Léo Lam 78f64ca78c
ksys/res: Implement ResourceMgrTask::insertOverlayArena 2020-10-10 01:30:29 +02:00
Léo Lam 83660921b6
ksys/res: Start adding ResourceMgrTask
Adds data members and simple functions.
2020-10-10 00:54:50 +02:00
Léo Lam 76655d85a9
ksys/res: Implement some ResourceMgrTask prerequisites 2020-10-08 00:09:53 +02:00
Léo Lam 99de7fa009
ksys/res: Add more LifeCondition functions 2020-10-06 20:44:10 +02:00
theo3 4eae9f9cc8 decompile resResourceLifeCondition 2020-10-05 19:08:30 -07:00
Léo Lam 12e6979b6c
ksys/res: Implement more Cache functions 2020-10-04 02:00:38 +02:00
Léo Lam 2930173f65
ksys/res: Add MemoryTask 2020-09-27 14:56:42 +02:00
Léo Lam 50ebf5116f
ksys/util: Add TaskMgr initialisation helper 2020-09-27 14:16:10 +02:00
Léo Lam ba5a3c642d
ksys/res: Add ControlTask, TaskRequest 2020-09-27 13:00:37 +02:00
Léo Lam b1926813b7
ksys/res: Start adding ResourceUnit and Cache 2020-09-26 21:03:24 +02:00
Léo Lam 26baae29de
ksys/frm: Fix RootTaskParam struct layout 2020-09-26 21:03:24 +02:00
Léo Lam b8eeb70da3
ksys: Add frm::RootTaskParam 2020-09-26 19:15:30 +02:00
Léo Lam d088e0cc58
ksys/util: Remove obsolete comment 2020-09-26 17:12:13 +02:00
Léo Lam b2ce4e32ea
ksys/util: Add Task functions that were missed because of IDA's bad tail detection 2020-09-26 17:04:43 +02:00
Léo Lam cdf27ca63c
ksys/util: Add StrTreeMapKey(const SafeString&) for convenience 2020-09-26 15:48:18 +02:00
Léo Lam cb1b70bb03
ksys/act: Fix matching issue in BaseProcMapNode::erase_
Fixed by adding an inline function, as usual...
2020-09-25 21:40:53 +02:00
Léo Lam 53f375b0ec
ksys/util: Fix matching issue in StrTreeMapKey::setKey
The stack variable is in fact a StrTreeMapKey temporary that is used
by the default assignment operator.
2020-09-25 20:28:31 +02:00
Léo Lam 90b93ef720
ksys: Silence unused-private-field warning in Account 2020-09-25 18:10:58 +02:00
Léo Lam 2b26a9bb76
ksys: Start adding PlayReport 2020-09-25 16:07:44 +02:00
Léo Lam 89137d9834
ksys: Add Account 2020-09-25 01:14:17 +02:00
Léo Lam 72d100323c
ksys/res: Implement OffsetReadFileDevice 2020-09-24 21:30:18 +02:00
Léo Lam 7d51cbac51
ksys/res: Add more LoadRequest classes 2020-09-24 19:48:36 +02:00
Léo Lam 9e6e871859
Fix formatting issues 2020-09-24 14:38:37 +02:00
Léo Lam 4cb68509c7
ksys/Utils: Fix inaccuracy in TaskThread dtor 2020-09-24 13:55:36 +02:00
Léo Lam 7a5f9dae9b
ksys/sys: Fix inaccuracy 2020-09-24 13:24:32 +02:00
Léo Lam 8faa579a69
ksys/Map: Fix initialization order for key hashes 2020-09-24 12:38:17 +02:00
Léo Lam 75eaf5608f
ksys/res: Start adding LoadRequest 2020-09-23 22:38:03 +02:00
Léo Lam 22a0c93c51
ksys/res: Add status descriptions 2020-09-22 19:36:59 +02:00
Léo Lam d1c2700677
build: Add missing CMakeLists 2020-09-22 18:43:04 +02:00
Léo Lam 8756ccdd07
ksys: Start adding OverlayArenaSystem 2020-09-22 18:43:03 +02:00
Léo Lam 509d19f762
build: Split the main CMakeLists.txt for readability reasons 2020-09-20 17:18:14 +02:00
Léo Lam 5dc9b9542e
ksys/res: Add getters for GParam objects 2020-09-20 14:54:40 +02:00
Léo Lam ba8edc3d45
ksys/res: Finish GParamList by fixing stack issues
Turns out Nintendo used a macro.
2020-09-20 14:42:36 +02:00
Léo Lam 9aadac7040
ksys/res: Implement GParamList Motorcycle 2020-09-20 14:01:35 +02:00
Léo Lam 75fca6248c
ksys/res: Implement GParamList AirWall 2020-09-20 14:00:11 +02:00
Léo Lam b8a3ac571c
ksys/res: Implement GParamList PictureBook 2020-09-20 13:59:00 +02:00
Léo Lam 8b3aed47e6
ksys/res: Implement GParamList GolemIK 2020-09-20 13:55:36 +02:00
Léo Lam e9dbd61deb
ksys/res: Implement GParamList Event 2020-09-20 13:53:16 +02:00
Léo Lam db9f30ed81
ksys/res: Implement GParamList WolfLink 🐺 2020-09-20 13:51:22 +02:00
Léo Lam f9a64a2ce5
ksys/res: Implement GParamList HorseTargetedInfo 2020-09-20 13:15:06 +02:00
Léo Lam 59916149b7
ksys/res: Implement GParamList Golem 2020-09-20 13:13:13 +02:00
Léo Lam 1a37389159
ksys/res: Implement GParamList ChemicalType 2020-09-20 13:11:10 +02:00
Léo Lam 364108b0fa
ksys/res: Implement GParamList AutoGen 2020-09-20 13:09:42 +02:00
Léo Lam 5407926f7e
ksys/res: Implement GParamList Beam 2020-09-20 13:08:12 +02:00
Léo Lam f2d0fcc8c0
ksys/res: Implement GParamList Global 2020-09-20 13:06:23 +02:00
Léo Lam 0c2a62c7fd
ksys/res: Implement GParamList ClothReaction 2020-09-20 13:01:22 +02:00
Léo Lam e9328d26e4
ksys/res: Implement GParamList GuardianMini 2020-09-20 12:26:41 +02:00
Léo Lam acccdd5b96
ksys/res: Implement GParamList StalEnemy 2020-09-20 12:25:04 +02:00
Léo Lam b7b1f6a28b
ksys/res: Implement GParamList Wizzrobe 2020-09-20 12:22:17 +02:00
Léo Lam 5583679013
ksys/res: Implement GParamList Nest 2020-09-20 12:19:25 +02:00
Léo Lam 0e13b65932
ksys/res: Implement GParamList GelEnemy 2020-09-20 12:18:31 +02:00
Léo Lam 2868170492
ksys/res: Implement GParamList Swarm 2020-09-20 12:15:24 +02:00
Léo Lam 15deb532c2
ksys/res: Implement GParamList MonsterShop 2020-09-20 12:13:57 +02:00
Léo Lam 2daaa04b71
ksys/res: Implement GParamList Guardian 2020-09-20 12:12:34 +02:00
Léo Lam 63c932e396
ksys/res: Implement GParamList GiantArmor 2020-09-20 12:10:46 +02:00
Léo Lam 2770d637c7
ksys/res: Implement GParamList GiantArmorSlot 2020-09-20 12:09:44 +02:00
Léo Lam bc80812c09
ksys/res: Implement GParamList HorseCreator 2020-09-20 12:06:03 +02:00
Léo Lam 707001d747
ksys/res: Implement GParamList HorseRider 2020-09-20 12:03:23 +02:00
Léo Lam ac66ce82e2
ksys/res: Implement GParamList HorseObject 2020-09-20 12:01:04 +02:00
Léo Lam c6d573f6d7
ksys/res: Implement GParamList HorseUnit 2020-09-20 12:00:09 +02:00
Léo Lam 782cdf9415
ksys/res: Implement GParamList Horse 2020-09-20 11:57:37 +02:00
Léo Lam ef1925df9f
ksys/res: Implement GParamList Rope 2020-09-20 11:55:47 +02:00
Léo Lam 518586b352
ksys/res: Implement GParamList Fish 2020-09-20 11:54:21 +02:00
Léo Lam 806b54b027
ksys/res: Implement GParamList Insect 2020-09-20 11:52:59 +02:00
Léo Lam f31654ef7a
ksys/res: Implement GParamList AnimalUnit 2020-09-20 11:52:02 +02:00
Léo Lam 58f52a8cc2
ksys/res: Implement GParamList EatTarget 2020-09-20 11:49:32 +02:00
Léo Lam fa45c13199
ksys/res: Implement GParamList BindActor 2020-09-20 11:48:28 +02:00
Léo Lam 1a055d81da
ksys/res: Implement GParamList ExtendedEntity 2020-09-20 11:46:16 +02:00
Léo Lam 2fd514a30d
ksys/res: Implement GParamList AnimalFollowOffset 2020-09-20 11:44:40 +02:00
Léo Lam ee9dfe6ae3
ksys/res: Implement GParamList Prey 2020-09-20 11:39:00 +02:00
Léo Lam 8781079806
ksys/res: Add GParamList Traveler to parse list 2020-09-20 11:35:34 +02:00
Léo Lam e318790ae5
ksys/res: Implement GParamList Zora 2020-09-20 01:44:55 +02:00
Léo Lam 0f1fe77664
ksys/res: Implement GParamList NpcEquipment 2020-09-20 01:42:21 +02:00
Léo Lam 80c8d2f762
ksys/res: Implement GParamList Npc 2020-09-20 01:40:21 +02:00
Léo Lam c0eec2b1c8
ksys/res: Implement GParamList LumberjackTree 2020-09-20 01:38:26 +02:00
Léo Lam 91ced88d4e
ksys/res: Implement GParamList CookSpice 2020-09-20 01:37:02 +02:00
Léo Lam c0d7b624ae
ksys/res: Implement GParamList CureItem 2020-09-20 01:35:06 +02:00
Léo Lam 5dabe96826
ksys/res: Implement GParamList Bullet 2020-09-20 01:33:27 +02:00
Léo Lam 0d02234773
ksys/res: Implement GParamList Arrow 2020-09-20 01:28:20 +02:00
Léo Lam 1d89ca868c
ksys/res: Implement GParamList Rupee 2020-09-20 01:25:23 +02:00
Léo Lam 31f108e78b
ksys/res: Implement GParamList Item 2020-09-20 01:23:56 +02:00
Léo Lam 00e2ba737e
ksys/res: Implement GParamList Liftable 2020-09-20 01:21:24 +02:00
Léo Lam fcdb52e723
ksys/res: Implement GParamList SeriesArmor 2020-09-20 01:18:31 +02:00
Léo Lam 2d566fbbd9
ksys/res: Implement GParamList ShiekerStone 2020-09-20 01:16:34 +02:00
Léo Lam 9aa37fdf5a
ksys/res: Implement GParamList ArmorUpper 2020-09-20 01:13:04 +02:00
Léo Lam 13df0a6560
ksys/res: Implement GParamList ArmorHead 2020-09-20 01:11:44 +02:00
Léo Lam 0f0a7259a9
ksys/res: Implement GParamList ArmorEffect 2020-09-20 01:10:39 +02:00
Léo Lam 3bed1f3360
ksys/res: Implement GParamList Armor 2020-09-20 01:09:22 +02:00
Léo Lam e28d742e27
ksys/res: Implement GParamList Grab 2020-09-20 01:07:31 +02:00
Léo Lam 1fe88a8707
ksys/res: Implement GParamList Camera 2020-09-20 01:05:16 +02:00
Léo Lam 5cd5dafce6
ksys/res: Implement GParamList Player 2020-09-20 00:36:15 +02:00
Léo Lam 276d266291
ksys/res: Implement GParamList GuardianMiniWeapon 2020-09-20 00:31:04 +02:00
Léo Lam a5ea3328f4
ksys/res: Implement GParamList MasterSword 2020-09-20 00:29:20 +02:00
Léo Lam 5cc61e6db8
ksys/res: Implement GParamList WeaponOption 2020-09-20 00:26:06 +02:00
Léo Lam 5a2ff7cedf
ksys/res: Implement GParamList Bow 2020-09-20 00:24:09 +02:00
Léo Lam 8b6e95939d
ksys/res: Implement GParamList Shield 2020-09-19 23:59:42 +02:00
Léo Lam 9c32a09afb
ksys/res: Implement GParamList Spear 2020-09-19 23:53:49 +02:00
Léo Lam 6979611c63
ksys/res: Implement GParamList LargeSword 2020-09-19 23:43:33 +02:00
Léo Lam 5e9d25da72
ksys/res: Implement GParamList Rod 2020-09-19 23:36:33 +02:00
Léo Lam 15a60c029e
ksys/res: Implement GParamList SmallSword 2020-09-19 23:34:12 +02:00
Léo Lam b800e1a9e6
ksys/res: Implement GParamList Sandworm 2020-09-19 23:24:14 +02:00
Léo Lam 9a50ece856
ksys/res: Implement GParamList WeaponThrow 2020-09-19 23:21:59 +02:00
Léo Lam a079a5ab20
ksys/res: Implement GParamList WeaponCommon 2020-09-19 22:45:05 +02:00
Léo Lam f22c87d03f
ksys/res: Implement GParamList Attack 2020-09-19 22:40:21 +02:00
Léo Lam 0e69423ecb
ksys/res: Implement GParamList BindBone 2020-09-19 22:38:25 +02:00
Léo Lam e1e3f71d50
ksys/res: Implement GParamList EnemyShown 2020-09-19 22:35:16 +02:00
Léo Lam 72a9500adf
ksys/res: Implement GParamList AttackInterval 2020-09-19 22:32:14 +02:00
Léo Lam 54500e2d1d
ksys/res: Implement GParamList EnemyRace 2020-09-19 22:29:46 +02:00
Léo Lam 643efc3104
ksys/res: Implement GParamList EnemyLevel 2020-09-19 22:24:39 +02:00
Léo Lam b3be87fe4f
ksys/res: Implement GParamList Enemy 2020-09-19 22:18:54 +02:00
Léo Lam 62e675b9f4
Fix include quotes 2020-09-19 22:09:31 +02:00
Léo Lam 5ff20fa250
ksys/res: Implement GParamList System + General 2020-09-19 22:06:52 +02:00
Léo Lam 62880a0b1d
ksys/res: Start implementing GParamList
Incomplete because many of the sub-objects have their constructors
inlined into the GParamList parse function...
2020-09-19 22:00:00 +02:00
Léo Lam 7767a81449
ksys: Add GParamListObjType enum
Values are used as indices for the GeneralParamList resource class'
PtrArray.
2020-09-19 01:37:16 +02:00
Léo Lam a59add899e
ksys/res: Add GParamListObjectTraveler
Also adds source files for the resource class, though they're just
stubs at the moment.
2020-09-19 00:55:52 +02:00
Léo Lam 50027520f7
ksys: Add defines for some function attributes 2020-09-19 00:50:24 +02:00
Léo Lam af1aacc5bd
ksys/utils: Add FixedString for light constexpr string manipulation 2020-09-18 20:37:54 +02:00
Léo Lam 7828ee535d
ksys/act: Fix extra semicolon in macro definition 2020-09-18 01:20:20 +02:00
Léo Lam 1176af740b
aoc2: Add shouldApplyMasterModeDamageMultiplier 2020-09-18 01:12:07 +02:00
Léo Lam 7553861fb8
Add actor tag definitions 2020-09-17 20:35:28 +02:00
Léo Lam 76378caa60
ksys/act: Add more ActorConstDataAccess functions
Implements a couple of simple wrappers around BaseProc member functions
2020-09-17 18:31:36 +02:00
Léo Lam 7226150ed7
ksys/act: Add ActorLinkConstDataAccess (incomplete)
Also moves from functions from ActorLinkConstDataAccess (the base class
for BaseProc) into the Actor-specific ActorConstDataAccess
2020-09-17 17:42:35 +02:00
Léo Lam 1cc0b1e6be
Implement aoc2::rankUpEnemy
It's a pretty large function and I wanted to see how difficult it would
be to match it. Not very hard :D
2020-09-17 00:50:36 +02:00
Léo Lam b93b9d3c45
ksys: Add map::Object (incomplete) 2020-09-16 22:50:02 +02:00
Léo Lam f733cd0d5c
ksys: Add map::MubinIter 2020-09-16 21:43:02 +02:00
Léo Lam 1b21cd669b
game: Put actions, AIs, behaviors, queries in an "AI" folder
Helps keep things clean as Game starts containing more source files.
2020-09-16 19:00:03 +02:00
Léo Lam 3db6228dfc
ksys: Add more task utilities
* TaskMgr, ManagedTask, ManagedTaskHandle

* GameTaskThread: partial implementation because PhysicsMemSys / Havok
  stuff hasn't been decompiled yet and calc_() requires PhysicsMemSys
2020-09-16 17:49:37 +02:00
Léo Lam 8b7369dffb
ksys: Add Task utilities 2020-09-15 17:54:16 +02:00
Léo Lam 59c91970f6
ksys/res: Add Recipe
It's mostly the same as Drop. *shrug*
2020-09-10 16:49:07 +02:00
Léo Lam 6af5dfd747
ksys/Utils: Add Event 2020-09-10 13:53:26 +02:00
Léo Lam 0f0c1b59ca
ksys/res: Add Drop 2020-09-10 00:09:01 +02:00
Léo Lam 5ab4e15967
ksys/res: Add AIProgram 2020-09-09 17:29:45 +02:00
Léo Lam 02e6bb42db
ksys/Utils: Improve accuracy of HeapUtil::tryCreateDualHeap 2020-09-07 14:38:53 +02:00
Léo Lam 8961c0cc6c
ksys/Utils: Implement tryCreateDualHeap 2020-09-07 00:13:42 +02:00
Léo Lam 96deb88e27
ksys/Utils: Add DualFrameHeap 2020-09-06 22:52:10 +02:00
Léo Lam 69dc675a95
ksys/Utils: Add DualHeap 2020-09-06 22:51:58 +02:00
Léo Lam 8f3eeb87b9
Move SizedEnum to sead
It is useful in sead and other libraries as well.
2020-09-06 21:23:29 +02:00
Léo Lam 83ad191341
ksys/res: Implement CurrentResNameMgr 2020-09-06 18:03:21 +02:00
Léo Lam 1778aff4d4
ksys/res: Rename Resource::m5() to finalize() 2020-09-06 17:55:26 +02:00
Léo Lam bb055e442e
ksys/res: Implement Archive 2020-09-06 17:10:23 +02:00
Léo Lam 3d3bcaee1a
ksys/res: Add ActorLink 2020-09-06 16:34:53 +02:00
Léo Lam 02051dce6b
ksys/res: Add size assertion for Demo
And fix the CMakeLists.
2020-09-05 22:10:08 +02:00
Léo Lam 0fafc292f9
ksys/res: Implement Demo 2020-09-05 21:34:45 +02:00
Léo Lam 072e906eaf
ksys/res: Add Lod 2020-09-05 17:30:39 +02:00
Léo Lam 977ff07c85
ksys: Implement more heap utilities 2020-09-04 22:38:24 +02:00
Léo Lam 3d371999a4
ksys/res: Implement EntryFactory (base class and template)
Also adds a heap-related function that's used by EntryFactory
(and many other functions)
2020-09-04 22:01:52 +02:00
Léo Lam 578955f4e9
ksys/res: Implement Resource (base class) 2020-09-04 20:15:55 +02:00
theo3 2ee9bba8b8 AiAction and AiClass getters and setter functions 2020-08-27 16:16:20 -07:00
theo3 965d34c712 non request BaseProcHandle stuff
refactoring

baseProcHandle.cpp refactoring
2020-08-27 14:48:22 -07:00
theo3 aff4047630 actionSetInstEventFlag ctor dtor 2020-08-27 14:10:18 -07:00
theo3 71ac906495 defined baseProcHandle, baseProcUnit nonmatchings 2020-08-27 14:10:17 -07:00
Léo Lam 87cc9104de
ci: Add a PR lint workflow 2020-08-22 10:42:36 +02:00
notyouraveragehooman da35629aa8
BaseProc::release 2020-08-22 10:17:58 +02:00
notyouraveragehooman a49164a85f
BaseProc child connection functions 2020-08-22 10:17:58 +02:00
notyouraveragehooman ff99d77635
BaseProc::getConnectedCalcParent
BaseProc::setConnectedCalcParent
2020-08-22 10:17:05 +02:00
Léo Lam fc306aa5f0
ksys: Decompile ByamlUtil
And fix some declarations in Byaml.h
2020-08-21 22:21:26 +02:00
Léo Lam bad90bc5d8
ksys: Add headers for BYML utilities 2020-08-21 21:18:27 +02:00
Léo Lam efdedd1d88
ksys/act: Fix const-correctness for BaseProcLink::getProc 2020-08-20 18:47:59 +02:00
Léo Lam afde5b2775
ksys/act: Implement BaseProcLink 2020-08-20 18:25:47 +02:00
Léo Lam f92ab2f559
ksys/act: Finish BaseProcLinkData 2020-08-20 12:19:13 +02:00
Léo Lam c9207a3cc3
ksys/act: Implement act::acquireProc 2020-08-20 11:26:23 +02:00
Léo Lam 7e96f826c0
ksys/act: Fix ~ActorLinkConstDataAccess 2020-08-20 11:02:45 +02:00
Léo Lam 0dc0752530
ksys/act: Implement ActorLinkConstDataAccess 2020-08-20 01:26:10 +02:00
Léo Lam 6989d0f7f8
ksys/act: Get rid of some setDirect() calls 2020-08-20 00:03:13 +02:00
Léo Lam 50a8a8c5e3
ksys/act: Implement BaseProc::x00000071011ba9fc 2020-08-19 21:00:50 +02:00
Léo Lam 5de91ef5fd
ksys/act: Fix BaseProc::isSpecialJobType_ return type
BaseProc::isSpecialJobType_ returns 0, 1 or 2

This fixes the matching issue!
2020-08-19 18:16:03 +02:00
Léo Lam 08687964b4
ksys/act: Declare more BaseProc functions
It's possible I've missed some BaseProc functions but now every single
function that was identified as a BaseProc member function in my IDB
has been added to the class

Most of those are very easy to implement.
2020-08-19 18:12:18 +02:00
Léo Lam 2de366be0f
Initial commit 2020-08-18 22:50:25 +02:00