Commit graph

1265 commits

Author SHA1 Message Date
Christian Semmler
f51b1867ee
Use SDL3 for filesystem access (#36)
Some checks are pending
Build / Current msys2 mingw32 (push) Waiting to run
Build / Current msys2 mingw64 (push) Waiting to run
Build / Current MSVC (32-bit) (push) Waiting to run
Build / Current MSVC (64-bit) (push) Waiting to run
Format / C++ (push) Waiting to run
Naming / C++ (push) Waiting to run
* 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
aa3a66cd82
Merge remote-tracking branch 'isle/master' 2024-12-16 14:14:14 -07:00
Christian Semmler
cfa3769abf
Use macros for Seek modes (#1235)
* Use macros for `Seek` modes

* Fix syntax

* Use `OF_READ`

* Add names to skip.yml

* Revert "Add names to skip.yml"

This reverts commit 28b6f577dc0c47070064070f4655a15dab3bda25.
2024-12-16 22:13:52 +01:00
Christian Semmler
874714a40d
Fix repeating sounds in MxWavePresenter (#35)
Some checks are pending
Build / Current msys2 mingw32 (push) Waiting to run
Build / Current msys2 mingw64 (push) Waiting to run
Build / Current MSVC (32-bit) (push) Waiting to run
Build / Current MSVC (64-bit) (push) Waiting to run
Format / C++ (push) Waiting to run
Naming / C++ (push) Waiting to run
2024-12-16 00:29:41 +01:00
Christian Semmler
3b7e60bdc0
merge from isle/master 2024-12-15 11:59:19 -07:00
Christian Semmler
615c3a5047
Implement/match Act3Cop::Animate (#1233)
* Implement/match `Act3Cop::Animate`

* Fix
2024-12-15 19:48:47 +01:00
Christian Semmler
73b9e9a06f
Fix LegoAct2::Notify (#1234) 2024-12-15 19:45:17 +01:00
Christian Semmler
1b4142c6a9
Implement/match Write functions in LegoAnim class (#1232)
* Implement/match `LegoAnim::Write`

* Implement remaining Write functions

* Bump total function count
2024-12-15 18:15:10 +01:00
jonschz
2e7f2edbf1
Implement/match Act3Cop::ParseAction (#1230)
* Implement/match `Act3Cop::ParseAction`

* Fix formatting

* Address review comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-15 18:09:29 +01: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
Christian Semmler
07655651f5
Convert DirectSound logic to miniaudio (#34)
Some checks are pending
Build / Current msys2 mingw32 (push) Waiting to run
Build / Current msys2 mingw64 (push) Waiting to run
Build / Current MSVC (32-bit) (push) Waiting to run
Build / Current MSVC (64-bit) (push) Waiting to run
Format / C++ (push) Waiting to run
Naming / C++ (push) Waiting to run
* Convert DirectSound logic to miniaudio

* Update legocachsound.cpp
2024-12-14 20:36:13 -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
16730ef9c1
Implement/match Act3Ammo::FUN_10053db0 (#1227) 2024-12-14 21:36:14 +01:00
Christian Semmler
67b4553eaa
Implement/match LegoPathController::FUN_1004a380 (#1226) 2024-12-14 20:02:48 +01:00
jonschz
413bd5ae7b
Implement/match LegoJetski::HitActor (#1225)
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-14 19:46:51 +01: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
57aa5a9f8a
Refactor legoracers.h and legoracers.cpp (#1224)
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-14 07:03:19 -07: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
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
Christian Semmler
32392a8e55
Fix Act2Actor::FUN_10019700 (#1216) 2024-12-13 17:12:53 +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
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
Christian Semmler
ac19539d0f
Implement/match Act3Shark functions (#1208)
* Implement/match `Act3Shark` functions

* Naming
2024-12-11 21:13:34 +01:00
Christian Semmler
a2b2b5d734
Implement/match Act3Ammo::FUN_10053b40 (#1207)
* Implement/match Act3Ammo::FUN_10053b40

* Add Act3Ammo::Remove
2024-12-11 20:52:53 +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
jonschz
ada44a30e8
Fix name ambiguities (#1202)
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-09 06:57:45 -07: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
d22c4cd1f2
merge from isle/master
Some checks failed
Build / Current msys2 mingw32 (push) Has been cancelled
Build / Current msys2 mingw64 (push) Has been cancelled
Build / Current MSVC (32-bit) (push) Has been cancelled
Build / Current MSVC (64-bit) (push) Has been cancelled
Format / C++ (push) Has been cancelled
Naming / C++ (push) Has been cancelled
2024-12-07 10:17:25 -07:00
Christian Semmler
5be00e1799
Implement/match LegoPathCtrlEdge::FUN_10048c40 (#1195)
* Implement/match LegoPathCtrlEdge::FUN_10048c40

* Improve matches
2024-12-07 17:58:51 +01: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
6ca54824e6
Rename c_notificationDrag* enum (#1191)
* Improve functions with drag notifications

* Rename drag notifications

* A couple more addrs
2024-12-04 16:19:48 -07:00