Commit Graph

192 Commits

Author SHA1 Message Date
Christian Semmler
63bfb95d80 Match LegoActor::SetROI (#1295) 2024-12-28 17:43:06 +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
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
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
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
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
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
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
1bfeebd004 Implement most of LegoJetski, refactor (#1214)
* Implement most of `LegoJetski`, refactor

* Fix
2024-12-12 21:17:25 +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
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
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
94ce89cbaa (Proposal) Introduce arithmetic operators to Vector2 (#1193) 2024-12-07 17:26:22 +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
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
Christian Semmler
a0a114135a Implement/match LegoAct2::HandleEndAction and related (#1184)
* Implement/match LegoAct2::HandleEndAction

* Reorder
2024-12-02 18:58:08 +01:00
Christian Semmler
e8e457f01a Implement/match LegoAct2::Enable (#1178) 2024-11-29 22:32:40 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
bbc304ce46 Implement/match Ambulance::HandlePathStruct (#1029)
* Implement/match Ambulance::HandlePathStruct

* Add annotation
2024-06-13 20:10:19 +02:00