Commit graph

1189 commits

Author SHA1 Message Date
Christian Semmler
5021f66de2
Imlpement/match LegoAnimMMPresenter::ParseExtra and related (#822)
* Imlpement/match LegoAnimMMPresenter::ParseExtra and related

* sort
2024-04-20 15:32:10 +02:00
MS
2ce9ff06fc
Enable some multiple-inheritance vtables (#821) 2024-04-19 16:23:36 -04:00
Christian Semmler
d5dd8db46e
Implement LegoAnimationManager::FUN_100609f0 / LegoTranInfo (#820)
* Implement LegoAnimationManager::FUN_100609f0 / LegoTranInfo

* use NULL
2024-04-19 17:42:28 +02:00
Christian Semmler
fb0f35188b
Implement/match LegoCharacterManager::FUN_10083c30 (#819) 2024-04-19 14:30:36 +02:00
MS
9e71eef72b
Change thunk match strategy (#818)
* Change thunk match strategy

* Add orig thunk when recomp is not thunked
2024-04-18 19:39:20 -04:00
MS
9c6120fc37
Beta matching MxOmniCreateFlags (#817)
* Beta matching MxOmniCreateFlags

* Add newlines and swap order

* Add newline
2024-04-17 16:37:16 -04:00
Christian Semmler
e7aec124a2
Implement/match LegoPhonemePresenter::EndAction (#816) 2024-04-17 17:03:17 +02:00
Christian Semmler
97b502362d
Implement/match LegoTextureInfo::FUN_10066010 (#815) 2024-04-17 16:05:51 +02:00
Christian Semmler
7d0957aa3c
LegoTextureContainer::AddToList bugfix 2024-04-17 09:37:26 -04:00
Christian Semmler
06fadd922e
Implement/match LegoROI/LegoLOD::GetTexture (#814)
* Implement/match LegoROI/LegoLOD::GetTexture

* Remove explicit truth tests

* LegoTextureContainer::AddToList fix

* Revert "Remove explicit truth tests"

This reverts commit d169349bd6.
2024-04-17 15:18:34 +02:00
Christian Semmler
a64bb4d460
Implement/match LegoCharacterManager::FUN_100849a0 (#813) 2024-04-17 13:52:59 +02:00
Christian Semmler
11410890cd
Implement/match LegoPhonemePresenter::LoadFrame & PutFrame (#812)
* Implement/match LegoPhonemePresenter::LoadFrame & PutFrame

* add beta10 annotations
2024-04-17 13:26:11 +02:00
Nathan M Gilbert
d639eb4c2b
Implement LegoPathActor::Vtable0x6c (#810)
* Implement LegoPathActor::VTable0x6c

* Update LEGO1/lego/legoomni/src/paths/legopathactor.cpp

Co-authored-by: Anonymous Maarten <madebr@users.noreply.github.com>

* Fix logic / match

* Add BETA annotation

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
Co-authored-by: Anonymous Maarten <madebr@users.noreply.github.com>
2024-04-17 12:34:21 +02:00
MS
536c4336f3
Beta matching MxVariableTable (#811) 2024-04-17 11:31:48 +02:00
Christian Semmler
2600b1b421
Implement/match LegoPhonemePresenter::StartingTickle (#809)
* Implement/match LegoPhonemePresenter::StartingTickle

* Name vars

* Fix name
2024-04-16 16:07:13 +02:00
Nathan M Gilbert
41281dcbec
Implement LegoPathActor::VTable0x70 (#807)
* Implement LegoPathActor::VTable0x70

* match

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-04-16 12:54:08 +02:00
MS
46362a0f6e
Fix some issues with annotations (#808) 2024-04-15 14:42:25 -04:00
Christian Semmler
5f1642bf73
Implement Matrix4::FromQuaternion (#806) 2024-04-15 15:15:13 +02:00
Nathan M Gilbert
dcbad318e0
Implement/Match LegoPathActor::VTable0x74 (#805)
* Implement/Match LegoPathActor::VTable0x74

* Remove superfluous early returns

* fix

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-04-15 13:38:30 +02:00
MS
c8840117be
More effective match strategies (#804)
* More effective match strategies

* Basic check on instruction relocation

* More targeted check for relocation
2024-04-14 17:08:42 -04:00
Misha
540bcc61ad
Implement LegoVideoManager::FUN_1007c520 (#803) 2024-04-14 16:23:32 -04:00
Misha
e251ddb17d
implement LegoAnimNodeData::FindKeys (#802)
* implement LegoAnimNodeData::FindKeys

* Update legoanim.cpp

* fix flickering

* Match

* Fix cond

* clang

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-04-14 14:25:39 -04:00
Christian Semmler
dcc42c33d8
Implement/match LegoROI::FUN_100a8e80 (#801) 2024-04-14 17:46:56 +02:00
Misha
69b250e40c
implement FUN_1003e050 (#799)
* FUN_1003e050

* Match FUN_1003e050

* Remove unused function

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-04-14 17:19:16 +02:00
Nathan M Gilbert
7821d952ec
Pathactor (#800)
* Implement LegoPathActor::VTable0x8c

* Fix paramater name

* WIP fixes

* more fixes

* style

* fix

* fix

* fix

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-04-14 16:43:07 +02:00
Misha
c282b3019d
implement LegoAnimPresenter::VTable0x8c (#798) 2024-04-13 17:42:05 -04:00
Christian Semmler
54421ebcdf
Implement/match LegoAnimPresenter::FUN_1006b9a0 (#797) 2024-04-13 18:05:43 +02:00
Christian Semmler
67127e2515
Implement/match LegoAnimPresenter::PutFrame (#796)
* Implement/match LegoAnimPresenter::PutFrame

* compat mode
2024-04-13 17:59:16 +02:00
Christian Semmler
d469cabd6b
Implement/match LegoAnimPresenter::FUN_1006abb0 (#795) 2024-04-13 16:35:55 +02:00
Christian Semmler
93257a7c8c
Implement/match LegoAnimPresenter::FUN_1006c8a0 (#794) 2024-04-13 16:11:24 +02:00
Christian Semmler
4502737fe2
Implement/match LegoAnimPresenter::FUN_100699e0 (#793) 2024-04-13 16:02:55 +02:00
Christian Semmler
e43749c8bb
Implement/match LegoAnimPresenter::FUN_10069b10 (#792) 2024-04-13 15:55:26 +02:00
Christian Semmler
f5e81777bc
Implement LegoAnimPresenter::FUN_1006a3c0 (#791) 2024-04-13 14:57:18 +02:00
Nathan M Gilbert
e8b61d5a1d
Implement LegoPathActor::Vtable0x84 (#790)
* Implement LegoPathActor::Vtable0x84

* fix condition

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-04-13 14:05:20 +02:00
Christian Semmler
dc3259bb17
Implement/match LegoAnimPresenter::FUN_1006a4f0 (#789) 2024-04-12 17:53:22 +02:00
Misha
4374891ac8
Implement IslePathActor::VTable0xe0 & VTable0xec (#788)
* Implement IslePathActor::VTable0xe0 & VTable0xec

* Revert random change
2024-04-12 07:02:32 -04:00
Joshua Peisach
8cbb094b75
IsleActor::Create, IsleActor::Notify (#779)
* IsleActor::Create, IsleActor::Notify

* fix pizzeria vtable

* clang-format

* fix pizza vtable

* fix annotation

* refactor, add annotations

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-04-11 13:55:22 +02:00
Christian Semmler
91ae26589a
Remove TODO 2024-04-11 07:36:55 -04:00
Nathan M Gilbert
ada83989b1
Implement LegoPathActor::VTable0x88 (#787)
* Implement LegoPathActor::VTable0x88

* Implement FUN_1002ddc0

* Fixes and match

* refac

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-04-11 13:35:15 +02:00
Nathan M Gilbert
507cd0cff4
Refactor/Implement/Match LegoEdge (#786)
* Refactor/Implement/Match LegoEdge

* Reorder annotation

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-04-09 11:25:24 +02:00
Christian Semmler
5cf04bc3c3
Implement/match LegoActor::ParseAction (#785)
* Implement/match LegoActor::ParseAction

* Add call to parent
2024-04-08 14:23:31 +02:00
Christian Semmler
cf18aa8072
Match LegoExtraActor::FUN_1002aae0 2024-04-08 04:18:55 -04:00
MS
512eb786ab
Detect calls using absolute indirect addressing (#784)
* Detect calls using absolute indirect addressing

* Ignore imports we can't match
2024-04-08 03:40:05 -04:00
MS
70912d16c6
Swap cmp operands for effective match (#783) 2024-04-07 16:57:41 -04:00
Christian Semmler
1bfe47357b
Refactor LegoActorStruct into unknown class in misc lib (#782) 2024-04-07 14:36:58 +02:00
Nathan M Gilbert
b394770864
Implement PathActor VTable0x80 and PathActorStruct FUN_1009a140 (#781)
* Implement PathActor VTable0x80 and PathActorStruct FUN_1009a140

* Match functions, fixes

* fixes

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-04-07 14:03:21 +02:00
Christian Semmler
17680522c2
Use proper boolean constant 2024-04-06 15:32:02 -04:00
Christian Semmler
458d4b0988
Use button constant for modifier 2024-04-06 15:30:32 -04:00
Christian Semmler
4b4f2f321c
Implement/match LegoInputManager::FUN_1005cdf0 (#780) 2024-04-06 21:16:35 +02:00
Christian Semmler
f30ed0212b
Implement/match LegoEntity::Notify (#778) 2024-04-06 19:59:38 +02:00