Christian Semmler
939c09139f
Match LegoOmni::Destroy and related ( #917 )
...
* Match LegoOmni::Destroy and related
* Write COMPAT_MODE macro differently
* fix lint issue
2024-05-14 14:13:27 +02:00
Christian Semmler
ccf33575db
Implement/match LegoPathController::FUN_10046050 ( #916 )
2024-05-13 14:39:43 +02:00
Christian Semmler
5f34d2e877
Implement/match LegoPathController::AddActor and RemoveActor ( #915 )
...
* Implement/match LegoPathController::AddActor and RemoveActor
* Fix types
2024-05-13 12:46:59 +02:00
Christian Semmler
91fe09af3c
Implement various small LegoPathController functions ( #914 )
...
* Implement/match LegoPathController::Tickle
* Implement various small LegoPathController functions
* Add 0x10046b30
2024-05-12 21:30:34 +02:00
Christian Semmler
b6fc8e27b1
Implement/match LegoPathController::Tickle ( #913 )
2024-05-12 21:10:26 +02:00
Christian Semmler
32a3373360
Implement/match LegoPathController::Destroy ( #912 )
2024-05-12 20:48:50 +02:00
Christian Semmler
dcaa07cc49
Implement/match LegoPathController::Create and Init ( #911 )
2024-05-12 20:33:20 +02:00
Christian Semmler
f88f7b115e
Implement/match LegoPathController::ReadBoundaries ( #908 )
...
* Implement/match LegoPathController::ReadBoundaries
* Allow spawn
2024-05-11 19:55:28 +02:00
Christian Semmler
1f0a2a50ce
Implement/match LegoPathController::ReadEdge ( #907 )
...
* Implement/match LegoPathController::ReadEdge
* Fix
* Rename
* Add 100482b0
* Rename
2024-05-11 19:45:13 +02:00
Christian Semmler
09394c3512
Implement/match LegoPathController::FUN_10047b30 ( #906 )
...
* Implement/match LegoPathController::FUN_10047b30
* Fix delete
2024-05-11 18:57:07 +02:00
Christian Semmler
f442f1a2f7
Implement/match LegoPathController::Read ( #904 )
...
* Implement/match LegoPathController::Read
* Add size asserts
2024-05-11 18:23:18 +02:00
Christian Semmler
5df947dbb9
Implement/match LegoPathController::FUN_10045c20 and LegoPathController ctor ( #903 )
...
* Implement/match LegoPathController::FUN_10045c20 and LegoPathController ctor
* Remove obsolete struct
2024-05-11 15:32:11 +02:00
Christian Semmler
c77dd44105
Implement/match LegoCharacterManager::FUN_10083b20 and FUN_10085180 ( #902 )
2024-05-11 14:13:27 +02:00
Christian Semmler
d9a82323ca
Implement/match LegoAnimationManager::AddExtra ( #901 )
...
* Implement/match LegoAnimationManager::AddExtra
* Rename member
* Fix param names
* Remove space
2024-05-10 20:07:38 +02:00
Christian Semmler
a1388adcd7
Refactor camera locations and other structs, name functions based on BETA ( #900 )
...
* Refactor camera locations and other structs, name functions based on BETA
* Add size assert
* Fix member name
2024-05-10 16:23:47 +02:00
Christian Semmler
f5ffd3aba3
Implement/match LegoAnimationManager::FUN_100627d0 ( #899 )
2024-05-10 15:11:35 +02:00
Christian Semmler
172db7b5d8
Implement/match LegoAnimationManager::FUN_10062710 ( #897 )
2024-05-09 22:32:06 +02:00
Christian Semmler
556cbdaab3
Implement/match LegoAnimationManager::FUN_10062650 ( #896 )
...
* Implement/match LegoAnimationManager::FUN_10062650
* Shorten code
2024-05-09 22:24:45 +02:00
Christian Semmler
6a8fb3f46b
Implement/match LegoAnimationManager::FUN_10062580 ( #895 )
2024-05-09 22:10:00 +02:00
Christian Semmler
9ae2acbea8
Implement/match LegoAnimationManager::ModelExists ( #894 )
...
* Implement/match LegoAnimationManager::FUN_10062520
* Name function
2024-05-09 21:53:13 +02:00
Christian Semmler
5629eb3c85
Implement/match LegoAnimationManager::FUN_100623a0 ( #893 )
2024-05-09 21:33:48 +02:00
Christian Semmler
001b46b2ab
Implement/match LegoAnimationManager::FUN_10062110 ( #892 )
...
* Implement/match LegoAnimationManager::FUN_10062110
* Fix param name
* Return other value in stub
2024-05-09 18:49:43 +02:00
Christian Semmler
36d681fde4
Implement/match LegoAnimationManager::FUN_100617c0 ( #891 )
2024-05-09 16:30:34 +02:00
Mark Langen
55299229c2
LegoBuildingManager Round 2 ( #890 )
...
* LegoBuildingManager Round 2
* 100% match most of the remaining methods, only
Tickle and FUN_10030630 remain.
* The interesting finding is that the curious
members of the LegoBuildingManager form a short
embedded fixed-length array used to store info
about current animation of buildings.
* I saw that you removed the SetY which I had
added to MxMatrix. Agree that this method
doesn't make sense on MxMatrix, however I've
added it back to Matrix4. I see the pattern of
setting / getting the Y component used in enough
places that I doubt they were just hoping they
remembered the subscript correctly every time.
Let me know if you agree or still don't think it
makes sense to include.
* Formatting
* Order
* Satisfy name checker
* Add beta annotations and adjust style/naming
* Make function STUB
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-05-09 15:57:38 +02:00
Christian Semmler
5c8249f334
Implement/match LegoAnimationManager::FUN_10061530 ( #889 )
2024-05-08 16:28:32 +02:00
Christian Semmler
05edf96186
Implement LegoAnimationManager::FUN_10061010 ( #888 )
2024-05-07 21:59:46 +02:00
Christian Semmler
bac891cb0c
Implement/match LegoAnimationManager::FUN_10060570 ( #886 )
2024-05-07 16:54:06 +02:00
Mark Langen
253882bdcb
Start work on building save data ( #885 )
...
* Start work on building save data
* Add LegoBuildingData struct to LegoBuildingManager, naming mirrors
LegoCharacterData in LegoCharacterManager.
* 100% match of many methods in LegoBuildingManager using the struct.
* Formatting
* Add required includes post merge
* Format again
* Better follow naming conventions
* Format again again
* Also fill in template data
* Fix data
* Change braces
* Match functions, consistent style, add missing annotations, some BETA annotations
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-05-06 13:15:19 +02:00
Christian Semmler
45f9f54f21
Implement/match IslePathActor::SpawnPlayer ( #884 )
...
* Implement/match IslePathActor::SpawnPlayer
* Fix
* Fix
* Add skip
* Rename param
2024-05-04 16:13:05 +02:00
Christian Semmler
1b1d2ecde6
Refactor LegoOmni into LegoMain/Scripts ( #883 )
...
* Refactor LegoOmni into LegoMain/Scripts
* Fix guard
2024-05-04 14:06:32 +02:00
Christian Semmler
51adf75b9b
(Refactor) Use more forward declarations ( #881 )
...
* Use more forward declarations
* Use more forward declarations
* Add more forward declarations
* Fix
2024-05-03 18:19:12 +02:00
Christian Semmler
72cbd1fc60
Refactor LegoOmni::PathContainer into IslePathActor::SpawnLocation ( #877 )
...
* Refactor LegoOmni::PathContainer into IslePathActor::SpawnLocation
* Add beta annotation
* Type var
2024-05-02 16:51:41 +02:00
Christian Semmler
0bf39c7108
Implement/match LegoAnimationManager::Tickle ( #876 )
...
* Implement/match LegoAnimationManager::Tickle
* Resolve out of order
* Fix naming
2024-05-02 15:22:09 +02:00
Christian Semmler
cd39e71597
Implement/match LegoAnimationManager::Notify ( #875 )
...
* Implement/match LegoAnimationManager::Notify
* Rename notification type
2024-05-01 15:00:42 +02:00
Christian Semmler
6c89cd3315
Minor refactor SkateBoard setter in Pizza ( #874 )
2024-05-01 13:49:47 +02:00
jonschz
84b789ef9e
Implement the rest of the SkateBoard class ( #873 )
...
* Implement SkateBoard::~SkateBoard()
* Implement SkateBoard::VTable0xd4
* Implement SkateBoard::Create()
- one typecast is still not clear
* Add SkateBoard::VTable0xe4()
* apply clang-format
* Apply clang-format to legocontrolmanager.h
* Address review comments
* 57 percent match
* 63 percent
* 82 percent match
* previous 86 was bugged, unfortunately
* 85 percent on FUN_10010270
* 92 percent FUN_10010270
* 69 percent VTable0xcc
* 73 percent VTable0xcc
* more progress, not quite there yet
* minor 10010510 improvement
* 100 % on FUN_10010510
* slowly making progress on SkateBoard::VTable0xcc (broken decomp)
* getting closer, now only wrong registers
* 89 percent VTable0xcc
* 92 percent
* 95 % VTable0xcc
* Changes, see comment
---------
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-05-01 13:36:58 +02:00
Christian Semmler
20dee07b9c
Implement/match LegoAnimationManager::FUN_100605e0 ( #872 )
...
* Implement/match LegoAnimationManager::FUN_100605e0
* Remove padding
* Fix annotation
2024-04-30 16:02:58 +02:00
Christian Semmler
b902790c54
Implement/match LegoAnimationManager::FUN_1005f6d0 and FUN_1005f700 ( #871 )
...
* Implement/match LegoAnimationManager::FUN_1005f6d0 and FUN_1005f700
* Use bool constants
2024-04-30 12:38:55 +02:00
Christian Semmler
60796eff74
Implement/match LegoAnimationManager::Suspend ( #870 )
2024-04-30 12:18:44 +02:00
Christian Semmler
599d8c91c8
Implement/match LegoAnimationManager::Resume ( #869 )
...
* Implement/match LegoAnimationManager::FUN_1005f0b0
* Rename
2024-04-30 10:27:57 +02:00
Christian Semmler
7c6c68d6f9
Rename LegoCharacterData to LegoCharacterInfo ( #867 )
2024-04-28 15:04:27 +02:00
Christian Semmler
ca9b611251
Add enums for character LODs and parts ( #866 )
2024-04-28 14:49:07 +02:00
jonschz
b17d76c2cc
Refactor: Replace magic values by enum values ( #865 )
...
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-04-28 07:27:17 -04:00
jonschz
dede20000f
Progress towards implementing SkateBoard ( #864 )
...
* Implement SkateBoard::~SkateBoard()
* Implement SkateBoard::VTable0xd4
* Implement SkateBoard::Create()
- one typecast is still not clear
* Add SkateBoard::VTable0xe4()
* apply clang-format
* Apply clang-format to legocontrolmanager.h
* Address review comments
---------
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-04-28 07:23:29 -04:00
Christian Semmler
ec7df356cf
Implement/match LegoAnimationManager::Reset ( #863 )
...
* Implement/match LegoAnimationManager::Init
* Rename function
* fix hex val
2024-04-27 16:31:50 +02:00
Christian Semmler
659599b635
Implement/match Pizzeria::Create ( #862 )
2024-04-27 16:06:12 +02:00
Christian Semmler
f6ffeabed7
Implement/match LegoAnimationManager::GetCharacterIndex ( #861 )
2024-04-27 15:59:00 +02:00
Christian Semmler
c7e5457f95
Implement/match LegoAnimationManager::FUN_10062770 ( #860 )
2024-04-27 15:46:47 +02:00
Christian Semmler
e49d05c410
Implement/match LegoAnimationManager::FUN_10063780 and FUN_10063aa0 ( #859 )
2024-04-27 15:19:55 +02:00
Christian Semmler
86203f1704
Implement/match LegoAnimationManager::Init ( #858 )
2024-04-27 15:07:28 +02:00