Christian Semmler
b0a4d0e06b
Merge remote-tracking branch 'isle/master' into isle-merge3
2024-12-29 09:21:06 -07:00
Anonymous Maarten
05cfe4ee25
Even more SDL usage ( #49 )
...
* Texture pixel data is passed through as const data
* Use SDL_Surface/SDL_Palette in LegoImage
* Use SDL_Process to run subprocess
* Pass SDL_Window handle to SDL_ShowSimpleMessageBox
this makes sure the message dialog is shown as modal dialog and is on top
* Log errors during initialization
* Show SDL error during initialization
* Include <climits> for INT_MAX
* Replace _access with SDL_GetPathInfo
* Use SDL_RemovePath instead of DeleteFile
* Use SDL_RenamePath instead of MoveFile
* Use MxS32 in legoutils.cpp
* Update LEGO1/lego/legoomni/src/common/legoutils.cpp
* Naming
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-12-28 16:52:34 +01:00
Christian Semmler
8afa64048b
More BETA matches in MxDiskStreamController ( #1292 )
...
* More BETA matches in `MxDiskStreamController`
* Fix
2024-12-27 21:03:04 +01:00
Christian Semmler
d5fdea372b
Match LegoAnimationManager::FUN_10063b90 ( #1289 )
2024-12-27 19:11:25 +01:00
Christian Semmler
7d90befd05
Merge remote-tracking branch 'isle/master' into merge-isle-2
2024-12-27 10:48:38 -07:00
Anonymous Maarten
65adfe7d64
More use of SDL ( #47 )
...
* Use SDL_GetPerformance(Counter|Frequency) in MxStopWatch
* Fix flic.h for gcc Linux compiler
* cmake: remove left-over message
* Replace some more stricmp with SDL_strcasecmp
* Pass SDL_Window* to LEGO1.DLL, and pass window events through SDL event handler
* clang-format
* Use SDL_Timer for unknown input dragging events
* Fix naming
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-12-27 18:44:14 +01:00
Christian Semmler
f475d5e196
Match MxTransitionManager::Tickle ( #1286 )
2024-12-27 17:33:20 +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
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
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
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
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
18fc084a3f
Match LegoGameState::Load ( #1239 )
2024-12-18 01:10:42 +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
3b7e60bdc0
merge from isle/master
2024-12-15 11:59:19 -07:00
Christian Semmler
661c76c6e0
Implement/match Act3Shark::Animate ( #1231 )
...
* Implement/match `Act3Shark::Animate`
* Add BETA annotation
* Raise max functions
* Mark as FUNCTION
2024-12-15 17:18:25 +01:00
Christian Semmler
47c0e1a037
merge from isle/master
2024-12-15 08:24:45 -07: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
jonschz
97ff27af9e
Implement/match LegoPlantManager::FUN_10026410 ( #1223 )
...
* Implement/match `LegoPlantManager::FUN_10026410`
* Full match on LEGO1 and BETA10
* Improve `LegoBuildingManager::FUN_10030630`
---------
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-14 16:35:08 +01:00
jonschz
5a6415e0cf
Implement/match Act2Actor::FUN_10019b90 ( #1222 )
...
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-13 16:19:55 -07: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
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
1bfeebd004
Implement most of LegoJetski, refactor ( #1214 )
...
* Implement most of `LegoJetski`, refactor
* Fix
2024-12-12 21:17:25 +01:00
Christian Semmler
894034f9cf
Implement/match WriteDefaultTexture ( #1213 )
2024-12-12 19:02:14 +01:00
Christian Semmler
598d6dd10c
Refactor act 3 actors into act3actors.cpp ( #1210 )
2024-12-12 15:14:46 +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
d22c4cd1f2
merge from isle/master
2024-12-07 10:17:25 -07:00
Christian Semmler
94ce89cbaa
(Proposal) Introduce arithmetic operators to Vector2 ( #1193 )
2024-12-07 17:26:22 +01:00
Christian Semmler
4d8098a6c2
Implement LegoPathController::FUN_10048310 ( #1192 )
...
* WIP
* Rename
* Fix
* More WIP
* WIP
* WIP
* Fix
* Annotations
* Add more annotations, improve match
* Raise max functions
2024-12-06 20:50:40 +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
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
5ade193261
merge from isle/master
2024-11-29 15:27:01 -07:00
Christian Semmler
e8e457f01a
Implement/match LegoAct2::Enable ( #1178 )
2024-11-29 22:32:40 +01:00
jonschz
362551e279
Clean up unused annotations to reduce errors ( #1177 )
...
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-11-29 22:31:37 +01:00
Christian Semmler
7256eeb0ad
Replace hardcoded magic values with constants ( #1173 )
...
* Replace two hardcoded magic values with constants
* Replace constants
2024-11-28 00:05:40 +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
jonschz
106647e5af
Implement new functions in LegoAnimManager ( #1170 )
...
* Implement new functions in LegoAnimManager
* Address review comment
---------
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-11-27 18:13:37 +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
Christian Semmler
5f0575124f
Merge from isle/master
2024-11-24 08:01:05 -07:00