Commit graph

149 commits

Author SHA1 Message Date
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
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
MS
14653070cc
Refactor surrounding MxBitmap::GetAdjustedStride (#1057)
* Refactor surrounding MxBitmap::GetAdjustedStride

* Remove this-> from MxDisplaySurface
2024-07-04 09:50:04 -07: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
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
bbc304ce46
Implement/match Ambulance::HandlePathStruct (#1029)
* Implement/match Ambulance::HandlePathStruct

* Add annotation
2024-06-13 20:10:19 +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
be4c351d7d
Rename Start/StopTimer to Pause/Resume (#1007)
* Rename Start/StopTimer to Pause/Resume

* Fix
2024-06-09 13:39:22 -04: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
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
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
MS
085bdbe74b
Beta match MxPalette (#968)
* Beta match MxPalette

* Modern compiler fix
2024-05-29 22:52:45 +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
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
7c9fdd255e
Implement/match Isle::HandleType19Notification (#952)
* Implement/match Isle::HandleType19Notification

* Fix
2024-05-25 03:23:41 +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
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
9a05edd0a7
Implement/match LegoLoopingAnimPresenter (#924) 2024-05-15 20:34:36 +02:00
Christian Semmler
e4a899350e
Move strings to proper location in define.cpp (#922) 2024-05-14 16:43:06 +02:00
MS
4b386fe738
Tweak MxOmni::Destroy and add more beta annotations (#887)
* Fix long function name

* Omni getter beta annotations

* MxMisc asserts and beta annotations

* Helper function for MxNotificationManager list
2024-05-07 13:00:16 -04:00
MS
3519a8356b
Beta matching MxDSMediaAction (#882) 2024-05-03 12:51:58 -04: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
MS
446caa4ca1
Beta matching MxDSObject/MxDSAction (#878)
* Beta matching MxDSObject/MxDSAction

* MxDSAction copy constructor

* A bit more refactor

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-05-03 14:01:27 +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
MS
a9d67e4dd7
Beta match MXIOINFO (#853) 2024-04-26 04:57:10 -04:00
MS
612eec6889
Beta matching MxAtom classes (#847)
* Beta matching MxAtom classes

* Remove unused getter

* Restore operator!= for modern compilers
2024-04-25 17:43:42 +02:00
MS
311b27b697
Beta matching MxString (#842)
* Beta matching MxString

* Add /opt:ref for lego1. Reorder MxString header.

* const fix

* Remove lego1 Opt:ref
2024-04-24 12:10:51 -04:00
Christian Semmler
f1688be263
Make NotificationManager::Send take a const reference to notification (#836)
* Make NotificationManager::Send take a const reference to notification

* Fix virtual func
2024-04-22 14:11:38 +02:00
Christian Semmler
91d043a9ae
Implement/match LegoAnimMMPresenter::FUN_1004b450 (#827) 2024-04-20 17:18:19 +02:00
Christian Semmler
c617139d5b
Implement/match LegoAnimMMPresenter::EndAction (#826)
* Implement/match LegoAnimMMPresenter::EndAction

* Add missing vtable
2024-04-20 16:41:34 +02: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
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
11410890cd
Implement/match LegoPhonemePresenter::LoadFrame & PutFrame (#812)
* Implement/match LegoPhonemePresenter::LoadFrame & PutFrame

* add beta10 annotations
2024-04-17 13:26:11 +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
MS
46362a0f6e
Fix some issues with annotations (#808) 2024-04-15 14:42:25 -04:00
Joshua Peisach
4e74747451
GasStation::ReadyWorld (#765)
* Start GasStation::ReadyWorld

* fixes (up to 69.43%)

* what is this file and how did it get here

* don't hardcode (likely) action id

* Match FUN_10005590 (non-inlined version of PlayAction?)

* fixes (75.07%)

* Fixes (77.87%)

* style

* fix

* style

* style

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-04-06 13:48:09 +02:00
MS
ce134e79ef
Use reference on MxDSObject Deserialize calls (#767) 2024-04-03 12:06:53 -04:00
Christian Semmler
68bb20f04f
Implement LegoCharacterManager::CreateROI (#709)
* WIP

* Create globals

* Add Read

* Name Init

* Add LegoCharacter init data

* Add define for NULL

* Use MxS8

* Add LegoCharacterLOD

* WIP CreateROI

* Fix

* WIP

* Match

* Match

* Match, implement Find

* Fix MeshBuilder

* Fix

* space
2024-03-22 18:40:19 +01:00
Misha
9256554406
Implement LegoCameraController::Notify & TimeROI::FUN_100a9b40 (#707)
* Implement LegoCameraController::Notify & TimeROI::FUN_100a9b40

* Fixes/matches

* Style

* Fix

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-03-21 15:39:23 +01:00
Misha
d8fedab090
Implement MxDisplaySurface::VTable0x30 (#705)
* Implement MxDisplaySurface::VTable0x30

* improve match

* style

* fix style

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-03-20 21:44:30 +01:00
Misha
e5fa35fd99
Implement a few registrationbook methods (#703)
* Implement a few registrationbook methods

* Match RegistrationBook::HandleKeyPress

* Match RegistrationBook::CreateSurface

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-03-20 17:26:10 +01:00