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
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
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
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
Christian Semmler
219b65f5ad
Implement/match IslePathActor::FUN_1001b660 ( #960 )
2024-05-27 21:49:41 +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
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
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
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
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
Christian Semmler
5629eb3c85
Implement/match LegoAnimationManager::FUN_100623a0 ( #893 )
2024-05-09 21:33:48 +02:00
Christian Semmler
001b46b2ab
Implement/match LegoAnimationManager::FUN_10062110 ( #892 )
...
* Implement/match LegoAnimationManager::FUN_10062110
* Fix param name
* Return other value in stub
2024-05-09 18:49:43 +02:00
Christian Semmler
36d681fde4
Implement/match LegoAnimationManager::FUN_100617c0 ( #891 )
2024-05-09 16:30:34 +02:00
Mark Langen
55299229c2
LegoBuildingManager Round 2 ( #890 )
...
* LegoBuildingManager Round 2
* 100% match most of the remaining methods, only
Tickle and FUN_10030630 remain.
* The interesting finding is that the curious
members of the LegoBuildingManager form a short
embedded fixed-length array used to store info
about current animation of buildings.
* I saw that you removed the SetY which I had
added to MxMatrix. Agree that this method
doesn't make sense on MxMatrix, however I've
added it back to Matrix4. I see the pattern of
setting / getting the Y component used in enough
places that I doubt they were just hoping they
remembered the subscript correctly every time.
Let me know if you agree or still don't think it
makes sense to include.
* Formatting
* Order
* Satisfy name checker
* Add beta annotations and adjust style/naming
* Make function STUB
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-05-09 15:57:38 +02:00
Christian Semmler
5c8249f334
Implement/match LegoAnimationManager::FUN_10061530 ( #889 )
2024-05-08 16:28:32 +02:00
Christian Semmler
05edf96186
Implement LegoAnimationManager::FUN_10061010 ( #888 )
2024-05-07 21:59:46 +02:00
Christian Semmler
bac891cb0c
Implement/match LegoAnimationManager::FUN_10060570 ( #886 )
2024-05-07 16:54:06 +02:00
Mark Langen
253882bdcb
Start work on building save data ( #885 )
...
* Start work on building save data
* Add LegoBuildingData struct to LegoBuildingManager, naming mirrors
LegoCharacterData in LegoCharacterManager.
* 100% match of many methods in LegoBuildingManager using the struct.
* Formatting
* Add required includes post merge
* Format again
* Better follow naming conventions
* Format again again
* Also fill in template data
* Fix data
* Change braces
* Match functions, consistent style, add missing annotations, some BETA annotations
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-05-06 13:15:19 +02:00
Christian Semmler
45f9f54f21
Implement/match IslePathActor::SpawnPlayer ( #884 )
...
* Implement/match IslePathActor::SpawnPlayer
* Fix
* Fix
* Add skip
* Rename param
2024-05-04 16:13:05 +02:00
Christian Semmler
1b1d2ecde6
Refactor LegoOmni into LegoMain/Scripts ( #883 )
...
* Refactor LegoOmni into LegoMain/Scripts
* Fix guard
2024-05-04 14:06:32 +02: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
Christian Semmler
72cbd1fc60
Refactor LegoOmni::PathContainer into IslePathActor::SpawnLocation ( #877 )
...
* Refactor LegoOmni::PathContainer into IslePathActor::SpawnLocation
* Add beta annotation
* Type var
2024-05-02 16:51:41 +02:00
Christian Semmler
0bf39c7108
Implement/match LegoAnimationManager::Tickle ( #876 )
...
* Implement/match LegoAnimationManager::Tickle
* Resolve out of order
* Fix naming
2024-05-02 15:22:09 +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
Christian Semmler
6c89cd3315
Minor refactor SkateBoard setter in Pizza ( #874 )
2024-05-01 13:49:47 +02:00
jonschz
84b789ef9e
Implement the rest of the SkateBoard class ( #873 )
...
* Implement SkateBoard::~SkateBoard()
* Implement SkateBoard::VTable0xd4
* Implement SkateBoard::Create()
- one typecast is still not clear
* Add SkateBoard::VTable0xe4()
* apply clang-format
* Apply clang-format to legocontrolmanager.h
* Address review comments
* 57 percent match
* 63 percent
* 82 percent match
* previous 86 was bugged, unfortunately
* 85 percent on FUN_10010270
* 92 percent FUN_10010270
* 69 percent VTable0xcc
* 73 percent VTable0xcc
* more progress, not quite there yet
* minor 10010510 improvement
* 100 % on FUN_10010510
* slowly making progress on SkateBoard::VTable0xcc (broken decomp)
* getting closer, now only wrong registers
* 89 percent VTable0xcc
* 92 percent
* 95 % VTable0xcc
* Changes, see comment
---------
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-05-01 13:36:58 +02:00
Christian Semmler
20dee07b9c
Implement/match LegoAnimationManager::FUN_100605e0 ( #872 )
...
* Implement/match LegoAnimationManager::FUN_100605e0
* Remove padding
* Fix annotation
2024-04-30 16:02:58 +02:00
Christian Semmler
b902790c54
Implement/match LegoAnimationManager::FUN_1005f6d0 and FUN_1005f700 ( #871 )
...
* Implement/match LegoAnimationManager::FUN_1005f6d0 and FUN_1005f700
* Use bool constants
2024-04-30 12:38:55 +02:00
Christian Semmler
60796eff74
Implement/match LegoAnimationManager::Suspend ( #870 )
2024-04-30 12:18:44 +02:00
Christian Semmler
599d8c91c8
Implement/match LegoAnimationManager::Resume ( #869 )
...
* Implement/match LegoAnimationManager::FUN_1005f0b0
* Rename
2024-04-30 10:27:57 +02:00
Christian Semmler
7c6c68d6f9
Rename LegoCharacterData to LegoCharacterInfo ( #867 )
2024-04-28 15:04:27 +02:00
Christian Semmler
ca9b611251
Add enums for character LODs and parts ( #866 )
2024-04-28 14:49:07 +02:00
jonschz
b17d76c2cc
Refactor: Replace magic values by enum values ( #865 )
...
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-04-28 07:27:17 -04:00
jonschz
dede20000f
Progress towards implementing SkateBoard ( #864 )
...
* Implement SkateBoard::~SkateBoard()
* Implement SkateBoard::VTable0xd4
* Implement SkateBoard::Create()
- one typecast is still not clear
* Add SkateBoard::VTable0xe4()
* apply clang-format
* Apply clang-format to legocontrolmanager.h
* Address review comments
---------
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-04-28 07:23:29 -04:00
Christian Semmler
ec7df356cf
Implement/match LegoAnimationManager::Reset ( #863 )
...
* Implement/match LegoAnimationManager::Init
* Rename function
* fix hex val
2024-04-27 16:31:50 +02:00
Christian Semmler
659599b635
Implement/match Pizzeria::Create ( #862 )
2024-04-27 16:06:12 +02:00
Christian Semmler
f6ffeabed7
Implement/match LegoAnimationManager::GetCharacterIndex ( #861 )
2024-04-27 15:59:00 +02:00
Christian Semmler
c7e5457f95
Implement/match LegoAnimationManager::FUN_10062770 ( #860 )
2024-04-27 15:46:47 +02:00
Christian Semmler
e49d05c410
Implement/match LegoAnimationManager::FUN_10063780 and FUN_10063aa0 ( #859 )
2024-04-27 15:19:55 +02:00
Christian Semmler
86203f1704
Implement/match LegoAnimationManager::Init ( #858 )
2024-04-27 15:07:28 +02:00
Christian Semmler
00f5eff792
Implement/match LegoAnimationManager ctor/dtor ( #857 )
2024-04-27 14:52:28 +02:00
Christian Semmler
53ef6bdd81
Implement/match LegoAnimationManager::FUN_10060dc0 ( #856 )
...
* Implement/match LegoAnimationManager::FUN_10060dc0
* Fix params
2024-04-26 17:37:07 +02:00
Christian Semmler
19d39394be
Score class cleanup ( #855 )
...
* Cleanup/fixes
* Improve Paint match
* Improve Score::FillArea
* Fix naming
* Fix value
2024-04-26 16:58:42 +02:00
Christian Semmler
180a1e6360
Define LegoEntity::Type enum ( #854 )
...
* Define LegoEntity::Type enum
* Use enum constant
2024-04-26 16:03:13 +02:00
Christian Semmler
31f5143741
Implement/match LegoAnimPresenter::VTable0x94 ( #852 )
2024-04-25 17:27:55 +02:00
Christian Semmler
054120bc5d
Implement/match LegoAnimPresenter::FUN_1006aa60 ( #851 )
2024-04-25 17:00:42 +02:00
Christian Semmler
ce3d915bba
Implement/match LegoAnimPresenter::SubstituteVariables ( #850 )
2024-04-25 16:36:28 +02:00
Christian Semmler
830c0827af
Implement/match LegoAnimPresenter::Destroy ( #849 )
...
* WIP Destroy
* Match
2024-04-25 16:24:06 +02:00
Christian Semmler
916c039e72
Implement/match LegoAnimPresenter::ParseExtra ( #848 )
...
* Implement/match LegoAnimPresenter::ParseExtra
* Fix
2024-04-25 16:00:58 +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
410824bd0f
Implement/match various small LegoAnimPresenter functions ( #846 )
...
* Implement/match various small LegoAnimPresenter functions
* Fix location of anim function
* fix
2024-04-24 15:51:28 +02:00
Christian Semmler
b789a15d0b
Implement/match LegoAnimPresenter::FUN_1006b900 ( #844 )
2024-04-24 14:51:20 +02:00
Christian Semmler
67c9736953
Implement/match LegoAnimPresenter::FUN_1006afc0 ( #843 )
...
* Implement/match LegoAnimPresenter::FUN_1006afc0
* empty
2024-04-24 14:24:59 +02:00
Christian Semmler
9025d5ed06
Implement/match LegoWorld::FUN_1001fda0 ( #840 )
2024-04-23 10:33:38 +02:00
Christian Semmler
7efbb04999
Implement/match LegoAnimPresenter::FUN_1006ab70 ( #839 )
2024-04-23 10:03:10 +02:00
Christian Semmler
c01fd9b260
Implement/match LegoAnimPresenter::EndAction ( #838 )
2024-04-22 15:42:52 +02:00
Christian Semmler
b4f29ea6b0
InvokeAction: take const atom ( #837 )
2024-04-22 14:24:00 +02: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
0e0d6890ad
Fix SwitchHat ( #835 )
2024-04-21 16:41:38 +02:00
Christian Semmler
c9db98c4c3
Fix writing/reading of game state ( #834 )
...
* Fix writing/reading of game state
* Match existing state serialization functions
2024-04-21 15:42:08 +02:00
Christian Semmler
26f2dd1e5f
Implement/match LegoAnimMMPresenter::~LegoAnimMMPresenter ( #833 )
...
* Implement/match LegoAnimMMPresenter::~LegoAnimMMPresenter
* add missing override
* use NULL
2024-04-20 18:53:53 +02:00
Christian Semmler
30747dbae6
Implement/match LegoAnimMMPresenter::FUN_1004b6d0 ( #832 )
2024-04-20 18:33:10 +02:00
Christian Semmler
b39ea845b0
Implement/match LegoAnimMMPresenter::FUN_1004b610 and FUN_1004b6b0 ( #831 )
2024-04-20 18:24:09 +02:00
Christian Semmler
a3bd98a04d
Implement/match LegoAnimMMPresenter::FUN_1004b5b0 ( #830 )
2024-04-20 18:03:42 +02:00
Christian Semmler
3cab989250
Implement/match LegoAnimMMPresenter::FUN_1004b580 ( #829 )
2024-04-20 17:52:46 +02:00
Christian Semmler
f637dcaa29
Implement/match LegoAnimMMPresenter::FUN_1004b530 ( #828 )
2024-04-20 17:40:23 +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
8d729f77b7
Implement/match LegoAnimMMPresenter Streaming/RepeatingTickle and Notify ( #825 )
2024-04-20 16:24:12 +02:00
Christian Semmler
9cc5df8c40
Implement/match LegoAnimMMPresenter::StartingTickle ( #824 )
2024-04-20 16:07:58 +02:00
Christian Semmler
0b08b0ae69
Implement/match LegoAnimMMPresenter::ReadyTickle ( #823 )
2024-04-20 15:52:10 +02:00
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
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
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
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
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
Misha
540bcc61ad
Implement LegoVideoManager::FUN_1007c520 ( #803 )
2024-04-14 16:23:32 -04: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
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
Joshua Peisach
fc91da8666
More gasstation functions ( #776 )
...
* More gasstation functions
* Match GasStation::HandleClick
* Match GasStation::Tickle
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-04-06 19:07:57 +02:00
Christian Semmler
4795eac37c
Implement LegoCharacterManager::FUN_10083db0 ( #775 )
2024-04-06 18:11:13 +02:00
Christian Semmler
3bafe2d3a4
Implement/match LegoCharacterManager::FUN_10083f10 ( #774 )
...
* Implement LegoCharacterManager::FUN_10083f10
* style
* Match
* Fix naming
2024-04-06 17:46:40 +02:00