Christian Semmler
00dee618c0
Merge remote-tracking branch 'isle/master' into mergeisle
2025-01-22 16:34:28 -07:00
Christian Semmler
5a7df7f95d
Order until LegoCarBuildAnimPresenter ( #1365 )
...
* Order until `Infocenter`
* Order until RaceSkel
* More order
* Order until `LegoCarBuildAnimPresenter`
* Add blank line
* Add BETA annotation
2025-01-21 01:31:28 +01:00
Christian Semmler
fc03e7a682
Improve order until legomain.cpp ( #1350 )
...
* Fix `LegoBackgroundColor` order
* Order
* Improve order in Act3Actors
* Improve order
* Add BETA annotation
* Order more
* More order
* More order
* Order
* Match/order
* Remove blank line
* Modern compiler fix
* vtable annotation
2025-01-17 18:33:27 -07:00
Christian Semmler
e1ce96c473
Order symbols until end of LegoGameState ( #1340 )
...
* Order `Ambulance`
* More ordering
* Order until `LegoGameState`
* Move
2025-01-17 03:42:38 +01:00
Christian Semmler
e8c856c585
Order symbols in Act1State ( #1336 )
...
* Order functions in `Act1State`
* Remove IsPresent
* Revert some stuff
2025-01-17 02:25:31 +01:00
Christian Semmler
70b0f76fa1
Move Read/Write functions to LegoStorage base class, match Act1State::Serialize ( #1335 )
...
* Move Read/Write function to LegoStorage base class
* Proper const use for vector / BETA match
* Match `Act1State::Serialize`
2025-01-17 00:13:23 +01:00
Christian Semmler
83fb9f04a7
Merge remote-tracking branch 'isle/master'
2025-01-15 16:53:43 -07:00
Christian Semmler
77a3dc0795
Match Serialize functions to BETA10 ( #1334 )
...
* Begin refactor Serialize functions
* Match more Serialize functions
* Match `LegoVehicleBuildState::Serialize`
* Match `LegoGameState::Username::Serialize`
* Match `LegoGameState::ScoreItem::Serialize`
* Match `LegoGameState::History::Serialize`
* Var name
* Var name
* Revert "Var name"
This reverts commit 1c0cccfba799450cfe4f75566dc1f32db1c76a6b.
* Add other Serialize implementations
* Add remaining Serialize implementations
* Add Read for char*
* Improvements
2025-01-16 00:52:29 +01:00
Christian Semmler
f95eedd0ce
Improve match of LegoPathActor::FUN_1002edd0, reorder ( #1332 )
...
* Relocate annotation
* Improve match of `LegoBuildingManager::ScheduleAnimation`
* try fix
* Revert "try fix"
This reverts commit e8f5db6fec92e87fae5cd177f6b4880e81519bfe.
* Order isle
* Move annotation
2025-01-12 21:31:58 +01:00
Christian Semmler
a31900a6d4
Merge remote-tracking branch 'isle/master' into isleupd
2025-01-06 16:15:16 -07:00
Christian Semmler
72aa7e330d
Order functions up to the end of GasStation, match GasStation::ReadyWorld ( #1311 )
...
* Minor improvements
* Match `GasStation::ReadyWorld`
* Reorder
2025-01-05 18:40:07 +01:00
Christian Semmler
c54805fde8
Order functions in binary up to the end of Helicopter; refactor vector/matrix classes ( #1309 )
...
* Order experimentation
* Revert IslePathActor
* Fix order
* Fix inlining
* Fixes
* WIP
* WIP
* Refactor
* Refactor
* Fix operators
* Remove obsolete inline keyword
* Fix ctors
* Refactor
* Rename files
* Refactor
* Remove empty line
2025-01-04 15:07:04 -07:00
Anonymous Maarten
b97aea42d2
Use SDL_KeyCode in LEGO1.dll ( #51 )
...
* Pass SDL_Keycode in LEGO1.dll
* ISLE.EXE: use iniparser for getting isle.mediaPath
* Use SDL_isdigit instead of isdigit
* clang-format
* hdPath is a better default for mediaPath
* Replaced a stray 'A' with SDLK_A
* Use SDL_Keycode to store the ogel cheat code
2024-12-29 18:56:47 +01:00
Christian Semmler
b0a4d0e06b
Merge remote-tracking branch 'isle/master' into isle-merge3
2024-12-29 09:21:06 -07:00
MS
29e77210e8
Rename some things in Infocenter ( #1293 )
2024-12-27 17:21:49 -07:00
Christian Semmler
e54bfb5656
Merge remote-tracking branch 'isle/master' into isle-merge
2024-12-25 08:56:17 -07:00
Anonymous Maarten
bb4db6caac
Use SDL3 functions in more locations ( #44 )
...
* Use strcasecmp, strncasecmp, strlwr, strupr and itoa from SDL
* Use SDL_GetTicks instead of timeGetTime
* Use MxDSFile::OPEN_READ instead of OF_READ
* Use SDL_IOStream to read bitmaps
* Use SDL_LogXXX instead of OutputDebugString
* Undo mxvideoparam.h change
* Revert "Undo mxvideoparam.h change"
This reverts commit 4a20cf6c46 .
* Fix _MxTrace
* Reapply "Undo mxvideoparam.h change"
This reverts commit b3a09dc520 .
* fix _MxTrace
* Use __declspec(dllexport) for exporting symbols from dll
Refactored CMake script such that all objects are passed to the lego1 library.
* clang-format
* fix msvc build
* MSVC fixed for real now?
* Forgot about d3drm_guid
* Fix naming issue
* Use Uint64 in LegoCarBuild::Tickle for dTime
2024-12-24 18:04:46 -07: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
Christian Semmler
69bac21488
Merge remote-tracking branch 'isle/master' into merge
2024-12-23 09:38:55 -07: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
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
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
Christian Semmler
c9acd9a49f
Minor fixes ( #1248 )
2024-12-20 20:23:01 +01:00
Christian Semmler
e73f60e2c6
merge from isle/master
2024-12-20 11:54:06 -07: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 c9ca75ae7f1d894f976ce6d383d5b4d13ead99a5.
2024-12-19 20:22:34 +01:00
Christian Semmler
66e3c9a2e1
Implement/match Act3Brickster::Animate ( #1237 )
...
* Implement/match `Act3Brickster::Animate`
* Improve loop
2024-12-17 19:11:47 +01:00
Christian Semmler
f51b1867ee
Use SDL3 for filesystem access ( #36 )
...
* Use SDL IOStream in for MXIOINFO
* Use SDL IOStream for WDB file
* Use SDL IOStream for LegoStorage
* Update README.md
* Fixes
* Add names to skip.yml
* Add #include <stdio.h> where necessary
2024-12-16 22:25:52 +01:00
Christian Semmler
73b9e9a06f
Fix LegoAct2::Notify ( #1234 )
2024-12-15 19:45:17 +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
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
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
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
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
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
94ce89cbaa
(Proposal) Introduce arithmetic operators to Vector2 ( #1193 )
2024-12-07 17:26:22 +01: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
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
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
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
d6796ad86a
Implement remaining LegoGameState functions ( #1172 )
...
* Implement remaining LegoGameState functions
* Naming fixes
* Fix naming
2024-11-27 23:42:05 +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
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
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
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
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
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
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
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
2b9d8f1fba
Implement/match Pizza::FUN_100382b0 and Pizza::StopActions ( #1118 )
2024-10-26 18:34:43 +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
Christian Semmler
30e9e43cda
Implement/match RegistrationBook::HandlePathStruct ( #1084 )
2024-08-12 18:21:18 +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
87a9a37b33
Implement/match Jetski class ( #1061 )
2024-07-05 02:11:20 +02:00
Christian Semmler
09684b3c03
Implement/match BumpBouy class ( #1058 )
2024-07-04 23:28:23 +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
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
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
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
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