diff --git a/assets/hdmusic/Act3Music_HD.wav b/assets/hdmusic/Act3Music_HD.wav new file mode 100755 index 00000000..0480014b --- /dev/null +++ b/assets/hdmusic/Act3Music_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c3e3080ea1af626bc202d091ead654ef38ac8e27779c2908dca390f3106ced3 +size 14201934 diff --git a/assets/hdmusic/BeachBlvd_Music_HD.wav b/assets/hdmusic/BeachBlvd_Music_HD.wav new file mode 100755 index 00000000..9385be34 --- /dev/null +++ b/assets/hdmusic/BeachBlvd_Music_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1143a85549ca76ec8edccc164e8c54d803d7eb9a5bddd5c0387ce102b5397f2c +size 26919040 diff --git a/assets/hdmusic/Beach_Music_HD.wav b/assets/hdmusic/Beach_Music_HD.wav new file mode 100755 index 00000000..a198fec1 --- /dev/null +++ b/assets/hdmusic/Beach_Music_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e84733243a6d1d3044aab8032cf5d2b5769b1e3e3f0787c3b3bf18689c9f535 +size 22490016 diff --git a/assets/hdmusic/BrickHunt_HD.wav b/assets/hdmusic/BrickHunt_HD.wav new file mode 100755 index 00000000..4aaa8721 --- /dev/null +++ b/assets/hdmusic/BrickHunt_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cfbd44517186635ad270a971e9328f65890b94258c456aafda6658830147dce2 +size 33980544 diff --git a/assets/hdmusic/BrickstrChase_HD.wav b/assets/hdmusic/BrickstrChase_HD.wav new file mode 100755 index 00000000..f7222876 --- /dev/null +++ b/assets/hdmusic/BrickstrChase_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a158faeb0b651da3c0663cfa871851ad226dae02577be97d049bc4f84e4d9251 +size 14614784 diff --git a/assets/hdmusic/Cave_Music_HD.wav b/assets/hdmusic/Cave_Music_HD.wav new file mode 100755 index 00000000..b02ed9da --- /dev/null +++ b/assets/hdmusic/Cave_Music_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ae808110329a64ae06a96b08210bea8938f92ac0006b850a62b941541339359 +size 12214400 diff --git a/assets/hdmusic/CentralRoads_Music_HD.wav b/assets/hdmusic/CentralRoads_Music_HD.wav new file mode 100755 index 00000000..43c0e5ee --- /dev/null +++ b/assets/hdmusic/CentralRoads_Music_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39bd028528e1c9e2c9cea0b090c3c54f78b1889135a863c09080b90d3b13b3d2 +size 34113102 diff --git a/assets/hdmusic/Hospital_Music_HD.wav b/assets/hdmusic/Hospital_Music_HD.wav new file mode 100755 index 00000000..718d46c7 --- /dev/null +++ b/assets/hdmusic/Hospital_Music_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f253c05dcf77d5b7d5109f2e95ac5af85ee7a699a8689d8c276951617bbfd0e6 +size 40701386 diff --git a/assets/hdmusic/InfoCenter_3rd_Floor_Music_HD.wav b/assets/hdmusic/InfoCenter_3rd_Floor_Music_HD.wav new file mode 100755 index 00000000..0320b078 --- /dev/null +++ b/assets/hdmusic/InfoCenter_3rd_Floor_Music_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de7bf7bc1512aa6430b35e94c952c9b815b13ceded533f458ff9806a3915f948 +size 20201550 diff --git a/assets/hdmusic/InformationCenter_Music_HD.wav b/assets/hdmusic/InformationCenter_Music_HD.wav new file mode 100755 index 00000000..f896b392 --- /dev/null +++ b/assets/hdmusic/InformationCenter_Music_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c1ade0044cef699f526898cd44c34f426f3f057312f8d457ebc4b454096bdb0 +size 27256398 diff --git a/assets/hdmusic/JBMusic2_HD.wav b/assets/hdmusic/JBMusic2_HD.wav new file mode 100755 index 00000000..cdb64575 --- /dev/null +++ b/assets/hdmusic/JBMusic2_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8964ca0fb9698abab90398bfa62f04e52830b647af8b4014a129edd9fbfdae47 +size 28735604 diff --git a/assets/hdmusic/JBMusic3_HD.wav b/assets/hdmusic/JBMusic3_HD.wav new file mode 100755 index 00000000..cf22253b --- /dev/null +++ b/assets/hdmusic/JBMusic3_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98b02da1c3900a9e906b88692ecb2087f2091b4af7303565eaeff242cdf7c313 +size 21653144 diff --git a/assets/hdmusic/JBMusic4_HD.wav b/assets/hdmusic/JBMusic4_HD.wav new file mode 100755 index 00000000..acb73671 --- /dev/null +++ b/assets/hdmusic/JBMusic4_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:13c787e61647e22a1f4535d2491cbad5638c835142c075ebe6a39964ff769466 +size 24699000 diff --git a/assets/hdmusic/JBMusic5_HD.wav b/assets/hdmusic/JBMusic5_HD.wav new file mode 100755 index 00000000..69ca50f6 --- /dev/null +++ b/assets/hdmusic/JBMusic5_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b744d204a6bcb3c659f490fc9caa6a2bff96e6c91ab7ba8770508b208f0fffd +size 12828932 diff --git a/assets/hdmusic/JBMusic6_HD.wav b/assets/hdmusic/JBMusic6_HD.wav new file mode 100755 index 00000000..a5235fce --- /dev/null +++ b/assets/hdmusic/JBMusic6_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8779860718e07a6093c979d77ec1723dcef93762bc7759e960e70ee730b66fb3 +size 10059690 diff --git a/assets/hdmusic/Jail_Music_HD.wav b/assets/hdmusic/Jail_Music_HD.wav new file mode 100755 index 00000000..a9f323c3 --- /dev/null +++ b/assets/hdmusic/Jail_Music_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b39644468a172178738aa8854b514580f2b098a810dba127b2f5ae25534fe87e +size 12140672 diff --git a/assets/hdmusic/JetskiRace_Music_HD.wav b/assets/hdmusic/JetskiRace_Music_HD.wav new file mode 100755 index 00000000..eac69605 --- /dev/null +++ b/assets/hdmusic/JetskiRace_Music_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82ccad0d9877ccf915fc050d9b245785cf6bcb2406a6fcb9f6bdb9a75a3fc8c4 +size 11367404 diff --git a/assets/hdmusic/Park_Music_HD.wav b/assets/hdmusic/Park_Music_HD.wav new file mode 100755 index 00000000..83c4f4da --- /dev/null +++ b/assets/hdmusic/Park_Music_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b645676140604d078be9cb1dc7d5f0ee17700878ff50a5280b426616898be64 +size 16089216 diff --git a/assets/hdmusic/PoliceStation_Music_HD.wav b/assets/hdmusic/PoliceStation_Music_HD.wav new file mode 100755 index 00000000..6a4dd58c --- /dev/null +++ b/assets/hdmusic/PoliceStation_Music_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59c5ad73804bf813a852a5486e6ab13739a16542d06c736c28c164694ed424fd +size 10070544 diff --git a/assets/hdmusic/RaceTrackRoad_Music_HD.wav b/assets/hdmusic/RaceTrackRoad_Music_HD.wav new file mode 100755 index 00000000..813d33b3 --- /dev/null +++ b/assets/hdmusic/RaceTrackRoad_Music_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:002c09354642fd8757ea999d62badf0b346f5ab1d4fb6b6ce31e471b0a6bdb1a +size 33341560 diff --git a/assets/hdmusic/ResidentalArea_Music_HD.wav b/assets/hdmusic/ResidentalArea_Music_HD.wav new file mode 100755 index 00000000..923ee0dc --- /dev/null +++ b/assets/hdmusic/ResidentalArea_Music_HD.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f24f80d0979e1794d42000b55e95f0674be196af94c30abfa2a8d971e106a309 +size 15794304 diff --git a/assets/main.cpp b/assets/main.cpp index 88ec84cb..03b07d6d 100644 --- a/assets/main.cpp +++ b/assets/main.cpp @@ -7,11 +7,6 @@ #include #include -struct AssetView { - std::string_view name; - std::string_view extra; -}; - si::Interleaf::Version version = si::Interleaf::Version2_2; uint32_t bufferSize = 65536; uint32_t bufferCount = 8; @@ -23,6 +18,10 @@ si::MemoryBuffer mxHd; void CreateWidescreen() { std::string result = out + "/widescreen.si"; + struct AssetView { + std::string_view name; + std::string_view extra; + }; constexpr const AssetView widescreenBitmaps[] = { {"GaraDoor_Background_Wide", "World:current, StartWith:\\Lego\\Scripts\\Isle\\Isle;1160, RemoveWith:\\Lego\\Scripts\\Isle\\Isle;1161"} @@ -60,7 +59,101 @@ void CreateWidescreen() void CreateHDMusic() { std::string result = out + "/hdmusic.si"; - constexpr const AssetView wavAudio[] = {{"JBMusic1_HD", "Replace:\\Lego\\Scripts\\Isle\\Jukebox;55"}}; + struct AssetView { + std::string_view name; + std::string_view extra; + uint32_t duration; + uint32_t loops; + uint32_t flags; + }; + constexpr const AssetView wavAudio[] = { + {"BrickstrChase_HD", + "Replace:\\Lego\\Scripts\\Isle\\Jukebox;3", + 82850, + 10000, + MxDSAction::c_enabled | MxDSAction::c_bit3}, + {"BrickHunt_HD", + "Replace:\\Lego\\Scripts\\Isle\\Jukebox;4", + 192630, + 10000, + MxDSAction::c_enabled | MxDSAction::c_bit3}, + {"ResidentalArea_Music_HD", + "Replace:\\Lego\\Scripts\\Isle\\Jukebox;5", + 89540, + 10000, + MxDSAction::c_enabled | MxDSAction::c_bit3}, + {"BeachBlvd_Music_HD", + "Replace:\\Lego\\Scripts\\Isle\\Jukebox;6", + 152600, + 10000, + MxDSAction::c_enabled | MxDSAction::c_bit3}, + {"Cave_Music_HD", + "Replace:\\Lego\\Scripts\\Isle\\Jukebox;7", + 69240, + 10000, + MxDSAction::c_enabled | MxDSAction::c_bit3}, + {"CentralRoads_Music_HD", + "Replace:\\Lego\\Scripts\\Isle\\Jukebox;8", + 193380, + 10000, + MxDSAction::c_enabled | MxDSAction::c_bit3}, + {"Jail_Music_HD", + "Replace:\\Lego\\Scripts\\Isle\\Jukebox;9", + 68820, + 10000, + MxDSAction::c_enabled | MxDSAction::c_bit3}, + {"Hospital_Music_HD", + "Replace:\\Lego\\Scripts\\Isle\\Jukebox;10", + 211990, + 10000, + MxDSAction::c_enabled | MxDSAction::c_bit3}, + {"InformationCenter_Music_HD", + "Replace:\\Lego\\Scripts\\Isle\\Jukebox;11", + 154510, + 10000, + MxDSAction::c_enabled | MxDSAction::c_bit3}, + {"PoliceStation_Music_HD", + "Replace:\\Lego\\Scripts\\Isle\\Jukebox;12", + 57090, + 10000, + MxDSAction::c_enabled | MxDSAction::c_bit3}, + {"Park_Music_HD", + "Replace:\\Lego\\Scripts\\Isle\\Jukebox;13", + 91210, + 10000, + MxDSAction::c_enabled | MxDSAction::c_bit3}, + {"RaceTrackRoad_Music_HD", + "Replace:\\Lego\\Scripts\\Isle\\Jukebox;16", + 189000, + 10000, + MxDSAction::c_enabled | MxDSAction::c_bit3}, + {"Beach_Music_HD", + "Replace:\\Lego\\Scripts\\Isle\\Jukebox;17", + 127490, + 10000, + MxDSAction::c_enabled | MxDSAction::c_bit3}, + {"JetskiRace_Music_HD", + "Replace:\\Lego\\Scripts\\Isle\\Jukebox;19", + 64440, + 10000, + MxDSAction::c_enabled | MxDSAction::c_bit3}, + {"Act3Music_HD", + "Replace:\\Lego\\Scripts\\Isle\\Jukebox;20", + 80510, + 10000, + MxDSAction::c_enabled | MxDSAction::c_bit3}, + {"JBMusic1_HD", "Replace:\\Lego\\Scripts\\Isle\\Jukebox;55", 125850, 1, MxDSAction::c_enabled}, + {"JBMusic2_HD", "Replace:\\Lego\\Scripts\\Isle\\Jukebox;56", 162900, 1, MxDSAction::c_enabled}, + {"JBMusic3_HD", "Replace:\\Lego\\Scripts\\Isle\\Jukebox;57", 122750, 1, MxDSAction::c_enabled}, + {"JBMusic4_HD", "Replace:\\Lego\\Scripts\\Isle\\Jukebox;58", 140000, 1, MxDSAction::c_enabled}, + {"JBMusic5_HD", "Replace:\\Lego\\Scripts\\Isle\\Jukebox;59", 72720, 1, MxDSAction::c_enabled}, + {"JBMusic6_HD", "Replace:\\Lego\\Scripts\\Isle\\Jukebox;60", 57030, 1, MxDSAction::c_enabled}, + {"InfoCenter_3rd_Floor_Music_HD", + "Replace:\\Lego\\Scripts\\Isle\\Jukebox;61", + 114520, + 10000, + MxDSAction::c_enabled | MxDSAction::c_bit3} + }; si::Interleaf si; mxHd.seek(0, si::MemoryBuffer::SeekStart); @@ -70,20 +163,22 @@ void CreateHDMusic() for (const AssetView& asset : wavAudio) { si::Object* object = new si::Object; std::string file = std::string("hdmusic/") + std::string(asset.name) + ".wav"; + object->id_ = i; object->type_ = si::MxOb::Sound; - object->flags_ = MxDSAction::c_enabled; - object->duration_ = 125850; - object->loops_ = 1; + object->flags_ = asset.flags; + object->duration_ = asset.duration * asset.loops; + object->loops_ = asset.loops; object->extra_ = si::bytearray(asset.extra.data(), asset.extra.length()); object->presenter_ = "MxWavePresenter"; object->name_ = asset.name; object->filetype_ = si::MxOb::WAV; object->location_ = si::Vector3(0, 0, 0); - object->direction_ = si::Vector3(0, 0, 0); - object->up_ = si::Vector3(0, 1.0, 0); + object->direction_ = si::Vector3(0, 0, 1); + object->up_ = si::Vector3(0, 1, 0); object->volume_ = 79; object->ReplaceWithFile(file.c_str()); + si.AppendChild(object); depfile << result << ": " << (std::filesystem::current_path() / file).string() << std::endl; i++;