Misha
724c953947
Implement MxDSBuffer constructor, match MxDSSource::FUN_100bffd0 ( #235 )
...
* Implement MxDSBuffer constructor, match FUN_100bffd0
* Match to 100%, minor style fixes
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2023-10-22 21:58:05 +02:00
Ramen2X
5ab993bfda
cleanup: fix all improper uses of MxResult ( #234 )
...
* cleanup: fix all improper uses of MxResult
2023-10-22 13:38:25 -04:00
Ramen2X
7e907cfe3f
implement/match JukeBoxState ( #233 )
2023-10-22 11:33:29 -04:00
Misha
681ab9c026
implement most of MxBackgroundAudioManager ( #232 )
...
* implement most of MxBackgroundAudioManager
* Match OpenMusic to 100%, style fixes
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2023-10-22 16:11:46 +02:00
Misha
50fe5f9c83
implement LegoSoundManager vtable ( #231 )
...
* LegoSoundManager
* Fix virtual function declarations/locations
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2023-10-22 15:48:20 +02:00
MS
ae908a74cc
Copy constructor for MxVideoPresenter::AlphaMask ( #229 )
2023-10-21 19:47:48 -04:00
Joshua Peisach
af0e38176c
MxSoundPresenter ( #227 )
...
* MxSoundPresenter
Destructor, destroy, function adding itself to the sound manager and vtable38.
* Fix virtual function declarations
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2023-10-22 00:41:05 +02:00
MS
85d94baa50
MxVideoPresenter AlphaMask (formerly UnkStruct) ( #226 )
2023-10-22 00:40:31 +02:00
Christian Semmler
5dfb132025
Implement MxOmni::DoesEntityExist and related ( #225 )
...
* Implement MxOmni::DoesEntityExist and related
* Rename function for consistency
2023-10-21 17:23:55 -04:00
Christian Semmler
6931a817a6
Implement NotifyCurrentEntity ( #224 )
2023-10-21 17:02:55 -04:00
Joshua Peisach
4f201eaa48
MxEventPresenter destructor ( #223 )
...
* MxEventPresenter destructor
* Fix and implement Destroy
* Fix scope of Destroy decl
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2023-10-20 20:41:23 +02:00
Christian Semmler
3a21834382
Rename virtual function to fix override ( #222 )
2023-10-19 13:07:05 -04:00
Ramen2X
fbb3b4930c
label ScoreState::VTable0x18 and associated member ( #221 )
2023-10-19 12:56:56 -04:00
Ramen2X
adbe73d664
implement/match ScoreState vtable ( #220 )
...
* implement/match ScoreState vtable
* add size assert for ScoreState
2023-10-19 03:26:32 -04:00
Ramen2X
52e6c9ac22
implement/match global ControlManager() function ( #219 )
...
* implement/match global ControlManager() function
* remove unnecessary forward declaration
2023-10-18 22:12:28 +02:00
Ramen2X
7c26a4d2dc
fix LegoState::VTable0x1C fake-match & implement LegoFileStream::FUN_10006030 ( #217 )
...
* fix LegoState::VTable0x1C fake-match, implement LegoFileStream::FUN_10006030
* Match and relocate FUN_10006030
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2023-10-18 00:05:31 +02:00
Christian Semmler
476af22b36
Add size assert for MxVideoManager, sort functions
2023-10-17 09:16:37 -04:00
Christian Semmler
727c748ecd
Implement/match MxVideoManager::InvalidateRect and UpdateRegion ( #214 )
...
* Implement/match MxVideoManager::InvalidateRect and UpdateRegion
* Update comment
2023-10-16 16:20:52 -07:00
Ramen2X
8b1c8f7abe
use MxResult return type in MxCore::Tickle()
2023-10-16 18:46:45 -04:00
Ramen2X
3a1cab323f
complete and match LegoState vtable ( #216 )
2023-10-16 16:18:35 -04:00
Misha
3dee6eae7a
MxVideoPresenter functions ( #187 )
...
* mxvideopresenter
* Update mxvideopresenter.cpp
* use inline getter for rectange width/height
* Update mxvideopresenter.cpp
* Match MxVideoPresenter::Destroy to ~88%
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2023-10-16 22:09:08 +02:00
Ramen2X
b95656a735
implement GasStationState::GasStationState() ( #215 )
...
* implement GasStationState::GasStationState()
* Match 100%
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2023-10-16 20:17:23 +02:00
Christian Semmler
50b9a39b2f
Use memset to be consistent with the rest
2023-10-16 09:27:23 -04:00
Andrew Gutekanst
000c019a0e
Add LegoVehicleBuildState ( #213 )
...
* Add LegoVehicleBuildState
* Update LegoVehicleBuildState member-var names to include offsets
2023-10-16 15:22:21 +02:00
Ramen2X
ba8ae8138e
implement/match MxTransitionManager::Transition_Windows() ( #212 )
2023-10-15 19:41:05 -04:00
Christian Semmler
37e75703d4
MxOmni::Create 100% match, make Create calls consistent ( #211 )
...
* Improve MxOmni::Create match, make Create calls consistent
* Match MxEventManager::Create
* Fix MxTickleClientPtrList
* 100% match
* Update mxomnicreateparam.h
2023-10-14 20:49:07 -04:00
Ramen2X
0c8705a9df
implement/match MxTransitionManager::Transition_Broken() ( #210 )
2023-10-14 15:54:49 -04:00
Christian Semmler
0580b2870c
Use MxResult for RealizePalette
2023-10-14 15:31:30 -04:00
Christian Semmler
e4f87ad7dd
Implement MxVideoManager::vtable0x28 and Create ( #208 )
...
* MxVideoManager::Destroy / destructor
* Consistency
* Add missing override
* Implement MxVideoManager::vtable28
* Implement vtable2c
* Rename to Create
2023-10-14 21:33:11 +02:00
MS
e08717f496
MxTransitionManager Pixelation transition ( #209 )
...
* Pixelation transition and improved variable names
* More accurate pointer math for the 16-bit case
2023-10-14 15:15:51 -04:00
Christian Semmler
5ddfaab9e7
Implement MxVideoManager::Destroy / destructor ( #207 )
...
* MxVideoManager::Destroy / destructor
* Consistency
* Add missing override
2023-10-14 11:46:00 -07:00
Christian Semmler
f062543f87
Match MxPresenter::StartAction to 100%
2023-10-14 09:27:58 -04:00
Joshua Peisach
a814132ab9
MxMIDIPresenter functions ( #204 )
...
* MxMIDIPresenter destructor, stub Destroy for now
* MxMIDIPresenter::EndMIDIAction + update param name
m_MIDIInitialized is definitely public, since it is accessed from the global
MusicManager.
* Add getter for MIDIInitialized, fix virtual function decl
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2023-10-14 15:25:53 +02:00
Andrew Gutekanst
7cf85e6f06
Add LegoMeterPresenter stub class ( #206 )
2023-10-14 15:08:51 +02:00
Christian Semmler
b92b2604d5
Match MxObjectFactory::Create to 100%
2023-10-14 09:02:44 -04:00
Andrew Gutekanst
c66b6aa123
Refine MxObjectFactory ( #205 )
...
* Refine MxObjectFactory
* Change interface of Destroy
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2023-10-14 14:59:06 +02:00
Ramen2X
a24a798c82
rename all uncertain names to unk ( #203 )
2023-10-13 17:36:16 -04:00
DmitriLeon2000
34e09c2bb3
Clean up Destroy
pattern everywhere, fix missing overrides ( #202 )
...
* Rename MxMusicPresenter function vtable38
* Rename MxMusicPresenter function vtable38
* MxMediaPresenter, MxMusicManager and MxMusicPresenter
* Refactoring Destroy functions
* MxMediaManager & MxMusicPresenter
* Fix some vtable declarations, more renames
* Fix MxEventManager
* More rename fixes
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2023-10-13 18:43:45 +02:00
Mark Langen
91c3ed3e70
100% match of many functions in the LegoGameState::Save codepath ( #86 )
...
* Only include decomps
* One more function
* Add offset to endOfVariables
* Remove leftover header
* Use undefined where applicable
* Fixes, refactorings
* Fixes
* Fix calling convention
* Added offset comment
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2023-10-12 18:18:24 +02:00
Christian Semmler
49ec7364c2
MxDSAction::MergeFrom: match to 100% ( #200 )
...
* Minor accuracy improvement
* Workaround for 100% match
* Update mxdsaction.cpp
2023-10-12 08:54:02 -07:00
Misha
b7b0ac6ae7
Implement a few functions in LegoEntity ( #201 )
2023-10-12 00:15:36 +02:00
Angel
19ee8cdc30
Implemented MxVector4::SetMatrixProductWrapper ( #198 )
...
* Implemented the function wrapper for SetMatrixProduct labeled as
SetMatrixProductWrapper with 100% match.
* Rename for consistency
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2023-10-11 12:18:48 +02:00
DmitriLeon2000
02d003673d
Implement MxMusicPresenter's Destroy method and move MxMediaPresenter's Destroy method to "protected" ( #199 )
...
* MxMusicPresenter destroy
* Implement MxMusicPresenter's Destroy method and move MxMediaPresenter's Destroy method to "protected"
* MxMediaPresenter Destroy to "protected", for real
* MxMusicPresenter Destroy
2023-10-11 12:18:26 +02:00
Christian Semmler
11dafaf816
Fix MxDSMediaAction structure/matches ( #194 )
2023-10-11 00:50:14 -07:00
Christian Semmler
93ce1ccfe8
Implement remaining MxDSSelectAction functions ( #183 )
...
* Implement remaining MxDSSelectAction functions
* Fix match
2023-10-10 13:22:00 -04:00
vMidz
23b9d47e8a
implement EndAction ( #196 )
...
* implement EndAction
implement EndAction
+offsets commenets
* Refactor MxParam/MxNotificationParam
* Add correct address for destructor
* Make MxNoticiationParam more concise
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2023-10-10 13:05:04 -04:00
Christian Semmler
d65c87f04d
Add missing space
2023-10-10 05:30:56 -04:00
Misha
114a959741
MxDiskStreamController vtable ( #197 )
...
* mxdiskstreamcontroller vtable + MxStreamController::vtable0x20
* stub MxDiskStreamController::Open
* MxDiskStreamProvider
* MxNextActionDataStart
* Revert "MxNextActionDataStart"
This reverts commit 41e8cfa2f1
.
* Match MxStreamController::vtable0x20
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2023-10-10 10:27:00 +02:00
MS
49efa02eaa
MxBitmap code clarity ( #195 )
...
* MxBitmap code clarity
* Use mxtypes. TWOCC for BM string. SetSize arg to FALSE
2023-10-10 00:20:38 +02:00
Christian Semmler
28206402f9
Use forward declaration for LegoAnimationManager in LegoOmni
2023-10-09 06:33:06 -04:00