Commit Graph

1560 Commits

Author SHA1 Message Date
Christian Semmler
8afa64048b
More BETA matches in MxDiskStreamController (#1292)
* More BETA matches in `MxDiskStreamController`

* Fix
2024-12-27 21:03:04 +01:00
Christian Semmler
2422d997cf
Match some more MxDiskStreamController functions (#1291) 2024-12-27 20:14:16 +01:00
Christian Semmler
a3b191f601
Match MxPresenter::StartAction (#1290) 2024-12-27 20:05:22 +01:00
Christian Semmler
d5fdea372b
Match LegoAnimationManager::FUN_10063b90 (#1289) 2024-12-27 19:11:25 +01:00
Ramen2X
fb2e9fb5ec
rename MxSmack to MxSmk (#1288)
* rename MxSmack to MxSmk

* format
2024-12-27 13:00:56 -05:00
Christian Semmler
669454a194
Use virtual operators in vector.h (#1287)
* Use virtual operators in vector.h

* Remove public
2024-12-27 18:20:18 +01:00
Christian Semmler
f475d5e196
Match MxTransitionManager::Tickle (#1286) 2024-12-27 17:33:20 +01:00
Christian Semmler
fd5f7ad620
Match MxPtrList<LegoNamedPart>::Destroy (#1285) 2024-12-26 20:57:30 +01:00
Christian Semmler
667ea3ff82
Various matches with BETA functions (#1281)
* Match functions to BETA

* Improve `Matrix4::FromQuaternion`

* Improve `Matrix4::ToQuaternion` match

* Fix bug that was fixed in retail

* Match `Vector4::NormalizeQuaternion`
2024-12-25 22:05:28 +01:00
jonschz
70baf8cecc
Fix float constants and conversions (#1279)
* Fix legoplants warnings, add BETA10 references

* Fix warnings in various header files, improve match

* Fix floats in legoactors.cpp

* Fix `legolocations.cpp`

* fix typo

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-25 21:01:00 +01:00
Christian Semmler
6b3fcafbe1
Match Helicopter::HandleEndAnim (#1276) 2024-12-25 18:39:51 +01:00
Christian Semmler
0f338a882b
Match some list functions in MxStreamController to BETA10 (#1273) 2024-12-24 22:42:20 +01:00
Christian Semmler
c2c9c75f1a
Fix Vector2/Vector3 order (#1272)
* Fix Vector2/Vector3 order

* Refactor vector classes to be const and reference param consistent

* Add BETA10 annotations and fixes
2024-12-24 22:21:26 +01:00
Christian Semmler
7c41ff4569
Order compilation units according to retail, match and align Score class (#1271)
* Initial changes for ordering, Score

* Add mxdebug

* Match `Score::Paint`

* Refactor

* Add BETA asserts

* BETA match
2024-12-24 19:38:15 +01:00
Joshua Peisach
bb29d289fe
SkateBoard: name m_unk0x160 -> m_pizzaVisible (#1269) 2024-12-24 07:50:37 -07:00
Anonymous Maarten
b4d2ea72af
Fix -Wwrite-strings warnings (#1267)
warning: ISO C++ forbids converting a string constant to 'LegoChar*'
2024-12-23 17:11:38 -07:00
Anonymous Maarten
938a5d7f19
Implement MxDisplaySurface::VTable0x34 (#1264)
* Implement MxDisplaySurface::VTable0x34

* Match

* Remove function count since we got them all

* Update README.md

* Remove emphasis on work-in-progress

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-12-23 19:18:14 +01:00
Christian Semmler
5ffa91d5fd
Match MxDiskStreamController::FUN_100c7db0 (#1265)
* Match `MxDiskStreamController::FUN_100c7db0`

* Modern compiler fix
2024-12-23 19:06:45 +01:00
Christian Semmler
1b99d75543
Refactor geom library into geom and shape (#1263)
* Refactor `geom` library into `geom` and `util`

* Rename to `shape`
2024-12-23 17:25:23 +01:00
Christian Semmler
5b19d7953a
Refactor MxStreamList based lists (#1260)
* Refactor stream lists

* Fix naming

* Fix header inclusion

* Fix annotations

* Move function definitions to header

* Remove mxstreamprovider.cpp

* Naming
2024-12-23 16:32:16 +01:00
Joshua Peisach
48c327ca5a
Implement MxDisplaySurface::VTable0x2c (#1262)
* Implement MxDisplaySurface::VTable0x2c

* fix header namespace

* Incorporate improvements from @madebr branch

* Naming

* Naming

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
Co-authored-by: Anonymous Maarten <anonymous.maarten@gmail.com>
2024-12-23 16:17:36 +01:00
MS
1f582eb610
Implement MxDisplaySurface::VTable0x24 (#1261)
* MxDisplaySurface::VTable0x24

* Fix stride/length check in vtable24 and vtable28
2024-12-22 20:21:07 -07:00
Christian Semmler
cbc3d7227e
Implement/match LegoWEGEdge functions (#1259)
* Implement/match `LegoWEGEdge::VTable0x04`

* Implement/match `LegoWEGEdge::FUN_1009aea0`

* Rename
2024-12-22 19:47:39 +01:00
jonschz
3e6d789324
Add all BETA10 ClassName() functions and vtables (#1258)
* Add all BETA10 `ClassName()` functions and vtables

* Run formatter, fix copy error

* Fix copy error

* Add BETA10 library functions

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-22 08:13:34 -07:00
MS
276ad8d735
MxDSBuffer::ParseChunk to 100% (#1257)
* MxDSBuffer::ParseChunk to 100%

* Restore SUCCESS tests
2024-12-21 20:03:12 -07:00
Christian Semmler
b03de35e30
Further accuracy improvement on LegoNavController::Notify (#1255)
* Further accuracy improvement on `LegoNavController::Notify`

* Use enum
2024-12-21 23:38:22 +01:00
Christian Semmler
a987533ba1
Fix a bug in LegoNavController, improve accuracy (#1254)
* Fix a bug in `LegoNavController`, improve accuracy

* Fix
2024-12-21 23:17:45 +01:00
Christian Semmler
fe2a65c8da
Implement/match LegoNavController::Notify (#1253)
* Implement/match `LegoNavController::Notify`

* Move function

* Add to total function count

* Add OPT:REF to lego1
2024-12-21 22:41:47 +01:00
Christian Semmler
bcc41256f8
Add LegoOmni::World enum (#1252) 2024-12-21 18:08:55 +01:00
jonschz
3e427ab03e
Improve Helicopter::Animate() (#1251)
* Small improvements

* More improvements

* Small drive-by refactor

* Do not inline `UnknownMx4DPointFloat::FUN_10004520()`

* Fix `Act3Brickster::Animate`

* Fixes

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-12-21 17:21:22 +01:00
MS
fc93b84655
MxDSBuffer::FUN_100c67b0 100% (#1250) 2024-12-21 00:36:57 -07:00
Christian Semmler
5a61cf6566
Move CreateStreamObject to proper location (#1249) 2024-12-20 22:15:52 +01:00
Christian Semmler
c9acd9a49f
Minor fixes (#1248) 2024-12-20 20:23:01 +01:00
Christian Semmler
2b4f71e17d
Implement/match Act3Cop::FUN_10040360 (#1247)
* Implement/match `Act3Cop::FUN_10040360`

* Remove comments

* Modern compiler fix
2024-12-20 19:49:18 +01:00
Anonymous Maarten
581ba0f5ae
Implement GroupImpl::Bounds (#1246)
* Implement/match DeviceImpl::HandleActivate

* Implement/match DeviceImpl::HandlePaint

* Implement GroupImpl::Unknown (71.63%)

* Fixes

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-12-20 19:48:31 +01:00
MS
bfc6d460a8
MxDSBuffer::SkipToData to 100% (#1245)
* MxDSBuffer::SkipToData to 100%

* Add blank line
2024-12-20 19:23:24 +01:00
Anonymous Maarten
b338a66a77
Implement GroupImpl::RemoveAll (#1244)
* Implement GroupImpl::RemoveAll (81.30%)

* Minor improvement

* Add 2 to total function count

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-12-20 17:50:33 +01:00
Anonymous Maarten
6f3f8c2ade
Implement LegoVideoManager::DrawFPS (#1243)
* Implement LegoVideoManager::DrawFPS

* Implement MxDisplaySurface::FUN_100bc8b0

* Match functions

* type

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-12-20 17:05:40 +01:00
jonschz
7ed2ac9ccc
Progress on Helicopter::FUN_100042a0 (#1242)
* Implement `LegoCameraController::FUN_100123b0`

* Improve `UnknownMx4DPointFloat::Unknown7` match, add BETA10

* Add draft for `FUN_100042a0`

* Improve match

* Match

* Use better naming

* Remove comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-12-20 01:27:14 +01:00
Anonymous Maarten
a8729dfef6
glD3DRMIMAGE::CreateBuffer, LegoVideoManager::EnableRMDevice and LegoVideoManager::DisableRMDevice (#1241)
* Implement TglD3DRMIMAGE::CreateBuffer (ecx/edi are swapped)

* Implement LegoVideoManager::EnableRMDevice

* Implement LegoVideoManager::DisableRMDevice

* clang-format

* Match `LegoVideoManager::EnableRMDevice`

* Remove padding

* Fix naming

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-12-19 22:52:33 +01:00
Christian Semmler
cb38cf7673
Implement/match Act3Brickster::FUN_100417c0 (#1240)
* Implement/match `Act3Brickster::FUN_100417c0`

* Move function

* Rename var

* Revert "Rename var"

This reverts commit c9ca75ae7f.
2024-12-19 20:22:34 +01:00
Christian Semmler
18fc084a3f
Match LegoGameState::Load (#1239) 2024-12-18 01:10:42 +01:00
Christian Semmler
90c687bde0
Implement/match Act3Brickster::FUN_10042300 (#1238)
* Implement/match `Act3Brickster::FUN_10042300`

* Add comment about assignment operator

* Add another comment

* Fix

* add back BETA annotation
2024-12-17 23:16:00 +01:00
Christian Semmler
66e3c9a2e1
Implement/match Act3Brickster::Animate (#1237)
* Implement/match `Act3Brickster::Animate`

* Improve loop
2024-12-17 19:11:47 +01:00
MS
9c951c4974
Implement MxDisplaySurface::DrawTransparentRLE (#1236)
* Implement MxDisplaySurface::DrawTransparentRLE

* ncc fix
2024-12-17 01:07:39 -07:00
Christian Semmler
cfa3769abf
Use macros for Seek modes (#1235)
* Use macros for `Seek` modes

* Fix syntax

* Use `OF_READ`

* Add names to skip.yml

* Revert "Add names to skip.yml"

This reverts commit 28b6f577dc.
2024-12-16 22:13:52 +01:00
Christian Semmler
615c3a5047
Implement/match Act3Cop::Animate (#1233)
* Implement/match `Act3Cop::Animate`

* Fix
2024-12-15 19:48:47 +01:00
Christian Semmler
73b9e9a06f
Fix LegoAct2::Notify (#1234) 2024-12-15 19:45:17 +01:00
Christian Semmler
1b4142c6a9
Implement/match Write functions in LegoAnim class (#1232)
* Implement/match `LegoAnim::Write`

* Implement remaining Write functions

* Bump total function count
2024-12-15 18:15:10 +01:00
jonschz
2e7f2edbf1
Implement/match Act3Cop::ParseAction (#1230)
* Implement/match `Act3Cop::ParseAction`

* Fix formatting

* Address review comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-15 18:09:29 +01:00
Christian Semmler
661c76c6e0
Implement/match Act3Shark::Animate (#1231)
* Implement/match `Act3Shark::Animate`

* Add BETA annotation

* Raise max functions

* Mark as FUNCTION
2024-12-15 17:18:25 +01:00
jonschz
ace2a9f047
Add g_copDest (#1229)
* Implement `AddCop` and `g_copDest`

* Fix formatting

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-15 05:50:52 -07:00
Christian Semmler
2d74f14de0
Implement/match Act3::FUN_10072ad0 (#1228)
* Implement `Act3::FUN_10072ad0`

* Improve match

* Improve match

* Match
2024-12-14 14:30:21 -07:00
Christian Semmler
16730ef9c1
Implement/match Act3Ammo::FUN_10053db0 (#1227) 2024-12-14 21:36:14 +01:00
Christian Semmler
67b4553eaa
Implement/match LegoPathController::FUN_1004a380 (#1226) 2024-12-14 20:02:48 +01:00
jonschz
413bd5ae7b
Implement/match LegoJetski::HitActor (#1225)
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-14 19:46:51 +01:00
jonschz
97ff27af9e
Implement/match LegoPlantManager::FUN_10026410 (#1223)
* Implement/match  `LegoPlantManager::FUN_10026410`

* Full match on LEGO1 and BETA10

* Improve `LegoBuildingManager::FUN_10030630`

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-14 16:35:08 +01:00
jonschz
57aa5a9f8a
Refactor legoracers.h and legoracers.cpp (#1224)
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-14 07:03:19 -07:00
jonschz
5a6415e0cf
Implement/match Act2Actor::FUN_10019b90 (#1222)
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-13 16:19:55 -07:00
Christian Semmler
1aeb458be1
Implement/match Act3Ammo::Animate (#1221)
* Implement/match `Act3Ammo::Animate`

* Match

* Rename

* Rename

* Rename
2024-12-13 22:56:26 +01:00
Christian Semmler
6da2faa48c
Refactor actor states, define enum (#1220)
* Refactor actor states, define enum

* Revert

* Rename `UpdateState` to `Animate`
2024-12-13 20:30:50 +01:00
Christian Semmler
ce3f71ea0f
Rename LegoPathActor::VTable0x70 to UpdateState (#1219) 2024-12-13 19:20:03 +01:00
Christian Semmler
263d7d1e4f
Implement/match Act3::GoodEnding (#1218) 2024-12-13 18:49:45 +01:00
Christian Semmler
de7bc813ca
Implement/match LegoAct2::BadEnding (#1217)
* Implement/match `LegoAct2::BadEnding`

* Name some vars
2024-12-13 17:26:06 +01:00
Christian Semmler
32392a8e55
Fix Act2Actor::FUN_10019700 (#1216) 2024-12-13 17:12:53 +01:00
jonschz
054f56fd9f
Implement Act2Actor::FUN_10019700 (#1215)
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-12 17:54:51 -07:00
Christian Semmler
1bfeebd004
Implement most of LegoJetski, refactor (#1214)
* Implement most of `LegoJetski`, refactor

* Fix
2024-12-12 21:17:25 +01:00
Christian Semmler
894034f9cf
Implement/match WriteDefaultTexture (#1213) 2024-12-12 19:02:14 +01:00
Christian Semmler
aceba71fbb
Implement/match Act3Brickster::HitActor (#1212)
* Implement/match `Act3Brickster::HitActor`

* Fixes

* Fixes

* Fixes

* Add `Act3Cop::VTable0x9c`

* Fix
2024-12-12 17:10:44 +01:00
Christian Semmler
fe57a94416
Implement/match Act3Brickster::ParseAction (#1211) 2024-12-12 16:06:15 +01:00
Christian Semmler
598d6dd10c
Refactor act 3 actors into act3actors.cpp (#1210) 2024-12-12 15:14:46 +01:00
MS
c05ff6ff4a
Act3Cop::VTable0x94 and related (#1209)
* Act3Cop::VTable0x94 and related

* No need to include

* Cast LegoWorld* to Act3*
2024-12-11 22:20:21 +01:00
Christian Semmler
ac19539d0f
Implement/match Act3Shark functions (#1208)
* Implement/match `Act3Shark` functions

* Naming
2024-12-11 21:13:34 +01:00
Christian Semmler
a2b2b5d734
Implement/match Act3Ammo::FUN_10053b40 (#1207)
* Implement/match Act3Ammo::FUN_10053b40

* Add Act3Ammo::Remove
2024-12-11 20:52:53 +01:00
MS
6d9fa3ed7f
Act3List Insert() and Clear() (#1206)
* Act3List Insert() and Clear()

* Fix Act3ListElement constructors
2024-12-11 18:01:55 +01:00
Christian Semmler
adc83dc76e
Implement/match Act3Ammo::Create, Act3Ammo::FUN_10053cb0, Act3Ammo::FUN_10053d30 (#1205)
* Implement/match Act3Ammo::Create

* Fix BETA addr

* Move

* Move

* Remove header

* Add missing header
2024-12-10 22:35:59 +01:00
Christian Semmler
59e2aa2804
Implement/match LegoAct2::FUN_100516b0 and LegoAct2::FUN_100517b0 (#1204)
* Implement/match `LegoAct2::FUN_100516b0` and `LegoAct2::FUN_100517b0`

* Fix
2024-12-10 21:49:13 +01:00
Christian Semmler
c2ee761f81
Implement/match Act3::ShootPizza and Act3::ShootDonut (#1203)
* Implement/match `Act3::LaunchPizza` and `Act3::LaunchDonut`

* Match Helicopter::HandleControl

* Rename

* Adjust total function count

* Rename
2024-12-09 23:41:51 +01:00
jonschz
07def56326
Implement Act2Actor::VTable0x70 (#1201)
* Implement draft of `Act2Actor::VTable0x70`

* Fix CI errors

* Implement `Act2Actor::FUN_100199f0`

* WIP: cleanup

* Address review comments

* Run formatter

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-09 22:05:08 +01:00
jonschz
ada44a30e8
Fix name ambiguities (#1202)
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-09 06:57:45 -07:00
Christian Semmler
d9b9178d27
Implement/match Act3::Notify (#1200)
* Implement/match Act3::Notify

* Fix typo
2024-12-08 20:52:32 +01:00
Christian Semmler
564fb7f7c0
Implement/match Act3::Enable (#1198)
* Implement Act3::Enable

* Match

* Change back to private

* Remove unused function
2024-12-08 19:39:03 +01:00
Christian Semmler
1aff40dd94
Implement/match several functions in Act3, refactor (#1197)
* Implement/match several functions in Act3, refactor

* Fix naming

* Rename

* Add comment

* Add annotation

* Add BETA assert
2024-12-08 18:00:57 +01:00
Christian Semmler
97fb6e4f15
Add Act3Ammo, match Act3::Act3 (#1196)
* Implement `Act3Ammo`, match `Act3::Act3`

* Move

* Fix match
2024-12-07 11:57:59 -07:00
Christian Semmler
5be00e1799
Implement/match LegoPathCtrlEdge::FUN_10048c40 (#1195)
* Implement/match LegoPathCtrlEdge::FUN_10048c40

* Improve matches
2024-12-07 17:58:51 +01:00
Christian Semmler
94ce89cbaa
(Proposal) Introduce arithmetic operators to Vector2 (#1193) 2024-12-07 17:26:22 +01:00
Christian Semmler
4d8098a6c2
Implement LegoPathController::FUN_10048310 (#1192)
* WIP

* Rename

* Fix

* More WIP

* WIP

* WIP

* Fix

* Annotations

* Add more annotations, improve match

* Raise max functions
2024-12-06 20:50:40 +01:00
MS
6ca54824e6
Rename c_notificationDrag* enum (#1191)
* Improve functions with drag notifications

* Rename drag notifications

* A couple more addrs
2024-12-04 16:19:48 -07:00
Christian Semmler
c51a09af0b
Fix a bug in LegoAct2::Notify (#1190) 2024-12-04 23:32:53 +01:00
Christian Semmler
8dd7bc63be
Implement/match LegoAct2::SpawnBricks (#1189)
* Implement/match LegoAct2::SpawnBricks

* Name brick vars

* Add LegoAct2::FUN_10051fa0

* Add LegoAct2::FUN_100521f0
2024-12-04 23:11:16 +01:00
MS
7ece9cf37b
Fix MxParam casts in Notify functions (#1188)
* First batch

* Second batch
2024-12-03 15:51:03 -07:00
Christian Semmler
5693b1a266
Implement/match LegoAct2::HandlePathStruct (#1187)
* Implement/match `LegoAct2::HandlePathStruct`

* Add Act2Brick::FUN_1007a670

* Add Act2Brick::Create

* Name variable

* Add stdio.h
2024-12-03 21:31:24 +01:00
jonschz
3c624ff14c
Implement Act2Actor::VTable0x9c() (#1186)
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-03 19:12:05 +01:00
Christian Semmler
aaf5e1ddc7
Implement/match LegoAct2::ReadyWorld (#1185) 2024-12-02 19:44:42 +01:00
Christian Semmler
a0a114135a
Implement/match LegoAct2::HandleEndAction and related (#1184)
* Implement/match LegoAct2::HandleEndAction

* Reorder
2024-12-02 18:58:08 +01:00
jonschz
8b9f6f1007
Implement more functions in Act2Actor (#1183)
* Implement `Act2Actor::VTable0xa0`

* Implement `Act2Actor::FUN_10019520()`

* Implement/match `Act2Actor::FUN_100192a0()`

* Fix clang32 issue

* Address review comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-01 10:21:59 -07:00
jonschz
f066e2ee2e
Implement Act2Actor::Act2Actor(), add BETA10 references (#1182)
* Implement `Act2Actor::Act2Actor()`, add structure and BETA10

* Add LegoAnimActor BETA10 annotations

* Improve LegoAnimActor BETA10 match

* More BETA10 annotations

* Address review comment

* Disable annotation so the CI passes

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-11-30 14:35:07 -07:00
Mikhail
cc682173eb
Implement functions in Act3Actor (#1180)
* Implement Act3Actor

* Minor consistency adjustments

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-11-30 17:57:44 +01:00
Christian Semmler
f56ffddfdc
Update legoact2.h 2024-11-29 23:22:53 +01:00
Christian Semmler
c0965039d1
Improve Isle::Enable and LegoAct2::Enable matches (#1179) 2024-11-29 22:45:57 +01:00
Christian Semmler
e8e457f01a
Implement/match LegoAct2::Enable (#1178) 2024-11-29 22:32:40 +01:00
jonschz
362551e279
Clean up unused annotations to reduce errors (#1177)
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-11-29 22:31:37 +01:00
Christian Semmler
c9a2a7203b
Implement/match LegoAct2::HandleTransitionEnd (#1176) 2024-11-29 21:24:14 +01:00
Christian Semmler
a17b3168e9
Implement/match LegoAct2::Notify (#1175)
* Implement LegoAct2::Notify

* Fix naming

* Remove unnecessary actions/ prefix in includes
2024-11-29 21:11:29 +01:00
jonschz
29a0ae8f07
Implement/match LegoAct2::FUN_10052560() (#1174)
* Implement/match `LegoAct2::FUN_10052560()`

* Fix formatting

* Fix linter errors

* Address review comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-11-29 21:04:50 +01:00
Christian Semmler
7256eeb0ad
Replace hardcoded magic values with constants (#1173)
* Replace two hardcoded magic values with constants

* Replace constants
2024-11-28 00:05:40 +01:00
Christian Semmler
d6796ad86a
Implement remaining LegoGameState functions (#1172)
* Implement remaining LegoGameState functions

* Naming fixes

* Fix naming
2024-11-27 23:42:05 +01:00
jonschz
106647e5af
Implement new functions in LegoAnimManager (#1170)
* Implement new functions in LegoAnimManager

* Address review comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-11-27 18:13:37 +01:00
Christian Semmler
bd011c6724
Remove static storage specifier so vars can be found through datacmp (#1171) 2024-11-27 00:33:18 +01:00
jonschz
83b85f26a7
Implement LegoAct2::Tickle() and others (#1168)
* Implement `LegoAct2::Tickle()` and others

* Fix decomplint errors

* Minor cleanup

* Address review comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-11-25 23:24:46 +01:00
Christian Semmler
b9a1da6a7a
Implement/match Act2Brick (#1169)
* Implement/match Act2Brick

* Rename functions

* Naming
2024-11-25 22:08:57 +01:00
MS
816bfe842d
Use alias functions from Lego3DManager (#1167)
* Mark LegoEntity:Destroy (many vtables use it)

* Starting addrs for Lego3DManager helpers

* Addrs for users of Lego3DManager and changes where needed
2024-11-23 20:37:24 -07:00
jonschz
0aa5e010ae
Implement CarRace (#1165)
* Implement `CarRace`

* Improve `CarRace::Create`

* Fix arrays

* Clean up array

* Fix CI errors

* Implement `LegoRaceCar::FUN_10012e00()`

* Implement `Doors::VTable0xcc`

* Address review comments, part 1

* Address review comments, part 2

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-11-23 12:33:15 -07:00
Christian Semmler
e56ac9ab55
Implement/match LegoBuildingManager::FUN_10030630 (#1164) 2024-11-22 23:08:23 +01:00
MS
5e0dc1a160
Beta match progress for flic.cpp (#1162) 2024-11-22 01:07:40 +01:00
jonschz
5be9b343c4
Implement LegoJetskiRaceActor::VTable0x6c, add BETA10 annotations (#1160)
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-11-19 16:20:27 +01:00
jonschz
6431405e92
Implement parts of LegoJetskiRaceActor (#1159)
* Implement part of LegoJetskiRaceActor

* Fix linter errors

* Update legojetskiraceactor.cpp

Fix minor incorrectness

* Address review comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-11-18 20:32:48 +01:00
jonschz
fe8e56ba47
Finish JetskiRace (#1158)
* Implement `JetskiRace::HandlePathStruct`

* Implement `JetskiRace::FUN_10016930`

* Cleanup, add BETA10

* Match HandlePathStruct

* Address review comments

* Address another review comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-11-16 20:24:03 +01:00
Christian Semmler
b4b28cf32e
Implement/match LegoPlantManager::Tickle (#1157) 2024-11-16 00:25:49 +01:00
Christian Semmler
3383ae646f
Implement/match LegoBuildingManager::Tickle (#1156) 2024-11-15 22:51:46 +01:00
Christian Semmler
ff0ef96782
Implement/match LegoBuildingManager::FUN_10030030 (#1155) 2024-11-15 19:24:41 +01:00
Christian Semmler
63fee4d11d
Implement/match LegoAnimNodeData::SetName (#1154) 2024-11-15 19:15:33 +01:00
Christian Semmler
93c640a45f
Implement/match PickEntity (#1153)
* Implement/match PickEntity

* Rename function
2024-11-15 18:35:53 +01:00
Christian Semmler
62f09570b0
Implement/match RotateY (#1152) 2024-11-15 18:28:26 +01:00
Christian Semmler
2e08748551
Implement/match RaceCar (#1151) 2024-11-15 18:19:15 +01:00
Christian Semmler
db502fcbda
Fix clang-format (#1150)
* Fix clang-format

* Add back format.yml

* Remove python format
2024-11-14 21:53:13 +01:00
jonschz
71a7498481
Implement most of JetskiRace, add BETA10 annotations (#1149)
* Implement most of `JetskiRace`, add BETA10 annotations

* Fix declaration order issue

* Clean up FUN_10012de0

* Fix regression

* Address review comments

* Address another review comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-11-14 21:42:38 +01:00
Christian Semmler
8e23bfb266
Implement/match some Act2Actor functions (#1148) 2024-11-11 19:36:36 +01:00
Christian Semmler
71a1c51596
Implement/match LegoAct2::Escape (#1147)
* Implement/match LegoAct2::Escape

* Match empty function
2024-11-11 19:30:34 +01:00
Christian Semmler
bebe780c77
Implement/match LegoAct2::Create (#1146) 2024-11-11 18:48:45 +01:00
jonschz
6cda0d95c7
Complete LegoCarBuild (#1144)
* Complete `LegoCarBuild`

* Fix match error

* Address review comments

* Fix regression

* Fix minor sign comparison issue

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-11-11 15:44:03 +01:00
Christian Semmler
26f8dd1a6a
Match LegoCarBuild::Tickle (#1145) 2024-11-10 23:23:47 +01:00
Christian Semmler
cd261b9518
Refactor/improve matches in Act1State (#1143)
* Refactor/improve matches in Act1State

* Fix naming
2024-11-10 22:47:12 +01:00
Christian Semmler
5d3d66965d
Implement/match Act1State::PlaceActors and related (#1142)
* Implement/match Act1State::PlaceActors and related

* Fix naming
2024-11-10 21:26:48 +01:00
Christian Semmler
6885abdc78
Implement/match LegoROI::FUN_100a9dd0 (#1141)
* Implement/match LegoROI::FUN_100a9dd0

* Implement/match LegoROI::FUN_100a9cf0
2024-11-10 17:35:44 +01:00
Christian Semmler
86a8bad545
Implement/match RegistrationBook::FUN_100778c0 (#1140) 2024-11-10 17:18:36 +01:00
Christian Semmler
40159b43c7
Implement/match HistoryBook::~HistoryBook (#1139) 2024-11-10 17:07:48 +01:00
Christian Semmler
0b94b4803b
Implement/match Act2GenActor::VTable0x94 (#1138) 2024-11-10 16:43:07 +01:00
Christian Semmler
2c10c8e344
Implement/match Doors::VTable0x70 and Doors::ParseAction (#1137)
* Implement/match Doors::VTable0x70 and Doors::ParseAction

* Fix
2024-11-09 22:54:17 +01:00
Joshua Peisach
f4ab226946
Implement Doors::VTable0x94 (#1136)
* Implement Doors::VTable0x94

* Match function

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-11-09 18:03:01 +01:00
jonschz
c65bc67e3d
Implement FUN_10025720() and others (#1134)
* Implement `FUN_10025720()` and others

* Address review comments, get 100 %

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-11-05 21:33:51 +01:00
Christian Semmler
1badadebaa
Implement/match LegoPathActor::UpdatePlane (#1133) 2024-11-03 19:28:35 +01:00
Christian Semmler
d8412a4697
Implement/match Act1State::RemoveActors (#1132)
* Implement/match Act1State::RemoveActors

* Fix annotation
2024-11-03 19:06:09 +01:00
Christian Semmler
040c97d92a
Implement/match Act1State::PlayCptClickDialogue (#1131) 2024-11-03 17:59:21 +01:00
Christian Semmler
e4453c4100
Implement/match Act1State::Act1State (#1130)
* Implement/match Act1State::Act1State

* Remove obsolete enum
2024-11-03 17:41:15 +01:00
Christian Semmler
519d8c570a
Implement/match remaining GasStation functions (#1129)
* Implement/match remaining GasStation functions

* Name variables
2024-11-03 16:44:07 +01:00
Christian Semmler
4c95d7c887
Implement/match Pizza::HandleEndAction (#1128)
* Implement Pizza::HandleEndAction

* Match
2024-11-01 21:13:43 +01:00
Christian Semmler
a14795c0c8
Implement/match Pizza::Tickle (#1127) 2024-11-01 18:30:11 +01:00
jonschz
4c0aae720b
Implement LegoCarBuild::FUN_10024890() and others, refactor (#1126)
* Commit finished code changes

* Add enum data type

* Refactor away GetCurrentArea, SetCurrentArea

* Clean up and add FUN_10024890

* Add `SetPartObjectIdByName()`

* Fix naming error

* Address review comments, part 1

* Address review comments, part 2

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-11-01 09:21:15 -07:00
Christian Semmler
115343f6e5
Implement/match PizzeriaState::NextAction (#1125)
* Implement/match PizzeriaState::NextAction

* Name globals

* Refactor globals into class statics

* Remove TODO
2024-10-28 19:04:08 +01:00
Christian Semmler
5f822dabc7
Implement/match PizzeriaState::PizzeriaState (#1124) 2024-10-28 18:32:55 +01:00
Christian Semmler
ad353b7f3e
Implement/match Pizza::PlayAction (#1123)
* Implement/match Pizza::PlayAction

* Remove unused header
2024-10-28 17:25:54 +01:00
Christian Semmler
2fa2ab4a96
Implement/match Pizza::HandlePathStruct (#1122) 2024-10-28 16:53:09 +01:00
Christian Semmler
139da31628
Implement/match PizzaMissionState::PizzaMissionState (#1121)
* Implement/match PizzaMissionState::PizzaMissionState

* Fix naming
2024-10-27 19:54:01 +01:00
Christian Semmler
b3ce98a2ec
Implement/match Pizza::HandleClick (#1119) 2024-10-26 19:34:16 +02:00
Christian Semmler
2b9d8f1fba
Implement/match Pizza::FUN_100382b0 and Pizza::StopActions (#1118) 2024-10-26 18:34:43 +02:00
jonschz
c38e157fdb
Implement LegoCarBuild functions, refactor BackgroundAudioManager (#1117)
* Implement LegoCarBuild functions, refactor BackgroundAudioManager

* Refactor LegoVehicleBuildState::m_animationState to enum

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-10-25 09:04:01 -07:00
jonschz
b5fee6b240
Complete LegoCarBuildAnimPresenter (#1114)
* Complete `LegoCarBuildAnimPresenter`

* fix CI errors

* Drive-by BETA10 fixes

* Address review comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-10-20 14:00:44 -07:00
jonschz
974cd7ce7c
Implement LegoCarBuildAnimPresenter::FUN_10079160() and others (#1111)
* Implement `LegoCarBuildAnimPresenter::FUN_10079160()` and others

* Address review comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-10-11 20:21:33 +02:00
jonschz
85ce10ab50
Refactor various operator[] based on BETA10 (#1110)
* Tidy up `operator[]` code

* Add weird index operator for `FUN_1002ddc0`

* Cleanup

* Add Matrix4 BETA10 annotations, fix typo

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-10-06 07:50:34 -07:00
jonschz
1a15981324
Implement LegoCarBuildAnimPresenter::StreamingTickle() (#1109)
* Implement LegoCarBuildAnimPresenter::StreamingTickle and dependents

* Fix naming issue

* Address review comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-10-05 16:20:45 -07:00
jonschz
e6474b7fcd
Implement LegoCarBuildAnimPresenter::FUN_10079920() (#1108)
* Implement `FUN_10079920()`

* Fix formatting

* Address review comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-10-04 17:19:42 +02:00
Christian Semmler
fa6de9cb6b
Implement/match Pizza::FUN_10038220 (#1107) 2024-10-03 21:43:18 +02:00
Cameron
4878727393
some educated guesses for unknown view manager names (#1106)
* some educated guesses for unknown view manager names

* Formatting

* Pin pylint version

* Use snake case for consistency (limited to this class)

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-09-20 19:17:24 +02:00
jonschz
a942325b29
More functions in LegoCarBuild (#1104)
* Add BETA10 annotations

* Clean up

* Implement multiple functions

* fix minor annotation error

* Undo formatting

* Fix formatting

* Implement more functions

* Rename variables, address review comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-09-14 16:14:11 -07:00
jonschz
7a6935a165
Progress on LegoCarBuildAnimPresenter (#1103)
* Progress on `LegoCarBuildAnimPresenter`

* Rename argument

* fix copy-paste error

* Address review comments

* Remove obsolete comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-09-12 21:51:33 +02:00
jonschz
5d19b6afe3
Improve UnknownMx4DPointFloat::FUN_100040a0 (#1102)
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-09-09 12:45:48 -07:00
MS
4a01d15c36
MxStreamListMxDSAction helper functions (#1100)
* MxStreamListMxDSAction Find/FindAndErase

* Beta addrs for other stream lists
2024-09-06 13:13:16 -07:00
MS
97b3dcaa2c
Beta match* MxStreamer (#1099)
* Beta addrs

* Streamer changes

* Typo and comment. One more beta addr

* Rename member to m_controllers
2024-09-05 16:06:40 -07:00
jonschz
2b14d3d6a5
Implement parts of LegoCarBuild and dependents (#1092)
* Implement parts of `LegoCarBuild` and dependents

* Fix BETA10 offset

* Fix constants

* Code style: Rename parameters

* Linter fixes v2

* Linter errors v3

* Add BETA10 variable names for presenters

* Address review comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-09-03 13:50:30 -07:00
MS
73938ac2ab
Beta match MxDSFile (#1098) 2024-09-01 17:08:53 -07:00
MS
2af5f87051
MxTimer touch-up (#1096) 2024-09-01 11:51:33 -07:00
MS
990725ba0b
Add more MSVC annotations for LEGO1 (#1094) 2024-08-31 20:02:19 -07:00
jonschz
b898d98515
BETA10: reccomp support and Ghidra imports (#1091)
* Implement core functionality (before linter)

* run linter + formatter

* Review: remove redundant code

* Implement end of range check for vtables

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-08-29 11:54:23 -07:00
jonschz
1b46859cf6
Implement RaceSkel, add BETA10 annotations (#1088)
* Implement `RaceSkel`, add BETA10 annotations

* fix formatting

* Fix order

* Address some review comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-08-21 22:30:27 +02:00
jonschz
b649902578
Various fixes in constructors (#1089)
* Various fixes in constructors

* Address review comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-08-21 10:42:49 -07:00
jonschz
757df96c0d
Implement/match LegoRaceMap (#1087)
* Implement/match LegoRaceMap

* Fix CI, address review comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-08-17 11:30:39 -07:00
jonschz
34047c0cb6
Implement/match LegoCarRaceActor::VTable0x6c (#1085)
* Implement/match `LegoCarRaceActor::VTable0x6c`

* Rename variable

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-08-17 08:59:22 -07:00
MS
9555aaba74
Remove USHRT_MAX from ParseExtra functions (#1086) 2024-08-17 08:56:25 -07:00
Christian Semmler
30e9e43cda
Implement/match RegistrationBook::HandlePathStruct (#1084) 2024-08-12 18:21:18 +02:00
MS
9ab3954bbb
Minor tweak to MxList template (#1083)
* Beta addrs for MxList and related functions

* MxList DeleteAll and Empty functions
2024-08-11 13:23:39 -07:00
Christian Semmler
53924c3d2d
Implement/match TowTrack::HandleEndAction (#1082)
* Implement/match TowTrack::HandleEndAction

* Fix offset
2024-08-09 20:32:46 +02:00
Christian Semmler
7cf6c78d20
Implement TowTrack::HandlePathStruct (#1081) 2024-08-09 04:09:08 +02:00
jonschz
a6a241b09d
Implement LegoCarRaceActor::VTable0x70 and VTable0x1c (#1079)
* Implement/match `LegoCarRaceActor::VTable0x70`

* Add BETA10 annotations

* Start with VTable0x9c, fix data type

* basic BETA10 code completion

* small fix

* small fix

* cleanup

* Fix formatting

* Address review comments

* review comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-08-08 12:55:01 -07:00
MS
51d4dead1a
MxSmack::LoadHeader (#1080) 2024-08-07 20:19:12 -07:00
jonschz
e09acfcddb
Implement/match LegoCarRaceActor::VTable0x1c (#1078)
* Implement/match `LegoCarRaceActor::VTable0x1c`

* Fix formatting

* Fix LegoEdge::CWVertex()

* Fix more CI issues

* Trz to fix lvalue compile issue

* Fix formatting

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-08-04 21:13:12 +02:00
Christian Semmler
fe1b66938d
Implement/match TowTrack::FUN_1004dbe0 (#1076) 2024-08-03 20:31:49 +02:00
Christian Semmler
63586f88b2
Implement/match TowTrack::ActivateSceneActions (#1075)
* Implement/match TowTrack::ActivateSceneActions

* Add PlayAction
2024-08-03 20:17:17 +02:00
Christian Semmler
a1c6196bbc
Implement/match TowTrack::Leave and related (#1074) 2024-08-03 20:07:08 +02:00
Christian Semmler
f94d39bf63
Implement/match TowTrack::HandleClick (#1073) 2024-08-03 19:59:12 +02:00
jonschz
4a41671759
Implement/match LegoRaceActor (#1072)
* Implement LegoRaceActor, add annotations

* Change code duplication comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-08-02 22:29:21 -07:00
jonschz
1f251ff817
Implement/match LegoCarRaceActor::FUN_10080590 (#1070)
* Implement/match `LegoCarRaceActor::FUN_10080590`

* Add vbtable annotations

* disable formatter for assertion

* Fix BETA10 annotations

* Address review comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-07-28 20:13:18 +02:00
jonschz
f436b9365b
Implement/match the rest of LegoRaceCar, BETA10 improvements (#1069)
* Implement/match the rest of `LegoRaceCar`

* Add BETA10 annotations and improvements

* Undo incorrect change

* Add synthetic vbase destructors

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-07-27 18:24:36 +02:00
jonschz
0d385e27d0
Implement/match LegoRaceCar::VTable0x94 (#1068)
* Implement LegoRaceCar::VTable0x94

* Remove redundant inline modifiers

* Fix offsets

* Fix minor inconsistency

* Address review comments

* Address review comments, round 2

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-07-26 10:53:09 -07:00
jonschz
bc9abdc823
More legoracers functions (#1067)
* Implement/match LegoRaceCar::VTable0x70

* Fix datacmp errors

* minor fix

* Fix naming issue

* Address review comments, part 1

* Address review comments, part 2

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-07-18 13:20:59 -07:00
jonschz
210376f272
Implement LegoRaceCar::HandleSkeletonKicks and dependents (#1065)
* Implement `LegoRaceCar::HandleSkeletonKicks` and dependents

* Fix typo

* Spike to fix array comparisons (needs refactor)

* Refactor: Dedicated method for array element matching

* Address review comments

* Reformat with new version of black

* Apply more review comments

* Address more review comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-07-17 07:03:02 -07:00
jonschz
4a861faca3
Refactor file names based on BETA10 (#1064)
* Refactor file names based on BETA10

* Extract LegoDeviceEnumerate to dedicated file

* Fix compiler errors

* Migrate contiguous block of code to `LegoDeviceEnumerate`

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-07-08 14:52:50 -07:00
jonschz
afa5b90117
Implement LegoRaceCar::FUN_10012ff0(), refactoring (#1063)
* Implement `LegoRaceCar::FUN_10012ff0()`, refactor based on BETA10

* Add BETA10 annotations
* Rename functions and variables based on BETA10 assertions

* Address issues raised by linter

* Rename variable, add BETA10 vtables

* Rename legoracecar files to legoracers

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-07-07 05:10:46 -07:00
Christian Semmler
a75ace8a53
Implement/match TowTrack::VTable0x70 (#1062) 2024-07-06 04:44:01 +02:00
Christian Semmler
87a9a37b33
Implement/match Jetski class (#1061) 2024-07-05 02:11:20 +02:00
Christian Semmler
bee101b1f4
Add clang-tidy readability-redundant-inline-specifier (#1060)
* Add clang-tidy readability-redundant-inline-specifier

* fix

* Update CONTRIBUTING.md

* format

* fix
2024-07-05 01:06:32 +02:00
Christian Semmler
09684b3c03
Implement/match BumpBouy class (#1058) 2024-07-04 23:28:23 +02:00
MS
14653070cc
Refactor surrounding MxBitmap::GetAdjustedStride (#1057)
* Refactor surrounding MxBitmap::GetAdjustedStride

* Remove this-> from MxDisplaySurface
2024-07-04 09:50:04 -07:00
Christian Semmler
65e3c3dd05
Implement/match FreeModelDbWorlds (#1056) 2024-07-02 22:04:05 +02:00
Christian Semmler
d92fc97a58
Implement/match DuneBuggy class (#1055)
* Implement/match DuneBuggy class

* Fix name

* Fix
2024-07-02 21:16:35 +02:00
MS
05fa715550
Add MxTrace function (#1054) 2024-07-02 10:46:40 -07:00
Christian Semmler
788cec2560
Implement GasStation::HandleEndAction (#1053) 2024-07-02 02:37:51 +02:00
Christian Semmler
7bee5fc6a5
Implement/match GasStation::HandleButtonDown (#1052)
* Implement/match GasStation::HandleButtonDown

* Use enum
2024-07-02 01:43:03 +02:00
Christian Semmler
9ba05d021d
Implement/match LegoPlantManager::ScheduleAnimation (#1051)
* Implement/match LegoPlantManager::ScheduleAnimation

* Add assert
2024-07-02 01:14:04 +02:00
jonschz
a21fd5975c
Start implementing LegoRaceCar (#1050)
* Implement several functions

* Limited match on LegoRaceCar::ParseAction

* WIP: progress in the right direction

* Implement LegoRaceCar::ParseAction()

* fix linter issues

* Address review comments

* fix naming

* fix naming (again)

* Relocate address annotations

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-07-01 11:39:31 -07:00
jonschz
fb34f86171
Improve several functions in vector.h (#1049)
* Improve some functions in vector.h

- Add BETA10 references
- inline some functions based on BETA10
- Identify and improve `Vector4::EqualsHamiltonProduct`

* Fix BETA10 offset

* Fix BETA10 annotation order

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-06-30 13:45:10 -07:00
MS
6e39e87613
Create MxDirectXInfo module (#1047)
* Some beta addrs and asserts to start

* Create mxdirectxinfo

* include fix

* CONFIG annotations

* Beta matching

* Match format function better, add dead code function

* LegoDeviceEnumerate
2024-06-27 12:22:13 -07:00
Christian Semmler
536aa4b1fe
Implement/match LegoPlantManager::FUN_10027120 (#1046) 2024-06-26 15:39:36 +02:00
Anonymous Maarten
0637deea13
m_extraCharacterId is an integer, not a pointer (#1045) 2024-06-26 04:17:45 -07:00
Anonymous Maarten
8113a17167
Backports of isle-portable x64 fixes (#1044)
* Introduce LPD3DRM_APPDATA typedef for setting d3drm appdata

* Fix warning about assigning const string literals to variable char pointers

* Don't cast pointers to integers on non-32-bit architectures

* memset 2nd argument is int

* Assume cpuid is available on x86_64, needs testing on i386 and unavailable on anything else

* Store HFILE in its own member variable
2024-06-25 17:56:30 +02:00
Christian Semmler
62307e1819
Implement/match LegoPlantManager::FUN_10026c50 (#1043)
* Minor fixes

* Implement/match LegoPlantManager::FUN_10026c50
2024-06-25 17:28:10 +02:00
jonschz
c9c130eb87
Implement AnimState (#1042)
* Implement LegoAnim

* fix: minor issues

* fix ncc complaints

* refactor: address review comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-06-21 14:41:01 -04:00
Christian Semmler
1d666f62e5
Implement/match LegoPlantManager interaction functions (#1041) 2024-06-19 18:57:05 +02:00
Christian Semmler
656e7fc674
Implement/match more LegoPlantManager functions (#1040) 2024-06-19 18:02:54 +02:00
Christian Semmler
e507f42717
Implement/match LegoPlantManager::CreatePlant (#1039)
* Implement/match LegoPlantManager::CreatePlant

* Update names

* Fix name

* Fix

* Fix
2024-06-18 19:35:03 +02:00
Christian Semmler
1a46d370ec
Bootstrap LegoPlantManager, add plants data (#1038)
* Bootstrap LegoPlantManager, add plants data

* Naming

* Move

* Fix
2024-06-17 20:11:27 +02:00
Christian Semmler
e4e0f4e4d3
Implement/match Motocycle, consistent notification names (#1037)
* Implement/match Motocycle, consistent notification names

* Format

* Fix

* Fix return types

* Fix return type

* Fix annotations

* Rename function
2024-06-16 16:47:53 +02:00
Christian Semmler
68023379d8
Implement/match Bike (#1036) 2024-06-16 15:54:40 +02:00
jonschz
a6644801f1
feat: Implement several ::Serialize functions (#1017)
* feat: Implement many ::Serialize functions

* address review comments, part 1 [skip ci]

* address review comments, part 2 [skip ci]

* review comments (final part)

* refactor: Remove Read/Write duplication

* fix merge conflict

* Match PizzeriaState::Serialize again

* Remove unused variable, add LegoVehicleBuildState::Serialize

* Implement AnimState::Serialize

* fix: Conform with naming scheme

* refactor: change names back

* refactor: int to MxS32

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-06-14 23:24:34 +02:00
MS
165785c434
Bugfix for LegoMeterPresenter::DrawMeter (#1033) 2024-06-13 23:56:28 -04:00
Christian Semmler
e1a97cab2d
Implement LegoAnimScene::FUN_1009f490 (#1032)
* Implement LegoAnimScene::FUN_1009f490

* Update legoanim.cpp

* Update legoanim.cpp

* Update legoanim.cpp
2024-06-13 17:53:45 -04:00
Christian Semmler
dd1c11a933
Fix camera glitch (#1031) 2024-06-13 22:09:14 +02:00
Christian Semmler
e5d66d597d
Implement/match remaining Ambulance functions (#1030) 2024-06-13 20:32:28 +02:00
Christian Semmler
bbc304ce46
Implement/match Ambulance::HandlePathStruct (#1029)
* Implement/match Ambulance::HandlePathStruct

* Add annotation
2024-06-13 20:10:19 +02:00
Christian Semmler
cf7246ac6c
Implement/match Ambulance::HandleButtonDown (#1028) 2024-06-13 17:34:44 +02:00
Christian Semmler
33c64bb002
Implement/match Ambulance::VTable0x70 (#1027) 2024-06-13 17:25:48 +02:00
Christian Semmler
cf576ca78f
Add remaining classes, implement/match LegoObjectFactory (#1026)
* Add missing classes

* Match LegoObjectFactory

* Remove semicolon

* Add symbol

* Fix
2024-06-13 02:02:47 +02:00
Christian Semmler
abb4483e18
Implement/match JailEntity::HandleClick and CaveEntity::HandleClick (#1025)
* Implement/match JailEntity::HandleClick and CaveEntity::HandleClick

* Fix
2024-06-12 17:13:06 +02:00
Christian Semmler
641d9f1b8b
Fix CaveEntity class (#1024)
* Fix CaveEntity class

* Rename function
2024-06-12 16:20:51 +02:00
Christian Semmler
475d21f8c8
Implement/match Ambulance::ActivateSceneActions (#1023) 2024-06-12 16:08:55 +02:00
Christian Semmler
2a88d06ff9
Match LegoMeterPresenter::ParseExtra (#1022)
* Match LegoMeterPresenter::ParseExtra

* Add LegoMeterPresenter to factory

* Add call to parent

* Add missing TODO
2024-06-12 15:53:33 +02:00
Christian Semmler
1f360929cb
Implement/match Ambulance::Tickle (#1021) 2024-06-12 15:13:52 +02:00
Christian Semmler
ebc200bea3
Implement/match Ambulance::HandleClick (#1019)
* Implement/match Ambulance::HandleClick

* Remove junk

* Add Ambulance::FUN_10036e60
2024-06-11 20:19:41 +02:00
Christian Semmler
5311951bc7
Implement/match Ambulance::HandleEndAction (#1018) 2024-06-11 19:12:02 +02:00
MS
9383076e04
Fix remaining vtordisp issues (#1016)
* Fix LegoRaceActor

* Fix LegoRaceMap

* Fix LegoCarRaceActor

* Fix LegoJetskiRaceActor

* Fix LegoJetski

* Fix LegoRaceCar

* Downgrade orig addr unique message to debug
2024-06-10 13:04:40 -04:00
Christian Semmler
c22c6f3379
Implement/match LegoFlcTexturePresenter (#1015)
* Implement/match LegoFlcTexturePresenter

* Move files
2024-06-10 17:44:55 +02:00
Mikhail Thompson
1c430f894d
Begin LegoRace class (#1014)
* Begin LegoRace

* Match functions

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-06-10 14:58:05 +02:00
Christian Semmler
be4c351d7d
Rename Start/StopTimer to Pause/Resume (#1007)
* Rename Start/StopTimer to Pause/Resume

* Fix
2024-06-09 13:39:22 -04:00
MS
88805f9fcb
TowTrack and LegoAct2 destructors (#1005)
* Add some missing dtors

* Add missing 'override'
2024-06-08 19:17:33 -04:00
Joshua Peisach
b7b0b7f50a
Match Ambulance::StopScriptOnAmbulance and StopScriptOnEntity (#1003)
* Match Ambulance::StopScriptOnAmbulance and StopScriptOnEntity

* Rename for consistency

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-06-08 23:40:36 +02:00
Joshua Peisach
14a2aaadea
Act2PoliceStation::Notify (#1002)
* Act2PoliceStation::Notify

* Match code

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-06-08 23:40:20 +02:00
Christian Semmler
2147be19de
Rename InitPresenters to Create, remove this keyword (#1000) 2024-06-07 22:13:42 +02:00
MS
ba378eb224
Streamline MxVideoParamFlags (#999)
* Streamline MxVideoParamFlags

* Remove this-> from MxOmniCreateFlags
2024-06-06 17:15:57 -04:00
Christian Semmler
ca17928fc6
Implement/match Ambulance::Notify (#998) 2024-06-06 18:19:43 +02:00
Christian Semmler
9a9bccda0e
Implement/match IslePathActor::Exit (#997)
* Implement/match IslePathActor::Exit

* Name

* Name

* Partially fix vector interface

* Revert "Partially fix vector interface"

This reverts commit 6e7a1e2b08.

* Revert "Revert "Partially fix vector interface""

This reverts commit e3860e3c9f.

* Fix

* Remove some COMPAT_MODE
2024-06-06 17:45:37 +02:00
Christian Semmler
9b22642f0c
Implement/match LegoCharacterManager::SwitchColor (#996) 2024-06-06 14:26:33 +02:00
Christian Semmler
49c17c9c6a
Implement/match LegoEntity::SwitchSound / SwitchMove / SwitchColor / SwitchMood (#995)
* Implement/match LegoEntity::SwitchSound

* Name

* Name

* Implement/match LegoEntity::SwitchMove

* Mood
2024-06-05 19:40:44 +02:00
Christian Semmler
f6c923a84e
Implement/match LegoEntity::ClickAnimation (#994)
* Implement/match LegoEntity::VTable0x38

* Update names
2024-06-05 19:00:46 +02:00
Christian Semmler
6a9f68872b
Add enum for actor IDs (#993) 2024-06-05 18:11:46 +02:00
Christian Semmler
6e7e9a3f20
Add more annotations to ISLE (#990)
* Minor improvements in ISLE.EXE

* Add more annotations

* Fix

* Comment out

* Fix lint
2024-06-05 12:31:23 +02:00
Christian Semmler
0c7c77aad3
Implement/match LegoActor::Mute (#992) 2024-06-04 12:19:59 -04:00
Christian Semmler
4898a55508
Match LegoCacheSoundManager::FindSoundByKey (#991)
* Match LegoCacheSoundManager::FindSoundByKey

* Remove space
2024-06-04 18:05:01 +02:00
Christian Semmler
133a312aee
Consolidate state and building entity classes (#989) 2024-06-03 18:53:25 +02:00
Christian Semmler
73bb37596e
Refactor JukeBox, add enum for music (#988)
* Refactor JukeBox, add enum for music

* add BETA annotation

* Fix BETA annotation

* Fix BETA annotation

* Fix
2024-06-03 13:00:38 +02:00
Christian Semmler
828b35e9d2
Implement/match LegoCacheSound::Play and Lego3DSound::FUN_10011a60 (#987)
* Implement/match LegoCacheSound::Play and Lego3DSound::FUN_10011a60

* Update names

* Update
2024-06-02 17:09:09 +02:00
Christian Semmler
03ffb9c5de
Implement/match LegoCacheSound::Create and LegoLoadCacheSoundPresenter::StreamingTickle (#986)
* Implement/match LegoCacheSound::Create

* Naming

* Fix naming

* Fix parens
2024-06-01 17:29:37 -04:00
Christian Semmler
1423eb56fc
Implement/match LegoSoundManager::UpdateListener (#985) 2024-06-01 23:13:57 +02:00
Christian Semmler
ac4e8da662
Implement/match Lego3DSound::SetDistance and Reset (#984) 2024-06-01 19:45:22 +02:00
Christian Semmler
919a3f5c49
Implement/match Lego3DSound::UpdatePosition (#983) 2024-06-01 19:38:13 +02:00
Christian Semmler
23e5ad7d15
Name/rename functions in LegoCharacterManager (#982)
* Name/rename functions in LegoCharacterManager

* Name flag
2024-06-01 18:45:34 +02:00
Christian Semmler
375ac29b9b
Implement/match Lego3DSound::Create (#981)
* Implement/match Lego3DSound::Create

* Add space

* Naming

* Changes
2024-06-01 18:23:48 +02:00
Christian Semmler
df20b05510
Define cursor enum and custom cursor window message (#980)
* Define cursor enum and custom cursor window message

* Fix param name

* Remove unused header
2024-06-01 16:07:58 +02:00
Christian Semmler
b67af71f33
Improve naming, use virtual key constants (#979) 2024-06-01 04:46:05 +02:00
Christian Semmler
77af1a5483
Fix Radio::HandleControl COMPAT_MODE branch (#978) 2024-05-31 23:15:35 +02:00
DmitriLeon2000
3b3ac07cac
Rename LegoEdge::GetOpposingPoint to LegoEdge::CWVertex (#977) 2024-05-30 20:04:06 -04:00
Christian Semmler
eeb81b7223
Use USHRT_MAX instead of MAXWORD (#975) 2024-05-30 22:02:58 +02:00
Christian Semmler
76435d803f
Style refactor omni/system components (#974)
* Style refactor omni/system components

* Fix

* Fix
2024-05-30 21:03:43 +02:00
MS
ac41854149
Add static HandlerClassName function (#973)
* Add static HandlerClassName function

* Use method in PresenterNameDispatch
2024-05-30 19:10:41 +02:00
Christian Semmler
ab4ba9fc4f
Implement/match Lego3DWavePresenter::StartingTickle (#972)
* Implement/match Lego3DWavePresenter::StartingTickle

* Fix annotation

* Add StreamingTickle

* Rename
2024-05-30 16:27:18 +02:00
Christian Semmler
650903d043
Implement/match Pizzeria::HandleClick (#971) 2024-05-30 15:54:24 +02:00
Christian Semmler
ae859fbc19
Implement/match LegoControlManager::FUN_100293c0 (#970) 2024-05-30 15:15:16 +02:00
Christian Semmler
689178f689
Implement/match LegoCameraController::FUN_10012290 and FUN_10012320 (#969) 2024-05-30 14:48:14 +02:00
MS
085bdbe74b
Beta match MxPalette (#968)
* Beta match MxPalette

* Modern compiler fix
2024-05-29 22:52:45 +02:00
Christian Semmler
b978787f8f
Implement/match LegoAnimationManager::FUN_10062e20 (#967) 2024-05-29 19:24:08 +02:00
Christian Semmler
2f1aa58153
Implement/match LegoAnimMMPresenter::FUN_1004b840 (#966) 2024-05-29 17:35:36 +02:00
Christian Semmler
36ec252f7e
Implement/match LegoAnimationManager::FUN_10063270 (#965) 2024-05-29 17:05:50 +02:00
MS
5f00634b9c
Implement LegoMeterPresenter::DrawMeter (#964)
* Implement LegoMeterPresenter::DrawMeter

* New MxRect16 header, offsets and size annotations

* Missing mxtypes include
2024-05-29 16:47:25 +02:00
Christian Semmler
da48dfb40d
Implement/match LegoAnimPresenter::FUN_1006b140 (#963) 2024-05-28 15:23:23 -04:00
Christian Semmler
60b747d7b2
Implement/match LegoPathBoundary::FUN_100586e0 and FUN_10057fe0 (#962) 2024-05-28 17:20:23 +02:00
MS
a88546baad
Refactor MxBitmap (again) (#961)
* Remove this

* Starting list of beta addrs

* Static for height-specific abs, fix StrechBits

* MxBitmap refactor
2024-05-28 09:32:51 +02:00
Christian Semmler
219b65f5ad
Implement/match IslePathActor::FUN_1001b660 (#960) 2024-05-27 21:49:41 +02:00
Christian Semmler
3c45022864
Fix extra actor collisions (#958) 2024-05-26 19:13:56 +02:00
Christian Semmler
765c49fd4e
Match LegoUnknown::FUN_1009a1e0 (#957) 2024-05-26 17:12:37 +02:00
Christian Semmler
3cfb918559
Implement/match LegoExtraActor::VTable0x6c (#956) 2024-05-26 01:16:20 +02:00
Christian Semmler
535f1b973a
Implement LegoROI::FUN_100a9410 (#955)
* WIP

* WIP

* Remove space

* Fix
2024-05-25 22:21:05 +02:00
Christian Semmler
f380fa3b84
Implement/match LegoAnimationManager::FUN_100648f0 (#954) 2024-05-25 17:18:24 +02:00
Christian Semmler
857c15ca11
Implement/match LegoAnimationManager::FUN_10063b90 (#953) 2024-05-25 16:40:10 +02:00
Christian Semmler
7c9fdd255e
Implement/match Isle::HandleType19Notification (#952)
* Implement/match Isle::HandleType19Notification

* Fix
2024-05-25 03:23:41 +02:00
Christian Semmler
715acd657d
Implement/match Isle::FUN_10033350 (#951) 2024-05-25 03:14:45 +02:00
Christian Semmler
b759390060
Implement/match Isle::Escape (#950) 2024-05-25 02:41:57 +02:00
Christian Semmler
e59d684f37
Implement/match actor Create functions (#949) 2024-05-24 14:44:09 -04:00
Christian Semmler
63719ef689
Implement/match Isle::CreateState and related (#948) 2024-05-24 20:07:36 +02:00
Christian Semmler
1633118f68
Implement/match Isle::UpdateGlobe (#947)
* Implement/match Isle::UpdateGlobe

* Change function access
2024-05-24 19:16:04 +02:00
Christian Semmler
db90807d53
Implement/match LegoPathActor::ParseAction (#946)
* Implement/match LegoPathActor::ParseAction

* Fix naming

* Space
2024-05-24 19:07:45 +02:00
Christian Semmler
6774784b37
Implement/match LegoPathActor::VTable0xa4 and VTable0xa8 (#945)
* Implement/match LegoPathActor::VTable0xa4

* Implement/match LegoPathActor::VTable0xa8

* Name enum constants
2024-05-22 14:09:06 -04:00
Christian Semmler
8fee73c525
Implement/match LegoPathStruct (#944)
* Implement/match LegoPathStruct

* Rename some nums

* Consistent naming

* Naming

* relax regex

* Name some functions

* Improve naming

* Rename
2024-05-21 15:03:50 -04:00
Christian Semmler
bc91fd2189
Implement/match LegoPathActor::SwitchBoundary (#943)
* Implement/match LegoPathActor::SwitchBoundary

* Rename var
2024-05-20 20:27:00 +02:00
Christian Semmler
7538988f50
Implement LegoPathActor::VTable0x9c (#942)
* Implement LegoPathActor::VTable0x9c

* Add annotation
2024-05-20 18:27:54 +02:00
Christian Semmler
3342464321
Implement/match LegoPathController::FUN_1004a240 (#941) 2024-05-20 17:34:31 +02:00
Christian Semmler
8428cde67f
Implement LegoUnknown::FUN_1009a1e0 (#940) 2024-05-19 16:36:11 -04:00
Christian Semmler
fb16b2c896
Implement/match LegoPathBoundary::FUN_100575b0 (#939) 2024-05-19 21:41:07 +02:00
Christian Semmler
c8a0e4cf8d
Implement LegoPathActor::VTable0x68 (#938)
* Implement LegoPathActor::VTable0x68

* Fix naming
2024-05-19 20:22:53 +02:00
Christian Semmler
23cc82c532
Implement/match LegoPathBoundary::Intersect (#937) 2024-05-19 17:24:09 +02:00
Cameron
d106aada11
basic name improvements (#930)
* basic name improvements

* clang-format

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-05-18 15:20:05 -04:00
Christian Semmler
73844f14fa
Implement/match LegoAnimationManager::FUN_10063fb0 (#936) 2024-05-18 21:05:45 +02:00
Christian Semmler
732de04433
Implement/match PlayCamAnim and CameraTriggerFire (#935)
* Implement/match PlayCamAnim and CameraTriggerFire

* Fix type

* Name var
2024-05-18 20:43:19 +02:00
Christian Semmler
01735bdc28
Implement/match ViewManager::FUN_100a6150 (#934) 2024-05-18 18:27:14 +02:00
Christian Semmler
c1c78cb8aa
Implement LegoAnimationManager::FUN_10064010 (#933) 2024-05-18 18:26:32 +02:00
Christian Semmler
aab6a17d2f
Implement/match LegoAnimationManager::FUN_10064120 (#932)
* Implement/match LegoAnimationManager::FUN_10064120

* Fix naming

* Fix parentheses
2024-05-18 17:48:07 +02:00
Christian Semmler
c92341527e
Implement/match FUN_1003ef00 and related (#931) 2024-05-18 03:42:21 +02:00
Christian Semmler
5fe0b7e0bb
Implement/matche LegoAnimationManager::FUN_10064740 and FUN_10064670 (#929) 2024-05-17 21:58:35 +02:00
Christian Semmler
710f07e632
Implement/match LegoAnimationManager::FUN_10064380 (#928)
* Implement/match LegoAnimationManager::FUN_10064380

* Fix naming

* Revert
2024-05-17 14:21:48 -04:00
Christian Semmler
ed782980ec
Implement/match LegoAnimationManager::FUN_10063d10 (#927) 2024-05-17 16:20:04 +02:00
Christian Semmler
02c4aad33e
Implement/match LegoAnimationManager::FUN_10064b50 (#926) 2024-05-17 16:05:06 +02:00
Christian Semmler
4419007355
Replace magic values with script actions 2024-05-16 15:36:52 -04:00
Christian Semmler
3c89cbe4e1
Implement/match LegoLocomotionAnimPresenter (#925) 2024-05-15 21:29:00 +02:00
Christian Semmler
9a05edd0a7
Implement/match LegoLoopingAnimPresenter (#924) 2024-05-15 20:34:36 +02:00
Christian Semmler
29a0e32739
Implement/match remaining LegoHideAnimPresenter functions (#923)
* Implement/match remaining LegoHideAnimPresenter functions

* Fix type

* Fix marker

* Fix type
2024-05-14 20:50:37 +02:00
Christian Semmler
e4a899350e
Move strings to proper location in define.cpp (#922) 2024-05-14 16:43:06 +02:00
Christian Semmler
e32e06321a
Rename _countof to sizeOfArray (#921) 2024-05-14 16:35:22 +02:00
Christian Semmler
95ed90aacb
Implement/match some LegoHideAnimPresenter functions (#920) 2024-05-14 16:15:35 +02:00
Christian Semmler
a1be306df7
Implement/match LegoPathBoundary ctor/dtor (#919)
* Implement/match LegoPathBoundary ctor/dtor

* Add missing BETA annotation
2024-05-14 15:42:44 +02:00
Christian Semmler
0b2d4914ee
Match LegoVideoManager::Destroy (#918) 2024-05-14 14:36:44 +02:00
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
MS
b3d6319656
Beta addrs for TglSurface and related (#905) 2024-05-11 18:27:06 +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
MS
79791be574
Beta addrs for ViewLODList (#898)
* Beta addrs for ViewLODList

* unsigned char
2024-05-09 22:16:12 -04: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