From 55d22080cfc54bf8dffa44d296fd825c8a10dd49 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Tue, 2 Apr 2024 01:26:25 +0800 Subject: [PATCH 01/44] refactor: remove useless requires --- xmake.lua | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/xmake.lua b/xmake.lua index 7dd703cea5..db7a503d1f 100644 --- a/xmake.lua +++ b/xmake.lua @@ -13,9 +13,7 @@ add_requires("magic_enum") add_requires("nlohmann_json") add_requires("rapidjson v1.1.0") add_requires("mimalloc") -add_requires("openssl 1.1.1-w") -add_requires("zlib", {system = false}) -add_requires("cpp-httplib", {configs={ssl=true, zlib=true}}) +add_requires("cpp-httplib") -- Dependencies from liteldev-repo. add_requires("pcg_cpp") @@ -72,7 +70,6 @@ target("LeviLamina") "WIN32_LEAN_AND_MEAN", "ENTT_PACKED_PAGE=128", "LL_EXPORT", - "CPPHTTPLIB_OPENSSL_SUPPORT", "_HAS_CXX23=1" -- work around to enable c++23 ) add_files( From 429155a50bab8008a0a409326b30688787dcd62d Mon Sep 17 00:00:00 2001 From: ShrBox Date: Tue, 2 Apr 2024 09:04:42 +0800 Subject: [PATCH 02/44] chore: update xmake.lua --- xmake.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xmake.lua b/xmake.lua index db7a503d1f..75af69e4ea 100644 --- a/xmake.lua +++ b/xmake.lua @@ -13,7 +13,7 @@ add_requires("magic_enum") add_requires("nlohmann_json") add_requires("rapidjson v1.1.0") add_requires("mimalloc") -add_requires("cpp-httplib") +add_requires("cpp-httplib", {configs={ssl=true}}) -- Dependencies from liteldev-repo. add_requires("pcg_cpp") From 49cd44684b7876428bbe0612acffb70c8559ad07 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Wed, 3 Apr 2024 00:07:31 +0800 Subject: [PATCH 03/44] refactor: refactoring HookRegistrar --- src/ll/api/memory/Hook.h | 57 ++++++------------------------------- src/mc/deps/core/mce/Blob.h | 2 ++ 2 files changed, 10 insertions(+), 49 deletions(-) diff --git a/src/ll/api/memory/Hook.h b/src/ll/api/memory/Hook.h index f31368d85b..66f644fff6 100644 --- a/src/ll/api/memory/Hook.h +++ b/src/ll/api/memory/Hook.h @@ -16,37 +16,6 @@ #include "ll/api/reflection/TypeName.h" #include "ll/api/thread/GlobalThreadPauser.h" -#ifdef LL_HOOK_DEBUG -#include "ll/api/Logger.h" -#define LL_HOOK_DEBUG_OUTPUT(IDENTIFIER) \ - static inline int debugger() { \ - try { \ - static FuncPtr t = ll::memory::resolveIdentifier<_OriginFuncType>(IDENTIFIER); \ - if (t == nullptr) { \ - fmt::print("\x1b[91mCan't resolve: [" #IDENTIFIER "]\x1b[0m\n"); \ - } else { \ - auto symbols = ll::memory::lookupSymbol(t); \ - if (symbols.size() > 1) { \ - fmt::print( \ - "\x1b[93m[" #IDENTIFIER "] has {} matches, probability cause bugs.\x1b[0m\n", \ - symbols.size() \ - ); \ - } \ - fmt::print("\x1b[96m v resolve [" #IDENTIFIER "] to:\x1b[0m\n"); \ - for (auto& str : symbols) { \ - fmt::print(" {} {}\n", (&str == &symbols.back()) ? '-' : '|', str); \ - } \ - } \ - } catch (...) { \ - fmt::print("\x1b[91m!!! Exception in resolve: [" #IDENTIFIER "]\x1b[0m\n"); \ - } \ - return 0; \ - }; \ - static inline int debugging = debugger() -#else -#define LL_HOOK_DEBUG_OUTPUT(...) -#endif - namespace ll::memory { template @@ -132,35 +101,23 @@ consteval bool virtualDetector() noexcept { template class HookRegistrar { public: - static inline std::atomic_uint count{}; - static void hook() { thread::GlobalThreadPauser pauser; - (Ts::hook(false), ...); + (((++Ts::_AutoHookCount == 1) ? Ts::hook(false) : 0), ...); } static void unhook() { thread::GlobalThreadPauser pauser; - (Ts::unhook(false), ...); + (((--Ts::_AutoHookCount == 0) ? Ts::unhook(false) : 0), ...); } - - HookRegistrar() noexcept { - if (++count == 1) { - hook(); - } - } - ~HookRegistrar() { - if (--count == 0) { - unhook(); - } - } - HookRegistrar(HookRegistrar const&) noexcept { ++count; } + HookRegistrar() noexcept { hook(); } + ~HookRegistrar() noexcept { unhook(); } + HookRegistrar(HookRegistrar const&) noexcept { ((++Ts::_AutoHookCount), ...); } HookRegistrar& operator=(HookRegistrar const& other) noexcept { if (this != std::addressof(other)) { - ++count; + ((++Ts::_AutoHookCount), ...); } return *this; } - HookRegistrar(HookRegistrar&&) noexcept = default; HookRegistrar& operator=(HookRegistrar&&) noexcept = default; }; @@ -199,6 +156,8 @@ struct __declspec(empty_bases) Hook {}; inline static _FuncPtr _HookTarget{}; \ inline static _OriginFuncType _OriginalFunc{}; \ \ + inline static std::atomic_uint _AutoHookCount{}; \ + \ LL_HOOK_DEBUG_OUTPUT(IDENTIFIER); \ \ template \ diff --git a/src/mc/deps/core/mce/Blob.h b/src/mc/deps/core/mce/Blob.h index cf087ddf3a..e64eb942f4 100644 --- a/src/mc/deps/core/mce/Blob.h +++ b/src/mc/deps/core/mce/Blob.h @@ -21,6 +21,8 @@ class Blob { [[nodiscard]] constexpr Deleter() : mFn(Blob::defaultDeleter) {} + [[nodiscard]] constexpr Deleter(delete_function fn) : mFn(fn) {} + void operator()(pointer x) const { mFn(x); } }; From d9b8add94dbe9e378fd0920e7d80db708fba7a35 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Wed, 3 Apr 2024 00:17:25 +0800 Subject: [PATCH 04/44] fix: fix debug build --- src/ll/api/memory/Hook.h | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/ll/api/memory/Hook.h b/src/ll/api/memory/Hook.h index 66f644fff6..49c48bf191 100644 --- a/src/ll/api/memory/Hook.h +++ b/src/ll/api/memory/Hook.h @@ -1,7 +1,5 @@ #pragma once -// #define LL_HOOK_DEBUG - #include #include #include @@ -158,8 +156,6 @@ struct __declspec(empty_bases) Hook {}; \ inline static std::atomic_uint _AutoHookCount{}; \ \ - LL_HOOK_DEBUG_OUTPUT(IDENTIFIER); \ - \ template \ static consteval void detector() { \ if constexpr (requires { ::ll::memory::virtualDetector(); }) { \ From cddebde39ff48d0114b7567f6651b7bec2bba645 Mon Sep 17 00:00:00 2001 From: Lovelylavender4 Date: Wed, 3 Apr 2024 18:39:20 +0800 Subject: [PATCH 05/44] style: a more standard way of naming member variables has been adopted. --- src/mc/common/wrapper/GenerateMessageResult.h | 4 ++-- src/mc/world/level/BlockSource.h | 3 ++- .../level/levelgen/v1/ChunkLocalNoiseCache.h | 20 +++++++++---------- .../world/level/levelgen/v1/NetherGenerator.h | 16 +++++++-------- .../level/levelgen/v1/OverworldGenerator.h | 8 ++++---- .../level/levelgen/v1/OverworldGenerator2d.h | 20 +++++++++---------- .../v1/OverworldGeneratorMultinoise.h | 2 +- .../world/level/levelgen/v1/TheEndGenerator.h | 3 ++- 8 files changed, 39 insertions(+), 37 deletions(-) diff --git a/src/mc/common/wrapper/GenerateMessageResult.h b/src/mc/common/wrapper/GenerateMessageResult.h index 26f3acc756..57b0c5d4f1 100644 --- a/src/mc/common/wrapper/GenerateMessageResult.h +++ b/src/mc/common/wrapper/GenerateMessageResult.h @@ -5,8 +5,8 @@ struct GenerateMessageResult { public: - std::string string; - bool unk; + std::string mString; // this+0x0 + bool mUnknow; // this+0x20 // prevent constructor by default GenerateMessageResult& operator=(GenerateMessageResult const&); diff --git a/src/mc/world/level/BlockSource.h b/src/mc/world/level/BlockSource.h index b5f08fa842..b316982225 100644 --- a/src/mc/world/level/BlockSource.h +++ b/src/mc/world/level/BlockSource.h @@ -52,8 +52,9 @@ class BlockSource : public IBlockSource, public std::enable_shared_from_this toolOwner = std::nullopt ); - char unk[248]; + char filler[248]; +public: // prevent constructor by default BlockSource& operator=(BlockSource const&); BlockSource(BlockSource const&); diff --git a/src/mc/world/level/levelgen/v1/ChunkLocalNoiseCache.h b/src/mc/world/level/levelgen/v1/ChunkLocalNoiseCache.h index fab537ef97..60cdaf0dc3 100644 --- a/src/mc/world/level/levelgen/v1/ChunkLocalNoiseCache.h +++ b/src/mc/world/level/levelgen/v1/ChunkLocalNoiseCache.h @@ -14,16 +14,16 @@ class ChunkLocalNoiseCache { // ChunkLocalNoiseCache inner types define struct CacheEntry { - float shiftedX; - float shiftedZ; - float continentalness; - float weirdness; - float erosion; - float offset; - float factor; - float jag; - float temperature; - float humidity; + float mShiftedX; + float mShiftedZ; + float mContinentalness; + float mWeirdness; + float mErosion; + float mOffset; + float mFactor; + float mJag; + float mTemperature; + float mHumidity; }; DividedPos2d<4> const mFirstQuartPos; // this+0x0 diff --git a/src/mc/world/level/levelgen/v1/NetherGenerator.h b/src/mc/world/level/levelgen/v1/NetherGenerator.h index bcf35a3a46..e8830387bd 100644 --- a/src/mc/world/level/levelgen/v1/NetherGenerator.h +++ b/src/mc/world/level/levelgen/v1/NetherGenerator.h @@ -24,16 +24,16 @@ class NetherGenerator : public ::WorldGenerator { ThreadData(); }; - std::unique_ptr lperlinNoise1; // this+0x188 - std::unique_ptr lperlinNoise2; - std::unique_ptr perlinNoise1; - std::unique_ptr perlinNoise2; - std::unique_ptr scaleNoise; - std::unique_ptr depthNoise; - std::unique_ptr surfaceNoise; + std::unique_ptr mLperlinNoise1; // this+0x188 + std::unique_ptr mLperlinNoise2; + std::unique_ptr mPerlinNoise1; + std::unique_ptr mPerlinNoise2; + std::unique_ptr mScaleNoise; + std::unique_ptr mDepthNoise; + std::unique_ptr mSurfaceNoise; std::unique_ptr mMaterialAdjNoise; // Bedrock::Threading::InstancedThreadLocal - char generatorHelpersPool[168]; + char mGeneratorHelpersPool[168]; std::unique_ptr mBiomeSource; // this+0x270 public: diff --git a/src/mc/world/level/levelgen/v1/OverworldGenerator.h b/src/mc/world/level/levelgen/v1/OverworldGenerator.h index a69ea8ec62..13c43b67bb 100644 --- a/src/mc/world/level/levelgen/v1/OverworldGenerator.h +++ b/src/mc/world/level/levelgen/v1/OverworldGenerator.h @@ -28,10 +28,10 @@ class OverworldGenerator : public ::WorldGenerator { float mBiomeBlendKernel[9]; // this+0x188 bool mIsLegacyWorld; // Bedrock::Threading::InstancedThreadLocal generatorHelpersPool; - char generatorHelpersPool[168]; - MonsterRoomFeature monsterRoomFeature; - CanyonFeature canyonFeature; - UnderwaterCanyonFeature underwaterCanyonFeature; // this+0x288 + char mGeneratorHelpersPool[168]; + MonsterRoomFeature mMonsterRoomFeature; + CanyonFeature mCanyonFeature; + UnderwaterCanyonFeature mUnderwaterCanyonFeature; // this+0x288 public: // prevent constructor by default diff --git a/src/mc/world/level/levelgen/v1/OverworldGenerator2d.h b/src/mc/world/level/levelgen/v1/OverworldGenerator2d.h index 3e191775e2..fbc93f71a4 100644 --- a/src/mc/world/level/levelgen/v1/OverworldGenerator2d.h +++ b/src/mc/world/level/levelgen/v1/OverworldGenerator2d.h @@ -13,16 +13,16 @@ class Biome; class OverworldGenerator2d : public ::OverworldGenerator { public: - std::unique_ptr minLimitPerlinNoise; // this+0x170 - std::unique_ptr maxLimitPerlinNoise; // this+0x178 - std::unique_ptr mainPerlinNoise; // this+0x180 - std::unique_ptr surfaceNoise; // this+0x188 - std::unique_ptr scaleNoise; // this+0x190 - std::unique_ptr depthNoise; // this+0x198 - std::unique_ptr forestNoise; // this+0x1A0 - std::unique_ptr mMaterialAdjNoise; // this+0x1A8 - BeardKernel* mBeardKernel; // this+0x1B0 - std::unique_ptr mBiomeSource; // this+0xD9B0 + std::unique_ptr mMinLimitPerlinNoise; // this+0x170 + std::unique_ptr mMaxLimitPerlinNoise; // this+0x178 + std::unique_ptr mMainPerlinNoise; // this+0x180 + std::unique_ptr mSurfaceNoise; // this+0x188 + std::unique_ptr mScaleNoise; // this+0x190 + std::unique_ptr mDepthNoise; // this+0x198 + std::unique_ptr mForestNoise; // this+0x1A0 + std::unique_ptr mMaterialAdjNoise; // this+0x1A8 + BeardKernel* mBeardKernel; // this+0x1B0 + std::unique_ptr mBiomeSource; // this+0xD9B0 // prevent constructor by default OverworldGenerator2d& operator=(OverworldGenerator2d const&); diff --git a/src/mc/world/level/levelgen/v1/OverworldGeneratorMultinoise.h b/src/mc/world/level/levelgen/v1/OverworldGeneratorMultinoise.h index 8c431cc5ec..33a5f35319 100644 --- a/src/mc/world/level/levelgen/v1/OverworldGeneratorMultinoise.h +++ b/src/mc/world/level/levelgen/v1/OverworldGeneratorMultinoise.h @@ -41,7 +41,7 @@ class OverworldGeneratorMultinoise : public ::OverworldGenerator { // NOLINTEND }; - char unk[2800]; + char mUnknow[2800]; public: // prevent constructor by default diff --git a/src/mc/world/level/levelgen/v1/TheEndGenerator.h b/src/mc/world/level/levelgen/v1/TheEndGenerator.h index 05202f36c0..794d053cd1 100644 --- a/src/mc/world/level/levelgen/v1/TheEndGenerator.h +++ b/src/mc/world/level/levelgen/v1/TheEndGenerator.h @@ -1,6 +1,7 @@ #pragma once #include "mc/_HeaderOutputPredefine.h" +#include "mc/world/level/biome/source/FixedBiomeSource.h" #include "mc/world/level/biome/surface/PerlinNoise.h" #include "mc/world/level/biome/surface/PerlinSimplexNoise.h" @@ -17,7 +18,7 @@ class TheEndGenerator : public ::WorldGenerator { std::unique_ptr mIslandNoise; std::unique_ptr mMaterialAdjNoise; // Bedrock::Threading::InstancedThreadLocal - char generatorHelpersPool[168]; + char mGeneratorHelpersPool[168]; std::unique_ptr mBiomeSource; // this+0x258 // prevent constructor by default From 16659c580e973f81025368e51341ca60fce3ac82 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Wed, 3 Apr 2024 22:57:01 +0800 Subject: [PATCH 06/44] feat: add is_in_types --- .clang-tidy | 1 - src/ll/api/base/Concepts.h | 12 ++++++++++++ src/mc/util/molang/MolangScriptArg.h | 22 +++++++++++++++++----- src/mc/util/molang/MolangScriptArgPOD.h | 19 +++++++++++++------ src/mc/world/ActorUniqueID.h | 11 ++--------- 5 files changed, 44 insertions(+), 21 deletions(-) diff --git a/.clang-tidy b/.clang-tidy index 7e062a389a..e9b22e2f83 100644 --- a/.clang-tidy +++ b/.clang-tidy @@ -65,7 +65,6 @@ cppcoreguidelines-narrowing-conversions, cppcoreguidelines-pro-type-member-init, cppcoreguidelines-slicing, google-default-arguments, -google-explicit-constructor, google-runtime-operator, hicpp-exception-baseclass, hicpp-multiway-paths-covered, diff --git a/src/ll/api/base/Concepts.h b/src/ll/api/base/Concepts.h index c75cb2a38a..967bb2e6dc 100644 --- a/src/ll/api/base/Concepts.h +++ b/src/ll/api/base/Concepts.h @@ -11,6 +11,18 @@ namespace ll::concepts { +template +struct is_in_types; + +template class U, class... Ts> +struct is_in_types> : std::bool_constant<(std::is_same_v || ...)> {}; + +template +static constexpr bool is_in_types_v = is_in_types::value; + +template +concept IsInTypes = is_in_types_v; + template static constexpr bool is_one_of_v = (std::is_same_v || ...); diff --git a/src/mc/util/molang/MolangScriptArg.h b/src/mc/util/molang/MolangScriptArg.h index 06abf19a3c..1cb983a431 100644 --- a/src/mc/util/molang/MolangScriptArg.h +++ b/src/mc/util/molang/MolangScriptArg.h @@ -1,5 +1,7 @@ #pragma once +#include "ll/api/base/Concepts.h" + #include "mc/_HeaderOutputPredefine.h" #include "mc/deps/minecraft_renderer/renderer/MaterialVariants.h" #include "mc/util/molang/MolangActorArrayPtr.h" @@ -45,13 +47,23 @@ struct MolangScriptArg { MolangScriptArgPOD mPOD; MolangScriptArgData mData; - template - MolangScriptArg(T const&) = delete; + MolangScriptArg(MolangLoopBreak loopBreak) : mType(MolangScriptArgType::MolangLoopBreak), mPOD(loopBreak) {} + MolangScriptArg(MolangLoopContinue loopContinue) + : mType(MolangScriptArgType::MolangLoopContinue), + mPOD(loopContinue) {} + MolangScriptArg(Actor const& actor) : mType(MolangScriptArgType::MolangActorPtr), mPOD(std::addressof(actor)) {} + MolangScriptArg(ActorUniqueID actorId) : mType(MolangScriptArgType::MolangActorIdPtr), mPOD(actorId) {} + MolangScriptArg(ItemStackBase const& item) + : mType(MolangScriptArgType::MolangItemStackBasePtr), + mPOD(std::addressof(item)) {} - MCTAPI MolangScriptArg(MolangMemberArray const&); + template T> + MolangScriptArg(T const& val) : mType(MolangScriptArgType::Variant), + mData(val) {} - template <> - MolangScriptArg(bool const& value) : MolangScriptArg(static_cast(value)) {} + MCTAPI MolangScriptArg(MolangMemberArray const&); + MCTAPI MolangScriptArg(MolangActorIdArrayPtr const&); + MCTAPI MolangScriptArg(MolangMatrix const&); public: // NOLINTBEGIN diff --git a/src/mc/util/molang/MolangScriptArgPOD.h b/src/mc/util/molang/MolangScriptArgPOD.h index ae9214123d..2ca19746a1 100644 --- a/src/mc/util/molang/MolangScriptArgPOD.h +++ b/src/mc/util/molang/MolangScriptArgPOD.h @@ -3,8 +3,9 @@ #include "mc/_HeaderOutputPredefine.h" #include "mc/util/molang/MolangLoopBreak.h" #include "mc/util/molang/MolangLoopContinue.h" +#include "mc/world/ActorUniqueID.h" #include "mc/world/actor/Actor.h" - +#include "mc/world/item/ItemStackBase.h" union MolangScriptArgPOD { float mFloat; @@ -12,11 +13,17 @@ union MolangScriptArgPOD { MolangLoopBreak mLoopBreak; MolangLoopContinue mLoopContinue; Actor* mActorPtr; - int64 mActorId; + ActorUniqueID mActorId; ItemStackBase* mItemStackBasePtr; uint64 _mData; - MolangScriptArgPOD() : _mData(0){}; - bool operator==(MolangScriptArgPOD const& rhs) const { return _mData == rhs._mData; }; - bool operator!=(MolangScriptArgPOD const& rhs) const { return !(*this == rhs); }; - void clear() { _mData = 0; }; + constexpr MolangScriptArgPOD() : _mData(0){}; + constexpr MolangScriptArgPOD(float val) : mFloat(val){}; + constexpr MolangScriptArgPOD(uint64 val) : mHashType64(val){}; + constexpr MolangScriptArgPOD(MolangLoopBreak val) : mLoopBreak(val){}; + constexpr MolangScriptArgPOD(MolangLoopContinue val) : mLoopContinue(val){}; + constexpr MolangScriptArgPOD(Actor const* val) : mActorPtr(const_cast(val)){}; + constexpr MolangScriptArgPOD(ActorUniqueID val) : mActorId(val){}; + constexpr MolangScriptArgPOD(ItemStackBase const* val) : mItemStackBasePtr(const_cast(val)){}; + constexpr bool operator==(MolangScriptArgPOD const& rhs) const { return _mData == rhs._mData; }; + void clear() { _mData = 0; }; }; diff --git a/src/mc/world/ActorUniqueID.h b/src/mc/world/ActorUniqueID.h index 017e94ac51..dca4578762 100644 --- a/src/mc/world/ActorUniqueID.h +++ b/src/mc/world/ActorUniqueID.h @@ -9,14 +9,7 @@ namespace mce { class UUID; } struct ActorUniqueID { public: - int64 id; - ActorUniqueID() : id(INVALID_ID) {} - - explicit ActorUniqueID(int64 id) : id(id) {} - - [[nodiscard]] constexpr int64 get() const { return id; } - - [[nodiscard]] constexpr operator int64() const { return id; } // NOLINT + int64 id{}; public: // NOLINTBEGIN @@ -36,6 +29,6 @@ namespace std { template <> class hash { public: - size_t operator()(ActorUniqueID const& id) const { return std::hash()(id.id); } + size_t operator()(ActorUniqueID const& id) const { return id.getHash(); } }; } // namespace std From aac1d7ccbc4c4cbdcd91bd067fa53a67b7dfa2f9 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Thu, 4 Apr 2024 04:58:11 +0800 Subject: [PATCH 07/44] fix: fix LoopbackPacketSender member --- .../systems/common/ClientOrServerNetworkSystemRef.h | 10 ++++++---- src/mc/server/LoopbackPacketSender.h | 9 +++++---- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/src/mc/entity/systems/common/ClientOrServerNetworkSystemRef.h b/src/mc/entity/systems/common/ClientOrServerNetworkSystemRef.h index 608e840324..d0655abc4e 100644 --- a/src/mc/entity/systems/common/ClientOrServerNetworkSystemRef.h +++ b/src/mc/entity/systems/common/ClientOrServerNetworkSystemRef.h @@ -1,13 +1,15 @@ #pragma once #include "mc/_HeaderOutputPredefine.h" +#include "mc/entity/systems/common/ClientNetworkSystem.h" +#include "mc/entity/systems/common/ServerNetworkSystem.h" class ClientOrServerNetworkSystemRef { public: - // prevent constructor by default - ClientOrServerNetworkSystemRef& operator=(ClientOrServerNetworkSystemRef const&); - ClientOrServerNetworkSystemRef(ClientOrServerNetworkSystemRef const&); - ClientOrServerNetworkSystemRef(); + using ServerRefT = std::reference_wrapper; + using ClientRefT = std::reference_wrapper; + + std::variant ref; public: // NOLINTBEGIN diff --git a/src/mc/server/LoopbackPacketSender.h b/src/mc/server/LoopbackPacketSender.h index 1b9d01eb83..479e86fb78 100644 --- a/src/mc/server/LoopbackPacketSender.h +++ b/src/mc/server/LoopbackPacketSender.h @@ -2,6 +2,7 @@ #include "mc/_HeaderOutputPredefine.h" #include "mc/entity/gamerefs_entity/EntityRefTraits.h" +#include "mc/entity/systems/common/ClientOrServerNetworkSystemRef.h" // auto generated inclusion list #include "mc/common/wrapper/OwnerPtr.h" @@ -12,10 +13,10 @@ class NetworkSystem; class NetEventCallback; class LoopbackPacketSender : public ::PacketSender { public: - NetworkSystem* mNetwork; // this+0x20 - std::vector mLoopbackCallbacks; // this+0x28 - const std::vector>* mUserList; // this+0x40 - std::vector mTempUserIds; // this+0x48 + ClientOrServerNetworkSystemRef mNetwork; // this+0x20 + std::vector mLoopbackCallbacks; // this+0x30 + std::vector> const* mUserList; // this+0x48 + std::vector mTempUserIds; // this+0x50 // prevent constructor by default LoopbackPacketSender& operator=(LoopbackPacketSender const&); From ca1b2369181fcc7379635aeb44d66c6775d073eb Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Thu, 4 Apr 2024 14:22:38 +0800 Subject: [PATCH 08/44] ficx: remove useless explicit --- src/ll/api/memory/Memory.h | 4 ++-- src/mc/deps/raknet/AddressOrGUID.h | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/ll/api/memory/Memory.h b/src/ll/api/memory/Memory.h index c5fbc1aa0e..4bf16aac08 100644 --- a/src/ll/api/memory/Memory.h +++ b/src/ll/api/memory/Memory.h @@ -90,8 +90,8 @@ inline void modify(T& ref, std::function&)> const& f } template -constexpr auto virtualCall(void const* self, ptrdiff_t vIndex, Args... args) -> RTN { - return (*(RTN(**)(void const*, Args...))(*(uintptr_t**)self + vIndex))(self, std::forward(args)...); +constexpr auto virtualCall(void const* self, ptrdiff_t vIndex, auto&&... args) -> RTN { + return (*(RTN(**)(void const*, Args...))(*(uintptr_t**)self + vIndex))(self, std::forward(args)...); } template diff --git a/src/mc/deps/raknet/AddressOrGUID.h b/src/mc/deps/raknet/AddressOrGUID.h index 5fd715b3f6..bdd099cf13 100644 --- a/src/mc/deps/raknet/AddressOrGUID.h +++ b/src/mc/deps/raknet/AddressOrGUID.h @@ -23,10 +23,10 @@ struct AddressOrGUID { MCAPI AddressOrGUID(struct RakNet::AddressOrGUID const&); // symbol: ??0AddressOrGUID@RakNet@@QEAA@AEBURakNetGUID@1@@Z - MCAPI explicit AddressOrGUID(struct RakNet::RakNetGUID const&); + MCAPI AddressOrGUID(struct RakNet::RakNetGUID const&); // symbol: ??0AddressOrGUID@RakNet@@QEAA@AEBUSystemAddress@1@@Z - MCAPI explicit AddressOrGUID(struct RakNet::SystemAddress const&); + MCAPI AddressOrGUID(struct RakNet::SystemAddress const&); // symbol: ?IsUndefined@AddressOrGUID@RakNet@@QEBA_NXZ MCAPI bool IsUndefined() const; From 83740e744a692a707c9b51186e9073bd690dd60a Mon Sep 17 00:00:00 2001 From: Dofes <91889957+Dofes@users.noreply.github.com> Date: Thu, 4 Apr 2024 20:41:30 +0800 Subject: [PATCH 09/44] fix: fix the member order of PlayerAuthInputPacket --- src/mc/network/packet/PlayerAuthInputPacket.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/mc/network/packet/PlayerAuthInputPacket.h b/src/mc/network/packet/PlayerAuthInputPacket.h index e073066986..084319c7b8 100644 --- a/src/mc/network/packet/PlayerAuthInputPacket.h +++ b/src/mc/network/packet/PlayerAuthInputPacket.h @@ -67,6 +67,8 @@ class PlayerAuthInputPacket : public ::Packet { StopFlying = 0x2B, ReceivedServerData = 0x2C, InClientPredictedInVehicle = 0x2D, + PaddlingLeft = 0x2E, + PaddlingRight = 0x2F, }; public: @@ -75,6 +77,7 @@ class PlayerAuthInputPacket : public ::Packet { float mYHeadRot; Vec3 mPosDelta; Vec2 mAnalogMoveVector; + Vec2 mVehicleRotation; Vec2 mMove; Vec3 mGazeDir; std::bitset<39> mInputData; @@ -86,7 +89,6 @@ class PlayerAuthInputPacket : public ::Packet { std::unique_ptr mItemStackRequest; PlayerBlockActions mPlayerBlockActions; ActorUniqueID mPredictedVehicle; - Vec2 mVehicleRotation; // prevent constructor by default PlayerAuthInputPacket& operator=(PlayerAuthInputPacket const&); From ed1a6b6ef1c09e187102d4cbf4b615b4a1a68230 Mon Sep 17 00:00:00 2001 From: Dofes <91889957+Dofes@users.noreply.github.com> Date: Thu, 4 Apr 2024 20:43:10 +0800 Subject: [PATCH 10/44] feat: add ItemLockMode struct --- src/mc/world/item/components/ItemLockMode.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/mc/world/item/components/ItemLockMode.h b/src/mc/world/item/components/ItemLockMode.h index fe3a0d0a97..16fee4a022 100644 --- a/src/mc/world/item/components/ItemLockMode.h +++ b/src/mc/world/item/components/ItemLockMode.h @@ -2,4 +2,8 @@ #include "mc/_HeaderOutputPredefine.h" -enum class ItemLockMode {}; +enum class ItemLockMode : uchar { + None = 0x0, + LockInSlot = 0x1, + LockInInventory = 0x2, +}; From 596cd6527d9648a621c257e6b627bef59e21b898 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Fri, 5 Apr 2024 01:31:20 +0800 Subject: [PATCH 11/44] feat: add peers structure --- .../deps/core/common/bedrock/IAsyncResult.h | 8 +------ src/mc/deps/core/threading/TaskResult.h | 6 +++++ .../deps/core/threading/TaskStartInfoBase.h | 12 ++++++++++ src/mc/deps/core/threading/TaskStartInfoEx.h | 9 ++++--- src/mc/external/spsc_queue/SPSCQueue.h | 5 ++++ src/mc/network/BatchedNetworkPeer.h | 19 +++++++++++++++ src/mc/network/CompressedNetworkPeer.h | 6 +++++ src/mc/network/NetworkConnection.h | 24 +++++++++++++++++++ src/mc/network/RakNetConnector.h | 8 +++++++ src/mc/network/WebRTCNetworkPeer.h | 11 +++++++++ 10 files changed, 96 insertions(+), 12 deletions(-) diff --git a/src/mc/deps/core/common/bedrock/IAsyncResult.h b/src/mc/deps/core/common/bedrock/IAsyncResult.h index 243a6ac54d..b0482a18ec 100644 --- a/src/mc/deps/core/common/bedrock/IAsyncResult.h +++ b/src/mc/deps/core/common/bedrock/IAsyncResult.h @@ -5,12 +5,6 @@ namespace Bedrock::Threading { template -class IAsyncResult { -public: - // prevent constructor by default - IAsyncResult& operator=(IAsyncResult const&); - IAsyncResult(IAsyncResult const&); - IAsyncResult(); -}; +class IAsyncResult : public std::enable_shared_from_this> {}; }; // namespace Bedrock::Threading diff --git a/src/mc/deps/core/threading/TaskResult.h b/src/mc/deps/core/threading/TaskResult.h index 98a103333f..dae2cdff83 100644 --- a/src/mc/deps/core/threading/TaskResult.h +++ b/src/mc/deps/core/threading/TaskResult.h @@ -1,6 +1,7 @@ #pragma once #include "mc/_HeaderOutputPredefine.h" +#include "mc/deps/core/common/bedrock/IAsyncResult.h" class TaskResult { public: @@ -8,6 +9,11 @@ class TaskResult { TaskResult& operator=(TaskResult const&); TaskResult(TaskResult const&); + bool mIsDone; // this+0x0 + std::chrono::steady_clock::time_point mRunAtTime; // this+0x8 + std::shared_ptr> mWaitOperation; // this+0x10 + bool mLinkWaitOperation; // this+0x20 + public: // NOLINTBEGIN // symbol: ??0TaskResult@@QEAA@XZ diff --git a/src/mc/deps/core/threading/TaskStartInfoBase.h b/src/mc/deps/core/threading/TaskStartInfoBase.h index 43e7b7bc32..6cf7e6d1e2 100644 --- a/src/mc/deps/core/threading/TaskStartInfoBase.h +++ b/src/mc/deps/core/threading/TaskStartInfoBase.h @@ -4,11 +4,23 @@ struct TaskStartInfoBase { public: + enum class TaskOptions : int { + Default = 0x0, + TaskProfiled = 0x1, + LinkPredecessor = 0x2, + }; + // prevent constructor by default TaskStartInfoBase& operator=(TaskStartInfoBase const&); TaskStartInfoBase(TaskStartInfoBase const&); TaskStartInfoBase(); + std::string_view name; // this+0x0 + std::thread::id affinity; // this+0x10 + unsigned int priority; // this+0x14 + int priorityBackDown; // this+0x18 + TaskOptions options; // this+0x1C + std::chrono::steady_clock::time_point startAtTime; // this+0x20 public: // NOLINTBEGIN // symbol: ?NoAffinity@TaskStartInfoBase@@2Vid@thread@std@@B diff --git a/src/mc/deps/core/threading/TaskStartInfoEx.h b/src/mc/deps/core/threading/TaskStartInfoEx.h index 662fc272c3..a7c22ba4c9 100644 --- a/src/mc/deps/core/threading/TaskStartInfoEx.h +++ b/src/mc/deps/core/threading/TaskStartInfoEx.h @@ -1,12 +1,11 @@ #pragma once #include "mc/_HeaderOutputPredefine.h" +#include "mc/deps/core/common/bedrock/IAsyncResult.h" +#include "mc/deps/core/threading/TaskStartInfoBase.h" template -struct TaskStartInfoEx { +struct TaskStartInfoEx : public TaskStartInfoBase { public: - // prevent constructor by default - TaskStartInfoEx& operator=(TaskStartInfoEx const&); - TaskStartInfoEx(TaskStartInfoEx const&); - TaskStartInfoEx(); + std::shared_ptr> predecessor; }; diff --git a/src/mc/external/spsc_queue/SPSCQueue.h b/src/mc/external/spsc_queue/SPSCQueue.h index 65fe8994c5..f4b1e4eb25 100644 --- a/src/mc/external/spsc_queue/SPSCQueue.h +++ b/src/mc/external/spsc_queue/SPSCQueue.h @@ -9,4 +9,9 @@ struct SPSCQueue { SPSCQueue& operator=(SPSCQueue const&); SPSCQueue(SPSCQueue const&); SPSCQueue(); + + std::atomic mFrontBlock; // this+0x0 + char mCachelineFiller[56]; // this+0x8 + std::atomic mTailBlock; // this+0x40 + uint64_t mLargestBlockSize; // this+0x48 }; diff --git a/src/mc/network/BatchedNetworkPeer.h b/src/mc/network/BatchedNetworkPeer.h index 189fac1640..eb8a14f300 100644 --- a/src/mc/network/BatchedNetworkPeer.h +++ b/src/mc/network/BatchedNetworkPeer.h @@ -1,6 +1,9 @@ #pragma once #include "mc/_HeaderOutputPredefine.h" +#include "mc/deps/core/utility/BinaryStream.h" +#include "mc/deps/core/threading/TaskGroup.h" +#include "mc/external/spsc_queue/SPSCQueue.h" // auto generated inclusion list #include "mc/enums/Compressibility.h" @@ -21,6 +24,10 @@ class BatchedNetworkPeer : public ::NetworkPeer { DataCallback(DataCallback const&); DataCallback(); + std::string data; // this+0x0 + Compressibility compressible; // this+0x20 + std::function callback; // this+0x28 + public: // NOLINTBEGIN // symbol: ??0DataCallback@BatchedNetworkPeer@@QEAA@$$QEAU01@@Z @@ -41,6 +48,18 @@ class BatchedNetworkPeer : public ::NetworkPeer { BatchedNetworkPeer(BatchedNetworkPeer const&); BatchedNetworkPeer(); + + BinaryStream mOutgoingData; // this+0x18 + uint64_t mCompressibleBytes; // this+0x80 + std::string mIncomingDataBuffer; // this+0x88 + std::unique_ptr mIncomingData; // this+0xA8 + std::unique_ptr mTaskGroup; // this+0xB0 + SPSCQueue mSendQueue; // this+0xB8 + std::atomic mTaskRunning; // this+0x108 + std::atomic mQueuedPackets; // this+0x110 + uint64_t mSentPackets; // this+0x118 + bool mAsyncEnabled; // this+0x120 + public: // NOLINTBEGIN // vIndex: 0, symbol: __gen_??1BatchedNetworkPeer@@UEAA@XZ diff --git a/src/mc/network/CompressedNetworkPeer.h b/src/mc/network/CompressedNetworkPeer.h index 79e4094ae2..a4831e7ad0 100644 --- a/src/mc/network/CompressedNetworkPeer.h +++ b/src/mc/network/CompressedNetworkPeer.h @@ -1,6 +1,7 @@ #pragma once #include "mc/_HeaderOutputPredefine.h" +#include "mc/network/NetworkSettingOptions.h" // auto generated inclusion list #include "mc/enums/Compressibility.h" @@ -13,6 +14,11 @@ class CompressedNetworkPeer : public ::NetworkPeer { CompressedNetworkPeer(CompressedNetworkPeer const&); CompressedNetworkPeer(); + std::string mSendBuffer; // this+0x18 + std::string mReceiveBuffer; // this+0x38 + bool mCompressionEnabled; // this+0x58 + NetworkSettingOptions mNetworkSettings; // this+0x5C + public: // NOLINTBEGIN // vIndex: 0, symbol: __gen_??1CompressedNetworkPeer@@UEAA@XZ diff --git a/src/mc/network/NetworkConnection.h b/src/mc/network/NetworkConnection.h index fd83f991fb..0ac6f06976 100644 --- a/src/mc/network/NetworkConnection.h +++ b/src/mc/network/NetworkConnection.h @@ -1,6 +1,11 @@ #pragma once #include "mc/_HeaderOutputPredefine.h" +#include "mc/network/BatchedNetworkPeer.h" +#include "mc/network/CompressedNetworkPeer.h" +#include "mc/network/EncryptedNetworkPeer.h" +#include "mc/network/NetworkConnectionType.h" +#include "mc/network/NetworkIdentifier.h" // auto generated inclusion list #include "mc/deps/core/common/bedrock/NonOwnerPointer.h" @@ -21,6 +26,9 @@ class NetworkConnection { PausedPacket(PausedPacket const&); PausedPacket(); + std::string mData; + std::chrono::steady_clock::time_point mTimepoint; + public: // NOLINTBEGIN // symbol: ??1PausedPacket@NetworkConnection@@QEAA@XZ @@ -35,6 +43,22 @@ class NetworkConnection { NetworkConnection(NetworkConnection const&); NetworkConnection(); + NetworkIdentifier mId; // this+0x0 + NetworkConnectionType mType; // this+0xA0 + std::weak_ptr mUnknown; // this+0xA8 + std::weak_ptr mEncryptedPeer; // this+0xB8 + std::weak_ptr mCompressedPeer; // this+0xC8 + std::weak_ptr mBatchedPeer; // this+0xD8 + std::shared_ptr mPeer; // this+0xE8 + std::chrono::steady_clock::time_point mLastPacketTime; // this+0xF8 + std::chrono::steady_clock::time_point mClosedTime; // this+0x100 + bool mShouldCloseConnection; // this+0x108 + bool mDisconnected; // this+0x109 +protected: + std::bitset<2> mPausedChannels; // this+0x10C + std::queue mResumedPackets; // this+0x110 + std::array, 2> mPausedPackets; // this+0x138 + public: // NOLINTBEGIN // symbol: diff --git a/src/mc/network/RakNetConnector.h b/src/mc/network/RakNetConnector.h index da2905dfc7..abb3575908 100644 --- a/src/mc/network/RakNetConnector.h +++ b/src/mc/network/RakNetConnector.h @@ -109,6 +109,14 @@ class RakNetConnector : public ::RemoteConnector { RakNetNetworkPeer(RakNetNetworkPeer const&); RakNetNetworkPeer(); + RakNet::RakPeerInterface& mRakPeer; // this+0x18 + NetworkIdentifier mId; // this+0x20 + std::string mSendBuffer; // this+0xC0 + std::vector mReadBufferDatas; // this+0xE0 + int mApproximateMaxBps; // this+0xF8 + int mLastPing; // this+0xFC + int mAveragePing; // this+0x100 + public: // NOLINTBEGIN // vIndex: 0, symbol: __gen_??1RakNetNetworkPeer@RakNetConnector@@UEAA@XZ diff --git a/src/mc/network/WebRTCNetworkPeer.h b/src/mc/network/WebRTCNetworkPeer.h index 933b8ebf03..079863fa35 100644 --- a/src/mc/network/WebRTCNetworkPeer.h +++ b/src/mc/network/WebRTCNetworkPeer.h @@ -7,6 +7,8 @@ #include "mc/enums/Compressibility.h" #include "mc/network/NetworkPeer.h" +class NetherNetInstance; + class WebRTCNetworkPeer : public ::NetworkPeer { public: // prevent constructor by default @@ -14,6 +16,15 @@ class WebRTCNetworkPeer : public ::NetworkPeer { WebRTCNetworkPeer(WebRTCNetworkPeer const&); WebRTCNetworkPeer(); + std::string mSendBuffer; // this+0x18 + std::vector> mReadBuffers; // this+0x38 + std::shared_ptr mNetherNetInstance; // this+0x50 + uint64_t mRemoteUserId; // this+0x60 + bool mWasConnected; // this+0x68 + bool mConnectionLost; // this+0x69 + NetworkPeer::NetworkStatus mNetherNetNetworkStatus; // this+0x70 + unsigned int mNumNetworkStatusUpdates; // this+0xA8 + public: // NOLINTBEGIN // vIndex: 0, symbol: ??1WebRTCNetworkPeer@@UEAA@XZ From 224561e43f735437db3a2b0e02994407b2a359a2 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Fri, 5 Apr 2024 01:37:12 +0800 Subject: [PATCH 12/44] fix: fix RakNetNetworkPeer --- src/mc/network/NetworkConnection.h | 29 ++++++++++++++--------------- src/mc/network/RakNetConnector.h | 1 + 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/mc/network/NetworkConnection.h b/src/mc/network/NetworkConnection.h index 0ac6f06976..8d6a7a283f 100644 --- a/src/mc/network/NetworkConnection.h +++ b/src/mc/network/NetworkConnection.h @@ -43,21 +43,20 @@ class NetworkConnection { NetworkConnection(NetworkConnection const&); NetworkConnection(); - NetworkIdentifier mId; // this+0x0 - NetworkConnectionType mType; // this+0xA0 - std::weak_ptr mUnknown; // this+0xA8 - std::weak_ptr mEncryptedPeer; // this+0xB8 - std::weak_ptr mCompressedPeer; // this+0xC8 - std::weak_ptr mBatchedPeer; // this+0xD8 - std::shared_ptr mPeer; // this+0xE8 - std::chrono::steady_clock::time_point mLastPacketTime; // this+0xF8 - std::chrono::steady_clock::time_point mClosedTime; // this+0x100 - bool mShouldCloseConnection; // this+0x108 - bool mDisconnected; // this+0x109 -protected: - std::bitset<2> mPausedChannels; // this+0x10C - std::queue mResumedPackets; // this+0x110 - std::array, 2> mPausedPackets; // this+0x138 + NetworkIdentifier mId; // this+0x0 + NetworkConnectionType mType; // this+0xA0 + std::weak_ptr mUnknown; // this+0xA8 + std::weak_ptr mEncryptedPeer; // this+0xB8 + std::weak_ptr mCompressedPeer; // this+0xC8 + std::weak_ptr mBatchedPeer; // this+0xD8 + std::shared_ptr mPeer; // this+0xE8 + std::chrono::steady_clock::time_point mLastPacketTime; // this+0xF8 + std::chrono::steady_clock::time_point mClosedTime; // this+0x100 + bool mShouldCloseConnection; // this+0x108 + bool mDisconnected; // this+0x109 + std::bitset<2> mPausedChannels; // this+0x10C + std::queue mResumedPackets; // this+0x110 + std::array, 2> mPausedPackets; // this+0x138 public: // NOLINTBEGIN diff --git a/src/mc/network/RakNetConnector.h b/src/mc/network/RakNetConnector.h index abb3575908..8dbd1a8ad6 100644 --- a/src/mc/network/RakNetConnector.h +++ b/src/mc/network/RakNetConnector.h @@ -1,6 +1,7 @@ #pragma once #include "mc/_HeaderOutputPredefine.h" +#include "mc/network/NetworkIdentifier.h" // auto generated inclusion list #include "mc/deps/core/common/bedrock/NonOwnerPointer.h" From 9fc883c182ef1702a4413bce54b276eefec9ad0a Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Fri, 5 Apr 2024 02:19:05 +0800 Subject: [PATCH 13/44] fix: fix Bedrock::Threading namespace --- src/mc/deps/core/threading/TaskStartInfoEx.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mc/deps/core/threading/TaskStartInfoEx.h b/src/mc/deps/core/threading/TaskStartInfoEx.h index a7c22ba4c9..6136316eaf 100644 --- a/src/mc/deps/core/threading/TaskStartInfoEx.h +++ b/src/mc/deps/core/threading/TaskStartInfoEx.h @@ -7,5 +7,5 @@ template struct TaskStartInfoEx : public TaskStartInfoBase { public: - std::shared_ptr> predecessor; + std::shared_ptr> predecessor; }; From 620958145a5c2678dc3b5ce97fb40cb83a26ef1b Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Fri, 5 Apr 2024 14:48:36 +0800 Subject: [PATCH 14/44] refactor: refactoring forEachPos --- .../level/levelgen/structure/BoundingBox.h | 65 ++++++++----------- 1 file changed, 27 insertions(+), 38 deletions(-) diff --git a/src/mc/world/level/levelgen/structure/BoundingBox.h b/src/mc/world/level/levelgen/structure/BoundingBox.h index b7fe3ba210..ec50424496 100644 --- a/src/mc/world/level/levelgen/structure/BoundingBox.h +++ b/src/mc/world/level/levelgen/structure/BoundingBox.h @@ -22,46 +22,35 @@ class BoundingBox : public ll::math::CommutativeGroup const& todo) const { - for (int dy = min.y; dy <= max.y; ++dy) - for (int dx = min.x; dx <= max.x; ++dx) - for (int dz = min.z; dz <= max.z; ++dz) { - todo(BlockPos{dx, dy, dz}); - } - } - - constexpr bool forEachPos(std::function const& todo) const { - for (int dy = min.y; dy <= max.y; ++dy) - for (int dx = min.x; dx <= max.x; ++dx) - for (int dz = min.z; dz <= max.z; ++dz) { - if (!todo(BlockPos{dx, dy, dz})) { - return false; + template + constexpr void forEachPos(F&& todo) const { + if constexpr (std::is_invocable_v) { + size_t i = 0; + for (int dy = min.y; dy <= max.y; ++dy) + for (int dx = min.x; dx <= max.x; ++dx) + for (int dz = min.z; dz <= max.z; ++dz) { + if constexpr (std::is_invocable_r_v) { + if (!std::forward(todo)(BlockPos{dx, dy, dz}, i)) { + return; + } + } else { + std::forward(todo)(BlockPos{dx, dy, dz}, i); + } + i++; } - } - return true; - } - - constexpr void forEachPos(std::function const& todo) const { - size_t i = 0; - for (int dy = min.y; dy <= max.y; ++dy) - for (int dx = min.x; dx <= max.x; ++dx) - for (int dz = min.z; dz <= max.z; ++dz) { - todo(BlockPos{dx, dy, dz}, i); - i++; - } - } - - constexpr bool forEachPos(std::function const& todo) const { - size_t i = 0; - for (int dy = min.y; dy <= max.y; ++dy) - for (int dx = min.x; dx <= max.x; ++dx) - for (int dz = min.z; dz <= max.z; ++dz) { - if (!todo(BlockPos{dx, dy, dz}, i)) { - return false; + } else { + for (int dy = min.y; dy <= max.y; ++dy) + for (int dx = min.x; dx <= max.x; ++dx) + for (int dz = min.z; dz <= max.z; ++dz) { + if constexpr (std::is_invocable_r_v) { + if (!std::forward(todo)(BlockPos{dx, dy, dz})) { + return; + } + } else { + std::forward(todo)(BlockPos{dx, dy, dz}); + } } - i++; - } - return true; + } } constexpr BoundingBox& merge(BoundingBox const& a) noexcept { From 7908b30e98376f77c15961f9b45150bc62fca975 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Fri, 5 Apr 2024 14:57:43 +0800 Subject: [PATCH 15/44] fix: fix ice --- .../level/levelgen/structure/BoundingBox.h | 32 ++++--------------- 1 file changed, 6 insertions(+), 26 deletions(-) diff --git a/src/mc/world/level/levelgen/structure/BoundingBox.h b/src/mc/world/level/levelgen/structure/BoundingBox.h index ec50424496..0c66cb4cc8 100644 --- a/src/mc/world/level/levelgen/structure/BoundingBox.h +++ b/src/mc/world/level/levelgen/structure/BoundingBox.h @@ -24,33 +24,13 @@ class BoundingBox : public ll::math::CommutativeGroup constexpr void forEachPos(F&& todo) const { - if constexpr (std::is_invocable_v) { - size_t i = 0; - for (int dy = min.y; dy <= max.y; ++dy) - for (int dx = min.x; dx <= max.x; ++dx) - for (int dz = min.z; dz <= max.z; ++dz) { - if constexpr (std::is_invocable_r_v) { - if (!std::forward(todo)(BlockPos{dx, dy, dz}, i)) { - return; - } - } else { - std::forward(todo)(BlockPos{dx, dy, dz}, i); - } - i++; + for (int dy = min.y; dy <= max.y; ++dy) + for (int dx = min.x; dx <= max.x; ++dx) + for (int dz = min.z; dz <= max.z; ++dz) { + if (!std::forward(todo)(BlockPos{dx, dy, dz})) { + return; } - } else { - for (int dy = min.y; dy <= max.y; ++dy) - for (int dx = min.x; dx <= max.x; ++dx) - for (int dz = min.z; dz <= max.z; ++dz) { - if constexpr (std::is_invocable_r_v) { - if (!std::forward(todo)(BlockPos{dx, dy, dz})) { - return; - } - } else { - std::forward(todo)(BlockPos{dx, dy, dz}); - } - } - } + } } constexpr BoundingBox& merge(BoundingBox const& a) noexcept { From 9c56320bd02126a443d9e0d3b44af39bc7522d7e Mon Sep 17 00:00:00 2001 From: Intop <78622918+Intoprelised@users.noreply.github.com> Date: Fri, 5 Apr 2024 21:42:16 -0400 Subject: [PATCH 16/44] fead: update enum ContainerEnumName (#1503) --- src/mc/world/containers/ContainerEnumName.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/mc/world/containers/ContainerEnumName.h b/src/mc/world/containers/ContainerEnumName.h index 4cf63fe0fd..7745b2c075 100644 --- a/src/mc/world/containers/ContainerEnumName.h +++ b/src/mc/world/containers/ContainerEnumName.h @@ -65,4 +65,5 @@ enum class ContainerEnumName : schar { CursorContainer = 0x3B, CreatedOutputContainer = 0x3C, SmithingTableTemplateContainer = 0x3D, + CrafterLevelEntityContainer = 0x3E, }; From f91cbc5c037fc235d478297955da690b85229256 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Sat, 6 Apr 2024 14:51:46 +0800 Subject: [PATCH 17/44] refactor: refactoring forEachPos --- src/mc/world/level/levelgen/structure/BoundingBox.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/mc/world/level/levelgen/structure/BoundingBox.h b/src/mc/world/level/levelgen/structure/BoundingBox.h index 0c66cb4cc8..537195521d 100644 --- a/src/mc/world/level/levelgen/structure/BoundingBox.h +++ b/src/mc/world/level/levelgen/structure/BoundingBox.h @@ -23,14 +23,15 @@ class BoundingBox : public ll::math::CommutativeGroup - constexpr void forEachPos(F&& todo) const { + constexpr bool forEachPos(F&& todo) const { for (int dy = min.y; dy <= max.y; ++dy) for (int dx = min.x; dx <= max.x; ++dx) for (int dz = min.z; dz <= max.z; ++dz) { if (!std::forward(todo)(BlockPos{dx, dy, dz})) { - return; + return false; } } + return true; } constexpr BoundingBox& merge(BoundingBox const& a) noexcept { From 35f3b969dee36520c4467a37e225b590c68061a7 Mon Sep 17 00:00:00 2001 From: OEOTYAN <58554322+OEOTYAN@users.noreply.github.com> Date: Sat, 6 Apr 2024 17:23:05 +0800 Subject: [PATCH 18/44] chore: update xmake.lua --- xmake.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xmake.lua b/xmake.lua index 75af69e4ea..639c811e68 100644 --- a/xmake.lua +++ b/xmake.lua @@ -19,7 +19,7 @@ add_requires("cpp-httplib", {configs={ssl=true}}) add_requires("pcg_cpp") add_requires("pfr") add_requires("demangler") -add_requires("preloader") +add_requires("preloader ~1.6.2") add_requires("symbolprovider ~1") add_requires("bdslibrary 1.20.72.01") From 6d5d534fb137b4bc5a7429786e9fa008c796ca86 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Sat, 6 Apr 2024 20:27:31 +0800 Subject: [PATCH 19/44] feat: add event::getId --- src/ll/api/event/DynamicListener.h | 2 +- src/ll/api/event/Event.cpp | 3 +++ src/ll/api/event/Event.h | 4 +++- src/ll/api/event/EventBus.cpp | 11 +++-------- src/ll/api/event/EventId.h | 4 ++-- src/ll/test/EventTest.cpp | 14 ++++++++------ 6 files changed, 20 insertions(+), 18 deletions(-) diff --git a/src/ll/api/event/DynamicListener.h b/src/ll/api/event/DynamicListener.h index d8af5bc03a..d1bd3a0682 100644 --- a/src/ll/api/event/DynamicListener.h +++ b/src/ll/api/event/DynamicListener.h @@ -23,7 +23,7 @@ class DynamicListener : public ListenerBase { void call(Event& event) override { CompoundTag data{}; event.serialize(data); - data["eventId"] = reflection::getDynamicRawName(event); + data["eventId"] = event.getId().name; callback(data); event.deserialize(data); } diff --git a/src/ll/api/event/Event.cpp b/src/ll/api/event/Event.cpp index e219d160c6..4f815cbf07 100644 --- a/src/ll/api/event/Event.cpp +++ b/src/ll/api/event/Event.cpp @@ -1,4 +1,5 @@ #include "ll/api/event/Event.h" +#include "ll/api/reflection/TypeName.h" #include "mc/nbt/CompoundTag.h" @@ -10,6 +11,8 @@ void Event::serializeWithCancel(CompoundTag& nbt) const { nbt["cancelled"] = mCa void Event::deserialize(CompoundTag const&) {} +EventId Event::getId() const { return EventId{reflection::removeTypePrefix(reflection::getDynamicRawName(*this))}; } + void Event::deserializeWithCancel(CompoundTag const& nbt) { mCancelled = nbt["cancelled"]; } } // namespace ll::event diff --git a/src/ll/api/event/Event.h b/src/ll/api/event/Event.h index eae47f3c17..238132b6b0 100644 --- a/src/ll/api/event/Event.h +++ b/src/ll/api/event/Event.h @@ -31,6 +31,8 @@ class Event { LLAPI virtual void serialize(CompoundTag&) const; LLAPI virtual void deserialize(CompoundTag const&); - static constexpr ll::event::EventId CustomEventId{EmptyEventId}; + LLAPI virtual EventId getId() const; + + static constexpr EventId CustomEventId{EmptyEventId}; }; } // namespace ll::event diff --git a/src/ll/api/event/EventBus.cpp b/src/ll/api/event/EventBus.cpp index 336c1f2b2c..961b7d9535 100644 --- a/src/ll/api/event/EventBus.cpp +++ b/src/ll/api/event/EventBus.cpp @@ -37,8 +37,8 @@ class CallbackStream { auto llock = ll::Logger::lock(); try { logger.error( - "Error in [{}:{}] of <{}>:", - ll::reflection::removeTypePrefix(ll::reflection::getDynamicRawName(*l)), + "Error in Listener<{}>[{}] of {}:", + event.getId().name, l->getId(), l->pluginPtr.expired() ? "unknown plugin" : l->pluginPtr.lock()->getManifest().name ); @@ -62,12 +62,7 @@ class CallbackStream { } catch (...) { auto llock = ll::Logger::lock(); try { - logger.error( - "Error in [{}:{}] of <{}>:", - ll::reflection::removeTypePrefix(ll::reflection::getDynamicRawName(*l)), - l->getId(), - pluginName - ); + logger.error("Error in Listener<{}>[{}] of {}:", event.getId().name, l->getId(), pluginName); } catch (...) {} error_utils::printCurrentException(logger); } diff --git a/src/ll/api/event/EventId.h b/src/ll/api/event/EventId.h index 27248ed83e..32e0391c44 100644 --- a/src/ll/api/event/EventId.h +++ b/src/ll/api/event/EventId.h @@ -25,7 +25,7 @@ class EventId { } }; -static constexpr EventId EmptyEventId{""}; +static inline constexpr EventId EmptyEventId{""}; template constexpr EventId getEventId = []() -> EventId { @@ -34,7 +34,7 @@ constexpr EventId getEventId = []() -> EventId { return self::CustomEventId; } else { static_assert(std::is_final_v, "Only final classes can use getEventId"); - return EventId{ll::reflection::type_raw_name_v}; + return EventId{ll::reflection::type_unprefix_name_v}; } }(); } // namespace ll::event diff --git a/src/ll/test/EventTest.cpp b/src/ll/test/EventTest.cpp index e6489f76f6..c9f2c8f50e 100644 --- a/src/ll/test/EventTest.cpp +++ b/src/ll/test/EventTest.cpp @@ -61,6 +61,8 @@ class TestEvent1 final : public TestEventB { public: static constexpr ll::event::EventId CustomEventId{"My custom Id"}; + ll::event::EventId getId() const override { return CustomEventId; } + TestEvent1() { some = "TestEvent1 haha"; } }; @@ -94,14 +96,14 @@ LL_AUTO_TYPE_INSTANCE_HOOK( static std::atomic_uint times{}; auto listener = ll::event::Listener::create([](TestEventB& ev) { - ll::logger.debug("I'm 1, receive: {}, str: {}, {}", typeid(ev).name(), ev.some, times++); + ll::logger.debug("I'm 1, receive: {}, str: {}, {}", ev.getId().name, ev.some, times++); }); bus.addListener(listener); bus.addListener(listener); auto listener2 = ll::event::Listener::create( [](TestEvent2& ev) { - ll::logger.debug("I'm 2, receive: {}, str: {}, {}", typeid(ev).name(), ev.some, times++); + ll::logger.debug("I'm 2, receive: {}, str: {}, {}", ev.getId().name, ev.some, times++); ll::logger.debug("I'm 2, this can cancel, now isCancelled: {}", ev.isCancelled()); ll::logger.debug("try cancel"); @@ -198,11 +200,11 @@ LL_AUTO_TYPE_INSTANCE_HOOK( ll::logger.debug("Player {} left click", ev.self().getRealName()); }); auto listenersp = Listener::create([](PlayerSprintEvent& ev) { - switch (doHash(typeid(ev).name())) { - case doHash(ll::reflection::type_raw_name_v): { + switch (ev.getId().hash) { + case ll::event::getEventId.hash: { ll::logger.debug("Player {} start sprint", ev.self().getRealName()); } break; - case doHash(ll::reflection::type_raw_name_v): { + case ll::event::getEventId.hash: { ll::logger.debug("Player {} stop sprint", ev.self().getRealName()); } break; default: @@ -231,7 +233,7 @@ LL_AUTO_TYPE_INSTANCE_HOOK( bus.addListener(dl, getEventId); bus.addListener(dl, getEventId); bus.addListener(dl, getEventId); - // bus.addListener(dl, getEventId); + bus.addListener(dl, getEventId); bus.emplaceListener([](BlockChangedEvent& ev) { ll::logger From 9fd0370742c9cfd1a40ce91f22b8946428d15d53 Mon Sep 17 00:00:00 2001 From: Dofes <91889957+Dofes@users.noreply.github.com> Date: Sun, 7 Apr 2024 03:43:17 +0800 Subject: [PATCH 20/44] fix: fix PlayerActionType enum --- src/mc/world/actor/player/PlayerActionType.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/mc/world/actor/player/PlayerActionType.h b/src/mc/world/actor/player/PlayerActionType.h index 403c5b24ee..e2be83efa0 100644 --- a/src/mc/world/actor/player/PlayerActionType.h +++ b/src/mc/world/actor/player/PlayerActionType.h @@ -35,5 +35,11 @@ enum class PlayerActionType : int { StartItemUseOn = 0x1C, StopItemUseOn = 0x1D, HandledTeleport = 0x1E, - Count = 0x1F, + MissedSwing = 0x1F, + StartCrawling = 0x20, + StopCrawling = 0x21, + StartFlying = 0x22, + StopFlying = 0x23, + ClientAckServerData = 0x24, + Count = 0x25 }; From 273281b8600c05a5806523ff37ee4b2f6305f6e4 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Mon, 8 Apr 2024 00:11:31 +0800 Subject: [PATCH 21/44] feat: add CompoundTagVariant::emplace --- src/mc/math/vector/base/VectorBase.h | 2 +- src/mc/nbt/CompoundTagVariant.h | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/mc/math/vector/base/VectorBase.h b/src/mc/math/vector/base/VectorBase.h index 4461ba0fd5..1986ca0b6e 100644 --- a/src/mc/math/vector/base/VectorBase.h +++ b/src/mc/math/vector/base/VectorBase.h @@ -154,7 +154,7 @@ struct formatter : public std::formatter { template struct hash { - size_t operator()(T const& vec) const noexcept { return vec.hash(); } + constexpr size_t operator()(T const& vec) const noexcept { return vec.hash(); } }; } // namespace std diff --git a/src/mc/nbt/CompoundTagVariant.h b/src/mc/nbt/CompoundTagVariant.h index fb592c5bd2..1444843a01 100644 --- a/src/mc/nbt/CompoundTagVariant.h +++ b/src/mc/nbt/CompoundTagVariant.h @@ -230,6 +230,11 @@ class CompoundTagVariant { return std::visit([](auto& val) -> Tag const& { return (Tag const&)val; }, mTagStorage); } + template T> + [[nodiscard]] T& emplace() { + return mTagStorage.emplace(); + } + [[nodiscard]] std::unique_ptr& operator[](size_t index) { if (hold()) { return get()[index]; From 0d827efb4ea5f1d14099c189208ee67a39c6070e Mon Sep 17 00:00:00 2001 From: Intop <78622918+Intoprelised@users.noreply.github.com> Date: Sun, 7 Apr 2024 22:22:19 -0400 Subject: [PATCH 22/44] chore: update enum ContainerType (#1504) --- src/mc/world/containers/ContainerType.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/mc/world/containers/ContainerType.h b/src/mc/world/containers/ContainerType.h index 5803ee4903..b97d1f1161 100644 --- a/src/mc/world/containers/ContainerType.h +++ b/src/mc/world/containers/ContainerType.h @@ -39,4 +39,6 @@ enum class ContainerType : schar { JigsawEditor = 0x20, SmithingTable = 0x21, ChestBoat = 0x22, + DecoratedPot = 0x23, + Crafter = 0x24, }; From 4e177adcb1a6cd29921880f191f7942c62ca0629 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Mon, 8 Apr 2024 11:12:41 +0800 Subject: [PATCH 23/44] fix: fix wrong packet send logic --- src/mc/network/packet/Packet.cpp | 11 +++++------ src/mc/network/packet/Packet.h | 4 ++-- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/mc/network/packet/Packet.cpp b/src/mc/network/packet/Packet.cpp index a10b2a7d7d..4a71447e87 100644 --- a/src/mc/network/packet/Packet.cpp +++ b/src/mc/network/packet/Packet.cpp @@ -8,7 +8,9 @@ #include "mc/world/Minecraft.h" #include "mc/world/level/dimension/Dimension.h" -void Packet::sendTo(Player const& player) { player.sendNetworkPacket(*this); } +void Packet::sendTo(Player const& player) const { + sendToClient(player.getNetworkIdentifier(), player.getClientSubId()); +} void Packet::sendTo(BlockPos const& pos, DimensionType type, optional_ref except) const { if (!ll::service::getLevel()) { @@ -34,12 +36,9 @@ void Packet::sendToClient(NetworkIdentifierWithSubId const& identifierWithSubId) sendToClient(identifierWithSubId.mIdentifier, identifierWithSubId.mSubClientId); } -void Packet::sendToClients() { +void Packet::sendToClients() const { if (!ll::service::getLevel()) { return; } - ll::service::getLevel()->forEachPlayer([this](Player const& player) -> bool { - player.sendNetworkPacket(*this); - return true; - }); + ll::service::getLevel()->getPacketSender()->sendBroadcast(*this); } diff --git a/src/mc/network/packet/Packet.h b/src/mc/network/packet/Packet.h index df99567122..407c52cae4 100644 --- a/src/mc/network/packet/Packet.h +++ b/src/mc/network/packet/Packet.h @@ -45,7 +45,7 @@ class Packet { * * @param player The server player to send the packet to. */ - LLAPI void sendTo(Player const& player); + LLAPI void sendTo(Player const& player) const; /** * Send the packet to all relevant players in a 2D plane at a position in a given dimension. @@ -76,7 +76,7 @@ class Packet { /** * Send the packet to all clients connected to the server. */ - LLAPI void sendToClients(); + LLAPI void sendToClients() const; public: // NOLINTBEGIN From f27bf4f511a9bf85e22870c12b224a16a1addab6 Mon Sep 17 00:00:00 2001 From: OEOTYAN <58554322+OEOTYAN@users.noreply.github.com> Date: Tue, 9 Apr 2024 09:38:59 +0800 Subject: [PATCH 24/44] refactor: refactoring multilistener --- src/ll/api/event/MultiListener.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/ll/api/event/MultiListener.h b/src/ll/api/event/MultiListener.h index a2ae672259..787f1ada2c 100644 --- a/src/ll/api/event/MultiListener.h +++ b/src/ll/api/event/MultiListener.h @@ -22,13 +22,13 @@ class MultiListener : public ListenerBase { ) : ListenerBase(priority, std::move(plugin)) { event_list::forEach([fn = std::forward(fn), this]() { - callback.emplace(typeid(E), [fn](Event& ev) { static_cast(fn(static_cast(ev))); }); + callback.emplace(getEventId, [fn](Event& ev) { static_cast(fn(static_cast(ev))); }); }); } ~MultiListener() override = default; - void call(Event& event) override { callback.at(typeid(event))(event); } + void call(Event& event) override { callback.at(event.getId())(event); } template static std::shared_ptr create( @@ -40,6 +40,6 @@ class MultiListener : public ListenerBase { } private: - std::unordered_map callback; + std::unordered_map callback; }; } // namespace ll::event From 4804c918b0591c731824e96c37e87dcd3402acc0 Mon Sep 17 00:00:00 2001 From: OEOTYAN <58554322+OEOTYAN@users.noreply.github.com> Date: Tue, 9 Apr 2024 10:10:46 +0800 Subject: [PATCH 25/44] refactor: refactoring TickSyncTaskPool --- src/ll/api/thread/TickSyncTaskPool.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/ll/api/thread/TickSyncTaskPool.cpp b/src/ll/api/thread/TickSyncTaskPool.cpp index 30d41110e7..6fc902abb5 100644 --- a/src/ll/api/thread/TickSyncTaskPool.cpp +++ b/src/ll/api/thread/TickSyncTaskPool.cpp @@ -16,8 +16,6 @@ namespace ll::thread { static Concurrency::concurrent_queue> works; -struct TickSyncTaskPool::Impl {}; - LL_TYPE_INSTANCE_HOOK(TickSyncTaskPool::Worker, HookPriority::Low, ServerLevel, &ServerLevel::_subTick, void) { std::function f; while (works.try_pop(f)) { @@ -31,11 +29,14 @@ LL_TYPE_INSTANCE_HOOK(TickSyncTaskPool::Worker, HookPriority::Low, ServerLevel, origin(); } +struct TickSyncTaskPool::Impl { + ::ll::memory::HookRegistrar reg; +}; + TickSyncTaskPool::TickSyncTaskPool() : impl(std::make_unique()) {} TickSyncTaskPool::~TickSyncTaskPool() {} void TickSyncTaskPool::addTaskImpl(std::function f) { - static ::ll::memory::HookRegistrar reg; works.push(std::move(f)); } From 677b888dc3c147d4fba065a44443d2e15d62dd8c Mon Sep 17 00:00:00 2001 From: OEOTYAN <58554322+OEOTYAN@users.noreply.github.com> Date: Mon, 1 Apr 2024 21:04:27 +0800 Subject: [PATCH 26/44] fix: move PlayerInfoEntry to public --- src/ll/api/service/PlayerInfo.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ll/api/service/PlayerInfo.h b/src/ll/api/service/PlayerInfo.h index 3662550d97..48a20cf37a 100644 --- a/src/ll/api/service/PlayerInfo.h +++ b/src/ll/api/service/PlayerInfo.h @@ -11,14 +11,14 @@ class PlayerInfo { class Impl; std::unique_ptr impl; + PlayerInfo(); +public: struct PlayerInfoEntry { mce::UUID uuid; std::string xuid; std::string name; }; - PlayerInfo(); -public: LLAPI static PlayerInfo& getInstance(); LLNDAPI optional_ref fromUuid(mce::UUID) const; From 51d01bac45ebec61c678cd6a2897975930f29765 Mon Sep 17 00:00:00 2001 From: ShrBox Date: Fri, 5 Apr 2024 21:58:57 +0800 Subject: [PATCH 27/44] chore: update ActorDataIDs --- src/mc/entity/utilities/ActorDataIDs.h | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/mc/entity/utilities/ActorDataIDs.h b/src/mc/entity/utilities/ActorDataIDs.h index 9d9307b420..f642a8ac5c 100644 --- a/src/mc/entity/utilities/ActorDataIDs.h +++ b/src/mc/entity/utilities/ActorDataIDs.h @@ -2,7 +2,7 @@ #include "mc/_HeaderOutputPredefine.h" enum class ActorDataIDs : ushort { - Flags = 0x0, + Reserved0 = 0x0, StructuralIntegrity = 0x1, Variant = 0x2, ColorIndex = 0x3, @@ -12,7 +12,7 @@ enum class ActorDataIDs : ushort { AirSupply = 0x7, EffectColor = 0x8, EffectAmbience = 0x9, - JumpDuration = 0xA, + Reserved010 = 0xA, Hurt = 0xB, HurtDir = 0xC, RowTimeLeft = 0xD, @@ -40,7 +40,7 @@ enum class ActorDataIDs : ushort { Fishangle = 0x23, AuxValueData = 0x24, LeashHolder = 0x25, - Scale = 0x26, + Reserved038 = 0x26, HasNpc = 0x27, NpcData = 0x28, Actions = 0x29, @@ -55,10 +55,10 @@ enum class ActorDataIDs : ushort { TargetB = 0x32, TargetC = 0x33, AerialAttack = 0x34, - Width = 0x35, - Height = 0x36, + Reserved053 = 0x35, + Reserved054 = 0x36, FuseTime = 0x37, - SeatOffset = 0x38, + Reservec056 = 0x38, SeatLockPassengerRotation = 0x39, SeatLockPassengerRotationDegrees = 0x3A, SeatRotationOffset = 0x3B, @@ -76,7 +76,7 @@ enum class ActorDataIDs : ushort { CommandName = 0x47, LastCommandOutput = 0x48, TrackCommandOutput = 0x49, - ControllingSeatIndex = 0x4A, + Reserved074 = 0x4A, Strength = 0x4B, StrengthMax = 0x4C, DataSpellCastingColor = 0x4D, @@ -94,7 +94,7 @@ enum class ActorDataIDs : ushort { SittingAmount = 0x59, SittingAmountPrevious = 0x5A, EatingCounter = 0x5B, - Flags2 = 0x5C, + Reserved092 = 0x5C, LayingAmount = 0x5D, LayingAmountPrevious = 0x5E, DataDuration = 0x5F, @@ -132,4 +132,6 @@ enum class ActorDataIDs : ushort { PlayerLastDeathPos = 0x7F, PlayerLastDeathDimension = 0x80, PlayerHasDied = 0x81, + CollisionBox = 0x82, + Count = 0x83, }; From f7672c8261710b3ae55296e69d22524434489230 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Wed, 10 Apr 2024 03:23:58 +0800 Subject: [PATCH 28/44] feat: rewrite snbt to add error message --- src/ll/api/base/Meta.h | 2 +- src/ll/api/command/Overload.h | 3 - src/ll/api/command/runtime/RuntimeCommand.cpp | 11 +- .../api/command/runtime/RuntimeOverload.cpp | 40 +- .../api/event/player/PlayerUseItemOnEvent.cpp | 7 +- .../api/event/player/PlayerUseItemOnEvent.h | 7 +- src/ll/api/utils/ErrorUtils.cpp | 10 +- src/ll/api/utils/ErrorUtils.h | 4 - src/ll/test/ScheduleTest.cpp | 13 +- src/ll/test/TestNbt.cpp | 47 +- src/mc/common/wrapper/optional_ref.h | 7 +- src/mc/nbt/CompoundTag.cpp | 56 ++- src/mc/nbt/CompoundTag.h | 12 +- src/mc/nbt/CompoundTagVariant.h | 60 +-- src/mc/nbt/Tag.cpp | 63 +-- src/mc/nbt/Tag.h | 2 - src/mc/nbt/{ => detail}/SnbtDumpImpl.cpp | 0 src/mc/nbt/detail/SnbtErrorCode.cpp | 57 +++ src/mc/nbt/detail/SnbtErrorCode.h | 23 + src/mc/nbt/{ => detail}/SnbtParseImpl.cpp | 435 +++++++----------- src/mc/network/BatchedNetworkPeer.h | 2 +- xmake.lua | 2 +- 22 files changed, 412 insertions(+), 451 deletions(-) rename src/mc/nbt/{ => detail}/SnbtDumpImpl.cpp (100%) create mode 100644 src/mc/nbt/detail/SnbtErrorCode.cpp create mode 100644 src/mc/nbt/detail/SnbtErrorCode.h rename src/mc/nbt/{ => detail}/SnbtParseImpl.cpp (61%) diff --git a/src/ll/api/base/Meta.h b/src/ll/api/base/Meta.h index 25e75b6571..ef439008c9 100644 --- a/src/ll/api/base/Meta.h +++ b/src/ll/api/base/Meta.h @@ -183,7 +183,7 @@ constexpr void unroll(Fn&& fn) { } template -constexpr decltype(auto) visitIndex(Fn&& fn, size_t index) { +constexpr decltype(auto) visitIndex(size_t index, Fn&& fn) { constexpr int strategy = N == 1 ? 0 : N <= 4 ? 1 : N <= 16 ? 2 : N <= 64 ? 3 : N <= 256 ? 4 : -1; return detail::VisitStrategy::impl(index, std::forward(fn)); } diff --git a/src/ll/api/command/Overload.h b/src/ll/api/command/Overload.h index 7989817b15..ca9c02673f 100644 --- a/src/ll/api/command/Overload.h +++ b/src/ll/api/command/Overload.h @@ -76,9 +76,6 @@ class Overload : private OverloadData { true ); }); - if (!hasName) { - throw std::invalid_argument("invalid param " + std::string(name)); - } return *this; } diff --git a/src/ll/api/command/runtime/RuntimeCommand.cpp b/src/ll/api/command/runtime/RuntimeCommand.cpp index 7f9d165be5..fd1cca64fc 100644 --- a/src/ll/api/command/runtime/RuntimeCommand.cpp +++ b/src/ll/api/command/runtime/RuntimeCommand.cpp @@ -14,13 +14,10 @@ RuntimeCommand::RuntimeCommand( paramIndexMap(map) { size_t idx{0}; for (auto&& [name, kind] : params) { - meta::visitIndex( - [&] { - std:: - construct_at(reinterpret_cast(reinterpret_cast(this) + sizeof(RuntimeCommand)) + idx, std::in_place_index); - }, - kind - ); + meta::visitIndex(kind, [&] { + std:: + construct_at(reinterpret_cast(reinterpret_cast(this) + sizeof(RuntimeCommand)) + idx, std::in_place_index); + }); idx++; } } diff --git a/src/ll/api/command/runtime/RuntimeOverload.cpp b/src/ll/api/command/runtime/RuntimeOverload.cpp index 7acb62293c..675d98081f 100644 --- a/src/ll/api/command/runtime/RuntimeOverload.cpp +++ b/src/ll/api/command/runtime/RuntimeOverload.cpp @@ -10,8 +10,8 @@ static_assert(ParamKindList::size == ParamKind::Count); static_assert(ParamKindList::all); struct RuntimeOverload::Impl { - std::optional>> factoryClosure{}; - std::vector> params; + std::optional>> factoryClosure{}; // for delay emplace + std::vector> params; std::unordered_set> storedStr; }; @@ -22,30 +22,28 @@ RuntimeOverload::~RuntimeOverload() = default; char const* RuntimeOverload::storeStr(std::string_view str) { std::lock_guard l{lock()}; - if (!impl->storedStr.contains(str)) { - impl->storedStr.emplace(str); + if (auto iter = impl->storedStr.find(str); iter != impl->storedStr.end()) { + return iter->c_str(); + } else { + return impl->storedStr.emplace(str).first->c_str(); } - return impl->storedStr.find(str)->c_str(); } void RuntimeOverload::addParam(std::string_view name, ParamKindType kind, CommandParameterDataType type) { int offset = (int)(sizeof(RuntimeCommand) + impl->params.size() * sizeof(ParamStorageType)); - meta::visitIndex( - [&] { - using ParamType = ParamKindList::get; - addParamImpl( - Bedrock::type_id(), - &CommandRegistry::parse, - name, - type, - nullptr, - offset, - offset + OptionalOffsetGetter::value, - true - ); - }, - kind - ); + meta::visitIndex(kind, [&] { + using ParamType = ParamKindList::get; + addParamImpl( + Bedrock::type_id(), + &CommandRegistry::parse, + name, + type, + nullptr, + offset, + offset + OptionalOffsetGetter::value, + true + ); + }); impl->params.emplace_back(name, kind); } RuntimeOverload& RuntimeOverload::optional(std::string_view name, ParamKindType kind) { diff --git a/src/ll/api/event/player/PlayerUseItemOnEvent.cpp b/src/ll/api/event/player/PlayerUseItemOnEvent.cpp index a0e3b18130..72e2aba287 100644 --- a/src/ll/api/event/player/PlayerUseItemOnEvent.cpp +++ b/src/ll/api/event/player/PlayerUseItemOnEvent.cpp @@ -13,7 +13,7 @@ void PlayerUseItemOnEvent::serialize(CompoundTag& nbt) const { Cancellable::serialize(nbt); nbt["item"] = (uintptr_t)&item(); nbt["blockPos"] = ListTag{blockPos().x, blockPos().y, blockPos().z}; - nbt["face"] = face(); + nbt["face"] = magic_enum::enum_name(face()); nbt["clickPos"] = ListTag{clickPos().x, clickPos().y, clickPos().z}; if (block()) { nbt["block"] = (uintptr_t)(block().as_ptr()); @@ -21,7 +21,7 @@ void PlayerUseItemOnEvent::serialize(CompoundTag& nbt) const { } ItemStack& PlayerUseItemOnEvent::item() const { return mItem; } BlockPos const& PlayerUseItemOnEvent::blockPos() const { return mBlockPos; } -uchar const& PlayerUseItemOnEvent::face() const { return mFace; } +FacingID const& PlayerUseItemOnEvent::face() const { return mFace; } Vec3 const& PlayerUseItemOnEvent::clickPos() const { return mClickPos; } optional_ref PlayerUseItemOnEvent::block() const { return mBlock; } @@ -37,7 +37,8 @@ LL_TYPE_INSTANCE_HOOK( Vec3 const& clickPos, Block const* block ) { - auto ev = PlayerUseItemOnEvent(this->getPlayer(), item, blockPos, face, clickPos, block); + auto ev = + PlayerUseItemOnEvent(this->getPlayer(), item, blockPos, *reinterpret_cast(&face), clickPos, block); EventBus::getInstance().publish(ev); if (ev.isCancelled()) { return {InteractionResult::Result::Fail}; diff --git a/src/ll/api/event/player/PlayerUseItemOnEvent.h b/src/ll/api/event/player/PlayerUseItemOnEvent.h index a724edc52e..7d582cd508 100644 --- a/src/ll/api/event/player/PlayerUseItemOnEvent.h +++ b/src/ll/api/event/player/PlayerUseItemOnEvent.h @@ -3,6 +3,7 @@ #include "ll/api/event/Cancellable.h" #include "ll/api/event/player/PlayerClickEvent.h" +#include "mc/enums/FacingID.h" #include "mc/math/Vec3.h" #include "mc/world/item/registry/ItemStack.h" #include "mc/world/level/BlockPos.h" @@ -13,7 +14,7 @@ namespace ll::event::inline player { class PlayerUseItemOnEvent final : public Cancellable { ItemStack& mItem; BlockPos const& mBlockPos; - uchar const& mFace; + FacingID const& mFace; Vec3 const& mClickPos; optional_ref mBlock; @@ -22,7 +23,7 @@ class PlayerUseItemOnEvent final : public Cancellable { Player& player, ItemStack& item, BlockPos const& blockPos, - uchar const& face, + FacingID const& face, Vec3 const& clickPos, optional_ref block ) @@ -37,7 +38,7 @@ class PlayerUseItemOnEvent final : public Cancellable { LLNDAPI ItemStack& item() const; LLNDAPI BlockPos const& blockPos() const; - LLNDAPI uchar const& face() const; + LLNDAPI FacingID const& face() const; LLNDAPI Vec3 const& clickPos() const; LLNDAPI optional_ref block() const; }; diff --git a/src/ll/api/utils/ErrorUtils.cpp b/src/ll/api/utils/ErrorUtils.cpp index f90016b398..d9d2a705dc 100644 --- a/src/ll/api/utils/ErrorUtils.cpp +++ b/src/ll/api/utils/ErrorUtils.cpp @@ -48,9 +48,8 @@ struct u8system_category : public std::_System_error_category { } }; -std::error_category const& u8system_category() noexcept { - static constexpr struct u8system_category category; - return category; +inline std::error_category const& u8system_category() noexcept { + return std::_Immortalize_memcpy_image(); } struct ntstatus_category : public std::error_category { @@ -97,9 +96,8 @@ struct ntstatus_category : public std::error_category { [[nodiscard]] char const* name() const noexcept override { return "ntstatus"; } }; -std::error_category const& ntstatus_category() noexcept { - static constexpr struct ntstatus_category category; - return category; +inline std::error_category const& ntstatus_category() noexcept { + return std::_Immortalize_memcpy_image(); } seh_exception::seh_exception(uint ntStatus, _EXCEPTION_POINTERS* expPtr) diff --git a/src/ll/api/utils/ErrorUtils.h b/src/ll/api/utils/ErrorUtils.h index b33f2f175d..406d9ba7c8 100644 --- a/src/ll/api/utils/ErrorUtils.h +++ b/src/ll/api/utils/ErrorUtils.h @@ -71,10 +71,6 @@ struct UntypedException { // only set for the current thread LLAPI void setSehTranslator(); -LLNDAPI std::error_category const& u8system_category() noexcept; - -LLNDAPI std::error_category const& ntstatus_category() noexcept; - LLNDAPI std::system_error getWinLastError() noexcept; LLNDAPI _EXCEPTION_RECORD& current_exception() noexcept; diff --git a/src/ll/test/ScheduleTest.cpp b/src/ll/test/ScheduleTest.cpp index 42ea05dd85..bac1dcde67 100644 --- a/src/ll/test/ScheduleTest.cpp +++ b/src/ll/test/ScheduleTest.cpp @@ -48,14 +48,11 @@ LL_AUTO_TYPE_INSTANCE_HOOK( schedulelogger.info("unsorted: {}", result.unsorted); for (auto k : {1, 4, 6}) { - ll::meta::visitIndex<10>( - [] { - static ll::Logger lo; - lo.warn("template N = {}", N); - return N; - }, - k - ); + ll::meta::visitIndex<10>(k, [] { + static ll::Logger lo; + lo.warn("template N = {}", N); + return N; + }); } return origin(ins); diff --git a/src/ll/test/TestNbt.cpp b/src/ll/test/TestNbt.cpp index 935a3f5b8e..ea9e3b57c6 100644 --- a/src/ll/test/TestNbt.cpp +++ b/src/ll/test/TestNbt.cpp @@ -44,7 +44,9 @@ LL_AUTO_TYPE_INSTANCE_HOOK(NbtTest, HookPriority::Normal, ServerInstance, &Serve }; j["some"]["new"]["json"] = 2; - auto nbt2 = *CompoundTag::fromSnbt(R"( + size_t iter = 0; + + std::string_view snbt2{R"( { anull = null, @@ -95,7 +97,24 @@ LL_AUTO_TYPE_INSTANCE_HOOK(NbtTest, HookPriority::Normal, ServerInstance, &Serve "string?": "streee _ _o-ix 我超, utf8 \"\\asfa%\"*)##q)$\\\\\"\\Q34\\\\\"\"'':" } - )"); + )"}; + + auto nbt2 = CompoundTag::fromSnbt(snbt2, iter); + + + if (!nbt2) { + + ll::logger.debug( + "{}, at: \"{}\"", + nbt2.error().message(), + std::string_view{ + snbt2.data() + std::max(0i64, (int64)iter - 8i64), + snbt2.data() + std::min(snbt2.size() - 1, iter + 8) + } + ); + } else { + ll::logger.debug("success {} {}", iter, snbt2.size()); + } CompoundTag nbt3; @@ -111,32 +130,36 @@ LL_AUTO_TYPE_INSTANCE_HOOK(NbtTest, HookPriority::Normal, ServerInstance, &Serve ll::logger.debug("\n{}", nbt.toSnbt(SnbtFormat::Colored | SnbtFormat::Console | SnbtFormat::Jsonify)); - ll::logger.debug("\n{}", nbt2.toSnbt(SnbtFormat::PrettyConsolePrint)); + ll::logger.debug("\n{}", nbt.toSnbt(SnbtFormat::PrettyConsolePrint)); + ll::logger.debug("\n{}", nbt2.value().toSnbt(SnbtFormat::PrettyConsolePrint)); ll::logger.debug("\n{}", nbt3.toSnbt(SnbtFormat::PrettyConsolePrint)); ll::logger.debug( "\n{}", - ((StringTag*)(Tag::parseSnbt(StringTag{nbt2.toNetworkNbt()}.toSnbt()).get())) - ->toSnbt(SnbtFormat::PrettyConsolePrint | SnbtFormat::ForceAscii) + CompoundTagVariant::parse(StringTag{nbt2.value().toNetworkNbt()}.toSnbt()) + ->get() + .toSnbt(SnbtFormat::PrettyConsolePrint | SnbtFormat::ForceAscii) ); - ll::logger.debug("\n{}", nbt.equals(nbt2)); + ll::logger.debug("\n{}", nbt.equals(nbt2.value())); - ll::logger.debug("\n{}", nbt.toSnbt() == nbt2.toSnbt()); + ll::logger.debug("\n{}", nbt.toSnbt() == nbt2.value().toSnbt()); ll::logger.debug( "\n{}", - *CompoundTag::fromBinaryNbt(nbt.toBinaryNbt()) == *CompoundTag::fromBinaryNbt(nbt2.toBinaryNbt()) + CompoundTag::fromBinaryNbt(nbt.toBinaryNbt()).value() + == CompoundTag::fromBinaryNbt(nbt2.value().toBinaryNbt()).value() ); - ll::logger.debug("\n{}", nbt.toBinaryNbt() == nbt2.toBinaryNbt()); + ll::logger.debug("\n{}", nbt.toBinaryNbt() == nbt2.value().toBinaryNbt()); ll::logger.debug( "\n{}", - *CompoundTag::fromNetworkNbt(nbt.toNetworkNbt()) == *CompoundTag::fromNetworkNbt(nbt2.toNetworkNbt()) + CompoundTag::fromNetworkNbt(nbt.toNetworkNbt()).value() + == CompoundTag::fromNetworkNbt(nbt2.value().toNetworkNbt()).value() ); - ll::logger.debug("\n{}", nbt.toNetworkNbt() == nbt2.toNetworkNbt()); + ll::logger.debug("\n{}", nbt.toNetworkNbt() == nbt2.value().toNetworkNbt()); ll::logger.debug(ColorFormat::AQUA); @@ -146,7 +169,7 @@ LL_AUTO_TYPE_INSTANCE_HOOK(NbtTest, HookPriority::Normal, ServerInstance, &Serve using namespace ll::string_utils; ll::logger.debug("\n{}", replaceAnsiToMcCode(nbt.toSnbt(SnbtFormat::Colored | SnbtFormat::Console))); - ll::logger.debug("\n{}", (nbt2.toSnbt(SnbtFormat::Colored))); + ll::logger.debug("\n{}", (nbt2.value().toSnbt(SnbtFormat::Colored))); ll::logger.debug( diff --git a/src/mc/common/wrapper/optional_ref.h b/src/mc/common/wrapper/optional_ref.h index a4660af112..e51cf23c39 100644 --- a/src/mc/common/wrapper/optional_ref.h +++ b/src/mc/common/wrapper/optional_ref.h @@ -43,10 +43,9 @@ class optional_ref { requires(std::is_convertible_v) [[nodiscard]] constexpr optional_ref(const std::optional& o) : mPtr(o ? &*o : nullptr) {} - template - [[nodiscard]] constexpr optional_ref(optional_ref> rhs) - requires(std::is_const_v) - : mPtr(rhs.as_ptr()) {} + template + requires(std::is_convertible_v) + [[nodiscard]] constexpr optional_ref(optional_ref rhs) : mPtr(rhs.as_ptr()) {} [[nodiscard]] constexpr optional_ref(optional_ref&&) noexcept = default; diff --git a/src/mc/nbt/CompoundTag.cpp b/src/mc/nbt/CompoundTag.cpp index 38425ad1f8..dff84704c4 100644 --- a/src/mc/nbt/CompoundTag.cpp +++ b/src/mc/nbt/CompoundTag.cpp @@ -1,15 +1,37 @@ #include "mc/nbt/CompoundTag.h" #include "mc/deps/core/utility/BinaryStream.h" #include "mc/nbt/NbtIo.h" +#include "mc/nbt/detail/SnbtErrorCode.h" #include "mc/util/BigEndianStringByteInput.h" #include "mc/util/BigEndianStringByteOutput.h" -std::unique_ptr CompoundTag::fromSnbt(std::string_view snbt) { - auto res = parseSnbt(snbt); - if (res && res->getId() == Tag::Type::Compound) { - return std::unique_ptr(static_cast(res.release())); +namespace ll::nbt::detail { +nonstd::expected parseSnbtValue(std::string_view&); +std::error_code makeSnbtError(SnbtErrorCode); +} // namespace ll::nbt::detail + +nonstd::expected +CompoundTagVariant::parse(std::string_view snbt, optional_ref parsedLength) { + char const* begin{snbt.data()}; + auto result = ll::nbt::detail::parseSnbtValue(snbt); + if (parsedLength) { + *parsedLength = snbt.data() - begin; } - return nullptr; + return result; +} + +nonstd::expected +CompoundTag::fromSnbt(std::string_view snbt, optional_ref parsedLength) { + return CompoundTagVariant::parse(snbt, parsedLength) + .and_then([](CompoundTagVariant&& val) -> nonstd::expected { + if (val.hold()) { + return std::move(val.get()); + } else { + return nonstd::make_unexpected( + ll::nbt::detail::makeSnbtError(ll::nbt::detail::SnbtErrorCode::NotTheExpectedType) + ); + } + }); } std::string CompoundTag::toBinaryNbt(bool isLittleEndian) const { @@ -23,25 +45,31 @@ std::string CompoundTag::toBinaryNbt(bool isLittleEndian) const { } return result; } -std::unique_ptr CompoundTag::fromBinaryNbt(std::string_view dataView, bool isLittleEndian) { + +nonstd::expected +CompoundTag::fromBinaryNbt(std::string_view dataView, bool isLittleEndian) { if (isLittleEndian) { auto io = StringByteInput{dataView}; - return NbtIo::read(io).value_or(nullptr); + return NbtIo::read(io).transform_error([](auto&& err) { return err.code(); } + ).transform([](auto&& val) { return std::move(*val); }); } else { auto io = BigEndianStringByteInput{dataView}; - return NbtIo::read(io).value_or(nullptr); + return NbtIo::read(io).transform_error([](auto&& err) { return err.code(); } + ).transform([](auto&& val) { return std::move(*val); }); } } + std::string CompoundTag::toNetworkNbt() const { BinaryStream stream; stream.writeType(*this); return stream.getAndReleaseData(); } -std::unique_ptr CompoundTag::fromNetworkNbt(std::string const& data) { - auto stream = ReadOnlyBinaryStream{data, false}; - auto res = std::make_unique(); - if (stream.readType(*res)) { - return res; + +nonstd::expected CompoundTag::fromNetworkNbt(std::string const& data) { + auto stream = ReadOnlyBinaryStream{data, false}; + nonstd::expected result; + if (auto r = stream.readType(*result); !r) { + result = nonstd::make_unexpected(r.error().code()); } - return nullptr; + return result; } diff --git a/src/mc/nbt/CompoundTag.h b/src/mc/nbt/CompoundTag.h index dbd4385925..4784fd5649 100644 --- a/src/mc/nbt/CompoundTag.h +++ b/src/mc/nbt/CompoundTag.h @@ -35,13 +35,15 @@ class CompoundTag : public ::Tag { [[nodiscard]] CompoundTagVariant const& at(std::string const& index) const { return mTags.at(index); } - LLNDAPI static std::unique_ptr fromSnbt(std::string_view snbt); + LLNDAPI static nonstd::expected + fromSnbt(std::string_view snbt, optional_ref parsedLength = std::nullopt); - LLNDAPI std::string toBinaryNbt(bool isLittleEndian = true) const; - LLNDAPI static std::unique_ptr fromBinaryNbt(std::string_view dataView, bool isLittleEndian = true); + LLNDAPI std::string toBinaryNbt(bool isLittleEndian = true) const; + LLNDAPI static nonstd::expected + fromBinaryNbt(std::string_view dataView, bool isLittleEndian = true); - LLNDAPI std::string toNetworkNbt() const; - LLNDAPI static std::unique_ptr fromNetworkNbt(std::string const& data); + LLNDAPI std::string toNetworkNbt() const; + LLNDAPI static nonstd::expected fromNetworkNbt(std::string const& data); public: // NOLINTBEGIN diff --git a/src/mc/nbt/CompoundTagVariant.h b/src/mc/nbt/CompoundTagVariant.h index 1444843a01..1d1a081841 100644 --- a/src/mc/nbt/CompoundTagVariant.h +++ b/src/mc/nbt/CompoundTagVariant.h @@ -4,6 +4,7 @@ #define COMPOUND_TAG_VARIANT_HEADER #include "mc/_HeaderOutputPredefine.h" +#include "mc/deps/core/common/bedrock/Result.h" #include "mc/nbt/ByteArrayTag.h" #include "mc/nbt/ByteTag.h" #include "mc/nbt/CompoundTag.h" @@ -18,12 +19,13 @@ #include "mc/nbt/StringTag.h" #include "ll/api/base/Concepts.h" +#include "ll/api/base/Meta.h" class CompoundTag; class CompoundTagVariant { public: - using Variant = std::variant< + using Types = ::ll::meta::TypeList< EndTag, ByteTag, ShortTag, @@ -37,8 +39,13 @@ class CompoundTagVariant { CompoundTag, IntArrayTag>; + using Variant = Types::to; + Variant mTagStorage; + LLNDAPI static nonstd::expected + parse(std::string_view snbt, optional_ref parsedLength = std::nullopt); + [[nodiscard]] constexpr CompoundTagVariant() = default; [[nodiscard]] constexpr CompoundTagVariant(CompoundTagVariant&&) = default; @@ -68,46 +75,9 @@ class CompoundTagVariant { if (!tag) { return; } - switch (tag->getId()) { - case Tag::Type::Byte: - mTagStorage = std::move((ByteTag&)*tag); - break; - case Tag::Type::Short: - mTagStorage = std::move((ShortTag&)*tag); - break; - case Tag::Type::Int: - mTagStorage = std::move((IntTag&)*tag); - break; - case Tag::Type::Int64: - mTagStorage = std::move((Int64Tag&)*tag); - break; - case Tag::Type::Float: - mTagStorage = std::move((FloatTag&)*tag); - break; - case Tag::Type::Double: - mTagStorage = std::move((DoubleTag&)*tag); - break; - case Tag::Type::ByteArray: - mTagStorage = std::move((ByteArrayTag&)*tag); - break; - case Tag::Type::String: - mTagStorage = std::move((StringTag&)*tag); - break; - case Tag::Type::List: - mTagStorage = std::move((ListTag&)*tag); - break; - case Tag::Type::Compound: - mTagStorage = std::move((CompoundTag&)*tag); - break; - case Tag::Type::IntArray: - mTagStorage = std::move((IntArrayTag&)*tag); - break; - case Tag::Type::End: - mTagStorage = std::move((EndTag&)*tag); - break; - default: - _STL_UNREACHABLE; - } + ::ll::meta::visitIndex(static_cast(tag->getId()), [&] { + mTagStorage = std::move((Types::get&)*tag); + }); } [[nodiscard]] CompoundTagVariant(std::unique_ptr const& tag) : CompoundTagVariant(tag ? tag->copy() : std::unique_ptr{}) {} @@ -222,13 +192,9 @@ class CompoundTagVariant { return std::get(mTagStorage); } - [[nodiscard]] Tag& get() { - return std::visit([](auto& val) -> Tag& { return (Tag&)val; }, mTagStorage); - } + [[nodiscard]] Tag& get() { return reinterpret_cast(mTagStorage); } - [[nodiscard]] Tag const& get() const { - return std::visit([](auto& val) -> Tag const& { return (Tag const&)val; }, mTagStorage); - } + [[nodiscard]] Tag const& get() const { return reinterpret_cast(mTagStorage); } template T> [[nodiscard]] T& emplace() { diff --git a/src/mc/nbt/Tag.cpp b/src/mc/nbt/Tag.cpp index ee75aa92e7..707aba22a3 100644 --- a/src/mc/nbt/Tag.cpp +++ b/src/mc/nbt/Tag.cpp @@ -2,55 +2,22 @@ #include "mc/nbt/CompoundTag.h" #include "mc/nbt/ListTag.h" namespace ll::nbt::detail { -std::string TypedToSnbt(ByteTag&, uchar, SnbtFormat); -std::string TypedToSnbt(ShortTag&, uchar, SnbtFormat); -std::string TypedToSnbt(IntTag&, uchar, SnbtFormat); -std::string TypedToSnbt(Int64Tag&, uchar, SnbtFormat); -std::string TypedToSnbt(FloatTag&, uchar, SnbtFormat); -std::string TypedToSnbt(DoubleTag&, uchar, SnbtFormat); -std::string TypedToSnbt(ByteArrayTag&, uchar, SnbtFormat); -std::string TypedToSnbt(StringTag&, uchar, SnbtFormat); -std::string TypedToSnbt(ListTag&, uchar, SnbtFormat); -std::string TypedToSnbt(CompoundTag&, uchar, SnbtFormat); -std::string TypedToSnbt(IntArrayTag&, uchar, SnbtFormat); -std::string TypedToSnbt(EndTag&, uchar, SnbtFormat); -std::optional parseSnbtValue(std::string_view&); +std::string TypedToSnbt(ByteTag&, uchar, SnbtFormat); +std::string TypedToSnbt(ShortTag&, uchar, SnbtFormat); +std::string TypedToSnbt(IntTag&, uchar, SnbtFormat); +std::string TypedToSnbt(Int64Tag&, uchar, SnbtFormat); +std::string TypedToSnbt(FloatTag&, uchar, SnbtFormat); +std::string TypedToSnbt(DoubleTag&, uchar, SnbtFormat); +std::string TypedToSnbt(ByteArrayTag&, uchar, SnbtFormat); +std::string TypedToSnbt(StringTag&, uchar, SnbtFormat); +std::string TypedToSnbt(ListTag&, uchar, SnbtFormat); +std::string TypedToSnbt(CompoundTag&, uchar, SnbtFormat); +std::string TypedToSnbt(IntArrayTag&, uchar, SnbtFormat); +std::string TypedToSnbt(EndTag&, uchar, SnbtFormat); } // namespace ll::nbt::detail std::string Tag::toSnbt(SnbtFormat snbtFormat, uchar indent) const { - switch (getId()) { - case Type::Byte: - return ll::nbt::detail::TypedToSnbt(*(ByteTag*)this, indent, snbtFormat); - case Type::Short: - return ll::nbt::detail::TypedToSnbt(*(ShortTag*)this, indent, snbtFormat); - case Type::Int: - return ll::nbt::detail::TypedToSnbt(*(IntTag*)this, indent, snbtFormat); - case Type::Int64: - return ll::nbt::detail::TypedToSnbt(*(Int64Tag*)this, indent, snbtFormat); - case Type::Float: - return ll::nbt::detail::TypedToSnbt(*(FloatTag*)this, indent, snbtFormat); - case Type::Double: - return ll::nbt::detail::TypedToSnbt(*(DoubleTag*)this, indent, snbtFormat); - case Type::ByteArray: - return ll::nbt::detail::TypedToSnbt(*(ByteArrayTag*)this, indent, snbtFormat); - case Type::String: - return ll::nbt::detail::TypedToSnbt(*(StringTag*)this, indent, snbtFormat); - case Type::List: - return ll::nbt::detail::TypedToSnbt(*(ListTag*)this, indent, snbtFormat); - case Type::Compound: - return ll::nbt::detail::TypedToSnbt(*(CompoundTag*)this, indent, snbtFormat); - case Type::IntArray: - return ll::nbt::detail::TypedToSnbt(*(IntArrayTag*)this, indent, snbtFormat); - case Type::End: - default: - return ll::nbt::detail::TypedToSnbt(*(EndTag*)this, indent, snbtFormat); - } -} - -std::unique_ptr Tag::parseSnbt(std::string_view s) { - auto tag = ll::nbt::detail::parseSnbtValue(s); - if (tag) { - return (*std::move(tag)).toUnique(); - } - return nullptr; + return ::ll::meta::visitIndex(static_cast(getId()), [&] { + return ll::nbt::detail::TypedToSnbt(*(CompoundTagVariant::Types::get*)this, indent, snbtFormat); + }); } diff --git a/src/mc/nbt/Tag.h b/src/mc/nbt/Tag.h index 21fdc23fbe..bf3892f1eb 100644 --- a/src/mc/nbt/Tag.h +++ b/src/mc/nbt/Tag.h @@ -80,8 +80,6 @@ class Tag { LLNDAPI std::string toSnbt(SnbtFormat snbtFormat = SnbtFormat::PrettyFilePrint, uchar indent = 4) const; - LLNDAPI static std::unique_ptr parseSnbt(std::string_view str); - public: // NOLINTBEGIN // vIndex: 0, symbol: ??1Tag@@UEAA@XZ diff --git a/src/mc/nbt/SnbtDumpImpl.cpp b/src/mc/nbt/detail/SnbtDumpImpl.cpp similarity index 100% rename from src/mc/nbt/SnbtDumpImpl.cpp rename to src/mc/nbt/detail/SnbtDumpImpl.cpp diff --git a/src/mc/nbt/detail/SnbtErrorCode.cpp b/src/mc/nbt/detail/SnbtErrorCode.cpp new file mode 100644 index 0000000000..5cb8ca7615 --- /dev/null +++ b/src/mc/nbt/detail/SnbtErrorCode.cpp @@ -0,0 +1,57 @@ +#include "mc/nbt/detail/SnbtErrorCode.h" + +#include + +namespace ll::nbt::detail { +struct snbt_category : public std::error_category { + constexpr snbt_category() noexcept : error_category() {} + [[nodiscard]] std::string message(int errCode) const override { + using enum SnbtErrorCode; + switch ((SnbtErrorCode)errCode) { + case NoError: + return "success"; + case NotTheExpectedType: + return "Not the expected type"; + case UnexpectedEofEncountered: + return "unexpected end-of-file encountered"; + case UnterminatedComment: + return "unterminated comment, missing closing '*/'"; + case NotANumber: + return "not a number"; + case NumberOutOfRange: + return "number out of range"; + case NotAUnicodeEncodedHex: + return "'\\u' must be followed by 4 hex digits"; + case IllegalOmittedQuotesString: + return "strings omitting quotes must be trivial characters"; + case QuoteEscapeNotMatch: + return "quotation marks illegally escaped"; + case Utf8Codepoint2NotInRange: + return "surrogate U+D800..U+DBFF must be followed by U+DC00..U+DFFF"; + case Utf8Codepoint2Missing: + return "missing U+DC00..U+DFFF after U+D800..U+DBFF"; + case Utf8Codepoint1Missing: + return "surrogate U+DC00..U+DFFF must follow U+D800..U+DBFF"; + case IllegalEscape: + return "forbidden character after backslash"; + case IllegalUtf8Character: + return "ill-formed UTF-8 byte"; + case UnclosedBracket: + return "brackets are not closed"; + case IllegalKeyValueSeparator: + return "illegal key-value pair separator"; + case EmptyString: + return "empty string"; + default: + return "unknown error"; + } + } + [[nodiscard]] char const* name() const noexcept override { return "snbt"; } +}; +inline std::error_category const& snbt_category() noexcept { + return std::_Immortalize_memcpy_image(); +} + +std::error_code makeSnbtError(SnbtErrorCode code) { return std::error_code{std::to_underlying(code), snbt_category()}; } + +} // namespace ll::nbt::detail diff --git a/src/mc/nbt/detail/SnbtErrorCode.h b/src/mc/nbt/detail/SnbtErrorCode.h new file mode 100644 index 0000000000..10aad0cee1 --- /dev/null +++ b/src/mc/nbt/detail/SnbtErrorCode.h @@ -0,0 +1,23 @@ +#pragma once + +namespace ll::nbt::detail { +enum class SnbtErrorCode : int { + NoError, + NotTheExpectedType, + UnexpectedEofEncountered, + UnterminatedComment, + NotANumber, + NumberOutOfRange, + NotAUnicodeEncodedHex, + IllegalOmittedQuotesString, + QuoteEscapeNotMatch, + Utf8Codepoint2NotInRange, + Utf8Codepoint2Missing, + Utf8Codepoint1Missing, + IllegalEscape, + IllegalUtf8Character, + UnclosedBracket, + IllegalKeyValueSeparator, + EmptyString, +}; +} diff --git a/src/mc/nbt/SnbtParseImpl.cpp b/src/mc/nbt/detail/SnbtParseImpl.cpp similarity index 61% rename from src/mc/nbt/SnbtParseImpl.cpp rename to src/mc/nbt/detail/SnbtParseImpl.cpp index ae90c3e841..9564843c99 100644 --- a/src/mc/nbt/SnbtParseImpl.cpp +++ b/src/mc/nbt/detail/SnbtParseImpl.cpp @@ -1,17 +1,22 @@ #include "ll/api/utils/Base64Utils.h" #include "ll/api/utils/HashUtils.h" #include "mc/nbt/CompoundTag.h" +#include "mc/nbt/detail/SnbtErrorCode.h" namespace ll::nbt::detail { -std::optional parseSnbtValue(std::string_view& s); +nonstd::expected parseSnbtValue(std::string_view& s); +nonstd::expected parseSnbtValueNonSkip(std::string_view& s); + +std::error_code makeSnbtError(SnbtErrorCode); bool isTrivialNbtStringChar(char c) { return isalnum(c) || c == '-' || c == '+' || c == '_' || c == '.'; } } // namespace ll::nbt::detail namespace ll { using namespace ll::hash_literals; +using namespace ll::nbt::detail; -bool scanComment(std::string_view& s) noexcept { +nonstd::expected scanComment(std::string_view& s) noexcept { size_t i = 0; switch (s[i++]) { // multi-line comments skip input until */ is read @@ -19,14 +24,13 @@ bool scanComment(std::string_view& s) noexcept { while (i < s.size()) { switch (s[i++]) { case std::char_traits::eof(): - case '\0': { - return false; - } + case '\0': + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::UnexpectedEofEncountered)); case '*': { switch (s[i]) { case '/': s.remove_prefix(std::min(i + 1, s.size())); - return true; + return {}; default: continue; @@ -54,7 +58,7 @@ bool scanComment(std::string_view& s) noexcept { case std::char_traits::eof(): case '\0': s.remove_prefix(std::min(i, s.size())); - return true; + return {}; default: break; @@ -63,26 +67,25 @@ bool scanComment(std::string_view& s) noexcept { break; } } - return false; + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::UnterminatedComment)); } -bool scanSpaces(std::string_view& s) noexcept { +void scanSpaces(std::string_view& s) noexcept { size_t i = 0; while (i <= s.size() && std::isspace(s[i++])) {} s.remove_prefix(std::min(i - 1, s.size())); - return true; } -bool skipWhitespace(std::string_view& s) { +nonstd::expected skipWhitespace(std::string_view& s) { scanSpaces(s); while (s.front() == '/' || s.front() == '#' || s.front() == ';') { s.remove_prefix(1); - if (!scanComment(s)) { - return false; + if (auto res = scanComment(s); !res) { + return res; } scanSpaces(s); } - return true; + return {}; } char get(std::string_view& s) { @@ -92,7 +95,7 @@ char get(std::string_view& s) { return c; } -std::optional stold(std::string_view const& s, size_t& n) { +nonstd::expected stold(std::string_view const& s, size_t& n) { int& errnoRef = errno; // Nonzero cost, pay it once char const* ptr = s.data(); char* eptr; @@ -100,11 +103,11 @@ std::optional stold(std::string_view const& s, size_t& n) { const ldouble res = strtold(ptr, &eptr); if (ptr == eptr) { - return std::nullopt; + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::NotANumber)); } if (errnoRef == ERANGE) { - return std::nullopt; + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::NumberOutOfRange)); } n = static_cast(eptr - ptr); @@ -112,7 +115,7 @@ std::optional stold(std::string_view const& s, size_t& n) { return res; } -std::optional parseNumber(std::string_view& s) { +nonstd::expected parseNumber(std::string_view& s) { size_t n = 0; @@ -121,7 +124,7 @@ std::optional parseNumber(std::string_view& s) { if (auto tmp = stold(s, n); tmp) { res = *tmp; } else { - return std::nullopt; + return nonstd::make_unexpected(tmp.error()); } bool isInt = true; @@ -200,7 +203,7 @@ std::optional parseNumber(std::string_view& s) { } } -int get_codepoint(std::string_view& s) { +nonstd::expected get_codepoint(std::string_view& s) { int codepoint = 0; for (const auto factor : {12u, 8u, 4u, 0u}) { @@ -213,21 +216,20 @@ int get_codepoint(std::string_view& s) { } else if (current >= 'a' && current <= 'f') { codepoint += static_cast((static_cast(current) - 0x57u) << factor); } else { - return -1; + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::NotAUnicodeEncodedHex)); } } return codepoint; } -std::optional parseString(std::string_view& s) { +nonstd::expected parseString(std::string_view& s) { char starts = s.front(); - if (starts != '\"' && starts != '\'' && !ll::nbt::detail::isTrivialNbtStringChar(starts)) { - return std::nullopt; + if (starts != '\"' && starts != '\'' && !isTrivialNbtStringChar(starts)) { + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::IllegalOmittedQuotesString)); } - std::string res; if (starts == '\"' || starts == '\'') { @@ -235,7 +237,7 @@ std::optional parseString(std::string_view& s) { } else { while (!s.empty()) { auto fc = s.front(); - if (ll::nbt::detail::isTrivialNbtStringChar(fc)) { + if (isTrivialNbtStringChar(fc)) { s.remove_prefix(1); res.push_back(fc); } else { @@ -274,8 +276,8 @@ std::optional parseString(std::string_view& s) { // multiline string case '\n': case '\r': - if (!skipWhitespace(s)) { - return std::nullopt; + if (auto skipped = skipWhitespace(s); !skipped) { + return nonstd::make_unexpected(skipped.error()); } break; @@ -284,14 +286,14 @@ std::optional parseString(std::string_view& s) { if (starts == '\"') { res.push_back('\"'); } else { - return std::nullopt; + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::QuoteEscapeNotMatch)); } } break; case '\'': { if (starts == '\'') { res.push_back('\''); } else { - return std::nullopt; + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::QuoteEscapeNotMatch)); } } break; // reverse solidus @@ -329,24 +331,24 @@ std::optional parseString(std::string_view& s) { // unicode escapes case 'u': { - - const int codepoint1 = get_codepoint(s); - int codepoint = codepoint1; // start with codepoint1 - - if (codepoint1 == -1) { - return std::nullopt; + int codepoint1; + if (auto getted = get_codepoint(s); getted) { + codepoint1 = *getted; + } else { + return nonstd::make_unexpected(getted.error()); } + int codepoint = codepoint1; // start with codepoint1 // check if code point is a high surrogate if (0xD800 <= codepoint1 && codepoint1 <= 0xDBFF) { // expect next \uxxxx entry if (get(s) == '\\' && get(s) == 'u') { - const int codepoint2 = get_codepoint(s); - - if (codepoint2 == -1) { - return std::nullopt; + int codepoint2; + if (auto getted = get_codepoint(s); getted) { + codepoint2 = *getted; + } else { + return nonstd::make_unexpected(getted.error()); } - // check if codepoint2 is a low surrogate if ((0xDC00 <= codepoint2 && codepoint2 <= 0xDFFF)) { // overwrite codepoint @@ -361,14 +363,14 @@ std::optional parseString(std::string_view& s) { - 0x35FDC00u ); } else { - return std::nullopt; + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::Utf8Codepoint2NotInRange)); } } else { - return std::nullopt; + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::Utf8Codepoint2Missing)); } } else { if (0xDC00 <= codepoint1 && codepoint1 <= 0xDFFF) { - return std::nullopt; + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::Utf8Codepoint1Missing)); } } @@ -396,7 +398,7 @@ std::optional parseString(std::string_view& s) { // other characters after escape default: - return std::nullopt; + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::IllegalEscape)); } } break; default: @@ -404,42 +406,37 @@ std::optional parseString(std::string_view& s) { break; } } - return std::nullopt; + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::IllegalUtf8Character)); } - - -std::optional parseByteArray(std::string_view& s) { - if (!skipWhitespace(s)) { - return std::nullopt; +template +nonstd::expected parseNumArray(std::string_view& s, F&& f) { + if (auto skipped = skipWhitespace(s); !skipped) { + return nonstd::make_unexpected(skipped.error()); } - if (s.front() == ']') { - return ByteArrayTag{}; + return R{}; } - - auto res = std::vector{}; - res.clear(); - + T res; while (!s.empty()) { - - if (!skipWhitespace(s)) { - return std::nullopt; + if (auto skipped = skipWhitespace(s); !skipped) { + return nonstd::make_unexpected(skipped.error()); } if (s.front() == ']') { s.remove_prefix(1); return res; } - auto value = parseNumber(s); - if (!skipWhitespace(s)) { - return std::nullopt; + if (auto value = parseNumber(s); value) { + if (!value->hold()) { + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::NotTheExpectedType)); + } else { + std::forward(f)(res, value->get()); + } + } else { + return nonstd::make_unexpected(value.error()); } - - if (!value || !value->hold()) { - return std::nullopt; + if (auto skipped = skipWhitespace(s); !skipped) { + return nonstd::make_unexpected(skipped.error()); } - - res.emplace_back(value->get()); - switch (s.front()) { case ']': s.remove_prefix(1); @@ -450,228 +447,146 @@ std::optional parseByteArray(std::string_view& s) { break; } } - - return std::nullopt; + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::UnclosedBracket)); } -std::optional parseIntArray(std::string_view& s) { - if (!skipWhitespace(s)) { - return std::nullopt; - } - - if (s.front() == ']') { - return IntArrayTag{}; - } - - auto res = std::vector{}; - res.clear(); - - while (!s.empty()) { - - if (!skipWhitespace(s)) { - return std::nullopt; - } - if (s.front() == ']') { - s.remove_prefix(1); - return res; - } - auto value = parseNumber(s); - if (!skipWhitespace(s)) { - return std::nullopt; - } - - if (!value || !value->hold()) { - return std::nullopt; - } - - res.emplace_back(value->get()); - - switch (s.front()) { - case ']': - s.remove_prefix(1); - return res; - case ',': - s.remove_prefix(1); - default: - break; - } - } - - return std::nullopt; +nonstd::expected parseByteArray(std::string_view& s) { + return parseNumArray, ByteTag>(s, [](auto&& vec, auto&& num) { + vec.emplace_back(num); + }); } -std::optional parseLongArray(std::string_view& s) { - if (!skipWhitespace(s)) { - return std::nullopt; - } - - if (s.front() == ']') { - return ByteArrayTag{}; - } - - auto res = std::vector{}; - res.clear(); - - while (!s.empty()) { - - if (!skipWhitespace(s)) { - return std::nullopt; - } - if (s.front() == ']') { - s.remove_prefix(1); - return res; - } - auto value = parseNumber(s); - if (!skipWhitespace(s)) { - return std::nullopt; - } - - if (!value || !value->hold()) { - return std::nullopt; - } - - int64 val = value->get(); +nonstd::expected parseIntArray(std::string_view& s) { + return parseNumArray, IntTag>(s, [](auto&& vec, auto&& num) { + vec.emplace_back(num); + }); +} +nonstd::expected parseLongArray(std::string_view& s) { + return parseNumArray, Int64Tag>(s, [](auto&& vec, auto&& num) { + int64 val = num; for (int j = 7; j >= 0; j--) { - res.emplace_back((uchar)(val >> (uint64)(8 * j))); - } - - switch (s.front()) { - case ']': - s.remove_prefix(1); - return res; - case ',': - s.remove_prefix(1); - default: - break; + vec.emplace_back((uchar)(val >> (uint64)(8 * j))); } - } - - return std::nullopt; + }); } -std::optional parseList(std::string_view& s) { - if (s.starts_with("[B;")) { - s.remove_prefix(3); - if (auto array = parseByteArray(s); array) { - return *array; - } - return std::nullopt; - } else if (s.starts_with("[I;")) { - s.remove_prefix(3); - if (auto array = parseIntArray(s); array) { - return *array; - } - return std::nullopt; - } else if (s.starts_with("[L;")) { - s.remove_prefix(3); - if (auto array = parseLongArray(s); array) { - return *array; +nonstd::expected parseList(std::string_view& s) { + if (s.starts_with("[ /*") && (s.size() > 7 && s[6] == '*' && s[7] == '/')) { + s.remove_prefix(4); + } else { + s.remove_prefix(1); + } + if (s.starts_with("B;")) { + s.remove_prefix(2); + if (s.starts_with("*/")) { + s.remove_prefix(2); } - return std::nullopt; - } else if (s.starts_with("[ /*B;*/")) { - s.remove_prefix(8); if (auto array = parseByteArray(s); array) { return *array; + } else { + return nonstd::make_unexpected(array.error()); + } + } else if (s.starts_with("I;")) { + s.remove_prefix(2); + if (s.starts_with("*/")) { + s.remove_prefix(2); } - return std::nullopt; - } else if (s.starts_with("[ /*I;*/")) { - s.remove_prefix(8); if (auto array = parseIntArray(s); array) { return *array; + } else { + return nonstd::make_unexpected(array.error()); + } + } else if (s.starts_with("L;")) { + s.remove_prefix(2); + if (s.starts_with("*/")) { + s.remove_prefix(2); } - return std::nullopt; - } else if (s.starts_with("[ /*L;*/")) { - s.remove_prefix(8); if (auto array = parseLongArray(s); array) { return *array; + } else { + return nonstd::make_unexpected(array.error()); } - return std::nullopt; } - get(s); - if (!skipWhitespace(s)) { - return std::nullopt; + if (auto skipped = skipWhitespace(s); !skipped) { + return nonstd::make_unexpected(skipped.error()); } - if (s.front() == ']') { s.remove_prefix(1); return ListTag{}; } - auto res = ListTag{}; - res.mList.clear(); bool settedType = false; while (!s.empty()) { - - auto value = ll::nbt::detail::parseSnbtValue(s); - - if (!value) { + if (auto skipped = skipWhitespace(s); !skipped) { + return nonstd::make_unexpected(skipped.error()); + } + if (s.front() == ']') { + s.remove_prefix(1); return res; } + auto value = parseSnbtValueNonSkip(s); + if (!value) { + return nonstd::make_unexpected(value.error()); + } if (!settedType) { res.mType = value->index(); settedType = true; } - res.mList.emplace_back(value->toUnique()); - + if (auto skipped = skipWhitespace(s); !skipped) { + return nonstd::make_unexpected(skipped.error()); + } switch (s.front()) { case ']': s.remove_prefix(1); return res; - case ',': + case ',': { s.remove_prefix(1); + } default: break; } } - - return std::nullopt; + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::UnclosedBracket)); } -std::optional parseCompound(std::string_view& s) { +nonstd::expected parseCompound(std::string_view& s) { get(s); - if (!skipWhitespace(s)) { - return std::nullopt; + if (auto skipped = skipWhitespace(s); !skipped) { + return nonstd::make_unexpected(skipped.error()); } - if (s.front() == '}') { s.remove_prefix(1); return CompoundTag{}; } - auto res = CompoundTag{}; + CompoundTag res; while (!s.empty()) { - if (!skipWhitespace(s)) { - return std::nullopt; + if (auto skipped = skipWhitespace(s); !skipped) { + return nonstd::make_unexpected(skipped.error()); } if (s.front() == '}') { s.remove_prefix(1); return res; } auto key = parseString(s); - if (!key) { - return std::nullopt; + return nonstd::make_unexpected(key.error()); } - - if (!skipWhitespace(s)) { - return std::nullopt; + if (auto skipped = skipWhitespace(s); !skipped) { + return nonstd::make_unexpected(skipped.error()); } - auto p = get(s); if (p != ':' && p != '=') { - return std::nullopt; + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::IllegalKeyValueSeparator)); } - - auto value = ll::nbt::detail::parseSnbtValue(s); - + auto value = parseSnbtValue(s); if (!value) { - return res; + return nonstd::make_unexpected(value.error()); } - res[*key] = *value; switch (s.front()) { @@ -684,24 +599,40 @@ std::optional parseCompound(std::string_view& s) { break; } } - - return std::nullopt; + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::UnclosedBracket)); } } // namespace ll namespace ll::nbt::detail { -std::optional parseSnbtValue(std::string_view& s) { - if (!skipWhitespace(s) || s.empty()) { - return std::nullopt; +nonstd::expected parseSnbtValueNonSkip(std::string_view& s) { + if (s.empty()) { + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::EmptyString)); } - std::optional res = std::nullopt; - switch (s.front()) { + case 't': + if (s.starts_with("true")) { + s.remove_prefix(4); + return ByteTag{true}; + } + break; + case 'f': + if (s.starts_with("false")) { + s.remove_prefix(5); + return ByteTag{false}; + } + break; + case 'n': + if (s.starts_with("null")) { + s.remove_prefix(4); + return EndTag{}; + } + break; case ']': case '}': s.remove_prefix(1); + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::UnclosedBracket)); + case std::char_traits::eof(): case '\0': - return std::nullopt; - + return nonstd::make_unexpected(makeSnbtError(SnbtErrorCode::UnexpectedEofEncountered)); case '-': case '0': case '1': @@ -713,45 +644,27 @@ std::optional parseSnbtValue(std::string_view& s) { case '7': case '8': case '9': - res = parseNumber(s); - break; + return parseNumber(s); case '[': - if (auto list = parseList(s); list) { - res = *list; - break; - } else { - return std::nullopt; - } + return parseList(s); case '{': - if (auto compound = parseCompound(s); compound) { - res = *compound; - break; - } else { - return std::nullopt; - } + return parseCompound(s); default: break; } - + return parseString(s); +} +nonstd::expected parseSnbtValue(std::string_view& s) { + if (auto skipped = skipWhitespace(s); !skipped) { + return nonstd::make_unexpected(skipped.error()); + } + auto res = parseSnbtValueNonSkip(s); if (!res) { - if (s.starts_with("true")) { - s.remove_prefix(4); - res = ByteTag{true}; - } else if (s.starts_with("false")) { - s.remove_prefix(5); - res = ByteTag{false}; - } else if (s.starts_with("null")) { - s.remove_prefix(4); - res = EndTag{}; - } else if (auto str = parseString(s); str) { - res = StringTag{*str}; - } + return res; } - - if (!skipWhitespace(s)) { - return std::nullopt; + if (auto skipped = skipWhitespace(s); !skipped) { + return nonstd::make_unexpected(skipped.error()); } - return res; } } // namespace ll::nbt::detail diff --git a/src/mc/network/BatchedNetworkPeer.h b/src/mc/network/BatchedNetworkPeer.h index eb8a14f300..d80bb9746d 100644 --- a/src/mc/network/BatchedNetworkPeer.h +++ b/src/mc/network/BatchedNetworkPeer.h @@ -1,8 +1,8 @@ #pragma once #include "mc/_HeaderOutputPredefine.h" -#include "mc/deps/core/utility/BinaryStream.h" #include "mc/deps/core/threading/TaskGroup.h" +#include "mc/deps/core/utility/BinaryStream.h" #include "mc/external/spsc_queue/SPSCQueue.h" // auto generated inclusion list diff --git a/xmake.lua b/xmake.lua index 639c811e68..b35eddde39 100644 --- a/xmake.lua +++ b/xmake.lua @@ -13,7 +13,7 @@ add_requires("magic_enum") add_requires("nlohmann_json") add_requires("rapidjson v1.1.0") add_requires("mimalloc") -add_requires("cpp-httplib", {configs={ssl=true}}) +add_requires("cpp-httplib 0.14.0", {configs={ssl=true}}) -- Dependencies from liteldev-repo. add_requires("pcg_cpp") From a7a9c1811ff235f47de2ec4617fd0c302da7b010 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Wed, 10 Apr 2024 22:20:58 +0800 Subject: [PATCH 29/44] refactor: refactoring errors --- src/ll/api/command/CommandRegistrar.cpp | 2 +- src/ll/api/command/Overload.h | 3 + src/ll/api/command/OverloadData.cpp | 9 +- src/ll/api/command/runtime/RuntimeCommand.cpp | 4 +- src/ll/api/data/Version.h | 154 +++++++++--------- src/ll/api/memory/Closure.cpp | 2 +- src/ll/api/memory/Memory.cpp | 2 +- src/ll/api/service/PlayerInfo.h | 1 + src/ll/api/thread/TickSyncTaskPool.cpp | 4 +- src/ll/api/utils/StringUtils.cpp | 16 +- src/ll/api/utils/StringUtils.h | 59 +++---- .../commands/BlockStateCommandParam.cpp | 9 +- .../server/commands/BlockStateCommandParam.h | 6 +- 13 files changed, 129 insertions(+), 142 deletions(-) diff --git a/src/ll/api/command/CommandRegistrar.cpp b/src/ll/api/command/CommandRegistrar.cpp index d3bb0669cf..611c1241e4 100644 --- a/src/ll/api/command/CommandRegistrar.cpp +++ b/src/ll/api/command/CommandRegistrar.cpp @@ -48,7 +48,7 @@ CommandHandle& CommandRegistrar::getOrCreateCommand( registry.registerCommand(name, description.c_str(), requirement, flag); signature = registry.findCommand(name); if (!signature) { - throw std::runtime_error{"failed to register command " + name}; + std::terminate(); } return impl->commands.try_emplace(signature->name, *this, *signature, true).first->second; } else if (impl->commands.contains(signature->name)) { diff --git a/src/ll/api/command/Overload.h b/src/ll/api/command/Overload.h index ca9c02673f..2a5a9e574e 100644 --- a/src/ll/api/command/Overload.h +++ b/src/ll/api/command/Overload.h @@ -76,6 +76,9 @@ class Overload : private OverloadData { true ); }); + if (!hasName) { + std::terminate(); + } return *this; } diff --git a/src/ll/api/command/OverloadData.cpp b/src/ll/api/command/OverloadData.cpp index 76e8e5065b..5f373752b2 100644 --- a/src/ll/api/command/OverloadData.cpp +++ b/src/ll/api/command/OverloadData.cpp @@ -45,14 +45,7 @@ CommandHandle& OverloadData::getHandle() { std::lock_guard OverloadData::lock() { return std::lock_guard{impl->mutex}; } -CommandParameterData& OverloadData::back() { - std::lock_guard lock{impl->mutex}; - if (!impl->params.empty()) { - return impl->params.back(); - } else { - throw std::runtime_error("empty overload"); - } -} +CommandParameterData& OverloadData::back() { return impl->params.back(); } CommandParameterData& OverloadData::addParamImpl( Bedrock::typeid_t id, diff --git a/src/ll/api/command/runtime/RuntimeCommand.cpp b/src/ll/api/command/runtime/RuntimeCommand.cpp index fd1cca64fc..277d981631 100644 --- a/src/ll/api/command/runtime/RuntimeCommand.cpp +++ b/src/ll/api/command/runtime/RuntimeCommand.cpp @@ -43,7 +43,7 @@ void RuntimeCommand::execute(class CommandOrigin const& origin, class CommandOut ParamStorageType const& RuntimeCommand::operator[](std::string_view name) const { auto iter = paramIndexMap.find(name); if (iter == paramIndexMap.end()) { - throw std::invalid_argument("invalid param " + std::string(name)); + std::_Xout_of_range("invalid unordered_map key"); } return reinterpret_cast( reinterpret_cast(this) + sizeof(RuntimeCommand) @@ -51,7 +51,7 @@ ParamStorageType const& RuntimeCommand::operator[](std::string_view name) const } ParamStorageType const& RuntimeCommand::operator[](size_t idx) const { if (idx >= paramCount) { - throw std::out_of_range{"idx out of range"}; + std::_Xout_of_range("invalid index"); } return reinterpret_cast(reinterpret_cast(this) + sizeof(RuntimeCommand))[idx]; } diff --git a/src/ll/api/data/Version.h b/src/ll/api/data/Version.h index 43fa864db4..b1353d918e 100644 --- a/src/ll/api/data/Version.h +++ b/src/ll/api/data/Version.h @@ -19,10 +19,23 @@ #include "ll/api/utils/HashUtils.h" #include "ll/api/utils/StringUtils.h" +#include "mc/external/expected_lite/expected.h" + namespace ll::data { namespace detail { +struct from_chars_result : std::from_chars_result { + [[nodiscard]] constexpr operator bool() const noexcept { // NOLINT(google-explicit-constructor) + return ec == std::errc{}; + } + constexpr void value() const { + if (ec != std::errc{}) { + throw std::system_error{std::make_error_code(ec)}; + } + } +}; + // Min version string length = 1() + 1(.) + 1() + 1(.) + 1() = 5. inline constexpr auto min_version_string_length = 5; @@ -34,21 +47,7 @@ constexpr bool is_letter(char c) noexcept { return (c >= 'A' && c <= 'Z') || (c constexpr std::uint16_t to_digit(char c) noexcept { return static_cast(c - '0'); } -constexpr char const* from_chars(char const* first, char const* last, std::uint16_t& d) noexcept { - if (first != last && is_digit(*first)) { - std::int32_t t = 0; - for (; first != last && is_digit(*first); ++first) { - t = t * 10 + to_digit(*first); - } - if (t <= (std::numeric_limits::max)()) { - d = static_cast(t); - return first; - } - } - return nullptr; -} - -constexpr char const* from_chars(char const* first, char const* last, std::optional& d) noexcept { +constexpr from_chars_result from_chars(char const* first, char const* last, std::uint16_t& d) noexcept { if (first != last && is_digit(*first)) { std::int32_t t = 0; for (; first != last && is_digit(*first); ++first) { @@ -56,34 +55,24 @@ constexpr char const* from_chars(char const* first, char const* last, std::optio } if (t <= (std::numeric_limits::max)()) { d = static_cast(t); - return first; + return {first}; + } else { + return {first, std::errc::result_out_of_range}; } } - return nullptr; + return {first, std::errc::invalid_argument}; } - constexpr bool check_delimiter(char const* first, char const* last, char d) noexcept { return first != last && first != nullptr && *first == d; } - -struct from_chars_result : std::from_chars_result { - [[nodiscard]] constexpr operator bool() const noexcept { // NOLINT(google-explicit-constructor) - return ec == std::errc{}; - } -}; - } // namespace detail -struct VersionParseError : std::runtime_error { - explicit VersionParseError(const std::string& what_arg) : std::runtime_error(what_arg) {} -}; - struct PreRelease { std::vector> values; - constexpr PreRelease() = default; - constexpr ~PreRelease() = default; - constexpr explicit PreRelease(std::string_view s) { from_string(s); } + constexpr PreRelease() noexcept = default; + constexpr ~PreRelease() = default; + constexpr explicit PreRelease(std::string_view s) noexcept { from_string(s); } constexpr std::strong_ordering operator<=>(PreRelease const& other) const noexcept { for (std::size_t i = 0; i < std::min(values.size(), other.values.size()); ++i) { @@ -116,24 +105,22 @@ struct PreRelease { std::string s{begin, first}; auto tokens = ll::string_utils::splitByPattern(s, "."); for (auto const& token : tokens) { - std::optional value; + std::uint16_t value; if (detail::from_chars(token.data(), token.data() + token.length(), value); value) { - values.emplace_back(*value); + values.emplace_back(value); } else { values.emplace_back(std::string{token}); } } - return {first, std::errc{}}; + return {first}; } [[nodiscard]] constexpr bool from_string_noexcept(std::string_view str) noexcept { return from_chars(str.data(), str.data() + str.length()); } - constexpr PreRelease& from_string(std::string_view str) { - if (!from_string_noexcept(str)) { - throw VersionParseError("Invalid version string."); - } + constexpr PreRelease& from_string(std::string_view str) noexcept { + from_chars(str.data(), str.data() + str.length()).value(); return *this; } @@ -198,42 +185,59 @@ struct Version { return {first, std::errc::invalid_argument}; } auto next = first; - if (next = detail::from_chars(next, last, major); detail::check_delimiter(next, last, '.')) { - if (next = detail::from_chars(++next, last, minor); detail::check_delimiter(next, last, '.')) { - if (next = detail::from_chars(++next, last, patch); next == last) { - return {next, std::errc{}}; - } - if (!next) { - return {nullptr, std::errc::invalid_argument}; - } - if (detail::check_delimiter(next, last, '-')) { - PreRelease pre; - auto result = pre.from_chars(++next, last); - if (!result) return result; - if (pre.values.empty()) return {next, std::errc::invalid_argument}; - preRelease = pre; - next = result.ptr; - if (result && next == last) { - return {next, std::errc{}}; - } - } - if (detail::check_delimiter(next, last, '+')) { - build = {++next, static_cast(last - next)}; - if (build->empty()) { - return {nullptr, std::errc::invalid_argument}; - } - next = last; - if (std::any_of(build->begin(), build->end(), [](char c) { - return !detail::is_digit(c) && !detail::is_letter(c); - })) { - return {nullptr, std::errc::invalid_argument}; - } - } - if (next == last) { - return {next, std::errc{}}; - } + if (auto result = detail::from_chars(next, last, major); result) { + next = result.ptr; + if (!detail::check_delimiter(next, last, '.')) { + return {next, std::errc::invalid_argument}; } + ++next; + } else { + return result; } + if (auto result = detail::from_chars(next, last, minor); result) { + next = result.ptr; + if (!detail::check_delimiter(next, last, '.')) { + return {next, std::errc::invalid_argument}; + } + ++next; + } else { + return result; + } + if (auto result = detail::from_chars(next, last, patch); result) { + next = result.ptr; + } else { + return result; + } + if (next == last) { + return {next, std::errc{}}; + } + if (detail::check_delimiter(next, last, '-')) { + PreRelease pre; + auto result = pre.from_chars(++next, last); + if (!result) return result; + if (pre.values.empty()) return {next, std::errc::invalid_argument}; + preRelease = pre; + next = result.ptr; + if (result && next == last) { + return {next, std::errc{}}; + } + } + if (detail::check_delimiter(next, last, '+')) { + build = {++next, static_cast(last - next)}; + if (build->empty()) { + return {nullptr, std::errc::invalid_argument}; + } + next = last; + if (std::any_of(build->begin(), build->end(), [](char c) { + return !detail::is_digit(c) && !detail::is_letter(c); + })) { + return {nullptr, std::errc::invalid_argument}; + } + } + if (next == last) { + return {next, std::errc{}}; + } + return {first, std::errc::invalid_argument}; } @@ -242,9 +246,7 @@ struct Version { } constexpr Version& from_string(std::string_view str) { - if (!from_string_noexcept(str)) { - throw VersionParseError("Invalid version string."); - } + from_chars(str.data(), str.data() + str.length()).value(); return *this; } diff --git a/src/ll/api/memory/Closure.cpp b/src/ll/api/memory/Closure.cpp index 86b8f61117..e846812c50 100644 --- a/src/ll/api/memory/Closure.cpp +++ b/src/ll/api/memory/Closure.cpp @@ -20,7 +20,7 @@ size_t getVolatileOffset(void* impl) { return offset; } } - throw std::runtime_error("can't parse closure asm offset"); + std::terminate(); }; using T = NativeClosure; void initNativeClosure(void* t, void* impl, size_t offset, size_t size) { diff --git a/src/ll/api/memory/Memory.cpp b/src/ll/api/memory/Memory.cpp index f221bb928b..89a7548b64 100644 --- a/src/ll/api/memory/Memory.cpp +++ b/src/ll/api/memory/Memory.cpp @@ -56,7 +56,7 @@ FuncPtr resolveSignature(std::string_view signature) { } else if (c == '?') { pattern.emplace_back(std::nullopt); } else if (isxdigit(c) && (++i < signature.size() && isxdigit(signature[i]))) { - pattern.emplace_back(string_utils::svtouc(signature.substr(i - 1, 2), nullptr, 16)); + pattern.emplace_back(string_utils::svtouc(signature.substr(i - 1, 2), nullptr, 16).value()); } else { return nullptr; } diff --git a/src/ll/api/service/PlayerInfo.h b/src/ll/api/service/PlayerInfo.h index 48a20cf37a..57b9d88ed4 100644 --- a/src/ll/api/service/PlayerInfo.h +++ b/src/ll/api/service/PlayerInfo.h @@ -12,6 +12,7 @@ class PlayerInfo { std::unique_ptr impl; PlayerInfo(); + public: struct PlayerInfoEntry { mce::UUID uuid; diff --git a/src/ll/api/thread/TickSyncTaskPool.cpp b/src/ll/api/thread/TickSyncTaskPool.cpp index 6fc902abb5..f0156d8997 100644 --- a/src/ll/api/thread/TickSyncTaskPool.cpp +++ b/src/ll/api/thread/TickSyncTaskPool.cpp @@ -36,8 +36,6 @@ struct TickSyncTaskPool::Impl { TickSyncTaskPool::TickSyncTaskPool() : impl(std::make_unique()) {} TickSyncTaskPool::~TickSyncTaskPool() {} -void TickSyncTaskPool::addTaskImpl(std::function f) { - works.push(std::move(f)); -} +void TickSyncTaskPool::addTaskImpl(std::function f) { works.push(std::move(f)); } } // namespace ll::thread diff --git a/src/ll/api/utils/StringUtils.cpp b/src/ll/api/utils/StringUtils.cpp index 7cb84f948f..0f4d75b12e 100644 --- a/src/ll/api/utils/StringUtils.cpp +++ b/src/ll/api/utils/StringUtils.cpp @@ -86,14 +86,15 @@ fmt::text_style getTextStyleFromCode(std::string_view code) { if (svec.size() != 3) { return {}; } - auto colorFromCode = fmt::rgb(svtouc(svec[0]), svtouc(svec[1]), svtouc(svec[2])); + auto colorFromCode = + fmt::rgb(svtouc(svec[0]).value_or(0), svtouc(svec[1]).value_or(0), svtouc(svec[2]).value_or(0)); if (background) { return fmt::bg(colorFromCode); } else { return fmt::fg(colorFromCode); } } else { - int num = svtoi(code); + int num = svtoi(code).value_or(0); if (magic_enum::enum_contains((uchar)num)) { return fmt::fg((fmt::terminal_color)num); } else if (magic_enum::enum_contains((uchar)(num - 10))) { @@ -115,7 +116,6 @@ fmt::text_style getTextStyleFromCode(std::string_view code) { } } } - return {}; } @@ -308,10 +308,12 @@ std::string toSnakeCase(std::string_view str) { } return res; } -bool strtobool(std::string const& str) { +nonstd::expected strtobool(std::string const& str) { bool res = false; - Util::toBool(str, res); - return res; + if (Util::toBool(str, res)) { + return res; + } else { + return nonstd::make_unexpected(std::make_error_code(std::errc::invalid_argument)); + } } - } // namespace ll::inline utils::string_utils diff --git a/src/ll/api/utils/StringUtils.h b/src/ll/api/utils/StringUtils.h index 7a27811cbc..4091cec16b 100644 --- a/src/ll/api/utils/StringUtils.h +++ b/src/ll/api/utils/StringUtils.h @@ -15,6 +15,8 @@ #include "ll/api/base/Macro.h" #include "ll/api/base/StdInt.h" +#include "mc/external/expected_lite/expected.h" + namespace ll::inline utils::string_utils { // "2021-03-24" -> ["2021", "03", "24"] (use '-' as split pattern) @@ -200,82 +202,63 @@ LLNDAPI std::string [[nodiscard]] inline std::u8string_view sv2u8sv(std::string_view str) { return {reinterpret_cast(str.data()), str.size()}; } -template -[[nodiscard]] inline T svtonum(std::string_view str, size_t* idx, int base) { +template +[[nodiscard]] inline nonstd::expected svtonum(std::string_view str, size_t* idx, Args&&... args) { int& errnoRef = errno; char const* ptr = str.data(); char* eptr{}; errnoRef = 0; - const auto ans = f(ptr, &eptr, base); + const auto ans = f(ptr, &eptr, std::forward(args)...); if (ptr == eptr) { - throw std::invalid_argument("invalid svtonum argument"); + return nonstd::make_unexpected(std::make_error_code(std::errc::invalid_argument)); } if (errnoRef == ERANGE) { - throw std::out_of_range("svtonum argument out of range"); + return nonstd::make_unexpected(std::make_error_code(std::errc::result_out_of_range)); } if (idx) { *idx = static_cast(eptr - ptr); } return static_cast(ans); } -template -[[nodiscard]] inline T svtonum(std::string_view str, size_t* idx) { - int& errnoRef = errno; - char const* ptr = str.data(); - char* eptr{}; - errnoRef = 0; - const auto ans = f(ptr, &eptr); - if (ptr == eptr) { - throw std::invalid_argument("invalid svtonum argument"); - } - if (errnoRef == ERANGE) { - throw std::out_of_range("svtonum argument out of range"); - } - if (idx) { - *idx = static_cast(eptr - ptr); - } - return static_cast(ans); -} - -[[nodiscard]] inline schar svtoc(std::string_view str, size_t* idx = nullptr, int base = 10) { +[[nodiscard]] inline decltype(auto) svtoc(std::string_view str, size_t* idx = nullptr, int base = 10) { return svtonum(str, idx, base); } -[[nodiscard]] inline uchar svtouc(std::string_view str, size_t* idx = nullptr, int base = 10) { +[[nodiscard]] inline decltype(auto) svtouc(std::string_view str, size_t* idx = nullptr, int base = 10) { return svtonum(str, idx, base); } -[[nodiscard]] inline short svtos(std::string_view str, size_t* idx = nullptr, int base = 10) { +[[nodiscard]] inline decltype(auto) svtos(std::string_view str, size_t* idx = nullptr, int base = 10) { return svtonum(str, idx, base); } -[[nodiscard]] inline ushort svtous(std::string_view str, size_t* idx = nullptr, int base = 10) { +[[nodiscard]] inline decltype(auto) svtous(std::string_view str, size_t* idx = nullptr, int base = 10) { return svtonum(str, idx, base); } -[[nodiscard]] inline int svtoi(std::string_view str, size_t* idx = nullptr, int base = 10) { +[[nodiscard]] inline decltype(auto) svtoi(std::string_view str, size_t* idx = nullptr, int base = 10) { return svtonum(str, idx, base); } -[[nodiscard]] inline uint svtoui(std::string_view str, size_t* idx = nullptr, int base = 10) { +[[nodiscard]] inline decltype(auto) svtoui(std::string_view str, size_t* idx = nullptr, int base = 10) { return svtonum(str, idx, base); } -[[nodiscard]] inline long svtol(std::string_view str, size_t* idx = nullptr, int base = 10) { +[[nodiscard]] inline decltype(auto) svtol(std::string_view str, size_t* idx = nullptr, int base = 10) { return svtonum(str, idx, base); } -[[nodiscard]] inline ulong svtoul(std::string_view str, size_t* idx = nullptr, int base = 10) { +[[nodiscard]] inline decltype(auto) svtoul(std::string_view str, size_t* idx = nullptr, int base = 10) { return svtonum(str, idx, base); } -[[nodiscard]] inline int64 svtoll(std::string_view str, size_t* idx = nullptr, int base = 10) { +[[nodiscard]] inline decltype(auto) svtoll(std::string_view str, size_t* idx = nullptr, int base = 10) { return svtonum(str, idx, base); } -[[nodiscard]] inline uint64 svtoull(std::string_view str, size_t* idx = nullptr, int base = 10) { +[[nodiscard]] inline decltype(auto) svtoull(std::string_view str, size_t* idx = nullptr, int base = 10) { return svtonum(str, idx, base); } -[[nodiscard]] inline float svtof(std::string_view str, size_t* idx = nullptr) { +[[nodiscard]] inline decltype(auto) svtof(std::string_view str, size_t* idx = nullptr) { return svtonum(str, idx); } -[[nodiscard]] inline double svtod(std::string_view str, size_t* idx = nullptr) { +[[nodiscard]] inline decltype(auto) svtod(std::string_view str, size_t* idx = nullptr) { return svtonum(str, idx); } -[[nodiscard]] inline ldouble svtold(std::string_view str, size_t* idx = nullptr) { +[[nodiscard]] inline decltype(auto) svtold(std::string_view str, size_t* idx = nullptr) { return svtonum(str, idx); } -LLNDAPI bool strtobool(std::string const&); +LLNDAPI nonstd::expected strtobool(std::string const&); } // namespace ll::inline utils::string_utils diff --git a/src/mc/server/commands/BlockStateCommandParam.cpp b/src/mc/server/commands/BlockStateCommandParam.cpp index db1c20bbb1..32880c5a58 100644 --- a/src/mc/server/commands/BlockStateCommandParam.cpp +++ b/src/mc/server/commands/BlockStateCommandParam.cpp @@ -1,7 +1,7 @@ #include "mc/server/commands/BlockStateCommandParam.h" #include "ll/api/utils/StringUtils.h" -std::optional BlockStateCommandParam::toStateValue() const { +nonstd::expected BlockStateCommandParam::toStateValue() const { switch (mType) { case Type::Integer: return ll::string_utils::svtoi(mValue); @@ -12,15 +12,18 @@ std::optional BlockStateCommandParam::toStateValue() case Type::String: return mValue; default: - return std::nullopt; + return nonstd::make_unexpected(std::make_error_code(std::errc::invalid_argument)); } } -Block::BlockStatesType BlockStateCommandParam::toStateMap(std::vector const& vec) { +nonstd::expected +BlockStateCommandParam::toStateMap(std::vector const& vec) { Block::BlockStatesType res; res.reserve(vec.size()); for (auto& p : vec) { if (auto val = p.toStateValue(); val) { res.emplace_back(p.mBlockState, *std::move(val)); + } else { + return nonstd::make_unexpected(val.error()); } } return res; diff --git a/src/mc/server/commands/BlockStateCommandParam.h b/src/mc/server/commands/BlockStateCommandParam.h index 07bfba9af2..f57ca37d2c 100644 --- a/src/mc/server/commands/BlockStateCommandParam.h +++ b/src/mc/server/commands/BlockStateCommandParam.h @@ -1,6 +1,7 @@ #pragma once #include "mc/_HeaderOutputPredefine.h" +#include "mc/external/expected_lite/expected.h" #include "mc/world/level/block/Block.h" class BlockStateCommandParam { @@ -18,9 +19,10 @@ class BlockStateCommandParam { std::string mValue; // this+0x20 Type mType; // this+0x40 - LLNDAPI std::optional toStateValue() const; + LLNDAPI nonstd::expected toStateValue() const; - LLNDAPI static Block::BlockStatesType toStateMap(std::vector const&); + LLNDAPI static nonstd::expected + toStateMap(std::vector const&); public: // NOLINTBEGIN From f4441de63135a5c3c9c00f61bb3422e52b6190e9 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Wed, 10 Apr 2024 22:29:22 +0800 Subject: [PATCH 30/44] refactor: refactoring printDependencyError --- src/ll/core/plugin/NativePluginManager.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/ll/core/plugin/NativePluginManager.cpp b/src/ll/core/plugin/NativePluginManager.cpp index e3cf90c74f..70f66a59ef 100644 --- a/src/ll/core/plugin/NativePluginManager.cpp +++ b/src/ll/core/plugin/NativePluginManager.cpp @@ -41,22 +41,22 @@ static void printDependencyError(pl::dependency_walker::DependencyIssueItem const& item, std::ostream& stream, size_t depth = 0) { std::string indent(depth * 3 + 3, ' '); if (item.mContainsError) { - stream << indent << fmt::format("module: {}", string_utils::u8str2str(item.mPath.u8string())) << std::endl; + stream << indent << "module: " << string_utils::u8str2str(item.mPath.u8string()) << '\n'; if (!item.mMissingModule.empty()) { - stream << indent << "missing module:" << std::endl; + stream << indent << "missing module:" << '\n'; for (const auto& missingModule : item.mMissingModule) { - stream << indent << "|- " << missingModule << std::endl; + stream << indent << "|- " << missingModule << '\n'; } } if (!item.mMissingProcedure.empty()) { - stream << indent << "missing procedure:" << std::endl; + stream << indent << "missing procedure:" << '\n'; for (const auto& [module, missingProcedure] : item.mMissingProcedure) { - stream << indent << "|- " << module << std::endl; + stream << indent << "|- " << module << '\n'; for (const auto& procedure : missingProcedure) { - stream << indent << "|---- " << procedure << std::endl; + stream << indent << "|---- " << procedure << '\n'; auto de = demangler::demangle(procedure); - if (de != procedure) stream << indent << "| " << de << std::endl; + if (de != procedure) stream << indent << "| " << de << '\n'; } } } From 033873dbfd5f951e0b27a84ba657d678da041fa3 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Thu, 11 Apr 2024 02:01:49 +0800 Subject: [PATCH 31/44] refactor: refactoring parse --- src/ll/api/command/Overload.h | 7 ++++++- src/mc/server/commands/CommandRegistry.h | 13 +++++++++---- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/src/ll/api/command/Overload.h b/src/ll/api/command/Overload.h index 2a5a9e574e..241c20e26f 100644 --- a/src/ll/api/command/Overload.h +++ b/src/ll/api/command/Overload.h @@ -77,7 +77,7 @@ class Overload : private OverloadData { ); }); if (!hasName) { - std::terminate(); + throw std::invalid_argument("invalid param " + std::string(name)); } return *this; } @@ -111,6 +111,11 @@ class Overload : private OverloadData { back().mOptions = (CommandParameterOption)((uchar)(back().mOptions) & (!(uchar)option)); return *this; } + template + [[nodiscard]] constexpr Overload& modify(Fn&& fn) { + std::forward(fn)(back()); + return *this; + } template void constexpr execute() { diff --git a/src/mc/server/commands/CommandRegistry.h b/src/mc/server/commands/CommandRegistry.h index 60c6a55047..8be46f8e46 100644 --- a/src/mc/server/commands/CommandRegistry.h +++ b/src/mc/server/commands/CommandRegistry.h @@ -415,11 +415,16 @@ class CommandRegistry { std::function mCommandOverrideFunctor; // this+0x348 template - bool - parse(void* target, CommandRegistry::ParseToken const& token, CommandOrigin const&, int, std::string&, std::vector&) - const { + bool parse( + void* storage, + CommandRegistry::ParseToken const& token, + CommandOrigin const& /*origin*/, + int /*version*/, + std::string& /*error*/, + std::vector& /*errorParams*/ + ) const { if constexpr (std::is_enum_v) { - *(T*)target = (T)getEnumData(token); + *(T*)storage = (T)getEnumData(token); return true; } else { return false; From 024b7dd399f1dec56fa72ac66452c25e6b3442ac Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Thu, 11 Apr 2024 12:41:14 +0800 Subject: [PATCH 32/44] refactor: refactoring bedrock service --- src/ll/api/service/Bedrock.cpp | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/ll/api/service/Bedrock.cpp b/src/ll/api/service/Bedrock.cpp index 6814f7d513..63a97ffdae 100644 --- a/src/ll/api/service/Bedrock.cpp +++ b/src/ll/api/service/Bedrock.cpp @@ -29,7 +29,7 @@ namespace ll::service::inline bedrock { using namespace ll::memory; // Minecraft -std::atomic minecraft; +static alignas(std::hardware_destructive_interference_size) std::atomic minecraft; LL_TYPE_INSTANCE_HOOK(MinecraftInit, HookPriority::High, Minecraft, &Minecraft::initAsDedicatedServer, void) { minecraft = this; @@ -41,7 +41,7 @@ LL_INSTANCE_HOOK(MinecraftDestructor, HookPriority::High, "??1Minecraft@@UEAA@XZ } // PropertiesSettings -std::atomic propertiesSettings; +static alignas(std::hardware_destructive_interference_size) std::atomic propertiesSettings; LL_TYPE_INSTANCE_HOOK( PropertiesSettingsInit, @@ -62,7 +62,7 @@ LL_TYPE_INSTANCE_HOOK( } // ServerNetworkHandler -std::atomic serverNetworkHandler; +static alignas(std::hardware_destructive_interference_size) std::atomic serverNetworkHandler; LL_TYPE_INSTANCE_HOOK( ServerNetworkHandlerInit, @@ -83,7 +83,7 @@ LL_INSTANCE_HOOK(ServerNetworkHandlerDestructor, HookPriority::High, "??1ServerN } // NetworkSystem -std::atomic networkSystem; +static alignas(std::hardware_destructive_interference_size) std::atomic networkSystem; LL_INSTANCE_HOOK( NetworkSystemConstructor, @@ -100,7 +100,7 @@ LL_INSTANCE_HOOK(NetworkSystemDestructor, HookPriority::High, "??1NetworkSystem@ } // Level -std::atomic level; +static alignas(std::hardware_destructive_interference_size) std::atomic level; LL_TYPE_INSTANCE_HOOK( ServerLevelInit, @@ -119,7 +119,7 @@ LL_INSTANCE_HOOK(LevelDestructor, HookPriority::High, "??1Level@@UEAA@XZ", void) } // RakNet::RakPeer -std::atomic rakPeer; +static alignas(std::hardware_destructive_interference_size) std::atomic rakPeer; LL_INSTANCE_HOOK(RakNetRakPeerConstructor, HookPriority::High, "??0RakPeer@RakNet@@QEAA@XZ", RakNet::RakPeer*) { unhook(); @@ -132,7 +132,7 @@ LL_INSTANCE_HOOK(RakNetRakPeerDestructor, HookPriority::High, "??1RakPeer@RakNet } // ResourcePackRepository -std::atomic resourcePackRepository; +static alignas(std::hardware_destructive_interference_size) std::atomic resourcePackRepository; LL_TYPE_INSTANCE_HOOK( ResourcePackRepositoryInit, @@ -150,7 +150,7 @@ LL_INSTANCE_HOOK(ResourcePackRepositoryDestructor, HookPriority::High, "??1Resou } // CommandRegistry -std::atomic commandRegistry; +static alignas(std::hardware_destructive_interference_size) std::atomic commandRegistry; LL_TYPE_INSTANCE_HOOK(CommandRegistryConstructor, HookPriority::High, CommandRegistry, "??0CommandRegistry@@QEAA@XZ", CommandRegistry*) { return commandRegistry = origin(); @@ -161,7 +161,7 @@ LL_INSTANCE_HOOK(CommandRegistryDestructor, HookPriority::High, "??1CommandRegis } // ServerInstance -std::atomic serverInstance; +static alignas(std::hardware_destructive_interference_size) std::atomic serverInstance; LL_TYPE_INSTANCE_HOOK(ServerInstanceConstructor, HookPriority::High, ServerInstance, "??0ServerInstance@@QEAA@AEAVIMinecraftApp@@AEBV?$not_null@V?$NonOwnerPointer@VServerInstanceEventCoordinator@@@Bedrock@@@gsl@@@Z", ServerInstance*) { return serverInstance = origin(); From 47bd20ae3cfe72cc9d7327ee5cc110ffff683783 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Thu, 11 Apr 2024 13:09:21 +0800 Subject: [PATCH 33/44] fix: fix StructureTemplate --- .../world/level/levelgen/structure/StructureTemplate.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/mc/world/level/levelgen/structure/StructureTemplate.h b/src/mc/world/level/levelgen/structure/StructureTemplate.h index 20242e442f..a2a9657017 100644 --- a/src/mc/world/level/levelgen/structure/StructureTemplate.h +++ b/src/mc/world/level/levelgen/structure/StructureTemplate.h @@ -17,10 +17,11 @@ class BlockPos; class StructureTemplate { public: - std::string mName; // this+0x0 - StructureTemplateData mStructureTemplateData; // this+0x20 - uchar mStructureVersion; // this+0xD0 - Bedrock::NonOwnerPointer mUnknownBlockRegistry; + std::string mName; // this+0x8 + StructureTemplateData mStructureTemplateData; // this+0x28 + uchar mStructureVersion; // this+0xD8 + Bedrock::NonOwnerPointer mUnknownBlockRegistry; // this+0xE0 + uchar mUnknown; inline bool load(class CompoundTag const& nbt) { return mStructureTemplateData.load(nbt); } From 45c903a826897bc229208d3dac067ff1aad15c30 Mon Sep 17 00:00:00 2001 From: ShrBox Date: Thu, 11 Apr 2024 22:28:48 +0800 Subject: [PATCH 34/44] fix: fix StructureTemplate::create --- src/mc/world/level/levelgen/structure/StructureTemplate.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/mc/world/level/levelgen/structure/StructureTemplate.cpp b/src/mc/world/level/levelgen/structure/StructureTemplate.cpp index d06b368b42..ed3c7251b7 100644 --- a/src/mc/world/level/levelgen/structure/StructureTemplate.cpp +++ b/src/mc/world/level/levelgen/structure/StructureTemplate.cpp @@ -43,9 +43,8 @@ std::unique_ptr StructureTemplate::create( bool ignoreBlocks, bool ignoreEntities ) { - auto& unknownBlockRegistry = blockSource.getLevel().getStructureManager()->mUnknownBlockRegistry; - auto res = std::make_unique(name, unknownBlockRegistry); - auto setting = StructureSettings(boundingBox.getSideLength(), ignoreBlocks, ignoreEntities); + auto res = std::make_unique(name, blockSource.getLevel().getUnknownBlockTypeRegistry()); + auto setting = StructureSettings(boundingBox.getSideLength(), ignoreBlocks, ignoreEntities); res->fillFromWorld(blockSource, boundingBox.min, setting); return res; } From 6f3d0ba5d2646501f77194657d9082312e833c1d Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Thu, 11 Apr 2024 22:35:38 +0800 Subject: [PATCH 35/44] fix: fix another StructureTemplate create --- src/ll/core/plugin/NativePluginManager.cpp | 7 +++++-- .../world/level/levelgen/structure/StructureTemplate.cpp | 5 ++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/ll/core/plugin/NativePluginManager.cpp b/src/ll/core/plugin/NativePluginManager.cpp index 70f66a59ef..1c363a0977 100644 --- a/src/ll/core/plugin/NativePluginManager.cpp +++ b/src/ll/core/plugin/NativePluginManager.cpp @@ -13,6 +13,7 @@ #include "fmt/core.h" #include "pl/dependency/DependencyWalker.h" +#include "ll/api/i18n/I18n.h" #include "ll/api/plugin/Manifest.h" #include "ll/api/plugin/NativePlugin.h" #include "ll/api/plugin/Plugin.h" @@ -103,8 +104,10 @@ bool NativePluginManager::load(Manifest manifest) { return false; } if (!GetProcAddress(lib, "ll_memory_operator_overrided")) { - // TODO: change to error - logger.debug("The plugin is not using the unified memory allocation operator, will not be loaded."); + // TODO: change to error before release + logger.warn( + "The plugin is not using the unified memory allocation operator, will not be loaded in next version."_tr() + ); // return false; } auto plugin = std::make_shared(std::move(manifest), lib); diff --git a/src/mc/world/level/levelgen/structure/StructureTemplate.cpp b/src/mc/world/level/levelgen/structure/StructureTemplate.cpp index ed3c7251b7..122177f19a 100644 --- a/src/mc/world/level/levelgen/structure/StructureTemplate.cpp +++ b/src/mc/world/level/levelgen/structure/StructureTemplate.cpp @@ -27,9 +27,8 @@ std::unique_ptr StructureTemplate::create(const std::string& if (!ll::service::getLevel()) { return nullptr; } - auto& unknownBlockRegistry = ll::service::getLevel()->getStructureManager()->mUnknownBlockRegistry; - auto res = std::make_unique(name, unknownBlockRegistry); - bool success{res->load(tag)}; + auto res = std::make_unique(name, ll::service::getLevel()->getUnknownBlockTypeRegistry()); + bool success{res->load(tag)}; if (!success) { return nullptr; } From 182cae3532b3dc4e4c0428ed62ecf9682c4d0592 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Thu, 11 Apr 2024 22:36:38 +0800 Subject: [PATCH 36/44] fix: fix missing using --- src/ll/core/plugin/NativePluginManager.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/ll/core/plugin/NativePluginManager.cpp b/src/ll/core/plugin/NativePluginManager.cpp index 1c363a0977..38970ed30d 100644 --- a/src/ll/core/plugin/NativePluginManager.cpp +++ b/src/ll/core/plugin/NativePluginManager.cpp @@ -105,6 +105,7 @@ bool NativePluginManager::load(Manifest manifest) { } if (!GetProcAddress(lib, "ll_memory_operator_overrided")) { // TODO: change to error before release + using namespace i18n_literals; logger.warn( "The plugin is not using the unified memory allocation operator, will not be loaded in next version."_tr() ); From 1c6d78ef0346d2ff21d3565bc809707da36d2de3 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Fri, 12 Apr 2024 18:45:08 +0800 Subject: [PATCH 37/44] refactor: add static_assert message in serialize associative container --- src/ll/api/reflection/Deserialization.h | 11 ++++++----- src/ll/api/reflection/Serialization.h | 9 ++++++--- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/src/ll/api/reflection/Deserialization.h b/src/ll/api/reflection/Deserialization.h index f88aa3fdfc..03aae8736b 100644 --- a/src/ll/api/reflection/Deserialization.h +++ b/src/ll/api/reflection/Deserialization.h @@ -21,8 +21,7 @@ inline void deserialize(T&, J const&) ); template -inline void deserialize(T&, J const&) - requires(concepts::IsString || std::is_enum_v); +inline void deserialize(T&, J const&); template inline void deserialize(T&, J const&); @@ -103,9 +102,11 @@ inline void deserialize(T& obj, J const& j) } template -inline void deserialize(T& map, J const& j) - requires(concepts::IsString || std::is_enum_v) -{ +inline void deserialize(T& map, J const& j) { + static_assert( + (concepts::IsString || std::is_enum_v), + "the key type of the associative container must be convertible to a string" + ); if (!j.is_object()) throw std::runtime_error("field must be an object"); map.clear(); for (auto& [k, v] : j.items()) { diff --git a/src/ll/api/reflection/Serialization.h b/src/ll/api/reflection/Serialization.h index 31c5cc5f60..1205ad8ade 100644 --- a/src/ll/api/reflection/Serialization.h +++ b/src/ll/api/reflection/Serialization.h @@ -14,8 +14,7 @@ inline J serialize(T const&); template inline J serialize(T const&) - requires((concepts::IsString || std::is_enum_v) && !std::convertible_to) -; + requires(!std::convertible_to); template inline J serialize(T const&) @@ -74,8 +73,12 @@ inline J serialize(T const& e) { template inline J serialize(T const& map) - requires((concepts::IsString || std::is_enum_v) && !std::convertible_to) + requires(!std::convertible_to) { + static_assert( + (concepts::IsString || std::is_enum_v), + "the key type of the associative container must be convertible to a string" + ); J res; for (auto& [k, v] : map) { if constexpr (std::is_enum_v) { From 54371dc32ca70805e55f46636378fc125678ae84 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Sat, 13 Apr 2024 06:14:47 +0800 Subject: [PATCH 38/44] feat: add param names from 1.16.201 --- src/mc/client/social/AchievementEventing.h | 18 ++- .../client/social/AggregationEventListener.h | 6 +- src/mc/client/social/EventManager.h | 10 +- src/mc/common/HitDetection.h | 8 +- src/mc/common/Predicate.h | 3 +- src/mc/deps/application/AppPlatform.h | 2 +- src/mc/deps/core/FileSystemImpl.h | 6 +- src/mc/deps/core/StorageAreasTree.h | 2 +- .../core/common/bedrock/BaseGameTestHelper.h | 2 +- src/mc/deps/core/common/bedrock/Document.h | 6 +- .../core/common/bedrock/HeaderCollection.h | 2 +- .../core/common/bedrock/HttpErrorCategory.h | 2 +- src/mc/deps/core/common/bedrock/MemoryPage.h | 4 +- .../core/common/bedrock/MutableObjectHelper.h | 2 +- src/mc/deps/core/common/bedrock/ObjectNode.h | 2 +- src/mc/deps/core/common/bedrock/Request.h | 2 +- src/mc/deps/core/common/bedrock/Response.h | 2 +- .../bedrock/pubsub/DeferredSubscriptionHub.h | 4 +- .../pubsub/DeferredSubscriptionHubBase.h | 4 +- .../deps/core/resource/ResourceInformation.h | 8 +- src/mc/deps/core/resource/ResourceLoader.h | 8 +- src/mc/deps/core/utility/Agent.h | 4 +- .../deps/core/utility/GoalSelectorUtility.h | 4 +- .../core/utility/ItemReplacementCommandUtil.h | 2 +- src/mc/deps/core/utility/Url.h | 2 +- src/mc/deps/core/utility/Util.h | 7 +- src/mc/deps/core/utility/VanillaGoalUtility.h | 7 +- src/mc/deps/crypto/hash/HMAC.h | 2 +- src/mc/deps/json/Block.h | 37 ++++- src/mc/deps/json/JsonHelpers.h | 4 +- src/mc/deps/json/JsonUtil.h | 8 +- .../entity/components/AdmireItemComponent.h | 2 +- src/mc/entity/components/BarterComponent.h | 2 +- src/mc/entity/components/BoostItem.h | 2 +- .../entity/components/BreathableDefinition.h | 4 +- src/mc/entity/components/BuoyancyDefinition.h | 2 +- ...nditionalBandwidthOptimizationDefinition.h | 4 +- src/mc/entity/components/DebugInfoComponent.h | 2 +- .../components/EnvironmentRequirement.h | 2 +- .../entity/components/FogCommandComponent.h | 6 +- .../components/IRideableActor.h | 0 .../entity/components/InsideBlockEventMap.h | 10 +- .../entity/components/JumpControlComponent.h | 2 +- .../components/LodestoneCompassComponent.h | 10 +- .../entity/components/MoveControlComponent.h | 2 +- src/mc/entity/components/NameableDefinition.h | 2 +- .../entity/components/ReplayStateComponent.h | 5 +- src/mc/entity/components/ShareableComponent.h | 11 +- src/mc/entity/components/ShooterComponent.h | 2 +- src/mc/entity/components/SoundEventRequest.h | 4 +- .../agent}/AnimationCompleteFlag.h | 0 .../agent}/AnimationShrugFlag.h | 0 .../components/agent}/CommandCooldown.h | 0 .../agent}/ExecutingFlag.h | 0 src/mc/entity/components/agent/Move.h | 2 +- src/mc/entity/systems/GroupSizeSystem.h | 2 +- .../systems/InsideWaterlilyBlockSystemImpl.h | 2 +- .../systems/common/BiomeDecorationSystem.h | 2 +- src/mc/entity/systems/common/EntityInside.h | 4 +- .../systems/common/EntityInsideSystem.h | 4 +- .../systems/common/EntityInsideSystemImpl.h | 4 +- .../systems/common/HardcodedAnimationSystem.h | 2 +- .../common/InsideEndPortalBlockSystemImpl.h | 2 +- .../FoodExhaustionSystemImpl.h | 2 +- src/mc/entity/utilities/ActorInventoryUtils.h | 10 +- src/mc/entity/utilities/ActorMobilityUtils.h | 2 +- src/mc/entity/utilities/ActorParticles.h | 17 ++- src/mc/entity/utilities/ActorSynchedData.h | 2 +- src/mc/events/MinecraftEventing.h | 8 +- src/mc/external/scripting/ClosureAny.h | 4 +- src/mc/external/scripting/Debugger.h | 2 +- src/mc/external/scripting/FutureAny.h | 2 +- .../external/scripting/ModuleBindingBuilder.h | 21 ++- .../scripting/NativeFunctionPayload.h | 2 +- src/mc/external/scripting/NativeRuntime.h | 2 +- src/mc/external/scripting/PromiseAny.h | 2 +- src/mc/external/scripting/QuickJSRuntime.h | 8 +- src/mc/external/scripting/ScriptEngine.h | 2 +- src/mc/external/scripting/ScriptValue.h | 7 +- src/mc/external/scripting/StringPayload.h | 4 +- src/mc/external/scripting/Watchdog.h | 2 +- .../scripting/gametest/ScriptGameTestHelper.h | 6 +- .../ScriptGameTestRegistrationBuilder.h | 2 +- .../scripting/quickjs/ContextObject.h | 6 +- src/mc/external/scripting/quickjs/QuickJS.h | 17 ++- src/mc/gametest/MinecraftGameTestHelper.h | 2 +- .../gametest/framework/BaseGameTestFunction.h | 2 +- src/mc/gametest/framework/StructureUtils.h | 7 +- src/mc/network/AutomationClient.h | 2 +- src/mc/network/AutomationSession.h | 4 +- .../common => network}/ClientNetworkSystem.h | 0 .../ClientOrServerNetworkSystemRef.h | 0 src/mc/network/NetherStructureFeatureHelper.h | 9 +- src/mc/network/RakNetServerLocator.h | 4 +- src/mc/network/RakPeerHelper.h | 2 +- src/mc/network/ServerNetworkHandler.h | 32 ++-- .../common => network}/ServerNetworkSystem.h | 0 src/mc/network/packet/AnimateEntityPacket.h | 11 +- .../packet/ItemStackResponseContainerInfo.h | 2 +- .../network/packet/ItemStackResponsePacket.h | 2 +- src/mc/network/packet/PackInfoData.h | 2 +- src/mc/network/packet/PlayerFogPacket.h | 2 +- .../network/packet/ResourcePackStackPacket.h | 9 +- .../network/packet/SetSpawnPositionPacket.h | 2 +- src/mc/network/packet/SetTitlePacket.h | 2 +- src/mc/network/packet/StartGamePacket.h | 12 +- src/mc/network/packet/TextPacket.h | 11 +- src/mc/options/AppConfigs.h | 2 +- src/mc/options/option_types/Option.h | 3 +- .../resources/ContentTierIncompatibleReason.h | 12 +- .../resources/EncryptedFileAccessStrategy.h | 9 +- src/mc/resources/ResourcePackManager.h | 35 +++-- src/mc/resources/ValidatorRegistry.h | 14 +- .../ScriptItemGameplayHandler.h | 2 +- .../scripting/modules/minecraft/ScriptActor.h | 4 +- .../minecraft/ScriptActorEventListener.h | 8 +- .../ScriptDataDrivenActorTriggerAfterEvent.h | 2 +- .../modules/minecraft/ScriptModuleMinecraft.h | 8 +- .../modules/minecraft/ScriptScoreboard.h | 10 +- .../minecraft_net/ScriptNetPromiseTracker.h | 8 +- .../modules/minecraft_net/ScriptNetRequest.h | 2 +- .../modules/minecraft_net/ScriptNetResponse.h | 2 +- .../minecraft_ui/ScriptModalFormData.h | 10 +- src/mc/server/ServerPlayer.h | 4 +- src/mc/server/SimulatedPlayer.h | 4 +- src/mc/server/commands/CommandBlockName.h | 4 +- src/mc/server/commands/CommandOrigin.h | 2 +- src/mc/server/commands/CommandRegistry.h | 2 +- src/mc/server/commands/CommandSelectorBase.h | 2 +- src/mc/server/commands/CommandUtils.h | 7 +- .../commands/ExecuteContextCommandOrigin.h | 2 +- src/mc/server/commands/FogCommandUtil.h | 26 +++- src/mc/server/commands/MinecraftCommands.h | 21 ++- src/mc/server/commands/VirtualCommandOrigin.h | 22 +-- src/mc/server/commands/standard/KickCommand.h | 3 +- .../commands/standard/StructureCommand.h | 3 +- .../server/module/VanillaGameModuleServer.h | 14 +- src/mc/textobject/TextObjectParser.h | 48 ++++-- src/mc/textobject/TextObjectSelector.h | 2 +- src/mc/textobject/TextObjectText.h | 2 +- src/mc/util/ActorDefinitionEventLoader.h | 23 ++- src/mc/util/CallbackToken.h | 2 +- src/mc/util/CreatorMetadataUtils.h | 2 +- src/mc/util/DefinitionEventLoader.h | 17 ++- src/mc/util/DictionaryCompressionUtil.h | 2 +- src/mc/util/Easing.h | 2 +- src/mc/util/EventResponseFactory.h | 4 +- src/mc/util/ExpressionNode.h | 86 +++++++---- src/mc/util/FileUploadManager.h | 4 +- src/mc/util/ResourcePackFileUploadManager.h | 6 +- src/mc/util/molang/MolangEvalParams.h | 7 +- src/mc/util/molang/MolangMemberArray.h | 4 +- src/mc/util/molang/MolangProgramBuildState.h | 13 +- src/mc/util/molang/MolangVariable.h | 4 +- src/mc/websockets/RakWebSocket.h | 15 +- src/mc/websockets/RakWebSocketDataFrame.h | 10 +- src/mc/world/Container.h | 13 +- src/mc/world/Facing.h | 5 +- src/mc/world/FillingContainer.h | 8 +- src/mc/world/Minecraft.h | 8 +- src/mc/world/SimpleContainer.h | 6 +- src/mc/world/SimpleSparseContainer.h | 2 +- src/mc/world/actor/Actor.h | 6 +- src/mc/world/actor/ActorComponentFactory.h | 2 +- src/mc/world/actor/ActorDefinition.h | 8 +- .../world/actor/ActorDefinitionDescriptor.h | 24 +-- src/mc/world/actor/ActorDefinitionGroup.h | 8 +- src/mc/world/actor/ActorFactory.h | 25 ++-- src/mc/world/actor/ContainerComponent.h | 6 +- src/mc/world/actor/HangingActor.h | 5 +- src/mc/world/actor/Mob.h | 2 +- src/mc/world/actor/VanillaActors.h | 2 +- src/mc/world/actor/VanillaBuiltInEntities.h | 2 +- src/mc/world/actor/VehicleUtils.h | 14 +- src/mc/world/actor/ai/control/MoveControl.h | 15 +- src/mc/world/actor/ai/goal/AvoidBlockGoal.h | 2 +- .../actor/ai/goal/FertilizeFarmBlockGoal.h | 2 +- .../actor/ai/goal/HarvestFarmBlockGoal.h | 2 +- src/mc/world/actor/ai/goal/PanicGoal.h | 12 +- src/mc/world/actor/ai/goal/PickupItemsGoal.h | 2 +- src/mc/world/actor/ai/goal/RangedAttackGoal.h | 7 +- src/mc/world/actor/ai/goal/SniffGoal.h | 2 +- src/mc/world/actor/ai/village/Village.h | 4 +- .../world/actor/ai/village/VillageManager.h | 3 +- src/mc/world/actor/animal/Horse.h | 2 +- .../world/actor/animation/ChannelTransform.h | 2 +- .../world/actor/animation/KeyFrameTransform.h | 2 +- .../actor/components/AnimationComponent.h | 2 +- .../world/actor/components/ColorDefinition.h | 2 +- .../components/EconomyTradeableComponent.h | 2 +- src/mc/world/actor/components/Parser.h | 13 +- .../world/actor/components/SlotDropChance.h | 2 +- src/mc/world/actor/item/Boat.h | 2 +- src/mc/world/actor/player/AnimatedImageData.h | 6 +- src/mc/world/actor/player/Inventory.h | 2 +- src/mc/world/actor/player/Player.h | 12 +- .../actor/player/PlayerDeathManagerProxy.h | 2 +- src/mc/world/actor/player/PlayerInventory.h | 8 +- .../player/ServerPlayerBlockUseHandler.h | 8 +- src/mc/world/actor/projectile/AbstractArrow.h | 2 +- .../response/ActorEventResponseFactory.h | 2 +- src/mc/world/actor/state/PropertyComponent.h | 7 +- src/mc/world/actor/state/PropertyContainer.h | 7 +- .../UnlockedRecipesServerComponent.h | 2 +- .../world/components/VoronoiZoomMultiNoise.h | 2 +- src/mc/world/containers/SparseContainer.h | 6 +- .../managers/models/ContainerManagerModel.h | 2 +- .../world/containers/models/ContainerModel.h | 17 ++- .../models/InventoryContainerModel.h | 4 +- .../containers/models/LevelContainerModel.h | 4 +- .../models/PlayerUIContainerModelBase.h | 2 +- src/mc/world/effect/AttackDamageMobEffect.h | 4 +- src/mc/world/events/ActorEventListener.h | 3 +- src/mc/world/gamemode/GameMode.h | 7 +- .../inventory/network/ContainerWeakRef.h | 9 +- .../inventory/network/ItemStackNetIdVariant.h | 4 +- .../network/ItemStackNetManagerBase.h | 2 +- .../network/ItemStackNetManagerScreenStack.h | 2 +- .../network/ItemStackNetManagerServer.h | 27 ++-- .../ItemStackRequestActionCraftHandler.h | 6 +- .../network/ItemStackRequestActionHandler.h | 44 ++++-- .../ItemStackRequestActionTransferBase.h | 6 +- .../network/crafting/CraftHandlerBase.h | 3 +- .../network/crafting/CraftHandlerCrafting.h | 3 +- .../network/crafting/CraftHandlerGrindstone.h | 2 +- .../network/crafting/CraftHandlerTrade.h | 6 +- .../simulation/ContainerScreenValidation.h | 20 +-- .../ContainerScreenValidationCrafting.h | 2 +- .../simulation/ContainerScreenValidatorBase.h | 2 +- .../simulation/ContainerValidationSlotData.h | 2 +- .../simulation/ContainerValidationSlotInfo.h | 7 +- .../simulation/ContainerValidatorFactory.h | 9 +- .../simulation/ExpectedSlotConsume.h | 7 +- .../simulation/ExperienceCostCommitObject.h | 4 +- .../simulation/ExperienceRewardCommitObject.h | 2 +- .../AnvilContainerScreenValidator.h | 2 +- .../AnvilInputContainerValidation.h | 26 ++-- .../AnvilMaterialContainerValidation.h | 26 ++-- .../validation/ArmorContainerValidation.h | 26 ++-- .../validation/BarrelContainerValidation.h | 26 ++-- .../BeaconPaymentContainerValidation.h | 26 ++-- .../BrewingStandFuelContainerValidation.h | 26 ++-- .../BrewingStandInputContainerValidation.h | 26 ++-- .../BrewingStandResultContainerValidation.h | 26 ++-- ...CartographyAdditionalContainerValidation.h | 26 ++-- .../CartographyContainerScreenValidator.h | 2 +- .../CartographyInputContainerValidation.h | 26 ++-- ...nedHotbarAndInventoryContainerValidation.h | 26 ++-- .../CompoundCreatorInputValidation.h | 26 ++-- .../validation/CrafterContainerValidation.h | 14 +- .../CraftingInputContainerValidation.h | 26 ++-- .../CreatedOutputContainerValidation.h | 26 ++-- .../validation/CursorContainerValidation.h | 26 ++-- .../EnchantingInputContainerValidation.h | 26 ++-- .../EnchantingMaterialContainerValidation.h | 26 ++-- .../FurnaceContainerScreenValidator.h | 2 +- .../FurnaceFuelContainerValidation.h | 26 ++-- .../FurnaceIngredientContainerValidation.h | 26 ++-- .../FurnaceResultContainerValidation.h | 26 ++-- .../GrindstoneAdditionalContainerValidation.h | 26 ++-- .../GrindstoneInputContainerValidation.h | 26 ++-- .../HorseEquipContainerValidation.h | 17 ++- .../validation/HotbarContainerValidation.h | 26 ++-- .../validation/InventoryContainerValidation.h | 26 ++-- .../validation/LabTableInputValidation.h | 26 ++-- .../LevelEntityContainerValidation.h | 26 ++-- .../validation/LoomDyeContainerValidation.h | 26 ++-- .../validation/LoomInputContainerValidation.h | 26 ++-- .../LoomMaterialContainerValidation.h | 26 ++-- .../MaterialReducerInputValidation.h | 28 ++-- .../MaterialReducerOutputValidation.h | 26 ++-- .../validation/OffhandContainerValidation.h | 26 ++-- .../validation/PreviewContainerValidation.h | 26 ++-- .../ShulkerBoxContainerValidation.h | 26 ++-- .../SmithingTableInputContainerValidation.h | 18 ++- ...SmithingTableMaterialContainerValidation.h | 18 ++- ...SmithingTableTemplateContainerValidation.h | 18 ++- .../StoneCutterContainerScreenValidator.h | 6 +- .../StoneCutterInputContainerValidation.h | 26 ++-- .../Trade1Ingredient1ContainerValidation.h | 18 ++- .../Trade1Ingredient2ContainerValidation.h | 18 ++- .../Trade2Ingredient1ContainerValidation.h | 26 ++-- .../Trade2Ingredient2ContainerValidation.h | 26 ++-- .../transaction/InventoryTransactionManager.h | 2 +- src/mc/world/item/CompoundItem.h | 2 +- src/mc/world/item/HoeItem.h | 2 +- src/mc/world/item/Item.h | 11 +- src/mc/world/item/ItemDescriptor.h | 2 +- src/mc/world/item/ItemEventResponseFactory.h | 2 +- src/mc/world/item/ItemStackBase.h | 8 +- src/mc/world/item/LodestoneCompassItem.h | 6 +- src/mc/world/item/MolangDescriptor.h | 2 +- src/mc/world/item/PotionItem.h | 2 +- src/mc/world/item/VanillaItems.h | 33 +++-- src/mc/world/item/alchemy/Potion.h | 10 +- .../components/AllowOffHandItemComponent.h | 0 .../CanDestroyInCreativeItemComponent.h | 0 .../components/DamageItemComponent.h | 0 .../world/item/components/DyeableComponent.h | 3 +- .../components/EnchantableItemComponent.h | 0 .../item/components}/ExplorationMapUtils.h | 0 .../components/GlintItemComponent.h | 0 .../components/HandEquippedItemComponent.h | 0 .../components/HoverTextColorItemComponent.h | 0 .../item/components}/ItemActorFlag.h | 0 .../item/components}/ItemCompleteUseEvent.h | 0 src/mc/world/item/components/ItemContext.h | 5 +- .../item/components}/ItemGameplayEvent.h | 0 .../item/components}/ItemReleaseUseEvent.h | 0 .../item/components}/ItemStartUseEvent.h | 0 .../item/components}/ItemStopUseEvent.h | 0 .../ItemUseSlowdownModifierComponent.h | 0 .../item/components}/ItemUsedOnEvent.h | 0 .../components/LiquidClippedItemComponent.h | 0 .../components/MaxStackSizeItemComponent.h | 0 .../item/components/ProjectileItemComponent.h | 10 +- .../components/PublisherItemComponent.h | 0 .../item/components/RepairableItemComponent.h | 8 +- .../item/components/ShooterItemComponent.h | 12 +- .../components/ShouldDespawnItemComponent.h | 0 .../components/StackedByDataItemComponent.h | 0 .../{ => item}/components/TagsItemComponent.h | 0 .../components/UseAnimationItemComponent.h | 0 .../components/UseModifiersItemComponent.h | 0 .../world/item/crafting/CraftingContainer.h | 6 +- src/mc/world/item/crafting/MerchantRecipe.h | 4 +- src/mc/world/item/crafting/Recipe.h | 4 +- src/mc/world/item/crafting/Recipes.h | 18 ++- src/mc/world/item/crafting/ShapedRecipe.h | 2 +- src/mc/world/item/enchanting/EnchantUtils.h | 2 +- .../world/item/registry/CreativeGroupInfo.h | 2 +- .../item/registry/CreativeItemRegistry.h | 4 +- src/mc/world/item/registry/ItemRegistry.h | 27 ++-- src/mc/world/item/registry/ItemRegistryRef.h | 23 +-- src/mc/world/item/registry/ItemStack.h | 2 +- .../world/item/trading/MerchantRecipeList.h | 6 +- src/mc/world/level/ActorEventCoordinator.h | 2 +- src/mc/world/level/BlockPos.h | 2 +- src/mc/world/level/BlockPosIterator.h | 2 +- src/mc/world/level/BlockSource.h | 23 +-- src/mc/world/level/BlockVolumeTarget.h | 2 +- src/mc/world/level/ChunkBlockPos.h | 2 +- src/mc/world/level/FileArchiver.h | 4 +- src/mc/world/level/Level.h | 138 +++++++++--------- src/mc/world/level/LevelListCache.h | 4 +- src/mc/world/level/LevelSettings.h | 4 +- src/mc/world/level/MolangVariableMap.h | 6 +- src/mc/world/level/PositionTrackingDBClient.h | 2 +- src/mc/world/level/PositionTrackingDBServer.h | 9 +- src/mc/world/level/RuntimeLightingManager.h | 4 +- src/mc/world/level/ScatterParams.h | 2 +- src/mc/world/level/SpawnFinder.h | 2 +- src/mc/world/level/Spawner.h | 46 ++++-- src/mc/world/level/TrackingRecord.h | 6 +- src/mc/world/level/biome/Biome.h | 2 +- src/mc/world/level/biome/BiomeSourceUtil.h | 6 +- src/mc/world/level/biome/RTree.h | 2 +- src/mc/world/level/biome/VanillaBiomes.h | 8 +- .../SurfaceMaterialAdjustmentAttributes.h | 4 +- .../biome/surface/CappedSurfaceBuilder.h | 8 +- .../level/biome/surface/ISurfaceBuilder.h | 14 +- .../level/biome/surface/MesaSurfaceBuilder.h | 2 +- src/mc/world/level/biome/v1_16_compat.h | 2 +- src/mc/world/level/block/BlockDescriptor.h | 12 +- src/mc/world/level/block/BlockLegacy.h | 12 +- src/mc/world/level/block/CampfireBlock.h | 2 +- src/mc/world/level/block/CauldronBlock.h | 6 +- src/mc/world/level/block/CherrySaplingBlock.h | 3 +- src/mc/world/level/block/FlowerPotBlock.h | 10 +- src/mc/world/level/block/GrassBlock.h | 2 +- src/mc/world/level/block/MultifaceBlock.h | 10 +- src/mc/world/level/block/RespawnAnchorBlock.h | 2 +- src/mc/world/level/block/SaplingBlock.h | 5 +- src/mc/world/level/block/SculkChargeCursor.h | 7 +- src/mc/world/level/block/WallBlock.h | 2 +- src/mc/world/level/block/WeepingVinesBlock.h | 10 +- .../block/actor/ChemistryTableBlockActor.h | 4 +- .../level/block/actor/ItemFrameBlockActor.h | 2 +- .../level/block/actor/JukeboxBlockActor.h | 2 +- .../BlockBakedMaterialDataComponent.h | 2 +- .../BlockCollisionEvaluationQueueComponent.h | 0 .../BlockComponentBase.h | 0 .../BlockComponentDirectData.h | 0 .../block/components/BlockComponentFactory.h | 4 +- .../BlockComponentStorage.h | 0 .../BlockComponentStorageFinalizer.h | 0 .../components/BlockCraftingTableComponent.h | 2 +- .../BlockDestructibleByExplosionComponent.h | 2 +- .../BlockDestructibleByMiningComponent.h | 2 +- .../components/BlockDisplayNameComponent.h | 2 +- .../components/BlockFlammableComponent.h | 2 +- .../block/components/BlockFrictionComponent.h | 2 +- .../block/components/BlockGeometryComponent.h | 2 +- .../BlockLegacyComponentStorageFinalizer.h | 0 .../components/BlockLightDampeningComponent.h | 2 +- .../components/BlockLightEmissionComponent.h | 2 +- .../block/components/BlockLootComponent.h | 2 +- .../block/components/BlockMapColorComponent.h | 2 +- .../BlockMaterialInstancesComponent.h | 2 +- .../BlockMaterialInstancesDescription.h | 2 +- .../BlockPlacementFilterComponent.h | 2 +- .../components/BlockQueuedTickingComponent.h | 2 +- .../components/BlockRandomTickingComponent.h | 2 +- .../BlockTransformationComponent.h | 2 +- .../block/components/BlockUnitCubeComponent.h | 2 +- .../components}/InsideBlockComponentUtility.h | 2 +- .../InsideBlockWithPosAndBlockComponent.h | 0 .../components/InsideBlockWithPosComponent.h | 0 .../components/InsideGenericBlockComponent.h | 0 .../LocalConstBlockSourceFactoryComponent.h | 0 .../NetEaseBlockComponentStorage.h | 0 .../block/definition/BlockDefinitionGroup.h | 34 +++-- .../block/events/BlockEventResponseFactory.h | 2 +- .../blockEvents => events}/BlockFallOnEvent.h | 0 .../BlockFallOnEventComponent.h | 0 .../blockEvents => events}/BlockPlaceEvent.h | 0 .../BlockPlaceEventComponent.h | 0 .../BlockPlayerDestroyEvent.h | 0 .../BlockPlayerDestroyEventComponent.h | 0 .../BlockPlayerInteractEvent.h | 0 .../BlockPlayerInteractEventComponent.h | 0 .../BlockPlayerPlacingEvent.h | 0 .../BlockPlayerPlacingEventComponent.h | 0 .../BlockQueuedTickEvent.h | 0 .../BlockQueuedTickEventComponent.h | 0 .../BlockRandomTickEvent.h | 0 .../BlockRandomTickEventComponent.h | 0 .../BlockStepOffEvent.h | 0 .../BlockStepOffEventComponent.h | 0 .../blockEvents => events}/BlockStepOnEvent.h | 0 .../BlockStepOnEventComponent.h | 0 .../level/block/registry/BlockTypeRegistry.h | 20 ++- .../block/registry/UnknownBlockTypeRegistry.h | 2 +- .../level/block/utils/BlockListSerializer.h | 12 +- .../utils/DepthBasedBlockSupplierUtils.h | 2 +- .../level/block/utils/PlacementDirection.h | 6 +- .../utils/VanillaBlockStateTransformUtils.h | 4 +- .../level/block/utils/VanillaBlockTypes.h | 2 +- .../world/level/block/utils/VanillaBlocks.h | 2 +- src/mc/world/level/chunk/AverageTracker.h | 2 +- .../world/level/chunk/ChunkBlenderFactory.h | 6 +- src/mc/world/level/chunk/ChunkLoadedRequest.h | 14 +- src/mc/world/level/chunk/ChunkSource.h | 5 +- src/mc/world/level/chunk/ChunksLoadedInfo.h | 10 +- src/mc/world/level/chunk/IRequestAction.h | 2 +- src/mc/world/level/chunk/LevelChunk.h | 4 +- .../world/level/chunk/RequestActionLoader.h | 10 +- .../level/chunk/StructureAnimationAction.h | 12 +- src/mc/world/level/chunk/SubChunkRelighter.h | 4 +- .../level/chunk/VanillaLevelChunkUpgrade.h | 14 +- .../level/dimension/ChunkBuildOrderPolicy.h | 2 +- .../dimension/ChunkBuildOrderPolicyBase.h | 2 +- .../level/dimension/ChunkLoadActionList.h | 45 +++--- src/mc/world/level/dimension/Dimension.h | 14 +- .../level/dimension/DimensionDataSerializer.h | 7 +- .../level/dimension/end/EndDragonFight.h | 4 +- .../level/levelgen/CachedHeightGenerator.h | 6 +- .../levelgen/feature/BasaltColumnsFeature.h | 5 +- .../levelgen/feature/BasaltPillarFeature.h | 2 +- .../level/levelgen/feature/DeltaFeature.h | 2 +- .../levelgen/feature/HugeFungusFeature.h | 2 +- .../levelgen/feature/HugeMushroomFeature.h | 2 +- .../feature/TwistingVinesClusterFeature.h | 11 +- .../levelgen/feature/VanillaTreeFeature.h | 18 ++- .../feature/helpers/AcaciaTreeTrunk.h | 22 +-- .../feature/helpers/MangroveTreeTrunk.h | 2 +- .../levelgen/feature/helpers/TreeHelper.h | 21 ++- .../feature/registry/FeatureRegistry.h | 2 +- .../levelgen/structure/JigsawPlacement.h | 8 +- .../structure/LegacyJigsawPlacement.h | 50 +++---- .../structure/StructureAnimationData.h | 12 +- .../structure/StructureBlockPalette.h | 2 +- .../levelgen/structure/StructureEditorData.h | 2 +- .../levelgen/structure/StructureFeature.h | 2 +- .../levelgen/structure/StructureManager.h | 26 +++- .../levelgen/structure/StructureSettings.h | 2 +- .../levelgen/structure/StructureTemplate.h | 26 ++-- .../structurepools/JigsawBlockInfo.h | 8 +- ...urePoolBlockPredicateAxisAlignedPosition.h | 2 +- .../structurepools/StructurePoolElement.h | 6 +- .../levelgen/v1/BeardAndShaverDescription.h | 7 +- .../levelgen/v1/BeardingDescriptionCache.h | 2 +- .../levelgen/v1/FeatureTerrainAdjustments.h | 11 +- .../world/level/levelgen/v1/NetherGenerator.h | 4 +- .../v1/OverworldGeneratorMultinoise.h | 2 +- .../world/level/levelgen/v1/TheEndGenerator.h | 4 +- .../level/pathfinder/NavigationComponent.h | 2 +- src/mc/world/level/pathfinder/PathFinder.h | 2 +- .../level/saveddata/maps/MapItemSavedData.h | 2 +- src/mc/world/level/storage/DBChunkStorage.h | 10 +- src/mc/world/level/storage/DBStorage.h | 2 +- src/mc/world/level/storage/Experiments.h | 4 +- .../storage/ExternalFileLevelStorageSource.h | 2 +- .../world/level/storage/LevelStorageSource.h | 2 +- src/mc/world/level/storage/LevelSummary.h | 2 +- .../loot/functions/SetBannerDetailsFunction.h | 3 +- src/mc/world/level/ticking/ITickingArea.h | 2 +- src/mc/world/level/ticking/ITickingAreaView.h | 2 +- src/mc/world/level/ticking/TickingArea.h | 2 +- src/mc/world/level/ticking/TickingAreaView.h | 2 +- .../world/level/ticking/TickingAreasManager.h | 3 +- src/mc/world/module/GameModuleServer.h | 6 +- src/mc/world/phys/rope/RopeSystem.h | 2 +- src/mc/world/trim/SmithingTrimRecipeUtils.h | 8 +- test/include_all.h | 126 ++++++++-------- xmake.lua | 10 +- 506 files changed, 2451 insertions(+), 1548 deletions(-) rename src/mc/{world/actor => entity}/components/IRideableActor.h (100%) rename src/mc/entity/{flags => components/agent}/AnimationCompleteFlag.h (100%) rename src/mc/entity/{flags => components/agent}/AnimationShrugFlag.h (100%) rename src/mc/{server/commands => entity/components/agent}/CommandCooldown.h (100%) rename src/mc/entity/{flags => components/agent}/ExecutingFlag.h (100%) rename src/mc/{entity/systems/common => network}/ClientNetworkSystem.h (100%) rename src/mc/{entity/systems/common => network}/ClientOrServerNetworkSystemRef.h (100%) rename src/mc/{entity/systems/common => network}/ServerNetworkSystem.h (100%) rename src/mc/world/{ => item}/components/AllowOffHandItemComponent.h (100%) rename src/mc/world/{ => item}/components/CanDestroyInCreativeItemComponent.h (100%) rename src/mc/world/{ => item}/components/DamageItemComponent.h (100%) rename src/mc/world/{ => item}/components/EnchantableItemComponent.h (100%) rename src/mc/{util => world/item/components}/ExplorationMapUtils.h (100%) rename src/mc/world/{ => item}/components/GlintItemComponent.h (100%) rename src/mc/world/{ => item}/components/HandEquippedItemComponent.h (100%) rename src/mc/world/{ => item}/components/HoverTextColorItemComponent.h (100%) rename src/mc/{entity/flags => world/item/components}/ItemActorFlag.h (100%) rename src/mc/{events => world/item/components}/ItemCompleteUseEvent.h (100%) rename src/mc/{events => world/item/components}/ItemGameplayEvent.h (100%) rename src/mc/{events => world/item/components}/ItemReleaseUseEvent.h (100%) rename src/mc/{events => world/item/components}/ItemStartUseEvent.h (100%) rename src/mc/{events => world/item/components}/ItemStopUseEvent.h (100%) rename src/mc/world/{ => item}/components/ItemUseSlowdownModifierComponent.h (100%) rename src/mc/{events => world/item/components}/ItemUsedOnEvent.h (100%) rename src/mc/world/{ => item}/components/LiquidClippedItemComponent.h (100%) rename src/mc/world/{ => item}/components/MaxStackSizeItemComponent.h (100%) rename src/mc/world/{ => item}/components/PublisherItemComponent.h (100%) rename src/mc/world/{ => item}/components/ShouldDespawnItemComponent.h (100%) rename src/mc/world/{ => item}/components/StackedByDataItemComponent.h (100%) rename src/mc/world/{ => item}/components/TagsItemComponent.h (100%) rename src/mc/world/{ => item}/components/UseAnimationItemComponent.h (100%) rename src/mc/world/{ => item}/components/UseModifiersItemComponent.h (100%) rename src/mc/world/{ => level/block}/components/BlockCollisionEvaluationQueueComponent.h (100%) rename src/mc/world/level/block/{utils => components}/BlockComponentBase.h (100%) rename src/mc/world/level/block/{utils => components}/BlockComponentDirectData.h (100%) rename src/mc/world/level/block/{utils => components}/BlockComponentStorage.h (100%) rename src/mc/world/level/block/{utils => components}/BlockComponentStorageFinalizer.h (100%) rename src/mc/world/level/block/{utils => components}/BlockLegacyComponentStorageFinalizer.h (100%) rename src/mc/world/level/block/{utils => components}/BlockTransformationComponent.h (94%) rename src/mc/{deps/core/utility => world/level/block/components}/InsideBlockComponentUtility.h (94%) rename src/mc/world/{ => level/block}/components/InsideBlockWithPosAndBlockComponent.h (100%) rename src/mc/world/{ => level/block}/components/InsideBlockWithPosComponent.h (100%) rename src/mc/world/{ => level/block}/components/InsideGenericBlockComponent.h (100%) rename src/mc/world/{ => level/block}/components/LocalConstBlockSourceFactoryComponent.h (100%) rename src/mc/{network => world/level/block/components}/NetEaseBlockComponentStorage.h (100%) rename src/mc/world/level/block/{utils/blockEvents => events}/BlockFallOnEvent.h (100%) rename src/mc/world/level/block/{utils/blockEvents => events}/BlockFallOnEventComponent.h (100%) rename src/mc/world/level/block/{utils/blockEvents => events}/BlockPlaceEvent.h (100%) rename src/mc/world/level/block/{utils/blockEvents => events}/BlockPlaceEventComponent.h (100%) rename src/mc/world/level/block/{utils/blockEvents => events}/BlockPlayerDestroyEvent.h (100%) rename src/mc/world/level/block/{utils/blockEvents => events}/BlockPlayerDestroyEventComponent.h (100%) rename src/mc/world/level/block/{utils/blockEvents => events}/BlockPlayerInteractEvent.h (100%) rename src/mc/world/level/block/{utils/blockEvents => events}/BlockPlayerInteractEventComponent.h (100%) rename src/mc/world/level/block/{utils/blockEvents => events}/BlockPlayerPlacingEvent.h (100%) rename src/mc/world/level/block/{utils/blockEvents => events}/BlockPlayerPlacingEventComponent.h (100%) rename src/mc/world/level/block/{utils/blockEvents => events}/BlockQueuedTickEvent.h (100%) rename src/mc/world/level/block/{utils/blockEvents => events}/BlockQueuedTickEventComponent.h (100%) rename src/mc/world/level/block/{utils/blockEvents => events}/BlockRandomTickEvent.h (100%) rename src/mc/world/level/block/{utils/blockEvents => events}/BlockRandomTickEventComponent.h (100%) rename src/mc/world/level/block/{utils/blockEvents => events}/BlockStepOffEvent.h (100%) rename src/mc/world/level/block/{utils/blockEvents => events}/BlockStepOffEventComponent.h (100%) rename src/mc/world/level/block/{utils/blockEvents => events}/BlockStepOnEvent.h (100%) rename src/mc/world/level/block/{utils/blockEvents => events}/BlockStepOnEventComponent.h (100%) diff --git a/src/mc/client/social/AchievementEventing.h b/src/mc/client/social/AchievementEventing.h index 5884500b12..fc14119957 100644 --- a/src/mc/client/social/AchievementEventing.h +++ b/src/mc/client/social/AchievementEventing.h @@ -32,8 +32,13 @@ class AchievementEventing { MCAPI void AwardAchievement(class Player&, ::MinecraftEventing::AchievementIds); // symbol: ?BlockBroken@AchievementEventing@Events@Social@@QEAAXAEBVPlayer@@AEBVBlock@@HHG@Z - MCAPI void - BlockBroken(class Player const& player, class Block const& destroyedBlock, int method, int variantData, ushort); + MCAPI void BlockBroken( + class Player const& player, + class Block const& destroyedBlock, + int method, + int variantData, + ushort auxType + ); // symbol: ?CaravanChanged@AchievementEventing@Events@Social@@QEAAXAEAVMob@@H@Z MCAPI void CaravanChanged(class Mob& mob, int caravanSize); @@ -48,13 +53,18 @@ class AchievementEventing { MCAPI void MobEffectChanged(class Player const& player, class MobEffectInstance const& effectInstance, int change); // symbol: ?PlayerBounced@AchievementEventing@Events@Social@@QEAAXAEBVPlayer@@AEBVBlock@@HH@Z - MCAPI void PlayerBounced(class Player const& player, class Block const& block, int bounceHeight, int); + MCAPI void PlayerBounced(class Player const& player, class Block const& block, int bounceHeight, int auxType); // symbol: ?PlayerTeleported@AchievementEventing@Events@Social@@QEAAXAEAVPlayer@@MHH@Z MCAPI void PlayerTeleported(class Player& player, float metersTravelled, int cause, int sourceType); // symbol: ?PlayerTravelled@AchievementEventing@Events@Social@@QEAAXAEBVPlayer@@MHH@Z - MCAPI void PlayerTravelled(class Player const& player, float metersTravelledSinceLastEvent, int, int newBiome); + MCAPI void PlayerTravelled( + class Player const& player, + float metersTravelledSinceLastEvent, + int travelMethodType, + int newBiome + ); // symbol: ??1AchievementEventing@Events@Social@@QEAA@XZ MCAPI ~AchievementEventing(); diff --git a/src/mc/client/social/AggregationEventListener.h b/src/mc/client/social/AggregationEventListener.h index e2350ef418..f4eaecf2e8 100644 --- a/src/mc/client/social/AggregationEventListener.h +++ b/src/mc/client/social/AggregationEventListener.h @@ -69,8 +69,10 @@ class AggregationEventListener : public ::Social::Events::IEventListener { // symbol: // ?_recordAggregatedEvent@AggregationEventListener@Events@Social@@AEAAXAEBVEvent@23@AEAV?$unordered_map@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$deque@VEvent@Events@Social@@V?$allocator@VEvent@Events@Social@@@std@@@2@U?$hash@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@U?$equal_to@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$deque@VEvent@Events@Social@@V?$allocator@VEvent@Events@Social@@@std@@@2@@std@@@2@@std@@@Z - MCAPI void - _recordAggregatedEvent(class Social::Events::Event const& event, std::unordered_map>&); + MCAPI void _recordAggregatedEvent( + class Social::Events::Event const& event, + std::unordered_map>& eventQueue + ); // symbol: ?_sendCustomAggregatedEvents@AggregationEventListener@Events@Social@@AEAAX_N@Z MCAPI void _sendCustomAggregatedEvents(bool forceSend); diff --git a/src/mc/client/social/EventManager.h b/src/mc/client/social/EventManager.h index d546a1efb0..4d89b466d7 100644 --- a/src/mc/client/social/EventManager.h +++ b/src/mc/client/social/EventManager.h @@ -37,13 +37,15 @@ class EventManager { // symbol: // ?buildCommonProperties@EventManager@Events@Social@@QEBA?AV?$unordered_map@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@VProperty@Events@Social@@U?$hash@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@U?$equal_to@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@VProperty@Events@Social@@@std@@@2@@std@@IAEBV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@5@@Z MCAPI std::unordered_map - buildCommonProperties(uint userId, std::vector const&) const; + buildCommonProperties(uint userId, std::vector const& exclude) const; // symbol: // ?buildCommonProperties@EventManager@Events@Social@@QEBAXAEAV?$unordered_map@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@VProperty@Events@Social@@U?$hash@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@U?$equal_to@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@VProperty@Events@Social@@@std@@@2@@std@@IAEBV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@5@@Z - MCAPI void - buildCommonProperties(std::unordered_map& props, uint userId, std::vector const&) - const; + MCAPI void buildCommonProperties( + std::unordered_map& props, + uint userId, + std::vector const& exclude + ) const; // symbol: ?disableEventRecording@EventManager@Events@Social@@QEAAXXZ MCAPI void disableEventRecording(); diff --git a/src/mc/common/HitDetection.h b/src/mc/common/HitDetection.h index 352d1fa425..dedae392d4 100644 --- a/src/mc/common/HitDetection.h +++ b/src/mc/common/HitDetection.h @@ -6,11 +6,11 @@ namespace HitDetection { // NOLINTBEGIN // symbol: ?searchActors@HitDetection@@YAXAEBVVec3@@M0AEBVAABB@@PEAVActor@@PEAVPlayer@@AEAMAEAPEAV4@AEAV2@_N@Z MCAPI void searchActors( - class Vec3 const&, - float pickRange, - class Vec3 const&, + class Vec3 const& pickDirection, + float pickRange, + class Vec3 const& cameraPos, class AABB const&, - class Actor*, + class Actor* cameraEntity, class Player* player, float&, class Actor*&, diff --git a/src/mc/common/Predicate.h b/src/mc/common/Predicate.h index a8f9ae29a9..75ae42752c 100644 --- a/src/mc/common/Predicate.h +++ b/src/mc/common/Predicate.h @@ -5,7 +5,8 @@ namespace Predicate { // NOLINTBEGIN // symbol: ?_calulatePositionalChance@Predicate@@YA_NMMHHHM@Z -MCAPI bool _calulatePositionalChance(float, float, int, int maxDist, int, float); +MCAPI bool +_calulatePositionalChance(float minChance, float maxChance, int minDist, int maxDist, int blockDist, float rand); // NOLINTEND }; // namespace Predicate diff --git a/src/mc/deps/application/AppPlatform.h b/src/mc/deps/application/AppPlatform.h index cb079c2d63..9ed8ff6754 100644 --- a/src/mc/deps/application/AppPlatform.h +++ b/src/mc/deps/application/AppPlatform.h @@ -761,7 +761,7 @@ class AppPlatform { MCVAPI ~AppPlatform(); // symbol: ??0AppPlatform@@QEAA@_N@Z - MCAPI explicit AppPlatform(bool); + MCAPI explicit AppPlatform(bool registerService); // symbol: ?_fireAppTerminated@AppPlatform@@QEAAXXZ MCAPI void _fireAppTerminated(); diff --git a/src/mc/deps/core/FileSystemImpl.h b/src/mc/deps/core/FileSystemImpl.h index 9aae0610ae..21ed90f4c6 100644 --- a/src/mc/deps/core/FileSystemImpl.h +++ b/src/mc/deps/core/FileSystemImpl.h @@ -237,9 +237,9 @@ class FileSystemImpl { // symbol: // ??0FileSystemImpl@Core@@QEAA@W4FileAccessType@1@V?$shared_ptr@VFileStorageArea@Core@@@std@@W4TransactionFlags@1@V?$shared_ptr@VFlatFileManifestTracker@Core@@@4@@Z MCAPI FileSystemImpl( - ::Core::FileAccessType accessType, - std::shared_ptr storageArea, - ::Core::TransactionFlags, + ::Core::FileAccessType accessType, + std::shared_ptr storageArea, + ::Core::TransactionFlags transactionFlags, std::shared_ptr manifestTracker ); diff --git a/src/mc/deps/core/StorageAreasTree.h b/src/mc/deps/core/StorageAreasTree.h index 9ac8c99ef6..f4b68e6534 100644 --- a/src/mc/deps/core/StorageAreasTree.h +++ b/src/mc/deps/core/StorageAreasTree.h @@ -54,7 +54,7 @@ class StorageAreasTree { MCAPI void removeStorageArea(class Core::FileStorageArea& storageArea); // symbol: ?teardown@StorageAreasTree@Core@@QEAAX$$QEAV?$function@$$A6AXAEAVFileStorageArea@Core@@@Z@std@@@Z - MCAPI void teardown(std::function&&); + MCAPI void teardown(std::function&& teardownCallback); // NOLINTEND }; diff --git a/src/mc/deps/core/common/bedrock/BaseGameTestHelper.h b/src/mc/deps/core/common/bedrock/BaseGameTestHelper.h index 590078e9b2..1df20353da 100644 --- a/src/mc/deps/core/common/bedrock/BaseGameTestHelper.h +++ b/src/mc/deps/core/common/bedrock/BaseGameTestHelper.h @@ -259,7 +259,7 @@ class BaseGameTestHelper : public ::Bedrock::EnableNonOwnerReferences { struct ActorDefinitionIdentifier const& actorIdentifier, ::ArmorSlot armorSlot, std::string const&, - int, + int dataValue, class BlockPos const& pos, bool ) = 0; diff --git a/src/mc/deps/core/common/bedrock/Document.h b/src/mc/deps/core/common/bedrock/Document.h index af56e0fae3..49004c617e 100644 --- a/src/mc/deps/core/common/bedrock/Document.h +++ b/src/mc/deps/core/common/bedrock/Document.h @@ -52,9 +52,9 @@ class Document { class Bedrock::Intrusive::list< class Bedrock::JSONObject::NodeBase, class Bedrock::JSONObject::NodeBase, - class Bedrock::JSONObject::NodeBase>&, - uint64 size, - uint64 alignment + class Bedrock::JSONObject::NodeBase>& freeList, + uint64 size, + uint64 alignment ); // symbol: ?_createNode@Document@JSONObject@Bedrock@@AEAAPEAVNodeBase@23@AEBVValueWrapper@23@@Z diff --git a/src/mc/deps/core/common/bedrock/HeaderCollection.h b/src/mc/deps/core/common/bedrock/HeaderCollection.h index 54ca0bf786..76e672a2a5 100644 --- a/src/mc/deps/core/common/bedrock/HeaderCollection.h +++ b/src/mc/deps/core/common/bedrock/HeaderCollection.h @@ -56,7 +56,7 @@ class HeaderCollection { // NOLINTBEGIN // symbol: // ?_addHeader@HeaderCollection@Http@Bedrock@@IEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0_N@Z - MCAPI void _addHeader(std::string const&, std::string const&, bool); + MCAPI void _addHeader(std::string const&, std::string const&, bool setValue); // NOLINTEND diff --git a/src/mc/deps/core/common/bedrock/HttpErrorCategory.h b/src/mc/deps/core/common/bedrock/HttpErrorCategory.h index da8b714029..0eedc00637 100644 --- a/src/mc/deps/core/common/bedrock/HttpErrorCategory.h +++ b/src/mc/deps/core/common/bedrock/HttpErrorCategory.h @@ -24,7 +24,7 @@ class HttpErrorCategory { virtual std::string message(int) const; // vIndex: 3, symbol: ?default_error_condition@HttpErrorCategory@Http@Bedrock@@UEBA?AVerror_condition@std@@H@Z - virtual std::error_condition default_error_condition(int) const; + virtual std::error_condition default_error_condition(int errorValue) const; // vIndex: 4, symbol: ?equivalent@error_category@std@@UEBA_NHAEBVerror_condition@2@@Z virtual bool equivalent(int, std::error_condition const&) const; diff --git a/src/mc/deps/core/common/bedrock/MemoryPage.h b/src/mc/deps/core/common/bedrock/MemoryPage.h index b2a03c0213..5d44b0429f 100644 --- a/src/mc/deps/core/common/bedrock/MemoryPage.h +++ b/src/mc/deps/core/common/bedrock/MemoryPage.h @@ -34,8 +34,8 @@ class MemoryPage { // NOLINTBEGIN // symbol: ?_allocate@MemoryPage@JSONObject@Bedrock@@AEAAPEAXP8123@EAA_K_K0@ZP8123@EAAPEAX00@Z00@Z MCAPI void* _allocate( - uint64 (Bedrock::JSONObject::MemoryPage::*)(uint64, uint64), - void* (Bedrock::JSONObject::MemoryPage::*)(uint64, uint64), + uint64 (Bedrock::JSONObject::MemoryPage::*allocateFn)(uint64, uint64), + void* (Bedrock::JSONObject::MemoryPage::*forwardFn)(uint64, uint64), uint64 bytes, uint64 align ); diff --git a/src/mc/deps/core/common/bedrock/MutableObjectHelper.h b/src/mc/deps/core/common/bedrock/MutableObjectHelper.h index 5140941fcf..25d10d24b1 100644 --- a/src/mc/deps/core/common/bedrock/MutableObjectHelper.h +++ b/src/mc/deps/core/common/bedrock/MutableObjectHelper.h @@ -27,7 +27,7 @@ class MutableObjectHelper { std::_Tree_iterator>>>, bool> - insert(std::string_view key, class Bedrock::JSONObject::ValueWrapper const& value, bool); + insert(std::string_view key, class Bedrock::JSONObject::ValueWrapper const& value, bool copyKey); // NOLINTEND }; diff --git a/src/mc/deps/core/common/bedrock/ObjectNode.h b/src/mc/deps/core/common/bedrock/ObjectNode.h index b5b5a204c7..c157cb9960 100644 --- a/src/mc/deps/core/common/bedrock/ObjectNode.h +++ b/src/mc/deps/core/common/bedrock/ObjectNode.h @@ -40,7 +40,7 @@ class ObjectNode { // symbol: // ?insert@ObjectNode@JSONObject@Bedrock@@QEAA?AV?$iterator_base@$0A@@123@V?$basic_string_view@DU?$char_traits@D@std@@@std@@AEBVValueWrapper@23@_N@Z MCAPI class Bedrock::JSONObject::ObjectNode::iterator_base<0> - insert(std::string_view, class Bedrock::JSONObject::ValueWrapper const& value, bool); + insert(std::string_view keyStr, class Bedrock::JSONObject::ValueWrapper const& value, bool copyKey); // symbol: ?setContents@ObjectNode@JSONObject@Bedrock@@QEAA_NAEBVValueWrapper@23@@Z MCAPI bool setContents(class Bedrock::JSONObject::ValueWrapper const& contents); diff --git a/src/mc/deps/core/common/bedrock/Request.h b/src/mc/deps/core/common/bedrock/Request.h index 65bba38bc8..1b8599fa12 100644 --- a/src/mc/deps/core/common/bedrock/Request.h +++ b/src/mc/deps/core/common/bedrock/Request.h @@ -65,7 +65,7 @@ class Request { MCAPI void setBody(gsl::not_null> body); // symbol: ?setHeaders@Request@Http@Bedrock@@QEAAXAEBVHeaderCollection@23@@Z - MCAPI void setHeaders(class Bedrock::Http::HeaderCollection const&); + MCAPI void setHeaders(class Bedrock::Http::HeaderCollection const& headers); // symbol: ?setMethod@Request@Http@Bedrock@@QEAAXVMethod@23@@Z MCAPI void setMethod(class Bedrock::Http::Method method); diff --git a/src/mc/deps/core/common/bedrock/Response.h b/src/mc/deps/core/common/bedrock/Response.h index 50f6728fb7..845f9acee2 100644 --- a/src/mc/deps/core/common/bedrock/Response.h +++ b/src/mc/deps/core/common/bedrock/Response.h @@ -48,7 +48,7 @@ class Response { MCAPI void setBody(gsl::not_null> body); // symbol: ?setHeaders@Response@Http@Bedrock@@QEAAXAEBVHeaderCollection@23@@Z - MCAPI void setHeaders(class Bedrock::Http::HeaderCollection const&); + MCAPI void setHeaders(class Bedrock::Http::HeaderCollection const& headers); // symbol: ?setStatus@Response@Http@Bedrock@@QEAAXVStatus@23@@Z MCAPI void setStatus(class Bedrock::Http::Status status); diff --git a/src/mc/deps/core/common/bedrock/pubsub/DeferredSubscriptionHub.h b/src/mc/deps/core/common/bedrock/pubsub/DeferredSubscriptionHub.h index 18616e3623..b6ecef1db1 100644 --- a/src/mc/deps/core/common/bedrock/pubsub/DeferredSubscriptionHub.h +++ b/src/mc/deps/core/common/bedrock/pubsub/DeferredSubscriptionHub.h @@ -43,7 +43,7 @@ class DeferredSubscriptionHub { virtual void clear() = 0; // vIndex: 5, symbol: ?erase@DeferredSubscriptionHubBase@PubSub@Bedrock@@UEAA_KAEAVRawSubscription@23@@Z - virtual uint64 erase(class Bedrock::PubSub::RawSubscription&) = 0; + virtual uint64 erase(class Bedrock::PubSub::RawSubscription& subscription) = 0; // vIndex: 6, symbol: ?size@DeferredSubscriptionHubBase@PubSub@Bedrock@@UEBA_KXZ virtual uint64 size() const = 0; @@ -56,7 +56,7 @@ class DeferredSubscriptionHub { virtual ::Bedrock::PubSub::DeferredSubscriptionHub::HubType getHubType() const = 0; // vIndex: 9, symbol: ?_join@DeferredSubscriptionHubBase@PubSub@Bedrock@@EEAAX$$QEAVDeferredSubscription@23@@Z - virtual void _join(class Bedrock::PubSub::DeferredSubscription&&) = 0; + virtual void _join(class Bedrock::PubSub::DeferredSubscription&& subscription) = 0; // vIndex: 10, symbol: // ?_enqueue@PriorityDeferredSubscriptionHub@PubSub@Bedrock@@EEAAXV?$function@$$A6AXXZ@std@@W4ConnectPosition@23@V?$optional@H@5@@Z diff --git a/src/mc/deps/core/common/bedrock/pubsub/DeferredSubscriptionHubBase.h b/src/mc/deps/core/common/bedrock/pubsub/DeferredSubscriptionHubBase.h index 2507f3e66f..c230134bf5 100644 --- a/src/mc/deps/core/common/bedrock/pubsub/DeferredSubscriptionHubBase.h +++ b/src/mc/deps/core/common/bedrock/pubsub/DeferredSubscriptionHubBase.h @@ -38,7 +38,7 @@ class DeferredSubscriptionHubBase : public ::Bedrock::PubSub::DeferredSubscripti virtual void clear(); // vIndex: 5, symbol: ?erase@DeferredSubscriptionHubBase@PubSub@Bedrock@@UEAA_KAEAVRawSubscription@23@@Z - virtual uint64 erase(class Bedrock::PubSub::RawSubscription&); + virtual uint64 erase(class Bedrock::PubSub::RawSubscription& subscription); // vIndex: 6, symbol: ?size@DeferredSubscriptionHubBase@PubSub@Bedrock@@UEBA_KXZ virtual uint64 size() const; @@ -47,7 +47,7 @@ class DeferredSubscriptionHubBase : public ::Bedrock::PubSub::DeferredSubscripti virtual bool empty() const; // vIndex: 9, symbol: ?_join@DeferredSubscriptionHubBase@PubSub@Bedrock@@EEAAX$$QEAVDeferredSubscription@23@@Z - virtual void _join(class Bedrock::PubSub::DeferredSubscription&&); + virtual void _join(class Bedrock::PubSub::DeferredSubscription&& subscription); // vIndex: 11, symbol: ?_runOneEvent@PriorityDeferredSubscriptionHub@PubSub@Bedrock@@EEAA_NXZ virtual bool _runOneEvent() = 0; diff --git a/src/mc/deps/core/resource/ResourceInformation.h b/src/mc/deps/core/resource/ResourceInformation.h index 756bf4e1e8..5a6003d831 100644 --- a/src/mc/deps/core/resource/ResourceInformation.h +++ b/src/mc/deps/core/resource/ResourceInformation.h @@ -29,8 +29,8 @@ class ResourceInformation { class SemVersion const& version, class mce::UUID const& uuid, std::string const& type, - std::string const&, - std::string const& entry + std::string const& language, + std::string const& entry ); // symbol: @@ -40,8 +40,8 @@ class ResourceInformation { class SemVersion const& version, class mce::UUID const& uuid, ::ResourceInformation::ResourceType type, - std::string const&, - std::string const& entry + std::string const& language, + std::string const& entry ); // symbol: ?satisfies@ResourceInformation@@QEBA_NAEBUPackIdVersion@@@Z diff --git a/src/mc/deps/core/resource/ResourceLoader.h b/src/mc/deps/core/resource/ResourceLoader.h index 70d542457e..e51a49d85c 100644 --- a/src/mc/deps/core/resource/ResourceLoader.h +++ b/src/mc/deps/core/resource/ResourceLoader.h @@ -29,9 +29,11 @@ class ResourceLoader : public ::Bedrock::EnableNonOwnerReferences { // vIndex: 2, symbol: // ?load@ResourcePackManager@@UEBA_NAEBVResourceLocation@@AEAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@4@@Z - virtual bool - load(class ResourceLocation const& resourceLocation, std::string& resourceStream, std::vector const&) - const = 0; + virtual bool load( + class ResourceLocation const& resourceLocation, + std::string& resourceStream, + std::vector const& extensionList + ) const = 0; // vIndex: 3, symbol: // ?load@ResourceLoader@@UEBA_NAEBVResourceLocationPair@@AEAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@4@@Z diff --git a/src/mc/deps/core/utility/Agent.h b/src/mc/deps/core/utility/Agent.h index aefcbd744b..b6b33a67e8 100644 --- a/src/mc/deps/core/utility/Agent.h +++ b/src/mc/deps/core/utility/Agent.h @@ -24,12 +24,12 @@ MCAPI extern float const MOVE_EPSILON; // symbol: ?getNextBlock@Agent@Util@@YA?AUBlockQueryResult@AgentComponents@@AEAVBlockSource@@VVec3@@MW4Direction@4@@Z MCAPI struct AgentComponents::BlockQueryResult -getNextBlock(class BlockSource& source, class Vec3 curPos, float, ::AgentComponents::Direction direction); +getNextBlock(class BlockSource& source, class Vec3 curPos, float bodyRot, ::AgentComponents::Direction direction); // symbol: // ?getNextBlockSweep@Agent@Util@@YA?AUBlockQueryResult@AgentComponents@@AEAVBlockSource@@VVec3@@MW4Direction@4@@Z MCAPI struct AgentComponents::BlockQueryResult -getNextBlockSweep(class BlockSource& source, class Vec3 curPos, float, ::AgentComponents::Direction direction); +getNextBlockSweep(class BlockSource& source, class Vec3 curPos, float bodyRot, ::AgentComponents::Direction direction); // symbol: // ?getNextBlockUnfiltered@Agent@Util@@YA?AUBlockQueryResult@AgentComponents@@AEAVBlockSource@@VVec3@@MW4Direction@4@@Z diff --git a/src/mc/deps/core/utility/GoalSelectorUtility.h b/src/mc/deps/core/utility/GoalSelectorUtility.h index 5f4790dbdb..564edb0c6d 100644 --- a/src/mc/deps/core/utility/GoalSelectorUtility.h +++ b/src/mc/deps/core/utility/GoalSelectorUtility.h @@ -9,10 +9,10 @@ namespace GoalSelectorUtility { MCAPI bool canUseInSystem(class PrioritizedGoal& goal, std::vector>& goalSet); // symbol: ?tickGoals@GoalSelectorUtility@@YAXAEAVMob@@_N@Z -MCAPI void tickGoals(class Mob& owner, bool); +MCAPI void tickGoals(class Mob& owner, bool isTarget); // symbol: ?tryStartGoals@GoalSelectorUtility@@YAXAEAVMob@@_N@Z -MCAPI void tryStartGoals(class Mob& owner, bool); +MCAPI void tryStartGoals(class Mob& owner, bool isTarget); // NOLINTEND }; // namespace GoalSelectorUtility diff --git a/src/mc/deps/core/utility/ItemReplacementCommandUtil.h b/src/mc/deps/core/utility/ItemReplacementCommandUtil.h index bf592bfed5..4a94619ebc 100644 --- a/src/mc/deps/core/utility/ItemReplacementCommandUtil.h +++ b/src/mc/deps/core/utility/ItemReplacementCommandUtil.h @@ -49,7 +49,7 @@ class ItemReplacementCommandUtil { // symbol: ?_slotBoundsValid@ItemReplacementCommandUtil@Util@@CA_NAEAUReplacementResults@2@HHV?$optional@H@std@@1@Z MCAPI static bool - _slotBoundsValid(struct Util::ReplacementResults&, int, int, std::optional, std::optional); + _slotBoundsValid(struct Util::ReplacementResults&, int slotId, int, std::optional, std::optional); // NOLINTEND }; diff --git a/src/mc/deps/core/utility/Url.h b/src/mc/deps/core/utility/Url.h index a018793dfb..7f54edc3f6 100644 --- a/src/mc/deps/core/utility/Url.h +++ b/src/mc/deps/core/utility/Url.h @@ -19,7 +19,7 @@ MCAPI extern struct Util::Url::Components const EMPTY_URL; // symbol: // ?addUrlSchemeIfNotPresent@Url@Util@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV34@0@Z -MCAPI std::string addUrlSchemeIfNotPresent(std::string const& url, std::string const&); +MCAPI std::string addUrlSchemeIfNotPresent(std::string const& url, std::string const& scheme); // symbol: ?anonymizeIPAddress@Url@Util@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV34@@Z MCAPI std::string anonymizeIPAddress(std::string const& ipAddress); diff --git a/src/mc/deps/core/utility/Util.h b/src/mc/deps/core/utility/Util.h index c73a431ce7..0c038e99ba 100644 --- a/src/mc/deps/core/utility/Util.h +++ b/src/mc/deps/core/utility/Util.h @@ -320,7 +320,12 @@ MCAPI std::string vFormat(char const*, char*); // symbol: // ?validateIdentifier@Util@@YA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4LogArea@@_NPEAU?$pair@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V12@@3@@Z -MCAPI bool validateIdentifier(std::string const& id, ::LogArea logArea, bool, std::pair*); +MCAPI bool validateIdentifier( + std::string const& id, + ::LogArea logArea, + bool allowMinecraftNamespace, + std::pair* idNameOut +); // symbol: // ?validateIdentifierChunk@Util@@YA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4LogArea@@@Z diff --git a/src/mc/deps/core/utility/VanillaGoalUtility.h b/src/mc/deps/core/utility/VanillaGoalUtility.h index 7384f5f129..321f8e23a9 100644 --- a/src/mc/deps/core/utility/VanillaGoalUtility.h +++ b/src/mc/deps/core/utility/VanillaGoalUtility.h @@ -5,8 +5,11 @@ namespace VanillaGoalUtility { // NOLINTBEGIN // symbol: ?registerGoalsToFactory@VanillaGoalUtility@@YAXAEAVActorGoalFactory@@AEBVBaseGameVersion@@AEBVExperiments@@@Z -MCAPI void -registerGoalsToFactory(class ActorGoalFactory& factory, class BaseGameVersion const& baseGameVersion, class Experiments const&); +MCAPI void registerGoalsToFactory( + class ActorGoalFactory& factory, + class BaseGameVersion const& baseGameVersion, + class Experiments const& experiments +); // NOLINTEND }; // namespace VanillaGoalUtility diff --git a/src/mc/deps/crypto/hash/HMAC.h b/src/mc/deps/crypto/hash/HMAC.h index d04357da6f..34249d8ffe 100644 --- a/src/mc/deps/crypto/hash/HMAC.h +++ b/src/mc/deps/crypto/hash/HMAC.h @@ -18,7 +18,7 @@ class HMAC { // NOLINTBEGIN // symbol: // ??0HMAC@Hash@Crypto@@QEAA@W4HashType@12@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@H@Z - MCAPI HMAC(::Crypto::Hash::HashType type, std::string const& key, int); + MCAPI HMAC(::Crypto::Hash::HashType type, std::string const& key, int resultSize); // symbol: ?resultSize@HMAC@Hash@Crypto@@QEBA_KXZ MCAPI uint64 resultSize() const; diff --git a/src/mc/deps/json/Block.h b/src/mc/deps/json/Block.h index e5e516f2b9..f09bccacce 100644 --- a/src/mc/deps/json/Block.h +++ b/src/mc/deps/json/Block.h @@ -56,13 +56,22 @@ MCAPI void applyLambdaToDescriptionObject( // symbol: // ?legacyFindIfMissingFieldAndRemoveComponent@Block@RapidJsonDataFixers@@YAXV?$GenericMemberIterator@$0A@U?$UTF8@D@rapidjson@@V?$MemoryPoolAllocator@VCrtAllocator@rapidjson@@@2@@rapidjson@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@1@Z -MCAPI void -legacyFindIfMissingFieldAndRemoveComponent(rapidjson::GenericMemberIterator<0, rapidjson::UTF8, rapidjson::MemoryPoolAllocator>, std::string const& componentName, std::string const&); +MCAPI void legacyFindIfMissingFieldAndRemoveComponent( + rapidjson::GenericMemberIterator<0, rapidjson::UTF8, rapidjson::MemoryPoolAllocator>, + std::string const& componentName, + std::string const& fieldName +); // symbol: // ?legacyRemoveComponentIfMissingField@Block@RapidJsonDataFixers@@YAXAEAV?$GenericDocument@U?$UTF8@D@rapidjson@@V?$MemoryPoolAllocator@VCrtAllocator@rapidjson@@@2@VCrtAllocator@2@@rapidjson@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@1@Z -MCAPI void -legacyRemoveComponentIfMissingField(rapidjson::GenericDocument, rapidjson::MemoryPoolAllocator, rapidjson::CrtAllocator>& document, std::string const& componentName, std::string const&); +MCAPI void legacyRemoveComponentIfMissingField( + rapidjson::GenericDocument< + rapidjson::UTF8, + rapidjson::MemoryPoolAllocator, + rapidjson::CrtAllocator>& document, + std::string const& componentName, + std::string const& fieldName +); // symbol: // ?removeComponent@Block@RapidJsonDataFixers@@YAXAEAV?$GenericDocument@U?$UTF8@D@rapidjson@@V?$MemoryPoolAllocator@VCrtAllocator@rapidjson@@@2@VCrtAllocator@2@@rapidjson@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_N1@Z @@ -78,8 +87,14 @@ MCAPI void removeComponent( // symbol: // ?removeComponentField@Block@RapidJsonDataFixers@@YAXAEAV?$GenericDocument@U?$UTF8@D@rapidjson@@V?$MemoryPoolAllocator@VCrtAllocator@rapidjson@@@2@VCrtAllocator@2@@rapidjson@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@1@Z -MCAPI void -removeComponentField(rapidjson::GenericDocument, rapidjson::MemoryPoolAllocator, rapidjson::CrtAllocator>& document, std::string const& componentName, std::string const&); +MCAPI void removeComponentField( + rapidjson::GenericDocument< + rapidjson::UTF8, + rapidjson::MemoryPoolAllocator, + rapidjson::CrtAllocator>& document, + std::string const& componentName, + std::string const& fieldName +); // symbol: // ?removeDuplicateComponents@Block@RapidJsonDataFixers@@YAXAEAV?$GenericDocument@U?$UTF8@D@rapidjson@@V?$MemoryPoolAllocator@VCrtAllocator@rapidjson@@@2@VCrtAllocator@2@@rapidjson@@@Z @@ -107,8 +122,14 @@ renameComponentField(rapidjson::GenericDocument, rapidjson // symbol: // ?replaceComponentObjectWithFieldValue@Block@RapidJsonDataFixers@@YAXAEAV?$GenericDocument@U?$UTF8@D@rapidjson@@V?$MemoryPoolAllocator@VCrtAllocator@rapidjson@@@2@VCrtAllocator@2@@rapidjson@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@1@Z -MCAPI void -replaceComponentObjectWithFieldValue(rapidjson::GenericDocument, rapidjson::MemoryPoolAllocator, rapidjson::CrtAllocator>& document, std::string const& componentName, std::string const&); +MCAPI void replaceComponentObjectWithFieldValue( + rapidjson::GenericDocument< + rapidjson::UTF8, + rapidjson::MemoryPoolAllocator, + rapidjson::CrtAllocator>& document, + std::string const& componentName, + std::string const& fieldName +); // NOLINTEND }; // namespace RapidJsonDataFixers::Block diff --git a/src/mc/deps/json/JsonHelpers.h b/src/mc/deps/json/JsonHelpers.h index d751f0c5d9..03ba1da53f 100644 --- a/src/mc/deps/json/JsonHelpers.h +++ b/src/mc/deps/json/JsonHelpers.h @@ -11,11 +11,11 @@ namespace JsonHelpers { // NOLINTBEGIN // symbol: // ?addObjectField@JsonHelpers@@YAXAEAVValue@Json@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV23@@Z -MCAPI void addObjectField(class Json::Value&, std::string const&, class Json::Value const& object); +MCAPI void addObjectField(class Json::Value&, std::string const& fieldName, class Json::Value const& object); // symbol: // ?addStringField@JsonHelpers@@YAXAEAVValue@Json@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@1@Z -MCAPI void addStringField(class Json::Value&, std::string const&, std::string const& value); +MCAPI void addStringField(class Json::Value&, std::string const& fieldName, std::string const& value); // symbol: // ?parseJson@JsonHelpers@@YA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEAVValue@Json@@@Z diff --git a/src/mc/deps/json/JsonUtil.h b/src/mc/deps/json/JsonUtil.h index 4ffbf771f5..a60e6fe5c5 100644 --- a/src/mc/deps/json/JsonUtil.h +++ b/src/mc/deps/json/JsonUtil.h @@ -56,7 +56,7 @@ MCAPI std::map getBlock() const; diff --git a/src/mc/entity/components/JumpControlComponent.h b/src/mc/entity/components/JumpControlComponent.h index 0c4fe23f88..97bac746aa 100644 --- a/src/mc/entity/components/JumpControlComponent.h +++ b/src/mc/entity/components/JumpControlComponent.h @@ -33,7 +33,7 @@ class JumpControlComponent { MCAPI bool getSwimming() const; // symbol: ?initMultiTypeJumpComponent@JumpControlComponent@@QEAAXAEAVMob@@AEAVActorDefinitionDescriptor@@@Z - MCAPI void initMultiTypeJumpComponent(class Mob& entity, class ActorDefinitionDescriptor&); + MCAPI void initMultiTypeJumpComponent(class Mob& entity, class ActorDefinitionDescriptor& initDescription); // symbol: ?initializeFromDefinition@JumpControlComponent@@QEAAXAEAVMob@@PEAUJumpControlDescription@@@Z MCAPI void initializeFromDefinition(class Mob& owner, struct JumpControlDescription* description); diff --git a/src/mc/entity/components/LodestoneCompassComponent.h b/src/mc/entity/components/LodestoneCompassComponent.h index 00b4eaa1e0..debce74683 100644 --- a/src/mc/entity/components/LodestoneCompassComponent.h +++ b/src/mc/entity/components/LodestoneCompassComponent.h @@ -20,7 +20,7 @@ class LodestoneCompassComponent { // symbol: // ?getAnimationFrame@LodestoneCompassComponent@@QEAAHAEBV?$variant@UActorUniqueID@@U?$pair@VBlockPos@@V?$AutomaticID@VDimension@@H@@@std@@@std@@AEBVBlockPos@@AEBV?$AutomaticID@VDimension@@H@@@Z MCAPI int - getAnimationFrame(std::variant> const&, class BlockPos const&, DimensionType const&); + getAnimationFrame(std::variant> const& compassId, class BlockPos const&, DimensionType const&); // symbol: ?initialize@LodestoneCompassComponent@@QEAAXAEBVPositionTrackingId@@@Z MCAPI void initialize(class PositionTrackingId const&); @@ -31,7 +31,7 @@ class LodestoneCompassComponent { // symbol: // ?setTrackOnlyInSameDimension@LodestoneCompassComponent@@QEAAXAEBV?$variant@UActorUniqueID@@U?$pair@VBlockPos@@V?$AutomaticID@VDimension@@H@@@std@@@std@@_N@Z MCAPI void setTrackOnlyInSameDimension( - std::variant> const&, + std::variant> const& compassId, bool ); @@ -52,8 +52,10 @@ class LodestoneCompassComponent { // NOLINTBEGIN // symbol: // ?_findCalculator@LodestoneCompassComponent@@AEAAPEAVLodestoneCompassComponentCalculator@@AEBV?$variant@UActorUniqueID@@U?$pair@VBlockPos@@V?$AutomaticID@VDimension@@H@@@std@@@std@@_N@Z - MCAPI class LodestoneCompassComponentCalculator* - _findCalculator(std::variant> const&, bool); + MCAPI class LodestoneCompassComponentCalculator* _findCalculator( + std::variant> const& compassId, + bool createIfNotFound + ); // NOLINTEND diff --git a/src/mc/entity/components/MoveControlComponent.h b/src/mc/entity/components/MoveControlComponent.h index 99290d1f61..b87b2d71d8 100644 --- a/src/mc/entity/components/MoveControlComponent.h +++ b/src/mc/entity/components/MoveControlComponent.h @@ -29,7 +29,7 @@ class MoveControlComponent { MCAPI class Vec3 const& getWantedPosition() const; // symbol: ?initMultiTypeMovementComponent@MoveControlComponent@@QEAAXAEAVMob@@AEAVActorDefinitionDescriptor@@@Z - MCAPI void initMultiTypeMovementComponent(class Mob& entity, class ActorDefinitionDescriptor&); + MCAPI void initMultiTypeMovementComponent(class Mob& entity, class ActorDefinitionDescriptor& initDescription); // symbol: ?initializeFromDefinition@MoveControlComponent@@QEAAXAEAVMob@@PEAUMoveControlDescription@@@Z MCAPI void initializeFromDefinition(class Mob& owner, struct MoveControlDescription* description); diff --git a/src/mc/entity/components/NameableDefinition.h b/src/mc/entity/components/NameableDefinition.h index e368e655f8..3fc22c12a7 100644 --- a/src/mc/entity/components/NameableDefinition.h +++ b/src/mc/entity/components/NameableDefinition.h @@ -22,7 +22,7 @@ class NameableDefinition { MCAPI NameableDefinition(); // symbol: ?addNameAction@NameableDefinition@@QEAAXAEBUNameAction@@@Z - MCAPI void addNameAction(struct NameAction const&); + MCAPI void addNameAction(struct NameAction const& nameAction); // symbol: ?initialize@NameableDefinition@@QEBAXAEAVEntityContext@@AEAVNameableComponent@@@Z MCAPI void initialize(class EntityContext& entity, class NameableComponent& component) const; diff --git a/src/mc/entity/components/ReplayStateComponent.h b/src/mc/entity/components/ReplayStateComponent.h index 2c2dfc82b7..1a0f9d6828 100644 --- a/src/mc/entity/components/ReplayStateComponent.h +++ b/src/mc/entity/components/ReplayStateComponent.h @@ -20,7 +20,10 @@ class ReplayStateComponent { // symbol: // ??0ReplayStateComponent@@QEAA@V?$unique_ptr@VActorHistory@@U?$default_delete@VActorHistory@@@std@@@std@@V?$unique_ptr@UIReplayStatePolicy@@U?$default_delete@UIReplayStatePolicy@@@std@@@2@@Z - MCAPI ReplayStateComponent(std::unique_ptr, std::unique_ptr policy); + MCAPI ReplayStateComponent( + std::unique_ptr history, + std::unique_ptr policy + ); // symbol: ?addInputToFrontOfCurrentFrame@ReplayStateComponent@@QEBAXV?$shared_ptr@UIReplayableActorInput@@@std@@@Z MCAPI void addInputToFrontOfCurrentFrame(std::shared_ptr) const; diff --git a/src/mc/entity/components/ShareableComponent.h b/src/mc/entity/components/ShareableComponent.h index 217fb504bc..b2f089bcdc 100644 --- a/src/mc/entity/components/ShareableComponent.h +++ b/src/mc/entity/components/ShareableComponent.h @@ -32,13 +32,16 @@ class ShareableComponent { ) const; // symbol: ?itemBelongsInInventory@ShareableComponent@@QEBA_NAEAVActor@@AEBVItemStack@@_N@Z - MCAPI bool itemBelongsInInventory(class Actor& owner, class ItemStack const& item, bool) const; + MCAPI bool + itemBelongsInInventory(class Actor& owner, class ItemStack const& item, bool canPickupToHandOrEquipment) const; // symbol: ?wantsMore@ShareableComponent@@QEBAHAEBVActor@@AEBVItemStack@@@Z MCAPI int wantsMore(class Actor const& owner, class ItemStack const& item) const; // symbol: ?willPickup@ShareableComponent@@QEBA_NAEAVActor@@AEBVItemStack@@_N2@Z - MCAPI bool willPickup(class Actor& owner, class ItemStack const& item, bool, bool) const; + MCAPI bool + willPickup(class Actor& owner, class ItemStack const& item, bool canPickupAnyItem, bool canPickupToHandOrEquipment) + const; // NOLINTEND @@ -49,10 +52,10 @@ class ShareableComponent { // symbol: ?_shouldReplaceItem@ShareableComponent@@AEBA_NAEBVItemStack@@0AEBVShareableDefinition@@_N@Z MCAPI bool _shouldReplaceItem( - class ItemStack const&, + class ItemStack const& itemToReplace, class ItemStack const& newItem, class ShareableDefinition const& shareable, - bool + bool canPickupAnyItem ) const; // NOLINTEND diff --git a/src/mc/entity/components/ShooterComponent.h b/src/mc/entity/components/ShooterComponent.h index 4a8fcf2a21..f8c6c5d19c 100644 --- a/src/mc/entity/components/ShooterComponent.h +++ b/src/mc/entity/components/ShooterComponent.h @@ -31,7 +31,7 @@ class ShooterComponent { // private: // NOLINTBEGIN // symbol: ?_shootProjectile@ShooterComponent@@AEAAXAEAVActor@@AEBUActorDefinitionIdentifier@@H@Z - MCAPI void _shootProjectile(class Actor& owner, struct ActorDefinitionIdentifier const&, int); + MCAPI void _shootProjectile(class Actor& owner, struct ActorDefinitionIdentifier const&, int auxVal); // NOLINTEND }; diff --git a/src/mc/entity/components/SoundEventRequest.h b/src/mc/entity/components/SoundEventRequest.h index 36e3af8ff3..47e13027a7 100644 --- a/src/mc/entity/components/SoundEventRequest.h +++ b/src/mc/entity/components/SoundEventRequest.h @@ -55,8 +55,8 @@ struct SoundEventRequest { // symbol: // ?tryPlaySound@SoundEventRequest@@SA?AV?$optional@USoundEventRequest@@@std@@V?$AutomaticID@VDimension@@H@@AEBUActorDataFlagComponent@@AEBUActorDefinitionIdentifier@@W4LevelSoundEvent@Legacy@Puv@@AEBVVec3@@H@Z MCAPI static std::optional tryPlaySound( - DimensionType dimension, - struct ActorDataFlagComponent const&, + DimensionType dimension, + struct ActorDataFlagComponent const& actorData, struct ActorDefinitionIdentifier const& id, ::Puv::Legacy::LevelSoundEvent type, class Vec3 const& pos, diff --git a/src/mc/entity/flags/AnimationCompleteFlag.h b/src/mc/entity/components/agent/AnimationCompleteFlag.h similarity index 100% rename from src/mc/entity/flags/AnimationCompleteFlag.h rename to src/mc/entity/components/agent/AnimationCompleteFlag.h diff --git a/src/mc/entity/flags/AnimationShrugFlag.h b/src/mc/entity/components/agent/AnimationShrugFlag.h similarity index 100% rename from src/mc/entity/flags/AnimationShrugFlag.h rename to src/mc/entity/components/agent/AnimationShrugFlag.h diff --git a/src/mc/server/commands/CommandCooldown.h b/src/mc/entity/components/agent/CommandCooldown.h similarity index 100% rename from src/mc/server/commands/CommandCooldown.h rename to src/mc/entity/components/agent/CommandCooldown.h diff --git a/src/mc/entity/flags/ExecutingFlag.h b/src/mc/entity/components/agent/ExecutingFlag.h similarity index 100% rename from src/mc/entity/flags/ExecutingFlag.h rename to src/mc/entity/components/agent/ExecutingFlag.h diff --git a/src/mc/entity/components/agent/Move.h b/src/mc/entity/components/agent/Move.h index 29848b0fbb..b5c5878b5d 100644 --- a/src/mc/entity/components/agent/Move.h +++ b/src/mc/entity/components/agent/Move.h @@ -23,7 +23,7 @@ class Move { // NOLINTBEGIN // symbol: ?setup@Move@AgentComponents@@SAXAEAV12@AEAVEntityContext@@W4Direction@2@@Z MCAPI static void - setup(class AgentComponents::Move&, class EntityContext& entity, ::AgentComponents::Direction dir); + setup(class AgentComponents::Move& move, class EntityContext& entity, ::AgentComponents::Direction dir); // NOLINTEND }; diff --git a/src/mc/entity/systems/GroupSizeSystem.h b/src/mc/entity/systems/GroupSizeSystem.h index 05901006a8..6f8248ea30 100644 --- a/src/mc/entity/systems/GroupSizeSystem.h +++ b/src/mc/entity/systems/GroupSizeSystem.h @@ -34,7 +34,7 @@ class GroupSizeSystem : public ::ITickingSystem { // private: // NOLINTBEGIN // symbol: ?_tickComponent@GroupSizeSystem@@CAXAEAVActorOwnerComponent@@AEAVGroupSizeComponent@@@Z - MCAPI static void _tickComponent(class ActorOwnerComponent&, class GroupSizeComponent&); + MCAPI static void _tickComponent(class ActorOwnerComponent&, class GroupSizeComponent& groupSizeComponent); // NOLINTEND }; diff --git a/src/mc/entity/systems/InsideWaterlilyBlockSystemImpl.h b/src/mc/entity/systems/InsideWaterlilyBlockSystemImpl.h index 59af62680e..66cf362ead 100644 --- a/src/mc/entity/systems/InsideWaterlilyBlockSystemImpl.h +++ b/src/mc/entity/systems/InsideWaterlilyBlockSystemImpl.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/components/InsideBlockWithPosComponent.h" +#include "mc/world/level/block/components/InsideBlockWithPosComponent.h" namespace InsideWaterlilyBlockSystemImpl { // NOLINTBEGIN diff --git a/src/mc/entity/systems/common/BiomeDecorationSystem.h b/src/mc/entity/systems/common/BiomeDecorationSystem.h index 58ec7169ba..25af31db65 100644 --- a/src/mc/entity/systems/common/BiomeDecorationSystem.h +++ b/src/mc/entity/systems/common/BiomeDecorationSystem.h @@ -15,7 +15,7 @@ decorate(class LevelChunk& lc, class BlockSource& source, class Random& random, // symbol: // ?decorateBiome@BiomeDecorationSystem@@YA_NAEAVLevelChunk@@AEAVBlockSource@@AEAVRandom@@V?$span@$$CBUBiomeDecorationFeature@@$0?0@gsl@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PEBVBiome@@AEBVIPreliminarySurfaceProvider@@@Z MCAPI bool -decorateBiome(class LevelChunk& lc, class BlockSource& source, class Random& random, gsl::span, std::string const& pass, class Biome const* biome, class IPreliminarySurfaceProvider const&); +decorateBiome(class LevelChunk& lc, class BlockSource& source, class Random& random, gsl::span featureList, std::string const& pass, class Biome const* biome, class IPreliminarySurfaceProvider const&); // symbol: // ?decorateLargeFeature@BiomeDecorationSystem@@YA_NW4GeneratorType@@AEBIAEAVBlockVolumeTarget@@AEAVRandom@@V?$span@$$CBUBiomeDecorationFeature@@$0?0@gsl@@AEBVChunkPos@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z diff --git a/src/mc/entity/systems/common/EntityInside.h b/src/mc/entity/systems/common/EntityInside.h index 519bda1510..b0cbaa3a17 100644 --- a/src/mc/entity/systems/common/EntityInside.h +++ b/src/mc/entity/systems/common/EntityInside.h @@ -12,8 +12,8 @@ #include "mc/deps/core/data/Write.h" #include "mc/entity/EntityFactoryT.h" #include "mc/world/components/FlagComponent.h" -#include "mc/world/components/InsideBlockWithPosAndBlockComponent.h" -#include "mc/world/components/InsideBlockWithPosComponent.h" +#include "mc/world/level/block/components/InsideBlockWithPosAndBlockComponent.h" +#include "mc/world/level/block/components/InsideBlockWithPosComponent.h" // auto generated forward declare list // clang-format off diff --git a/src/mc/entity/systems/common/EntityInsideSystem.h b/src/mc/entity/systems/common/EntityInsideSystem.h index bde89dea7a..0a7e060d0d 100644 --- a/src/mc/entity/systems/common/EntityInsideSystem.h +++ b/src/mc/entity/systems/common/EntityInsideSystem.h @@ -6,8 +6,8 @@ #include "mc/common/wrapper/optional_ref.h" #include "mc/entity/EntityModifier.h" #include "mc/world/components/FlagComponent.h" -#include "mc/world/components/InsideBlockWithPosAndBlockComponent.h" -#include "mc/world/components/InsideBlockWithPosComponent.h" +#include "mc/world/level/block/components/InsideBlockWithPosAndBlockComponent.h" +#include "mc/world/level/block/components/InsideBlockWithPosComponent.h" namespace EntityInsideSystem { // NOLINTBEGIN diff --git a/src/mc/entity/systems/common/EntityInsideSystemImpl.h b/src/mc/entity/systems/common/EntityInsideSystemImpl.h index 509ae085f4..1c66ab51a0 100644 --- a/src/mc/entity/systems/common/EntityInsideSystemImpl.h +++ b/src/mc/entity/systems/common/EntityInsideSystemImpl.h @@ -13,8 +13,8 @@ #include "mc/entity/EntityFactoryT.h" #include "mc/entity/EntityModifier.h" #include "mc/world/components/FlagComponent.h" -#include "mc/world/components/InsideBlockWithPosAndBlockComponent.h" -#include "mc/world/components/InsideBlockWithPosComponent.h" +#include "mc/world/level/block/components/InsideBlockWithPosAndBlockComponent.h" +#include "mc/world/level/block/components/InsideBlockWithPosComponent.h" namespace EntityInsideSystemImpl { // NOLINTBEGIN diff --git a/src/mc/entity/systems/common/HardcodedAnimationSystem.h b/src/mc/entity/systems/common/HardcodedAnimationSystem.h index 7c21a95857..3af96f962b 100644 --- a/src/mc/entity/systems/common/HardcodedAnimationSystem.h +++ b/src/mc/entity/systems/common/HardcodedAnimationSystem.h @@ -27,7 +27,7 @@ class HardcodedAnimationSystem { MCAPI static void doHardcodedAnimation( class StrictEntityContext const&, struct MobAnimationComponent&, - struct MobBodyRotationComponent const&, + struct MobBodyRotationComponent const& bodyRot, struct MobHurtTimeComponent const&, struct ActorWalkAnimationComponent&, struct StateVectorComponent const&, diff --git a/src/mc/entity/systems/common/InsideEndPortalBlockSystemImpl.h b/src/mc/entity/systems/common/InsideEndPortalBlockSystemImpl.h index 491bdfa429..ff3d411d26 100644 --- a/src/mc/entity/systems/common/InsideEndPortalBlockSystemImpl.h +++ b/src/mc/entity/systems/common/InsideEndPortalBlockSystemImpl.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/components/InsideBlockWithPosAndBlockComponent.h" +#include "mc/world/level/block/components/InsideBlockWithPosAndBlockComponent.h" namespace InsideEndPortalBlockSystemImpl { // NOLINTBEGIN diff --git a/src/mc/entity/systems/common/food_exhaustion/FoodExhaustionSystemImpl.h b/src/mc/entity/systems/common/food_exhaustion/FoodExhaustionSystemImpl.h index 1069ab43b0..c599fa5d6d 100644 --- a/src/mc/entity/systems/common/food_exhaustion/FoodExhaustionSystemImpl.h +++ b/src/mc/entity/systems/common/food_exhaustion/FoodExhaustionSystemImpl.h @@ -29,7 +29,7 @@ MCAPI void doFoodExhaustion( struct ServerPlayerCurrentMovementComponent const& playerGameType, struct StateVectorComponent const&, struct ActorDataFlagComponent const& state, - struct GetAttachPositionViews const&, + struct GetAttachPositionViews const& actorData, class EntityModifier, ::GameType, class IConstBlockSource const& region diff --git a/src/mc/entity/utilities/ActorInventoryUtils.h b/src/mc/entity/utilities/ActorInventoryUtils.h index 05c87aa3d6..0b15a32e90 100644 --- a/src/mc/entity/utilities/ActorInventoryUtils.h +++ b/src/mc/entity/utilities/ActorInventoryUtils.h @@ -22,8 +22,8 @@ MCAPI void forEachItemOnActor(class Actor const& actor, std::function callback ); @@ -50,9 +50,9 @@ MCAPI class ItemStack const* getItem(class Actor const&, ::Puv::Legacy::Equipmen // symbol: // ?queryActorEquipmentSlotForItem@ActorInventoryUtils@@YA_NAEBVActor@@AEBVItemInstance@@W4EquipmentSlot@Legacy@Puv@@AEBVCommandIntegerRange@@3AEBUComparisonOptions@ItemStackBase@@@Z MCAPI bool queryActorEquipmentSlotForItem( - class Actor const& actor, - class ItemInstance const& item, - ::Puv::Legacy::EquipmentSlot, + class Actor const& actor, + class ItemInstance const& item, + ::Puv::Legacy::EquipmentSlot equipmentSlot, class CommandIntegerRange const& slot, class CommandIntegerRange const& quantity, struct ItemStackBase::ComparisonOptions const& options diff --git a/src/mc/entity/utilities/ActorMobilityUtils.h b/src/mc/entity/utilities/ActorMobilityUtils.h index f1690ddee6..c49a6f0a67 100644 --- a/src/mc/entity/utilities/ActorMobilityUtils.h +++ b/src/mc/entity/utilities/ActorMobilityUtils.h @@ -17,7 +17,7 @@ namespace ActorMobilityUtils { // symbol: // ?canJump@ActorMobilityUtils@@YA_NAEBUActorDataFlagComponent@@AEBVIConstBlockSource@@AEBUStateVectorComponent@@AEBUAABBShapeComponent@@AEBVGetCollisionShapeInterface@@@Z MCAPI bool -canJump(struct ActorDataFlagComponent const&, class IConstBlockSource const& region, struct StateVectorComponent const&, struct AABBShapeComponent const&, class GetCollisionShapeInterface const&); +canJump(struct ActorDataFlagComponent const& actorData, class IConstBlockSource const& region, struct StateVectorComponent const&, struct AABBShapeComponent const&, class GetCollisionShapeInterface const&); // symbol: // ?endJump@ActorMobilityUtils@@YAXAEBVStrictEntityContext@@AEBUStateVectorComponent@@AEAUActorDataJumpDurationComponent@@AEAUActorDataDirtyFlagsComponent@@AEAUMobJumpComponent@@PEBUVehicleComponent@@V?$ViewT@VStrictEntityContext@@U?$Include@V?$FlagComponent@UParrotFlag@@@@@@$$CBUPassengerComponent@@@@AEAV?$EntityModifier@V?$FlagComponent@UExitFromPassengerFlag@@@@V?$FlagComponent@UStopRidingRequestFlag@@@@V?$FlagComponent@UMobIsJumpingFlag@@@@@@@Z diff --git a/src/mc/entity/utilities/ActorParticles.h b/src/mc/entity/utilities/ActorParticles.h index 91abfbde33..ce8d24d0e4 100644 --- a/src/mc/entity/utilities/ActorParticles.h +++ b/src/mc/entity/utilities/ActorParticles.h @@ -15,15 +15,20 @@ MCAPI uint calculateDustParticleNumberFromFall(float fallDistance); MCAPI class Vec3 getDustParticlePosition(class Vec3 const& position, class AABB const& aabb); // symbol: ?spawnBalloonPopParticles@ActorParticles@@YAXIVAABB@@W4PaletteColor@@AEAVILevel@@AEAVRandom@@@Z -MCAPI void -spawnBalloonPopParticles(uint, class AABB aabb, ::PaletteColor color, class ILevel& level, class Random& random); +MCAPI void spawnBalloonPopParticles( + uint particleCount, + class AABB aabb, + ::PaletteColor color, + class ILevel& level, + class Random& random +); // symbol: ?spawnDeathParticles@ActorParticles@@YAXVVec3@@VVec2@@MAEAVILevel@@@Z MCAPI void spawnDeathParticles(class Vec3 position, class Vec2 aabbDim, float heightOffset, class ILevel& level); // symbol: ?spawnDustParticlesFromFalling@ActorParticles@@YAXIVVec3@@AEAVILevel@@AEBVBlock@@VBlockPos@@@Z MCAPI void spawnDustParticlesFromFalling( - uint, + uint particleCount, class Vec3 position, class ILevel& level, class Block const& block, @@ -32,8 +37,8 @@ MCAPI void spawnDustParticlesFromFalling( // symbol: ?spawnParticlesInArea@ActorParticles@@YAXAEAVILevel@@IW4ParticleType@@AEBVVec3@@AEBVVec2@@AEAVRandom@@@Z MCAPI void spawnParticlesInArea( - class ILevel& level, - uint, + class ILevel& level, + uint particleCount, ::ParticleType type, class Vec3 const& position, class Vec2 const& aabbDim, @@ -45,7 +50,7 @@ MCAPI void spawnPukeParticles(uint, uint, class Vec3 position, class Vec3, class // symbol: ?spawnTreasureHuntingParticles@ActorParticles@@YAXIVVec3@@0VVec2@@AEAVILevel@@AEAVRandom@@@Z MCAPI void spawnTreasureHuntingParticles( - uint, + uint particleCount, class Vec3 position, class Vec3 direction, class Vec2 aabbDim, diff --git a/src/mc/entity/utilities/ActorSynchedData.h b/src/mc/entity/utilities/ActorSynchedData.h index 377a4ae515..bf96add716 100644 --- a/src/mc/entity/utilities/ActorSynchedData.h +++ b/src/mc/entity/utilities/ActorSynchedData.h @@ -68,7 +68,7 @@ MCAPI void updateSize(class Actor& actor); MCAPI void updateTarget(class Actor& actor, struct ActorUniqueID& target); // symbol: ?updateTintColor@ActorSynchedData@@YAXAEAVColor@mce@@AEBW4PaletteColor@@@Z -MCAPI void updateTintColor(class mce::Color&, ::PaletteColor const&); +MCAPI void updateTintColor(class mce::Color& tintColor, ::PaletteColor const&); // NOLINTEND }; // namespace ActorSynchedData diff --git a/src/mc/events/MinecraftEventing.h b/src/mc/events/MinecraftEventing.h index 2deec25e53..dc5719aa18 100644 --- a/src/mc/events/MinecraftEventing.h +++ b/src/mc/events/MinecraftEventing.h @@ -511,14 +511,14 @@ class MinecraftEventing { // ?fireEventGameRulesUpdated@MinecraftEventing@@UEAAXMMAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z MCVAPI void fireEventGameRulesUpdated(float oldValue, float newValue, std::string const& gameRuleName); - // symbol: - // ?fireEventGameRulesUpdated@MinecraftEventing@@UEAAX_N0AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z - MCVAPI void fireEventGameRulesUpdated(bool oldValue, bool newValue, std::string const& gameRuleName); - // symbol: // ?fireEventGameRulesUpdated@MinecraftEventing@@UEAAXHHAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z MCVAPI void fireEventGameRulesUpdated(int oldValue, int newValue, std::string const& gameRuleName); + // symbol: + // ?fireEventGameRulesUpdated@MinecraftEventing@@UEAAX_N0AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z + MCVAPI void fireEventGameRulesUpdated(bool oldValue, bool newValue, std::string const& gameRuleName); + // symbol: ?fireEventGameTip@MinecraftEventing@@UEAAXHHHW4InputMode@@@Z MCVAPI void fireEventGameTip(int, int, int, ::InputMode); diff --git a/src/mc/external/scripting/ClosureAny.h b/src/mc/external/scripting/ClosureAny.h index 87eedfffb6..adde8b8308 100644 --- a/src/mc/external/scripting/ClosureAny.h +++ b/src/mc/external/scripting/ClosureAny.h @@ -39,12 +39,12 @@ class ClosureAny : public ::Scripting::ScriptValue { // symbol: // ??0ClosureAny@Scripting@@QEAA@PEAVIRuntime@1@UContextId@1@VWeakLifetimeScope@1@V?$StrongTypedObjectHandle@UClosureType@Scripting@@@1@PEAVIObjectInspector@1@@Z MCAPI - ClosureAny(class Scripting::IRuntime*, struct Scripting::ContextId, class Scripting::WeakLifetimeScope scope, class Scripting::StrongTypedObjectHandle handle, class Scripting::IObjectInspector*); + ClosureAny(class Scripting::IRuntime* runtime, struct Scripting::ContextId, class Scripting::WeakLifetimeScope scope, class Scripting::StrongTypedObjectHandle handle, class Scripting::IObjectInspector*); // symbol: // ?callGeneric@ClosureAny@Scripting@@QEBA?AVResultAny@2@PEAVmeta_any@entt@@IVmeta_type@5@V?$optional@W4Privilege@Scripting@@@std@@@Z MCAPI class Scripting::ResultAny - callGeneric(entt::meta_any* args, uint, entt::meta_type, std::optional<::Scripting::Privilege>) const; + callGeneric(entt::meta_any* args, uint argc, entt::meta_type, std::optional<::Scripting::Privilege>) const; // symbol: ?compareTo@ClosureAny@Scripting@@QEBA_NAEBV12@@Z MCAPI bool compareTo(class Scripting::ClosureAny const& rhs) const; diff --git a/src/mc/external/scripting/Debugger.h b/src/mc/external/scripting/Debugger.h index b1ce0fe6c4..e38a9437d7 100644 --- a/src/mc/external/scripting/Debugger.h +++ b/src/mc/external/scripting/Debugger.h @@ -64,7 +64,7 @@ class Debugger : public ::Scripting::IDebuggerController { MCAPI static char const* ToTypeName(struct JSContext* ctx, struct JSValue val); // symbol: ?TransportClose@Debugger@QuickJS@Scripting@@CAXPEAUJSRuntime@@PEAX@Z - MCAPI static void TransportClose(struct JSRuntime*, void*); + MCAPI static void TransportClose(struct JSRuntime* rt, void*); // symbol: ?TransportPeek@Debugger@QuickJS@Scripting@@CA_KPEAX@Z MCAPI static uint64 TransportPeek(void*); diff --git a/src/mc/external/scripting/FutureAny.h b/src/mc/external/scripting/FutureAny.h index 3df4e9d9e6..2a4d2cccb0 100644 --- a/src/mc/external/scripting/FutureAny.h +++ b/src/mc/external/scripting/FutureAny.h @@ -34,7 +34,7 @@ class FutureAny : public ::Scripting::ScriptValue { // symbol: // ??0FutureAny@Scripting@@QEAA@PEAVIRuntime@1@UContextId@1@VWeakLifetimeScope@1@V?$StrongTypedObjectHandle@UFutureType@Scripting@@@1@PEAVIObjectInspector@1@@Z MCAPI - FutureAny(class Scripting::IRuntime*, struct Scripting::ContextId, class Scripting::WeakLifetimeScope scope, class Scripting::StrongTypedObjectHandle, class Scripting::IObjectInspector*); + FutureAny(class Scripting::IRuntime* runtime, struct Scripting::ContextId, class Scripting::WeakLifetimeScope scope, class Scripting::StrongTypedObjectHandle, class Scripting::IObjectInspector*); // symbol: ?getResult@FutureAny@Scripting@@QEBA?AVResultAny@2@XZ MCAPI class Scripting::ResultAny getResult() const; diff --git a/src/mc/external/scripting/ModuleBindingBuilder.h b/src/mc/external/scripting/ModuleBindingBuilder.h index f0732a20f3..347a3cd00d 100644 --- a/src/mc/external/scripting/ModuleBindingBuilder.h +++ b/src/mc/external/scripting/ModuleBindingBuilder.h @@ -116,18 +116,27 @@ class ModuleBindingBuilder { // symbol: // ?_assertClassMemberSymbolDoesntExist@ModuleBindingBuilder@Scripting@@CA_NAEBUClassBinding@2@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBUTaggedBinding@2@@Z - MCAPI static bool - _assertClassMemberSymbolDoesntExist(struct Scripting::ClassBinding const&, std::string const& name, struct Scripting::TaggedBinding const&); + MCAPI static bool _assertClassMemberSymbolDoesntExist( + struct Scripting::ClassBinding const&, + std::string const& name, + struct Scripting::TaggedBinding const& binding + ); // symbol: // ?_assertEnumMemberSymbolDoesntExist@ModuleBindingBuilder@Scripting@@CA_NAEBUEnumBinding@2@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBUTaggedBinding@2@@Z - MCAPI static bool - _assertEnumMemberSymbolDoesntExist(struct Scripting::EnumBinding const&, std::string const& name, struct Scripting::TaggedBinding const&); + MCAPI static bool _assertEnumMemberSymbolDoesntExist( + struct Scripting::EnumBinding const&, + std::string const& name, + struct Scripting::TaggedBinding const& binding + ); // symbol: // ?_assertModuleMemberSymbolDoesntExist@ModuleBindingBuilder@Scripting@@CA_NAEBUModuleBinding@2@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBUTaggedBinding@2@@Z - MCAPI static bool - _assertModuleMemberSymbolDoesntExist(struct Scripting::ModuleBinding const&, std::string const& name, struct Scripting::TaggedBinding const&); + MCAPI static bool _assertModuleMemberSymbolDoesntExist( + struct Scripting::ModuleBinding const&, + std::string const& name, + struct Scripting::TaggedBinding const& binding + ); // symbol: ?_validateClassConstructors@ModuleBindingBuilder@Scripting@@CAXAEBUModuleBinding@2@@Z MCAPI static void _validateClassConstructors(struct Scripting::ModuleBinding const&); diff --git a/src/mc/external/scripting/NativeFunctionPayload.h b/src/mc/external/scripting/NativeFunctionPayload.h index 6f7e6ea5c6..f1ac2f6384 100644 --- a/src/mc/external/scripting/NativeFunctionPayload.h +++ b/src/mc/external/scripting/NativeFunctionPayload.h @@ -36,7 +36,7 @@ class NativeFunctionPayload : public ::Scripting::IPayload { // vIndex: 1, symbol: // ?runOn@NativeFunctionPayload@Scripting@@UEAA?AVResultAny@2@UContextId@2@AEAVNativeRuntime@2@V?$optional@W4Privilege@Scripting@@@std@@@Z virtual class Scripting::ResultAny - runOn(struct Scripting::ContextId, class Scripting::NativeRuntime&, std::optional<::Scripting::Privilege>); + runOn(struct Scripting::ContextId, class Scripting::NativeRuntime& runtime, std::optional<::Scripting::Privilege>); // vIndex: 2, symbol: // ?runOn@IPayload@Scripting@@UEAA?AVResultAny@2@UContextId@2@AEAVStringBasedRuntime@2@V?$optional@W4Privilege@Scripting@@@std@@@Z diff --git a/src/mc/external/scripting/NativeRuntime.h b/src/mc/external/scripting/NativeRuntime.h index 05c4dfb2dd..5121a53ebf 100644 --- a/src/mc/external/scripting/NativeRuntime.h +++ b/src/mc/external/scripting/NativeRuntime.h @@ -51,7 +51,7 @@ class NativeRuntime : public ::Scripting::IRuntime { // vIndex: 1, symbol: // ?createContext@NativeRuntime@Scripting@@UEAA?AV?$optional@VScriptContext@Scripting@@@std@@$$QEAUModuleBindingBundle@2@PEAVIDependencyLoader@2@PEAVIPrinter@2@AEBUContextConfig@2@@Z virtual std::optional - createContext(struct Scripting::ModuleBindingBundle&&, class Scripting::IDependencyLoader* loader, class Scripting::IPrinter*, struct Scripting::ContextConfig const&); + createContext(struct Scripting::ModuleBindingBundle&& bindings, class Scripting::IDependencyLoader* loader, class Scripting::IPrinter*, struct Scripting::ContextConfig const&); // vIndex: 2, symbol: ?destroyContext@NativeRuntime@Scripting@@UEAAXUContextId@2@@Z virtual void destroyContext(struct Scripting::ContextId); diff --git a/src/mc/external/scripting/PromiseAny.h b/src/mc/external/scripting/PromiseAny.h index eaf4227c54..d217d787a8 100644 --- a/src/mc/external/scripting/PromiseAny.h +++ b/src/mc/external/scripting/PromiseAny.h @@ -38,7 +38,7 @@ class PromiseAny : public ::Scripting::ScriptValue { // symbol: // ??0PromiseAny@Scripting@@QEAA@PEAVIRuntime@1@UContextId@1@VWeakLifetimeScope@1@AEBV?$StrongTypedObjectHandle@UPromiseType@Scripting@@@1@@Z MCAPI - PromiseAny(class Scripting::IRuntime*, struct Scripting::ContextId, class Scripting::WeakLifetimeScope scope, class Scripting::StrongTypedObjectHandle const&); + PromiseAny(class Scripting::IRuntime* runtime, struct Scripting::ContextId, class Scripting::WeakLifetimeScope scope, class Scripting::StrongTypedObjectHandle const&); // symbol: // ?getPromiseHandle@PromiseAny@Scripting@@QEBA?AV?$optional@U?$TypedObjectHandle@UPromiseType@Scripting@@@Scripting@@@std@@XZ diff --git a/src/mc/external/scripting/QuickJSRuntime.h b/src/mc/external/scripting/QuickJSRuntime.h index d8af486d82..ce9fe71e2f 100644 --- a/src/mc/external/scripting/QuickJSRuntime.h +++ b/src/mc/external/scripting/QuickJSRuntime.h @@ -55,8 +55,8 @@ class QuickJSRuntime : public ::Scripting::StringBasedRuntime { // vIndex: 1, symbol: // ?createContext@QuickJSRuntime@QuickJS@Scripting@@UEAA?AV?$optional@VScriptContext@Scripting@@@std@@$$QEAUModuleBindingBundle@3@PEAVIDependencyLoader@3@PEAVIPrinter@3@AEBUContextConfig@3@@Z virtual std::optional createContext( - struct Scripting::ModuleBindingBundle&&, - class Scripting::IDependencyLoader* loader, + struct Scripting::ModuleBindingBundle&& bindings, + class Scripting::IDependencyLoader* loader, class Scripting::IPrinter*, struct Scripting::ContextConfig const& config ); @@ -72,7 +72,7 @@ class QuickJSRuntime : public ::Scripting::StringBasedRuntime { // vIndex: 4, symbol: // ?call@QuickJSRuntime@QuickJS@Scripting@@UEAA?AVResultAny@3@UContextId@3@U?$TypedObjectHandle@UClosureType@Scripting@@@3@PEAVmeta_any@entt@@IAEBVmeta_type@8@V?$optional@W4Privilege@Scripting@@@std@@@Z virtual class Scripting::ResultAny - call(struct Scripting::ContextId, struct Scripting::TypedObjectHandle, entt::meta_any* args, uint, entt::meta_type const&, std::optional<::Scripting::Privilege>); + call(struct Scripting::ContextId, struct Scripting::TypedObjectHandle, entt::meta_any* args, uint argc, entt::meta_type const&, std::optional<::Scripting::Privilege>); // vIndex: 5, symbol: // ?resolve@QuickJSRuntime@QuickJS@Scripting@@UEAA?AVResultAny@3@UContextId@3@U?$TypedObjectHandle@UPromiseType@Scripting@@@3@AEAVmeta_any@entt@@@Z @@ -144,7 +144,7 @@ class QuickJSRuntime : public ::Scripting::StringBasedRuntime { // vIndex: 20, symbol: // ?runString@QuickJSRuntime@QuickJS@Scripting@@UEAA?AVResultAny@3@UContextId@3@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@1V?$optional@W4Privilege@Scripting@@@7@@Z virtual class Scripting::ResultAny - runString(struct Scripting::ContextId, std::string const& scriptName, std::string const&, std::optional<::Scripting::Privilege>); + runString(struct Scripting::ContextId, std::string const& scriptName, std::string const& scriptData, std::optional<::Scripting::Privilege>); // symbol: // ??0QuickJSRuntime@QuickJS@Scripting@@QEAA@AEAVRegistryManager@2@PEAVDependencyLocator@2@V?$unique_ptr@UMallocFunctions@QuickJS@Scripting@@U?$default_delete@UMallocFunctions@QuickJS@Scripting@@@std@@@std@@V?$function@$$A6A?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV?$basic_string_view@DU?$char_traits@D@std@@@2@AEBV12@AEBV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@2@@Z@6@@Z diff --git a/src/mc/external/scripting/ScriptEngine.h b/src/mc/external/scripting/ScriptEngine.h index 26ff25d73d..f11824cf46 100644 --- a/src/mc/external/scripting/ScriptEngine.h +++ b/src/mc/external/scripting/ScriptEngine.h @@ -78,7 +78,7 @@ class ScriptEngine : public ::Scripting::IScriptEngine { // symbol: // ?addRuntime@ScriptEngine@Scripting@@QEAAXV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$unique_ptr@VIRuntime@Scripting@@U?$default_delete@VIRuntime@Scripting@@@std@@@4@@Z - MCAPI void addRuntime(std::string name, std::unique_ptr); + MCAPI void addRuntime(std::string name, std::unique_ptr runtime); // symbol: // ?computeRuntimeStats@ScriptEngine@Scripting@@QEBA?AURuntimeStats@2@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z diff --git a/src/mc/external/scripting/ScriptValue.h b/src/mc/external/scripting/ScriptValue.h index 33f61eba35..b3113afeb0 100644 --- a/src/mc/external/scripting/ScriptValue.h +++ b/src/mc/external/scripting/ScriptValue.h @@ -27,8 +27,11 @@ class ScriptValue { MCAPI ScriptValue(class Scripting::ScriptValue const& rhs); // symbol: ??0ScriptValue@Scripting@@QEAA@PEAVIRuntime@1@UContextId@1@VWeakLifetimeScope@1@@Z - MCAPI - ScriptValue(class Scripting::IRuntime*, struct Scripting::ContextId, class Scripting::WeakLifetimeScope scope); + MCAPI ScriptValue( + class Scripting::IRuntime* runtime, + struct Scripting::ContextId, + class Scripting::WeakLifetimeScope scope + ); // symbol: ?getContextId@ScriptValue@Scripting@@QEBA?AUContextId@2@XZ MCAPI struct Scripting::ContextId getContextId() const; diff --git a/src/mc/external/scripting/StringPayload.h b/src/mc/external/scripting/StringPayload.h index 73a41701a7..c28b967785 100644 --- a/src/mc/external/scripting/StringPayload.h +++ b/src/mc/external/scripting/StringPayload.h @@ -37,10 +37,10 @@ class StringPayload : public ::Scripting::IPayload { // vIndex: 2, symbol: // ?runOn@StringPayload@Scripting@@UEAA?AVResultAny@2@UContextId@2@AEAVStringBasedRuntime@2@V?$optional@W4Privilege@Scripting@@@std@@@Z virtual class Scripting::ResultAny - runOn(struct Scripting::ContextId, class Scripting::StringBasedRuntime&, std::optional<::Scripting::Privilege>); + runOn(struct Scripting::ContextId, class Scripting::StringBasedRuntime& runtime, std::optional<::Scripting::Privilege>); // symbol: ??0StringPayload@Scripting@@QEAA@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0@Z - MCAPI StringPayload(std::string scriptName, std::string); + MCAPI StringPayload(std::string scriptName, std::string scriptData); // NOLINTEND }; diff --git a/src/mc/external/scripting/Watchdog.h b/src/mc/external/scripting/Watchdog.h index 3228b4d509..3f5b82c2c5 100644 --- a/src/mc/external/scripting/Watchdog.h +++ b/src/mc/external/scripting/Watchdog.h @@ -53,7 +53,7 @@ class Watchdog : public ::Scripting::IWatchdog { virtual void resetWatchdogTimes(); // symbol: ??0Watchdog@QuickJS@Scripting@@QEAA@PEAUJSRuntime@@UWatchdogSettings@2@@Z - MCAPI Watchdog(struct JSRuntime*, struct Scripting::WatchdogSettings settings); + MCAPI Watchdog(struct JSRuntime* rt, struct Scripting::WatchdogSettings settings); // NOLINTEND diff --git a/src/mc/external/scripting/gametest/ScriptGameTestHelper.h b/src/mc/external/scripting/gametest/ScriptGameTestHelper.h index 10be617ac4..7882c02691 100644 --- a/src/mc/external/scripting/gametest/ScriptGameTestHelper.h +++ b/src/mc/external/scripting/gametest/ScriptGameTestHelper.h @@ -87,7 +87,7 @@ class ScriptGameTestHelper { std::string const& actorIdentifier, int armorSlot, std::string const&, - int, + int dataValue, class Vec3 const& position, bool ); @@ -413,8 +413,8 @@ class ScriptGameTestHelper { // ?_getBlockFromVariant@ScriptGameTestHelper@ScriptModuleGameTest@@AEAA?AV?$optional@PEBVBlockLegacy@@@std@@AEBV?$variant@V?$StrongTypedObjectHandle@VScriptBlockType@ScriptModuleMinecraft@@@Scripting@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@4@@Z MCAPI std::optional _getBlockFromVariant(std::variant< - class Scripting::StrongTypedObjectHandle, - std::string> const&); + class Scripting::StrongTypedObjectHandle, + std::string> const&); // symbol: // ?_callClosure@ScriptGameTestHelper@ScriptModuleGameTest@@CA?AV?$optional@UGameTestError@gametest@@@std@@AEBV?$Closure@$$A6AXXZ$$V@Scripting@@@Z diff --git a/src/mc/external/scripting/gametest/ScriptGameTestRegistrationBuilder.h b/src/mc/external/scripting/gametest/ScriptGameTestRegistrationBuilder.h index cbe1b7399f..bb5d9882a8 100644 --- a/src/mc/external/scripting/gametest/ScriptGameTestRegistrationBuilder.h +++ b/src/mc/external/scripting/gametest/ScriptGameTestRegistrationBuilder.h @@ -53,7 +53,7 @@ class ScriptGameTestRegistrationBuilder { // symbol: // ?rotate@ScriptGameTestRegistrationBuilder@ScriptModuleGameTest@@QEAA?AV?$StrongTypedObjectHandle@VScriptGameTestRegistrationBuilder@ScriptModuleGameTest@@@Scripting@@_N@Z MCAPI class Scripting::StrongTypedObjectHandle - rotate(bool); + rotate(bool rotate); // symbol: // ?setupTicks@ScriptGameTestRegistrationBuilder@ScriptModuleGameTest@@QEAA?AV?$StrongTypedObjectHandle@VScriptGameTestRegistrationBuilder@ScriptModuleGameTest@@@Scripting@@H@Z diff --git a/src/mc/external/scripting/quickjs/ContextObject.h b/src/mc/external/scripting/quickjs/ContextObject.h index fb2b75e8e9..1f720ae3fe 100644 --- a/src/mc/external/scripting/quickjs/ContextObject.h +++ b/src/mc/external/scripting/quickjs/ContextObject.h @@ -73,7 +73,7 @@ class ContextObject { // symbol: // ??0ContextObject@QuickJS@Scripting@@QEAA@UContextId@2@PEAUJSContext@@VWeakLifetimeScope@2@$$QEAUModuleBindingBundle@2@$$QEAV?$unique_ptr@VScriptObjectFactory@Scripting@@U?$default_delete@VScriptObjectFactory@Scripting@@@std@@@std@@$$QEAV?$unique_ptr@VObjectInspector@QuickJS@Scripting@@U?$default_delete@VObjectInspector@QuickJS@Scripting@@@std@@@8@$$QEAV?$unique_ptr@VIPrinter@Scripting@@U?$default_delete@VIPrinter@Scripting@@@std@@@8@PEAVIDependencyLoader@2@PEAUJSRuntime@@AEBUContextConfig@2@@Z MCAPI - ContextObject(struct Scripting::ContextId, struct JSContext*, class Scripting::WeakLifetimeScope scope, struct Scripting::ModuleBindingBundle&&, std::unique_ptr&& factory, std::unique_ptr&&, std::unique_ptr&&, class Scripting::IDependencyLoader* loader, struct JSRuntime*, struct Scripting::ContextConfig const&); + ContextObject(struct Scripting::ContextId, struct JSContext*, class Scripting::WeakLifetimeScope scope, struct Scripting::ModuleBindingBundle&& bindings, std::unique_ptr&& factory, std::unique_ptr&&, std::unique_ptr&&, class Scripting::IDependencyLoader* loader, struct JSRuntime*, struct Scripting::ContextConfig const&); // symbol: // ?addUnhandledPromiseRejection@ContextObject@QuickJS@Scripting@@QEAAXPEAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_N@Z @@ -82,7 +82,7 @@ class ContextObject { // symbol: // ?call@ContextObject@QuickJS@Scripting@@QEAA?AVResultAny@3@U?$TypedObjectHandle@UClosureType@Scripting@@@3@PEAVmeta_any@entt@@IAEBVmeta_type@7@@Z MCAPI class Scripting::ResultAny - call(struct Scripting::TypedObjectHandle, entt::meta_any* args, uint, entt::meta_type const&); + call(struct Scripting::TypedObjectHandle, entt::meta_any* args, uint argc, entt::meta_type const&); // symbol: // ?getFutureResult@ContextObject@QuickJS@Scripting@@QEBA?AVResultAny@3@U?$TypedObjectHandle@UFutureType@Scripting@@@3@AEBVmeta_type@entt@@@Z @@ -100,7 +100,7 @@ class ContextObject { // symbol: // ?run@ContextObject@QuickJS@Scripting@@QEAA?AVResultAny@3@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0@Z - MCAPI class Scripting::ResultAny run(std::string const& scriptName, std::string const&); + MCAPI class Scripting::ResultAny run(std::string const& scriptName, std::string const& scriptData); // symbol: ??1ContextObject@QuickJS@Scripting@@QEAA@XZ MCAPI ~ContextObject(); diff --git a/src/mc/external/scripting/quickjs/QuickJS.h b/src/mc/external/scripting/quickjs/QuickJS.h index 329924b547..a32d7bf9af 100644 --- a/src/mc/external/scripting/quickjs/QuickJS.h +++ b/src/mc/external/scripting/quickjs/QuickJS.h @@ -115,22 +115,23 @@ MCAPI entt::meta_any ExceptionWriter(struct JSContext* ctx); // symbol: ?GenericFreeFunctionCaller@QuickJS@Scripting@@YA?AUJSValue@@PEAUJSContext@@U3@HPEAU3@H2@Z MCAPI struct JSValue -GenericFreeFunctionCaller(struct JSContext* ctx, struct JSValue, int, struct JSValue*, int, struct JSValue*); +GenericFreeFunctionCaller(struct JSContext* ctx, struct JSValue, int argc, struct JSValue* argv, int, struct JSValue*); // symbol: ?GenericObjectFunctionCaller@QuickJS@Scripting@@YA?AUJSValue@@PEAUJSContext@@U3@HPEAU3@H2@Z MCAPI struct JSValue -GenericObjectFunctionCaller(struct JSContext* ctx, struct JSValue, int, struct JSValue*, int, struct JSValue*); +GenericObjectFunctionCaller(struct JSContext* ctx, struct JSValue, int argc, struct JSValue* argv, int, struct JSValue*); // symbol: ?GenericReflectionCtorCaller@QuickJS@Scripting@@YA?AUJSValue@@PEAUJSContext@@U3@HPEAU3@H@Z -MCAPI struct JSValue GenericReflectionCtorCaller(struct JSContext* ctx, struct JSValue, int, struct JSValue*, int); +MCAPI struct JSValue +GenericReflectionCtorCaller(struct JSContext* ctx, struct JSValue, int argc, struct JSValue* argv, int); // symbol: ?GenericReflectionPropertyGetter@QuickJS@Scripting@@YA?AUJSValue@@PEAUJSContext@@U3@HPEAU3@H2@Z MCAPI struct JSValue -GenericReflectionPropertyGetter(struct JSContext* ctx, struct JSValue, int, struct JSValue*, int, struct JSValue*); +GenericReflectionPropertyGetter(struct JSContext* ctx, struct JSValue, int argc, struct JSValue* argv, int, struct JSValue*); // symbol: ?GenericReflectionPropertySetter@QuickJS@Scripting@@YA?AUJSValue@@PEAUJSContext@@U3@HPEAU3@H2@Z MCAPI struct JSValue -GenericReflectionPropertySetter(struct JSContext* ctx, struct JSValue, int, struct JSValue*, int, struct JSValue*); +GenericReflectionPropertySetter(struct JSContext* ctx, struct JSValue, int argc, struct JSValue* argv, int, struct JSValue*); // symbol: // ?GetClassNameFromJSValue@QuickJS@Scripting@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PEAUJSContext@@UJSValue@@@Z @@ -240,13 +241,13 @@ MCAPI struct JSValue NativeRegisteredEnumToJSValue(struct JSContext* ctx, entt::meta_any& any, class Scripting::QuickJS::RegisteredEnum const&); // symbol: ?PrintError@QuickJS@Scripting@@YA?AUJSValue@@PEAUJSContext@@U3@HPEAU3@@Z -MCAPI struct JSValue PrintError(struct JSContext* ctx, struct JSValue, int, struct JSValue*); +MCAPI struct JSValue PrintError(struct JSContext* ctx, struct JSValue, int argc, struct JSValue* argv); // symbol: ?PrintInfo@QuickJS@Scripting@@YA?AUJSValue@@PEAUJSContext@@U3@HPEAU3@@Z -MCAPI struct JSValue PrintInfo(struct JSContext* ctx, struct JSValue, int, struct JSValue*); +MCAPI struct JSValue PrintInfo(struct JSContext* ctx, struct JSValue, int argc, struct JSValue* argv); // symbol: ?PrintWarn@QuickJS@Scripting@@YA?AUJSValue@@PEAUJSContext@@U3@HPEAU3@@Z -MCAPI struct JSValue PrintWarn(struct JSContext* ctx, struct JSValue, int, struct JSValue*); +MCAPI struct JSValue PrintWarn(struct JSContext* ctx, struct JSValue, int argc, struct JSValue* argv); // symbol: ?WriteError@QuickJS@Scripting@@YA?AVmeta_any@entt@@PEAUJSContext@@UJSValue@@@Z MCAPI entt::meta_any WriteError(struct JSContext* ctx, struct JSValue); diff --git a/src/mc/gametest/MinecraftGameTestHelper.h b/src/mc/gametest/MinecraftGameTestHelper.h index d1962855b1..eb1089aa25 100644 --- a/src/mc/gametest/MinecraftGameTestHelper.h +++ b/src/mc/gametest/MinecraftGameTestHelper.h @@ -238,7 +238,7 @@ class MinecraftGameTestHelper : public ::gametest::BaseGameTestHelper { struct ActorDefinitionIdentifier const& actorIdentifier, ::ArmorSlot armorSlot, std::string const&, - int, + int dataValue, class BlockPos const& pos, bool ); diff --git a/src/mc/gametest/framework/BaseGameTestFunction.h b/src/mc/gametest/framework/BaseGameTestFunction.h index 8f7dc8187e..92cc71dbb1 100644 --- a/src/mc/gametest/framework/BaseGameTestFunction.h +++ b/src/mc/gametest/framework/BaseGameTestFunction.h @@ -42,7 +42,7 @@ class BaseGameTestFunction { int, int, int, - bool, + bool rotate, bool required, int, int, diff --git a/src/mc/gametest/framework/StructureUtils.h b/src/mc/gametest/framework/StructureUtils.h index 2b345161ff..c40c33e1c4 100644 --- a/src/mc/gametest/framework/StructureUtils.h +++ b/src/mc/gametest/framework/StructureUtils.h @@ -63,10 +63,10 @@ MCAPI std::vector MCAPI ::Rotation GetRotationForRotationSteps(int); // symbol: ?GetStructureBoundingBox@StructureUtils@gametest@@YA?AVBoundingBox@@AEBVStructureBlockActor@@@Z -MCAPI class BoundingBox GetStructureBoundingBox(class StructureBlockActor const&); +MCAPI class BoundingBox GetStructureBoundingBox(class StructureBlockActor const& structureBlockActor); // symbol: ?GetStructureBounds@StructureUtils@gametest@@YA?AVAABB@@AEBVStructureBlockActor@@@Z -MCAPI class AABB GetStructureBounds(class StructureBlockActor const&); +MCAPI class AABB GetStructureBounds(class StructureBlockActor const& structureBlockActor); // symbol: // ?GetStructureEditorData@StructureUtils@gametest@@YA?AVStructureEditorData@@AEBVStructureTemplate@@AEBW4Rotation@@@Z @@ -74,7 +74,8 @@ MCAPI class StructureEditorData GetStructureEditorData(class StructureTemplate const& structure, ::Rotation const& rotation); // symbol: ?GetStructureRelativePos@StructureUtils@gametest@@YA?AVBlockPos@@AEBVStructureBlockActor@@AEBV3@@Z -MCAPI class BlockPos GetStructureRelativePos(class StructureBlockActor const&, class BlockPos const& pos); +MCAPI class BlockPos +GetStructureRelativePos(class StructureBlockActor const& structureBlockActor, class BlockPos const& pos); // symbol: // ?GetStructureTemplate@StructureUtils@gametest@@YAPEAVStructureTemplate@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEAVLevel@@@Z diff --git a/src/mc/network/AutomationClient.h b/src/mc/network/AutomationClient.h index 4f54884e44..ce677b0734 100644 --- a/src/mc/network/AutomationClient.h +++ b/src/mc/network/AutomationClient.h @@ -88,7 +88,7 @@ class AutomationClient { MCAPI void _forEachSession(std::function const& callback); // symbol: ?_removeSession@AutomationClient@Automation@@AEAAXAEBVAutomationSession@2@@Z - MCAPI void _removeSession(class Automation::AutomationSession const&); + MCAPI void _removeSession(class Automation::AutomationSession const& session); // symbol: ?_tryAddCommand@AutomationClient@Automation@@AEAA_N$$QEAUCommandRequest@CodeBuilder@@@Z MCAPI bool _tryAddCommand(struct CodeBuilder::CommandRequest&&); diff --git a/src/mc/network/AutomationSession.h b/src/mc/network/AutomationSession.h index ce26c20586..32f4e40313 100644 --- a/src/mc/network/AutomationSession.h +++ b/src/mc/network/AutomationSession.h @@ -94,7 +94,7 @@ class AutomationSession { // symbol: // ?connect@AutomationSession@Automation@@QEAA?AW4WSConnectionResult@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@5@@Z - MCAPI ::WSConnectionResult connect(std::string const& serverUri, std::vector const&); + MCAPI ::WSConnectionResult connect(std::string const& serverUri, std::vector const& subProtocols); // symbol: // ?dhKeyExchange@AutomationSession@Automation@@QEAA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@00W4EncryptionCipherMode@CodeBuilder@@AEAV34@@Z @@ -138,7 +138,7 @@ class AutomationSession { // symbol: // ?_handleOnConnected@AutomationSession@Automation@@AEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z - MCAPI void _handleOnConnected(std::string const&); + MCAPI void _handleOnConnected(std::string const& activeSubProtocol); // symbol: // ?_send@AutomationSession@Automation@@AEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z diff --git a/src/mc/entity/systems/common/ClientNetworkSystem.h b/src/mc/network/ClientNetworkSystem.h similarity index 100% rename from src/mc/entity/systems/common/ClientNetworkSystem.h rename to src/mc/network/ClientNetworkSystem.h diff --git a/src/mc/entity/systems/common/ClientOrServerNetworkSystemRef.h b/src/mc/network/ClientOrServerNetworkSystemRef.h similarity index 100% rename from src/mc/entity/systems/common/ClientOrServerNetworkSystemRef.h rename to src/mc/network/ClientOrServerNetworkSystemRef.h diff --git a/src/mc/network/NetherStructureFeatureHelper.h b/src/mc/network/NetherStructureFeatureHelper.h index 47080507eb..a6dbb18acc 100644 --- a/src/mc/network/NetherStructureFeatureHelper.h +++ b/src/mc/network/NetherStructureFeatureHelper.h @@ -9,8 +9,13 @@ namespace NetherStructureFeatureHelper { // NOLINTBEGIN // symbol: // ?getStructureFeatureTypeForChunk@NetherStructureFeatureHelper@@YA?AW4StructureFeatureType@@AEBVBiomeSource@@AEAVRandom@@AEBVChunkPos@@IAEBV?$vector@_KV?$allocator@_K@std@@@std@@@Z -MCAPI ::StructureFeatureType -getStructureFeatureTypeForChunk(class BiomeSource const& biomeSource, class Random& random, class ChunkPos const& chunkPos, uint levelSeed, std::vector const&); +MCAPI ::StructureFeatureType getStructureFeatureTypeForChunk( + class BiomeSource const& biomeSource, + class Random& random, + class ChunkPos const& chunkPos, + uint levelSeed, + std::vector const& allowedBiomes +); // NOLINTEND }; // namespace NetherStructureFeatureHelper diff --git a/src/mc/network/RakNetServerLocator.h b/src/mc/network/RakNetServerLocator.h index dde2b8b54a..07412d2a5d 100644 --- a/src/mc/network/RakNetServerLocator.h +++ b/src/mc/network/RakNetServerLocator.h @@ -174,7 +174,7 @@ class RakNetServerLocator : public ::ServerLocator { MCAPI bool _addCustomServerV6(class AsynchronousIPResolver const& futureIP, int port); // symbol: ?_announceServer@RakNetServerLocator@@AEAAXAEBUAnnounceServerData@1@@Z - MCAPI void _announceServer(struct RakNetServerLocator::AnnounceServerData const&); + MCAPI void _announceServer(struct RakNetServerLocator::AnnounceServerData const& serverData); // symbol: // ?_enqueueStateChangeRequest@RakNetServerLocator@@AEAAXW4LocatorStateChangeRequest@@UAnnounceServerData@1@UPortPair@@@Z @@ -213,7 +213,7 @@ class RakNetServerLocator : public ::ServerLocator { MCAPI bool _pingServerV4(std::string const& address, int port); // symbol: ?_setPingResponder@RakNetServerLocator@@AEAAXAEBUAnnounceServerData@1@@Z - MCAPI void _setPingResponder(struct RakNetServerLocator::AnnounceServerData const&); + MCAPI void _setPingResponder(struct RakNetServerLocator::AnnounceServerData const& serverData); // symbol: ?_startAnnouncingServer@RakNetServerLocator@@AEAAXAEBUAnnounceServerData@1@@Z MCAPI void _startAnnouncingServer(struct RakNetServerLocator::AnnounceServerData const&); diff --git a/src/mc/network/RakPeerHelper.h b/src/mc/network/RakPeerHelper.h index 112ec2d6fa..934998b64f 100644 --- a/src/mc/network/RakPeerHelper.h +++ b/src/mc/network/RakPeerHelper.h @@ -47,7 +47,7 @@ class RakPeerHelper { // symbol: // ?peerStartup@RakPeerHelper@@QEAA?AW4StartupResult@RakNet@@PEAVRakPeerInterface@3@AEBUConnectionDefinition@@W4PeerPurpose@1@@Z MCAPI ::RakNet::StartupResult peerStartup( - class RakNet::RakPeerInterface*, + class RakNet::RakPeerInterface* peerIn, struct ConnectionDefinition const& definition, ::RakPeerHelper::PeerPurpose purpose ); diff --git a/src/mc/network/ServerNetworkHandler.h b/src/mc/network/ServerNetworkHandler.h index dcafd9edef..400787302f 100644 --- a/src/mc/network/ServerNetworkHandler.h +++ b/src/mc/network/ServerNetworkHandler.h @@ -91,8 +91,8 @@ class ServerNetworkHandler { // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVCompletedUsingItemPacket@@@Z MCVAPI void handle(class NetworkIdentifier const& source, class CompletedUsingItemPacket const& packet); - // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVSetDefaultGameTypePacket@@@Z - MCVAPI void handle(class NetworkIdentifier const& source, class SetDefaultGameTypePacket const& packet); + // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVPlayerToggleCrafterSlotRequestPacket@@@Z + MCVAPI void handle(class NetworkIdentifier const&, class PlayerToggleCrafterSlotRequestPacket const&); // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVNpcRequestPacket@@@Z MCVAPI void handle(class NetworkIdentifier const& source, class NpcRequestPacket const& packet); @@ -142,6 +142,9 @@ class ServerNetworkHandler { // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVItemStackRequestPacket@@@Z MCVAPI void handle(class NetworkIdentifier const& source, class ItemStackRequestPacket const& packet); + // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVContainerClosePacket@@@Z + MCVAPI void handle(class NetworkIdentifier const& source, class ContainerClosePacket const& packet); + // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVStructureBlockUpdatePacket@@@Z MCVAPI void handle(class NetworkIdentifier const& source, class StructureBlockUpdatePacket const& packet); @@ -157,9 +160,6 @@ class ServerNetworkHandler { // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVRequestAbilityPacket@@@Z MCVAPI void handle(class NetworkIdentifier const& source, class RequestAbilityPacket const& packet); - // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVBlockPickRequestPacket@@@Z - MCVAPI void handle(class NetworkIdentifier const& source, class BlockPickRequestPacket const& packet); - // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVMultiplayerSettingsPacket@@@Z MCVAPI void handle(class NetworkIdentifier const& source, class MultiplayerSettingsPacket const& packet); @@ -197,6 +197,12 @@ class ServerNetworkHandler { // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVPlayerAuthInputPacket@@@Z MCVAPI void handle(class NetworkIdentifier const& source, class PlayerAuthInputPacket const& packet); + // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVModalFormResponsePacket@@@Z + MCVAPI void handle(class NetworkIdentifier const& source, class ModalFormResponsePacket const& packet); + + // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVScriptMessagePacket@@@Z + MCVAPI void handle(class NetworkIdentifier const& source, class ScriptMessagePacket const& packet); + // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVEmoteListPacket@@@Z MCVAPI void handle(class NetworkIdentifier const& source, class EmoteListPacket const& packet); @@ -212,9 +218,6 @@ class ServerNetworkHandler { // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVSimpleEventPacket@@@Z MCVAPI void handle(class NetworkIdentifier const& source, class SimpleEventPacket const& packet); - // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVModalFormResponsePacket@@@Z - MCVAPI void handle(class NetworkIdentifier const& source, class ModalFormResponsePacket const& packet); - // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVCommandBlockUpdatePacket@@@Z MCVAPI void handle(class NetworkIdentifier const& source, class CommandBlockUpdatePacket const& packet); @@ -224,8 +227,8 @@ class ServerNetworkHandler { // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVMobEquipmentPacket@@@Z MCVAPI void handle(class NetworkIdentifier const& source, class MobEquipmentPacket const& packet); - // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVScriptMessagePacket@@@Z - MCVAPI void handle(class NetworkIdentifier const& source, class ScriptMessagePacket const& packet); + // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVBlockPickRequestPacket@@@Z + MCVAPI void handle(class NetworkIdentifier const& source, class BlockPickRequestPacket const& packet); // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVRequestPermissionsPacket@@@Z MCVAPI void handle(class NetworkIdentifier const& source, class RequestPermissionsPacket const& packet); @@ -233,9 +236,6 @@ class ServerNetworkHandler { // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVRequestChunkRadiusPacket@@@Z MCVAPI void handle(class NetworkIdentifier const& source, class RequestChunkRadiusPacket const& packet); - // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVContainerClosePacket@@@Z - MCVAPI void handle(class NetworkIdentifier const& source, class ContainerClosePacket const& packet); - // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVPlayerActionPacket@@@Z MCVAPI void handle(class NetworkIdentifier const& source, class PlayerActionPacket const& packet); @@ -294,15 +294,15 @@ class ServerNetworkHandler { // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVAnimatePacket@@@Z MCVAPI void handle(class NetworkIdentifier const& source, class AnimatePacket const& packet); + // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVSetDefaultGameTypePacket@@@Z + MCVAPI void handle(class NetworkIdentifier const& source, class SetDefaultGameTypePacket const& packet); + // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVInteractPacket@@@Z MCVAPI void handle(class NetworkIdentifier const& source, class InteractPacket const& packet); // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVClientToServerHandshakePacket@@@Z MCVAPI void handle(class NetworkIdentifier const& source, class ClientToServerHandshakePacket const& packet); - // symbol: ?handle@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@AEBVPlayerToggleCrafterSlotRequestPacket@@@Z - MCVAPI void handle(class NetworkIdentifier const&, class PlayerToggleCrafterSlotRequestPacket const&); - // symbol: ?onConnect@ServerNetworkHandler@@UEAAXAEBVNetworkIdentifier@@@Z MCVAPI void onConnect(class NetworkIdentifier const&); diff --git a/src/mc/entity/systems/common/ServerNetworkSystem.h b/src/mc/network/ServerNetworkSystem.h similarity index 100% rename from src/mc/entity/systems/common/ServerNetworkSystem.h rename to src/mc/network/ServerNetworkSystem.h diff --git a/src/mc/network/packet/AnimateEntityPacket.h b/src/mc/network/packet/AnimateEntityPacket.h index 81ea39565a..565fd4f569 100644 --- a/src/mc/network/packet/AnimateEntityPacket.h +++ b/src/mc/network/packet/AnimateEntityPacket.h @@ -38,8 +38,15 @@ class AnimateEntityPacket : public ::Packet { // symbol: // ??0AnimateEntityPacket@@QEAA@AEBV?$vector@VActorRuntimeID@@V?$allocator@VActorRuntimeID@@@std@@@std@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@1M1W4MolangVersion@@1@Z - MCAPI - AnimateEntityPacket(std::vector const&, std::string const& animation, std::string const&, float blendOutTime, std::string const& stopExpression, ::MolangVersion, std::string const&); + MCAPI AnimateEntityPacket( + std::vector const&, + std::string const& animation, + std::string const&, + float blendOutTime, + std::string const& stopExpression, + ::MolangVersion, + std::string const& controller + ); // NOLINTEND }; diff --git a/src/mc/network/packet/ItemStackResponseContainerInfo.h b/src/mc/network/packet/ItemStackResponseContainerInfo.h index d057586404..5e98e3639b 100644 --- a/src/mc/network/packet/ItemStackResponseContainerInfo.h +++ b/src/mc/network/packet/ItemStackResponseContainerInfo.h @@ -15,7 +15,7 @@ struct ItemStackResponseContainerInfo { public: // NOLINTBEGIN // symbol: ??0ItemStackResponseContainerInfo@@QEAA@W4ContainerEnumName@@@Z - MCAPI explicit ItemStackResponseContainerInfo(::ContainerEnumName); + MCAPI explicit ItemStackResponseContainerInfo(::ContainerEnumName openContainerNetId); // symbol: ??1ItemStackResponseContainerInfo@@QEAA@XZ MCAPI ~ItemStackResponseContainerInfo(); diff --git a/src/mc/network/packet/ItemStackResponsePacket.h b/src/mc/network/packet/ItemStackResponsePacket.h index 28c18176be..a578c67d1d 100644 --- a/src/mc/network/packet/ItemStackResponsePacket.h +++ b/src/mc/network/packet/ItemStackResponsePacket.h @@ -37,7 +37,7 @@ class ItemStackResponsePacket : public ::Packet { // symbol: // ??0ItemStackResponsePacket@@QEAA@$$QEAV?$vector@UItemStackResponseInfo@@V?$allocator@UItemStackResponseInfo@@@std@@@std@@@Z - MCAPI explicit ItemStackResponsePacket(std::vector&&); + MCAPI explicit ItemStackResponsePacket(std::vector&& responses); // symbol: // ?getResponses@ItemStackResponsePacket@@QEBAAEBV?$vector@UItemStackResponseInfo@@V?$allocator@UItemStackResponseInfo@@@std@@@std@@XZ diff --git a/src/mc/network/packet/PackInfoData.h b/src/mc/network/packet/PackInfoData.h index e63416d837..a3e47025b0 100644 --- a/src/mc/network/packet/PackInfoData.h +++ b/src/mc/network/packet/PackInfoData.h @@ -26,7 +26,7 @@ struct PackInfoData { std::string const& subpackName, class ContentIdentity const& contentIdentity, bool hasScripts, - bool + bool isRayTracingCapable ); // symbol: ??1PackInfoData@@QEAA@XZ diff --git a/src/mc/network/packet/PlayerFogPacket.h b/src/mc/network/packet/PlayerFogPacket.h index b04a4fbe59..9865e0408f 100644 --- a/src/mc/network/packet/PlayerFogPacket.h +++ b/src/mc/network/packet/PlayerFogPacket.h @@ -35,7 +35,7 @@ class PlayerFogPacket : public ::Packet { // symbol: // ??0PlayerFogPacket@@QEAA@V?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@@Z - MCAPI explicit PlayerFogPacket(std::vector); + MCAPI explicit PlayerFogPacket(std::vector fogStack); // NOLINTEND }; diff --git a/src/mc/network/packet/ResourcePackStackPacket.h b/src/mc/network/packet/ResourcePackStackPacket.h index e997cbd2fd..ff176c14f5 100644 --- a/src/mc/network/packet/ResourcePackStackPacket.h +++ b/src/mc/network/packet/ResourcePackStackPacket.h @@ -37,8 +37,13 @@ class ResourcePackStackPacket : public ::Packet { // symbol: // ??0ResourcePackStackPacket@@QEAA@V?$vector@UPackInstanceId@@V?$allocator@UPackInstanceId@@@std@@@std@@0AEBVBaseGameVersion@@_NAEBVExperiments@@@Z - MCAPI - ResourcePackStackPacket(std::vector addOnIdsAndVersions, std::vector texturePackIdsAndVersions, class BaseGameVersion const& baseGameVersion, bool texturePackRequired, class Experiments const&); + MCAPI ResourcePackStackPacket( + std::vector addOnIdsAndVersions, + std::vector texturePackIdsAndVersions, + class BaseGameVersion const& baseGameVersion, + bool texturePackRequired, + class Experiments const& experiments + ); // NOLINTEND }; diff --git a/src/mc/network/packet/SetSpawnPositionPacket.h b/src/mc/network/packet/SetSpawnPositionPacket.h index c0334bb7fb..7922694090 100644 --- a/src/mc/network/packet/SetSpawnPositionPacket.h +++ b/src/mc/network/packet/SetSpawnPositionPacket.h @@ -38,7 +38,7 @@ class SetSpawnPositionPacket : public ::Packet { MCAPI SetSpawnPositionPacket(); // symbol: ??0SetSpawnPositionPacket@@QEAA@V?$AutomaticID@VDimension@@H@@AEBVBlockPos@@1@Z - MCAPI SetSpawnPositionPacket(DimensionType dimension, class BlockPos const&, class BlockPos const&); + MCAPI SetSpawnPositionPacket(DimensionType dimension, class BlockPos const& playerPosition, class BlockPos const&); // symbol: ??0SetSpawnPositionPacket@@QEAA@W4SpawnPositionType@@V?$AutomaticID@VDimension@@H@@AEBVBlockPos@@@Z MCAPI SetSpawnPositionPacket(::SpawnPositionType spawnPosType, DimensionType dimension, class BlockPos const& pos); diff --git a/src/mc/network/packet/SetTitlePacket.h b/src/mc/network/packet/SetTitlePacket.h index db20ba8e71..22cf765849 100644 --- a/src/mc/network/packet/SetTitlePacket.h +++ b/src/mc/network/packet/SetTitlePacket.h @@ -45,7 +45,7 @@ class SetTitlePacket : public ::Packet { MCAPI explicit SetTitlePacket(::SetTitlePacket::TitleType type); // symbol: ??0SetTitlePacket@@QEAA@W4TitleType@0@AEBVResolvedTextObject@@@Z - MCAPI SetTitlePacket(::SetTitlePacket::TitleType type, class ResolvedTextObject const&); + MCAPI SetTitlePacket(::SetTitlePacket::TitleType type, class ResolvedTextObject const& resolvedTextObject); // symbol: ??0SetTitlePacket@@QEAA@W4TitleType@0@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z MCAPI SetTitlePacket(::SetTitlePacket::TitleType type, std::string const& titleText); diff --git a/src/mc/network/packet/StartGamePacket.h b/src/mc/network/packet/StartGamePacket.h index 3a4f4ed84d..a0f806cea1 100644 --- a/src/mc/network/packet/StartGamePacket.h +++ b/src/mc/network/packet/StartGamePacket.h @@ -45,11 +45,11 @@ class StartGamePacket : public ::Packet { // ??0StartGamePacket@@QEAA@VItemRegistryRef@@AEBVLevelSettings@@UActorUniqueID@@VActorRuntimeID@@W4GameType@@_NAEBVVec3@@AEBVVec2@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@8AEBVContentIdentity@@8AEBVBlockDefinitionGroup@@5VCompoundTag@@AEBUPlayerMovementSettings@@8AEBVUUID@mce@@_KH_K@Z MCAPI StartGamePacket( class ItemRegistryRef, - class LevelSettings const& settings, - struct ActorUniqueID entityId, - class ActorRuntimeID runtimeId, - ::GameType entityGameType, - bool, + class LevelSettings const& settings, + struct ActorUniqueID entityId, + class ActorRuntimeID runtimeId, + ::GameType entityGameType, + bool enableItemStackNetManager, class Vec3 const& pos, class Vec2 const& rot, std::string const& levelId, @@ -59,7 +59,7 @@ class StartGamePacket : public ::Packet { class BlockDefinitionGroup const& blockDefinitionGroup, bool isTrial, class CompoundTag, - struct PlayerMovementSettings const&, + struct PlayerMovementSettings const& movementSettings, std::string const&, class mce::UUID const& worldTemplateId, uint64 levelCurrentTime, diff --git a/src/mc/network/packet/TextPacket.h b/src/mc/network/packet/TextPacket.h index c33797387b..6fd24a8959 100644 --- a/src/mc/network/packet/TextPacket.h +++ b/src/mc/network/packet/TextPacket.h @@ -70,7 +70,7 @@ class TextPacket : public ::Packet { // symbol: // ?createRawJsonObjectMessage@TextPacket@@SA?AV1@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z - MCAPI static class TextPacket createRawJsonObjectMessage(std::string const&); + MCAPI static class TextPacket createRawJsonObjectMessage(std::string const& rawJson); // symbol: // ?createSystemMessage@TextPacket@@SA?AV1@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z @@ -78,14 +78,15 @@ class TextPacket : public ::Packet { // symbol: // ?createTextObjectMessage@TextPacket@@SA?AV1@AEBVResolvedTextObject@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@1@Z - MCAPI static class TextPacket createTextObjectMessage(class ResolvedTextObject const&, std::string, std::string); + MCAPI static class TextPacket + createTextObjectMessage(class ResolvedTextObject const& resolvedTextObject, std::string, std::string); // symbol: // ?createTextObjectWhisperMessage@TextPacket@@SA?AV1@AEBVResolvedTextObject@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@1@Z MCAPI static class TextPacket createTextObjectWhisperMessage( - class ResolvedTextObject const&, - std::string const& xuid, - std::string const& platformId + class ResolvedTextObject const& resolvedTextObject, + std::string const& xuid, + std::string const& platformId ); // symbol: diff --git a/src/mc/options/AppConfigs.h b/src/mc/options/AppConfigs.h index 3a7c0f9c0d..fb68c9f39c 100644 --- a/src/mc/options/AppConfigs.h +++ b/src/mc/options/AppConfigs.h @@ -115,7 +115,7 @@ class AppConfigs : public ::Bedrock::EnableNonOwnerReferences { virtual bool isSaveToCloudOn() const; // vIndex: 30, symbol: ?setCanAccessWorldCallback@AppConfigs@@UEAAXAEAVIMinecraftGame@@@Z - virtual void setCanAccessWorldCallback(class IMinecraftGame&); + virtual void setCanAccessWorldCallback(class IMinecraftGame& minecraftGame); // vIndex: 31, symbol: // ?getAdditionalClientPacks@AppConfigs@@UEBA?AV?$vector@UPackIdVersion@@V?$allocator@UPackIdVersion@@@std@@@std@@_N@Z diff --git a/src/mc/options/option_types/Option.h b/src/mc/options/option_types/Option.h index a2e6f52a74..417b9943b7 100644 --- a/src/mc/options/option_types/Option.h +++ b/src/mc/options/option_types/Option.h @@ -69,7 +69,8 @@ class Option { MCAPI class Bedrock::PubSub::Subscription registerLock(std::function isModifiableCondition); // symbol: ?registerObserver@Option@@QEAA?AVSubscription@PubSub@Bedrock@@V?$function@$$A6AXAEBVOption@@@Z@std@@@Z - MCAPI class Bedrock::PubSub::Subscription registerObserver(std::function); + MCAPI class Bedrock::PubSub::Subscription + registerObserver(std::function onValueChangedCallback); // symbol: ?read@Option@@SA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEA_N@Z MCAPI static bool read(std::string const& valueString, bool& output); diff --git a/src/mc/resources/ContentTierIncompatibleReason.h b/src/mc/resources/ContentTierIncompatibleReason.h index 8e7104cc9c..5ab4a94247 100644 --- a/src/mc/resources/ContentTierIncompatibleReason.h +++ b/src/mc/resources/ContentTierIncompatibleReason.h @@ -12,16 +12,20 @@ class ContentTierIncompatibleReason { public: // NOLINTBEGIN // symbol: ??0ContentTierIncompatibleReason@@QEAA@I@Z - MCAPI explicit ContentTierIncompatibleReason(uint); + MCAPI explicit ContentTierIncompatibleReason(uint errorValue); // symbol: // ?getExpandedI18nErrorList@ContentTierIncompatibleReason@@QEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV23@AEBV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@3@@Z - MCAPI std::string getExpandedI18nErrorList(std::string const&, std::vector const& arguments) const; + MCAPI std::string + getExpandedI18nErrorList(std::string const& i18nPrefix, std::vector const& arguments) const; // symbol: // ?getExpandedI18nErrorList@ContentTierIncompatibleReason@@SA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEBV23@AEBV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@3@@Z - MCAPI static std::string - getExpandedI18nErrorList(uint, std::string const&, std::vector const& arguments); + MCAPI static std::string getExpandedI18nErrorList( + uint errorValue, + std::string const& i18nContextPrefix, + std::vector const& arguments + ); // symbol: ?NoError@ContentTierIncompatibleReason@@2V1@A MCAPI static class ContentTierIncompatibleReason NoError; diff --git a/src/mc/resources/EncryptedFileAccessStrategy.h b/src/mc/resources/EncryptedFileAccessStrategy.h index 43c23b4f68..124b086c3c 100644 --- a/src/mc/resources/EncryptedFileAccessStrategy.h +++ b/src/mc/resources/EncryptedFileAccessStrategy.h @@ -58,8 +58,13 @@ class EncryptedFileAccessStrategy : public ::DirectoryPackAccessStrategy { // symbol: // ??0EncryptedFileAccessStrategy@@QEAA@AEBVResourceLocation@@AEBVContentIdentity@@AEBV?$not_null@V?$NonOwnerPointer@$$CBVIContentKeyProvider@@@Bedrock@@@gsl@@_NV?$optional@V?$unordered_map@V?$PathBuffer@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Core@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@U?$hash@V?$PathBuffer@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Core@@@4@U?$equal_to@V?$PathBuffer@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Core@@@4@V?$allocator@U?$pair@$$CBV?$PathBuffer@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Core@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@std@@@4@@std@@@std@@@Z - MCAPI - EncryptedFileAccessStrategy(class ResourceLocation const& resourceLocation, class ContentIdentity const& contentIdentity, Bedrock::NotNullNonOwnerPtr const& keyProvider, bool canRecurse, std::optional, std::string>>); + MCAPI EncryptedFileAccessStrategy( + class ResourceLocation const& resourceLocation, + class ContentIdentity const& contentIdentity, + Bedrock::NotNullNonOwnerPtr const& keyProvider, + bool canRecurse, + std::optional, std::string>> assetSet + ); // symbol: ?isValidEncryptedPack@EncryptedFileAccessStrategy@@SA_NAEBVPath@Core@@AEAVContentIdentity@@@Z MCAPI static bool isValidEncryptedPack(class Core::Path const& pathToPack, class ContentIdentity& contentIdentity); diff --git a/src/mc/resources/ResourcePackManager.h b/src/mc/resources/ResourcePackManager.h index 7d1126cfae..29894dcb38 100644 --- a/src/mc/resources/ResourcePackManager.h +++ b/src/mc/resources/ResourcePackManager.h @@ -31,14 +31,19 @@ class ResourcePackManager : public ::ResourceLoader { // vIndex: 2, symbol: // ?load@ResourcePackManager@@UEBA_NAEBVResourceLocation@@AEAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@4@@Z - virtual bool - load(class ResourceLocation const& resourceLocation, std::string& resourceStream, std::vector const&) - const; + virtual bool load( + class ResourceLocation const& resourceLocation, + std::string& resourceStream, + std::vector const& extensionList + ) const; // vIndex: 3, symbol: // ?load@ResourcePackManager@@UEBA_NAEBVResourceLocationPair@@AEAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@4@@Z - virtual bool - load(class ResourceLocationPair const&, std::string& resourceStream, std::vector const&) const; + virtual bool load( + class ResourceLocationPair const& resourceLocationPair, + std::string& resourceStream, + std::vector const& extensionList + ) const; // vIndex: 4, symbol: // ?loadAllVersionsOf@ResourcePackManager@@UEBA?AV?$vector@VLoadedResourceData@@V?$allocator@VLoadedResourceData@@@std@@@std@@AEBVResourceLocation@@@Z @@ -50,8 +55,10 @@ class ResourcePackManager : public ::ResourceLoader { // vIndex: 6, symbol: // ?isInStreamableLocation@ResourcePackManager@@UEBA_NAEBVResourceLocation@@AEBV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@@Z - virtual bool - isInStreamableLocation(class ResourceLocation const& resourceLocation, std::vector const&) const; + virtual bool isInStreamableLocation( + class ResourceLocation const& resourceLocation, + std::vector const& extensionList + ) const; // vIndex: 7, symbol: // ?getPath@ResourcePackManager@@UEBA?AV?$PathBuffer@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Core@@AEBVResourceLocation@@@Z @@ -60,7 +67,7 @@ class ResourcePackManager : public ::ResourceLoader { // vIndex: 8, symbol: // ?getPath@ResourcePackManager@@UEBA?AV?$PathBuffer@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Core@@AEBVResourceLocation@@AEBV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@@Z virtual class Core::PathBuffer - getPath(class ResourceLocation const& resourceLocation, std::vector const&) const; + getPath(class ResourceLocation const& resourceLocation, std::vector const& extensionList) const; // vIndex: 9, symbol: // ?getPathContainingResource@ResourcePackManager@@UEBA?AV?$PathBuffer@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Core@@AEBVResourceLocation@@@Z @@ -68,13 +75,17 @@ class ResourcePackManager : public ::ResourceLoader { // vIndex: 10, symbol: // ?getPathContainingResource@ResourcePackManager@@UEBA?AV?$PathBuffer@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Core@@AEBVResourceLocation@@V?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@@Z - virtual class Core::PathBuffer - getPathContainingResource(class ResourceLocation const& resourceLocation, std::vector) const; + virtual class Core::PathBuffer getPathContainingResource( + class ResourceLocation const& resourceLocation, + std::vector extensionList + ) const; // vIndex: 11, symbol: // ?getPackStackIndexOfResource@ResourcePackManager@@UEBA?AU?$pair@HAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@std@@AEBVResourceLocation@@AEBV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@3@@Z - virtual std::pair - getPackStackIndexOfResource(class ResourceLocation const& resourceLocation, std::vector const&) const; + virtual std::pair getPackStackIndexOfResource( + class ResourceLocation const& resourceLocation, + std::vector const& extensionList + ) const; // vIndex: 12, symbol: // ?hasCapability@ResourcePackManager@@UEBA_NV?$basic_string_view@DU?$char_traits@D@std@@@std@@@Z diff --git a/src/mc/resources/ValidatorRegistry.h b/src/mc/resources/ValidatorRegistry.h index 40dafc9f12..455a7f10c3 100644 --- a/src/mc/resources/ValidatorRegistry.h +++ b/src/mc/resources/ValidatorRegistry.h @@ -56,12 +56,20 @@ class ValidatorRegistry : public ::Bedrock::EnableNonOwnerReferences { // symbol: // ?findValidators@ValidatorRegistry@@SA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEAVValidatorRegistryValidators@1@@Z - MCAPI static bool findValidators(std::string const&, class ValidatorRegistry::ValidatorRegistryValidators&); + MCAPI static bool findValidators( + std::string const& validatorName, + class ValidatorRegistry::ValidatorRegistryValidators& validatorPair + ); // symbol: // ?registerValidators@ValidatorRegistry@@SAXV?$basic_string_view@DU?$char_traits@D@std@@@std@@V?$function@$$A6A?AVContentTierIncompatibleReason@@AEBVPackInstance@@AEBVContentTierInfo@@@Z@3@V?$function@$$A6A?AVContentTierIncompatibleReason@@AEBUSubpackInfo@@AEBVContentTierInfo@@@Z@3@@Z - MCAPI static void - registerValidators(std::string_view, std::function, std::function); + MCAPI static void registerValidators( + std::string_view validatorName, + std::function + packValidator, + std::function + subpackValidator + ); // NOLINTEND diff --git a/src/mc/scripting/event_handlers/ScriptItemGameplayHandler.h b/src/mc/scripting/event_handlers/ScriptItemGameplayHandler.h index 2d585d444f..8c8ea9c38e 100644 --- a/src/mc/scripting/event_handlers/ScriptItemGameplayHandler.h +++ b/src/mc/scripting/event_handlers/ScriptItemGameplayHandler.h @@ -6,9 +6,9 @@ #include "mc/common/wrapper/CoordinatorResult.h" #include "mc/common/wrapper/GameplayHandlerResult.h" #include "mc/common/wrapper/HandlerResult.h" -#include "mc/events/ItemGameplayEvent.h" #include "mc/events/MutableItemGameplayEvent.h" #include "mc/external/scripting/TypedObjectHandle.h" +#include "mc/world/item/components/ItemGameplayEvent.h" // auto generated forward declare list // clang-format off diff --git a/src/mc/scripting/modules/minecraft/ScriptActor.h b/src/mc/scripting/modules/minecraft/ScriptActor.h index 24acc0d071..e4569fc859 100644 --- a/src/mc/scripting/modules/minecraft/ScriptActor.h +++ b/src/mc/scripting/modules/minecraft/ScriptActor.h @@ -365,8 +365,8 @@ class ScriptActor { // symbol: // ?playAnimation@ScriptActor@ScriptModuleMinecraft@@QEAA?AV?$Result@X$$V@Scripting@@AEAVActor@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV?$optional@UScriptPlayAnimationOptions@ScriptModuleMinecraft@@@7@@Z MCAPI class Scripting::Result playAnimation( - class Actor& self, - std::string const&, + class Actor& self, + std::string const& animationName, std::optional const& options ); diff --git a/src/mc/scripting/modules/minecraft/ScriptActorEventListener.h b/src/mc/scripting/modules/minecraft/ScriptActorEventListener.h index 38ee844bb2..5cb8ab91a3 100644 --- a/src/mc/scripting/modules/minecraft/ScriptActorEventListener.h +++ b/src/mc/scripting/modules/minecraft/ScriptActorEventListener.h @@ -40,7 +40,7 @@ class ScriptActorEventListener { // vIndex: 1, symbol: // ?onEvent@ScriptActorEventListener@ScriptModuleMinecraft@@UEAA?AW4EventResult@@AEBUActorRemoveEffectEvent@@@Z - virtual ::EventResult onEvent(struct ActorRemoveEffectEvent const&); + virtual ::EventResult onEvent(struct ActorRemoveEffectEvent const& actorRemoveEffectEvent); // vIndex: 2, symbol: // ?onEvent@?$EventListenerDispatcher@VActorEventListener@@@@MEAA?AW4EventResult@@AEBUActorNotificationEvent@@@Z @@ -82,7 +82,7 @@ class ScriptActorEventListener { // vIndex: 14, symbol: // ?onEvent@ScriptActorEventListener@ScriptModuleMinecraft@@UEAA?AW4EventResult@@AEBUActorAddEffectEvent@@@Z - virtual ::EventResult onEvent(struct ActorAddEffectEvent const&); + virtual ::EventResult onEvent(struct ActorAddEffectEvent const& actorAddEffectEvent); // vIndex: 15, symbol: __unk_vfn_15 virtual void __unk_vfn_15(); @@ -95,7 +95,7 @@ class ScriptActorEventListener { // vIndex: 18, symbol: // ?onEvent@ScriptActorEventListener@ScriptModuleMinecraft@@UEAA?AW4EventResult@@AEBUProjectileHitEvent@@@Z - virtual ::EventResult onEvent(struct ProjectileHitEvent const&); + virtual ::EventResult onEvent(struct ProjectileHitEvent const& projectileHitEvent); // vIndex: 19, symbol: __unk_vfn_19 virtual void __unk_vfn_19(); @@ -124,7 +124,7 @@ class ScriptActorEventListener { // vIndex: 27, symbol: // ?onEvent@ScriptActorEventListener@ScriptModuleMinecraft@@UEAA?AW4EventResult@@AEBUActorHurtEvent@@@Z - virtual ::EventResult onEvent(struct ActorHurtEvent const&); + virtual ::EventResult onEvent(struct ActorHurtEvent const& actorHurtEvent); // vIndex: 28, symbol: // ?onEvent@ScriptActorEventListener@ScriptModuleMinecraft@@UEAA?AW4EventResult@@AEBUActorHealthChangedEvent@@@Z diff --git a/src/mc/scripting/modules/minecraft/ScriptDataDrivenActorTriggerAfterEvent.h b/src/mc/scripting/modules/minecraft/ScriptDataDrivenActorTriggerAfterEvent.h index 5612d6f859..1b05f1319d 100644 --- a/src/mc/scripting/modules/minecraft/ScriptDataDrivenActorTriggerAfterEvent.h +++ b/src/mc/scripting/modules/minecraft/ScriptDataDrivenActorTriggerAfterEvent.h @@ -30,7 +30,7 @@ struct ScriptDataDrivenActorTriggerAfterEvent { // symbol: // ??0ScriptDataDrivenActorTriggerAfterEvent@ScriptModuleMinecraft@@QEAA@AEBUActorDefinitionEndedEvent@@AEBVWeakLifetimeScope@Scripting@@@Z MCAPI ScriptDataDrivenActorTriggerAfterEvent( - struct ActorDefinitionEndedEvent const&, + struct ActorDefinitionEndedEvent const& actorDefinitionEvent, class Scripting::WeakLifetimeScope const& scope ); diff --git a/src/mc/scripting/modules/minecraft/ScriptModuleMinecraft.h b/src/mc/scripting/modules/minecraft/ScriptModuleMinecraft.h index bd8bb04d9c..b0ab48a54c 100644 --- a/src/mc/scripting/modules/minecraft/ScriptModuleMinecraft.h +++ b/src/mc/scripting/modules/minecraft/ScriptModuleMinecraft.h @@ -384,10 +384,10 @@ MCAPI class Scripting:: // ?getScriptScoreboardParticipantName@ScriptModuleMinecraft@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV?$variant@V?$StrongTypedObjectHandle@VScriptScoreboardIdentity@ScriptModuleMinecraft@@@Scripting@@V?$StrongTypedObjectHandle@VScriptActor@ScriptModuleMinecraft@@@2@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@3@@Z MCAPI std::string getScriptScoreboardParticipantName(std::variant< - class Scripting::StrongTypedObjectHandle< - class ScriptModuleMinecraft::ScriptScoreboardIdentity>, - class Scripting::StrongTypedObjectHandle, - std::string> const&); + class Scripting::StrongTypedObjectHandle< + class ScriptModuleMinecraft::ScriptScoreboardIdentity>, + class Scripting::StrongTypedObjectHandle, + std::string> const&); // NOLINTEND }; // namespace ScriptModuleMinecraft diff --git a/src/mc/scripting/modules/minecraft/ScriptScoreboard.h b/src/mc/scripting/modules/minecraft/ScriptScoreboard.h index 54654da815..ed4cc35a36 100644 --- a/src/mc/scripting/modules/minecraft/ScriptScoreboard.h +++ b/src/mc/scripting/modules/minecraft/ScriptScoreboard.h @@ -107,11 +107,11 @@ class ScriptScoreboard { // ?tryGetScoreboardParticipantScoreboardId@ScriptScoreboard@ScriptModuleMinecraft@@QEBA?AV?$optional@UScoreboardId@@@std@@AEBV?$variant@V?$StrongTypedObjectHandle@VScriptScoreboardIdentity@ScriptModuleMinecraft@@@Scripting@@V?$StrongTypedObjectHandle@VScriptActor@ScriptModuleMinecraft@@@2@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@4@@Z MCAPI std::optional tryGetScoreboardParticipantScoreboardId(std::variant< - class Scripting::StrongTypedObjectHandle< - class ScriptModuleMinecraft::ScriptScoreboardIdentity>, - class Scripting::StrongTypedObjectHandle< - class ScriptModuleMinecraft::ScriptActor>, - std::string> const&) const; + class Scripting::StrongTypedObjectHandle< + class ScriptModuleMinecraft::ScriptScoreboardIdentity>, + class Scripting::StrongTypedObjectHandle< + class ScriptModuleMinecraft::ScriptActor>, + std::string> const&) const; // symbol: // ?bind@ScriptScoreboard@ScriptModuleMinecraft@@SA?AV?$ClassBindingBuilder@VScriptScoreboard@ScriptModuleMinecraft@@@Scripting@@XZ diff --git a/src/mc/scripting/modules/minecraft_net/ScriptNetPromiseTracker.h b/src/mc/scripting/modules/minecraft_net/ScriptNetPromiseTracker.h index a20f7931c9..3d4d2b7e99 100644 --- a/src/mc/scripting/modules/minecraft_net/ScriptNetPromiseTracker.h +++ b/src/mc/scripting/modules/minecraft_net/ScriptNetPromiseTracker.h @@ -54,10 +54,10 @@ class ScriptNetPromiseTracker { // symbol: // ?handleResponse@ScriptNetPromiseTracker@ScriptModuleMinecraftNet@@QEAAXIAEBV?$vector@UScriptNetHeader@ScriptModuleMinecraftNet@@V?$allocator@UScriptNetHeader@ScriptModuleMinecraftNet@@@std@@@std@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@4@I@Z MCAPI void handleResponse( - uint requestId, - std::vector const&, - std::string const& body, - uint status + uint requestId, + std::vector const& headers, + std::string const& body, + uint status ); // symbol: diff --git a/src/mc/scripting/modules/minecraft_net/ScriptNetRequest.h b/src/mc/scripting/modules/minecraft_net/ScriptNetRequest.h index fb185e06be..2f0f2b1d9b 100644 --- a/src/mc/scripting/modules/minecraft_net/ScriptNetRequest.h +++ b/src/mc/scripting/modules/minecraft_net/ScriptNetRequest.h @@ -48,7 +48,7 @@ struct ScriptNetRequest { // symbol: // ?setHeaders@ScriptNetRequest@ScriptModuleMinecraftNet@@QEAA?AV?$StrongTypedObjectHandle@UScriptNetRequest@ScriptModuleMinecraftNet@@@Scripting@@AEBV?$vector@UScriptNetHeader@ScriptModuleMinecraftNet@@V?$allocator@UScriptNetHeader@ScriptModuleMinecraftNet@@@std@@@std@@@Z MCAPI class Scripting::StrongTypedObjectHandle - setHeaders(std::vector const&); + setHeaders(std::vector const& headers); // symbol: // ?setMethod@ScriptNetRequest@ScriptModuleMinecraftNet@@QEAA?AV?$StrongTypedObjectHandle@UScriptNetRequest@ScriptModuleMinecraftNet@@@Scripting@@VMethod@Http@Bedrock@@@Z diff --git a/src/mc/scripting/modules/minecraft_net/ScriptNetResponse.h b/src/mc/scripting/modules/minecraft_net/ScriptNetResponse.h index c67e5cf475..1d4cc2f657 100644 --- a/src/mc/scripting/modules/minecraft_net/ScriptNetResponse.h +++ b/src/mc/scripting/modules/minecraft_net/ScriptNetResponse.h @@ -31,7 +31,7 @@ struct ScriptNetResponse { // symbol: // ??0ScriptNetResponse@ScriptModuleMinecraftNet@@QEAA@AEBV?$vector@UScriptNetHeader@ScriptModuleMinecraftNet@@V?$allocator@UScriptNetHeader@ScriptModuleMinecraftNet@@@std@@@std@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@IAEBV?$StrongTypedObjectHandle@UScriptNetRequest@ScriptModuleMinecraftNet@@@Scripting@@@Z MCAPI - ScriptNetResponse(std::vector const&, std::string const& body, uint status, class Scripting::StrongTypedObjectHandle const&); + ScriptNetResponse(std::vector const& headers, std::string const& body, uint status, class Scripting::StrongTypedObjectHandle const&); // symbol: ??4ScriptNetResponse@ScriptModuleMinecraftNet@@QEAAAEAU01@$$QEAU01@@Z MCAPI struct ScriptModuleMinecraftNet::ScriptNetResponse& diff --git a/src/mc/scripting/modules/minecraft_ui/ScriptModalFormData.h b/src/mc/scripting/modules/minecraft_ui/ScriptModalFormData.h index e80ab8ee0a..e506c93402 100644 --- a/src/mc/scripting/modules/minecraft_ui/ScriptModalFormData.h +++ b/src/mc/scripting/modules/minecraft_ui/ScriptModalFormData.h @@ -69,16 +69,16 @@ class ScriptModalFormData { // ?slider@ScriptModalFormData@ScriptModuleMinecraftServerUI@@QEAA?AV?$StrongTypedObjectHandle@VScriptModalFormData@ScriptModuleMinecraftServerUI@@@Scripting@@V?$variant@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@UScriptRawMessageInterface@ScriptModuleMinecraft@@@std@@MMMV?$optional@M@6@@Z MCAPI class Scripting::StrongTypedObjectHandle slider( std::variant label, - float, - float maxValue, - float step, - std::optional defaultValue + float minValue, + float maxValue, + float step, + std::optional defaultValue ); // symbol: // ?sliderV010@ScriptModalFormData@ScriptModuleMinecraftServerUI@@QEAA?AV?$StrongTypedObjectHandle@VScriptModalFormData@ScriptModuleMinecraftServerUI@@@Scripting@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@MMMV?$optional@M@6@@Z MCAPI class Scripting::StrongTypedObjectHandle - sliderV010(std::string const& label, float, float maxValue, float step, std::optional defaultValue); + sliderV010(std::string const& label, float minValue, float maxValue, float step, std::optional defaultValue); // symbol: // ?textField@ScriptModalFormData@ScriptModuleMinecraftServerUI@@QEAA?AV?$StrongTypedObjectHandle@VScriptModalFormData@ScriptModuleMinecraftServerUI@@@Scripting@@V?$variant@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@UScriptRawMessageInterface@ScriptModuleMinecraft@@@std@@0V?$optional@V?$variant@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@UScriptRawMessageInterface@ScriptModuleMinecraft@@@std@@@6@@Z diff --git a/src/mc/server/ServerPlayer.h b/src/mc/server/ServerPlayer.h index a8b2e9238d..3c0ca965f8 100644 --- a/src/mc/server/ServerPlayer.h +++ b/src/mc/server/ServerPlayer.h @@ -271,7 +271,7 @@ class ServerPlayer : public ::Player { MCAPI void disconnect(); // symbol: ?doDeleteContainerManager@ServerPlayer@@QEAAX_N@Z - MCAPI void doDeleteContainerManager(bool); + MCAPI void doDeleteContainerManager(bool forceDisconnect); // symbol: ?doInitialSpawn@ServerPlayer@@QEAAXXZ MCAPI void doInitialSpawn(); @@ -280,7 +280,7 @@ class ServerPlayer : public ::Player { MCAPI class ItemStackNetManagerServer& getItemStackNetManagerServer(); // symbol: ?handleActorPickRequestOnServer@ServerPlayer@@QEAAXAEAVActor@@_N1@Z - MCAPI void handleActorPickRequestOnServer(class Actor& target, bool withData, bool); + MCAPI void handleActorPickRequestOnServer(class Actor& target, bool withData, bool isActorAgentAndEduMode); // symbol: ?handleBlockPickRequestOnServer@ServerPlayer@@QEAAXAEBVBlockPos@@_N@Z MCAPI void handleBlockPickRequestOnServer(class BlockPos const& position, bool withData); diff --git a/src/mc/server/SimulatedPlayer.h b/src/mc/server/SimulatedPlayer.h index 07f64d534b..c33f3ce107 100644 --- a/src/mc/server/SimulatedPlayer.h +++ b/src/mc/server/SimulatedPlayer.h @@ -96,8 +96,8 @@ class SimulatedPlayer : public ::ServerPlayer { std::string const& deviceId, std::unique_ptr certificate, int maxChunkRadius, - bool, - class EntityContext& entityContext + bool enableItemStackNetManager, + class EntityContext& entityContext ); // symbol: ?getGameTestHelper@SimulatedPlayer@@QEBA?AV?$NonOwnerPointer@VBaseGameTestHelper@gametest@@@Bedrock@@XZ diff --git a/src/mc/server/commands/CommandBlockName.h b/src/mc/server/commands/CommandBlockName.h index 1ff165ec4b..6470607117 100644 --- a/src/mc/server/commands/CommandBlockName.h +++ b/src/mc/server/commands/CommandBlockName.h @@ -27,12 +27,12 @@ class CommandBlockName { // symbol: // ?resolveBlock@CommandBlockName@@QEBA?AVCommandBlockNameResult@@AEBV?$vector@VBlockStateCommandParam@@V?$allocator@VBlockStateCommandParam@@@std@@@std@@AEAVCommandOutput@@@Z MCAPI class CommandBlockNameResult - resolveBlock(std::vector const&, class CommandOutput& output) const; + resolveBlock(std::vector const& states, class CommandOutput& output) const; // symbol: // ?resolveBlock@CommandBlockName@@QEBA?AVCommandBlockNameResult@@AEBV?$vector@VBlockStateCommandParam@@V?$allocator@VBlockStateCommandParam@@@std@@@std@@HAEAVCommandOutput@@@Z MCAPI class CommandBlockNameResult - resolveBlock(std::vector const&, int data, class CommandOutput& output) const; + resolveBlock(std::vector const& states, int data, class CommandOutput& output) const; // NOLINTEND }; diff --git a/src/mc/server/commands/CommandOrigin.h b/src/mc/server/commands/CommandOrigin.h index 666aec7d31..d3bd60572b 100644 --- a/src/mc/server/commands/CommandOrigin.h +++ b/src/mc/server/commands/CommandOrigin.h @@ -112,7 +112,7 @@ class CommandOrigin { virtual void updateValues(); // vIndex: 28, symbol: ?getExecutePosition@CommandOrigin@@UEBA?BVVec3@@HAEBVCommandPositionFloat@@@Z - virtual class Vec3 const getExecutePosition(int version, class CommandPositionFloat const&) const; + virtual class Vec3 const getExecutePosition(int version, class CommandPositionFloat const& commandPosition) const; // vIndex: 29, symbol: ?serialize@CommandOrigin@@UEBA?AVCompoundTag@@XZ virtual class CompoundTag serialize() const; diff --git a/src/mc/server/commands/CommandRegistry.h b/src/mc/server/commands/CommandRegistry.h index f745bf261f..28c9d06cee 100644 --- a/src/mc/server/commands/CommandRegistry.h +++ b/src/mc/server/commands/CommandRegistry.h @@ -231,7 +231,7 @@ class CommandRegistry { // symbol: // ?createSelector@Parser@CommandRegistry@@QEAA?AV?$unique_ptr@V?$CommandSelector@VActor@@@@U?$default_delete@V?$CommandSelector@VActor@@@@@std@@@std@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@4@AEBVCommandOrigin@@@Z MCAPI std::unique_ptr> - createSelector(std::string const&, class CommandOrigin const& origin); + createSelector(std::string const& selectorString, class CommandOrigin const& origin); // symbol: // ?getErrorMessage@Parser@CommandRegistry@@QEBAAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ diff --git a/src/mc/server/commands/CommandSelectorBase.h b/src/mc/server/commands/CommandSelectorBase.h index 1fb3b9df6f..9e71ecd89d 100644 --- a/src/mc/server/commands/CommandSelectorBase.h +++ b/src/mc/server/commands/CommandSelectorBase.h @@ -34,7 +34,7 @@ class CommandSelectorBase { std::string const& itemName, std::optional auxValue, class CommandIntegerRange const& quantity, - ::Puv::Legacy::EquipmentSlot, + ::Puv::Legacy::EquipmentSlot equipmentSlot, class CommandIntegerRange const& slot ); diff --git a/src/mc/server/commands/CommandUtils.h b/src/mc/server/commands/CommandUtils.h index 3e84ef7add..a80d0b5d6a 100644 --- a/src/mc/server/commands/CommandUtils.h +++ b/src/mc/server/commands/CommandUtils.h @@ -90,11 +90,12 @@ MCAPI std::string getTelemetryErrorList(class CommandOutput const&); MCAPI bool isActiveTickingChunk(class LevelChunk const& chunk); // symbol: ?isActiveTickingChunk@CommandUtils@@YA_NUTick@@0@Z -MCAPI bool isActiveTickingChunk(struct Tick, struct Tick); +MCAPI bool isActiveTickingChunk(struct Tick currentLevelTick, struct Tick); // symbol: // ?isFunctionValid@CommandUtils@@YA_NAEAVCommandOutput@@AEAVFunctionEntry@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z -MCAPI bool isFunctionValid(class CommandOutput& output, class FunctionEntry&, std::string const&); +MCAPI bool +isFunctionValid(class CommandOutput& output, class FunctionEntry& functionEntry, std::string const& resolvedPath); // symbol: ?isPlayerSpawnedMob@CommandUtils@@YA_NAEBVActor@@0@Z MCAPI bool isPlayerSpawnedMob(class Actor const& entity, class Actor const& summoner); @@ -104,7 +105,7 @@ MCAPI bool isPlayerSpawnedMob(class Actor const& entity, class Actor const& summ MCAPI bool isValidCommandEntity(std::vector<::ActorType> const& invalidEntities, ::ActorType type); // symbol: ?nameEntity@CommandUtils@@YAXAEAVActor@@_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z -MCAPI void nameEntity(class Actor& actor, bool, std::string const&); +MCAPI void nameEntity(class Actor& actor, bool nameSet, std::string const& actorName); // symbol: // ?setInitEvent@CommandUtils@@YAXAEAUActorDefinitionIdentifier@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z diff --git a/src/mc/server/commands/ExecuteContextCommandOrigin.h b/src/mc/server/commands/ExecuteContextCommandOrigin.h index 3889105294..7fa4cf46f4 100644 --- a/src/mc/server/commands/ExecuteContextCommandOrigin.h +++ b/src/mc/server/commands/ExecuteContextCommandOrigin.h @@ -69,7 +69,7 @@ class ExecuteContextCommandOrigin : public ::CommandOrigin { virtual void updateValues(); // vIndex: 28, symbol: ?getExecutePosition@ExecuteContextCommandOrigin@@UEBA?BVVec3@@HAEBVCommandPositionFloat@@@Z - virtual class Vec3 const getExecutePosition(int version, class CommandPositionFloat const&) const; + virtual class Vec3 const getExecutePosition(int version, class CommandPositionFloat const& commandPosition) const; // vIndex: 29, symbol: ?serialize@ExecuteContextCommandOrigin@@UEBA?AVCompoundTag@@XZ virtual class CompoundTag serialize() const; diff --git a/src/mc/server/commands/FogCommandUtil.h b/src/mc/server/commands/FogCommandUtil.h index 275af23dcf..fed834fb47 100644 --- a/src/mc/server/commands/FogCommandUtil.h +++ b/src/mc/server/commands/FogCommandUtil.h @@ -8,20 +8,30 @@ namespace FogCommandUtil { // ?pop@FogCommandUtil@@YA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0AEAVCommandOutput@@AEAVPlayer@@AEAVFogCommandComponent@@@Z MCAPI bool pop(std::string const&, - std::string const&, - class CommandOutput& output, - class Player& target, - class FogCommandComponent&); + std::string const& userProvidedId, + class CommandOutput& output, + class Player& target, + class FogCommandComponent& fogCommandComponent); // symbol: // ?push@FogCommandUtil@@YA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0AEAVCommandOutput@@AEAVPlayer@@AEAVFogCommandComponent@@@Z -MCAPI bool -push(std::string const&, std::string const&, class CommandOutput& output, class Player& target, class FogCommandComponent&); +MCAPI bool push( + std::string const& fogId, + std::string const& userProvidedId, + class CommandOutput& output, + class Player& target, + class FogCommandComponent& fogCommandComponent +); // symbol: // ?remove@FogCommandUtil@@YA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0AEAVCommandOutput@@AEAVPlayer@@AEAVFogCommandComponent@@@Z -MCAPI bool -remove(std::string const&, std::string const&, class CommandOutput& output, class Player& target, class FogCommandComponent&); +MCAPI bool remove( + std::string const&, + std::string const& userProvidedId, + class CommandOutput& output, + class Player& target, + class FogCommandComponent& fogCommandComponent +); // NOLINTEND }; // namespace FogCommandUtil diff --git a/src/mc/server/commands/MinecraftCommands.h b/src/mc/server/commands/MinecraftCommands.h index 70d6fcbd48..b1253f9651 100644 --- a/src/mc/server/commands/MinecraftCommands.h +++ b/src/mc/server/commands/MinecraftCommands.h @@ -23,8 +23,12 @@ class MinecraftCommands { // symbol: // ?compileCommand@MinecraftCommands@@QEAAPEAVCommand@@AEBVHashedString@@AEAVCommandOrigin@@W4CurrentCmdVersion@@V?$function@$$A6AXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@std@@@Z - MCAPI class Command* - compileCommand(class HashedString const& commandStr, class CommandOrigin& origin, ::CurrentCmdVersion commandVersion, std::function); + MCAPI class Command* compileCommand( + class HashedString const& commandStr, + class CommandOrigin& origin, + ::CurrentCmdVersion commandVersion, + std::function onParserError + ); // symbol: // ?enqueueDeferredCommand@MinecraftCommands@@QEAAXV?$unique_ptr@VCommandContext@@U?$default_delete@VCommandContext@@@std@@@std@@_N1V?$function@$$A6AXUMCRESULT@@@Z@3@@Z @@ -57,9 +61,9 @@ class MinecraftCommands { // ?initCoreEnums@MinecraftCommands@@QEAAXVItemRegistryRef@@AEBVLevel@@AEBVActorFactory@@AEBVExperiments@@AEBVBaseGameVersion@@@Z MCAPI void initCoreEnums( class ItemRegistryRef, - class Level const& registries, - class ActorFactory const& actorFactory, - class Experiments const&, + class Level const& registries, + class ActorFactory const& actorFactory, + class Experiments const& experiments, class BaseGameVersion const& worldBaseGameVersion ); @@ -89,8 +93,11 @@ class MinecraftCommands { MCAPI static void initBlockEnum(class CommandRegistry& registry, class BaseGameVersion const& worldBaseGameVersion); // symbol: ?initEntityEnum@MinecraftCommands@@SAXAEAVCommandRegistry@@AEBVActorFactory@@AEBVExperiments@@@Z - MCAPI static void - initEntityEnum(class CommandRegistry& registry, class ActorFactory const& actorFactory, class Experiments const&); + MCAPI static void initEntityEnum( + class CommandRegistry& registry, + class ActorFactory const& actorFactory, + class Experiments const& experiments + ); // symbol: ?initEntityPropertyEnum@MinecraftCommands@@SAXAEAVCommandRegistry@@AEBVLevel@@@Z MCAPI static void initEntityPropertyEnum(class CommandRegistry&, class Level const&); diff --git a/src/mc/server/commands/VirtualCommandOrigin.h b/src/mc/server/commands/VirtualCommandOrigin.h index 4e6c0dbc95..3c7d05a599 100644 --- a/src/mc/server/commands/VirtualCommandOrigin.h +++ b/src/mc/server/commands/VirtualCommandOrigin.h @@ -91,7 +91,7 @@ class VirtualCommandOrigin : public ::CommandOrigin { virtual void updateValues(); // vIndex: 28, symbol: ?getExecutePosition@VirtualCommandOrigin@@UEBA?BVVec3@@HAEBVCommandPositionFloat@@@Z - virtual class Vec3 const getExecutePosition(int version, class CommandPositionFloat const&) const; + virtual class Vec3 const getExecutePosition(int version, class CommandPositionFloat const& commandPosition) const; // vIndex: 29, symbol: ?serialize@VirtualCommandOrigin@@UEBA?AVCompoundTag@@XZ virtual class CompoundTag serialize() const; @@ -101,18 +101,18 @@ class VirtualCommandOrigin : public ::CommandOrigin { // symbol: ??0VirtualCommandOrigin@@QEAA@AEBVCommandOrigin@@AEAVActor@@AEBVCommandPositionFloat@@H@Z MCAPI VirtualCommandOrigin( - class CommandOrigin const& outputReceiver, - class Actor& entity, - class CommandPositionFloat const&, - int version + class CommandOrigin const& outputReceiver, + class Actor& entity, + class CommandPositionFloat const& commandPosition, + int version ); // symbol: ??0VirtualCommandOrigin@@QEAA@AEBVCommandOrigin@@0AEBVCommandPositionFloat@@H@Z MCAPI VirtualCommandOrigin( - class CommandOrigin const& outputReceiver, - class CommandOrigin const& source, - class CommandPositionFloat const&, - int version + class CommandOrigin const& outputReceiver, + class CommandOrigin const& source, + class CommandPositionFloat const& commandPosition, + int version ); // symbol: @@ -120,8 +120,8 @@ class VirtualCommandOrigin : public ::CommandOrigin { MCAPI VirtualCommandOrigin( std::unique_ptr outputReceiver, std::unique_ptr source, - class CommandPositionFloat const&, - int version + class CommandPositionFloat const& commandPosition, + int version ); // symbol: ?getOrigin@VirtualCommandOrigin@@QEBAPEAVCommandOrigin@@XZ diff --git a/src/mc/server/commands/standard/KickCommand.h b/src/mc/server/commands/standard/KickCommand.h index 2aa042b83b..64a493b003 100644 --- a/src/mc/server/commands/standard/KickCommand.h +++ b/src/mc/server/commands/standard/KickCommand.h @@ -55,7 +55,8 @@ class KickCommand : public ::ServerCommand { // symbol: // ?_kickPlayer@KickCommand@@CAXPEAVMinecraft@@AEBVPlayer@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z - MCAPI static void _kickPlayer(class Minecraft* game, class Player const&, std::string const& message); + MCAPI static void + _kickPlayer(class Minecraft* game, class Player const& matchingPlayer, std::string const& message); // NOLINTEND }; diff --git a/src/mc/server/commands/standard/StructureCommand.h b/src/mc/server/commands/standard/StructureCommand.h index 82d8c36552..21083d81ff 100644 --- a/src/mc/server/commands/standard/StructureCommand.h +++ b/src/mc/server/commands/standard/StructureCommand.h @@ -35,7 +35,8 @@ class StructureCommand : public ::Command { // symbol: ?_isValidSize@StructureCommand@@AEBA_NAEBVBlockPos@@AEBVDimensionHeightRange@@AEAVCommandOutput@@@Z MCAPI bool - _isValidSize(class BlockPos const& size, class DimensionHeightRange const&, class CommandOutput& output) const; + _isValidSize(class BlockPos const& size, class DimensionHeightRange const& heightRange, class CommandOutput& output) + const; // symbol: ?_load@StructureCommand@@AEBAXAEBVCommandOrigin@@AEAVCommandOutput@@@Z MCAPI void _load(class CommandOrigin const& origin, class CommandOutput& output) const; diff --git a/src/mc/server/module/VanillaGameModuleServer.h b/src/mc/server/module/VanillaGameModuleServer.h index 2a5bf62f75..64f49d5dc5 100644 --- a/src/mc/server/module/VanillaGameModuleServer.h +++ b/src/mc/server/module/VanillaGameModuleServer.h @@ -35,9 +35,9 @@ class VanillaGameModuleServer : public ::GameModuleServer { // ?configureLevel@VanillaGameModuleServer@@UEAAXAEBV?$not_null@V?$NonOwnerPointer@VLevel@@@Bedrock@@@gsl@@AEBVExperiments@@AEAVResourcePackManager@@AEBVBaseGameVersion@@@Z virtual void configureLevel( Bedrock::NotNullNonOwnerPtr const& level, - class Experiments const&, - class ResourcePackManager& resourcePackManager, - class BaseGameVersion const& baseGameVersion + class Experiments const& experiments, + class ResourcePackManager& resourcePackManager, + class BaseGameVersion const& baseGameVersion ); // vIndex: 4, symbol: ?configureNewPlayer@VanillaGameModuleServer@@UEAAXAEAVPlayer@@@Z @@ -76,10 +76,10 @@ class VanillaGameModuleServer : public ::GameModuleServer { // ?_configureWorldGen@VanillaGameModuleServer@@AEAAXAEAVIWorldRegistriesProvider@@AEBUSpawnSettings@@AEBVExperiments@@AEAVResourcePackManager@@AEBVBaseGameVersion@@@Z MCAPI void _configureWorldGen( class IWorldRegistriesProvider& worldRegistries, - struct SpawnSettings const&, - class Experiments const&, - class ResourcePackManager& resourcePackManager, - class BaseGameVersion const& baseGameVersion + struct SpawnSettings const& spawnSettings, + class Experiments const& experiments, + class ResourcePackManager& resourcePackManager, + class BaseGameVersion const& baseGameVersion ); // symbol: diff --git a/src/mc/textobject/TextObjectParser.h b/src/mc/textobject/TextObjectParser.h index 1b8beac70c..87359de771 100644 --- a/src/mc/textobject/TextObjectParser.h +++ b/src/mc/textobject/TextObjectParser.h @@ -69,8 +69,12 @@ class TextObjectParser { // symbol: // ?textObjectFromJsonServer@TextObjectParser@@SA_NAEBVValue@Json@@AEAVTextObjectRoot@@UServerData@1@AEAUErrorLocalization@1@@Z - MCAPI static bool - textObjectFromJsonServer(class Json::Value const& root, class TextObjectRoot& parsedObject, struct TextObjectParser::ServerData, struct TextObjectParser::ErrorLocalization&); + MCAPI static bool textObjectFromJsonServer( + class Json::Value const& root, + class TextObjectRoot& parsedObject, + struct TextObjectParser::ServerData serverData, + struct TextObjectParser::ErrorLocalization& errorLocalization + ); // symbol: // ?textObjectFromJsonString@TextObjectParser@@SA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEAVTextObjectRoot@@AEAV23@@Z @@ -130,28 +134,48 @@ class TextObjectParser { // NOLINTBEGIN // symbol: // ?_getObjectsFromTextObject@TextObjectParser@@CA_NAEBVValue@Json@@AEAVTextObjectRoot@@PEAUServerData@1@AEAUErrorLocalization@1@@Z - MCAPI static bool - _getObjectsFromTextObject(class Json::Value const& root, class TextObjectRoot& parsedObject, struct TextObjectParser::ServerData*, struct TextObjectParser::ErrorLocalization&); + MCAPI static bool _getObjectsFromTextObject( + class Json::Value const& root, + class TextObjectRoot& parsedObject, + struct TextObjectParser::ServerData* serverData, + struct TextObjectParser::ErrorLocalization& errorLocalization + ); // symbol: // ?_parseScoreTextObject@TextObjectParser@@CA_NAEAVTextObjectRoot@@AEBVValue@Json@@PEAUServerData@1@AEAUErrorLocalization@1@@Z - MCAPI static bool - _parseScoreTextObject(class TextObjectRoot&, class Json::Value const&, struct TextObjectParser::ServerData*, struct TextObjectParser::ErrorLocalization&); + MCAPI static bool _parseScoreTextObject( + class TextObjectRoot& parentTextObject, + class Json::Value const& scoreObject, + struct TextObjectParser::ServerData* serverData, + struct TextObjectParser::ErrorLocalization& errorLocalization + ); // symbol: // ?_parseSelectorTextObject@TextObjectParser@@CA_NAEAVTextObjectRoot@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PEAUServerData@1@AEAUErrorLocalization@1@@Z - MCAPI static bool - _parseSelectorTextObject(class TextObjectRoot&, std::string, struct TextObjectParser::ServerData*, struct TextObjectParser::ErrorLocalization&); + MCAPI static bool _parseSelectorTextObject( + class TextObjectRoot& parentTextObject, + std::string selectorString, + struct TextObjectParser::ServerData* serverData, + struct TextObjectParser::ErrorLocalization& errorLocalization + ); // symbol: // ?_textObjectFromJson@TextObjectParser@@CA_NAEBVValue@Json@@AEAVTextObjectRoot@@PEAUServerData@1@AEAUErrorLocalization@1@@Z - MCAPI static bool - _textObjectFromJson(class Json::Value const& root, class TextObjectRoot& parsedObject, struct TextObjectParser::ServerData*, struct TextObjectParser::ErrorLocalization&); + MCAPI static bool _textObjectFromJson( + class Json::Value const& root, + class TextObjectRoot& parsedObject, + struct TextObjectParser::ServerData* serverData, + struct TextObjectParser::ErrorLocalization& errorLocalization + ); // symbol: // ?_textObjectFromString@TextObjectParser@@CA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEAVTextObjectRoot@@PEAUServerData@1@AEAUErrorLocalization@1@@Z - MCAPI static bool - _textObjectFromString(std::string const& jsonAsString, class TextObjectRoot& parsedObject, struct TextObjectParser::ServerData*, struct TextObjectParser::ErrorLocalization&); + MCAPI static bool _textObjectFromString( + std::string const& jsonAsString, + class TextObjectRoot& parsedObject, + struct TextObjectParser::ServerData* serverData, + struct TextObjectParser::ErrorLocalization& errorLocalization + ); // NOLINTEND }; diff --git a/src/mc/textobject/TextObjectSelector.h b/src/mc/textobject/TextObjectSelector.h index f419692dc7..8df53c06bd 100644 --- a/src/mc/textobject/TextObjectSelector.h +++ b/src/mc/textobject/TextObjectSelector.h @@ -33,7 +33,7 @@ class TextObjectSelector : public ::ITextObject { virtual class Json::Value resolve(struct ResolveData const&) const; // symbol: ??0TextObjectSelector@@QEAA@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z - MCAPI explicit TextObjectSelector(std::string); + MCAPI explicit TextObjectSelector(std::string selectorString); // symbol: // ?RAW_TEXT_SELECTOR_KEY@TextObjectSelector@@2V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@B diff --git a/src/mc/textobject/TextObjectText.h b/src/mc/textobject/TextObjectText.h index 98f5e0063c..65b6f98615 100644 --- a/src/mc/textobject/TextObjectText.h +++ b/src/mc/textobject/TextObjectText.h @@ -37,7 +37,7 @@ class TextObjectText : public ::ITextObject { // symbol: // ?asJsonValue@TextObjectText@@SA?AVValue@Json@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z - MCAPI static class Json::Value asJsonValue(std::string const&); + MCAPI static class Json::Value asJsonValue(std::string const& textField); // NOLINTEND }; diff --git a/src/mc/util/ActorDefinitionEventLoader.h b/src/mc/util/ActorDefinitionEventLoader.h index cdd9ca70b3..6d1e202e17 100644 --- a/src/mc/util/ActorDefinitionEventLoader.h +++ b/src/mc/util/ActorDefinitionEventLoader.h @@ -18,8 +18,12 @@ class ActorDefinitionEventLoader { // NOLINTBEGIN // symbol: // ?loadEvent@ActorDefinitionEventLoader@@SA?AVActorDefinitionEvent@@VValue@Json@@AEBVSemVersion@@1PEBVActorEventResponseFactory@@@Z - MCAPI static class ActorDefinitionEvent - loadEvent(class Json::Value root, class SemVersion const& engineVersion, class SemVersion const& formatVersion, class ActorEventResponseFactory const*); + MCAPI static class ActorDefinitionEvent loadEvent( + class Json::Value root, + class SemVersion const& engineVersion, + class SemVersion const& formatVersion, + class ActorEventResponseFactory const* responseFactory + ); // NOLINTEND @@ -27,13 +31,20 @@ class ActorDefinitionEventLoader { // NOLINTBEGIN // symbol: // ?_loadCollection@ActorDefinitionEventLoader@@CAXAEAVActorDefinitionEvent@@AEBVValue@Json@@AEBVSemVersion@@PEBVActorEventResponseFactory@@@Z - MCAPI static void - _loadCollection(class ActorDefinitionEvent&, class Json::Value const& collection, class SemVersion const& engineVersion, class ActorEventResponseFactory const*); + MCAPI static void _loadCollection( + class ActorDefinitionEvent& defEvent, + class Json::Value const& collection, + class SemVersion const& engineVersion, + class ActorEventResponseFactory const* responseFactory + ); // symbol: // ?_loadEvent@ActorDefinitionEventLoader@@CA?AVActorDefinitionEvent@@AEAVValue@Json@@AEBVSemVersion@@PEBVActorEventResponseFactory@@@Z - MCAPI static class ActorDefinitionEvent - _loadEvent(class Json::Value& root, class SemVersion const& engineVersion, class ActorEventResponseFactory const*); + MCAPI static class ActorDefinitionEvent _loadEvent( + class Json::Value& root, + class SemVersion const& engineVersion, + class ActorEventResponseFactory const* responseFactory + ); // NOLINTEND }; diff --git a/src/mc/util/CallbackToken.h b/src/mc/util/CallbackToken.h index 3c948b6345..6eed17d178 100644 --- a/src/mc/util/CallbackToken.h +++ b/src/mc/util/CallbackToken.h @@ -14,7 +14,7 @@ class CallbackToken { MCAPI CallbackToken(); // symbol: ??0CallbackToken@@QEAA@V?$weak_ptr@VCallbackTokenCancelState@@@std@@@Z - MCAPI explicit CallbackToken(std::weak_ptr); + MCAPI explicit CallbackToken(std::weak_ptr cancelState); // symbol: ?cancelCallback@CallbackToken@@QEAAXXZ MCAPI void cancelCallback(); diff --git a/src/mc/util/CreatorMetadataUtils.h b/src/mc/util/CreatorMetadataUtils.h index 53e4513822..03e782a903 100644 --- a/src/mc/util/CreatorMetadataUtils.h +++ b/src/mc/util/CreatorMetadataUtils.h @@ -129,7 +129,7 @@ MCAPI std::initializer_list<::AllExperiments> getRequiredExperimentsForMetadata( MCAPI std::string scriptingVersionToString(struct Scripting::Version const&); // symbol: ?writeJsonMetadataToFile@CreatorMetadataUtils@@YA_NAEBVValue@Json@@AEBVPath@Core@@@Z -MCAPI bool writeJsonMetadataToFile(class Json::Value const& json, class Core::Path const&); +MCAPI bool writeJsonMetadataToFile(class Json::Value const& json, class Core::Path const& filepath); // NOLINTEND }; // namespace CreatorMetadataUtils diff --git a/src/mc/util/DefinitionEventLoader.h b/src/mc/util/DefinitionEventLoader.h index 63000babd3..44353f0ab4 100644 --- a/src/mc/util/DefinitionEventLoader.h +++ b/src/mc/util/DefinitionEventLoader.h @@ -21,8 +21,12 @@ class DefinitionEventLoader { // NOLINTBEGIN // symbol: // ?loadEvent@DefinitionEventLoader@@SA?AVDefinitionEvent@@VValue@Json@@AEBVSemVersion@@W4TypeExecutingEvent@@PEBVEventResponseFactory@@@Z - MCAPI static class DefinitionEvent - loadEvent(class Json::Value root, class SemVersion const& engineVersion, ::TypeExecutingEvent, class EventResponseFactory const*); + MCAPI static class DefinitionEvent loadEvent( + class Json::Value root, + class SemVersion const& engineVersion, + ::TypeExecutingEvent eventCaller, + class EventResponseFactory const* responseFactory + ); // NOLINTEND @@ -30,8 +34,13 @@ class DefinitionEventLoader { // NOLINTBEGIN // symbol: // ?_loadCollection@DefinitionEventLoader@@CAXAEAVDefinitionEvent@@AEBVValue@Json@@AEBVSemVersion@@W4TypeExecutingEvent@@PEBVEventResponseFactory@@@Z - MCAPI static void - _loadCollection(class DefinitionEvent&, class Json::Value const& collection, class SemVersion const& engineVersion, ::TypeExecutingEvent, class EventResponseFactory const*); + MCAPI static void _loadCollection( + class DefinitionEvent& defEvent, + class Json::Value const& collection, + class SemVersion const& engineVersion, + ::TypeExecutingEvent eventCaller, + class EventResponseFactory const* responseFactory + ); // NOLINTEND }; diff --git a/src/mc/util/DictionaryCompressionUtil.h b/src/mc/util/DictionaryCompressionUtil.h index a4cff7ba4a..a93a276e72 100644 --- a/src/mc/util/DictionaryCompressionUtil.h +++ b/src/mc/util/DictionaryCompressionUtil.h @@ -17,7 +17,7 @@ MCAPI std::set _pruneDictionary(std::map&); // symbol: // ?_tryCompressToken@DictionaryCompressionUtil@@YAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEAV?$set@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@U?$less@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@3@VBinaryStream@@@Z -MCAPI void _tryCompressToken(std::string const& token, std::set&, class BinaryStream stream); +MCAPI void _tryCompressToken(std::string const& token, std::set& dictionary, class BinaryStream stream); // symbol: // ?dictionaryCompressString@DictionaryCompressionUtil@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV23@@Z diff --git a/src/mc/util/Easing.h b/src/mc/util/Easing.h index 26f81577f1..f84e974b81 100644 --- a/src/mc/util/Easing.h +++ b/src/mc/util/Easing.h @@ -15,7 +15,7 @@ class Easing { public: // NOLINTBEGIN // symbol: ?getEasingFunc@Easing@@SA?AV?$function@$$A6AMMMM@Z@std@@W4EasingType@@@Z - MCAPI static std::function getEasingFunc(::EasingType); + MCAPI static std::function getEasingFunc(::EasingType easingType); // symbol: // ?getStringFromEasingType@Easing@@SAAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4EasingType@@@Z diff --git a/src/mc/util/EventResponseFactory.h b/src/mc/util/EventResponseFactory.h index 33d5e24884..7cc6e623c2 100644 --- a/src/mc/util/EventResponseFactory.h +++ b/src/mc/util/EventResponseFactory.h @@ -22,7 +22,7 @@ class EventResponseFactory { virtual ~EventResponseFactory(); // vIndex: 1, symbol: ?initializeFactory@BlockEventResponseFactory@@UEAAXAEBVExperiments@@@Z - virtual void initializeFactory(class Experiments const&) = 0; + virtual void initializeFactory(class Experiments const& experiments) = 0; // vIndex: 2, symbol: ?initSchema@BlockEventResponseFactory@@UEAAXXZ virtual void initSchema() = 0; @@ -38,7 +38,7 @@ class EventResponseFactory { // symbol: // ?initSchema@EventResponseFactory@@QEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVSemVersion@@@Z - MCAPI void initSchema(std::string const&, class SemVersion const& version); + MCAPI void initSchema(std::string const& schemaName, class SemVersion const& version); // NOLINTEND }; diff --git a/src/mc/util/ExpressionNode.h b/src/mc/util/ExpressionNode.h index b1466c3219..698ff534a4 100644 --- a/src/mc/util/ExpressionNode.h +++ b/src/mc/util/ExpressionNode.h @@ -84,11 +84,11 @@ class ExpressionNode { MCAPI ::MolangVersion const getMolangVersion() const; // symbol: ?getTreeHash@ExpressionNode@@QEBA_K_N@Z - MCAPI uint64 getTreeHash(bool) const; + MCAPI uint64 getTreeHash(bool sideEffectsReturnZero) const; // symbol: // ?getTreeString@ExpressionNode@@QEBA_NAEAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_N@Z - MCAPI bool getTreeString(std::string& dest, bool) const; + MCAPI bool getTreeString(std::string& dest, bool sideEffectsReturnZero) const; // symbol: // ?hasDisallowedQueries@ExpressionNode@@QEBA_NAEBV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@@Z @@ -113,7 +113,7 @@ class ExpressionNode { MCAPI ::MolangCompileResult link(::MolangVersion molangVersion) const; // symbol: ?moveConstantChildToValueIfFloatOrHashType@ExpressionNode@@QEAAXH@Z - MCAPI void moveConstantChildToValueIfFloatOrHashType(int); + MCAPI void moveConstantChildToValueIfFloatOrHashType(int firstConstChildIndex); // symbol: ??4ExpressionNode@@QEAAAEAV0@AEBV0@@Z MCAPI class ExpressionNode& operator=(class ExpressionNode const& rhs); @@ -127,7 +127,7 @@ class ExpressionNode { // symbol: // ?parse@ExpressionNode@@QEAA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4MolangVersion@@V?$span@$$CBVHashedString@@$0?0@gsl@@@Z MCAPI bool - parse(std::string const& inputExpression, ::MolangVersion molangVersion, gsl::span); + parse(std::string const& inputExpression, ::MolangVersion molangVersion, gsl::span idSet); // symbol: ??1ExpressionNode@@QEAA@XZ MCAPI ~ExpressionNode(); @@ -155,22 +155,33 @@ class ExpressionNode { MCAPI static std::function< struct MolangScriptArg const&(class RenderParams&, std::vector const&)> const* queryFunctionAccessorFromString( - std::string const& functionName, - ::MolangVersion molangVersion, - ::MolangQueryFunctionReturnType&, - bool missingIsOkay_returnNullIfSo + std::string const& functionName, + ::MolangVersion molangVersion, + ::MolangQueryFunctionReturnType& functionReturnType, + bool missingIsOkay_returnNullIfSo ); // symbol: // ?registerQueryFunction@ExpressionNode@@SAAEAUMolangQueryFunction@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$function@$$A6AAEBUMolangScriptArg@@AEAVRenderParams@@AEBV?$vector@VExpressionNode@@V?$allocator@VExpressionNode@@@std@@@std@@@Z@4@0W4MolangQueryFunctionReturnType@@VHashedString@@_K4AEBV?$initializer_list@H@4@@Z - MCAPI static struct MolangQueryFunction& registerQueryFunction(std::string const& queryFunctionName, std::function const&)> accessor, std::string const& documentation, ::MolangQueryFunctionReturnType returnType, class HashedString, uint64 minArgumentCount, uint64 maxArgumentCount, std::initializer_list const&); + MCAPI static struct MolangQueryFunction& registerQueryFunction( + std::string const& queryFunctionName, + std::function const&)> + accessor, + std::string const& documentation, + ::MolangQueryFunctionReturnType returnType, + class HashedString querySetIdentifier, + uint64 minArgumentCount, + uint64 maxArgumentCount, + std::initializer_list const& experiments + ); // symbol: ?setExperiments@ExpressionNode@@SAXAEBVExperiments@@@Z - MCAPI static void setExperiments(class Experiments const&); + MCAPI static void setExperiments(class Experiments const& experiments); // symbol: // ?unregisterQueryFunction@ExpressionNode@@SAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@VHashedString@@@Z - MCAPI static void unregisterQueryFunction(std::string const& queryFunctionName, class HashedString); + MCAPI static void + unregisterQueryFunction(std::string const& queryFunctionName, class HashedString querySetIdentifier); // symbol: // ?mAliasOpTokens@ExpressionNode@@2V?$vector@U?$pair@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4ExpressionOp@@@std@@V?$allocator@U?$pair@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4ExpressionOp@@@std@@@2@@std@@A @@ -211,8 +222,11 @@ class ExpressionNode { MCAPI bool _processTernaryAndConditionalExpressions(); // symbol: ?_readNextToken@ExpressionNode@@AEAA_NAEAPEBDAEBV?$span@$$CBVHashedString@@$0?0@gsl@@W4MolangVersion@@@Z - MCAPI bool - _readNextToken(char const*& expression, gsl::span const&, ::MolangVersion molangVersion); + MCAPI bool _readNextToken( + char const*& expression, + gsl::span const& idSet, + ::MolangVersion molangVersion + ); // symbol: // ?_setExpressionStringWithoutRelink@ExpressionNode@@AEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z @@ -221,14 +235,14 @@ class ExpressionNode { // symbol: // ?_tokenize@ExpressionNode@@AEAA_NPEBDAEAUExpressionOpBitField@@AEBV?$span@$$CBVHashedString@@$0?0@gsl@@W4MolangVersion@@@Z MCAPI bool _tokenize( - char const* expression, - struct ExpressionOpBitField& usedTokenFlags, - gsl::span const&, - ::MolangVersion molangVersion + char const* expression, + struct ExpressionOpBitField& usedTokenFlags, + gsl::span const& idSet, + ::MolangVersion molangVersion ); // symbol: ?_validate@ExpressionNode@@AEBA_NW4MolangVersion@@_NH@Z - MCAPI bool _validate(::MolangVersion version, bool, int) const; + MCAPI bool _validate(::MolangVersion version, bool inLoop, int inAssignmentLHSDepth) const; // symbol: ?_validateChildrenAreNumerical@ExpressionNode@@AEBA_NW4MolangVersion@@@Z MCAPI bool _validateChildrenAreNumerical(::MolangVersion version) const; @@ -272,23 +286,35 @@ class ExpressionNode { // symbol: // ?_buildProgram@ExpressionNode@@CA?AW4MolangCompileResult@@AEAUMolangProgramBuildState@@PEBV1@W4MolangVersion@@@Z - MCAPI static ::MolangCompileResult - _buildProgram(struct MolangProgramBuildState&, class ExpressionNode const* node, ::MolangVersion molangVersion); + MCAPI static ::MolangCompileResult _buildProgram( + struct MolangProgramBuildState& buildState, + class ExpressionNode const* node, + ::MolangVersion molangVersion + ); // symbol: // ?_getOrCreateReferencedMemberVariableScriptArg@ExpressionNode@@CAPEAUMolangScriptArg@@AEAUMolangEvalParams@@AEBV1@@Z - MCAPI static struct MolangScriptArg* - _getOrCreateReferencedMemberVariableScriptArg(struct MolangEvalParams& state, class ExpressionNode const&); + MCAPI static struct MolangScriptArg* _getOrCreateReferencedMemberVariableScriptArg( + struct MolangEvalParams& state, + class ExpressionNode const& memberAccessorNode + ); // symbol: // ?_getQueryFunctionAccessor@ExpressionNode@@CA_NAEAUMolangScriptArg@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4MolangVersion@@W4MolangQueryFunctionReturnType@@AEBVHashedString@@@Z - MCAPI static bool - _getQueryFunctionAccessor(struct MolangScriptArg& arg, std::string const& functionName, ::MolangVersion molangVersion, ::MolangQueryFunctionReturnType, class HashedString const&); + MCAPI static bool _getQueryFunctionAccessor( + struct MolangScriptArg& arg, + std::string const& functionName, + ::MolangVersion molangVersion, + ::MolangQueryFunctionReturnType functionReturnType, + class HashedString const& querySetId + ); // symbol: // ?_getScriptArgFromMemberAccessedVariable@ExpressionNode@@CAPEBUMolangScriptArg@@AEAUMolangEvalParams@@AEBV1@@Z - MCAPI static struct MolangScriptArg const* - _getScriptArgFromMemberAccessedVariable(struct MolangEvalParams& state, class ExpressionNode const&); + MCAPI static struct MolangScriptArg const* _getScriptArgFromMemberAccessedVariable( + struct MolangEvalParams& state, + class ExpressionNode const& memberAccessorNode + ); // symbol: ?_initializeMolangQueries@ExpressionNode@@CA_NXZ MCAPI static bool _initializeMolangQueries(); @@ -296,16 +322,16 @@ class ExpressionNode { // symbol: // ?_writeScriptArgToMemberAccessedVariable@ExpressionNode@@CAXAEAUMolangEvalParams@@AEBV1@AEBUMolangScriptArg@@@Z MCAPI static void _writeScriptArgToMemberAccessedVariable( - struct MolangEvalParams& state, - class ExpressionNode const&, + struct MolangEvalParams& state, + class ExpressionNode const& memberAccessorNode, struct MolangScriptArg const& value ); // symbol: // ?_writeScriptArgToMolangVariable@ExpressionNode@@CAXAEAVMolangVariableMap@@W4MolangVariableIndex@@AEBUMolangScriptArg@@@Z MCAPI static void _writeScriptArgToMolangVariable( - class MolangVariableMap&, - ::MolangVariableIndex, + class MolangVariableMap& destMap, + ::MolangVariableIndex variableIndex, struct MolangScriptArg const& value ); diff --git a/src/mc/util/FileUploadManager.h b/src/mc/util/FileUploadManager.h index 91064a0767..4ead1c051c 100644 --- a/src/mc/util/FileUploadManager.h +++ b/src/mc/util/FileUploadManager.h @@ -53,8 +53,8 @@ class FileUploadManager { virtual void uploadFileToRealmStorage( std::string const& uploadId, class Core::Path const& path, - int, - std::string const& realmsGuid + int slotIndex, + std::string const& realmsGuid ) = 0; // symbol: ??0FileUploadManager@@QEAA@AEAVTaskGroup@@V?$shared_ptr@VIFileChunkUploader@@@std@@@Z diff --git a/src/mc/util/ResourcePackFileUploadManager.h b/src/mc/util/ResourcePackFileUploadManager.h index a22b589274..cf5cbbf0e6 100644 --- a/src/mc/util/ResourcePackFileUploadManager.h +++ b/src/mc/util/ResourcePackFileUploadManager.h @@ -29,8 +29,8 @@ class ResourcePackFileUploadManager : public ::FileUploadManager { virtual void uploadFileToRealmStorage( std::string const& uploadId, class Core::Path const& path, - int, - std::string const& realmsGuid + int slotIndex, + std::string const& realmsGuid ); // symbol: @@ -50,7 +50,7 @@ class ResourcePackFileUploadManager : public ::FileUploadManager { // symbol: // ?_uploadPackToRealmStorage@ResourcePackFileUploadManager@@AEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVPath@Core@@H0@Z MCAPI void - _uploadPackToRealmStorage(std::string const& uploadId, class Core::Path const& path, int, std::string const&); + _uploadPackToRealmStorage(std::string const& uploadId, class Core::Path const& path, int slotIndex, std::string const&); // symbol: // ?_uploadResourcePackFolder@ResourcePackFileUploadManager@@AEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVResourceLocation@@AEBVPath@Core@@AEBVValue@Json@@@Z diff --git a/src/mc/util/molang/MolangEvalParams.h b/src/mc/util/molang/MolangEvalParams.h index 9c1a705626..fb79865909 100644 --- a/src/mc/util/molang/MolangEvalParams.h +++ b/src/mc/util/molang/MolangEvalParams.h @@ -19,7 +19,8 @@ struct MolangEvalParams { MCAPI class Actor* getActorFromArg(struct MolangScriptArg const& arg) const; // symbol: ?getActorPtrFromPushedArray@MolangEvalParams@@QEBAPEAVActor@@_K0AEA_N@Z - MCAPI class Actor* getActorPtrFromPushedArray(uint64, uint64, bool&) const; + MCAPI class Actor* + getActorPtrFromPushedArray(uint64 arrayStackOffset, uint64 arrayElementOffset, bool& outOfElements) const; // symbol: ?popActor@MolangEvalParams@@QEAAPEAVActor@@XZ MCAPI class Actor* popActor(); @@ -34,7 +35,7 @@ struct MolangEvalParams { MCAPI uint64 popMissingVariableOrActorAddress(class HashedString const& variableName); // symbol: ?popMissingVariableOrActorAddress@MolangEvalParams@@QEAA_KW4MolangVariableIndex@@@Z - MCAPI uint64 popMissingVariableOrActorAddress(::MolangVariableIndex); + MCAPI uint64 popMissingVariableOrActorAddress(::MolangVariableIndex variableIndex); // symbol: ?popPublicAccessMode@MolangEvalParams@@QEAA_NXZ MCAPI bool popPublicAccessMode(); @@ -43,7 +44,7 @@ struct MolangEvalParams { MCAPI void popRenderParamsCopyAndPtr(); // symbol: ?pushLoopScope@MolangEvalParams@@QEAAX_K0@Z - MCAPI void pushLoopScope(uint64, uint64); + MCAPI void pushLoopScope(uint64 loopRepeatLogicInstructionIndex, uint64 loopCleanupStatementInstructionIndex); // symbol: ?pushRenderParams@MolangEvalParams@@QEAAXAEBVRenderParams@@@Z MCAPI void pushRenderParams(class RenderParams const& rhs); diff --git a/src/mc/util/molang/MolangMemberArray.h b/src/mc/util/molang/MolangMemberArray.h index a211d4cbf3..529a05048d 100644 --- a/src/mc/util/molang/MolangMemberArray.h +++ b/src/mc/util/molang/MolangMemberArray.h @@ -54,7 +54,7 @@ struct MolangMemberArray { MCAPI MolangMemberArray(::MolangStruct_PoseIndexAndHurtTime, int poseIndex, int hurtTime); // symbol: ??0MolangMemberArray@@QEAA@W4MolangStruct_RotYAndPosY@@MM@Z - MCAPI MolangMemberArray(::MolangStruct_RotYAndPosY, float rotY, float); + MCAPI MolangMemberArray(::MolangStruct_RotYAndPosY, float rotY, float posY); // symbol: ??0MolangMemberArray@@QEAA@W4MolangStruct_SpeedAndDirection@@MAEBVVec3@@@Z MCAPI MolangMemberArray(::MolangStruct_SpeedAndDirection, float speed, class Vec3 const& direction); @@ -68,7 +68,7 @@ struct MolangMemberArray { // symbol: ??0MolangMemberArray@@QEAA@W4MolangStruct_TRS@@$$QEAU0@11@Z MCAPI MolangMemberArray( ::MolangStruct_TRS, - struct MolangMemberArray&&, + struct MolangMemberArray&& translation, struct MolangMemberArray&& rotation, struct MolangMemberArray&& scale ); diff --git a/src/mc/util/molang/MolangProgramBuildState.h b/src/mc/util/molang/MolangProgramBuildState.h index 1d1422e6ee..07931bab99 100644 --- a/src/mc/util/molang/MolangProgramBuildState.h +++ b/src/mc/util/molang/MolangProgramBuildState.h @@ -15,19 +15,24 @@ struct MolangProgramBuildState { MCAPI uint64 allocateInstruction(); // symbol: ?emplaceInstruction@MolangProgramBuildState@@QEAAXV?$function@$$A6AXAEAUMolangEvalParams@@@Z@std@@@Z - MCAPI void emplaceInstruction(std::function); + MCAPI void emplaceInstruction(std::function instruction); // symbol: ?emplaceInstruction@MolangProgramBuildState@@QEAAX_KV?$function@$$A6AXAEAUMolangEvalParams@@@Z@std@@@Z - MCAPI void emplaceInstruction(uint64 index, std::function); + MCAPI void emplaceInstruction(uint64 index, std::function instruction); // symbol: ?insertJumpWithMaddAtIndex@MolangProgramBuildState@@QEAAX_K0MM@Z - MCAPI void insertJumpWithMaddAtIndex(uint64, uint64, float, float); + MCAPI void insertJumpWithMaddAtIndex( + uint64 instructionIndexToPutThisInstruction, + uint64 instructionToJumpTo, + float mulValue, + float addValue + ); // symbol: ?numInstructions@MolangProgramBuildState@@QEBA_KXZ MCAPI uint64 numInstructions() const; // symbol: ?popForEachScope@MolangProgramBuildState@@QEAAX_K@Z - MCAPI void popForEachScope(uint64); + MCAPI void popForEachScope(uint64 instructionIndex); // symbol: ?pushReturnValue@MolangProgramBuildState@@QEAAXXZ MCAPI void pushReturnValue(); diff --git a/src/mc/util/molang/MolangVariable.h b/src/mc/util/molang/MolangVariable.h index 599d2dcf0d..9f563a2338 100644 --- a/src/mc/util/molang/MolangVariable.h +++ b/src/mc/util/molang/MolangVariable.h @@ -24,10 +24,10 @@ class MolangVariable { MCAPI static ::MolangVariableIndex getVariableIndex(class HashedString const& name); // symbol: ?getVariableIndex@MolangVariable@@SA?AW4MolangVariableIndex@@_K@Z - MCAPI static ::MolangVariableIndex getVariableIndex(uint64); + MCAPI static ::MolangVariableIndex getVariableIndex(uint64 nameHash); // symbol: ?getVariableIndex@MolangVariable@@SA?AW4MolangVariableIndex@@_KPEBD_N@Z - MCAPI static ::MolangVariableIndex getVariableIndex(uint64, char const* name, bool); + MCAPI static ::MolangVariableIndex getVariableIndex(uint64 nameHash, char const* name, bool allowSpecialCharacters); // symbol: ?getVariableName@MolangVariable@@SAAEBVHashedString@@W4MolangVariableIndex@@@Z MCAPI static class HashedString const& getVariableName(::MolangVariableIndex index); diff --git a/src/mc/websockets/RakWebSocket.h b/src/mc/websockets/RakWebSocket.h index 4befdc22be..4d5c0b39f1 100644 --- a/src/mc/websockets/RakWebSocket.h +++ b/src/mc/websockets/RakWebSocket.h @@ -26,7 +26,7 @@ class RakWebSocket { // vIndex: 1, symbol: // ?connect@RakWebSocket@@UEAA?AW4WSConnectionResult@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@4@@Z - virtual ::WSConnectionResult connect(std::string const& uri, std::vector const&); + virtual ::WSConnectionResult connect(std::string const& uri, std::vector const& subProtocols); // vIndex: 2, symbol: // ?connect@RakWebSocket@@UEAA?AW4WSConnectionResult@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z @@ -84,13 +84,14 @@ class RakWebSocket { MCAPI void _invokeOnCloseHandler(); // symbol: ?_processClosingHandshake@RakWebSocket@@IEAAX_N@Z - MCAPI void _processClosingHandshake(bool); + MCAPI void _processClosingHandshake(bool notifyHandler); // symbol: ?_processDataFrames@RakWebSocket@@IEAAXAEAVBitStream@RakNet@@@Z - MCAPI void _processDataFrames(class RakNet::BitStream&); + MCAPI void _processDataFrames(class RakNet::BitStream& newIncoming); // symbol: ?_processPacket@RakWebSocket@@IEAA_NAEBV?$function@$$A6AXAEAVBitStream@RakNet@@@Z@std@@_N@Z - MCAPI bool _processPacket(std::function const&, bool); + MCAPI bool + _processPacket(std::function const& processStep, bool acceptNewConnection); // symbol: ?_reset@RakWebSocket@@IEAAXXZ MCAPI void _reset(); @@ -99,17 +100,17 @@ class RakWebSocket { MCAPI bool _sendControlFrame(uchar const* payload, uint64 size, ::OpCode opCode); // symbol: ?_sendDataFrame@RakWebSocket@@IEAA_NPEBEIW4OpCode@@_N@Z - MCAPI bool _sendDataFrame(uchar const* payload, uint size, ::OpCode opCode, bool); + MCAPI bool _sendDataFrame(uchar const* payload, uint size, ::OpCode opCode, bool isFinalFragment); // symbol: ?_sendNonControlFrame@RakWebSocket@@IEAA_NPEBE_KW4OpCode@@@Z MCAPI bool _sendNonControlFrame(uchar const* payload, uint64 size, ::OpCode opCode); // symbol: // ?_splitWebSocketURI@RakWebSocket@@IEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEAV23@11@Z - MCAPI void _splitWebSocketURI(std::string const& uri, std::string&, std::string& host, std::string& path); + MCAPI void _splitWebSocketURI(std::string const& uri, std::string& scheme, std::string& host, std::string& path); // symbol: ?_subProcessHttpResponse@RakWebSocket@@IEAAXAEAVBitStream@RakNet@@@Z - MCAPI void _subProcessHttpResponse(class RakNet::BitStream&); + MCAPI void _subProcessHttpResponse(class RakNet::BitStream& newIncoming); // symbol: ?_validateFields@RakWebSocket@@IEAAXXZ MCAPI void _validateFields(); diff --git a/src/mc/websockets/RakWebSocketDataFrame.h b/src/mc/websockets/RakWebSocketDataFrame.h index 8ecac90d55..39685a2771 100644 --- a/src/mc/websockets/RakWebSocketDataFrame.h +++ b/src/mc/websockets/RakWebSocketDataFrame.h @@ -20,8 +20,14 @@ class RakWebSocketDataFrame { public: // NOLINTBEGIN // symbol: ?writeFrameToStream@RakWebSocketDataFrame@@SAXAEAVBitStream@RakNet@@PEBEIW4OpCode@@_NI@Z - MCAPI static void - writeFrameToStream(class RakNet::BitStream& stream, uchar const* payload, uint size, ::OpCode opCode, bool, uint); + MCAPI static void writeFrameToStream( + class RakNet::BitStream& stream, + uchar const* payload, + uint size, + ::OpCode opCode, + bool isFin, + uint maskKey + ); // NOLINTEND }; diff --git a/src/mc/world/Container.h b/src/mc/world/Container.h index 791a5ae9d0..e583ec2d08 100644 --- a/src/mc/world/Container.h +++ b/src/mc/world/Container.h @@ -22,7 +22,11 @@ class Container { virtual void init(); // vIndex: 2, symbol: ?serverInitItemStackIds@CraftingContainer@@UEAAXHHV?$function@$$A6AXHAEBVItemStack@@@Z@std@@@Z - virtual void serverInitItemStackIds(int, int count, std::function) = 0; + virtual void serverInitItemStackIds( + int containerSlot, + int count, + std::function onNetIdChanged + ) = 0; // vIndex: 3, symbol: ?addContentChangeListener@Container@@UEAAXPEAVContainerContentChangeListener@@@Z virtual void addContentChangeListener(class ContainerContentChangeListener* listener); @@ -49,7 +53,7 @@ class Container { virtual void setItem(int slot, class ItemStack const& item) = 0; // vIndex: 11, symbol: ?setItemWithForceBalance@Container@@UEAAXHAEBVItemStack@@_N@Z - virtual void setItemWithForceBalance(int slot, class ItemStack const& item, bool); + virtual void setItemWithForceBalance(int slot, class ItemStack const& item, bool forceBalanced); // vIndex: 12, symbol: ?removeItem@Container@@UEAAXHH@Z virtual void removeItem(int slot, int count); @@ -166,7 +170,7 @@ class Container { MCAPI void removeCloseListener(class ContainerCloseListener*); // symbol: ?serverInitItemStackIdsAll@Container@@QEAAXV?$function@$$A6AXHAEBVItemStack@@@Z@std@@@Z - MCAPI void serverInitItemStackIdsAll(std::function); + MCAPI void serverInitItemStackIdsAll(std::function onNetIdChanged); // symbol: ?setGameplayContainerType@Container@@QEAAXW4ContainerType@@@Z MCAPI void setGameplayContainerType(::ContainerType type); @@ -193,7 +197,8 @@ class Container { MCAPI int _getEmptySlotsCount(int start, int end) const; // symbol: ?_serverInitId@Container@@IEAAXHAEAVItemStack@@V?$function@$$A6AXHAEBVItemStack@@@Z@std@@@Z - MCAPI void _serverInitId(int slot, class ItemStack& item, std::function); + MCAPI void + _serverInitId(int slot, class ItemStack& item, std::function onNetIdChanged); // NOLINTEND diff --git a/src/mc/world/Facing.h b/src/mc/world/Facing.h index 155a467f38..f337e22507 100644 --- a/src/mc/world/Facing.h +++ b/src/mc/world/Facing.h @@ -69,7 +69,7 @@ class Facing { MCAPI static uchar getClockWise(uchar face); // symbol: ?getClosestRotation@Facing@@SA?AW4Rotation@1@M@Z - MCAPI static ::Facing::Rotation getClosestRotation(float); + MCAPI static ::Facing::Rotation getClosestRotation(float degree); // symbol: ?getCounterClockWise@Facing@@SAEE@Z MCAPI static uchar getCounterClockWise(uchar face); @@ -123,7 +123,8 @@ class Facing { MCAPI static uchar rotateFace(uchar face, ::Facing::Rotation rot); // symbol: ?rotateFaceAroundGivenFace@Facing@@SAEEEW4Rotation@1@@Z - MCAPI static uchar rotateFaceAroundGivenFace(uchar, uchar, ::Facing::Rotation rotation); + MCAPI static uchar + rotateFaceAroundGivenFace(uchar faceToRotate, uchar faceToRotateAround, ::Facing::Rotation rotation); // symbol: ?toString@Facing@@SA?AV?$basic_string_view@DU?$char_traits@D@std@@@std@@E@Z MCAPI static std::string_view toString(uchar face); diff --git a/src/mc/world/FillingContainer.h b/src/mc/world/FillingContainer.h index d27e1ab911..82aa286465 100644 --- a/src/mc/world/FillingContainer.h +++ b/src/mc/world/FillingContainer.h @@ -18,7 +18,11 @@ class FillingContainer : public ::Container { virtual ~FillingContainer(); // vIndex: 2, symbol: ?serverInitItemStackIds@FillingContainer@@UEAAXHHV?$function@$$A6AXHAEBVItemStack@@@Z@std@@@Z - virtual void serverInitItemStackIds(int, int count, std::function); + virtual void serverInitItemStackIds( + int containerSlot, + int count, + std::function onNetIdChanged + ); // vIndex: 5, symbol: ?getItem@FillingContainer@@UEBAAEBVItemStack@@H@Z virtual class ItemStack const& getItem(int slot) const; @@ -27,7 +31,7 @@ class FillingContainer : public ::Container { virtual void setItem(int slot, class ItemStack const& item); // vIndex: 11, symbol: ?setItemWithForceBalance@FillingContainer@@UEAAXHAEBVItemStack@@_N@Z - virtual void setItemWithForceBalance(int slot, class ItemStack const& item, bool); + virtual void setItemWithForceBalance(int slot, class ItemStack const& item, bool forceBalanced); // vIndex: 12, symbol: ?removeItem@FillingContainer@@UEAAXHH@Z virtual void removeItem(int slot, int count); diff --git a/src/mc/world/Minecraft.h b/src/mc/world/Minecraft.h index 5ce2cdd584..bcf639e119 100644 --- a/src/mc/world/Minecraft.h +++ b/src/mc/world/Minecraft.h @@ -50,9 +50,9 @@ class Minecraft : public ::IEntityRegistryOwner { // symbol: // ??0Minecraft@@QEAA@AEAVIMinecraftApp@@AEAVGameCallbacks@@AEAVAllowList@@PEAVPermissionsFile@@AEBV?$not_null@V?$NonOwnerPointer@VFilePathManager@Core@@@Bedrock@@@gsl@@V?$duration@_JU?$ratio@$00$00@std@@@chrono@std@@AEAVIMinecraftEventing@@VClientOrServerNetworkSystemRef@@AEAVPacketSender@@W4SubClientId@@AEAVTimer@@AEAVTimer@@AEBV?$not_null@V?$NonOwnerPointer@$$CBVIContentTierManager@@@Bedrock@@@6@PEAVServerMetrics@@@Z MCAPI Minecraft( - class IMinecraftApp& app, - class GameCallbacks& gameCallbacks, - class AllowList&, + class IMinecraftApp& app, + class GameCallbacks& gameCallbacks, + class AllowList& allowList, class PermissionsFile* permissionsFile, Bedrock::NotNullNonOwnerPtr const& filePathManager, std::chrono::seconds maxPlayerIdleTime, @@ -70,7 +70,7 @@ class Minecraft : public ::IEntityRegistryOwner { MCAPI void activateAllowList(); // symbol: ?configureGameTest@Minecraft@@QEAAXAEAVLevel@@AEBVExperiments@@@Z - MCAPI void configureGameTest(class Level& level, class Experiments const&); + MCAPI void configureGameTest(class Level& level, class Experiments const& experiments); // symbol: // ?disconnectClient@Minecraft@@QEAAXAEBVNetworkIdentifier@@W4DisconnectFailReason@Connection@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z diff --git a/src/mc/world/SimpleContainer.h b/src/mc/world/SimpleContainer.h index 767cfa200f..b18c1c39ad 100644 --- a/src/mc/world/SimpleContainer.h +++ b/src/mc/world/SimpleContainer.h @@ -19,7 +19,11 @@ class SimpleContainer : public ::Container { virtual ~SimpleContainer(); // vIndex: 2, symbol: ?serverInitItemStackIds@SimpleContainer@@UEAAXHHV?$function@$$A6AXHAEBVItemStack@@@Z@std@@@Z - virtual void serverInitItemStackIds(int, int count, std::function); + virtual void serverInitItemStackIds( + int containerSlot, + int count, + std::function onNetIdChanged + ); // vIndex: 5, symbol: ?getItem@SimpleContainer@@UEBAAEBVItemStack@@H@Z virtual class ItemStack const& getItem(int slot) const; diff --git a/src/mc/world/SimpleSparseContainer.h b/src/mc/world/SimpleSparseContainer.h index dde3d89eb8..94becbc13e 100644 --- a/src/mc/world/SimpleSparseContainer.h +++ b/src/mc/world/SimpleSparseContainer.h @@ -45,7 +45,7 @@ class SimpleSparseContainer { // symbol: // ??0SimpleSparseContainer@@QEAA@AEAVContainer@@W4SparseContainerBackingSetType@@V?$unique_ptr@VISparseContainerSetListener@@U?$default_delete@VISparseContainerSetListener@@@std@@@std@@V?$unique_ptr@VIPlayerContainerSetter@@U?$default_delete@VIPlayerContainerSetter@@@std@@@4@@Z MCAPI - SimpleSparseContainer(class Container&, ::SparseContainerBackingSetType, std::unique_ptr, std::unique_ptr); + SimpleSparseContainer(class Container& backingContainer, ::SparseContainerBackingSetType backingSetType, std::unique_ptr, std::unique_ptr); // symbol: ?clearItem@SimpleSparseContainer@@QEAAXH@Z MCAPI void clearItem(int slot); diff --git a/src/mc/world/actor/Actor.h b/src/mc/world/actor/Actor.h index 38adbe4a69..067268af33 100644 --- a/src/mc/world/actor/Actor.h +++ b/src/mc/world/actor/Actor.h @@ -145,7 +145,7 @@ class Actor : public ::ActorStatusProvider { // vIndex: 33, symbol: // ?getExitTip@Actor@@UEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV23@W4InputMode@@W4NewInteractionModel@@@Z - virtual std::string getExitTip(std::string const& kind, ::InputMode mode, ::NewInteractionModel) const; + virtual std::string getExitTip(std::string const& kind, ::InputMode mode, ::NewInteractionModel scheme) const; // vIndex: 34, symbol: // ?getEntityLocNameString@Actor@@UEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ @@ -595,7 +595,7 @@ class Actor : public ::ActorStatusProvider { MCAPI bool canSeeDaylight() const; // symbol: ?celebrateHunt@Actor@@QEAAXH_N@Z - MCAPI void celebrateHunt(int duration, bool); + MCAPI void celebrateHunt(int duration, bool special); // symbol: ?checkFallDamage@Actor@@QEAAXM_N0@Z MCAPI void checkFallDamage(float, bool, bool); @@ -2045,7 +2045,7 @@ class Actor : public ::ActorStatusProvider { MCAPI void _tryPlantWitherRose(); // symbol: ?_updateComposition@Actor@@AEAAX_N@Z - MCAPI void _updateComposition(bool); + MCAPI void _updateComposition(bool reload); // NOLINTEND diff --git a/src/mc/world/actor/ActorComponentFactory.h b/src/mc/world/actor/ActorComponentFactory.h index b44035d1fa..cdbeb57a29 100644 --- a/src/mc/world/actor/ActorComponentFactory.h +++ b/src/mc/world/actor/ActorComponentFactory.h @@ -22,7 +22,7 @@ class ActorComponentFactory : public ::EntityComponentFactoryJson { // private: // NOLINTBEGIN // symbol: ?_initialize@ActorComponentFactory@@AEAAXAEBVExperiments@@@Z - MCAPI void _initialize(class Experiments const&); + MCAPI void _initialize(class Experiments const& experiments); // NOLINTEND }; diff --git a/src/mc/world/actor/ActorDefinition.h b/src/mc/world/actor/ActorDefinition.h index 22aac4cba8..3440740017 100644 --- a/src/mc/world/actor/ActorDefinition.h +++ b/src/mc/world/actor/ActorDefinition.h @@ -40,8 +40,12 @@ class ActorDefinition { MCAPI void parseEntityDescription(struct DeserializeDataParams deserializeDataParams); // symbol: ?parseEvents@ActorDefinition@@QEAAXAEBVValue@Json@@AEBVSemVersion@@1PEAVActorEventResponseFactory@@@Z - MCAPI void - parseEvents(class Json::Value const& root, class SemVersion const& engineVersion, class SemVersion const& formatVersion, class ActorEventResponseFactory*); + MCAPI void parseEvents( + class Json::Value const& root, + class SemVersion const& engineVersion, + class SemVersion const& formatVersion, + class ActorEventResponseFactory* responseFactory + ); // symbol: ?parsePermutations@ActorDefinition@@QEAAXAEAVValue@Json@@AEBVSemVersion@@1AEAVActorFactory@@@Z MCAPI void parsePermutations( diff --git a/src/mc/world/actor/ActorDefinitionDescriptor.h b/src/mc/world/actor/ActorDefinitionDescriptor.h index 623b85dea1..36dce4eb60 100644 --- a/src/mc/world/actor/ActorDefinitionDescriptor.h +++ b/src/mc/world/actor/ActorDefinitionDescriptor.h @@ -75,10 +75,10 @@ class ActorDefinitionDescriptor { // symbol: // ?forceExecuteTriggerChain@ActorDefinitionDescriptor@@SAXAEAVActor@@AEBVActorDefinitionTrigger@@AEAV?$vector@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@$$CBV12@@std@@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@$$CBV12@@std@@@2@@std@@AEBVVariantParameterList@@@Z MCAPI static void forceExecuteTriggerChain( - class Actor& entity, - class ActorDefinitionTrigger const& trigger, - std::vector>&, - class VariantParameterList const& list + class Actor& entity, + class ActorDefinitionTrigger const& trigger, + std::vector>& eventStack, + class VariantParameterList const& list ); // symbol: @@ -92,19 +92,19 @@ class ActorDefinitionDescriptor { // symbol: // ?_executeEvent@ActorDefinitionDescriptor@@CA_NAEAVActor@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEAV?$vector@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@$$CBV12@@std@@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@$$CBV12@@std@@@2@@4@AEBVVariantParameterList@@@Z MCAPI static bool _executeEvent( - class Actor& entity, - std::string const& name, - std::vector>&, - class VariantParameterList const& list + class Actor& entity, + std::string const& name, + std::vector>& eventStack, + class VariantParameterList const& list ); // symbol: // ?_forceExecuteTrigger@ActorDefinitionDescriptor@@CAXAEAVActor@@AEBVActorDefinitionTrigger@@AEAV?$vector@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@$$CBV12@@std@@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@$$CBV12@@std@@@2@@std@@AEBVVariantParameterList@@@Z MCAPI static void _forceExecuteTrigger( - class Actor& entity, - class ActorDefinitionTrigger const& trigger, - std::vector>&, - class VariantParameterList const& list + class Actor& entity, + class ActorDefinitionTrigger const& trigger, + std::vector>& eventStack, + class VariantParameterList const& list ); // NOLINTEND diff --git a/src/mc/world/actor/ActorDefinitionGroup.h b/src/mc/world/actor/ActorDefinitionGroup.h index 19bd0f5257..53efb8f770 100644 --- a/src/mc/world/actor/ActorDefinitionGroup.h +++ b/src/mc/world/actor/ActorDefinitionGroup.h @@ -51,8 +51,12 @@ class ActorDefinitionGroup : public ::Bedrock::EnableNonOwnerReferences { // symbol: // ??0ActorDefinitionGroup@@QEAA@AEAVLevel@@AEAVResourcePackManager@@AEAVIMinecraftEventing@@AEBVExperiments@@@Z - MCAPI - ActorDefinitionGroup(class Level& level, class ResourcePackManager& resourcePackManager, class IMinecraftEventing& eventing, class Experiments const&); + MCAPI ActorDefinitionGroup( + class Level& level, + class ResourcePackManager& resourcePackManager, + class IMinecraftEventing& eventing, + class Experiments const& experiments + ); // symbol: // ?buildActorEventList@ActorDefinitionGroup@@QEBA?AV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@XZ diff --git a/src/mc/world/actor/ActorFactory.h b/src/mc/world/actor/ActorFactory.h index 168c6066eb..b13627157c 100644 --- a/src/mc/world/actor/ActorFactory.h +++ b/src/mc/world/actor/ActorFactory.h @@ -89,7 +89,7 @@ class ActorFactory { MCAPI class ActorGoalFactory& getGoalFactory(); // symbol: ?init@ActorFactory@@QEAAXAEBVExperiments@@@Z - MCAPI void init(class Experiments const&); + MCAPI void init(class Experiments const& experiments); // symbol: ?loadActor@ActorFactory@@QEAA?AV?$OwnerPtr@VEntityContext@@@@PEAVCompoundTag@@AEAVDataLoadHelper@@@Z MCAPI class OwnerPtr loadActor(class CompoundTag*, class DataLoadHelper&); @@ -102,10 +102,10 @@ class ActorFactory { // symbol: // ?loadActor@ActorFactory@@QEAA?AV?$OwnerPtr@VEntityContext@@@@PEAVCompoundTag@@AEAVDataLoadHelper@@AEBVDimensionHeightRange@@PEBVLevelChunk@@@Z MCAPI class OwnerPtr loadActor( - class CompoundTag* tag, - class DataLoadHelper& dataLoadHelper, - class DimensionHeightRange const&, - class LevelChunk const* levelChunk + class CompoundTag* tag, + class DataLoadHelper& dataLoadHelper, + class DimensionHeightRange const& heightRange, + class LevelChunk const* levelChunk ); // symbol: ?lookupEntityType@ActorFactory@@QEBA?AW4ActorType@@AEBUActorDefinitionIdentifier@@@Z @@ -124,7 +124,7 @@ class ActorFactory { // ?fillFactoryData@ActorFactory@@SAXAEBUActorDefinitionIdentifier@@0AEBV?$unordered_map@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@UActorFactoryData@@U?$hash@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@U?$equal_to@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@UActorFactoryData@@@std@@@2@@std@@AEAUActorFactoryData@@@Z MCAPI static void fillFactoryData( struct ActorDefinitionIdentifier const& identifier, - struct ActorDefinitionIdentifier const&, + struct ActorDefinitionIdentifier const& baseIdentifier, std::unordered_map const&, struct ActorFactoryData& data ); @@ -134,8 +134,15 @@ class ActorFactory { // symbol: // ?registerEntityMapping@ActorFactory@@SAXAEBW4ActorType@@_NAEBQ6A?AV?$unique_ptr@VActor@@U?$default_delete@VActor@@@std@@@std@@PEAVActorDefinitionGroup@@AEBUActorDefinitionIdentifier@@AEAVEntityContext@@@ZV?$optional@H@4@@Z - MCAPI static void - registerEntityMapping(::ActorType const&, bool allowSummon, std::unique_ptr (*const& factory)(class ActorDefinitionGroup*, struct ActorDefinitionIdentifier const&, class EntityContext&), std::optional); + MCAPI static void registerEntityMapping( + ::ActorType const& actorType, + bool allowSummon, + std::unique_ptr< + class + Actor> (*const& + factory)(class ActorDefinitionGroup*, struct ActorDefinitionIdentifier const&, class EntityContext&), + std::optional experimentIndex + ); // NOLINTEND @@ -144,7 +151,7 @@ class ActorFactory { // symbol: // ?_buildSummonableActorList@ActorFactory@@AEBAXAEBVExperiments@@V?$function@$$A6AXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBUActorFactoryData@@@Z@std@@@Z MCAPI void _buildSummonableActorList( - class Experiments const&, + class Experiments const& experiments, std::function callback ) const; diff --git a/src/mc/world/actor/ContainerComponent.h b/src/mc/world/actor/ContainerComponent.h index df61f51304..62dc8e0c88 100644 --- a/src/mc/world/actor/ContainerComponent.h +++ b/src/mc/world/actor/ContainerComponent.h @@ -119,7 +119,11 @@ class ContainerComponent { MCAPI void removeItemsOfType(class ItemStack const& item, int count); // symbol: ?serverInitItemStackIds@ContainerComponent@@QEAAXHHV?$function@$$A6AXHAEBVItemStack@@@Z@std@@@Z - MCAPI void serverInitItemStackIds(int, int count, std::function); + MCAPI void serverInitItemStackIds( + int containerSlot, + int count, + std::function onNetIdChanged + ); // symbol: // ?setCustomName@ContainerComponent@@QEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z diff --git a/src/mc/world/actor/HangingActor.h b/src/mc/world/actor/HangingActor.h index f3db58865a..de4053f273 100644 --- a/src/mc/world/actor/HangingActor.h +++ b/src/mc/world/actor/HangingActor.h @@ -103,7 +103,7 @@ class HangingActor : public ::Actor { MCAPI void _calculateActorPositionFromPlacementPosition(class BlockPos const& blockPos); // symbol: ?_wouldSurvive@HangingActor@@IEAA_NAEAVBlockSource@@AEBVBlockPos@@_N@Z - MCAPI bool _wouldSurvive(class BlockSource& region, class BlockPos const& blockPos, bool); + MCAPI bool _wouldSurvive(class BlockSource& region, class BlockPos const& blockPos, bool beingPlaced); // NOLINTEND @@ -116,7 +116,8 @@ class HangingActor : public ::Actor { MCAPI bool _blockIsObstruction(class BlockSource const& region, class BlockPos const& blockPos) const; // symbol: ?_canSurviveOnBlock@HangingActor@@AEBA_NAEBVBlockSource@@AEBVBlockPos@@_N@Z - MCAPI bool _canSurviveOnBlock(class BlockSource const& region, class BlockPos const& blockPos, bool) const; + MCAPI bool + _canSurviveOnBlock(class BlockSource const& region, class BlockPos const& blockPos, bool beingPlaced) const; // NOLINTEND diff --git a/src/mc/world/actor/Mob.h b/src/mc/world/actor/Mob.h index 3791194051..17c5fffa3f 100644 --- a/src/mc/world/actor/Mob.h +++ b/src/mc/world/actor/Mob.h @@ -390,7 +390,7 @@ class Mob : public ::Actor { MCAPI int getEatCounter() const; // symbol: ?getExpectedFallDamage@Mob@@QEBAMMM@Z - MCAPI float getExpectedFallDamage(float distance, float) const; + MCAPI float getExpectedFallDamage(float distance, float multiplier) const; // symbol: ?getFirstCaravanHead@Mob@@QEAAPEAV1@XZ MCAPI class Mob* getFirstCaravanHead(); diff --git a/src/mc/world/actor/VanillaActors.h b/src/mc/world/actor/VanillaActors.h index a6ec6d908a..a5b0806159 100644 --- a/src/mc/world/actor/VanillaActors.h +++ b/src/mc/world/actor/VanillaActors.h @@ -5,7 +5,7 @@ namespace VanillaActors { // NOLINTBEGIN // symbol: ?registerVanillaActorData@VanillaActors@@YAXAEBVBaseGameVersion@@AEBVExperiments@@@Z -MCAPI void registerVanillaActorData(class BaseGameVersion const& version, class Experiments const&); +MCAPI void registerVanillaActorData(class BaseGameVersion const& version, class Experiments const& experiments); // NOLINTEND }; // namespace VanillaActors diff --git a/src/mc/world/actor/VanillaBuiltInEntities.h b/src/mc/world/actor/VanillaBuiltInEntities.h index 236db18d75..9e532ad8cf 100644 --- a/src/mc/world/actor/VanillaBuiltInEntities.h +++ b/src/mc/world/actor/VanillaBuiltInEntities.h @@ -5,7 +5,7 @@ namespace VanillaBuiltInEntities { // NOLINTBEGIN // symbol: ?registerMappings@VanillaBuiltInEntities@@YAXAEBVBaseGameVersion@@AEBVExperiments@@@Z -MCAPI void registerMappings(class BaseGameVersion const& version, class Experiments const&); +MCAPI void registerMappings(class BaseGameVersion const& version, class Experiments const& experiments); // NOLINTEND }; // namespace VanillaBuiltInEntities diff --git a/src/mc/world/actor/VehicleUtils.h b/src/mc/world/actor/VehicleUtils.h index 1aae9046d6..3b7b5f2612 100644 --- a/src/mc/world/actor/VehicleUtils.h +++ b/src/mc/world/actor/VehicleUtils.h @@ -36,17 +36,15 @@ class VehicleUtils { // symbol: // ?getActivatorRailExitPatternStrategy@VehicleUtils@@SAP6A?AV?$optional@VVec3@@@std@@AEBUVehicleDirections@1@V?$function@$$A6A_NAEBVVec3@@0@Z@3@@ZAEBVBaseGameVersion@@@Z - MCAPI static auto getActivatorRailExitPatternStrategy(class BaseGameVersion const& version) - -> std::optional< - class - Vec3> (*)(struct VehicleUtils::VehicleDirections const&, std::function); + MCAPI static auto getActivatorRailExitPatternStrategy(class BaseGameVersion const& version) -> std::optional< + class + Vec3> (*)(struct VehicleUtils::VehicleDirections const&, std::function); // symbol: // ?getActorExitPatternStrategy@VehicleUtils@@SAP6A?AV?$optional@VVec3@@@std@@AEBUVehicleDirections@1@V?$function@$$A6A_NAEBVVec3@@0@Z@3@@ZAEBVBaseGameVersion@@@Z - MCAPI static auto getActorExitPatternStrategy(class BaseGameVersion const& version) - -> std::optional< - class - Vec3> (*)(struct VehicleUtils::VehicleDirections const&, std::function); + MCAPI static auto getActorExitPatternStrategy(class BaseGameVersion const& version) -> std::optional< + class + Vec3> (*)(struct VehicleUtils::VehicleDirections const&, std::function); // symbol: ?ignoredExitCollisionBlock@VehicleUtils@@SA_NAEBVBlock@@@Z MCAPI static bool ignoredExitCollisionBlock(class Block const& block); diff --git a/src/mc/world/actor/ai/control/MoveControl.h b/src/mc/world/actor/ai/control/MoveControl.h index 70ceb406cb..f36de6e71e 100644 --- a/src/mc/world/actor/ai/control/MoveControl.h +++ b/src/mc/world/actor/ai/control/MoveControl.h @@ -52,11 +52,20 @@ class MoveControl : public ::Control { // protected: // NOLINTBEGIN // symbol: ?calculateMoveSpeed@MoveControl@@IEAAMAEBVMoveControlComponent@@AEAVMob@@AEBVVec3@@M@Z - MCAPI float calculateMoveSpeed(class MoveControlComponent const& parent, class Mob& mob, class Vec3 const&, float); + MCAPI float calculateMoveSpeed( + class MoveControlComponent const& parent, + class Mob& mob, + class Vec3 const& endPosition, + float maxMoveSpeed + ); // symbol: ?calculateYRotation@MoveControl@@IEAAMAEBVMoveControlComponent@@AEBVMob@@AEBVVec3@@M@Z - MCAPI float - calculateYRotation(class MoveControlComponent const& parent, class Mob const& mob, class Vec3 const&, float); + MCAPI float calculateYRotation( + class MoveControlComponent const& parent, + class Mob const& mob, + class Vec3 const& positionDifference, + float maxMoveSpeed + ); // NOLINTEND }; diff --git a/src/mc/world/actor/ai/goal/AvoidBlockGoal.h b/src/mc/world/actor/ai/goal/AvoidBlockGoal.h index 853f5bd36f..3c020deff2 100644 --- a/src/mc/world/actor/ai/goal/AvoidBlockGoal.h +++ b/src/mc/world/actor/ai/goal/AvoidBlockGoal.h @@ -44,7 +44,7 @@ class AvoidBlockGoal : public ::Goal { // symbol: // ?setTargetSelectionMethod@Definition@AvoidBlockGoal@@QEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z - MCAPI void setTargetSelectionMethod(std::string const&); + MCAPI void setTargetSelectionMethod(std::string const& methodCased); // symbol: // ?buildSchema@Definition@AvoidBlockGoal@@SAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEAV?$shared_ptr@V?$JsonSchemaObjectNode@VEmptyClass@JsonUtil@@VDefinition@AvoidBlockGoal@@@JsonUtil@@@4@@Z diff --git a/src/mc/world/actor/ai/goal/FertilizeFarmBlockGoal.h b/src/mc/world/actor/ai/goal/FertilizeFarmBlockGoal.h index 79d5d2ca4b..0016949ec4 100644 --- a/src/mc/world/actor/ai/goal/FertilizeFarmBlockGoal.h +++ b/src/mc/world/actor/ai/goal/FertilizeFarmBlockGoal.h @@ -48,7 +48,7 @@ class FertilizeFarmBlockGoal : public ::BaseMoveToBlockGoal { // protected: // NOLINTBEGIN // symbol: ?tryFertilizeCrop@FertilizeFarmBlockGoal@@IEAA_NAEAVBlockSource@@AEBVBlockPos@@@Z - MCAPI bool tryFertilizeCrop(class BlockSource& region, class BlockPos const&); + MCAPI bool tryFertilizeCrop(class BlockSource& region, class BlockPos const& farmlandPos); // NOLINTEND diff --git a/src/mc/world/actor/ai/goal/HarvestFarmBlockGoal.h b/src/mc/world/actor/ai/goal/HarvestFarmBlockGoal.h index 061af6423c..6040a81e3b 100644 --- a/src/mc/world/actor/ai/goal/HarvestFarmBlockGoal.h +++ b/src/mc/world/actor/ai/goal/HarvestFarmBlockGoal.h @@ -48,7 +48,7 @@ class HarvestFarmBlockGoal : public ::BaseMoveToBlockGoal { // protected: // NOLINTBEGIN // symbol: ?trySowCrop@HarvestFarmBlockGoal@@IEAA_NAEAVBlockSource@@AEBVBlockPos@@@Z - MCAPI bool trySowCrop(class BlockSource& region, class BlockPos const&); + MCAPI bool trySowCrop(class BlockSource& region, class BlockPos const& farmlandPos); // NOLINTEND }; diff --git a/src/mc/world/actor/ai/goal/PanicGoal.h b/src/mc/world/actor/ai/goal/PanicGoal.h index 01fbc30742..242d041abd 100644 --- a/src/mc/world/actor/ai/goal/PanicGoal.h +++ b/src/mc/world/actor/ai/goal/PanicGoal.h @@ -41,8 +41,16 @@ class PanicGoal : public ::Goal { // symbol: // ??0PanicGoal@@QEAA@AEAVMob@@M_NW4LevelSoundEvent@Legacy@Puv@@UFloatRange@@11V?$vector@W4ActorDamageCause@@V?$allocator@W4ActorDamageCause@@@std@@@std@@@Z - MCAPI - PanicGoal(class Mob& mob, float speedMultiplier, bool ignoreMobDamage, ::Puv::Legacy::LevelSoundEvent sound, struct FloatRange soundIntervalRange, bool forceUse, bool preferWater, std::vector<::ActorDamageCause>); + MCAPI PanicGoal( + class Mob& mob, + float speedMultiplier, + bool ignoreMobDamage, + ::Puv::Legacy::LevelSoundEvent sound, + struct FloatRange soundIntervalRange, + bool forceUse, + bool preferWater, + std::vector<::ActorDamageCause> damageCauses + ); // NOLINTEND diff --git a/src/mc/world/actor/ai/goal/PickupItemsGoal.h b/src/mc/world/actor/ai/goal/PickupItemsGoal.h index 1252ccf0fd..83738482c9 100644 --- a/src/mc/world/actor/ai/goal/PickupItemsGoal.h +++ b/src/mc/world/actor/ai/goal/PickupItemsGoal.h @@ -40,7 +40,7 @@ class PickupItemsGoal : public ::Goal { // symbol: // ??0PickupItemsGoal@@QEAA@AEAVMob@@M_NHHM11H11AEBV?$vector@VItemDescriptor@@V?$allocator@VItemDescriptor@@@std@@@std@@@Z MCAPI - PickupItemsGoal(class Mob& mob, float speedModifier, bool trackTarget, int searchRange, int searchHeight, float goalRadius, bool, bool, int, bool, bool, std::vector const&); + PickupItemsGoal(class Mob& mob, float speedModifier, bool trackTarget, int searchRange, int searchHeight, float goalRadius, bool, bool canPickupAnyItem, int, bool canPickupToHandOrEquipment, bool, std::vector const&); // NOLINTEND diff --git a/src/mc/world/actor/ai/goal/RangedAttackGoal.h b/src/mc/world/actor/ai/goal/RangedAttackGoal.h index adfbf16a47..41cc3b269d 100644 --- a/src/mc/world/actor/ai/goal/RangedAttackGoal.h +++ b/src/mc/world/actor/ai/goal/RangedAttackGoal.h @@ -41,7 +41,12 @@ class RangedAttackGoal : public ::Goal { MCAPI explicit RangedAttackGoal(class Mob& mob); // symbol: ?handleAttackBehavior@RangedAttackGoal@@QEAAXPEAVActor@@AEBVVec3@@M_N@Z - MCAPI void handleAttackBehavior(class Actor* lockedTarget, class Vec3 const& lockedTargetPos, float, bool canSee); + MCAPI void handleAttackBehavior( + class Actor* lockedTarget, + class Vec3 const& lockedTargetPos, + float targetDistanceSq, + bool canSee + ); // NOLINTEND }; diff --git a/src/mc/world/actor/ai/goal/SniffGoal.h b/src/mc/world/actor/ai/goal/SniffGoal.h index f95c721730..d7b7919fb6 100644 --- a/src/mc/world/actor/ai/goal/SniffGoal.h +++ b/src/mc/world/actor/ai/goal/SniffGoal.h @@ -89,7 +89,7 @@ class SniffGoal : public ::Goal { // NOLINTBEGIN // symbol: // ?_fetchNearbySniffableActors@SniffGoal@@AEBA?AV?$vector@UDistanceSortedActor@@V?$allocator@UDistanceSortedActor@@@std@@@std@@W4ActorType@@@Z - MCAPI std::vector _fetchNearbySniffableActors(::ActorType) const; + MCAPI std::vector _fetchNearbySniffableActors(::ActorType actorType) const; // symbol: ?_fetchNearestSniffableActor@SniffGoal@@AEBA?AV?$optional@UDistanceSortedActor@@@std@@XZ MCAPI std::optional _fetchNearestSniffableActor() const; diff --git a/src/mc/world/actor/ai/village/Village.h b/src/mc/world/actor/ai/village/Village.h index c78362e8fa..30c3b52b3d 100644 --- a/src/mc/world/actor/ai/village/Village.h +++ b/src/mc/world/actor/ai/village/Village.h @@ -340,13 +340,13 @@ class Village { MCAPI void _tryAddPoiToVillage(struct ActorUniqueID const&, std::weak_ptr); // symbol: ?_tryShiftStandingsTowardNeutral@Village@@AEAAXAEAUTick@@_K_N@Z - MCAPI void _tryShiftStandingsTowardNeutral(struct Tick&, uint64 updateInterval, bool); + MCAPI void _tryShiftStandingsTowardNeutral(struct Tick& updateTick, uint64 updateInterval, bool positiveShift); // symbol: ?_trySpawnDefenderDwellers@Village@@AEAAXAEAVBlockSource@@_K@Z MCAPI void _trySpawnDefenderDwellers(class BlockSource& region, uint64 bedCount); // symbol: ?_updateAndRemoveInactiveDwellers@Village@@AEAAX_KM@Z - MCAPI void _updateAndRemoveInactiveDwellers(uint64, float); + MCAPI void _updateAndRemoveInactiveDwellers(uint64 villagerPurgeTime, float villageBorderTolerance); // symbol: ?_updateClaimedPOIs@Village@@AEAAXAEAVBlockSource@@@Z MCAPI void _updateClaimedPOIs(class BlockSource& region); diff --git a/src/mc/world/actor/ai/village/VillageManager.h b/src/mc/world/actor/ai/village/VillageManager.h index 0f38390cff..fd2067e6c2 100644 --- a/src/mc/world/actor/ai/village/VillageManager.h +++ b/src/mc/world/actor/ai/village/VillageManager.h @@ -144,7 +144,8 @@ class VillageManager : public ::IVillageManager { _calculateDistanceFromPositionToEdgeOfVillage(class BlockPos const& position, class Village const& village) const; // symbol: ?_createOrGetVillage@VillageManager@@AEAA?AV?$shared_ptr@VVillage@@@std@@AEBVUUID@mce@@AEBVBlockPos@@@Z - MCAPI std::shared_ptr _createOrGetVillage(class mce::UUID const& id, class BlockPos const&); + MCAPI std::shared_ptr + _createOrGetVillage(class mce::UUID const& id, class BlockPos const& newVillagePos); // symbol: // ?_getVillageWithBedsAvailableMap@VillageManager@@AEBA?AV?$unordered_map@PEBVVillage@@W4BedAvailabilityState@VillageManager@@U?$hash@PEBVVillage@@@std@@U?$equal_to@PEBVVillage@@@5@V?$allocator@U?$pair@QEBVVillage@@W4BedAvailabilityState@VillageManager@@@std@@@5@@std@@XZ diff --git a/src/mc/world/actor/animal/Horse.h b/src/mc/world/actor/animal/Horse.h index 7d550618ba..104b19e157 100644 --- a/src/mc/world/actor/animal/Horse.h +++ b/src/mc/world/actor/animal/Horse.h @@ -165,7 +165,7 @@ class Horse : public ::Animal { MCAPI void _setHorseFlag(::HorseFlags flag, bool value); // symbol: ?_setHorseType@Horse@@AEAA_NAEAW4ActorType@@@Z - MCAPI bool _setHorseType(::ActorType&); + MCAPI bool _setHorseType(::ActorType& actorType); // NOLINTEND }; diff --git a/src/mc/world/actor/animation/ChannelTransform.h b/src/mc/world/actor/animation/ChannelTransform.h index 6e7b16810b..0534cc86bc 100644 --- a/src/mc/world/actor/animation/ChannelTransform.h +++ b/src/mc/world/actor/animation/ChannelTransform.h @@ -12,7 +12,7 @@ class ChannelTransform { public: // NOLINTBEGIN // symbol: ?getDataValues@ChannelTransform@@QEBA_NAEAVVec3@@0@Z - MCAPI bool getDataValues(class Vec3&, class Vec3& maxValue) const; + MCAPI bool getDataValues(class Vec3& minValue, class Vec3& maxValue) const; // NOLINTEND }; diff --git a/src/mc/world/actor/animation/KeyFrameTransform.h b/src/mc/world/actor/animation/KeyFrameTransform.h index 2250f10d56..5470642d89 100644 --- a/src/mc/world/actor/animation/KeyFrameTransform.h +++ b/src/mc/world/actor/animation/KeyFrameTransform.h @@ -18,7 +18,7 @@ class KeyFrameTransform { MCAPI class KeyFrameTransform& operator=(class KeyFrameTransform&&); // symbol: ?optimizeAndGetDataValues@KeyFrameTransform@@QEAA_NAEAVVec3@@0@Z - MCAPI bool optimizeAndGetDataValues(class Vec3&, class Vec3& maxValue); + MCAPI bool optimizeAndGetDataValues(class Vec3& minValue, class Vec3& maxValue); // symbol: ?set@KeyFrameTransform@@QEAAXAEBVExpressionNode@@@Z MCAPI void set(class ExpressionNode const& expression); diff --git a/src/mc/world/actor/components/AnimationComponent.h b/src/mc/world/actor/components/AnimationComponent.h index 776b941563..6ecea7b9a7 100644 --- a/src/mc/world/actor/components/AnimationComponent.h +++ b/src/mc/world/actor/components/AnimationComponent.h @@ -82,7 +82,7 @@ class AnimationComponent { MCAPI void setDirty(); // symbol: ?setLastReloadInitTimeStampClient@AnimationComponent@@QEAAX_K@Z - MCAPI void setLastReloadInitTimeStampClient(uint64); + MCAPI void setLastReloadInitTimeStampClient(uint64 lastReloadInitTimeStamp); // symbol: ?setupDeltaTimeAndLifeTimeParams@AnimationComponent@@QEAAX_N@Z MCAPI void setupDeltaTimeAndLifeTimeParams(bool incrementLifetime); diff --git a/src/mc/world/actor/components/ColorDefinition.h b/src/mc/world/actor/components/ColorDefinition.h index d1d1b862ec..77ae1167ac 100644 --- a/src/mc/world/actor/components/ColorDefinition.h +++ b/src/mc/world/actor/components/ColorDefinition.h @@ -20,7 +20,7 @@ struct ColorDefinition { public: // NOLINTBEGIN // symbol: ?setColorChoice@ColorDefinition@@QEAAXAEBH@Z - MCAPI void setColorChoice(int const&); + MCAPI void setColorChoice(int const& colorChoice); // symbol: // ?buildSchema@ColorDefinition@@SAXAEAV?$shared_ptr@V?$JsonSchemaObjectNode@VEmptyClass@JsonUtil@@UColorDefinition@@@JsonUtil@@@std@@@Z diff --git a/src/mc/world/actor/components/EconomyTradeableComponent.h b/src/mc/world/actor/components/EconomyTradeableComponent.h index b322eb656e..fcd8f29f89 100644 --- a/src/mc/world/actor/components/EconomyTradeableComponent.h +++ b/src/mc/world/actor/components/EconomyTradeableComponent.h @@ -83,7 +83,7 @@ class EconomyTradeableComponent { MCAPI void resupplyTrades(); // symbol: ?setNearbyCuredDiscount@EconomyTradeableComponent@@QEAAXH@Z - MCAPI void setNearbyCuredDiscount(int); + MCAPI void setNearbyCuredDiscount(int discount); // symbol: ?setOffers@EconomyTradeableComponent@@QEAAXAEAVMerchantRecipeList@@@Z MCAPI void setOffers(class MerchantRecipeList& offers); diff --git a/src/mc/world/actor/components/Parser.h b/src/mc/world/actor/components/Parser.h index cfa0002062..9bc2a7fe60 100644 --- a/src/mc/world/actor/components/Parser.h +++ b/src/mc/world/actor/components/Parser.h @@ -49,7 +49,7 @@ class Parser { class Json::Value const& val, class SemVersion const& engineVersion, class ActorDefinitionTrigger& definitionTrigger, - bool + bool acceptString ); // symbol: ?parse@Parser@@SA_NAEBVValue@Json@@AEBVSemVersion@@AEAVActorDefinitionTrigger@@PEBD@Z @@ -65,7 +65,7 @@ class Parser { class Json::Value const& val, class SemVersion const& engineVersion, class DefinitionTrigger& definitionTrigger, - bool + bool acceptString ); // symbol: ?parse@Parser@@SA_NAEBVValue@Json@@AEBVSemVersion@@AEAW4FilterSubject@Legacy@Puv@@PEBD3@Z @@ -79,12 +79,15 @@ class Parser { // symbol: ?parse@Parser@@SAXAEBVValue@Json@@AEBVSemVersion@@AEAVBlockDescriptor@@@Z MCAPI static void - parse(class Json::Value const& val, class SemVersion const& engineVersion, class BlockDescriptor&); + parse(class Json::Value const& val, class SemVersion const& engineVersion, class BlockDescriptor& blockDescriptor); // symbol: // ?parse@Parser@@SAXAEBVValue@Json@@AEBVSemVersion@@AEAV?$vector@VBlockDescriptor@@V?$allocator@VBlockDescriptor@@@std@@@std@@@Z - MCAPI static void - parse(class Json::Value const& val, class SemVersion const& engineVersion, std::vector&); + MCAPI static void parse( + class Json::Value const& val, + class SemVersion const& engineVersion, + std::vector& blockDescriptors + ); // symbol: ?parse@Parser@@SAXAEBVValue@Json@@AEBVSemVersion@@AEAV23@PEBD@Z MCAPI static void parse( diff --git a/src/mc/world/actor/components/SlotDropChance.h b/src/mc/world/actor/components/SlotDropChance.h index bba974eb65..025732c701 100644 --- a/src/mc/world/actor/components/SlotDropChance.h +++ b/src/mc/world/actor/components/SlotDropChance.h @@ -13,7 +13,7 @@ struct SlotDropChance { // NOLINTBEGIN // symbol: // ?setEquipmentSlot@SlotDropChance@@QEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z - MCAPI void setEquipmentSlot(std::string const&); + MCAPI void setEquipmentSlot(std::string const& equipmentSlot); // NOLINTEND }; diff --git a/src/mc/world/actor/item/Boat.h b/src/mc/world/actor/item/Boat.h index 4f36adadf3..04a8b47111 100644 --- a/src/mc/world/actor/item/Boat.h +++ b/src/mc/world/actor/item/Boat.h @@ -50,7 +50,7 @@ class Boat : public ::Actor { // vIndex: 33, symbol: // ?getExitTip@Boat@@UEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV23@W4InputMode@@W4NewInteractionModel@@@Z - virtual std::string getExitTip(std::string const& kind, ::InputMode mode, ::NewInteractionModel) const; + virtual std::string getExitTip(std::string const& kind, ::InputMode mode, ::NewInteractionModel scheme) const; // vIndex: 40, symbol: ?getShadowRadius@Boat@@UEBAMXZ virtual float getShadowRadius() const; diff --git a/src/mc/world/actor/player/AnimatedImageData.h b/src/mc/world/actor/player/AnimatedImageData.h index 276137d31e..e51f247dbb 100644 --- a/src/mc/world/actor/player/AnimatedImageData.h +++ b/src/mc/world/actor/player/AnimatedImageData.h @@ -24,9 +24,9 @@ class AnimatedImageData { // symbol: ??0AnimatedImageData@@QEAA@W4AnimatedTextureType@persona@@W4AnimationExpression@2@AEBUImage@mce@@M@Z MCAPI AnimatedImageData( ::persona::AnimatedTextureType type, - ::persona::AnimationExpression, - struct mce::Image const& animatedImage, - float frames + ::persona::AnimationExpression animationExpression, + struct mce::Image const& animatedImage, + float frames ); // symbol: ??4AnimatedImageData@@QEAAAEAV0@AEBV0@@Z diff --git a/src/mc/world/actor/player/Inventory.h b/src/mc/world/actor/player/Inventory.h index 5d1ce6a7e0..cee901af7d 100644 --- a/src/mc/world/actor/player/Inventory.h +++ b/src/mc/world/actor/player/Inventory.h @@ -24,7 +24,7 @@ class Inventory : public ::FillingContainer { virtual void setItem(int slot, class ItemStack const& item); // vIndex: 11, symbol: ?setItemWithForceBalance@Inventory@@UEAAXHAEBVItemStack@@_N@Z - virtual void setItemWithForceBalance(int slot, class ItemStack const& item, bool); + virtual void setItemWithForceBalance(int slot, class ItemStack const& item, bool forceBalanced); // vIndex: 23, symbol: ?getEmptySlotsCount@Inventory@@UEBAHXZ virtual int getEmptySlotsCount() const; diff --git a/src/mc/world/actor/player/Player.h b/src/mc/world/actor/player/Player.h index fd3f158b3b..7422a5c396 100644 --- a/src/mc/world/actor/player/Player.h +++ b/src/mc/world/actor/player/Player.h @@ -404,9 +404,9 @@ class Player : public ::Mob { // vIndex: 222, symbol: // ?displayTextObjectWhisperMessage@Player@@UEAAXAEBVResolvedTextObject@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@1@Z virtual void displayTextObjectWhisperMessage( - class ResolvedTextObject const&, - std::string const& xuid, - std::string const& platformId + class ResolvedTextObject const& resolvedTextObject, + std::string const& xuid, + std::string const& platformId ); // vIndex: 223, symbol: @@ -553,7 +553,7 @@ class Player : public ::Mob { MCAPI void _fireWillChangeDimension(); // symbol: ?broadcastPlayerSpawnedMobEvent@Player@@QEAAXW4ActorType@@W4MobSpawnMethod@@@Z - MCAPI void broadcastPlayerSpawnedMobEvent(::ActorType, ::MobSpawnMethod spawnMethod); + MCAPI void broadcastPlayerSpawnedMobEvent(::ActorType spawnedType, ::MobSpawnMethod spawnMethod); // symbol: ?canBeSeenOnMap@Player@@QEBA_NXZ MCAPI bool canBeSeenOnMap() const; @@ -824,7 +824,7 @@ class Player : public ::Mob { int slot, class ItemStack const& oldItem, class ItemStack const& newItem, - bool + bool forceBalanced ); // symbol: ?is2DPositionRelevant@Player@@QEAA_NV?$AutomaticID@VDimension@@H@@AEBVBlockPos@@@Z @@ -1008,7 +1008,7 @@ class Player : public ::Mob { MCAPI class ItemStack const& setSelectedSlot(int slot); // symbol: ?setSpawnBlockRespawnPosition@Player@@QEAAXAEBVBlockPos@@V?$AutomaticID@VDimension@@H@@@Z - MCAPI void setSpawnBlockRespawnPosition(class BlockPos const&, DimensionType dimension); + MCAPI void setSpawnBlockRespawnPosition(class BlockPos const& spawnBlockPosition, DimensionType dimension); // symbol: ?setUsedPotion@Player@@QEAAX_N@Z MCAPI void setUsedPotion(bool used); diff --git a/src/mc/world/actor/player/PlayerDeathManagerProxy.h b/src/mc/world/actor/player/PlayerDeathManagerProxy.h index 799cfada45..0402a4f066 100644 --- a/src/mc/world/actor/player/PlayerDeathManagerProxy.h +++ b/src/mc/world/actor/player/PlayerDeathManagerProxy.h @@ -24,7 +24,7 @@ class PlayerDeathManagerProxy : public ::IPlayerDeathManagerProxy { virtual bool shouldShowDeathMessages() const; // symbol: ??0PlayerDeathManagerProxy@@QEAA@AEAVServerLevel@@@Z - MCAPI explicit PlayerDeathManagerProxy(class ServerLevel&); + MCAPI explicit PlayerDeathManagerProxy(class ServerLevel& serverLevel); // NOLINTEND }; diff --git a/src/mc/world/actor/player/PlayerInventory.h b/src/mc/world/actor/player/PlayerInventory.h index 850db0938f..46c2fd3015 100644 --- a/src/mc/world/actor/player/PlayerInventory.h +++ b/src/mc/world/actor/player/PlayerInventory.h @@ -117,13 +117,17 @@ class PlayerInventory { MCAPI bool selectSlot(int slot, ::ContainerID containerId); // symbol: ?serverInitItemStackIds@PlayerInventory@@QEAAXHHV?$function@$$A6AXHAEBVItemStack@@@Z@std@@@Z - MCAPI void serverInitItemStackIds(int, int count, std::function); + MCAPI void serverInitItemStackIds( + int containerSlot, + int count, + std::function onNetIdChanged + ); // symbol: ?setContainerChanged@PlayerInventory@@QEAAXH@Z MCAPI void setContainerChanged(int slot); // symbol: ?setItem@PlayerInventory@@QEAAXHAEBVItemStack@@W4ContainerID@@_N@Z - MCAPI void setItem(int slot, class ItemStack const& item, ::ContainerID containerId, bool); + MCAPI void setItem(int slot, class ItemStack const& item, ::ContainerID containerId, bool forceBalanced); // symbol: ?setSelectedItem@PlayerInventory@@QEAAXAEBVItemStack@@@Z MCAPI void setSelectedItem(class ItemStack const& item); diff --git a/src/mc/world/actor/player/ServerPlayerBlockUseHandler.h b/src/mc/world/actor/player/ServerPlayerBlockUseHandler.h index 4958e9905d..89074435be 100644 --- a/src/mc/world/actor/player/ServerPlayerBlockUseHandler.h +++ b/src/mc/world/actor/player/ServerPlayerBlockUseHandler.h @@ -18,8 +18,12 @@ MCAPI void onAbortDestroyBlock(class ServerPlayer& player, class BlockPos const& // symbol: // ?onBeforeMovementSimulation@ServerPlayerBlockUseHandler@@YAXAEAVServerPlayer@@AEBVPlayerBlockActions@@V?$unique_ptr@VItemStackRequestData@@U?$default_delete@VItemStackRequestData@@@std@@@std@@V?$NonOwnerPointer@VTextFilteringProcessor@@@Bedrock@@@Z -MCAPI void -onBeforeMovementSimulation(class ServerPlayer& player, class PlayerBlockActions const&, std::unique_ptr, class Bedrock::NonOwnerPointer); +MCAPI void onBeforeMovementSimulation( + class ServerPlayer& player, + class PlayerBlockActions const& blockActions, + std::unique_ptr itemStackRequest, + class Bedrock::NonOwnerPointer textFilter +); // symbol: ?onCrackBlock@ServerPlayerBlockUseHandler@@YAXAEAVServerPlayer@@AEBVBlockPos@@H@Z MCAPI void onCrackBlock(class ServerPlayer& player, class BlockPos const& pos, int data); diff --git a/src/mc/world/actor/projectile/AbstractArrow.h b/src/mc/world/actor/projectile/AbstractArrow.h index 240280e0b0..1e79f1333b 100644 --- a/src/mc/world/actor/projectile/AbstractArrow.h +++ b/src/mc/world/actor/projectile/AbstractArrow.h @@ -91,7 +91,7 @@ class AbstractArrow : public ::PredictableProjectile { // symbol: ?spawnPlayerProjectile@AbstractArrow@@SAPEAVActor@@AEBUActorDefinitionIdentifier@@AEAVPlayer@@VVec3@@@Z MCAPI static class Actor* - spawnPlayerProjectile(struct ActorDefinitionIdentifier const& id, class Player& player, class Vec3); + spawnPlayerProjectile(struct ActorDefinitionIdentifier const& id, class Player& player, class Vec3 aimDir); // NOLINTEND diff --git a/src/mc/world/actor/response/ActorEventResponseFactory.h b/src/mc/world/actor/response/ActorEventResponseFactory.h index b94cbe9f31..459f143ab2 100644 --- a/src/mc/world/actor/response/ActorEventResponseFactory.h +++ b/src/mc/world/actor/response/ActorEventResponseFactory.h @@ -20,7 +20,7 @@ class ActorEventResponseFactory { MCAPI void initSchema(); // symbol: ?initializeFactory@ActorEventResponseFactory@@QEAAXAEBVExperiments@@@Z - MCAPI void initializeFactory(class Experiments const&); + MCAPI void initializeFactory(class Experiments const& experiments); // NOLINTEND }; diff --git a/src/mc/world/actor/state/PropertyComponent.h b/src/mc/world/actor/state/PropertyComponent.h index 96b27a046b..8388e7bafe 100644 --- a/src/mc/world/actor/state/PropertyComponent.h +++ b/src/mc/world/actor/state/PropertyComponent.h @@ -60,8 +60,11 @@ class PropertyComponent { // symbol: // ?setAliasProperties@PropertyComponent@@QEAAXAEBV?$unordered_map@VHashedString@@V?$shared_ptr@VTag@@@std@@U?$hash@VHashedString@@@3@U?$equal_to@VHashedString@@@3@V?$allocator@U?$pair@$$CBVHashedString@@V?$shared_ptr@VTag@@@std@@@std@@@3@@std@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@1@Z - MCAPI void - setAliasProperties(std::unordered_map> const&, std::string const&, std::string const&); + MCAPI void setAliasProperties( + std::unordered_map> const&, + std::string const&, + std::string const& canonicalName + ); // symbol: ?tryGetBool@PropertyComponent@@QEBA?AV?$optional@_N@std@@_K@Z MCAPI std::optional tryGetBool(uint64 h) const; diff --git a/src/mc/world/actor/state/PropertyContainer.h b/src/mc/world/actor/state/PropertyContainer.h index 9dfa9832f6..029eae408d 100644 --- a/src/mc/world/actor/state/PropertyContainer.h +++ b/src/mc/world/actor/state/PropertyContainer.h @@ -29,8 +29,11 @@ class PropertyContainer { // symbol: // ?setAliasProperties@PropertyContainer@@QEAAXAEBV?$unordered_map@VHashedString@@V?$shared_ptr@VTag@@@std@@U?$hash@VHashedString@@@3@U?$equal_to@VHashedString@@@3@V?$allocator@U?$pair@$$CBVHashedString@@V?$shared_ptr@VTag@@@std@@@std@@@3@@std@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@1@Z - MCAPI void - setAliasProperties(std::unordered_map> const&, std::string const&, std::string const&); + MCAPI void setAliasProperties( + std::unordered_map> const&, + std::string const&, + std::string const& canonicalName + ); // symbol: ?setFloatValue@PropertyContainer@@QEAAX_KM@Z MCAPI void setFloatValue(uint64, float value); diff --git a/src/mc/world/components/UnlockedRecipesServerComponent.h b/src/mc/world/components/UnlockedRecipesServerComponent.h index c5a5b2958e..ebccfb3a39 100644 --- a/src/mc/world/components/UnlockedRecipesServerComponent.h +++ b/src/mc/world/components/UnlockedRecipesServerComponent.h @@ -54,7 +54,7 @@ class UnlockedRecipesServerComponent { MCAPI void addUnlockedRecipe(std::string const& recipeId); // symbol: ?addUnlockingInstruction@UnlockedRecipesServerComponent@@QEAAXUUnlockingInstruction@1@@Z - MCAPI void addUnlockingInstruction(struct UnlockedRecipesServerComponent::UnlockingInstruction); + MCAPI void addUnlockingInstruction(struct UnlockedRecipesServerComponent::UnlockingInstruction instruction); // symbol: ?clearChangedInventorySlots@UnlockedRecipesServerComponent@@QEAAXXZ MCAPI void clearChangedInventorySlots(); diff --git a/src/mc/world/components/VoronoiZoomMultiNoise.h b/src/mc/world/components/VoronoiZoomMultiNoise.h index d07453774b..60aa1c8c15 100644 --- a/src/mc/world/components/VoronoiZoomMultiNoise.h +++ b/src/mc/world/components/VoronoiZoomMultiNoise.h @@ -9,7 +9,7 @@ MCAPI class Vec3 getGridOffset(class SimplePositionalRandomFactory const&, class // symbol: // ?getZoomedVoronoiCellIndex@VoronoiZoomMultiNoise@@YAIVBlockPos@@AEBV?$vector@VVec3@@V?$allocator@VVec3@@@std@@@std@@III@Z -MCAPI uint getZoomedVoronoiCellIndex(class BlockPos, std::vector const&, uint, uint, uint); +MCAPI uint getZoomedVoronoiCellIndex(class BlockPos inPos, std::vector const&, uint, uint, uint); // NOLINTEND }; // namespace VoronoiZoomMultiNoise diff --git a/src/mc/world/containers/SparseContainer.h b/src/mc/world/containers/SparseContainer.h index 48d9885aa7..fee2abdbad 100644 --- a/src/mc/world/containers/SparseContainer.h +++ b/src/mc/world/containers/SparseContainer.h @@ -16,8 +16,10 @@ class SparseContainer { // NOLINTBEGIN // symbol: // ?addItemNetworkChangedCallback@SparseContainer@@QEAAXW4ContainerEnumName@@V?$function@$$A6AXHAEBVItemStack@@0@Z@std@@@Z - MCAPI void - addItemNetworkChangedCallback(::ContainerEnumName name, std::function); + MCAPI void addItemNetworkChangedCallback( + ::ContainerEnumName name, + std::function itemNetworkChangedCallback + ); // symbol: ?isUsingLegacyScreenTransactions@SparseContainer@@QEBA_NXZ MCAPI bool isUsingLegacyScreenTransactions() const; diff --git a/src/mc/world/containers/managers/models/ContainerManagerModel.h b/src/mc/world/containers/managers/models/ContainerManagerModel.h index 44f42c24d0..0d2b41b733 100644 --- a/src/mc/world/containers/managers/models/ContainerManagerModel.h +++ b/src/mc/world/containers/managers/models/ContainerManagerModel.h @@ -79,7 +79,7 @@ class ContainerManagerModel : public ::IContainerManager { MCAPI class ContainerScreenContext _containerScreenContext(struct ActorUniqueID actorId); // symbol: ?_getContainer@ContainerManagerModel@@IEBA?AV?$shared_ptr@VContainerModel@@@std@@W4ContainerEnumName@@@Z - MCAPI std::shared_ptr _getContainer(::ContainerEnumName) const; + MCAPI std::shared_ptr _getContainer(::ContainerEnumName collectionEnumName) const; // symbol: ?_isPlayerInRangeOfPosition@ContainerManagerModel@@IEBA_NAEBVBlockPos@@M@Z MCAPI bool _isPlayerInRangeOfPosition(class BlockPos const& blockPos, float pickRange) const; diff --git a/src/mc/world/containers/models/ContainerModel.h b/src/mc/world/containers/models/ContainerModel.h index 1e8aad87b6..251b4e2b31 100644 --- a/src/mc/world/containers/models/ContainerModel.h +++ b/src/mc/world/containers/models/ContainerModel.h @@ -42,22 +42,22 @@ class ContainerModel : public ::ContainerContentChangeListener { virtual class ContainerWeakRef getContainerWeakRef() const; // vIndex: 8, symbol: ?getItemStack@ContainerModel@@UEBAAEBVItemStack@@H@Z - virtual class ItemStack const& getItemStack(int) const; + virtual class ItemStack const& getItemStack(int modelSlot) const; // vIndex: 9, symbol: ?getItems@ContainerModel@@UEBAAEBV?$vector@VItemStack@@V?$allocator@VItemStack@@@std@@@std@@XZ virtual std::vector const& getItems() const; // vIndex: 10, symbol: ?getItemInstance@ContainerModel@@UEBAAEBVItemInstance@@H@Z - virtual class ItemInstance const& getItemInstance(int) const; + virtual class ItemInstance const& getItemInstance(int modelSlot) const; // vIndex: 11, symbol: ?getItemStackBase@ContainerModel@@UEBAAEBVItemStackBase@@H@Z - virtual class ItemStackBase const& getItemStackBase(int) const; + virtual class ItemStackBase const& getItemStackBase(int modelSlot) const; // vIndex: 12, symbol: ?isItemInstanceBased@ContainerModel@@UEBA_NXZ virtual bool isItemInstanceBased() const; // vIndex: 13, symbol: ?setItem@ContainerModel@@UEAAXHAEBVItemStack@@@Z - virtual void setItem(int, class ItemStack const& item); + virtual void setItem(int modelSlot, class ItemStack const& item); // vIndex: 14, symbol: ?isValid@ContainerModel@@UEAA_NXZ virtual bool isValid(); @@ -91,7 +91,7 @@ class ContainerModel : public ::ContainerContentChangeListener { virtual void _init(); // vIndex: 24, symbol: ?_onItemChanged@ContainerModel@@MEAAXHAEBVItemStack@@0@Z - virtual void _onItemChanged(int, class ItemStack const& oldItem, class ItemStack const& newItem); + virtual void _onItemChanged(int modelSlot, class ItemStack const& oldItem, class ItemStack const& newItem); // symbol: ??0ContainerModel@@QEAA@W4ContainerEnumName@@HW4ContainerCategory@@_N@Z MCAPI ContainerModel( @@ -112,10 +112,10 @@ class ContainerModel : public ::ContainerContentChangeListener { MCAPI void initContainerRuntimeId(); // symbol: ?isContainerSlotInRange@ContainerModel@@QEBA_NH@Z - MCAPI bool isContainerSlotInRange(int) const; + MCAPI bool isContainerSlotInRange(int containerSlot) const; // symbol: ?networkUpdateItem@ContainerModel@@QEAAXHAEBVItemStack@@0@Z - MCAPI void networkUpdateItem(int, class ItemStack const& oldItem, class ItemStack const& newItem); + MCAPI void networkUpdateItem(int modelSlot, class ItemStack const& oldItem, class ItemStack const& newItem); // symbol: ?registerOnContainerChangedCallback@ContainerModel@@QEAAXV?$function@$$A6AXHAEBVItemStack@@0@Z@std@@@Z MCAPI void @@ -138,7 +138,8 @@ class ContainerModel : public ::ContainerContentChangeListener { // private: // NOLINTBEGIN // symbol: ?_onClientUIItemNetworkChanged@ContainerModel@@AEAAXHAEBVItemStack@@0@Z - MCAPI void _onClientUIItemNetworkChanged(int, class ItemStack const& oldItem, class ItemStack const& newItem); + MCAPI void + _onClientUIItemNetworkChanged(int containerSlot, class ItemStack const& oldItem, class ItemStack const& newItem); // NOLINTEND }; diff --git a/src/mc/world/containers/models/InventoryContainerModel.h b/src/mc/world/containers/models/InventoryContainerModel.h index 9bfda00873..3e09905ebf 100644 --- a/src/mc/world/containers/models/InventoryContainerModel.h +++ b/src/mc/world/containers/models/InventoryContainerModel.h @@ -41,7 +41,7 @@ class InventoryContainerModel : public ::ContainerModel { virtual int _getContainerOffset() const; // vIndex: 24, symbol: ?_onItemChanged@InventoryContainerModel@@EEAAXHAEBVItemStack@@0@Z - virtual void _onItemChanged(int, class ItemStack const& oldItem, class ItemStack const& newItem); + virtual void _onItemChanged(int modelSlot, class ItemStack const& oldItem, class ItemStack const& newItem); // symbol: ??0InventoryContainerModel@@QEAA@W4ContainerEnumName@@HAEAVPlayer@@@Z MCAPI InventoryContainerModel(::ContainerEnumName containerName, int size, class Player& player); @@ -51,7 +51,7 @@ class InventoryContainerModel : public ::ContainerModel { // private: // NOLINTBEGIN // symbol: ?_refreshSlot@InventoryContainerModel@@AEAAXH@Z - MCAPI void _refreshSlot(int); + MCAPI void _refreshSlot(int modelSlot); // NOLINTEND }; diff --git a/src/mc/world/containers/models/LevelContainerModel.h b/src/mc/world/containers/models/LevelContainerModel.h index 42bf7aef21..b359040afb 100644 --- a/src/mc/world/containers/models/LevelContainerModel.h +++ b/src/mc/world/containers/models/LevelContainerModel.h @@ -46,7 +46,7 @@ class LevelContainerModel : public ::ContainerModel { virtual int _getContainerOffset() const; // vIndex: 24, symbol: ?_onItemChanged@LevelContainerModel@@MEAAXHAEBVItemStack@@0@Z - virtual void _onItemChanged(int, class ItemStack const& oldItem, class ItemStack const& newItem); + virtual void _onItemChanged(int modelSlot, class ItemStack const& oldItem, class ItemStack const& newItem); // symbol: ??0LevelContainerModel@@QEAA@W4ContainerEnumName@@HAEAVPlayer@@UActorUniqueID@@W4ContainerCategory@@@Z MCAPI LevelContainerModel( @@ -80,7 +80,7 @@ class LevelContainerModel : public ::ContainerModel { MCAPI class Actor* _getEntity() const; // symbol: ?_refreshSlot@LevelContainerModel@@AEAAXH@Z - MCAPI void _refreshSlot(int); + MCAPI void _refreshSlot(int modelSlot); // NOLINTEND }; diff --git a/src/mc/world/containers/models/PlayerUIContainerModelBase.h b/src/mc/world/containers/models/PlayerUIContainerModelBase.h index d23dbf72de..db0ff7ece7 100644 --- a/src/mc/world/containers/models/PlayerUIContainerModelBase.h +++ b/src/mc/world/containers/models/PlayerUIContainerModelBase.h @@ -42,7 +42,7 @@ class PlayerUIContainerModelBase : public ::ContainerModel { virtual int _getContainerOffset() const; // vIndex: 24, symbol: ?_onItemChanged@PlayerUIContainerModelBase@@MEAAXHAEBVItemStack@@0@Z - virtual void _onItemChanged(int, class ItemStack const& oldItem, class ItemStack const& newItem); + virtual void _onItemChanged(int modelSlot, class ItemStack const& oldItem, class ItemStack const& newItem); // symbol: ??0PlayerUIContainerModelBase@@QEAA@W4ContainerEnumName@@AEAVPlayer@@HW4ContainerCategory@@@Z MCAPI PlayerUIContainerModelBase( diff --git a/src/mc/world/effect/AttackDamageMobEffect.h b/src/mc/world/effect/AttackDamageMobEffect.h index 62eab1289a..bd60f3caf0 100644 --- a/src/mc/world/effect/AttackDamageMobEffect.h +++ b/src/mc/world/effect/AttackDamageMobEffect.h @@ -31,10 +31,10 @@ class AttackDamageMobEffect : public ::MobEffect { ); // symbol: ?getDamageAfterDamageBoost@AttackDamageMobEffect@@SAMMH@Z - MCAPI static float getDamageAfterDamageBoost(float, int count); + MCAPI static float getDamageAfterDamageBoost(float initialDamage, int count); // symbol: ?getDamageAfterWeakness@AttackDamageMobEffect@@SAMMH@Z - MCAPI static float getDamageAfterWeakness(float, int count); + MCAPI static float getDamageAfterWeakness(float initialDamage, int count); // NOLINTEND }; diff --git a/src/mc/world/events/ActorEventListener.h b/src/mc/world/events/ActorEventListener.h index 94b983f40b..2875f2fa91 100644 --- a/src/mc/world/events/ActorEventListener.h +++ b/src/mc/world/events/ActorEventListener.h @@ -34,7 +34,8 @@ class ActorEventListener { // vIndex: 3, symbol: // ?onActorPredictedMove@ActorEventListener@@UEAA?AW4EventResult@@AEAVActor@@W4MovePredictionType@@AEBVVec3@@@Z - virtual ::EventResult onActorPredictedMove(class Actor& actor, ::MovePredictionType, class Vec3 const& pos); + virtual ::EventResult + onActorPredictedMove(class Actor& actor, ::MovePredictionType predictionType, class Vec3 const& pos); // vIndex: 4, symbol: ?onActorTick@ActorEventListener@@UEAA?AW4EventResult@@AEAVActor@@@Z virtual ::EventResult onActorTick(class Actor& actor); diff --git a/src/mc/world/gamemode/GameMode.h b/src/mc/world/gamemode/GameMode.h index 9de8e4e2a0..4bba9fce54 100644 --- a/src/mc/world/gamemode/GameMode.h +++ b/src/mc/world/gamemode/GameMode.h @@ -114,8 +114,11 @@ class GameMode { // symbol: // ??0GameMode@@QEAA@AEAVPlayer@@V?$unique_ptr@UIGameModeTimer@@U?$default_delete@UIGameModeTimer@@@std@@@std@@V?$unique_ptr@UIGameModeMessenger@@U?$default_delete@UIGameModeMessenger@@@std@@@3@@Z - MCAPI - GameMode(class Player& player, std::unique_ptr timer, std::unique_ptr); + MCAPI GameMode( + class Player& player, + std::unique_ptr timer, + std::unique_ptr messenger + ); // symbol: ?_startDestroyBlock@GameMode@@QEAA_NAEBVBlockPos@@AEBVVec3@@EAEA_N@Z MCAPI bool _startDestroyBlock(class BlockPos const& hitPos, class Vec3 const&, uchar, bool& hasDestroyedBlock); diff --git a/src/mc/world/inventory/network/ContainerWeakRef.h b/src/mc/world/inventory/network/ContainerWeakRef.h index 7fe4e8e0ec..a07efdad48 100644 --- a/src/mc/world/inventory/network/ContainerWeakRef.h +++ b/src/mc/world/inventory/network/ContainerWeakRef.h @@ -18,12 +18,15 @@ class ContainerWeakRef { MCAPI ContainerWeakRef(); // symbol: ??0ContainerWeakRef@@QEAA@AEBVBlockPos@@AEBV?$TypedRuntimeId@UContainerRuntimeIdTag@@I$0A@@@@Z - MCAPI ContainerWeakRef(class BlockPos const& blockPos, ContainerRuntimeId const&); + MCAPI ContainerWeakRef(class BlockPos const& blockPos, ContainerRuntimeId const& containerRuntimeId); // symbol: // ??0ContainerWeakRef@@QEAA@AEBUActorUniqueID@@W4ActorContainerType@@AEBV?$TypedRuntimeId@UContainerRuntimeIdTag@@I$0A@@@@Z - MCAPI - ContainerWeakRef(struct ActorUniqueID const& actorId, ::ActorContainerType containerType, ContainerRuntimeId const&); + MCAPI ContainerWeakRef( + struct ActorUniqueID const& actorId, + ::ActorContainerType containerType, + ContainerRuntimeId const& containerRuntimeId + ); // symbol: ??BContainerWeakRef@@QEBA_NXZ MCAPI explicit operator bool() const; diff --git a/src/mc/world/inventory/network/ItemStackNetIdVariant.h b/src/mc/world/inventory/network/ItemStackNetIdVariant.h index bab9ef3a94..bd26891e1e 100644 --- a/src/mc/world/inventory/network/ItemStackNetIdVariant.h +++ b/src/mc/world/inventory/network/ItemStackNetIdVariant.h @@ -30,10 +30,10 @@ struct ItemStackNetIdVariant { MCAPI bool isValid() const; // symbol: ??4ItemStackNetIdVariant@@QEAAAEAU0@AEBV?$TypedClientNetId@UItemStackLegacyRequestIdTag@@H$0A@@@@Z - MCAPI struct ItemStackNetIdVariant& operator=(ItemStackLegacyRequestId const&); + MCAPI struct ItemStackNetIdVariant& operator=(ItemStackLegacyRequestId const& legacyClientRequestId); // symbol: ??4ItemStackNetIdVariant@@QEAAAEAU0@AEBV?$TypedServerNetId@UItemStackNetIdTag@@H$0A@@@@Z - MCAPI struct ItemStackNetIdVariant& operator=(ItemStackNetId const&); + MCAPI struct ItemStackNetIdVariant& operator=(ItemStackNetId const& serverNetId); // symbol: ??4ItemStackNetIdVariant@@QEAAAEAU0@$$QEAU0@@Z MCAPI struct ItemStackNetIdVariant& operator=(struct ItemStackNetIdVariant&&); diff --git a/src/mc/world/inventory/network/ItemStackNetManagerBase.h b/src/mc/world/inventory/network/ItemStackNetManagerBase.h index e81a37e163..6ab233307d 100644 --- a/src/mc/world/inventory/network/ItemStackNetManagerBase.h +++ b/src/mc/world/inventory/network/ItemStackNetManagerBase.h @@ -37,7 +37,7 @@ class ItemStackNetManagerBase { virtual gsl::final_action> _tryBeginClientLegacyTransactionRequest(); // vIndex: 6, symbol: ?onContainerScreenOpen@ItemStackNetManagerBase@@UEAAXAEBVContainerScreenContext@@@Z - virtual void onContainerScreenOpen(class ContainerScreenContext const&); + virtual void onContainerScreenOpen(class ContainerScreenContext const& screenContext); // vIndex: 7, symbol: ?onContainerScreenClose@ItemStackNetManagerBase@@UEAAXXZ virtual void onContainerScreenClose(); diff --git a/src/mc/world/inventory/network/ItemStackNetManagerScreenStack.h b/src/mc/world/inventory/network/ItemStackNetManagerScreenStack.h index 6665cb92a9..4e47c41c97 100644 --- a/src/mc/world/inventory/network/ItemStackNetManagerScreenStack.h +++ b/src/mc/world/inventory/network/ItemStackNetManagerScreenStack.h @@ -24,7 +24,7 @@ class ItemStackNetManagerScreenStack { // symbol: // ?push@ItemStackNetManagerScreenStack@@QEAAPEAVItemStackNetManagerScreen@@V?$unique_ptr@VItemStackNetManagerScreen@@U?$default_delete@VItemStackNetManagerScreen@@@std@@@std@@@Z - MCAPI class ItemStackNetManagerScreen* push(std::unique_ptr); + MCAPI class ItemStackNetManagerScreen* push(std::unique_ptr screen); // symbol: ?size@ItemStackNetManagerScreenStack@@QEBA_KXZ MCAPI uint64 size() const; diff --git a/src/mc/world/inventory/network/ItemStackNetManagerServer.h b/src/mc/world/inventory/network/ItemStackNetManagerServer.h index 49acab844a..a6d7dd5d70 100644 --- a/src/mc/world/inventory/network/ItemStackNetManagerServer.h +++ b/src/mc/world/inventory/network/ItemStackNetManagerServer.h @@ -37,18 +37,20 @@ class ItemStackNetManagerServer : public ::ItemStackNetManagerBase { virtual bool allowInventoryTransactionManager() const; // vIndex: 6, symbol: ?onContainerScreenOpen@ItemStackNetManagerServer@@UEAAXAEBVContainerScreenContext@@@Z - virtual void onContainerScreenOpen(class ContainerScreenContext const&); + virtual void onContainerScreenOpen(class ContainerScreenContext const& screenContext); // vIndex: 10, symbol: ?_initScreen@ItemStackNetManagerServer@@EEAAXAEAVItemStackNetManagerScreen@@@Z - virtual void _initScreen(class ItemStackNetManagerScreen&); + virtual void _initScreen(class ItemStackNetManagerScreen& screen); // symbol: ??0ItemStackNetManagerServer@@QEAA@AEAVServerPlayer@@_N@Z MCAPI ItemStackNetManagerServer(class ServerPlayer& serverPlayer, bool isEnabled); // symbol: // ?_handleLegacyTransactionRequest@ItemStackNetManagerServer@@QEAAXAEBV?$TypedClientNetId@UItemStackLegacyRequestIdTag@@H$0A@@@AEBV?$vector@U?$pair@W4ContainerEnumName@@V?$vector@EV?$allocator@E@std@@@std@@@std@@V?$allocator@U?$pair@W4ContainerEnumName@@V?$vector@EV?$allocator@E@std@@@std@@@std@@@2@@std@@@Z - MCAPI void - _handleLegacyTransactionRequest(ItemStackLegacyRequestId const&, std::vector>> const&); + MCAPI void _handleLegacyTransactionRequest( + ItemStackLegacyRequestId const& legacyClientRequestId, + std::vector>> const& legacySetItemSlots + ); // symbol: // ?_retainSetItemStackNetIdVariantScope@ItemStackNetManagerServer@@QEAA?AV?$final_action@V?$function@$$A6AXXZ@std@@@gsl@@XZ @@ -64,12 +66,12 @@ class ItemStackNetManagerServer : public ::ItemStackNetManagerBase { // symbol: // ?handleRequestBatch@ItemStackNetManagerServer@@QEAAXAEBVItemStackRequestBatch@@V?$NonOwnerPointer@VTextFilteringProcessor@@@Bedrock@@@Z MCAPI void handleRequestBatch( - class ItemStackRequestBatch const&, + class ItemStackRequestBatch const& requestBatch, class Bedrock::NonOwnerPointer textFilteringProcessor ); // symbol: ?itemMatches@ItemStackNetManagerServer@@QEAA_NAEBUItemStackRequestSlotInfo@@AEBVItemStack@@@Z - MCAPI bool itemMatches(struct ItemStackRequestSlotInfo const&, class ItemStack const&); + MCAPI bool itemMatches(struct ItemStackRequestSlotInfo const& slotInfo, class ItemStack const& expectedItem); // symbol: ?normalTick@ItemStackNetManagerServer@@QEAAXXZ MCAPI void normalTick(); @@ -78,7 +80,7 @@ class ItemStackNetManagerServer : public ::ItemStackNetManagerBase { MCAPI void startCrafting(bool workbench, class BlockPos const& pos); // symbol: ?tryCloseContainerScreen@ItemStackNetManagerServer@@QEAA?AVCallbackToken@@V?$function@$$A6AXXZ@std@@@Z - MCAPI class CallbackToken tryCloseContainerScreen(std::function); + MCAPI class CallbackToken tryCloseContainerScreen(std::function onContainerScreenCloseCB); // NOLINTEND @@ -87,11 +89,14 @@ class ItemStackNetManagerServer : public ::ItemStackNetManagerBase { // symbol: // ?_filterStrings@ItemStackNetManagerServer@@AEAAXV?$TypedClientNetId@UItemStackRequestIdTag@@H$0A@@@AEBV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@AEBW4TextProcessingEventOrigin@@@Z MCAPI void - _filterStrings(ItemStackRequestId requestId, std::vector const&, ::TextProcessingEventOrigin const&); + _filterStrings(ItemStackRequestId requestId, std::vector const& stringsToFilter, ::TextProcessingEventOrigin const&); // symbol: // ?_handleRequestData@ItemStackNetManagerServer@@AEAAXAEAV?$vector@UItemStackResponseInfo@@V?$allocator@UItemStackResponseInfo@@@std@@@std@@PEBVItemStackRequestData@@@Z - MCAPI void _handleRequestData(std::vector&, class ItemStackRequestData const*); + MCAPI void _handleRequestData( + std::vector& responses, + class ItemStackRequestData const* requestData + ); // symbol: ?_processQueue@ItemStackNetManagerServer@@AEAAXXZ MCAPI void _processQueue(); @@ -101,13 +106,13 @@ class ItemStackNetManagerServer : public ::ItemStackNetManagerBase { MCAPI void _queueRequest(std::unique_ptr request); // symbol: ?_queueRequests@ItemStackNetManagerServer@@AEAAXAEBVItemStackRequestBatch@@@Z - MCAPI void _queueRequests(class ItemStackRequestBatch const&); + MCAPI void _queueRequests(class ItemStackRequestBatch const& requestBatch); // symbol: ?_setTextFilterState@ItemStackNetManagerServer@@AEAAXW4TextFilterState@1@@Z MCAPI void _setTextFilterState(::ItemStackNetManagerServer::TextFilterState state); // symbol: ?_tryFilterText@ItemStackNetManagerServer@@AEAA_NPEBVItemStackRequestData@@@Z - MCAPI bool _tryFilterText(class ItemStackRequestData const*); + MCAPI bool _tryFilterText(class ItemStackRequestData const* requestData); // NOLINTEND }; diff --git a/src/mc/world/inventory/network/ItemStackRequestActionCraftHandler.h b/src/mc/world/inventory/network/ItemStackRequestActionCraftHandler.h index 4e81104f01..5230f99df0 100644 --- a/src/mc/world/inventory/network/ItemStackRequestActionCraftHandler.h +++ b/src/mc/world/inventory/network/ItemStackRequestActionCraftHandler.h @@ -19,7 +19,7 @@ class ItemStackRequestActionCraftHandler { // symbol: // ?_initCraftResults@ItemStackRequestActionCraftHandler@@QEAA?AW4ItemStackNetResult@@AEBV?$vector@VItemInstance@@V?$allocator@VItemInstance@@@std@@@std@@E@Z - MCAPI ::ItemStackNetResult _initCraftResults(std::vector const& results, uchar); + MCAPI ::ItemStackNetResult _initCraftResults(std::vector const& results, uchar numCrafts); // symbol: ?_initSingleCraftResult@ItemStackRequestActionCraftHandler@@QEAAPEAVItemInstance@@AEBV2@@Z MCAPI class ItemInstance* _initSingleCraftResult(class ItemInstance const& itemInstance); @@ -44,7 +44,7 @@ class ItemStackRequestActionCraftHandler { MCAPI bool isCraftRequest() const; // symbol: ?onContainerScreenOpen@ItemStackRequestActionCraftHandler@@QEAAXAEBVContainerScreenContext@@@Z - MCAPI void onContainerScreenOpen(class ContainerScreenContext const&); + MCAPI void onContainerScreenOpen(class ContainerScreenContext const& screenContext); // NOLINTEND @@ -56,7 +56,7 @@ class ItemStackRequestActionCraftHandler { _createCraftInputs(class ItemStackRequestActionCraftBase const& requestAction); // symbol: ?_setCreatedItemOutputSlot@ItemStackRequestActionCraftHandler@@AEAA?AW4ItemStackNetResult@@E@Z - MCAPI ::ItemStackNetResult _setCreatedItemOutputSlot(uchar); + MCAPI ::ItemStackNetResult _setCreatedItemOutputSlot(uchar resultsIndex); // NOLINTEND }; diff --git a/src/mc/world/inventory/network/ItemStackRequestActionHandler.h b/src/mc/world/inventory/network/ItemStackRequestActionHandler.h index 7db5843843..016d3a40eb 100644 --- a/src/mc/world/inventory/network/ItemStackRequestActionHandler.h +++ b/src/mc/world/inventory/network/ItemStackRequestActionHandler.h @@ -83,44 +83,54 @@ class ItemStackRequestActionHandler { public: // NOLINTBEGIN // symbol: ??0ItemStackRequestActionHandler@@QEAA@AEAVItemStackNetManagerServer@@AEAVPlayer@@@Z - MCAPI ItemStackRequestActionHandler(class ItemStackNetManagerServer&, class Player& player); + MCAPI ItemStackRequestActionHandler(class ItemStackNetManagerServer& itemStackNetManager, class Player& player); // symbol: // ?_addResponseSlotInfo@ItemStackRequestActionHandler@@QEAAXAEBUItemStackRequestHandlerSlotInfo@@AEBVItemStack@@@Z - MCAPI void _addResponseSlotInfo(struct ItemStackRequestHandlerSlotInfo const&, class ItemStack const& item); + MCAPI void + _addResponseSlotInfo(struct ItemStackRequestHandlerSlotInfo const& slotInfo, class ItemStack const& item); // symbol: // ?_cacheLegacySlotIdAssignment@ItemStackRequestActionHandler@@QEAAXW4ContainerEnumName@@EAEBV?$TypedClientNetId@UItemStackLegacyRequestIdTag@@H$0A@@@AEBV?$TypedServerNetId@UItemStackNetIdTag@@H$0A@@@@Z - MCAPI void - _cacheLegacySlotIdAssignment(::ContainerEnumName containerName, uchar slot, ItemStackLegacyRequestId const&, ItemStackNetId const&); + MCAPI void _cacheLegacySlotIdAssignment( + ::ContainerEnumName containerName, + uchar slot, + ItemStackLegacyRequestId const& legacyClientRequestId, + ItemStackNetId const& serverNetId + ); // symbol: // ?_cacheSlotIdAssigment@ItemStackRequestActionHandler@@QEAAXAEBV?$TypedRuntimeId@UContainerRuntimeIdTag@@I$0A@@@EEAEBV?$TypedServerNetId@UItemStackNetIdTag@@H$0A@@@@Z - MCAPI void _cacheSlotIdAssigment(ContainerRuntimeId const&, uchar, uchar slot, ItemStackNetId const&); + MCAPI void _cacheSlotIdAssigment( + ContainerRuntimeId const& containerRuntimeId, + uchar requestSlot, + uchar slot, + ItemStackNetId const& serverNetId + ); // symbol: // ?_getOrInitSparseContainer@ItemStackRequestActionHandler@@QEAA?AV?$shared_ptr@VSimpleSparseContainer@@@std@@W4ContainerEnumName@@@Z - MCAPI std::shared_ptr _getOrInitSparseContainer(::ContainerEnumName); + MCAPI std::shared_ptr _getOrInitSparseContainer(::ContainerEnumName openContainerId); // symbol: // ?_handleRemove@ItemStackRequestActionHandler@@QEAA?AW4ItemStackNetResult@@AEBVItemStackRequestActionTransferBase@@AEAVItemStack@@W4RemoveType@1@@Z MCAPI ::ItemStackNetResult _handleRemove( class ItemStackRequestActionTransferBase const& requestAction, - class ItemStack&, + class ItemStack& removedItem, ::ItemStackRequestActionHandler::RemoveType ); // symbol: ?_initScreen@ItemStackRequestActionHandler@@QEAAXAEAVItemStackNetManagerScreen@@@Z - MCAPI void _initScreen(class ItemStackNetManagerScreen&); + MCAPI void _initScreen(class ItemStackNetManagerScreen& screen); // symbol: // ?_validateRequestSlot@ItemStackRequestActionHandler@@QEAA?AUItemStackRequestHandlerSlotInfo@@AEBUItemStackRequestSlotInfo@@_N1@Z MCAPI struct ItemStackRequestHandlerSlotInfo - _validateRequestSlot(struct ItemStackRequestSlotInfo const&, bool, bool); + _validateRequestSlot(struct ItemStackRequestSlotInfo const& requestSlotInfo, bool isItemRequired, bool isHintSlot); // symbol: // ?addFilteredStrings@ItemStackRequestActionHandler@@QEAAXV?$TypedClientNetId@UItemStackRequestIdTag@@H$0A@@@V?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@@Z - MCAPI void addFilteredStrings(ItemStackRequestId requestId, std::vector); + MCAPI void addFilteredStrings(ItemStackRequestId requestId, std::vector filteredStrings); // symbol: // ?endRequest@ItemStackRequestActionHandler@@QEAA?AV?$tuple@W4ItemStackNetResult@@V?$vector@UItemStackResponseContainerInfo@@V?$allocator@UItemStackResponseContainerInfo@@@std@@@std@@@std@@W4ItemStackNetResult@@@Z @@ -154,13 +164,19 @@ class ItemStackRequestActionHandler { // symbol: // ?_handleTransfer@ItemStackRequestActionHandler@@AEAA?AW4ItemStackNetResult@@AEBVItemStackRequestActionTransferBase@@_N11@Z - MCAPI ::ItemStackNetResult - _handleTransfer(class ItemStackRequestActionTransferBase const& requestAction, bool, bool, bool); + MCAPI ::ItemStackNetResult _handleTransfer( + class ItemStackRequestActionTransferBase const& requestAction, + bool isSrcHintSlot, + bool isDstHintSlot, + bool isSwap + ); // symbol: // ?_resolveSlotIdAssignment@ItemStackRequestActionHandler@@AEAA?AV?$optional@URequestSlotIdAssignment@ItemStackRequestActionHandler@@@std@@AEBUItemStackRequestSlotInfo@@AEBV?$TypedRuntimeId@UContainerRuntimeIdTag@@I$0A@@@@Z - MCAPI std::optional - _resolveSlotIdAssignment(struct ItemStackRequestSlotInfo const&, ContainerRuntimeId const&); + MCAPI std::optional _resolveSlotIdAssignment( + struct ItemStackRequestSlotInfo const& requestSlotInfo, + ContainerRuntimeId const& containerRuntimeId + ); // symbol: ?_tryGetCurrentScreenData@ItemStackRequestActionHandler@@AEBAPEAUScreenData@1@XZ MCAPI struct ItemStackRequestActionHandler::ScreenData* _tryGetCurrentScreenData() const; diff --git a/src/mc/world/inventory/network/ItemStackRequestActionTransferBase.h b/src/mc/world/inventory/network/ItemStackRequestActionTransferBase.h index 006a5e367f..da19c399ae 100644 --- a/src/mc/world/inventory/network/ItemStackRequestActionTransferBase.h +++ b/src/mc/world/inventory/network/ItemStackRequestActionTransferBase.h @@ -31,7 +31,11 @@ class ItemStackRequestActionTransferBase : public ::ItemStackRequestAction { // protected: // NOLINTBEGIN // symbol: ??0ItemStackRequestActionTransferBase@@IEAA@W4ItemStackRequestActionType@@_N1@Z - MCAPI ItemStackRequestActionTransferBase(::ItemStackRequestActionType, bool, bool); + MCAPI ItemStackRequestActionTransferBase( + ::ItemStackRequestActionType actionType, + bool isDstSerialized, + bool isAmountSerialized + ); // NOLINTEND }; diff --git a/src/mc/world/inventory/network/crafting/CraftHandlerBase.h b/src/mc/world/inventory/network/crafting/CraftHandlerBase.h index 3da8a3879f..1bfead797b 100644 --- a/src/mc/world/inventory/network/crafting/CraftHandlerBase.h +++ b/src/mc/world/inventory/network/crafting/CraftHandlerBase.h @@ -21,7 +21,8 @@ class CraftHandlerBase { // vIndex: 1, symbol: // ?handleConsumedItem@CraftHandlerBase@@UEAA?AW4ItemStackNetResult@@W4ContainerEnumName@@EAEBVItemStack@@@Z - virtual ::ItemStackNetResult handleConsumedItem(::ContainerEnumName, uchar slot, class ItemStack const&); + virtual ::ItemStackNetResult + handleConsumedItem(::ContainerEnumName openContainerNetId, uchar slot, class ItemStack const& consumedItem); // vIndex: 2, symbol: // ?preHandleAction@CraftHandlerBase@@UEAA?AW4ItemStackNetResult@@W4ItemStackRequestActionType@@@Z diff --git a/src/mc/world/inventory/network/crafting/CraftHandlerCrafting.h b/src/mc/world/inventory/network/crafting/CraftHandlerCrafting.h index eeab89f8aa..259e74f1fd 100644 --- a/src/mc/world/inventory/network/crafting/CraftHandlerCrafting.h +++ b/src/mc/world/inventory/network/crafting/CraftHandlerCrafting.h @@ -24,7 +24,8 @@ class CraftHandlerCrafting : public ::CraftHandlerBase { // vIndex: 1, symbol: // ?handleConsumedItem@CraftHandlerCrafting@@UEAA?AW4ItemStackNetResult@@W4ContainerEnumName@@EAEBVItemStack@@@Z - virtual ::ItemStackNetResult handleConsumedItem(::ContainerEnumName, uchar slot, class ItemStack const&); + virtual ::ItemStackNetResult + handleConsumedItem(::ContainerEnumName openContainerNetId, uchar slot, class ItemStack const& consumedItem); // vIndex: 2, symbol: // ?preHandleAction@CraftHandlerCrafting@@UEAA?AW4ItemStackNetResult@@W4ItemStackRequestActionType@@@Z diff --git a/src/mc/world/inventory/network/crafting/CraftHandlerGrindstone.h b/src/mc/world/inventory/network/crafting/CraftHandlerGrindstone.h index 9be79d574a..98011adb3d 100644 --- a/src/mc/world/inventory/network/crafting/CraftHandlerGrindstone.h +++ b/src/mc/world/inventory/network/crafting/CraftHandlerGrindstone.h @@ -41,7 +41,7 @@ class CraftHandlerGrindstone : public ::CraftHandlerBase { // symbol: // ?_resolveNetIdAndValidate@CraftHandlerGrindstone@@AEAA_NW4ContainerEnumName@@EAEBUItemStackNetIdVariant@@@Z - MCAPI bool _resolveNetIdAndValidate(::ContainerEnumName, uchar slot, struct ItemStackNetIdVariant const&); + MCAPI bool _resolveNetIdAndValidate(::ContainerEnumName, uchar slot, struct ItemStackNetIdVariant const& netId); // symbol: // ?_getResultItemWithNoEnchants@CraftHandlerGrindstone@@CA?AVItemStack@@AEAV2@AEBV?$vector@VItemStack@@V?$allocator@VItemStack@@@std@@@std@@AEA_N@Z diff --git a/src/mc/world/inventory/network/crafting/CraftHandlerTrade.h b/src/mc/world/inventory/network/crafting/CraftHandlerTrade.h index 382e6f046d..49c90efd22 100644 --- a/src/mc/world/inventory/network/crafting/CraftHandlerTrade.h +++ b/src/mc/world/inventory/network/crafting/CraftHandlerTrade.h @@ -24,7 +24,8 @@ class CraftHandlerTrade : public ::CraftHandlerBase { // vIndex: 1, symbol: // ?handleConsumedItem@CraftHandlerTrade@@EEAA?AW4ItemStackNetResult@@W4ContainerEnumName@@EAEBVItemStack@@@Z - virtual ::ItemStackNetResult handleConsumedItem(::ContainerEnumName, uchar slot, class ItemStack const&); + virtual ::ItemStackNetResult + handleConsumedItem(::ContainerEnumName openContainerNetId, uchar slot, class ItemStack const& consumedItem); // vIndex: 4, symbol: // ?_handleCraftAction@CraftHandlerTrade@@MEAA?AW4ItemStackNetResult@@AEBVItemStackRequestActionCraftBase@@@Z @@ -53,7 +54,8 @@ class CraftHandlerTrade : public ::CraftHandlerBase { MCAPI ::ItemStackNetResult _initTrade2Consumes(); // symbol: ?_matchesAuxValueTrade2@CraftHandlerTrade@@AEBA_NAEBVItemStackBase@@0@Z - MCAPI bool _matchesAuxValueTrade2(class ItemStackBase const&, class ItemStackBase const& expected) const; + MCAPI bool + _matchesAuxValueTrade2(class ItemStackBase const& consumedItem, class ItemStackBase const& expected) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/ContainerScreenValidation.h b/src/mc/world/inventory/simulation/ContainerScreenValidation.h index e7289a5bfd..b51d324698 100644 --- a/src/mc/world/inventory/simulation/ContainerScreenValidation.h +++ b/src/mc/world/inventory/simulation/ContainerScreenValidation.h @@ -34,11 +34,12 @@ class ContainerScreenValidation { // symbol: // ??0ContainerScreenValidation@@QEAA@AEBVContainerScreenContext@@W4ContainerValidationCaller@@V?$unordered_map@W4ContainerEnumName@@V?$shared_ptr@VContainer@@@std@@U?$hash@W4ContainerEnumName@@@3@U?$equal_to@W4ContainerEnumName@@@3@V?$allocator@U?$pair@$$CBW4ContainerEnumName@@V?$shared_ptr@VContainer@@@std@@@std@@@3@@std@@@Z MCAPI - ContainerScreenValidation(class ContainerScreenContext const&, ::ContainerValidationCaller, std::unordered_map<::ContainerEnumName, std::shared_ptr>); + ContainerScreenValidation(class ContainerScreenContext const& screenContext, ::ContainerValidationCaller, std::unordered_map<::ContainerEnumName, std::shared_ptr>); // symbol: // ?getOrCreateSparseContainer@ContainerScreenValidation@@QEAA?AV?$shared_ptr@VSimpleSparseContainer@@@std@@W4ContainerEnumName@@@Z - MCAPI std::shared_ptr getOrCreateSparseContainer(::ContainerEnumName); + MCAPI std::shared_ptr getOrCreateSparseContainer(::ContainerEnumName containerEnumName + ); // symbol: ?isCraftingImplemented@ContainerScreenValidation@@QEAA_NXZ MCAPI bool isCraftingImplemented(); @@ -80,27 +81,27 @@ class ContainerScreenValidation { // symbol: // ?makeContainerScreenValidation@ContainerScreenValidation@@SA?AV?$unique_ptr@VContainerScreenValidation@@U?$default_delete@VContainerScreenValidation@@@std@@@std@@AEBVContainerScreenContext@@W4ContainerValidationCaller@@V?$unordered_map@W4ContainerEnumName@@V?$shared_ptr@VContainer@@@std@@U?$hash@W4ContainerEnumName@@@3@U?$equal_to@W4ContainerEnumName@@@3@V?$allocator@U?$pair@$$CBW4ContainerEnumName@@V?$shared_ptr@VContainer@@@std@@@std@@@3@@3@@Z MCAPI static std::unique_ptr - makeContainerScreenValidation(class ContainerScreenContext const&, ::ContainerValidationCaller, std::unordered_map<::ContainerEnumName, std::shared_ptr>); + makeContainerScreenValidation(class ContainerScreenContext const& screenContext, ::ContainerValidationCaller, std::unordered_map<::ContainerEnumName, std::shared_ptr>); // NOLINTEND // protected: // NOLINTBEGIN // symbol: ?_tryAddItem@ContainerScreenValidation@@IEAAHAEAUContainerValidationSlotInfo@@H_N@Z - MCAPI int _tryAddItem(struct ContainerValidationSlotInfo&, int addCount, bool); + MCAPI int _tryAddItem(struct ContainerValidationSlotInfo& slotInfo, int addCount, bool); // symbol: ?_tryRemoveItem@ContainerScreenValidation@@IEAA?AVItemStack@@AEAUContainerValidationSlotInfo@@H@Z - MCAPI class ItemStack _tryRemoveItem(struct ContainerValidationSlotInfo&, int amount); + MCAPI class ItemStack _tryRemoveItem(struct ContainerValidationSlotInfo& slotInfo, int amount); // symbol: ?_trySetItem@ContainerScreenValidation@@IEAAHAEAUContainerValidationSlotInfo@@AEBVItemStack@@_N2@Z - MCAPI int _trySetItem(struct ContainerValidationSlotInfo&, class ItemStack const& stack, bool, bool); + MCAPI int _trySetItem(struct ContainerValidationSlotInfo& slotInfo, class ItemStack const& stack, bool, bool); // symbol: // ?_tryTransferSpecial@ContainerScreenValidation@@IEAA?AUContainerValidationResult@@AEBUContainerValidationSlotData@@HW4ContainerScreenRequestActionType@@@Z MCAPI struct ContainerValidationResult _tryTransferSpecial( struct ContainerValidationSlotData const&, - int transferAmount, - ::ContainerScreenRequestActionType + int transferAmount, + ::ContainerScreenRequestActionType actionType ); // NOLINTEND @@ -120,7 +121,8 @@ class ContainerScreenValidation { // symbol: // ?_getOrCreateContainerValidator@ContainerScreenValidation@@AEAA?AV?$shared_ptr@$$CBVContainerValidationBase@@@std@@W4ContainerEnumName@@@Z - MCAPI std::shared_ptr _getOrCreateContainerValidator(::ContainerEnumName); + MCAPI std::shared_ptr + _getOrCreateContainerValidator(::ContainerEnumName containerEnumName); // symbol: ?_propagateContainers@ContainerScreenValidation@@AEAA_NXZ MCAPI bool _propagateContainers(); diff --git a/src/mc/world/inventory/simulation/ContainerScreenValidationCrafting.h b/src/mc/world/inventory/simulation/ContainerScreenValidationCrafting.h index 7cf7405457..95d71adc1f 100644 --- a/src/mc/world/inventory/simulation/ContainerScreenValidationCrafting.h +++ b/src/mc/world/inventory/simulation/ContainerScreenValidationCrafting.h @@ -31,7 +31,7 @@ class ContainerScreenValidationCrafting : public ::ContainerScreenValidation { // private: // NOLINTBEGIN // symbol: ?_appendCraftResult@ContainerScreenValidationCrafting@@AEAAXAEAUContainerValidationCraftResult@@@Z - MCAPI void _appendCraftResult(struct ContainerValidationCraftResult&); + MCAPI void _appendCraftResult(struct ContainerValidationCraftResult& craftResult); // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/ContainerScreenValidatorBase.h b/src/mc/world/inventory/simulation/ContainerScreenValidatorBase.h index 3e5b09c066..50b76fe81e 100644 --- a/src/mc/world/inventory/simulation/ContainerScreenValidatorBase.h +++ b/src/mc/world/inventory/simulation/ContainerScreenValidatorBase.h @@ -27,7 +27,7 @@ class ContainerScreenValidatorBase { // vIndex: 3, symbol: // ?getCraftResult@ContainerScreenValidatorBase@@UEAA?AUContainerValidationCraftResult@@AEBVContainerScreenContext@@AEAVContainerScreenValidation@@V?$unique_ptr@UContainerValidationCraftInputs@@U?$default_delete@UContainerValidationCraftInputs@@@std@@@std@@@Z virtual struct ContainerValidationCraftResult - getCraftResult(class ContainerScreenContext const&, class ContainerScreenValidation&, std::unique_ptr); + getCraftResult(class ContainerScreenContext const& screenContext, class ContainerScreenValidation&, std::unique_ptr); // symbol: ??0ContainerScreenValidatorBase@@QEAA@XZ MCAPI ContainerScreenValidatorBase(); diff --git a/src/mc/world/inventory/simulation/ContainerValidationSlotData.h b/src/mc/world/inventory/simulation/ContainerValidationSlotData.h index 0482cc6e65..2e021b27e7 100644 --- a/src/mc/world/inventory/simulation/ContainerValidationSlotData.h +++ b/src/mc/world/inventory/simulation/ContainerValidationSlotData.h @@ -17,7 +17,7 @@ struct ContainerValidationSlotData { MCAPI ContainerValidationSlotData(); // symbol: ??0ContainerValidationSlotData@@QEAA@W4ContainerEnumName@@H@Z - MCAPI ContainerValidationSlotData(::ContainerEnumName, int); + MCAPI ContainerValidationSlotData(::ContainerEnumName containerEnumName, int slotIndex); // symbol: ?matches@ContainerValidationSlotData@@QEBA_NAEBU1@@Z MCAPI bool matches(struct ContainerValidationSlotData const& other) const; diff --git a/src/mc/world/inventory/simulation/ContainerValidationSlotInfo.h b/src/mc/world/inventory/simulation/ContainerValidationSlotInfo.h index fb3214a8cd..f4bf8a6435 100644 --- a/src/mc/world/inventory/simulation/ContainerValidationSlotInfo.h +++ b/src/mc/world/inventory/simulation/ContainerValidationSlotInfo.h @@ -13,8 +13,11 @@ struct ContainerValidationSlotInfo { // NOLINTBEGIN // symbol: // ??0ContainerValidationSlotInfo@@QEAA@AEBUContainerValidationSlotData@@V?$shared_ptr@VSimpleSparseContainer@@@std@@V?$shared_ptr@$$CBVContainerValidationBase@@@3@@Z - MCAPI - ContainerValidationSlotInfo(struct ContainerValidationSlotData const&, std::shared_ptr container, std::shared_ptr); + MCAPI ContainerValidationSlotInfo( + struct ContainerValidationSlotData const&, + std::shared_ptr container, + std::shared_ptr validator + ); // symbol: ?getItem@ContainerValidationSlotInfo@@QEBAAEBVItemStack@@XZ MCAPI class ItemStack const& getItem() const; diff --git a/src/mc/world/inventory/simulation/ContainerValidatorFactory.h b/src/mc/world/inventory/simulation/ContainerValidatorFactory.h index a755748349..3066398cbc 100644 --- a/src/mc/world/inventory/simulation/ContainerValidatorFactory.h +++ b/src/mc/world/inventory/simulation/ContainerValidatorFactory.h @@ -18,19 +18,20 @@ class ContainerValidatorFactory { // symbol: // ?createContainerScreenValidator@ContainerValidatorFactory@@SA?AV?$unique_ptr@VContainerScreenValidatorBase@@U?$default_delete@VContainerScreenValidatorBase@@@std@@@std@@AEBVContainerScreenContext@@@Z MCAPI static std::unique_ptr - createContainerScreenValidator(class ContainerScreenContext const&); + createContainerScreenValidator(class ContainerScreenContext const& screenContext); // symbol: // ?createContainerValidator@ContainerValidatorFactory@@SA?AV?$shared_ptr@$$CBVContainerValidationBase@@@std@@W4ContainerEnumName@@AEBVContainerScreenContext@@W4ContainerValidationCaller@@@Z MCAPI static std::shared_ptr createContainerValidator( - ::ContainerEnumName containerId, - class ContainerScreenContext const&, + ::ContainerEnumName containerId, + class ContainerScreenContext const& screenContext, ::ContainerValidationCaller ); // symbol: // ?getBackingContainer@ContainerValidatorFactory@@SAPEAVContainer@@W4ContainerEnumName@@AEBVContainerScreenContext@@@Z - MCAPI static class Container* getBackingContainer(::ContainerEnumName, class ContainerScreenContext const&); + MCAPI static class Container* + getBackingContainer(::ContainerEnumName containerEnumName, class ContainerScreenContext const& screenContext); // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/ExpectedSlotConsume.h b/src/mc/world/inventory/simulation/ExpectedSlotConsume.h index f55f5bbce1..0e0aebd5ad 100644 --- a/src/mc/world/inventory/simulation/ExpectedSlotConsume.h +++ b/src/mc/world/inventory/simulation/ExpectedSlotConsume.h @@ -15,7 +15,12 @@ struct ExpectedSlotConsume { public: // NOLINTBEGIN // symbol: ??0ExpectedSlotConsume@@QEAA@W4ContainerEnumName@@EAEBVItemStack@@E@Z - MCAPI ExpectedSlotConsume(::ContainerEnumName, uchar slot, class ItemStack const& item, uchar); + MCAPI ExpectedSlotConsume( + ::ContainerEnumName openContainerNetId, + uchar slot, + class ItemStack const& item, + uchar amountOverride + ); // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/ExperienceCostCommitObject.h b/src/mc/world/inventory/simulation/ExperienceCostCommitObject.h index ba299c9979..2e614a5fef 100644 --- a/src/mc/world/inventory/simulation/ExperienceCostCommitObject.h +++ b/src/mc/world/inventory/simulation/ExperienceCostCommitObject.h @@ -21,10 +21,10 @@ class ExperienceCostCommitObject : public ::ContainerValidationCommitObject { virtual bool append(class ContainerValidationCommitObject* other); // vIndex: 2, symbol: ?canCommit@ExperienceCostCommitObject@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canCommit(class ContainerScreenContext const&) const; + virtual bool canCommit(class ContainerScreenContext const& screenContext) const; // vIndex: 3, symbol: ?commit@ExperienceCostCommitObject@@UEAAXAEBVContainerScreenContext@@@Z - virtual void commit(class ContainerScreenContext const&); + virtual void commit(class ContainerScreenContext const& screenContext); // symbol: ??0ExperienceCostCommitObject@@QEAA@H@Z MCAPI explicit ExperienceCostCommitObject(int); diff --git a/src/mc/world/inventory/simulation/ExperienceRewardCommitObject.h b/src/mc/world/inventory/simulation/ExperienceRewardCommitObject.h index e2a0a35796..47a603e117 100644 --- a/src/mc/world/inventory/simulation/ExperienceRewardCommitObject.h +++ b/src/mc/world/inventory/simulation/ExperienceRewardCommitObject.h @@ -24,7 +24,7 @@ class ExperienceRewardCommitObject : public ::ContainerValidationCommitObject { virtual bool canCommit(class ContainerScreenContext const&) const; // vIndex: 3, symbol: ?commit@ExperienceRewardCommitObject@@UEAAXAEBVContainerScreenContext@@@Z - virtual void commit(class ContainerScreenContext const&); + virtual void commit(class ContainerScreenContext const& screenContext); // symbol: ??0ExperienceRewardCommitObject@@QEAA@H@Z MCAPI explicit ExperienceRewardCommitObject(int); diff --git a/src/mc/world/inventory/simulation/validation/AnvilContainerScreenValidator.h b/src/mc/world/inventory/simulation/validation/AnvilContainerScreenValidator.h index 19e6f5a1f8..6074b59cb4 100644 --- a/src/mc/world/inventory/simulation/validation/AnvilContainerScreenValidator.h +++ b/src/mc/world/inventory/simulation/validation/AnvilContainerScreenValidator.h @@ -24,7 +24,7 @@ class AnvilContainerScreenValidator : public ::ContainerScreenValidatorBase { // vIndex: 3, symbol: // ?getCraftResult@AnvilContainerScreenValidator@@UEAA?AUContainerValidationCraftResult@@AEBVContainerScreenContext@@AEAVContainerScreenValidation@@V?$unique_ptr@UContainerValidationCraftInputs@@U?$default_delete@UContainerValidationCraftInputs@@@std@@@std@@@Z virtual struct ContainerValidationCraftResult - getCraftResult(class ContainerScreenContext const&, class ContainerScreenValidation&, std::unique_ptr); + getCraftResult(class ContainerScreenContext const& screenContext, class ContainerScreenValidation&, std::unique_ptr); // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/AnvilInputContainerValidation.h b/src/mc/world/inventory/simulation/validation/AnvilInputContainerValidation.h index 3d6b8142a3..1ea6e0b84b 100644 --- a/src/mc/world/inventory/simulation/validation/AnvilInputContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/AnvilInputContainerValidation.h @@ -19,14 +19,20 @@ class AnvilInputContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class AnvilInputContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@AnvilInputContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/AnvilMaterialContainerValidation.h b/src/mc/world/inventory/simulation/validation/AnvilMaterialContainerValidation.h index f596affa92..9059bbc787 100644 --- a/src/mc/world/inventory/simulation/validation/AnvilMaterialContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/AnvilMaterialContainerValidation.h @@ -19,14 +19,20 @@ class AnvilMaterialContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class AnvilMaterialContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@AnvilMaterialContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/ArmorContainerValidation.h b/src/mc/world/inventory/simulation/validation/ArmorContainerValidation.h index e33bdfe2d0..d7a6e09922 100644 --- a/src/mc/world/inventory/simulation/validation/ArmorContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/ArmorContainerValidation.h @@ -19,14 +19,20 @@ class ArmorContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@ArmorContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ArmorContainerValidation@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class ArmorContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ArmorContainerValidation@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ArmorContainerValidation@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@FurnaceIngredientContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ArmorContainerValidation@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/BarrelContainerValidation.h b/src/mc/world/inventory/simulation/validation/BarrelContainerValidation.h index fcfc0f3399..99c1d7f154 100644 --- a/src/mc/world/inventory/simulation/validation/BarrelContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/BarrelContainerValidation.h @@ -19,14 +19,20 @@ class BarrelContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,20 +42,22 @@ class BarrelContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@FurnaceIngredientContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: // ?getContainerSize@BarrelContainerValidation@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/BeaconPaymentContainerValidation.h b/src/mc/world/inventory/simulation/validation/BeaconPaymentContainerValidation.h index 76391efca6..2c5abf8503 100644 --- a/src/mc/world/inventory/simulation/validation/BeaconPaymentContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/BeaconPaymentContainerValidation.h @@ -19,14 +19,20 @@ class BeaconPaymentContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@BeaconPaymentContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ArmorContainerValidation@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class BeaconPaymentContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@MaterialReducerOutputValidation@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@BeaconPaymentContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/BrewingStandFuelContainerValidation.h b/src/mc/world/inventory/simulation/validation/BrewingStandFuelContainerValidation.h index 0327dba8cf..06958cd40f 100644 --- a/src/mc/world/inventory/simulation/validation/BrewingStandFuelContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/BrewingStandFuelContainerValidation.h @@ -19,14 +19,20 @@ class BrewingStandFuelContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@BrewingStandFuelContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class BrewingStandFuelContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@BrewingStandFuelContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/BrewingStandInputContainerValidation.h b/src/mc/world/inventory/simulation/validation/BrewingStandInputContainerValidation.h index 33f91c4857..ed3b58f6b8 100644 --- a/src/mc/world/inventory/simulation/validation/BrewingStandInputContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/BrewingStandInputContainerValidation.h @@ -19,14 +19,20 @@ class BrewingStandInputContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@BrewingStandInputContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class BrewingStandInputContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@BrewingStandInputContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/BrewingStandResultContainerValidation.h b/src/mc/world/inventory/simulation/validation/BrewingStandResultContainerValidation.h index 6c158caf25..52ea74ac3e 100644 --- a/src/mc/world/inventory/simulation/validation/BrewingStandResultContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/BrewingStandResultContainerValidation.h @@ -19,14 +19,20 @@ class BrewingStandResultContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@BrewingStandResultContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@BrewingStandResultContainerValidation@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,20 +42,22 @@ class BrewingStandResultContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@BrewingStandResultContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: // ?getContainerSize@BrewingStandResultContainerValidation@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/CartographyAdditionalContainerValidation.h b/src/mc/world/inventory/simulation/validation/CartographyAdditionalContainerValidation.h index 26023adbeb..f4fc1013b7 100644 --- a/src/mc/world/inventory/simulation/validation/CartographyAdditionalContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/CartographyAdditionalContainerValidation.h @@ -19,14 +19,20 @@ class CartographyAdditionalContainerValidation : public ::ContainerValidationBas // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@CartographyAdditionalContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,20 +42,22 @@ class CartographyAdditionalContainerValidation : public ::ContainerValidationBas // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: // ?getContainerOffset@CartographyAdditionalContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/CartographyContainerScreenValidator.h b/src/mc/world/inventory/simulation/validation/CartographyContainerScreenValidator.h index 7e468f8c4c..12835e9e31 100644 --- a/src/mc/world/inventory/simulation/validation/CartographyContainerScreenValidator.h +++ b/src/mc/world/inventory/simulation/validation/CartographyContainerScreenValidator.h @@ -24,7 +24,7 @@ class CartographyContainerScreenValidator : public ::ContainerScreenValidatorBas // vIndex: 3, symbol: // ?getCraftResult@CartographyContainerScreenValidator@@UEAA?AUContainerValidationCraftResult@@AEBVContainerScreenContext@@AEAVContainerScreenValidation@@V?$unique_ptr@UContainerValidationCraftInputs@@U?$default_delete@UContainerValidationCraftInputs@@@std@@@std@@@Z virtual struct ContainerValidationCraftResult - getCraftResult(class ContainerScreenContext const&, class ContainerScreenValidation&, std::unique_ptr); + getCraftResult(class ContainerScreenContext const& screenContext, class ContainerScreenValidation&, std::unique_ptr); // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/CartographyInputContainerValidation.h b/src/mc/world/inventory/simulation/validation/CartographyInputContainerValidation.h index 700ccc10c5..ffc9995971 100644 --- a/src/mc/world/inventory/simulation/validation/CartographyInputContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/CartographyInputContainerValidation.h @@ -19,14 +19,20 @@ class CartographyInputContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@CartographyInputContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class CartographyInputContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@CartographyInputContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/CombinedHotbarAndInventoryContainerValidation.h b/src/mc/world/inventory/simulation/validation/CombinedHotbarAndInventoryContainerValidation.h index f9d3a3a2b1..53c6517ca6 100644 --- a/src/mc/world/inventory/simulation/validation/CombinedHotbarAndInventoryContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/CombinedHotbarAndInventoryContainerValidation.h @@ -19,14 +19,20 @@ class CombinedHotbarAndInventoryContainerValidation : public ::ContainerValidati // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,20 +42,22 @@ class CombinedHotbarAndInventoryContainerValidation : public ::ContainerValidati // vIndex: 5, symbol: // ?isItemAllowedToRemove@CombinedHotbarAndInventoryContainerValidation@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@OffhandContainerValidation@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@FurnaceIngredientContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: // ?getContainerSize@CombinedHotbarAndInventoryContainerValidation@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/CompoundCreatorInputValidation.h b/src/mc/world/inventory/simulation/validation/CompoundCreatorInputValidation.h index 329894fa47..d198fc4d67 100644 --- a/src/mc/world/inventory/simulation/validation/CompoundCreatorInputValidation.h +++ b/src/mc/world/inventory/simulation/validation/CompoundCreatorInputValidation.h @@ -19,14 +19,20 @@ class CompoundCreatorInputValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@CompoundCreatorInputValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,20 +42,22 @@ class CompoundCreatorInputValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@CompoundCreatorInputValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: // ?getContainerSize@CompoundCreatorInputValidation@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/CrafterContainerValidation.h b/src/mc/world/inventory/simulation/validation/CrafterContainerValidation.h index d37d892dc3..5e8cee0251 100644 --- a/src/mc/world/inventory/simulation/validation/CrafterContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/CrafterContainerValidation.h @@ -19,8 +19,11 @@ class CrafterContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@CrafterContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z @@ -34,16 +37,17 @@ class CrafterContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@FurnaceIngredientContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: // ?getContainerSize@CrafterContainerValidation@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z diff --git a/src/mc/world/inventory/simulation/validation/CraftingInputContainerValidation.h b/src/mc/world/inventory/simulation/validation/CraftingInputContainerValidation.h index f9741705df..f9b54e2674 100644 --- a/src/mc/world/inventory/simulation/validation/CraftingInputContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/CraftingInputContainerValidation.h @@ -19,14 +19,20 @@ class CraftingInputContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,20 +42,22 @@ class CraftingInputContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@CraftingInputContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: // ?getContainerSize@CraftingInputContainerValidation@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/CreatedOutputContainerValidation.h b/src/mc/world/inventory/simulation/validation/CreatedOutputContainerValidation.h index ae3ae21ae7..f124c47758 100644 --- a/src/mc/world/inventory/simulation/validation/CreatedOutputContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/CreatedOutputContainerValidation.h @@ -19,14 +19,20 @@ class CreatedOutputContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@PreviewContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class CreatedOutputContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@OffhandContainerValidation@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@CreatedOutputContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/CursorContainerValidation.h b/src/mc/world/inventory/simulation/validation/CursorContainerValidation.h index 8537e1e0ed..5319e06103 100644 --- a/src/mc/world/inventory/simulation/validation/CursorContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/CursorContainerValidation.h @@ -19,14 +19,20 @@ class CursorContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class CursorContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@OffhandContainerValidation@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@CursorContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/EnchantingInputContainerValidation.h b/src/mc/world/inventory/simulation/validation/EnchantingInputContainerValidation.h index 55be8c6845..c5948142e1 100644 --- a/src/mc/world/inventory/simulation/validation/EnchantingInputContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/EnchantingInputContainerValidation.h @@ -19,14 +19,20 @@ class EnchantingInputContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@EnchantingInputContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ArmorContainerValidation@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class EnchantingInputContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@EnchantingInputContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/EnchantingMaterialContainerValidation.h b/src/mc/world/inventory/simulation/validation/EnchantingMaterialContainerValidation.h index 0d0e8b64dc..4c7e1169cd 100644 --- a/src/mc/world/inventory/simulation/validation/EnchantingMaterialContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/EnchantingMaterialContainerValidation.h @@ -19,14 +19,20 @@ class EnchantingMaterialContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@EnchantingMaterialContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class EnchantingMaterialContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@EnchantingMaterialContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/FurnaceContainerScreenValidator.h b/src/mc/world/inventory/simulation/validation/FurnaceContainerScreenValidator.h index f852c45eef..8a1dca13e7 100644 --- a/src/mc/world/inventory/simulation/validation/FurnaceContainerScreenValidator.h +++ b/src/mc/world/inventory/simulation/validation/FurnaceContainerScreenValidator.h @@ -20,7 +20,7 @@ class FurnaceContainerScreenValidator : public ::ContainerScreenValidatorBase { // vIndex: 1, symbol: // ?postCommitItemRemoved@FurnaceContainerScreenValidator@@UEAA?AV?$shared_ptr@VContainerValidationCommitObject@@@std@@W4ContainerEnumName@@HAEBVItemStack@@@Z virtual std::shared_ptr - postCommitItemRemoved(::ContainerEnumName, int slot, class ItemStack const& item); + postCommitItemRemoved(::ContainerEnumName containerEnumName, int slot, class ItemStack const& item); // symbol: ??0FurnaceContainerScreenValidator@@QEAA@XZ MCAPI FurnaceContainerScreenValidator(); diff --git a/src/mc/world/inventory/simulation/validation/FurnaceFuelContainerValidation.h b/src/mc/world/inventory/simulation/validation/FurnaceFuelContainerValidation.h index f4401600cb..b20f4c0b70 100644 --- a/src/mc/world/inventory/simulation/validation/FurnaceFuelContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/FurnaceFuelContainerValidation.h @@ -19,14 +19,20 @@ class FurnaceFuelContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@FurnaceFuelContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@FurnaceFuelContainerValidation@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class FurnaceFuelContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@AnvilInputContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/FurnaceIngredientContainerValidation.h b/src/mc/world/inventory/simulation/validation/FurnaceIngredientContainerValidation.h index 8fd8236416..095b054a8b 100644 --- a/src/mc/world/inventory/simulation/validation/FurnaceIngredientContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/FurnaceIngredientContainerValidation.h @@ -19,14 +19,20 @@ class FurnaceIngredientContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class FurnaceIngredientContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@FurnaceIngredientContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/FurnaceResultContainerValidation.h b/src/mc/world/inventory/simulation/validation/FurnaceResultContainerValidation.h index 3f08891a8f..b98d3fd7c2 100644 --- a/src/mc/world/inventory/simulation/validation/FurnaceResultContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/FurnaceResultContainerValidation.h @@ -19,14 +19,20 @@ class FurnaceResultContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class FurnaceResultContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@FurnaceResultContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/GrindstoneAdditionalContainerValidation.h b/src/mc/world/inventory/simulation/validation/GrindstoneAdditionalContainerValidation.h index 6962e1abf0..823a88b85a 100644 --- a/src/mc/world/inventory/simulation/validation/GrindstoneAdditionalContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/GrindstoneAdditionalContainerValidation.h @@ -19,14 +19,20 @@ class GrindstoneAdditionalContainerValidation : public ::ContainerValidationBase // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@GrindstoneAdditionalContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,20 +42,22 @@ class GrindstoneAdditionalContainerValidation : public ::ContainerValidationBase // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: // ?getContainerOffset@GrindstoneAdditionalContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/GrindstoneInputContainerValidation.h b/src/mc/world/inventory/simulation/validation/GrindstoneInputContainerValidation.h index fb85905c73..f6fc160a85 100644 --- a/src/mc/world/inventory/simulation/validation/GrindstoneInputContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/GrindstoneInputContainerValidation.h @@ -19,14 +19,20 @@ class GrindstoneInputContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@GrindstoneInputContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class GrindstoneInputContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@GrindstoneInputContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/HorseEquipContainerValidation.h b/src/mc/world/inventory/simulation/validation/HorseEquipContainerValidation.h index ae6f727dd5..45c17ce2a7 100644 --- a/src/mc/world/inventory/simulation/validation/HorseEquipContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/HorseEquipContainerValidation.h @@ -19,8 +19,11 @@ class HorseEquipContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@HorseEquipContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z @@ -36,20 +39,22 @@ class HorseEquipContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@FurnaceIngredientContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: // ?getContainerSize@HorseEquipContainerValidation@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/HotbarContainerValidation.h b/src/mc/world/inventory/simulation/validation/HotbarContainerValidation.h index e52f72682f..2de410c93c 100644 --- a/src/mc/world/inventory/simulation/validation/HotbarContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/HotbarContainerValidation.h @@ -19,14 +19,20 @@ class HotbarContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,20 +42,22 @@ class HotbarContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@HotbarContainerValidation@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@OffhandContainerValidation@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@FurnaceIngredientContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: // ?getContainerSize@HotbarContainerValidation@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/InventoryContainerValidation.h b/src/mc/world/inventory/simulation/validation/InventoryContainerValidation.h index c30532356d..7a833cec40 100644 --- a/src/mc/world/inventory/simulation/validation/InventoryContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/InventoryContainerValidation.h @@ -19,14 +19,20 @@ class InventoryContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,20 +42,22 @@ class InventoryContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@InventoryContainerValidation@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@OffhandContainerValidation@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@InventoryContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: // ?getContainerSize@InventoryContainerValidation@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/LabTableInputValidation.h b/src/mc/world/inventory/simulation/validation/LabTableInputValidation.h index 48d8411732..16d7fbce75 100644 --- a/src/mc/world/inventory/simulation/validation/LabTableInputValidation.h +++ b/src/mc/world/inventory/simulation/validation/LabTableInputValidation.h @@ -19,14 +19,20 @@ class LabTableInputValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@LabTableInputValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class LabTableInputValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@MaterialReducerOutputValidation@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@FurnaceIngredientContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@LabTableInputValidation@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/LevelEntityContainerValidation.h b/src/mc/world/inventory/simulation/validation/LevelEntityContainerValidation.h index d87524f4e7..1527b99827 100644 --- a/src/mc/world/inventory/simulation/validation/LevelEntityContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/LevelEntityContainerValidation.h @@ -19,14 +19,20 @@ class LevelEntityContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,20 +42,22 @@ class LevelEntityContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@LevelEntityContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: // ?getContainerSize@LevelEntityContainerValidation@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/LoomDyeContainerValidation.h b/src/mc/world/inventory/simulation/validation/LoomDyeContainerValidation.h index f50406d44d..1dc451f68d 100644 --- a/src/mc/world/inventory/simulation/validation/LoomDyeContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/LoomDyeContainerValidation.h @@ -19,14 +19,20 @@ class LoomDyeContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@LoomDyeContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class LoomDyeContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@LoomDyeContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/LoomInputContainerValidation.h b/src/mc/world/inventory/simulation/validation/LoomInputContainerValidation.h index 80e348d5d6..2255b42109 100644 --- a/src/mc/world/inventory/simulation/validation/LoomInputContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/LoomInputContainerValidation.h @@ -19,14 +19,20 @@ class LoomInputContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@LoomInputContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class LoomInputContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@LoomInputContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/LoomMaterialContainerValidation.h b/src/mc/world/inventory/simulation/validation/LoomMaterialContainerValidation.h index e33b5666ae..a6b64bb2ec 100644 --- a/src/mc/world/inventory/simulation/validation/LoomMaterialContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/LoomMaterialContainerValidation.h @@ -19,14 +19,20 @@ class LoomMaterialContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@LoomMaterialContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class LoomMaterialContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@LoomMaterialContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/MaterialReducerInputValidation.h b/src/mc/world/inventory/simulation/validation/MaterialReducerInputValidation.h index 3953cc8129..c4cb011d70 100644 --- a/src/mc/world/inventory/simulation/validation/MaterialReducerInputValidation.h +++ b/src/mc/world/inventory/simulation/validation/MaterialReducerInputValidation.h @@ -19,14 +19,20 @@ class MaterialReducerInputValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@MaterialReducerInputValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ArmorContainerValidation@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,22 +42,24 @@ class MaterialReducerInputValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@MaterialReducerOutputValidation@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@MaterialReducerInputValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // symbol: ??0MaterialReducerInputValidation@@QEAA@AEBVContainerScreenContext@@@Z - MCAPI explicit MaterialReducerInputValidation(class ContainerScreenContext const&); + MCAPI explicit MaterialReducerInputValidation(class ContainerScreenContext const& screenContext); // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/MaterialReducerOutputValidation.h b/src/mc/world/inventory/simulation/validation/MaterialReducerOutputValidation.h index b9c177e887..2cad38909f 100644 --- a/src/mc/world/inventory/simulation/validation/MaterialReducerOutputValidation.h +++ b/src/mc/world/inventory/simulation/validation/MaterialReducerOutputValidation.h @@ -19,14 +19,20 @@ class MaterialReducerOutputValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,20 +42,22 @@ class MaterialReducerOutputValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@MaterialReducerOutputValidation@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@MaterialReducerOutputValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: // ?getContainerSize@MaterialReducerOutputValidation@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/OffhandContainerValidation.h b/src/mc/world/inventory/simulation/validation/OffhandContainerValidation.h index 9823eaf626..63e19d3a38 100644 --- a/src/mc/world/inventory/simulation/validation/OffhandContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/OffhandContainerValidation.h @@ -19,14 +19,20 @@ class OffhandContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@OffhandContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class OffhandContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@OffhandContainerValidation@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@OffhandContainerValidation@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@AnvilInputContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/PreviewContainerValidation.h b/src/mc/world/inventory/simulation/validation/PreviewContainerValidation.h index 269422c902..31b0c7432a 100644 --- a/src/mc/world/inventory/simulation/validation/PreviewContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/PreviewContainerValidation.h @@ -19,14 +19,20 @@ class PreviewContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@PreviewContainerValidation@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@PreviewContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class PreviewContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@FurnaceIngredientContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/ShulkerBoxContainerValidation.h b/src/mc/world/inventory/simulation/validation/ShulkerBoxContainerValidation.h index ebf8e88d54..5faeb2693b 100644 --- a/src/mc/world/inventory/simulation/validation/ShulkerBoxContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/ShulkerBoxContainerValidation.h @@ -19,14 +19,20 @@ class ShulkerBoxContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@ShulkerBoxContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,20 +42,22 @@ class ShulkerBoxContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@FurnaceIngredientContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: // ?getContainerSize@ShulkerBoxContainerValidation@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/SmithingTableInputContainerValidation.h b/src/mc/world/inventory/simulation/validation/SmithingTableInputContainerValidation.h index b840240fea..b71d1c9dd3 100644 --- a/src/mc/world/inventory/simulation/validation/SmithingTableInputContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/SmithingTableInputContainerValidation.h @@ -19,13 +19,17 @@ class SmithingTableInputContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@SmithingTableInputContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int, class ItemStackBase const& item, int) const; + isItemAllowedInSlot(class ContainerScreenContext const& screenContext, int, class ItemStackBase const& item, int) + const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -35,19 +39,21 @@ class SmithingTableInputContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@SmithingTableInputContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z virtual int getContainerOffset(class ContainerScreenContext const&) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/SmithingTableMaterialContainerValidation.h b/src/mc/world/inventory/simulation/validation/SmithingTableMaterialContainerValidation.h index f4c91549be..470423b501 100644 --- a/src/mc/world/inventory/simulation/validation/SmithingTableMaterialContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/SmithingTableMaterialContainerValidation.h @@ -19,13 +19,17 @@ class SmithingTableMaterialContainerValidation : public ::ContainerValidationBas // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@SmithingTableMaterialContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int, class ItemStackBase const& item, int) const; + isItemAllowedInSlot(class ContainerScreenContext const& screenContext, int, class ItemStackBase const& item, int) + const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -35,20 +39,22 @@ class SmithingTableMaterialContainerValidation : public ::ContainerValidationBas // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: // ?getContainerOffset@SmithingTableMaterialContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z virtual int getContainerOffset(class ContainerScreenContext const&) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/SmithingTableTemplateContainerValidation.h b/src/mc/world/inventory/simulation/validation/SmithingTableTemplateContainerValidation.h index f92ae13cb4..6061967f06 100644 --- a/src/mc/world/inventory/simulation/validation/SmithingTableTemplateContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/SmithingTableTemplateContainerValidation.h @@ -19,13 +19,17 @@ class SmithingTableTemplateContainerValidation : public ::ContainerValidationBas // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@SmithingTableTemplateContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int, class ItemStackBase const& item, int) const; + isItemAllowedInSlot(class ContainerScreenContext const& screenContext, int, class ItemStackBase const& item, int) + const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -35,20 +39,22 @@ class SmithingTableTemplateContainerValidation : public ::ContainerValidationBas // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: // ?getContainerOffset@SmithingTableTemplateContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z virtual int getContainerOffset(class ContainerScreenContext const&) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/StoneCutterContainerScreenValidator.h b/src/mc/world/inventory/simulation/validation/StoneCutterContainerScreenValidator.h index 31fa8a5d4c..b080161916 100644 --- a/src/mc/world/inventory/simulation/validation/StoneCutterContainerScreenValidator.h +++ b/src/mc/world/inventory/simulation/validation/StoneCutterContainerScreenValidator.h @@ -24,7 +24,7 @@ class StoneCutterContainerScreenValidator : public ::ContainerScreenValidatorBas // vIndex: 3, symbol: // ?getCraftResult@StoneCutterContainerScreenValidator@@UEAA?AUContainerValidationCraftResult@@AEBVContainerScreenContext@@AEAVContainerScreenValidation@@V?$unique_ptr@UContainerValidationCraftInputs@@U?$default_delete@UContainerValidationCraftInputs@@@std@@@std@@@Z virtual struct ContainerValidationCraftResult - getCraftResult(class ContainerScreenContext const&, class ContainerScreenValidation&, std::unique_ptr); + getCraftResult(class ContainerScreenContext const& screenContext, class ContainerScreenValidation&, std::unique_ptr); // symbol: ??0StoneCutterContainerScreenValidator@@QEAA@XZ MCAPI StoneCutterContainerScreenValidator(); @@ -35,7 +35,9 @@ class StoneCutterContainerScreenValidator : public ::ContainerScreenValidatorBas // NOLINTBEGIN // symbol: // ?_recipeMatches@StoneCutterContainerScreenValidator@@AEBA_NAEBVContainerScreenContext@@AEBV?$TypedServerNetId@URecipeNetIdTag@@I$0A@@@AEBVItemStack@@@Z - MCAPI bool _recipeMatches(class ContainerScreenContext const&, RecipeNetId const&, class ItemStack const&) const; + MCAPI bool + _recipeMatches(class ContainerScreenContext const& screenContext, RecipeNetId const& recipeNetId, class ItemStack const&) + const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/StoneCutterInputContainerValidation.h b/src/mc/world/inventory/simulation/validation/StoneCutterInputContainerValidation.h index 77001744d4..d6da55242a 100644 --- a/src/mc/world/inventory/simulation/validation/StoneCutterInputContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/StoneCutterInputContainerValidation.h @@ -19,14 +19,20 @@ class StoneCutterInputContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class StoneCutterInputContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@StoneCutterInputContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/Trade1Ingredient1ContainerValidation.h b/src/mc/world/inventory/simulation/validation/Trade1Ingredient1ContainerValidation.h index 49a95464db..ad92a0d34a 100644 --- a/src/mc/world/inventory/simulation/validation/Trade1Ingredient1ContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/Trade1Ingredient1ContainerValidation.h @@ -19,13 +19,17 @@ class Trade1Ingredient1ContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@Trade1Ingredient1ContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int, class ItemStackBase const& item, int) const; + isItemAllowedInSlot(class ContainerScreenContext const& screenContext, int, class ItemStackBase const& item, int) + const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -35,19 +39,21 @@ class Trade1Ingredient1ContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@Trade1Ingredient1ContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z virtual int getContainerOffset(class ContainerScreenContext const&) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // symbol: ??0Trade1Ingredient1ContainerValidation@@QEAA@_N@Z MCAPI explicit Trade1Ingredient1ContainerValidation(bool); diff --git a/src/mc/world/inventory/simulation/validation/Trade1Ingredient2ContainerValidation.h b/src/mc/world/inventory/simulation/validation/Trade1Ingredient2ContainerValidation.h index 4b4c8fb788..b888596554 100644 --- a/src/mc/world/inventory/simulation/validation/Trade1Ingredient2ContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/Trade1Ingredient2ContainerValidation.h @@ -19,13 +19,17 @@ class Trade1Ingredient2ContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@Trade1Ingredient2ContainerValidation@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int, class ItemStackBase const& item, int) const; + isItemAllowedInSlot(class ContainerScreenContext const& screenContext, int, class ItemStackBase const& item, int) + const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -35,19 +39,21 @@ class Trade1Ingredient2ContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@Trade1Ingredient2ContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z virtual int getContainerOffset(class ContainerScreenContext const&) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // symbol: ??0Trade1Ingredient2ContainerValidation@@QEAA@_N@Z MCAPI explicit Trade1Ingredient2ContainerValidation(bool); diff --git a/src/mc/world/inventory/simulation/validation/Trade2Ingredient1ContainerValidation.h b/src/mc/world/inventory/simulation/validation/Trade2Ingredient1ContainerValidation.h index 9984f9e095..5e6f01c8ac 100644 --- a/src/mc/world/inventory/simulation/validation/Trade2Ingredient1ContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/Trade2Ingredient1ContainerValidation.h @@ -19,14 +19,20 @@ class Trade2Ingredient1ContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class Trade2Ingredient1ContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@Trade2Ingredient1ContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/simulation/validation/Trade2Ingredient2ContainerValidation.h b/src/mc/world/inventory/simulation/validation/Trade2Ingredient2ContainerValidation.h index 0a95e7f00d..28ae4c9a90 100644 --- a/src/mc/world/inventory/simulation/validation/Trade2Ingredient2ContainerValidation.h +++ b/src/mc/world/inventory/simulation/validation/Trade2Ingredient2ContainerValidation.h @@ -19,14 +19,20 @@ class Trade2Ingredient2ContainerValidation : public ::ContainerValidationBase { // vIndex: 1, symbol: // ?isValidSlotForContainer@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVContainer@@H@Z - virtual bool - isValidSlotForContainer(class ContainerScreenContext const&, class Container const& container, int slot) const; + virtual bool isValidSlotForContainer( + class ContainerScreenContext const& screenContext, + class Container const& container, + int slot + ) const; // vIndex: 2, symbol: // ?isItemAllowedInSlot@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@HAEBVItemStackBase@@H@Z - virtual bool - isItemAllowedInSlot(class ContainerScreenContext const&, int slot, class ItemStackBase const& item, int amount) - const; + virtual bool isItemAllowedInSlot( + class ContainerScreenContext const& screenContext, + int slot, + class ItemStackBase const& item, + int amount + ) const; // vIndex: 3, symbol: ?getAvailableSetCount@ContainerValidationBase@@UEBAHHAEBVItemStackBase@@@Z virtual int getAvailableSetCount(int slot, class ItemStackBase const& item) const; @@ -36,19 +42,21 @@ class Trade2Ingredient2ContainerValidation : public ::ContainerValidationBase { // vIndex: 5, symbol: // ?isItemAllowedToRemove@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@AEBVItemStackBase@@@Z - virtual bool isItemAllowedToRemove(class ContainerScreenContext const&, class ItemStackBase const& item) const; + virtual bool + isItemAllowedToRemove(class ContainerScreenContext const& screenContext, class ItemStackBase const& item) const; // vIndex: 6, symbol: ?canItemMoveToContainer@ContainerValidationBase@@UEBA_NAEBVItemStackBase@@@Z virtual bool canItemMoveToContainer(class ItemStackBase const& item) const; // vIndex: 7, symbol: ?canDestroy@ContainerValidationBase@@UEBA_NAEBVContainerScreenContext@@@Z - virtual bool canDestroy(class ContainerScreenContext const&) const; + virtual bool canDestroy(class ContainerScreenContext const& screenContext) const; // vIndex: 8, symbol: ?getContainerOffset@Trade2Ingredient2ContainerValidation@@UEBAHAEBVContainerScreenContext@@@Z - virtual int getContainerOffset(class ContainerScreenContext const&) const; + virtual int getContainerOffset(class ContainerScreenContext const& screenContext) const; // vIndex: 9, symbol: ?getContainerSize@ContainerValidationBase@@UEBAHAEBVContainerScreenContext@@AEBVContainer@@@Z - virtual int getContainerSize(class ContainerScreenContext const&, class Container const& container) const; + virtual int + getContainerSize(class ContainerScreenContext const& screenContext, class Container const& container) const; // NOLINTEND }; diff --git a/src/mc/world/inventory/transaction/InventoryTransactionManager.h b/src/mc/world/inventory/transaction/InventoryTransactionManager.h index 0ad0933e9f..1aae5fbc77 100644 --- a/src/mc/world/inventory/transaction/InventoryTransactionManager.h +++ b/src/mc/world/inventory/transaction/InventoryTransactionManager.h @@ -21,7 +21,7 @@ class InventoryTransactionManager { MCAPI void _logExpectedActions() const; // symbol: ?addAction@InventoryTransactionManager@@QEAAXAEBVInventoryAction@@_N@Z - MCAPI void addAction(class InventoryAction const& action, bool); + MCAPI void addAction(class InventoryAction const& action, bool forceBalanced); // symbol: ?addExpectedAction@InventoryTransactionManager@@QEAAXAEBVInventoryAction@@@Z MCAPI void addExpectedAction(class InventoryAction const& action); diff --git a/src/mc/world/item/CompoundItem.h b/src/mc/world/item/CompoundItem.h index 8e470be4a6..743b9d3009 100644 --- a/src/mc/world/item/CompoundItem.h +++ b/src/mc/world/item/CompoundItem.h @@ -46,7 +46,7 @@ class CompoundItem : public ::ChemistryItem { // symbol: // ??0CompoundItem@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@HAEBVExperiments@@@Z - MCAPI CompoundItem(std::string const& name, int id, class Experiments const&); + MCAPI CompoundItem(std::string const& name, int id, class Experiments const& experiments); // symbol: ?getCompoundType@CompoundItem@@SA?AW4CompoundType@@AEBVItemDescriptor@@@Z MCAPI static ::CompoundType getCompoundType(class ItemDescriptor const& itemDescriptor); diff --git a/src/mc/world/item/HoeItem.h b/src/mc/world/item/HoeItem.h index 5987b6c57a..850219e3d7 100644 --- a/src/mc/world/item/HoeItem.h +++ b/src/mc/world/item/HoeItem.h @@ -39,7 +39,7 @@ class HoeItem : public ::DiggerItem { // symbol: // ??0HoeItem@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@HAEBVTier@Item@@AEBVExperiments@@@Z - MCAPI HoeItem(std::string const& name, int id, class Item::Tier const& tier, class Experiments const&); + MCAPI HoeItem(std::string const& name, int id, class Item::Tier const& tier, class Experiments const& experiments); // NOLINTEND }; diff --git a/src/mc/world/item/Item.h b/src/mc/world/item/Item.h index 01e3c30830..db25d2f291 100644 --- a/src/mc/world/item/Item.h +++ b/src/mc/world/item/Item.h @@ -42,7 +42,7 @@ class Item { // NOLINTBEGIN // symbol: // ??0ScopedCreativeGroup@Item@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVItemInstance@@@Z - MCAPI ScopedCreativeGroup(std::string const& groupName, class ItemInstance const&); + MCAPI ScopedCreativeGroup(std::string const& groupName, class ItemInstance const& iconInstance); // symbol: // ??0ScopedCreativeGroup@Item@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PEBVBlock@@PEBVCompoundTag@@@Z @@ -620,10 +620,10 @@ class Item { MCAPI class Item& setFireResistant(bool); // symbol: ?setFurnaceBurnIntervalMultiplier@Item@@QEAAAEAV1@M@Z - MCAPI class Item& setFurnaceBurnIntervalMultiplier(float); + MCAPI class Item& setFurnaceBurnIntervalMultiplier(float multiplier); // symbol: ?setFurnaceXPmultiplier@Item@@QEAAAEAV1@M@Z - MCAPI class Item& setFurnaceXPmultiplier(float); + MCAPI class Item& setFurnaceXPmultiplier(float multiplier); // symbol: ?setHandEquipped@Item@@QEAAAEAV1@XZ MCAPI class Item& setHandEquipped(); @@ -678,7 +678,8 @@ class Item { MCAPI static void addCreativeItem(class ItemRegistryRef, class ItemStack const& itemInstance); // symbol: ?addLooseCreativeItems@Item@@SAX_NAEBVBaseGameVersion@@VItemRegistryRef@@@Z - MCAPI static void addLooseCreativeItems(bool isClient, class BaseGameVersion const&, class ItemRegistryRef); + MCAPI static void + addLooseCreativeItems(bool isClient, class BaseGameVersion const& worldVersion, class ItemRegistryRef); // symbol: ?endCreativeItemDefinitions@Item@@SAX_N@Z MCAPI static void endCreativeItemDefinitions(bool isClient); @@ -696,7 +697,7 @@ class Item { MCAPI static bool isSameTypeAndItem(class ItemStackBase const&, class ItemStackBase const&); // symbol: ?startCreativeItemDefinitions@Item@@SAX_NPEAVCreativeItemRegistry@@@Z - MCAPI static void startCreativeItemDefinitions(bool isClient, class CreativeItemRegistry*); + MCAPI static void startCreativeItemDefinitions(bool isClient, class CreativeItemRegistry* creativeItemRegistry); // symbol: ?toBlockId@Item@@SA?AUNewBlockID@@F@Z MCAPI static struct NewBlockID toBlockId(short itemId); diff --git a/src/mc/world/item/ItemDescriptor.h b/src/mc/world/item/ItemDescriptor.h index 94ef436ce5..54915b8b01 100644 --- a/src/mc/world/item/ItemDescriptor.h +++ b/src/mc/world/item/ItemDescriptor.h @@ -196,7 +196,7 @@ class ItemDescriptor { MCAPI bool operator==(class ItemDescriptor const& rhs) const; // symbol: ?sameItem@ItemDescriptor@@QEBA_NAEBV1@_N@Z - MCAPI bool sameItem(class ItemDescriptor const&, bool) const; + MCAPI bool sameItem(class ItemDescriptor const& otherItemDescriptor, bool) const; // symbol: ?sameItem@ItemDescriptor@@QEBA_NAEBVItemStack@@_N@Z MCAPI bool sameItem(class ItemStack const& item, bool) const; diff --git a/src/mc/world/item/ItemEventResponseFactory.h b/src/mc/world/item/ItemEventResponseFactory.h index 0526d1bf4d..820d9ce21d 100644 --- a/src/mc/world/item/ItemEventResponseFactory.h +++ b/src/mc/world/item/ItemEventResponseFactory.h @@ -18,7 +18,7 @@ class ItemEventResponseFactory : public ::EventResponseFactory { virtual ~ItemEventResponseFactory(); // vIndex: 1, symbol: ?initializeFactory@ItemEventResponseFactory@@UEAAXAEBVExperiments@@@Z - virtual void initializeFactory(class Experiments const&); + virtual void initializeFactory(class Experiments const& experiments); // vIndex: 2, symbol: ?initSchema@ItemEventResponseFactory@@UEAAXXZ virtual void initSchema(); diff --git a/src/mc/world/item/ItemStackBase.h b/src/mc/world/item/ItemStackBase.h index 10eb862eec..3ae4980b8d 100644 --- a/src/mc/world/item/ItemStackBase.h +++ b/src/mc/world/item/ItemStackBase.h @@ -294,7 +294,7 @@ class ItemStackBase { MCAPI bool isHorseArmorItem() const; // symbol: ?isInstance@ItemStackBase@@QEBA_NAEBVHashedString@@_N@Z - MCAPI bool isInstance(class HashedString const& itemName, bool) const; + MCAPI bool isInstance(class HashedString const& itemName, bool useItemLookup) const; // symbol: ?isItem@ItemStackBase@@QEBA_NXZ MCAPI bool isItem() const; @@ -536,10 +536,10 @@ class ItemStackBase { MCAPI void init(class BlockLegacy const& block, int count); // symbol: ?init@ItemStackBase@@IEAAXHHH_N@Z - MCAPI void init(int id, int count_, int aux_, bool); + MCAPI void init(int id, int count_, int aux_, bool doRemap); // symbol: ?init@ItemStackBase@@IEAAXAEBVItem@@HHPEBVCompoundTag@@_N@Z - MCAPI void init(class Item const& item, int count, int auxValue, class CompoundTag const* userData, bool); + MCAPI void init(class Item const& item, int count, int auxValue, class CompoundTag const* userData, bool doRemap); // symbol: ??4ItemStackBase@@IEAAAEAV0@AEBV0@@Z MCAPI class ItemStackBase& operator=(class ItemStackBase const& rhs); @@ -569,7 +569,7 @@ class ItemStackBase { MCAPI void _setChargedItem(class ItemInstance const& item); // symbol: ?_setItem@ItemStackBase@@AEAA_NH_N@Z - MCAPI bool _setItem(int id, bool); + MCAPI bool _setItem(int id, bool doRemap); // symbol: ?_updateCompareHashes@ItemStackBase@@AEAAXXZ MCAPI void _updateCompareHashes(); diff --git a/src/mc/world/item/LodestoneCompassItem.h b/src/mc/world/item/LodestoneCompassItem.h index 8affa7f945..d2c71a3f55 100644 --- a/src/mc/world/item/LodestoneCompassItem.h +++ b/src/mc/world/item/LodestoneCompassItem.h @@ -53,8 +53,10 @@ class LodestoneCompassItem : public ::AbstractCompassItem { // NOLINTBEGIN // symbol: // ?_tryGetOrAddComponent@LodestoneCompassItem@@CAPEAVLodestoneCompassComponent@@PEAVTrackingRecord@PositionTrackingDB@@AEBV?$variant@UActorUniqueID@@U?$pair@VBlockPos@@V?$AutomaticID@VDimension@@H@@@std@@@std@@@Z - MCAPI static class LodestoneCompassComponent* - _tryGetOrAddComponent(class PositionTrackingDB::TrackingRecord* record, std::variant> const&); + MCAPI static class LodestoneCompassComponent* _tryGetOrAddComponent( + class PositionTrackingDB::TrackingRecord* record, + std::variant> const& calcId + ); // NOLINTEND }; diff --git a/src/mc/world/item/MolangDescriptor.h b/src/mc/world/item/MolangDescriptor.h index 3b06089ad3..f228a7d867 100644 --- a/src/mc/world/item/MolangDescriptor.h +++ b/src/mc/world/item/MolangDescriptor.h @@ -65,7 +65,7 @@ struct MolangDescriptor : public ::ItemDescriptor::BaseDescriptor { // symbol: // ?fromExpressionTag@MolangDescriptor@@SA?AV?$unique_ptr@UMolangDescriptor@@U?$default_delete@UMolangDescriptor@@@std@@@std@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@W4MolangVersion@@@Z MCAPI static std::unique_ptr - fromExpressionTag(std::string const&, ::MolangVersion molangVersion); + fromExpressionTag(std::string const& tagExpression, ::MolangVersion molangVersion); // NOLINTEND }; diff --git a/src/mc/world/item/PotionItem.h b/src/mc/world/item/PotionItem.h index b82274125a..e57083c818 100644 --- a/src/mc/world/item/PotionItem.h +++ b/src/mc/world/item/PotionItem.h @@ -88,7 +88,7 @@ class PotionItem : public ::Item { MCAPI static void applyEffect(class ThrownPotion* potion, class ItemStack const& slotItem); // symbol: ?isDestructivePotion@PotionItem@@SA_NW4PotionVariant@Potion@@@Z - MCAPI static bool isDestructivePotion(::Potion::PotionVariant); + MCAPI static bool isDestructivePotion(::Potion::PotionVariant potionVariant); // NOLINTEND diff --git a/src/mc/world/item/VanillaItems.h b/src/mc/world/item/VanillaItems.h index 19f2ef778a..24dc69401b 100644 --- a/src/mc/world/item/VanillaItems.h +++ b/src/mc/world/item/VanillaItems.h @@ -26,8 +26,15 @@ class VanillaItems { // symbol: // ?serverInitCreativeItemsCallback@VanillaItems@@SAXVItemRegistryRef@@PEAVActorInfoRegistry@@PEAVBlockDefinitionGroup@@PEAVCreativeItemRegistry@@_NAEBVBaseGameVersion@@AEBVExperiments@@@Z - MCAPI static void - serverInitCreativeItemsCallback(class ItemRegistryRef, class ActorInfoRegistry*, class BlockDefinitionGroup* blockDefinitionGroup, class CreativeItemRegistry*, bool isClient, class BaseGameVersion const&, class Experiments const&); + MCAPI static void serverInitCreativeItemsCallback( + class ItemRegistryRef, + class ActorInfoRegistry*, + class BlockDefinitionGroup* blockDefinitionGroup, + class CreativeItemRegistry* creativeItemRegistry, + bool isClient, + class BaseGameVersion const& worldVersion, + class Experiments const& experiments + ); // NOLINTEND @@ -36,27 +43,35 @@ class VanillaItems { // symbol: // ?_addCommandOnlyCategory@VanillaItems@@CAXPEAVCreativeItemRegistry@@VItemRegistryRef@@AEBVBaseGameVersion@@AEBVExperiments@@@Z MCAPI static void - _addCommandOnlyCategory(class CreativeItemRegistry*, class ItemRegistryRef, class BaseGameVersion const&, class Experiments const&); + _addCommandOnlyCategory(class CreativeItemRegistry* creativeItemRegistry, class ItemRegistryRef, class BaseGameVersion const&, class Experiments const&); // symbol: // ?_addConstructionCategory@VanillaItems@@CAXPEAVCreativeItemRegistry@@VItemRegistryRef@@AEBVBaseGameVersion@@AEBVExperiments@@@Z MCAPI static void - _addConstructionCategory(class CreativeItemRegistry*, class ItemRegistryRef, class BaseGameVersion const&, class Experiments const&); + _addConstructionCategory(class CreativeItemRegistry* creativeItemRegistry, class ItemRegistryRef, class BaseGameVersion const&, class Experiments const&); // symbol: // ?_addEquipmentCategory@VanillaItems@@CAXPEAVCreativeItemRegistry@@VItemRegistryRef@@AEBVBaseGameVersion@@AEBVExperiments@@@Z - MCAPI static void - _addEquipmentCategory(class CreativeItemRegistry*, class ItemRegistryRef, class BaseGameVersion const&, class Experiments const&); + MCAPI static void _addEquipmentCategory( + class CreativeItemRegistry* creativeItemRegistry, + class ItemRegistryRef, + class BaseGameVersion const& worldVersion, + class Experiments const& experiments + ); // symbol: // ?_addItemsCategory@VanillaItems@@CAXPEAVCreativeItemRegistry@@VItemRegistryRef@@AEBVBaseGameVersion@@AEBVExperiments@@@Z MCAPI static void - _addItemsCategory(class CreativeItemRegistry*, class ItemRegistryRef, class BaseGameVersion const&, class Experiments const&); + _addItemsCategory(class CreativeItemRegistry* creativeItemRegistry, class ItemRegistryRef, class BaseGameVersion const& worldVersion, class Experiments const&); // symbol: // ?_addNatureCategory@VanillaItems@@CAXPEAVCreativeItemRegistry@@VItemRegistryRef@@AEBVBaseGameVersion@@AEBVExperiments@@@Z - MCAPI static void - _addNatureCategory(class CreativeItemRegistry*, class ItemRegistryRef, class BaseGameVersion const&, class Experiments const&); + MCAPI static void _addNatureCategory( + class CreativeItemRegistry* creativeItemRegistry, + class ItemRegistryRef, + class BaseGameVersion const& worldVersion, + class Experiments const& experiments + ); // NOLINTEND }; diff --git a/src/mc/world/item/alchemy/Potion.h b/src/mc/world/item/alchemy/Potion.h index 72a1539966..2ee99d2b60 100644 --- a/src/mc/world/item/alchemy/Potion.h +++ b/src/mc/world/item/alchemy/Potion.h @@ -20,11 +20,11 @@ class Potion { // symbol: // ?appendFormattedPotionText@Potion@@QEBAXAEAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4PotionType@1@W4PotionVariant@1@AEBVPlayer@@M@Z MCAPI void appendFormattedPotionText( - std::string& hovertext, - ::Potion::PotionType potionType, - ::Potion::PotionVariant, - class Player const& player, - float timeMod + std::string& hovertext, + ::Potion::PotionType potionType, + ::Potion::PotionVariant potionVariant, + class Player const& player, + float timeMod ) const; // symbol: diff --git a/src/mc/world/components/AllowOffHandItemComponent.h b/src/mc/world/item/components/AllowOffHandItemComponent.h similarity index 100% rename from src/mc/world/components/AllowOffHandItemComponent.h rename to src/mc/world/item/components/AllowOffHandItemComponent.h diff --git a/src/mc/world/components/CanDestroyInCreativeItemComponent.h b/src/mc/world/item/components/CanDestroyInCreativeItemComponent.h similarity index 100% rename from src/mc/world/components/CanDestroyInCreativeItemComponent.h rename to src/mc/world/item/components/CanDestroyInCreativeItemComponent.h diff --git a/src/mc/world/components/DamageItemComponent.h b/src/mc/world/item/components/DamageItemComponent.h similarity index 100% rename from src/mc/world/components/DamageItemComponent.h rename to src/mc/world/item/components/DamageItemComponent.h diff --git a/src/mc/world/item/components/DyeableComponent.h b/src/mc/world/item/components/DyeableComponent.h index 14d778ebf9..bc4218262e 100644 --- a/src/mc/world/item/components/DyeableComponent.h +++ b/src/mc/world/item/components/DyeableComponent.h @@ -54,7 +54,8 @@ class DyeableComponent { // symbol: // ?appendFormattedHovertext@DyeableComponent@@QEBAXAEBVItemStackBase@@AEAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_N@Z - MCAPI void appendFormattedHovertext(class ItemStackBase const& item, std::string& hovertext, bool) const; + MCAPI void + appendFormattedHovertext(class ItemStackBase const& item, std::string& hovertext, bool advancedToolTops) const; // symbol: ?clearColor@DyeableComponent@@QEBAXAEAVItemStackBase@@@Z MCAPI void clearColor(class ItemStackBase& instance) const; diff --git a/src/mc/world/components/EnchantableItemComponent.h b/src/mc/world/item/components/EnchantableItemComponent.h similarity index 100% rename from src/mc/world/components/EnchantableItemComponent.h rename to src/mc/world/item/components/EnchantableItemComponent.h diff --git a/src/mc/util/ExplorationMapUtils.h b/src/mc/world/item/components/ExplorationMapUtils.h similarity index 100% rename from src/mc/util/ExplorationMapUtils.h rename to src/mc/world/item/components/ExplorationMapUtils.h diff --git a/src/mc/world/components/GlintItemComponent.h b/src/mc/world/item/components/GlintItemComponent.h similarity index 100% rename from src/mc/world/components/GlintItemComponent.h rename to src/mc/world/item/components/GlintItemComponent.h diff --git a/src/mc/world/components/HandEquippedItemComponent.h b/src/mc/world/item/components/HandEquippedItemComponent.h similarity index 100% rename from src/mc/world/components/HandEquippedItemComponent.h rename to src/mc/world/item/components/HandEquippedItemComponent.h diff --git a/src/mc/world/components/HoverTextColorItemComponent.h b/src/mc/world/item/components/HoverTextColorItemComponent.h similarity index 100% rename from src/mc/world/components/HoverTextColorItemComponent.h rename to src/mc/world/item/components/HoverTextColorItemComponent.h diff --git a/src/mc/entity/flags/ItemActorFlag.h b/src/mc/world/item/components/ItemActorFlag.h similarity index 100% rename from src/mc/entity/flags/ItemActorFlag.h rename to src/mc/world/item/components/ItemActorFlag.h diff --git a/src/mc/events/ItemCompleteUseEvent.h b/src/mc/world/item/components/ItemCompleteUseEvent.h similarity index 100% rename from src/mc/events/ItemCompleteUseEvent.h rename to src/mc/world/item/components/ItemCompleteUseEvent.h diff --git a/src/mc/world/item/components/ItemContext.h b/src/mc/world/item/components/ItemContext.h index 2d03ec5c22..e98a72188a 100644 --- a/src/mc/world/item/components/ItemContext.h +++ b/src/mc/world/item/components/ItemContext.h @@ -16,7 +16,7 @@ class ItemContext { public: // NOLINTBEGIN // symbol: ??0ItemContext@@QEAA@AEBVWeakEntityRef@@W4EquipmentSlot@Legacy@Puv@@@Z - MCAPI ItemContext(class WeakEntityRef const& entityRef, ::Puv::Legacy::EquipmentSlot); + MCAPI ItemContext(class WeakEntityRef const& entityRef, ::Puv::Legacy::EquipmentSlot equipmentSlot); // symbol: ??0ItemContext@@QEAA@AEBVWeakEntityRef@@H@Z MCAPI ItemContext(class WeakEntityRef const& entityRef, int slot); @@ -131,7 +131,8 @@ class ItemContext { MCAPI ~ItemContext(); // symbol: ?setEquipment@ItemContext@@SA_NAEBVItemStack@@W4EquipmentSlot@Legacy@Puv@@AEAVMob@@@Z - MCAPI static bool setEquipment(class ItemStack const& item, ::Puv::Legacy::EquipmentSlot, class Mob& mob); + MCAPI static bool + setEquipment(class ItemStack const& item, ::Puv::Legacy::EquipmentSlot equipmentSlot, class Mob& mob); // NOLINTEND diff --git a/src/mc/events/ItemGameplayEvent.h b/src/mc/world/item/components/ItemGameplayEvent.h similarity index 100% rename from src/mc/events/ItemGameplayEvent.h rename to src/mc/world/item/components/ItemGameplayEvent.h diff --git a/src/mc/events/ItemReleaseUseEvent.h b/src/mc/world/item/components/ItemReleaseUseEvent.h similarity index 100% rename from src/mc/events/ItemReleaseUseEvent.h rename to src/mc/world/item/components/ItemReleaseUseEvent.h diff --git a/src/mc/events/ItemStartUseEvent.h b/src/mc/world/item/components/ItemStartUseEvent.h similarity index 100% rename from src/mc/events/ItemStartUseEvent.h rename to src/mc/world/item/components/ItemStartUseEvent.h diff --git a/src/mc/events/ItemStopUseEvent.h b/src/mc/world/item/components/ItemStopUseEvent.h similarity index 100% rename from src/mc/events/ItemStopUseEvent.h rename to src/mc/world/item/components/ItemStopUseEvent.h diff --git a/src/mc/world/components/ItemUseSlowdownModifierComponent.h b/src/mc/world/item/components/ItemUseSlowdownModifierComponent.h similarity index 100% rename from src/mc/world/components/ItemUseSlowdownModifierComponent.h rename to src/mc/world/item/components/ItemUseSlowdownModifierComponent.h diff --git a/src/mc/events/ItemUsedOnEvent.h b/src/mc/world/item/components/ItemUsedOnEvent.h similarity index 100% rename from src/mc/events/ItemUsedOnEvent.h rename to src/mc/world/item/components/ItemUsedOnEvent.h diff --git a/src/mc/world/components/LiquidClippedItemComponent.h b/src/mc/world/item/components/LiquidClippedItemComponent.h similarity index 100% rename from src/mc/world/components/LiquidClippedItemComponent.h rename to src/mc/world/item/components/LiquidClippedItemComponent.h diff --git a/src/mc/world/components/MaxStackSizeItemComponent.h b/src/mc/world/item/components/MaxStackSizeItemComponent.h similarity index 100% rename from src/mc/world/components/MaxStackSizeItemComponent.h rename to src/mc/world/item/components/MaxStackSizeItemComponent.h diff --git a/src/mc/world/item/components/ProjectileItemComponent.h b/src/mc/world/item/components/ProjectileItemComponent.h index 4bfb0ef01e..b5a410a731 100644 --- a/src/mc/world/item/components/ProjectileItemComponent.h +++ b/src/mc/world/item/components/ProjectileItemComponent.h @@ -63,9 +63,13 @@ class ProjectileItemComponent { MCAPI class Vec3 getShootDir(class Player const& player, float angleOffset) const; // symbol: ?shootProjectile@ProjectileItemComponent@@QEBAPEAVActor@@AEAVBlockSource@@AEBVVec3@@1MPEAVPlayer@@@Z - MCAPI class Actor* - shootProjectile(class BlockSource& region, class Vec3 const&, class Vec3 const&, float power, class Player* player) - const; + MCAPI class Actor* shootProjectile( + class BlockSource& region, + class Vec3 const& aimPos, + class Vec3 const& aimDir, + float power, + class Player* player + ) const; // symbol: // ?bindType@ProjectileItemComponent@@SAXAEAUReflectionCtx@cereal@@AEBV?$vector@W4AllExperiments@@V?$allocator@W4AllExperiments@@@std@@@std@@V?$optional@VSemVersion@@@5@@Z diff --git a/src/mc/world/components/PublisherItemComponent.h b/src/mc/world/item/components/PublisherItemComponent.h similarity index 100% rename from src/mc/world/components/PublisherItemComponent.h rename to src/mc/world/item/components/PublisherItemComponent.h diff --git a/src/mc/world/item/components/RepairableItemComponent.h b/src/mc/world/item/components/RepairableItemComponent.h index 64d270af89..87856b6a05 100644 --- a/src/mc/world/item/components/RepairableItemComponent.h +++ b/src/mc/world/item/components/RepairableItemComponent.h @@ -51,7 +51,7 @@ class RepairableItemComponent { virtual void _initializeComponent(); // symbol: ?handleItemRepair@RepairableItemComponent@@QEBA?AURepairItemResult@@AEAVItemStack@@0_N@Z - MCAPI struct RepairItemResult handleItemRepair(class ItemStack&, class ItemStack&, bool) const; + MCAPI struct RepairItemResult handleItemRepair(class ItemStack&, class ItemStack& materialItem, bool) const; // symbol: ?isValidRepairItem@RepairableItemComponent@@QEBA_NAEBVItemStackBase@@@Z MCAPI bool isValidRepairItem(class ItemStackBase const& repairItem) const; @@ -81,7 +81,11 @@ class RepairableItemComponent { MCAPI struct RepairItemEntry const* _getRepairItemEntry(class ItemStackBase const& item) const; // symbol: ?_repairItem@RepairableItemComponent@@AEBAHAEAVItemStackBase@@0VExpressionNode@@@Z - MCAPI int _repairItem(class ItemStackBase&, class ItemStackBase& resultItem, class ExpressionNode) const; + MCAPI int _repairItem( + class ItemStackBase& materialItem, + class ItemStackBase& resultItem, + class ExpressionNode repairAmountExpression + ) const; // NOLINTEND }; diff --git a/src/mc/world/item/components/ShooterItemComponent.h b/src/mc/world/item/components/ShooterItemComponent.h index 3add48ac2d..2a5428fde1 100644 --- a/src/mc/world/item/components/ShooterItemComponent.h +++ b/src/mc/world/item/components/ShooterItemComponent.h @@ -125,16 +125,22 @@ class ShooterItemComponent { // private: // NOLINTBEGIN // symbol: ?_consumeAmmunition@ShooterItemComponent@@AEBAXPEAVPlayer@@AEBVItemStack@@H_N2@Z - MCAPI void _consumeAmmunition(class Player* player, class ItemStack const&, int, bool, bool) const; + MCAPI void _consumeAmmunition( + class Player* player, + class ItemStack const& ammunition, + int slotIndex, + bool infiniteAmmo, + bool fromOffhand + ) const; // symbol: ?_getAmmunition@ShooterItemComponent@@AEBAHPEBVPlayer@@_NAEAVItemStack@@AEA_N@Z - MCAPI int _getAmmunition(class Player const* player, bool, class ItemStack&, bool&) const; + MCAPI int _getAmmunition(class Player const* player, bool, class ItemStack& ammo, bool& fromOffhand) const; // symbol: ?_getMaxUseDuration@ShooterItemComponent@@AEBAHAEBVItemStack@@@Z MCAPI int _getMaxUseDuration(class ItemStack const&) const; // symbol: ?_shootProjectiles@ShooterItemComponent@@AEBAXAEAVItemStack@@PEAVPlayer@@H@Z - MCAPI void _shootProjectiles(class ItemStack&, class Player* player, int durationLeft) const; + MCAPI void _shootProjectiles(class ItemStack& shooterStack, class Player* player, int durationLeft) const; // NOLINTEND }; diff --git a/src/mc/world/components/ShouldDespawnItemComponent.h b/src/mc/world/item/components/ShouldDespawnItemComponent.h similarity index 100% rename from src/mc/world/components/ShouldDespawnItemComponent.h rename to src/mc/world/item/components/ShouldDespawnItemComponent.h diff --git a/src/mc/world/components/StackedByDataItemComponent.h b/src/mc/world/item/components/StackedByDataItemComponent.h similarity index 100% rename from src/mc/world/components/StackedByDataItemComponent.h rename to src/mc/world/item/components/StackedByDataItemComponent.h diff --git a/src/mc/world/components/TagsItemComponent.h b/src/mc/world/item/components/TagsItemComponent.h similarity index 100% rename from src/mc/world/components/TagsItemComponent.h rename to src/mc/world/item/components/TagsItemComponent.h diff --git a/src/mc/world/components/UseAnimationItemComponent.h b/src/mc/world/item/components/UseAnimationItemComponent.h similarity index 100% rename from src/mc/world/components/UseAnimationItemComponent.h rename to src/mc/world/item/components/UseAnimationItemComponent.h diff --git a/src/mc/world/components/UseModifiersItemComponent.h b/src/mc/world/item/components/UseModifiersItemComponent.h similarity index 100% rename from src/mc/world/components/UseModifiersItemComponent.h rename to src/mc/world/item/components/UseModifiersItemComponent.h diff --git a/src/mc/world/item/crafting/CraftingContainer.h b/src/mc/world/item/crafting/CraftingContainer.h index 5c6d503539..0a0ef4e7e0 100644 --- a/src/mc/world/item/crafting/CraftingContainer.h +++ b/src/mc/world/item/crafting/CraftingContainer.h @@ -18,7 +18,11 @@ class CraftingContainer : public ::Container { virtual ~CraftingContainer(); // vIndex: 2, symbol: ?serverInitItemStackIds@CraftingContainer@@UEAAXHHV?$function@$$A6AXHAEBVItemStack@@@Z@std@@@Z - virtual void serverInitItemStackIds(int, int count, std::function); + virtual void serverInitItemStackIds( + int containerSlot, + int count, + std::function onNetIdChanged + ); // vIndex: 5, symbol: ?getItem@CraftingContainer@@UEBAAEBVItemStack@@H@Z virtual class ItemStack const& getItem(int slot) const; diff --git a/src/mc/world/item/crafting/MerchantRecipe.h b/src/mc/world/item/crafting/MerchantRecipe.h index 0e7b55929a..06818f8a59 100644 --- a/src/mc/world/item/crafting/MerchantRecipe.h +++ b/src/mc/world/item/crafting/MerchantRecipe.h @@ -27,7 +27,7 @@ class MerchantRecipe { // symbol: // ?createTag@MerchantRecipe@@QEBA?AV?$unique_ptr@VCompoundTag@@U?$default_delete@VCompoundTag@@@std@@@std@@_N@Z - MCAPI std::unique_ptr createTag(bool) const; + MCAPI std::unique_ptr createTag(bool includeNetInfo) const; // symbol: ?getBaseCountA@MerchantRecipe@@QEBAHXZ MCAPI int getBaseCountA() const; @@ -78,7 +78,7 @@ class MerchantRecipe { MCAPI bool isSame(class MerchantRecipe const& lhs) const; // symbol: ?legacyCalculateDemandPrices@MerchantRecipe@@QEAAXHH@Z - MCAPI void legacyCalculateDemandPrices(int, int); + MCAPI void legacyCalculateDemandPrices(int lowTierDiscount, int highTierDiscount); // symbol: ?load@MerchantRecipe@@QEAAXPEBVCompoundTag@@@Z MCAPI void load(class CompoundTag const* tag); diff --git a/src/mc/world/item/crafting/Recipe.h b/src/mc/world/item/crafting/Recipe.h index dea33369d6..6440ad60c1 100644 --- a/src/mc/world/item/crafting/Recipe.h +++ b/src/mc/world/item/crafting/Recipe.h @@ -56,7 +56,7 @@ class Recipe { virtual bool hasDataDrivenResult() const; // vIndex: 11, symbol: ?itemValidForRecipe@Recipe@@UEBA_NAEBVItemDescriptor@@AEBVItemStack@@@Z - virtual bool itemValidForRecipe(class ItemDescriptor const&, class ItemStack const& item) const; + virtual bool itemValidForRecipe(class ItemDescriptor const& recipeItem, class ItemStack const& item) const; // vIndex: 12, symbol: ?itemsMatch@Recipe@@UEBA_NAEBVItemDescriptor@@0@Z virtual bool itemsMatch(class ItemDescriptor const& lhs, class ItemDescriptor const& rhs) const; @@ -100,7 +100,7 @@ class Recipe { MCAPI int getWidth() const; // symbol: ?setNetId@Recipe@@QEAAXAEBV?$TypedServerNetId@URecipeNetIdTag@@I$0A@@@@Z - MCAPI void setNetId(RecipeNetId const&); + MCAPI void setNetId(RecipeNetId const& recipeNetId); // symbol: ?isAnyAuxValue@Recipe@@SA_NAEBVItemDescriptor@@@Z MCAPI static bool isAnyAuxValue(class ItemDescriptor const& ii); diff --git a/src/mc/world/item/crafting/Recipes.h b/src/mc/world/item/crafting/Recipes.h index 2fa5bc82b7..02e65411e6 100644 --- a/src/mc/world/item/crafting/Recipes.h +++ b/src/mc/world/item/crafting/Recipes.h @@ -144,7 +144,7 @@ class Recipes { MCAPI uint getNumberOfUnlockableRecipes() const; // symbol: ?getRecipeByNetId@Recipes@@QEBAPEBVRecipe@@AEBV?$TypedServerNetId@URecipeNetIdTag@@I$0A@@@@Z - MCAPI class Recipe const* getRecipeByNetId(RecipeNetId const&) const; + MCAPI class Recipe const* getRecipeByNetId(RecipeNetId const& netId) const; // symbol: ?getRecipeFor@Recipes@@QEBAPEAVRecipe@@AEBVItemInstance@@AEBVHashedString@@@Z MCAPI class Recipe* getRecipeFor(class ItemInstance const& result, class HashedString const& tag) const; @@ -156,8 +156,12 @@ class Recipes { // symbol: // ?init@Recipes@@QEAAXAEAVResourcePackManager@@AEAVExternalRecipeStore@@AEBVBaseGameVersion@@AEBVExperiments@@@Z - MCAPI void - init(class ResourcePackManager& resourcePackManager, class ExternalRecipeStore&, class BaseGameVersion const& baseGameVersion, class Experiments const&); + MCAPI void init( + class ResourcePackManager& resourcePackManager, + class ExternalRecipeStore&, + class BaseGameVersion const& baseGameVersion, + class Experiments const& experiments + ); // symbol: // ?loadRecipe@Recipes@@QEAA_NAEBU?$pair@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@VValue@Json@@@std@@AEBVSemVersion@@1_N@Z @@ -182,7 +186,7 @@ class Recipes { // symbol: // ?_loadDataDrivenRecipes@Recipes@@IEAAXAEBV?$vector@VPackInstance@@V?$allocator@VPackInstance@@@std@@@std@@@Z - MCAPI void _loadDataDrivenRecipes(std::vector const&); + MCAPI void _loadDataDrivenRecipes(std::vector const& resourcePacksNewestToOldest); // symbol: ?_loadIngredientFromJson@Recipes@@IEBA?BVRecipeIngredient@@AEBVValue@Json@@AEBVSemVersion@@_N2@Z MCAPI class RecipeIngredient const @@ -218,7 +222,7 @@ class Recipes { MCAPI bool _isRecipeValidToAdd(class Recipe const& recipe); // symbol: ?_loadBrewingMix@Recipes@@AEAA_NAEBVValue@Json@@AEBVSemVersion@@@Z - MCAPI bool _loadBrewingMix(class Json::Value const&, class SemVersion const& engineVersion); + MCAPI bool _loadBrewingMix(class Json::Value const& objData, class SemVersion const& engineVersion); // symbol: ?_loadHardcodedRecipes@Recipes@@AEAAXAEBVBaseGameVersion@@AEBVExperiments@@@Z MCAPI void _loadHardcodedRecipes(class BaseGameVersion const& baseGameVersion, class Experiments const&); @@ -230,7 +234,7 @@ class Recipes { // symbol: // ?_loadSmithingTransform@Recipes@@AEAA_NAEBVValue@Json@@AEBVSemVersion@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV?$vector@VHashedString@@V?$allocator@VHashedString@@@std@@@6@@Z MCAPI bool _loadSmithingTransform( - class Json::Value const&, + class Json::Value const& objData, class SemVersion const& engineVersion, std::string const& recipeId, std::vector const& tags @@ -239,7 +243,7 @@ class Recipes { // symbol: // ?_loadSmithingTrim@Recipes@@AEAA_NAEBVValue@Json@@AEBVSemVersion@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV?$vector@VHashedString@@V?$allocator@VHashedString@@@std@@@6@@Z MCAPI bool _loadSmithingTrim( - class Json::Value const&, + class Json::Value const& objData, class SemVersion const& engineVersion, std::string const& recipeId, std::vector const& tags diff --git a/src/mc/world/item/crafting/ShapedRecipe.h b/src/mc/world/item/crafting/ShapedRecipe.h index 49e3ce8200..27f12d5190 100644 --- a/src/mc/world/item/crafting/ShapedRecipe.h +++ b/src/mc/world/item/crafting/ShapedRecipe.h @@ -54,7 +54,7 @@ class ShapedRecipe : public ::Recipe { ShapedRecipe(std::string_view, int, int, std::vector const&, std::vector const&, class HashedString, int, class mce::UUID const*, std::optional, class SemVersion const&); // symbol: ?getIngredientsHashOffset@ShapedRecipe@@QEBA_KHHHH@Z - MCAPI uint64 getIngredientsHashOffset(int, int, int offsetX, int) const; + MCAPI uint64 getIngredientsHashOffset(int, int, int offsetX, int offsetY) const; // NOLINTEND diff --git a/src/mc/world/item/enchanting/EnchantUtils.h b/src/mc/world/item/enchanting/EnchantUtils.h index ffed8d5a38..7ea3f97284 100644 --- a/src/mc/world/item/enchanting/EnchantUtils.h +++ b/src/mc/world/item/enchanting/EnchantUtils.h @@ -68,7 +68,7 @@ class EnchantUtils { // symbol: // ?getCurses@EnchantUtils@@SAXAEBVItemStackBase@@AEAV?$vector@VEnchantmentInstance@@V?$allocator@VEnchantmentInstance@@@std@@@std@@@Z - MCAPI static void getCurses(class ItemStackBase const& item, std::vector&); + MCAPI static void getCurses(class ItemStackBase const& item, std::vector& outputCurses); // symbol: ?getDamageReduction@EnchantUtils@@SAMAEBVActorDamageSource@@AEBVMob@@@Z MCAPI static float getDamageReduction(class ActorDamageSource const& source, class Mob const& target); diff --git a/src/mc/world/item/registry/CreativeGroupInfo.h b/src/mc/world/item/registry/CreativeGroupInfo.h index 7e490d2cb9..22532d0a05 100644 --- a/src/mc/world/item/registry/CreativeGroupInfo.h +++ b/src/mc/world/item/registry/CreativeGroupInfo.h @@ -25,7 +25,7 @@ class CreativeGroupInfo : public ::Bedrock::EnableNonOwnerReferences { MCAPI CreativeGroupInfo(class CreativeGroupInfo const&); // symbol: ?addCreativeItem@CreativeGroupInfo@@QEAAXPEAVCreativeItemEntry@@@Z - MCAPI void addCreativeItem(class CreativeItemEntry*); + MCAPI void addCreativeItem(class CreativeItemEntry* itemEntry); // NOLINTEND }; diff --git a/src/mc/world/item/registry/CreativeItemRegistry.h b/src/mc/world/item/registry/CreativeItemRegistry.h index 786b582bf6..a11bafad77 100644 --- a/src/mc/world/item/registry/CreativeItemRegistry.h +++ b/src/mc/world/item/registry/CreativeItemRegistry.h @@ -32,7 +32,7 @@ class CreativeItemRegistry : public ::Bedrock::EnableNonOwnerReferences { // symbol: // ?findCreativeItemEntry@CreativeItemRegistry@@QEAAPEAVCreativeItemEntry@@AEBV?$TypedServerNetId@UCreativeItemNetIdTag@@I$0A@@@@Z - MCAPI class CreativeItemEntry* findCreativeItemEntry(CreativeItemNetId const&); + MCAPI class CreativeItemEntry* findCreativeItemEntry(CreativeItemNetId const& netId); // symbol: ?getCreativeCategory@CreativeItemRegistry@@QEAAPEAVCreativeItemGroupCategory@@W4CreativeItemCategory@@@Z MCAPI class CreativeItemGroupCategory* getCreativeCategory(::CreativeItemCategory category); @@ -56,7 +56,7 @@ class CreativeItemRegistry : public ::Bedrock::EnableNonOwnerReferences { // symbol: // ?newItemEntry@CreativeItemRegistry@@QEAAPEAVCreativeItemEntry@@AEBV?$TypedServerNetId@UCreativeItemNetIdTag@@I$0A@@@AEBVItemInstance@@@Z - MCAPI class CreativeItemEntry* newItemEntry(CreativeItemNetId const&, class ItemInstance const& item); + MCAPI class CreativeItemEntry* newItemEntry(CreativeItemNetId const& creativeNetId, class ItemInstance const& item); // symbol: ?resetGroups@CreativeItemRegistry@@QEAAXXZ MCAPI void resetGroups(); diff --git a/src/mc/world/item/registry/ItemRegistry.h b/src/mc/world/item/registry/ItemRegistry.h index daa7e1f02e..3fa3f01552 100644 --- a/src/mc/world/item/registry/ItemRegistry.h +++ b/src/mc/world/item/registry/ItemRegistry.h @@ -80,8 +80,8 @@ class ItemRegistry { class ResourcePackManager& resourcePackManager, std::function< void(class WeakPtr&, class Json::Value&, class SemVersion const&, bool, class Experiments const&)> - initCallback, - class Experiments const&, + initCallback, + class Experiments const& enableDataDrivenItems, ::ItemVersion ); @@ -136,32 +136,36 @@ class ItemRegistry { class ActorInfoRegistry* actorInfoRegistry, class BlockDefinitionGroup* blockDefinitionGroup, bool isClient, - class Experiments const&, + class Experiments const& experiments, std::function< void(class ItemRegistryRef, class ActorInfoRegistry*, class BlockDefinitionGroup*, class CreativeItemRegistry*, bool, class BaseGameVersion const&, class Experiments const&)> registerCallback ); // symbol: ?initServerData@ItemRegistry@@AEAAXAEAVResourcePackManager@@AEBVExperiments@@W4ItemVersion@@@Z - MCAPI void initServerData(class ResourcePackManager& resourcePackManager, class Experiments const&, ::ItemVersion); + MCAPI void + initServerData(class ResourcePackManager& resourcePackManager, class Experiments const& experiments, ::ItemVersion); // symbol: ?lookupByName@ItemRegistry@@AEBA?AV?$WeakPtr@VItem@@@@AEBVHashedString@@@Z MCAPI class WeakPtr lookupByName(class HashedString const& inString) const; // symbol: // ?lookupByName@ItemRegistry@@AEBA?AV?$WeakPtr@VItem@@@@AEAHV?$basic_string_view@DU?$char_traits@D@std@@@std@@@Z - MCAPI class WeakPtr lookupByName(int&, std::string_view inString) const; + MCAPI class WeakPtr lookupByName(int& inOutItemAux, std::string_view inString) const; // symbol: // ?lookupByNameNoAlias@ItemRegistry@@AEBA?AV?$WeakPtr@VItem@@@@V?$basic_string_view@DU?$char_traits@D@std@@@std@@@Z MCAPI class WeakPtr lookupByNameNoAlias(std::string_view inString) const; // symbol: ?lookupByNameNoParsing@ItemRegistry@@AEBA?AV?$WeakPtr@VItem@@@@AEAHAEBVHashedString@@@Z - MCAPI class WeakPtr lookupByNameNoParsing(int&, class HashedString const& fullName) const; + MCAPI class WeakPtr lookupByNameNoParsing(int& inOutItemAux, class HashedString const& fullName) const; // symbol: ?registerAlias@ItemRegistry@@AEAAXAEBVHashedString@@0AEBVBaseGameVersion@@@Z - MCAPI void - registerAlias(class HashedString const& alias, class HashedString const& name, class BaseGameVersion const&); + MCAPI void registerAlias( + class HashedString const& alias, + class HashedString const& name, + class BaseGameVersion const& fromVersion + ); // symbol: // ?registerComplexAlias@ItemRegistry@@AEAA?AV?$WeakPtr@VItem@@@@AEBVHashedString@@AEBUItemRegistryComplexAlias@@@Z @@ -175,8 +179,11 @@ class ItemRegistry { MCAPI void registerLegacyID(class HashedString const& name, short id); // symbol: ?registerLegacyMapping@ItemRegistry@@AEAAXAEBVHashedString@@0AEBVBaseGameVersion@@@Z - MCAPI void - registerLegacyMapping(class HashedString const& alias, class HashedString const& name, class BaseGameVersion const&); + MCAPI void registerLegacyMapping( + class HashedString const& alias, + class HashedString const& name, + class BaseGameVersion const& fromVersion + ); // symbol: ?unregisterItem@ItemRegistry@@AEAAXAEBVHashedString@@@Z MCAPI void unregisterItem(class HashedString const& itemName); diff --git a/src/mc/world/item/registry/ItemRegistryRef.h b/src/mc/world/item/registry/ItemRegistryRef.h index 2f3a0fe1a3..1618cf9029 100644 --- a/src/mc/world/item/registry/ItemRegistryRef.h +++ b/src/mc/world/item/registry/ItemRegistryRef.h @@ -110,7 +110,7 @@ class ItemRegistryRef { class ActorInfoRegistry* actorInfoRegistry, class BlockDefinitionGroup* blockDefinitionGroup, bool isClient, - class Experiments const&, + class Experiments const& experiment, std::function< void(class ItemRegistryRef, class ActorInfoRegistry*, class BlockDefinitionGroup*, class CreativeItemRegistry*, bool, class BaseGameVersion const&, class Experiments const&)> registerCallback @@ -150,7 +150,7 @@ class ItemRegistryRef { MCAPI class WeakPtr lookupByNameNoAlias(std::string_view inString) const; // symbol: ?lookupByNameNoParsing@ItemRegistryRef@@QEBA?AV?$WeakPtr@VItem@@@@AEAHAEBVHashedString@@@Z - MCAPI class WeakPtr lookupByNameNoParsing(int&, class HashedString const& fullName) const; + MCAPI class WeakPtr lookupByNameNoParsing(int& inOutItemAux, class HashedString const& fullName) const; // symbol: // ?lookupByTag@ItemRegistryRef@@QEBA?AV?$unordered_set@PEBVItem@@U?$hash@PEBVItem@@@std@@U?$equal_to@PEBVItem@@@3@V?$allocator@PEBVItem@@@3@@std@@AEBUItemTag@@@Z @@ -160,8 +160,11 @@ class ItemRegistryRef { MCAPI class WeakPtr lookupByVanillaName(class HashedString const& inString) const; // symbol: ?registerAlias@ItemRegistryRef@@QEBAXAEBVHashedString@@0AEBVBaseGameVersion@@@Z - MCAPI void - registerAlias(class HashedString const& alias, class HashedString const& name, class BaseGameVersion const&) const; + MCAPI void registerAlias( + class HashedString const& alias, + class HashedString const& name, + class BaseGameVersion const& fromVersion + ) const; // symbol: // ?registerComplexAlias@ItemRegistryRef@@QEBA?AV?$WeakPtr@VItem@@@@AEBVHashedString@@AEBUItemRegistryComplexAlias@@@Z @@ -175,15 +178,17 @@ class ItemRegistryRef { MCAPI void registerLegacyID(class HashedString const& name, short id) const; // symbol: ?registerLegacyMapping@ItemRegistryRef@@QEBAXAEBVHashedString@@0AEBVBaseGameVersion@@@Z - MCAPI void - registerLegacyMapping(class HashedString const& alias, class HashedString const& name, class BaseGameVersion const&) - const; + MCAPI void registerLegacyMapping( + class HashedString const& alias, + class HashedString const& name, + class BaseGameVersion const& fromVersion + ) const; // symbol: ?remapToFullLegacyNameByHash@ItemRegistryRef@@QEBA_K_K@Z - MCAPI uint64 remapToFullLegacyNameByHash(uint64) const; + MCAPI uint64 remapToFullLegacyNameByHash(uint64 newHash) const; // symbol: ?remapToLegacyNameByHash@ItemRegistryRef@@QEBA_K_K@Z - MCAPI uint64 remapToLegacyNameByHash(uint64) const; + MCAPI uint64 remapToLegacyNameByHash(uint64 newHash) const; // symbol: ?setCheckForItemWorldCompatibility@ItemRegistryRef@@QEBAX_N@Z MCAPI void setCheckForItemWorldCompatibility(bool value) const; diff --git a/src/mc/world/item/registry/ItemStack.h b/src/mc/world/item/registry/ItemStack.h index 43313d88e6..80fcfa2d64 100644 --- a/src/mc/world/item/registry/ItemStack.h +++ b/src/mc/world/item/registry/ItemStack.h @@ -62,7 +62,7 @@ class ItemStack : public ::ItemStackBase { MCAPI void _assignNetIdVariant(class ItemStack const& fromItem) const; // symbol: ?clientInitLegacyRequestId@ItemStack@@QEAAXAEBV?$TypedClientNetId@UItemStackLegacyRequestIdTag@@H$0A@@@@Z - MCAPI void clientInitLegacyRequestId(ItemStackLegacyRequestId const&); + MCAPI void clientInitLegacyRequestId(ItemStackLegacyRequestId const& legacyClientRequestId); // symbol: ?clone@ItemStack@@QEBA?AV1@XZ MCAPI class ItemStack clone() const; diff --git a/src/mc/world/item/trading/MerchantRecipeList.h b/src/mc/world/item/trading/MerchantRecipeList.h index 36e3bae7e6..1f075c3110 100644 --- a/src/mc/world/item/trading/MerchantRecipeList.h +++ b/src/mc/world/item/trading/MerchantRecipeList.h @@ -38,7 +38,7 @@ class MerchantRecipeList { // vIndex: 6, symbol: // ?createTag@MerchantRecipeList@@UEBA?AV?$unique_ptr@VCompoundTag@@U?$default_delete@VCompoundTag@@@std@@@std@@_N@Z - virtual std::unique_ptr createTag(bool) const; + virtual std::unique_ptr createTag(bool includeNetInfo) const; // symbol: ??0MerchantRecipeList@@QEAA@XZ MCAPI MerchantRecipeList(); @@ -48,11 +48,11 @@ class MerchantRecipeList { // symbol: // ?getRecipeByNetId@MerchantRecipeList@@QEBAPEBVMerchantRecipe@@AEBV?$TypedServerNetId@URecipeNetIdTag@@I$0A@@@@Z - MCAPI class MerchantRecipe const* getRecipeByNetId(RecipeNetId const&) const; + MCAPI class MerchantRecipe const* getRecipeByNetId(RecipeNetId const& netId) const; // symbol: // ?getRecipeIndexByNetId@MerchantRecipeList@@QEBA?AV?$optional@_K@std@@AEBV?$TypedServerNetId@URecipeNetIdTag@@I$0A@@@@Z - MCAPI std::optional getRecipeIndexByNetId(RecipeNetId const&) const; + MCAPI std::optional getRecipeIndexByNetId(RecipeNetId const& netId) const; // symbol: ?isRequiredItem@MerchantRecipeList@@QEAA_NAEBVItemInstance@@0@Z MCAPI bool isRequiredItem(class ItemInstance const& offer, class ItemInstance const& requiredItem); diff --git a/src/mc/world/level/ActorEventCoordinator.h b/src/mc/world/level/ActorEventCoordinator.h index 56563348b6..672bcf4214 100644 --- a/src/mc/world/level/ActorEventCoordinator.h +++ b/src/mc/world/level/ActorEventCoordinator.h @@ -37,7 +37,7 @@ class ActorEventCoordinator { MCAPI void sendActorCreationAttemptFailed(class Actor& actor, std::string_view reason); // symbol: ?sendActorPredictedMove@ActorEventCoordinator@@QEAAXAEAVActor@@W4MovePredictionType@@AEBVVec3@@@Z - MCAPI void sendActorPredictedMove(class Actor& actor, ::MovePredictionType, class Vec3 const& pos); + MCAPI void sendActorPredictedMove(class Actor& actor, ::MovePredictionType predictionType, class Vec3 const& pos); // symbol: ?sendActorSneakChanged@ActorEventCoordinator@@QEAAXAEAVActor@@_N@Z MCAPI void sendActorSneakChanged(class Actor& actor, bool isSneaking); diff --git a/src/mc/world/level/BlockPos.h b/src/mc/world/level/BlockPos.h index c6a23f29f6..83f5521df5 100644 --- a/src/mc/world/level/BlockPos.h +++ b/src/mc/world/level/BlockPos.h @@ -30,7 +30,7 @@ class BlockPos { MCAPI BlockPos(class ChunkPos const& cp, int y); // symbol: ??0BlockPos@@QEAA@AEBVChunkPos@@AEBVChunkBlockPos@@F@Z - MCAPI BlockPos(class ChunkPos const& cp, class ChunkBlockPos const& offset, short); + MCAPI BlockPos(class ChunkPos const& cp, class ChunkBlockPos const& offset, short minDimensionHeight); // symbol: ??0BlockPos@@QEAA@MMM@Z MCAPI BlockPos(float x, float y, float z); diff --git a/src/mc/world/level/BlockPosIterator.h b/src/mc/world/level/BlockPosIterator.h index 8865f2d833..af60433d81 100644 --- a/src/mc/world/level/BlockPosIterator.h +++ b/src/mc/world/level/BlockPosIterator.h @@ -21,7 +21,7 @@ class BlockPosIterator { public: // NOLINTBEGIN // symbol: ??0FromCenter@BlockPosIterator@@QEAA@AEBVBlockPos@@0@Z - MCAPI FromCenter(class BlockPos const& pos, class BlockPos const&); + MCAPI FromCenter(class BlockPos const& pos, class BlockPos const& reach); // symbol: ?begin@FromCenter@BlockPosIterator@@QEBA?AV12@XZ MCAPI class BlockPosIterator::FromCenter begin() const; diff --git a/src/mc/world/level/BlockSource.h b/src/mc/world/level/BlockSource.h index dc2f1d4e77..1c48373634 100644 --- a/src/mc/world/level/BlockSource.h +++ b/src/mc/world/level/BlockSource.h @@ -136,7 +136,7 @@ class BlockSource { // vIndex: 29, symbol: // ?fetchEntities@BlockSource@@UEAA?AV?$span@V?$not_null@PEAVActor@@@gsl@@$0?0@gsl@@PEBVActor@@AEBVAABB@@_N2@Z virtual gsl::span> - fetchEntities(class Actor const* except, class AABB const& bb, bool, bool); + fetchEntities(class Actor const* except, class AABB const& bb, bool useHitbox, bool); // vIndex: 30, symbol: // ?fetchEntities@BlockSource@@UEAA?AV?$span@V?$not_null@PEAVActor@@@gsl@@$0?0@gsl@@W4ActorType@@AEBVAABB@@PEBVActor@@V?$function@$$A6A_NPEAVActor@@@Z@std@@@Z @@ -296,10 +296,10 @@ class BlockSource { // symbol: ?countBlocksOfType@BlockSource@@QEBA_KAEBVBlockDescriptor@@AEBVBlockPos@@1_K@Z MCAPI uint64 countBlocksOfType( - class BlockDescriptor const&, - class BlockPos const& min, - class BlockPos const& max, - uint64 maxCount + class BlockDescriptor const& blockDescriptor, + class BlockPos const& min, + class BlockPos const& max, + uint64 maxCount ) const; // symbol: @@ -352,8 +352,12 @@ class BlockSource { // symbol: // ?fetchEntities@BlockSource@@QEAA?AV?$span@V?$not_null@PEAVActor@@@gsl@@$0?0@gsl@@V?$span@V?$not_null@PEBVActor@@@gsl@@$0?0@3@AEBVAABB@@_N2@Z - MCAPI gsl::span> - fetchEntities(gsl::span> ignoredEntities, class AABB const& bb, bool, bool); + MCAPI gsl::span> fetchEntities( + gsl::span> ignoredEntities, + class AABB const& bb, + bool useHitbox, + bool + ); // symbol: // ?fetchEntities2@BlockSource@@QEAAAEBV?$vector@PEAVActor@@V?$allocator@PEAVActor@@@std@@@std@@W4ActorType@@AEBVAABB@@_N@Z @@ -691,7 +695,7 @@ class BlockSource { class WeakEntityRef entityRef, gsl::span> ignoredEntities, class AABB const& bb, - bool + bool useHitbox ); // symbol: ?_hasChunksAt@BlockSource@@IEBA_NAEBUBounds@@_N@Z @@ -731,7 +735,8 @@ class BlockSource { // symbol: ?_getRawBrightness@BlockSource@@AEBA?AUBrightness@@AEBVBlockPos@@U2@_N2@Z MCAPI struct Brightness - _getRawBrightness(class BlockPos const& pos, struct Brightness, bool propagate, bool accountForNight) const; + _getRawBrightness(class BlockPos const& pos, struct Brightness skyDarken, bool propagate, bool accountForNight) + const; // symbol: ?_removeFromTickingQueue@BlockSource@@AEAAXAEBVBlockPos@@AEBVBlock@@W4TickingQueueType@@@Z MCAPI void diff --git a/src/mc/world/level/BlockVolumeTarget.h b/src/mc/world/level/BlockVolumeTarget.h index 1f57c13d11..2a227307f9 100644 --- a/src/mc/world/level/BlockVolumeTarget.h +++ b/src/mc/world/level/BlockVolumeTarget.h @@ -103,7 +103,7 @@ class BlockVolumeTarget : public ::IBlockWorldGenAPI { // symbol: // ??0BlockVolumeTarget@@QEAA@AEAVBlockVolume@@AEAVLevel@@AEBVBiomeSource@@V?$AutomaticID@VDimension@@H@@AEBUWorldGenContext@@@Z MCAPI BlockVolumeTarget( - class BlockVolume&, + class BlockVolume& blockVolume, class Level& level, class BiomeSource const& biomeSource, DimensionType dimensionType, diff --git a/src/mc/world/level/ChunkBlockPos.h b/src/mc/world/level/ChunkBlockPos.h index 6996681ba6..1b485dc706 100644 --- a/src/mc/world/level/ChunkBlockPos.h +++ b/src/mc/world/level/ChunkBlockPos.h @@ -12,7 +12,7 @@ class ChunkBlockPos { public: // NOLINTBEGIN // symbol: ??0ChunkBlockPos@@QEAA@AEBVBlockPos@@F@Z - MCAPI ChunkBlockPos(class BlockPos const& pos, short); + MCAPI ChunkBlockPos(class BlockPos const& pos, short minDimensionHeight); // symbol: ??0ChunkBlockPos@@QEAA@EVChunkLocalHeight@@E@Z MCAPI ChunkBlockPos(uchar _x, class ChunkLocalHeight _y, uchar _z); diff --git a/src/mc/world/level/FileArchiver.h b/src/mc/world/level/FileArchiver.h index 4bcb75ef3c..b960e28f47 100644 --- a/src/mc/world/level/FileArchiver.h +++ b/src/mc/world/level/FileArchiver.h @@ -79,8 +79,8 @@ class FileArchiver : public ::Bedrock::EnableNonOwnerReferences { // symbol: // ??0FileArchiver@@QEAA@AEAVScheduler@@AEAVILevelListCache@@AEBV?$not_null@V?$NonOwnerPointer@VFilePathManager@Core@@@Bedrock@@@gsl@@AEBV?$not_null@V?$NonOwnerPointer@VIResourcePackRepository@@@Bedrock@@@4@_NV?$unique_ptr@VIWorldConverter@FileArchiver@@U?$default_delete@VIWorldConverter@FileArchiver@@@std@@@std@@V?$not_null@V?$NonOwnerPointer@$$CBVIContentKeyProvider@@@Bedrock@@@4@V?$not_null@V?$NonOwnerPointer@VLevelDbEnv@@@Bedrock@@@4@V?$function@$$A6AXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@7@@Z MCAPI FileArchiver( - class Scheduler& scheduler, - class ILevelListCache&, + class Scheduler& scheduler, + class ILevelListCache& levelListCache, Bedrock::NotNullNonOwnerPtr const& pathManager, Bedrock::NotNullNonOwnerPtr const& resourcePackRepository, bool, diff --git a/src/mc/world/level/Level.h b/src/mc/world/level/Level.h index 8be25c0ab4..c26a6788c0 100644 --- a/src/mc/world/level/Level.h +++ b/src/mc/world/level/Level.h @@ -154,13 +154,13 @@ class Level { class UserEntityIdentifierComponent const* userIdentifier ); + // symbol: ?broadcastLocalEvent@Level@@UEAAXAEAVBlockSource@@W4LevelEvent@@AEBVVec3@@H@Z + MCVAPI void broadcastLocalEvent(class BlockSource& region, ::LevelEvent type, class Vec3 const& pos, int data); + // symbol: ?broadcastLocalEvent@Level@@UEAAXAEAVBlockSource@@W4LevelEvent@@AEBVVec3@@AEBVBlock@@@Z MCVAPI void broadcastLocalEvent(class BlockSource& region, ::LevelEvent type, class Vec3 const& pos, class Block const& block); - // symbol: ?broadcastLocalEvent@Level@@UEAAXAEAVBlockSource@@W4LevelEvent@@AEBVVec3@@H@Z - MCVAPI void broadcastLocalEvent(class BlockSource& region, ::LevelEvent type, class Vec3 const& pos, int data); - // symbol: // ?broadcastSoundEvent@Level@@UEAAXAEAVBlockSource@@W4LevelSoundEvent@Legacy@Puv@@AEBVVec3@@AEBVBlock@@AEBUActorDefinitionIdentifier@@_N5@Z MCVAPI void broadcastSoundEvent( @@ -174,25 +174,25 @@ class Level { ); // symbol: - // ?broadcastSoundEvent@Level@@UEAAXAEAVDimension@@W4LevelSoundEvent@Legacy@Puv@@AEBVVec3@@HAEBUActorDefinitionIdentifier@@_N4@Z + // ?broadcastSoundEvent@Level@@UEAAXAEAVBlockSource@@W4LevelSoundEvent@Legacy@Puv@@AEBVVec3@@HAEBUActorDefinitionIdentifier@@_N4@Z MCVAPI void broadcastSoundEvent( - class Dimension& dimension, + class BlockSource& region, ::Puv::Legacy::LevelSoundEvent type, class Vec3 const& pos, int data, - struct ActorDefinitionIdentifier const& identifier, + struct ActorDefinitionIdentifier const& entityType, bool isBabyMob, bool isGlobal ); // symbol: - // ?broadcastSoundEvent@Level@@UEAAXAEAVBlockSource@@W4LevelSoundEvent@Legacy@Puv@@AEBVVec3@@HAEBUActorDefinitionIdentifier@@_N4@Z + // ?broadcastSoundEvent@Level@@UEAAXAEAVDimension@@W4LevelSoundEvent@Legacy@Puv@@AEBVVec3@@HAEBUActorDefinitionIdentifier@@_N4@Z MCVAPI void broadcastSoundEvent( - class BlockSource& region, + class Dimension& dimension, ::Puv::Legacy::LevelSoundEvent type, class Vec3 const& pos, int data, - struct ActorDefinitionIdentifier const& entityType, + struct ActorDefinitionIdentifier const& identifier, bool isBabyMob, bool isGlobal ); @@ -291,33 +291,33 @@ class Level { MCVAPI std::unique_ptr findPath(class Actor& from, int xBest, int yBest, int zBest, class NavigationComponent& navigation); - // symbol: ?findPlayer@Level@@UEBAPEAVPlayer@@V?$function@$$A6A_NAEBVPlayer@@@Z@std@@@Z - MCVAPI class Player* findPlayer(std::function pred) const; - // symbol: ?findPlayer@Level@@UEBAPEAVPlayer@@V?$function@$$A6A_NAEBVWeakEntityRef@@@Z@std@@@Z MCVAPI class Player* findPlayer(std::function pred) const; + // symbol: ?findPlayer@Level@@UEBAPEAVPlayer@@V?$function@$$A6A_NAEBVPlayer@@@Z@std@@@Z + MCVAPI class Player* findPlayer(std::function pred) const; + // symbol: ?flushRunTimeLighting@Level@@UEAAXXZ MCVAPI void flushRunTimeLighting(); - // symbol: ?forEachDimension@Level@@UEBAXV?$function@$$A6A_NAEBVDimension@@@Z@std@@@Z - MCVAPI void forEachDimension(std::function callback) const; - // symbol: ?forEachDimension@Level@@UEAAXV?$function@$$A6A_NAEAVDimension@@@Z@std@@@Z MCVAPI void forEachDimension(std::function callback); - // symbol: ?forEachPlayer@Level@@UEBAXV?$function@$$A6A_NAEBVPlayer@@@Z@std@@@Z - MCVAPI void forEachPlayer(std::function callback) const; + // symbol: ?forEachDimension@Level@@UEBAXV?$function@$$A6A_NAEBVDimension@@@Z@std@@@Z + MCVAPI void forEachDimension(std::function callback) const; // symbol: ?forEachPlayer@Level@@UEAAXV?$function@$$A6A_NAEAVPlayer@@@Z@std@@@Z MCVAPI void forEachPlayer(std::function callback); - // symbol: ?forEachUser@Level@@UEBAXV?$function@$$A6A_NAEBVEntityContext@@@Z@std@@@Z - MCVAPI void forEachUser(std::function callback) const; + // symbol: ?forEachPlayer@Level@@UEBAXV?$function@$$A6A_NAEBVPlayer@@@Z@std@@@Z + MCVAPI void forEachPlayer(std::function callback) const; // symbol: ?forEachUser@Level@@UEAAXV?$function@$$A6A_NAEAVEntityContext@@@Z@std@@@Z MCVAPI void forEachUser(std::function callback); + // symbol: ?forEachUser@Level@@UEBAXV?$function@$$A6A_NAEBVEntityContext@@@Z@std@@@Z + MCVAPI void forEachUser(std::function callback) const; + // symbol: ?forceFlushRemovedPlayers@Level@@UEAAXXZ MCVAPI void forceFlushRemovedPlayers(); @@ -380,24 +380,24 @@ class Level { // symbol: ?getBiomeComponentFactory@Level@@UEAAAEAVBiomeComponentFactory@@XZ MCVAPI class BiomeComponentFactory& getBiomeComponentFactory(); - // symbol: ?getBiomeManager@Level@@UEAAAEAVBiomeManager@@XZ - MCVAPI class BiomeManager& getBiomeManager(); - // symbol: ?getBiomeManager@Level@@UEBAAEBVBiomeManager@@XZ MCVAPI class BiomeManager const& getBiomeManager() const; - // symbol: ?getBiomeRegistry@Level@@UEBAAEBVBiomeRegistry@@XZ - MCVAPI class BiomeRegistry const& getBiomeRegistry() const; + // symbol: ?getBiomeManager@Level@@UEAAAEAVBiomeManager@@XZ + MCVAPI class BiomeManager& getBiomeManager(); // symbol: ?getBiomeRegistry@Level@@UEAAAEAVBiomeRegistry@@XZ MCVAPI class BiomeRegistry& getBiomeRegistry(); - // symbol: ?getBlockComponentFactory@Level@@UEAAAEAVBlockComponentFactory@@XZ - MCVAPI class BlockComponentFactory& getBlockComponentFactory(); + // symbol: ?getBiomeRegistry@Level@@UEBAAEBVBiomeRegistry@@XZ + MCVAPI class BiomeRegistry const& getBiomeRegistry() const; // symbol: ?getBlockComponentFactory@Level@@UEBAAEBVBlockComponentFactory@@XZ MCVAPI class BlockComponentFactory const& getBlockComponentFactory() const; + // symbol: ?getBlockComponentFactory@Level@@UEAAAEAVBlockComponentFactory@@XZ + MCVAPI class BlockComponentFactory& getBlockComponentFactory(); + // symbol: ?getBlockDefinitions@Level@@UEBAPEAVBlockDefinitionGroup@@XZ MCVAPI class BlockDefinitionGroup* getBlockDefinitions() const; @@ -420,12 +420,12 @@ class Level { // ?getBossEventSubscriptionManager@Level@@UEAA?AV?$not_null@V?$NonOwnerPointer@VBossEventSubscriptionManager@@@Bedrock@@@gsl@@XZ MCVAPI Bedrock::NotNullNonOwnerPtr getBossEventSubscriptionManager(); - // symbol: ?getCameraPresets@Level@@UEBAAEBVCameraPresets@@XZ - MCVAPI class CameraPresets const& getCameraPresets() const; - // symbol: ?getCameraPresets@Level@@UEAAAEAVCameraPresets@@XZ MCVAPI class CameraPresets& getCameraPresets(); + // symbol: ?getCameraPresets@Level@@UEBAAEBVCameraPresets@@XZ + MCVAPI class CameraPresets const& getCameraPresets() const; + // symbol: ?getCapabilities@Level@@UEBAAEBUISharedController@PlayerCapabilities@@XZ MCVAPI struct PlayerCapabilities::ISharedController const& getCapabilities() const; @@ -511,18 +511,18 @@ class Level { // symbol: ?getEventing@Level@@UEAAAEAVIMinecraftEventing@@XZ MCVAPI class IMinecraftEventing& getEventing(); - // symbol: ?getFeatureRegistry@Level@@UEBAAEBVFeatureRegistry@@XZ - MCVAPI class FeatureRegistry const& getFeatureRegistry() const; - // symbol: ?getFeatureRegistry@Level@@UEAAAEAVFeatureRegistry@@XZ MCVAPI class FeatureRegistry& getFeatureRegistry(); - // symbol: ?getFeatureTypeFactory@Level@@UEBAAEBVFeatureTypeFactory@@XZ - MCVAPI class FeatureTypeFactory const& getFeatureTypeFactory() const; + // symbol: ?getFeatureRegistry@Level@@UEBAAEBVFeatureRegistry@@XZ + MCVAPI class FeatureRegistry const& getFeatureRegistry() const; // symbol: ?getFeatureTypeFactory@Level@@UEAAAEAVFeatureTypeFactory@@XZ MCVAPI class FeatureTypeFactory& getFeatureTypeFactory(); + // symbol: ?getFeatureTypeFactory@Level@@UEBAAEBVFeatureTypeFactory@@XZ + MCVAPI class FeatureTypeFactory const& getFeatureTypeFactory() const; + // symbol: ?getGameRules@Level@@UEAAAEAVGameRules@@XZ MCVAPI class GameRules& getGameRules(); @@ -550,12 +550,12 @@ class Level { // symbol: ?getItemRegistry@Level@@UEBA?AVItemRegistryRef@@XZ MCVAPI class ItemRegistryRef getItemRegistry() const; - // symbol: ?getJigsawStructureRegistry@Level@@UEAAAEAVJigsawStructureRegistry@@XZ - MCVAPI class JigsawStructureRegistry& getJigsawStructureRegistry(); - // symbol: ?getJigsawStructureRegistry@Level@@UEBAAEBVJigsawStructureRegistry@@XZ MCVAPI class JigsawStructureRegistry const& getJigsawStructureRegistry() const; + // symbol: ?getJigsawStructureRegistry@Level@@UEAAAEAVJigsawStructureRegistry@@XZ + MCVAPI class JigsawStructureRegistry& getJigsawStructureRegistry(); + // symbol: ?getLANBroadcast@Level@@UEBA_NXZ MCVAPI bool getLANBroadcast() const; @@ -586,12 +586,12 @@ class Level { // symbol: ?getLevelSoundManager@Level@@UEAA?AV?$not_null@V?$NonOwnerPointer@VLevelSoundManager@@@Bedrock@@@gsl@@XZ MCVAPI Bedrock::NotNullNonOwnerPtr getLevelSoundManager(); - // symbol: ?getLevelStorage@Level@@UEAAAEAVLevelStorage@@XZ - MCVAPI class LevelStorage& getLevelStorage(); - // symbol: ?getLevelStorage@Level@@UEBAAEBVLevelStorage@@XZ MCVAPI class LevelStorage const& getLevelStorage() const; + // symbol: ?getLevelStorage@Level@@UEAAAEAVLevelStorage@@XZ + MCVAPI class LevelStorage& getLevelStorage(); + // symbol: // ?getLightTextureImageBuilderFactory@Level@@UEBAAEBV?$Factory@VBaseLightTextureImageBuilder@@AEAVLevel@@AEAVScheduler@@@@XZ MCVAPI class Factory const& @@ -644,12 +644,12 @@ class Level { // symbol: ?getPacketSender@Level@@UEBAPEAVPacketSender@@XZ MCVAPI class PacketSender* getPacketSender() const; - // symbol: ?getPauseManager@Level@@UEAA?AV?$StackRefResult@VPauseManager@@@@XZ - MCVAPI class StackRefResult getPauseManager(); - // symbol: ?getPauseManager@Level@@UEBA?AV?$StackRefResult@$$CBVPauseManager@@@@XZ MCVAPI class StackRefResult getPauseManager() const; + // symbol: ?getPauseManager@Level@@UEAA?AV?$StackRefResult@VPauseManager@@@@XZ + MCVAPI class StackRefResult getPauseManager(); + // symbol: ?getPhotoStorage@Level@@UEAAAEAVPhotoStorage@@XZ MCVAPI class PhotoStorage& getPhotoStorage(); @@ -663,15 +663,15 @@ class Level { // ?getPlatformPlayer@Level@@UEBAPEAVPlayer@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z MCVAPI class Player* getPlatformPlayer(std::string const& platformOnlineId) const; - // symbol: ?getPlayer@Level@@UEBAPEAVPlayer@@AEBVUUID@mce@@@Z - MCVAPI class Player* getPlayer(class mce::UUID const& uuid) const; - // symbol: ?getPlayer@Level@@UEBAPEAVPlayer@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z MCVAPI class Player* getPlayer(std::string const& name) const; // symbol: ?getPlayer@Level@@UEBAPEAVPlayer@@UActorUniqueID@@@Z MCVAPI class Player* getPlayer(struct ActorUniqueID entityID) const; + // symbol: ?getPlayer@Level@@UEBAPEAVPlayer@@AEBVUUID@mce@@@Z + MCVAPI class Player* getPlayer(class mce::UUID const& uuid) const; + // symbol: ?getPlayerAbilities@Level@@UEAAPEAVLayeredAbilities@@AEBUActorUniqueID@@@Z MCVAPI class LayeredAbilities* getPlayerAbilities(struct ActorUniqueID const& playerId); @@ -686,14 +686,14 @@ class Level { // ?getPlayerFromServerId@Level@@UEBAPEAVPlayer@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z MCVAPI class Player* getPlayerFromServerId(std::string const& serverId) const; - // symbol: - // ?getPlayerList@Level@@UEAAAEAV?$unordered_map@VUUID@mce@@VPlayerListEntry@@U?$hash@VUUID@mce@@@std@@U?$equal_to@VUUID@mce@@@5@V?$allocator@U?$pair@$$CBVUUID@mce@@VPlayerListEntry@@@std@@@5@@std@@XZ - MCVAPI std::unordered_map& getPlayerList(); - // symbol: // ?getPlayerList@Level@@UEBAAEBV?$unordered_map@VUUID@mce@@VPlayerListEntry@@U?$hash@VUUID@mce@@@std@@U?$equal_to@VUUID@mce@@@5@V?$allocator@U?$pair@$$CBVUUID@mce@@VPlayerListEntry@@@std@@@5@@std@@XZ MCVAPI std::unordered_map const& getPlayerList() const; + // symbol: + // ?getPlayerList@Level@@UEAAAEAV?$unordered_map@VUUID@mce@@VPlayerListEntry@@U?$hash@VUUID@mce@@@std@@U?$equal_to@VUUID@mce@@@5@V?$allocator@U?$pair@$$CBVUUID@mce@@VPlayerListEntry@@@std@@@5@@std@@XZ + MCVAPI std::unordered_map& getPlayerList(); + // symbol: ?getPlayerMovementSettings@Level@@UEBAAEBUPlayerMovementSettings@@XZ MCVAPI struct PlayerMovementSettings const& getPlayerMovementSettings() const; @@ -744,12 +744,12 @@ class Level { // symbol: ?getSavedData@Level@@UEAAAEAVSavedDataStorage@@XZ MCVAPI class SavedDataStorage& getSavedData(); - // symbol: ?getScoreboard@Level@@UEBAAEBVScoreboard@@XZ - MCVAPI class Scoreboard const& getScoreboard() const; - // symbol: ?getScoreboard@Level@@UEAAAEAVScoreboard@@XZ MCVAPI class Scoreboard& getScoreboard(); + // symbol: ?getScoreboard@Level@@UEBAAEBVScoreboard@@XZ + MCVAPI class Scoreboard const& getScoreboard() const; + // symbol: // ?getScreenshotsFolder@Level@@UEBA?AV?$PathBuffer@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Core@@XZ MCVAPI class Core::PathBuffer getScreenshotsFolder() const; @@ -790,21 +790,21 @@ class Level { // symbol: ?getSpecialMultiplier@Level@@UEBAMV?$AutomaticID@VDimension@@H@@@Z MCVAPI float getSpecialMultiplier(DimensionType dimensionType) const; - // symbol: ?getStructureManager@Level@@UEBA?BV?$not_null@V?$NonOwnerPointer@VStructureManager@@@Bedrock@@@gsl@@XZ - MCVAPI Bedrock::NotNullNonOwnerPtr const getStructureManager() const; - // symbol: ?getStructureManager@Level@@UEAA?AV?$not_null@V?$NonOwnerPointer@VStructureManager@@@Bedrock@@@gsl@@XZ MCVAPI Bedrock::NotNullNonOwnerPtr getStructureManager(); + // symbol: ?getStructureManager@Level@@UEBA?BV?$not_null@V?$NonOwnerPointer@VStructureManager@@@Bedrock@@@gsl@@XZ + MCVAPI Bedrock::NotNullNonOwnerPtr const getStructureManager() const; + // symbol: ?getSubChunkRequestManager@Level@@UEAAPEAVSubChunkRequestManager@@XZ MCVAPI class SubChunkRequestManager* getSubChunkRequestManager(); - // symbol: ?getSurfaceBuilderRegistry@Level@@UEAAAEAVSurfaceBuilderRegistry@@XZ - MCVAPI class SurfaceBuilderRegistry& getSurfaceBuilderRegistry(); - // symbol: ?getSurfaceBuilderRegistry@Level@@UEBAAEBVSurfaceBuilderRegistry@@XZ MCVAPI class SurfaceBuilderRegistry const& getSurfaceBuilderRegistry() const; + // symbol: ?getSurfaceBuilderRegistry@Level@@UEAAAEAVSurfaceBuilderRegistry@@XZ + MCVAPI class SurfaceBuilderRegistry& getSurfaceBuilderRegistry(); + // symbol: ?getSyncTasksGroup@Level@@UEAAAEAVTaskGroup@@XZ MCVAPI class TaskGroup& getSyncTasksGroup(); @@ -837,12 +837,12 @@ class Level { // symbol: ?getTrimMaterialRegistry@Level@@UEAA?AV?$weak_ptr@VTrimMaterialRegistry@@@std@@XZ MCVAPI std::weak_ptr getTrimMaterialRegistry(); - // symbol: ?getTrimPatternRegistry@Level@@UEBA?AV?$weak_ptr@$$CBVTrimPatternRegistry@@@std@@XZ - MCVAPI std::weak_ptr getTrimPatternRegistry() const; - // symbol: ?getTrimPatternRegistry@Level@@UEAA?AV?$weak_ptr@VTrimPatternRegistry@@@std@@XZ MCVAPI std::weak_ptr getTrimPatternRegistry(); + // symbol: ?getTrimPatternRegistry@Level@@UEBA?AV?$weak_ptr@$$CBVTrimPatternRegistry@@@std@@XZ + MCVAPI std::weak_ptr getTrimPatternRegistry() const; + // symbol: ?getUnknownBlockTypeRegistry@Level@@UEAA?AV?$NonOwnerPointer@VIUnknownBlockTypeRegistry@@@Bedrock@@XZ MCVAPI class Bedrock::NonOwnerPointer getUnknownBlockTypeRegistry(); @@ -986,12 +986,12 @@ class Level { // symbol: ?pauseAndFlushTaskGroups@Level@@UEAAXXZ MCVAPI void pauseAndFlushTaskGroups(); - // symbol: ?playSound@Level@@UEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVVec3@@MM@Z - MCVAPI void playSound(std::string const& name, class Vec3 const& pos, float volume, float pitch); - // symbol: ?playSound@Level@@UEAAXW4LevelSoundEvent@Legacy@Puv@@AEBVVec3@@MM@Z MCVAPI void playSound(::Puv::Legacy::LevelSoundEvent type, class Vec3 const& pos, float volume, float pitch); + // symbol: ?playSound@Level@@UEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVVec3@@MM@Z + MCVAPI void playSound(std::string const& name, class Vec3 const& pos, float volume, float pitch); + // symbol: ?playSound@Level@@UEAAXW4LevelSoundEvent@Legacy@Puv@@AEBVVec3@@HAEBUActorDefinitionIdentifier@@_N3@Z MCVAPI void playSound( ::Puv::Legacy::LevelSoundEvent type, @@ -1003,9 +1003,9 @@ class Level { ); // symbol: - // ?playSound@Level@@UEAAXAEBVIConstBlockSource@@W4LevelSoundEvent@Legacy@Puv@@AEBVVec3@@HAEBUActorDefinitionIdentifier@@_N4@Z + // ?playSound@Level@@UEAAXV?$AutomaticID@VDimension@@H@@W4LevelSoundEvent@Legacy@Puv@@AEBVVec3@@HAEBUActorDefinitionIdentifier@@_N4@Z MCVAPI void playSound( - class IConstBlockSource const& region, + DimensionType dimension, ::Puv::Legacy::LevelSoundEvent type, class Vec3 const& pos, int data, @@ -1015,9 +1015,9 @@ class Level { ); // symbol: - // ?playSound@Level@@UEAAXV?$AutomaticID@VDimension@@H@@W4LevelSoundEvent@Legacy@Puv@@AEBVVec3@@HAEBUActorDefinitionIdentifier@@_N4@Z + // ?playSound@Level@@UEAAXAEBVIConstBlockSource@@W4LevelSoundEvent@Legacy@Puv@@AEBVVec3@@HAEBUActorDefinitionIdentifier@@_N4@Z MCVAPI void playSound( - DimensionType dimension, + class IConstBlockSource const& region, ::Puv::Legacy::LevelSoundEvent type, class Vec3 const& pos, int data, diff --git a/src/mc/world/level/LevelListCache.h b/src/mc/world/level/LevelListCache.h index 09f06b053b..3b30e02df3 100644 --- a/src/mc/world/level/LevelListCache.h +++ b/src/mc/world/level/LevelListCache.h @@ -133,7 +133,7 @@ class LevelListCache { MCVAPI void updateLevelCache(std::string const& levelId); // symbol: ??0LevelListCache@@QEAA@AEAVLevelStorageSource@@$$QEAV?$function@$$A6A_NXZ@std@@@Z - MCAPI LevelListCache(class LevelStorageSource&, std::function&&); + MCAPI LevelListCache(class LevelStorageSource& levelStorageSource, std::function&& checkIsSafeToFlushCache); // NOLINTEND @@ -147,7 +147,7 @@ class LevelListCache { // symbol: // ?_addToCache@LevelListCache@@AEAAPEAVLevelCache@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@$$QEAV2@@Z - MCAPI class LevelCache* _addToCache(std::string const& levelId, class LevelCache&&); + MCAPI class LevelCache* _addToCache(std::string const& levelId, class LevelCache&& levelCache); // symbol: // ?_createAndAddToCache@LevelListCache@@AEAAPEAVLevelCache@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVPath@Core@@@Z diff --git a/src/mc/world/level/LevelSettings.h b/src/mc/world/level/LevelSettings.h index c2fe3f945a..b06aa79061 100644 --- a/src/mc/world/level/LevelSettings.h +++ b/src/mc/world/level/LevelSettings.h @@ -264,7 +264,7 @@ class LevelSettings { MCAPI class LevelSettings& setEmoteChatMuted(bool val); // symbol: ?setExperiments@LevelSettings@@QEAAAEAV1@AEBVExperimentStorage@@@Z - MCAPI class LevelSettings& setExperiments(class ExperimentStorage const&); + MCAPI class LevelSettings& setExperiments(class ExperimentStorage const& experiments); // symbol: ?setForceGameType@LevelSettings@@QEAAAEAV1@_N@Z MCAPI class LevelSettings& setForceGameType(bool value); @@ -294,7 +294,7 @@ class LevelSettings { MCAPI class LevelSettings& setServerChunkTickRange(uint serverChunkTickRange); // symbol: ?setSpawnSettings@LevelSettings@@QEAAAEAV1@USpawnSettings@@@Z - MCAPI class LevelSettings& setSpawnSettings(struct SpawnSettings); + MCAPI class LevelSettings& setSpawnSettings(struct SpawnSettings spawnSettings); // symbol: ?setTexturePackRequired@LevelSettings@@QEAAAEAV1@_N@Z MCAPI class LevelSettings& setTexturePackRequired(bool texturePackRequired); diff --git a/src/mc/world/level/MolangVariableMap.h b/src/mc/world/level/MolangVariableMap.h index 721d69fbda..58b9f02e95 100644 --- a/src/mc/world/level/MolangVariableMap.h +++ b/src/mc/world/level/MolangVariableMap.h @@ -24,7 +24,8 @@ class MolangVariableMap { MCAPI struct MolangScriptArg const& getMolangVariable(uint64 variableNameHash, char const*) const; // symbol: ?getMolangVariable@MolangVariableMap@@QEBAAEBUMolangScriptArg@@AEB_KAEA_N@Z - MCAPI struct MolangScriptArg const& getMolangVariable(uint64 const& variableNameHash, bool&) const; + MCAPI struct MolangScriptArg const& + getMolangVariable(uint64 const& variableNameHash, bool& doesVariableExist) const; // symbol: ??4MolangVariableMap@@QEAAAEAV0@$$QEAV0@@Z MCAPI class MolangVariableMap& operator=(class MolangVariableMap&& rhs); @@ -63,7 +64,8 @@ class MolangVariableMap { MCAPI class MolangVariable* _getOrAddMolangVariable(::MolangVariableIndex molangVariableIndex); // symbol: ?_getOrAddMolangVariable@MolangVariableMap@@AEAAPEAVMolangVariable@@AEB_KPEBD_N@Z - MCAPI class MolangVariable* _getOrAddMolangVariable(uint64 const& variableNameHash, char const* variableName, bool); + MCAPI class MolangVariable* + _getOrAddMolangVariable(uint64 const& variableNameHash, char const* variableName, bool allowSpecialCharacters); // NOLINTEND }; diff --git a/src/mc/world/level/PositionTrackingDBClient.h b/src/mc/world/level/PositionTrackingDBClient.h index 11a4ffca70..e16dca7720 100644 --- a/src/mc/world/level/PositionTrackingDBClient.h +++ b/src/mc/world/level/PositionTrackingDBClient.h @@ -25,7 +25,7 @@ class PositionTrackingDBClient { // symbol: // ?findTracker@PositionTrackingDBClient@PositionTrackingDB@@QEAA?AW4ResultCode@2@AEBVPositionTrackingId@@PEAPEAVTrackingRecord@2@@Z MCAPI ::PositionTrackingDB::ResultCode - findTracker(class PositionTrackingId const& id, class PositionTrackingDB::TrackingRecord**); + findTracker(class PositionTrackingId const& id, class PositionTrackingDB::TrackingRecord** outRecord); // NOLINTEND }; diff --git a/src/mc/world/level/PositionTrackingDBServer.h b/src/mc/world/level/PositionTrackingDBServer.h index d796ea5cf5..6f0defa29b 100644 --- a/src/mc/world/level/PositionTrackingDBServer.h +++ b/src/mc/world/level/PositionTrackingDBServer.h @@ -33,16 +33,17 @@ class PositionTrackingDBServer { // symbol: // ?createTracker@PositionTrackingDBServer@PositionTrackingDB@@QEAA?AVPositionTrackingId@@AEBVBlockPos@@AEBV?$AutomaticID@VDimension@@H@@@Z - MCAPI class PositionTrackingId createTracker(class BlockPos const&, DimensionType const& dimension); + MCAPI class PositionTrackingId createTracker(class BlockPos const& positionToTrack, DimensionType const& dimension); // symbol: // ?destroyTracker@PositionTrackingDBServer@PositionTrackingDB@@QEAA?AW4ResultCode@2@AEBVPositionTrackingId@@_N@Z - MCAPI ::PositionTrackingDB::ResultCode destroyTracker(class PositionTrackingId const& id, bool); + MCAPI ::PositionTrackingDB::ResultCode + destroyTracker(class PositionTrackingId const& id, bool forceLocalCacheEntry); // symbol: // ?findTracker@PositionTrackingDBServer@PositionTrackingDB@@QEAA?AW4ResultCode@2@AEBVPositionTrackingId@@PEAPEAVTrackingRecord@2@@Z MCAPI ::PositionTrackingDB::ResultCode - findTracker(class PositionTrackingId const& id, class PositionTrackingDB::TrackingRecord**); + findTracker(class PositionTrackingId const& id, class PositionTrackingDB::TrackingRecord** outRecord); // symbol: // ?onReceivePacket@PositionTrackingDBServer@PositionTrackingDB@@QEAAXAEBVPositionTrackingDBClientRequestPacket@@@Z @@ -66,7 +67,7 @@ class PositionTrackingDBServer { // symbol: // ?_initializeNewPositionTrackerId@PositionTrackingDBServer@PositionTrackingDB@@AEAAXAEAVPositionTrackingId@@_N@Z - MCAPI void _initializeNewPositionTrackerId(class PositionTrackingId&, bool); + MCAPI void _initializeNewPositionTrackerId(class PositionTrackingId& inOut, bool writeToPersistent); // symbol: ?_updateRecordDirtyStatus@PositionTrackingDBServer@PositionTrackingDB@@AEAAXPEAVTrackingRecord@2@@Z MCAPI void _updateRecordDirtyStatus(class PositionTrackingDB::TrackingRecord* record); diff --git a/src/mc/world/level/RuntimeLightingManager.h b/src/mc/world/level/RuntimeLightingManager.h index d2a1de610d..890b8b0d01 100644 --- a/src/mc/world/level/RuntimeLightingManager.h +++ b/src/mc/world/level/RuntimeLightingManager.h @@ -58,13 +58,13 @@ class RuntimeLightingManager { // NOLINTBEGIN // symbol: // ?_checkForRelightingTask@RuntimeLightingManager@@AEAAXV?$duration@_JU?$ratio@$00$0DLJKMKAA@@std@@@chrono@std@@@Z - MCAPI void _checkForRelightingTask(std::chrono::nanoseconds); + MCAPI void _checkForRelightingTask(std::chrono::nanoseconds timeLimit); // symbol: ?_getListOfChunksWithPlayerDistance@RuntimeLightingManager@@AEAAXXZ MCAPI void _getListOfChunksWithPlayerDistance(); // symbol: ?_relightChunks@RuntimeLightingManager@@AEAAXV?$duration@_JU?$ratio@$00$0DLJKMKAA@@std@@@chrono@std@@@Z - MCAPI void _relightChunks(std::chrono::nanoseconds); + MCAPI void _relightChunks(std::chrono::nanoseconds timeLimit); // symbol: ?_removeProcessedSubchunks@RuntimeLightingManager@@AEAAXXZ MCAPI void _removeProcessedSubchunks(); diff --git a/src/mc/world/level/ScatterParams.h b/src/mc/world/level/ScatterParams.h index fb35118222..59f79a1687 100644 --- a/src/mc/world/level/ScatterParams.h +++ b/src/mc/world/level/ScatterParams.h @@ -44,7 +44,7 @@ class ScatterParams { MCAPI CoordinateRange(struct ScatterParams::CoordinateRange const&); // symbol: ?_eval@CoordinateRange@ScatterParams@@QEBAHHHAEAIAEAVRandom@@@Z - MCAPI int _eval(int, int, uint& stepIndex, class Random& random) const; + MCAPI int _eval(int evaluatedMin, int evaluatedMax, uint& stepIndex, class Random& random) const; // symbol: ??1CoordinateRange@ScatterParams@@QEAA@XZ MCAPI ~CoordinateRange(); diff --git a/src/mc/world/level/SpawnFinder.h b/src/mc/world/level/SpawnFinder.h index 86a7ded6be..0a97d2d32b 100644 --- a/src/mc/world/level/SpawnFinder.h +++ b/src/mc/world/level/SpawnFinder.h @@ -13,7 +13,7 @@ class SpawnFinder { // NOLINTBEGIN // symbol: ?findStandupPosition@SpawnFinder@@SA?AV?$optional@VBlockPos@@@std@@AEBVBlockPos@@AEBVBlockSource@@@Z MCAPI static std::optional - findStandupPosition(class BlockPos const&, class BlockSource const& region); + findStandupPosition(class BlockPos const& requestedPosition, class BlockSource const& region); // symbol: ?isStandupPosition@SpawnFinder@@SA_NAEBVBlockPos@@AEBVBlockSource@@@Z MCAPI static bool isStandupPosition(class BlockPos const& position, class BlockSource const& region); diff --git a/src/mc/world/level/Spawner.h b/src/mc/world/level/Spawner.h index 1fb5550fe7..47e8337d4d 100644 --- a/src/mc/world/level/Spawner.h +++ b/src/mc/world/level/Spawner.h @@ -32,7 +32,7 @@ class Spawner { MCAPI void postProcessSpawnMobs(class BlockSource& region, int xo, int zo, class Random& random); // symbol: ?setSpawnSettings@Spawner@@QEAAXAEBUSpawnSettings@@@Z - MCAPI void setSpawnSettings(struct SpawnSettings const&); + MCAPI void setSpawnSettings(struct SpawnSettings const& spawnSettings); // symbol: ?spawnItem@Spawner@@QEAAPEAVItemActor@@AEAVBlockSource@@AEBVItemStack@@PEAVActor@@AEBVVec3@@H@Z MCAPI class ItemActor* spawnItem( @@ -58,11 +58,11 @@ class Spawner { // symbol: // ?spawnMobGroup@Spawner@@QEAA?AV?$unordered_set@UActorUniqueID@@U?$hash@UActorUniqueID@@@std@@U?$equal_to@UActorUniqueID@@@3@V?$allocator@UActorUniqueID@@@3@@std@@AEAVBlockSource@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@AEBVVec3@@_N3$$QEAV?$function@$$A6AXAEAVMob@@@Z@3@@Z MCAPI std::unordered_set spawnMobGroup( - class BlockSource& region, - std::string const& spawnGroupId, - class Vec3 const& pos, - bool doScatter, - bool, + class BlockSource& region, + std::string const& spawnGroupId, + class Vec3 const& pos, + bool doScatter, + bool validateDistToPlayer, std::function&& spawnedCallback ); @@ -85,12 +85,16 @@ class Spawner { class BlockSource const& region, class BlockPos& pos, ::MaterialType canSpawnIn, - ::SpawnBlockRequirements + ::SpawnBlockRequirements spawnBlockRequirements ); // symbol: ?isSpawnPositionOk@Spawner@@SA_NAEBVMobSpawnRules@@AEAVBlockSource@@AEBVBlockPos@@_N@Z - MCAPI static bool - isSpawnPositionOk(class MobSpawnRules const& rules, class BlockSource& region, class BlockPos const& pos, bool); + MCAPI static bool isSpawnPositionOk( + class MobSpawnRules const& rules, + class BlockSource& region, + class BlockPos const& pos, + bool validateDistToPlayer + ); // NOLINTEND @@ -99,22 +103,34 @@ class Spawner { // symbol: // ?_postProcessSpawnMobs@Spawner@@IEAAXAEAVBlockSource@@HHAEAVRandomize@@_NAEBV?$function@$$A6AXAEBVBlockPos@@AEAVSpawnConditions@@@Z@std@@AEBV?$function@$$A6A_NAEBVBlockSource@@VBlockPos@@@Z@5@@Z MCAPI void - _postProcessSpawnMobs(class BlockSource& region, int xo, int zo, class Randomize& randomize, bool, std::function const&, std::function const&); + _postProcessSpawnMobs(class BlockSource& region, int xo, int zo, class Randomize& randomize, bool, std::function const& spawnMobClusterCallback, std::function const&); // symbol: // ?_spawnStructureMob@Spawner@@IEAAXAEAVBlockSource@@AEBVBlockPos@@AEBUHardcodedSpawningArea@LevelChunk@@AEBVSpawnConditions@@@Z - MCAPI void - _spawnStructureMob(class BlockSource& region, class BlockPos const& pos, struct LevelChunk::HardcodedSpawningArea const& spawnArea, class SpawnConditions const&); + MCAPI void _spawnStructureMob( + class BlockSource& region, + class BlockPos const& pos, + struct LevelChunk::HardcodedSpawningArea const& spawnArea, + class SpawnConditions const& structureConditions + ); // symbol: // ?_tickSpawnMobClusters@Spawner@@IEAAXAEAVBlockSource@@AEBVLevelChunk@@VBlockPos@@AEBV?$function@$$A6AXAEBVBlockPos@@AEAVSpawnConditions@@@Z@std@@AEBV?$function@$$A6A_NAEBVBlockSource@@VBlockPos@@@Z@6@@Z MCAPI void - _tickSpawnMobClusters(class BlockSource& region, class LevelChunk const& chunk, class BlockPos pos, std::function const&, std::function const&); + _tickSpawnMobClusters(class BlockSource& region, class LevelChunk const& chunk, class BlockPos pos, std::function const& spawnMobClusterCallback, std::function const&); // symbol: // ?_tickSpawnStructureMobs@Spawner@@IEAAXAEAVBlockSource@@AEBVLevelChunk@@VBlockPos@@AEBV?$function@$$A6AXAEBVBlockPos@@AEBUHardcodedSpawningArea@LevelChunk@@AEBVSpawnConditions@@@Z@std@@AEBV?$function@$$A6A?AV?$span@$$CBUHardcodedSpawningArea@LevelChunk@@$0?0@gsl@@AEBVLevelChunk@@@Z@6@@Z - MCAPI void - _tickSpawnStructureMobs(class BlockSource& region, class LevelChunk const& chunk, class BlockPos pos, std::function const&, std::function(class LevelChunk const&)> const&); + MCAPI void _tickSpawnStructureMobs( + class BlockSource& region, + class LevelChunk const& chunk, + class BlockPos pos, + std::function< + void(class BlockPos const&, struct LevelChunk::HardcodedSpawningArea const&, class SpawnConditions const&)> const& + spawnStructureMobCallback, + std::function(class LevelChunk const&)> const& + getSpawningAreasCallback + ); // symbol: ?_updateBaseTypeCount@Spawner@@IEAAXAEAVBlockSource@@AEBVChunkPos@@@Z MCAPI void _updateBaseTypeCount(class BlockSource& region, class ChunkPos const& center); diff --git a/src/mc/world/level/TrackingRecord.h b/src/mc/world/level/TrackingRecord.h index d10674b6e0..ac2e7fa691 100644 --- a/src/mc/world/level/TrackingRecord.h +++ b/src/mc/world/level/TrackingRecord.h @@ -41,8 +41,10 @@ class TrackingRecord { // NOLINTBEGIN // symbol: // ?_addTransaction@TrackingRecord@PositionTrackingDB@@IEAA_NV?$weak_ptr@VPositionTrackingDBServer@PositionTrackingDB@@@std@@V?$unique_ptr@VOperationBase@PositionTrackingDB@@U?$default_delete@VOperationBase@PositionTrackingDB@@@std@@@4@@Z - MCAPI bool - _addTransaction(std::weak_ptr parent, std::unique_ptr); + MCAPI bool _addTransaction( + std::weak_ptr parent, + std::unique_ptr newTransaction + ); // symbol: ?deserialize@TrackingRecord@PositionTrackingDB@@IEAAXAEBVCompoundTag@@@Z MCAPI void deserialize(class CompoundTag const& tag); diff --git a/src/mc/world/level/biome/Biome.h b/src/mc/world/level/biome/Biome.h index 8fd84d9b54..dfe946000f 100644 --- a/src/mc/world/level/biome/Biome.h +++ b/src/mc/world/level/biome/Biome.h @@ -99,7 +99,7 @@ class Biome { // symbol: // ?hasTag@Biome@@QEBA_N_KAEBV?$TagRegistry@U?$IDType@UBiomeTagIDType@@@@U?$IDType@UBiomeTagSetIDType@@@@@@@Z MCAPI bool hasTag( - uint64, + uint64 tagHash, class TagRegistry, struct IDType> const& tagRegistry ) const; diff --git a/src/mc/world/level/biome/BiomeSourceUtil.h b/src/mc/world/level/biome/BiomeSourceUtil.h index 1e84bf5cfa..7dd53c2ca2 100644 --- a/src/mc/world/level/biome/BiomeSourceUtil.h +++ b/src/mc/world/level/biome/BiomeSourceUtil.h @@ -13,7 +13,7 @@ MCAPI std::optional locateBiome( std::function const& predicate, class BiomeSource const& biomeSource, class BoundingBox const& bounds, - uint + uint resolution ); // symbol: @@ -23,7 +23,7 @@ MCAPI std::optional locateBiome( class BiomeSource const& biomeSource, class BlockPos const& center, class BlockPos const&, - uint + uint resolution ); // symbol: @@ -33,7 +33,7 @@ MCAPI std::optional locateBiome( class BiomeSource const& biomeSource, class BlockPos const& center, class BoundingBox, - uint + uint resolution ); // NOLINTEND diff --git a/src/mc/world/level/biome/RTree.h b/src/mc/world/level/biome/RTree.h index c301af94a2..2432dfca23 100644 --- a/src/mc/world/level/biome/RTree.h +++ b/src/mc/world/level/biome/RTree.h @@ -50,7 +50,7 @@ class RTree { MCAPI static std::optional branch(std::vector&& children); // symbol: ?bucketize@Node@RTree@@SA?AV?$vector@VNode@RTree@@V?$allocator@VNode@RTree@@@std@@@std@@$$QEAV34@@Z - MCAPI static std::vector bucketize(std::vector&&); + MCAPI static std::vector bucketize(std::vector&& nodes); // symbol: ?sort@Node@RTree@@SAXAEAV?$vector@VNode@RTree@@V?$allocator@VNode@RTree@@@std@@@std@@H_N@Z MCAPI static void sort(std::vector& children, int dimension, bool); diff --git a/src/mc/world/level/biome/VanillaBiomes.h b/src/mc/world/level/biome/VanillaBiomes.h index 9241971200..78cec7f1d4 100644 --- a/src/mc/world/level/biome/VanillaBiomes.h +++ b/src/mc/world/level/biome/VanillaBiomes.h @@ -27,8 +27,12 @@ class VanillaBiomes { // symbol: // ?initBiomes@VanillaBiomes@@SAXAEAVBiomeRegistry@@AEBUSpawnSettings@@AEBVBaseGameVersion@@AEBVExperiments@@@Z - MCAPI static void - initBiomes(class BiomeRegistry& registry, struct SpawnSettings const&, class BaseGameVersion const& baseGameVersion, class Experiments const&); + MCAPI static void initBiomes( + class BiomeRegistry& registry, + struct SpawnSettings const& spawnSettings, + class BaseGameVersion const& baseGameVersion, + class Experiments const& experiments + ); // symbol: ?initClientOnlyComponents@VanillaBiomes@@SAXAEAVBiomeRegistry@@@Z MCAPI static void initClientOnlyComponents(class BiomeRegistry& registry); diff --git a/src/mc/world/level/biome/components/SurfaceMaterialAdjustmentAttributes.h b/src/mc/world/level/biome/components/SurfaceMaterialAdjustmentAttributes.h index 1941d2a18b..3b154b35e7 100644 --- a/src/mc/world/level/biome/components/SurfaceMaterialAdjustmentAttributes.h +++ b/src/mc/world/level/biome/components/SurfaceMaterialAdjustmentAttributes.h @@ -23,8 +23,8 @@ struct SurfaceMaterialAdjustmentAttributes : public ::BiomeComponentBase { class RenderParams& molangParams, gsl::not_null noise, class BlockPos const& pos, - int, - int + int heightMin, + int heightMax ) const; // symbol: ??4SurfaceMaterialAdjustmentAttributes@@QEAAAEAU0@$$QEAU0@@Z diff --git a/src/mc/world/level/biome/surface/CappedSurfaceBuilder.h b/src/mc/world/level/biome/surface/CappedSurfaceBuilder.h index d095ecb40f..f2d0b54bc8 100644 --- a/src/mc/world/level/biome/surface/CappedSurfaceBuilder.h +++ b/src/mc/world/level/biome/surface/CappedSurfaceBuilder.h @@ -77,8 +77,12 @@ class CappedSurfaceBuilder : public ::ISurfaceBuilder { // NOLINTBEGIN // symbol: // ?addSurfaceMaterial@CappedSurfaceBuilder@VanillaSurfaceBuilders@@AEBAXAEAVBlockVolume@@VPos@@HAEBV?$function@$$A6APEBVBlock@@H@Z@std@@@Z - MCAPI void - addSurfaceMaterial(class BlockVolume&, class Pos, int, std::function const&) const; + MCAPI void addSurfaceMaterial( + class BlockVolume& blockVolume, + class Pos currentPosition, + int endHeight, + std::function const& getBlockFn + ) const; // NOLINTEND }; diff --git a/src/mc/world/level/biome/surface/ISurfaceBuilder.h b/src/mc/world/level/biome/surface/ISurfaceBuilder.h index 9d2d1a01cf..4df6e557a8 100644 --- a/src/mc/world/level/biome/surface/ISurfaceBuilder.h +++ b/src/mc/world/level/biome/surface/ISurfaceBuilder.h @@ -24,13 +24,13 @@ class ISurfaceBuilder { // symbol: // ??0BuildParameters@ISurfaceBuilder@@QEAA@AEBVBiome@@AEAVRandom@@AEAVBlockVolume@@AEBVBlockPos@@MFAEBV?$unique_ptr@VPerlinSimplexNoise@@U?$default_delete@VPerlinSimplexNoise@@@std@@@std@@W4WaterLevelStrategy@1@HAEBVHeightmapWrapper@@_N@Z MCAPI BuildParameters( - class Biome const& biome, - class Random& random, - class BlockVolume& blocks, - class BlockPos const& pos, - float depthValue, - short seaLevel, - std::unique_ptr const&, + class Biome const& biome, + class Random& random, + class BlockVolume& blocks, + class BlockPos const& pos, + float depthValue, + short seaLevel, + std::unique_ptr const& materialAdjNoise, ::ISurfaceBuilder::WaterLevelStrategy, int, class HeightmapWrapper const&, diff --git a/src/mc/world/level/biome/surface/MesaSurfaceBuilder.h b/src/mc/world/level/biome/surface/MesaSurfaceBuilder.h index 6309529c12..d08b7fff2f 100644 --- a/src/mc/world/level/biome/surface/MesaSurfaceBuilder.h +++ b/src/mc/world/level/biome/surface/MesaSurfaceBuilder.h @@ -48,7 +48,7 @@ class MesaSurfaceBuilder : public ::ISurfaceBuilder { class BlockPos const& pos, float depthValue, class Random& random, - class BlockVolume&, + class BlockVolume& blockVolume, int, short seaLevel, struct MesaSurfaceBlocks const&, diff --git a/src/mc/world/level/biome/v1_16_compat.h b/src/mc/world/level/biome/v1_16_compat.h index f8008166af..0535d45e3a 100644 --- a/src/mc/world/level/biome/v1_16_compat.h +++ b/src/mc/world/level/biome/v1_16_compat.h @@ -13,7 +13,7 @@ namespace BiomeSourceUtil::v1_16_compat { // symbol: // ?locateSpawnBiome2d@v1_16_compat@BiomeSourceUtil@@YA?AV?$optional@VBlockPos@@@std@@AEBV?$set@HU?$less@H@std@@V?$allocator@H@2@@4@AEBVBiomeSource@@H@Z MCAPI std::optional - locateSpawnBiome2d(std::set const& biomes, class BiomeSource const& biomeSource, int); + locateSpawnBiome2d(std::set const& biomes, class BiomeSource const& biomeSource, int startingX); // NOLINTEND }; // namespace BiomeSourceUtil::v1_16_compat diff --git a/src/mc/world/level/block/BlockDescriptor.h b/src/mc/world/level/block/BlockDescriptor.h index ffaebce2fe..1c8ba6a6ef 100644 --- a/src/mc/world/level/block/BlockDescriptor.h +++ b/src/mc/world/level/block/BlockDescriptor.h @@ -82,7 +82,7 @@ class BlockDescriptor { // symbol: // ??0BlockDescriptor@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@$$QEAV?$vector@UState@BlockDescriptor@@V?$allocator@UState@BlockDescriptor@@@std@@@2@@Z - MCAPI BlockDescriptor(std::string const& name, std::vector&&); + MCAPI BlockDescriptor(std::string const& name, std::vector&& states); // symbol: ?getBlockOrUnknownBlock@BlockDescriptor@@QEBAAEBVBlock@@XZ MCAPI class Block const& getBlockOrUnknownBlock() const; @@ -137,11 +137,14 @@ class BlockDescriptor { // symbol: // ?anyMatch@BlockDescriptor@@SA_NAEBV?$vector@VBlockDescriptor@@V?$allocator@VBlockDescriptor@@@std@@@std@@AEBVBlock@@@Z - MCAPI static bool anyMatch(std::vector const&, class Block const& block); + MCAPI static bool anyMatch(std::vector const& blockDescriptors, class Block const& block); // symbol: // ?anyMatch@BlockDescriptor@@SA_NAEBV?$vector@VBlockDescriptor@@V?$allocator@VBlockDescriptor@@@std@@@std@@AEBV1@@Z - MCAPI static bool anyMatch(std::vector const&, class BlockDescriptor const&); + MCAPI static bool anyMatch( + std::vector const& blockDescriptors, + class BlockDescriptor const& otherBlockDescriptor + ); // symbol: ?bindType@BlockDescriptor@@SAXAEAUReflectionCtx@cereal@@@Z MCAPI static void bindType(struct cereal::ReflectionCtx&); @@ -151,7 +154,8 @@ class BlockDescriptor { // symbol: // ?fromTagExpression@BlockDescriptor@@SA?AV1@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4MolangVersion@@@Z - MCAPI static class BlockDescriptor fromTagExpression(std::string const&, ::MolangVersion molangVersion); + MCAPI static class BlockDescriptor + fromTagExpression(std::string const& tagExpression, ::MolangVersion molangVersion); // symbol: ?JSON_NAME_FIELD@BlockDescriptor@@2QBDB MCAPI static char const JSON_NAME_FIELD[]; diff --git a/src/mc/world/level/block/BlockLegacy.h b/src/mc/world/level/block/BlockLegacy.h index 295d6263ea..edc23a308e 100644 --- a/src/mc/world/level/block/BlockLegacy.h +++ b/src/mc/world/level/block/BlockLegacy.h @@ -1112,17 +1112,17 @@ class BlockLegacy { // symbol: // ?_executeEvent@BlockLegacy@@AEBAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEAV?$vector@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@$$CBV12@@std@@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@$$CBV12@@std@@@2@@3@AEAVRenderParams@@@Z MCAPI void _executeEvent( - std::string const& name, - std::vector>&, - class RenderParams& params + std::string const& name, + std::vector>& eventStack, + class RenderParams& params ) const; // symbol: // ?_forceExecuteTrigger@BlockLegacy@@AEBAXAEBVDefinitionTrigger@@AEAV?$vector@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@$$CBV12@@std@@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@$$CBV12@@std@@@2@@std@@AEAVRenderParams@@@Z MCAPI void _forceExecuteTrigger( - class DefinitionTrigger const& trigger, - std::vector>&, - class RenderParams& params + class DefinitionTrigger const& trigger, + std::vector>& eventStack, + class RenderParams& params ) const; // symbol: ?_tryLookupAlteredStateCollection@BlockLegacy@@AEBA?AV?$optional@H@std@@_KG@Z diff --git a/src/mc/world/level/block/CampfireBlock.h b/src/mc/world/level/block/CampfireBlock.h index 06405e1e19..cd228e90f3 100644 --- a/src/mc/world/level/block/CampfireBlock.h +++ b/src/mc/world/level/block/CampfireBlock.h @@ -79,7 +79,7 @@ class CampfireBlock : public ::ActorBlock { virtual void entityInside(class BlockSource& region, class BlockPos const& pos, class Actor& entity) const; // symbol: ??0CampfireBlock@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@H_N_N@Z - MCAPI CampfireBlock(std::string const& nameId, int id, bool, bool); + MCAPI CampfireBlock(std::string const& nameId, int id, bool spawnRandomParticles, bool); // symbol: ?isLit@CampfireBlock@@SA_NAEBVBlock@@@Z MCAPI static bool isLit(class Block const& block); diff --git a/src/mc/world/level/block/CauldronBlock.h b/src/mc/world/level/block/CauldronBlock.h index 6d9252d846..8bb41e10fe 100644 --- a/src/mc/world/level/block/CauldronBlock.h +++ b/src/mc/world/level/block/CauldronBlock.h @@ -168,9 +168,9 @@ class CauldronBlock : public ::ActorBlock { class CauldronBlockActor& blockEntity, class BlockSource& region, int fillLevel, - bool, - bool isWater, - bool + bool isEmpty, + bool isWater, + bool isCleanWater ) const; // symbol: ?_useInventory@CauldronBlock@@AEBAXAEAVPlayer@@AEAVItemStack@@1H@Z diff --git a/src/mc/world/level/block/CherrySaplingBlock.h b/src/mc/world/level/block/CherrySaplingBlock.h index fda525e641..577eae1337 100644 --- a/src/mc/world/level/block/CherrySaplingBlock.h +++ b/src/mc/world/level/block/CherrySaplingBlock.h @@ -71,7 +71,8 @@ class CherrySaplingBlock : public ::BushBlock { // private: // NOLINTBEGIN // symbol: ?_growTree@CherrySaplingBlock@@AEBA_NAEAVBlockSource@@AEBVBlockPos@@AEAVRandom@@_N@Z - MCAPI bool _growTree(class BlockSource& region, class BlockPos const& pos, class Random& random, bool) const; + MCAPI bool + _growTree(class BlockSource& region, class BlockPos const& pos, class Random& random, bool useRandom) const; // NOLINTEND }; diff --git a/src/mc/world/level/block/FlowerPotBlock.h b/src/mc/world/level/block/FlowerPotBlock.h index d018d27e5c..ff217cfdfd 100644 --- a/src/mc/world/level/block/FlowerPotBlock.h +++ b/src/mc/world/level/block/FlowerPotBlock.h @@ -92,11 +92,11 @@ class FlowerPotBlock : public ::ActorBlock { // symbol: // ?_updateFlowerPotEntity@FlowerPotBlock@@AEBAXAEAVBlockSource@@AEBVBlockPos@@PEAVFlowerPotBlockActor@@PEBVBlock@@AEAVActor@@@Z MCAPI void _updateFlowerPotEntity( - class BlockSource& region, - class BlockPos const& blockPos, - class FlowerPotBlockActor*, - class Block const*, - class Actor& sourceActor + class BlockSource& region, + class BlockPos const& blockPos, + class FlowerPotBlockActor* flowerPotEntity, + class Block const* flowerBlock, + class Actor& sourceActor ) const; // NOLINTEND diff --git a/src/mc/world/level/block/GrassBlock.h b/src/mc/world/level/block/GrassBlock.h index 44b5ab99d9..d437e8d1db 100644 --- a/src/mc/world/level/block/GrassBlock.h +++ b/src/mc/world/level/block/GrassBlock.h @@ -87,7 +87,7 @@ class GrassBlock : public ::BlockLegacy { MCAPI bool _canBeGrass(class BlockSource const& region, class BlockPos const& pos) const; // symbol: ?_plantGrass@GrassBlock@@AEBA_NAEAVBlockSource@@AEBVBlockPos@@AEAVRandomize@@@Z - MCAPI bool _plantGrass(class BlockSource& region, class BlockPos const&, class Randomize& randomize) const; + MCAPI bool _plantGrass(class BlockSource& region, class BlockPos const& abovePos, class Randomize& randomize) const; // NOLINTEND }; diff --git a/src/mc/world/level/block/MultifaceBlock.h b/src/mc/world/level/block/MultifaceBlock.h index 628679a14f..df7b8a25d3 100644 --- a/src/mc/world/level/block/MultifaceBlock.h +++ b/src/mc/world/level/block/MultifaceBlock.h @@ -111,10 +111,10 @@ class MultifaceBlock : public ::BlockLegacy { // symbol: ?getBlockForPlacement@MultifaceBlock@@SAAEBVBlock@@AEBV2@0AEAVBlockSource@@AEBVBlockPos@@E@Z MCAPI static class Block const& getBlockForPlacement( - class Block const& oldBlock, - class Block const& placementBlock, - class BlockSource& region, - class BlockPos const&, + class Block const& oldBlock, + class Block const& placementBlock, + class BlockSource& region, + class BlockPos const& placementPos, uchar ); @@ -124,7 +124,7 @@ class MultifaceBlock : public ::BlockLegacy { class Block const& oldBlock, class Block const& placementBlock, class IBlockWorldGenAPI& region, - class BlockPos const&, + class BlockPos const& placementPos, uchar ); diff --git a/src/mc/world/level/block/RespawnAnchorBlock.h b/src/mc/world/level/block/RespawnAnchorBlock.h index 7ef51a8330..2d379f741d 100644 --- a/src/mc/world/level/block/RespawnAnchorBlock.h +++ b/src/mc/world/level/block/RespawnAnchorBlock.h @@ -61,7 +61,7 @@ class RespawnAnchorBlock : public ::BlockLegacy { virtual bool isInteractiveBlock() const; // vIndex: 151, symbol: ?use@RespawnAnchorBlock@@UEBA_NAEAVPlayer@@AEBVBlockPos@@E@Z - virtual bool use(class Player& player, class BlockPos const&, uchar face) const; + virtual bool use(class Player& player, class BlockPos const& anchorBlockPos, uchar face) const; // symbol: ??0RespawnAnchorBlock@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@H@Z MCAPI RespawnAnchorBlock(std::string const& nameId, int id); diff --git a/src/mc/world/level/block/SaplingBlock.h b/src/mc/world/level/block/SaplingBlock.h index 69e9df2415..59bd38378a 100644 --- a/src/mc/world/level/block/SaplingBlock.h +++ b/src/mc/world/level/block/SaplingBlock.h @@ -104,7 +104,7 @@ class SaplingBlock : public ::BushBlock { class BlockPos const& pos, class BlockSource& region, class Random& random, - bool + bool useRandom ) const; // symbol: @@ -130,7 +130,8 @@ class SaplingBlock : public ::BushBlock { ) const; // symbol: ?_growTree@SaplingBlock@@AEBA_NAEAVBlockSource@@AEBVBlockPos@@AEAVRandom@@_N@Z - MCAPI bool _growTree(class BlockSource& region, class BlockPos const& pos, class Random& random, bool) const; + MCAPI bool + _growTree(class BlockSource& region, class BlockPos const& pos, class Random& random, bool useRandom) const; // NOLINTEND }; diff --git a/src/mc/world/level/block/SculkChargeCursor.h b/src/mc/world/level/block/SculkChargeCursor.h index 6874de62f2..0042f40980 100644 --- a/src/mc/world/level/block/SculkChargeCursor.h +++ b/src/mc/world/level/block/SculkChargeCursor.h @@ -45,8 +45,11 @@ class SculkChargeCursor { MCAPI static class SculkBehavior const& _getSculkBehavior(class Block const& block); // symbol: ?_isMovementUnobstructed@SculkChargeCursor@@CA_NAEAVIBlockWorldGenAPI@@AEBVBlockPos@@1@Z - MCAPI static bool - _isMovementUnobstructed(class IBlockWorldGenAPI& target, class BlockPos const& fromPos, class BlockPos const&); + MCAPI static bool _isMovementUnobstructed( + class IBlockWorldGenAPI& target, + class BlockPos const& fromPos, + class BlockPos const& toPos + ); // NOLINTEND diff --git a/src/mc/world/level/block/WallBlock.h b/src/mc/world/level/block/WallBlock.h index cc86bc4f2d..421ee47983 100644 --- a/src/mc/world/level/block/WallBlock.h +++ b/src/mc/world/level/block/WallBlock.h @@ -146,7 +146,7 @@ class WallBlock : public ::BlockLegacy { _desiredConnectionState(class BlockSource& region, class BlockPos const& pos, uchar neighbor) const; // symbol: ?_isCovered@WallBlock@@AEBA_NAEAVBlockSource@@AEBVBlockPos@@AEBVAABB@@@Z - MCAPI bool _isCovered(class BlockSource& region, class BlockPos const& pos, class AABB const&) const; + MCAPI bool _isCovered(class BlockSource& region, class BlockPos const& pos, class AABB const& testAABB) const; // symbol: ?_shouldBePost@WallBlock@@AEBA_NAEAVBlockSource@@AEBVBlockPos@@AEBVBlock@@@Z MCAPI bool _shouldBePost(class BlockSource& region, class BlockPos const& pos, class Block const& block) const; diff --git a/src/mc/world/level/block/WeepingVinesBlock.h b/src/mc/world/level/block/WeepingVinesBlock.h index 77cb172ffd..14df74974b 100644 --- a/src/mc/world/level/block/WeepingVinesBlock.h +++ b/src/mc/world/level/block/WeepingVinesBlock.h @@ -77,8 +77,14 @@ class WeepingVinesBlock : public ::BlockLegacy { MCAPI WeepingVinesBlock(std::string const& nameId, int id); // symbol: ?placeVineString@WeepingVinesBlock@@SAXAEAVBlockSource@@AEAVRandom@@AEBVBlockPos@@HHH@Z - MCAPI static void - placeVineString(class BlockSource& region, class Random& random, class BlockPos const& vinePos, int, int, int); + MCAPI static void placeVineString( + class BlockSource& region, + class Random& random, + class BlockPos const& vinePos, + int vineHeight, + int minAge, + int maxAge + ); // NOLINTEND diff --git a/src/mc/world/level/block/actor/ChemistryTableBlockActor.h b/src/mc/world/level/block/actor/ChemistryTableBlockActor.h index e76c53016b..c33a8130b5 100644 --- a/src/mc/world/level/block/actor/ChemistryTableBlockActor.h +++ b/src/mc/world/level/block/actor/ChemistryTableBlockActor.h @@ -68,7 +68,7 @@ class ChemistryTableBlockActor { // symbol: // ?serverCombine@ChemistryTableBlockActor@@QEAAXAEAVBlockSource@@AEBV?$vector@VItemStack@@V?$allocator@VItemStack@@@std@@@std@@@Z - MCAPI void serverCombine(class BlockSource& region, std::vector const&); + MCAPI void serverCombine(class BlockSource& region, std::vector const& consumedInput); // symbol: ?serverLabTablePacket_DEPRECATED@ChemistryTableBlockActor@@QEAAXAEBVLabTablePacket@@AEAVBlockSource@@@Z MCAPI void serverLabTablePacket_DEPRECATED(class LabTablePacket const& packet, class BlockSource& region); @@ -80,7 +80,7 @@ class ChemistryTableBlockActor { // symbol: // ?_createReaction@ChemistryTableBlockActor@@AEAA?AV?$unique_ptr@VLabTableReaction@@U?$default_delete@VLabTableReaction@@@std@@@std@@AEAVRandom@@AEBV?$vector@VItemStack@@V?$allocator@VItemStack@@@std@@@3@@Z MCAPI std::unique_ptr - _createReaction(class Random& random, std::vector const&); + _createReaction(class Random& random, std::vector const& consumedInput); // symbol: ?_popPendingReactionOutput@ChemistryTableBlockActor@@AEAAXAEAVBlockSource@@@Z MCAPI void _popPendingReactionOutput(class BlockSource& region); diff --git a/src/mc/world/level/block/actor/ItemFrameBlockActor.h b/src/mc/world/level/block/actor/ItemFrameBlockActor.h index bb30a98c77..8ffd6cca1d 100644 --- a/src/mc/world/level/block/actor/ItemFrameBlockActor.h +++ b/src/mc/world/level/block/actor/ItemFrameBlockActor.h @@ -68,7 +68,7 @@ class ItemFrameBlockActor : public ::BlockActor { MCAPI void rotateFramedItem(class BlockSource&, class Actor&); // symbol: ?setIgnoreLighting@ItemFrameBlockActor@@QEAAX_N@Z - MCAPI void setIgnoreLighting(bool); + MCAPI void setIgnoreLighting(bool ignoreLighting); // symbol: ?setItem@ItemFrameBlockActor@@QEAAXAEAVBlockSource@@AEBVItemInstance@@PEAVActor@@@Z MCAPI void setItem(class BlockSource&, class ItemInstance const&, class Actor*); diff --git a/src/mc/world/level/block/actor/JukeboxBlockActor.h b/src/mc/world/level/block/actor/JukeboxBlockActor.h index a9bfe5a0f9..491c331fa4 100644 --- a/src/mc/world/level/block/actor/JukeboxBlockActor.h +++ b/src/mc/world/level/block/actor/JukeboxBlockActor.h @@ -94,7 +94,7 @@ class JukeboxBlockActor : public ::RandomizableBlockActorContainer { MCAPI void _onChanged(class BlockSource&, ::Puv::Legacy::LevelSoundEvent); // symbol: ?_spawnMusicParticles@JukeboxBlockActor@@AEAAXAEAVLevel@@M@Z - MCAPI void _spawnMusicParticles(class Level& level, float); + MCAPI void _spawnMusicParticles(class Level& level, float recordDuration); // NOLINTEND }; diff --git a/src/mc/world/level/block/components/BlockBakedMaterialDataComponent.h b/src/mc/world/level/block/components/BlockBakedMaterialDataComponent.h index a9203aff6a..cc58652c07 100644 --- a/src/mc/world/level/block/components/BlockBakedMaterialDataComponent.h +++ b/src/mc/world/level/block/components/BlockBakedMaterialDataComponent.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/level/block/utils/BlockComponentBase.h" +#include "mc/world/level/block/components/BlockComponentBase.h" struct BlockBakedMaterialDataComponent : public ::BlockComponentBase { public: diff --git a/src/mc/world/components/BlockCollisionEvaluationQueueComponent.h b/src/mc/world/level/block/components/BlockCollisionEvaluationQueueComponent.h similarity index 100% rename from src/mc/world/components/BlockCollisionEvaluationQueueComponent.h rename to src/mc/world/level/block/components/BlockCollisionEvaluationQueueComponent.h diff --git a/src/mc/world/level/block/utils/BlockComponentBase.h b/src/mc/world/level/block/components/BlockComponentBase.h similarity index 100% rename from src/mc/world/level/block/utils/BlockComponentBase.h rename to src/mc/world/level/block/components/BlockComponentBase.h diff --git a/src/mc/world/level/block/utils/BlockComponentDirectData.h b/src/mc/world/level/block/components/BlockComponentDirectData.h similarity index 100% rename from src/mc/world/level/block/utils/BlockComponentDirectData.h rename to src/mc/world/level/block/components/BlockComponentDirectData.h diff --git a/src/mc/world/level/block/components/BlockComponentFactory.h b/src/mc/world/level/block/components/BlockComponentFactory.h index 51bed7e359..e752b191dd 100644 --- a/src/mc/world/level/block/components/BlockComponentFactory.h +++ b/src/mc/world/level/block/components/BlockComponentFactory.h @@ -48,10 +48,10 @@ class BlockComponentFactory { public: // NOLINTBEGIN // symbol: ??0BlockComponentFactory@@QEAA@AEBVExperiments@@@Z - MCAPI explicit BlockComponentFactory(class Experiments const&); + MCAPI explicit BlockComponentFactory(class Experiments const& experiments); // symbol: ?initializeFactory@BlockComponentFactory@@QEAAXAEBVExperiments@@@Z - MCAPI void initializeFactory(class Experiments const&); + MCAPI void initializeFactory(class Experiments const& experiments); // symbol: // ?addAllComponentUpgrades@BlockComponentFactory@@SAXAEAVCerealDocumentUpgrader@@AEBUReflectionCtx@cereal@@@Z diff --git a/src/mc/world/level/block/utils/BlockComponentStorage.h b/src/mc/world/level/block/components/BlockComponentStorage.h similarity index 100% rename from src/mc/world/level/block/utils/BlockComponentStorage.h rename to src/mc/world/level/block/components/BlockComponentStorage.h diff --git a/src/mc/world/level/block/utils/BlockComponentStorageFinalizer.h b/src/mc/world/level/block/components/BlockComponentStorageFinalizer.h similarity index 100% rename from src/mc/world/level/block/utils/BlockComponentStorageFinalizer.h rename to src/mc/world/level/block/components/BlockComponentStorageFinalizer.h diff --git a/src/mc/world/level/block/components/BlockCraftingTableComponent.h b/src/mc/world/level/block/components/BlockCraftingTableComponent.h index cb2d315305..625581fff5 100644 --- a/src/mc/world/level/block/components/BlockCraftingTableComponent.h +++ b/src/mc/world/level/block/components/BlockCraftingTableComponent.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/level/block/utils/BlockComponentBase.h" +#include "mc/world/level/block/components/BlockComponentBase.h" struct BlockCraftingTableComponent : public ::BlockComponentBase { public: diff --git a/src/mc/world/level/block/components/BlockDestructibleByExplosionComponent.h b/src/mc/world/level/block/components/BlockDestructibleByExplosionComponent.h index fa279d8e16..7f9c840106 100644 --- a/src/mc/world/level/block/components/BlockDestructibleByExplosionComponent.h +++ b/src/mc/world/level/block/components/BlockDestructibleByExplosionComponent.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/level/block/utils/BlockComponentBase.h" +#include "mc/world/level/block/components/BlockComponentBase.h" struct BlockDestructibleByExplosionComponent : public ::BlockComponentBase { public: diff --git a/src/mc/world/level/block/components/BlockDestructibleByMiningComponent.h b/src/mc/world/level/block/components/BlockDestructibleByMiningComponent.h index aa9c8bb94b..8c880f9b8c 100644 --- a/src/mc/world/level/block/components/BlockDestructibleByMiningComponent.h +++ b/src/mc/world/level/block/components/BlockDestructibleByMiningComponent.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/level/block/utils/BlockComponentBase.h" +#include "mc/world/level/block/components/BlockComponentBase.h" struct BlockDestructibleByMiningComponent : public ::BlockComponentBase { public: diff --git a/src/mc/world/level/block/components/BlockDisplayNameComponent.h b/src/mc/world/level/block/components/BlockDisplayNameComponent.h index f5639f580f..e699a11d86 100644 --- a/src/mc/world/level/block/components/BlockDisplayNameComponent.h +++ b/src/mc/world/level/block/components/BlockDisplayNameComponent.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/level/block/utils/BlockComponentBase.h" +#include "mc/world/level/block/components/BlockComponentBase.h" struct BlockDisplayNameComponent : public ::BlockComponentBase { public: diff --git a/src/mc/world/level/block/components/BlockFlammableComponent.h b/src/mc/world/level/block/components/BlockFlammableComponent.h index 7b0c5ae8fc..bd58a9ad2f 100644 --- a/src/mc/world/level/block/components/BlockFlammableComponent.h +++ b/src/mc/world/level/block/components/BlockFlammableComponent.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/level/block/utils/BlockComponentBase.h" +#include "mc/world/level/block/components/BlockComponentBase.h" struct BlockFlammableComponent : public ::BlockComponentBase { public: diff --git a/src/mc/world/level/block/components/BlockFrictionComponent.h b/src/mc/world/level/block/components/BlockFrictionComponent.h index 6f9de2fcd5..1727d99af0 100644 --- a/src/mc/world/level/block/components/BlockFrictionComponent.h +++ b/src/mc/world/level/block/components/BlockFrictionComponent.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/level/block/utils/BlockComponentBase.h" +#include "mc/world/level/block/components/BlockComponentBase.h" struct BlockFrictionComponent : public ::BlockComponentBase { public: diff --git a/src/mc/world/level/block/components/BlockGeometryComponent.h b/src/mc/world/level/block/components/BlockGeometryComponent.h index 67ddcd6845..b586449477 100644 --- a/src/mc/world/level/block/components/BlockGeometryComponent.h +++ b/src/mc/world/level/block/components/BlockGeometryComponent.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/level/block/utils/BlockComponentBase.h" +#include "mc/world/level/block/components/BlockComponentBase.h" struct BlockGeometryComponent : public ::BlockComponentBase { public: diff --git a/src/mc/world/level/block/utils/BlockLegacyComponentStorageFinalizer.h b/src/mc/world/level/block/components/BlockLegacyComponentStorageFinalizer.h similarity index 100% rename from src/mc/world/level/block/utils/BlockLegacyComponentStorageFinalizer.h rename to src/mc/world/level/block/components/BlockLegacyComponentStorageFinalizer.h diff --git a/src/mc/world/level/block/components/BlockLightDampeningComponent.h b/src/mc/world/level/block/components/BlockLightDampeningComponent.h index 5bb0658ff7..c82221944d 100644 --- a/src/mc/world/level/block/components/BlockLightDampeningComponent.h +++ b/src/mc/world/level/block/components/BlockLightDampeningComponent.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/level/block/utils/BlockComponentBase.h" +#include "mc/world/level/block/components/BlockComponentBase.h" struct BlockLightDampeningComponent : public ::BlockComponentBase { public: diff --git a/src/mc/world/level/block/components/BlockLightEmissionComponent.h b/src/mc/world/level/block/components/BlockLightEmissionComponent.h index 79de6995ee..92af5735f1 100644 --- a/src/mc/world/level/block/components/BlockLightEmissionComponent.h +++ b/src/mc/world/level/block/components/BlockLightEmissionComponent.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/level/block/utils/BlockComponentBase.h" +#include "mc/world/level/block/components/BlockComponentBase.h" struct BlockLightEmissionComponent : public ::BlockComponentBase { public: diff --git a/src/mc/world/level/block/components/BlockLootComponent.h b/src/mc/world/level/block/components/BlockLootComponent.h index fd4dc88a08..69e0674b9c 100644 --- a/src/mc/world/level/block/components/BlockLootComponent.h +++ b/src/mc/world/level/block/components/BlockLootComponent.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/level/block/utils/BlockComponentBase.h" +#include "mc/world/level/block/components/BlockComponentBase.h" struct BlockLootComponent : public ::BlockComponentBase { public: diff --git a/src/mc/world/level/block/components/BlockMapColorComponent.h b/src/mc/world/level/block/components/BlockMapColorComponent.h index 321b6b2b63..38d40799d1 100644 --- a/src/mc/world/level/block/components/BlockMapColorComponent.h +++ b/src/mc/world/level/block/components/BlockMapColorComponent.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/level/block/utils/BlockComponentBase.h" +#include "mc/world/level/block/components/BlockComponentBase.h" struct BlockMapColorComponent : public ::BlockComponentBase { public: diff --git a/src/mc/world/level/block/components/BlockMaterialInstancesComponent.h b/src/mc/world/level/block/components/BlockMaterialInstancesComponent.h index 6f68e41110..732200c32e 100644 --- a/src/mc/world/level/block/components/BlockMaterialInstancesComponent.h +++ b/src/mc/world/level/block/components/BlockMaterialInstancesComponent.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/level/block/utils/BlockComponentBase.h" +#include "mc/world/level/block/components/BlockComponentBase.h" #include "mc/world/level/block/utils/BlockRenderLayer.h" struct BlockMaterialInstancesComponent : public ::BlockComponentBase { diff --git a/src/mc/world/level/block/components/BlockMaterialInstancesDescription.h b/src/mc/world/level/block/components/BlockMaterialInstancesDescription.h index d19a4b9085..8f3f0637f1 100644 --- a/src/mc/world/level/block/components/BlockMaterialInstancesDescription.h +++ b/src/mc/world/level/block/components/BlockMaterialInstancesDescription.h @@ -56,7 +56,7 @@ struct BlockMaterialInstancesDescription : public ::BlockComponentDescription { // symbol: // ??0BlockMaterialInstancesDescription@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4BlockRenderLayer@@_N2@Z - MCAPI BlockMaterialInstancesDescription(std::string const& textureName, ::BlockRenderLayer, bool, bool); + MCAPI BlockMaterialInstancesDescription(std::string const& textureName, ::BlockRenderLayer, bool, bool faceDimming); // symbol: ??4BlockMaterialInstancesDescription@@QEAAAEAU0@$$QEAU0@@Z MCAPI struct BlockMaterialInstancesDescription& operator=(struct BlockMaterialInstancesDescription&&); diff --git a/src/mc/world/level/block/components/BlockPlacementFilterComponent.h b/src/mc/world/level/block/components/BlockPlacementFilterComponent.h index 1cf5a67aaf..f135b89ad8 100644 --- a/src/mc/world/level/block/components/BlockPlacementFilterComponent.h +++ b/src/mc/world/level/block/components/BlockPlacementFilterComponent.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/level/block/utils/BlockComponentBase.h" +#include "mc/world/level/block/components/BlockComponentBase.h" struct BlockPlacementFilterComponent : public ::BlockComponentBase { public: diff --git a/src/mc/world/level/block/components/BlockQueuedTickingComponent.h b/src/mc/world/level/block/components/BlockQueuedTickingComponent.h index 64778333ab..75da050934 100644 --- a/src/mc/world/level/block/components/BlockQueuedTickingComponent.h +++ b/src/mc/world/level/block/components/BlockQueuedTickingComponent.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/level/block/utils/BlockComponentBase.h" +#include "mc/world/level/block/components/BlockComponentBase.h" // auto generated forward declare list // clang-format off diff --git a/src/mc/world/level/block/components/BlockRandomTickingComponent.h b/src/mc/world/level/block/components/BlockRandomTickingComponent.h index 980aee6f87..722d02d4e5 100644 --- a/src/mc/world/level/block/components/BlockRandomTickingComponent.h +++ b/src/mc/world/level/block/components/BlockRandomTickingComponent.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/level/block/utils/BlockComponentBase.h" +#include "mc/world/level/block/components/BlockComponentBase.h" // auto generated forward declare list // clang-format off diff --git a/src/mc/world/level/block/utils/BlockTransformationComponent.h b/src/mc/world/level/block/components/BlockTransformationComponent.h similarity index 94% rename from src/mc/world/level/block/utils/BlockTransformationComponent.h rename to src/mc/world/level/block/components/BlockTransformationComponent.h index 6adc767c12..3aa9a33e89 100644 --- a/src/mc/world/level/block/utils/BlockTransformationComponent.h +++ b/src/mc/world/level/block/components/BlockTransformationComponent.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/level/block/utils/BlockComponentBase.h" +#include "mc/world/level/block/components/BlockComponentBase.h" class BlockTransformationComponent : public ::BlockComponentBase { public: diff --git a/src/mc/world/level/block/components/BlockUnitCubeComponent.h b/src/mc/world/level/block/components/BlockUnitCubeComponent.h index 2f43bd3782..dc9b2987ed 100644 --- a/src/mc/world/level/block/components/BlockUnitCubeComponent.h +++ b/src/mc/world/level/block/components/BlockUnitCubeComponent.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/level/block/utils/BlockComponentBase.h" +#include "mc/world/level/block/components/BlockComponentBase.h" // auto generated forward declare list // clang-format off diff --git a/src/mc/deps/core/utility/InsideBlockComponentUtility.h b/src/mc/world/level/block/components/InsideBlockComponentUtility.h similarity index 94% rename from src/mc/deps/core/utility/InsideBlockComponentUtility.h rename to src/mc/world/level/block/components/InsideBlockComponentUtility.h index 1dacd95abc..f56804bc5b 100644 --- a/src/mc/deps/core/utility/InsideBlockComponentUtility.h +++ b/src/mc/world/level/block/components/InsideBlockComponentUtility.h @@ -3,7 +3,7 @@ #include "mc/_HeaderOutputPredefine.h" // auto generated inclusion list -#include "mc/world/components/InsideBlockWithPosAndBlockComponent.h" +#include "mc/world/level/block/components/InsideBlockWithPosAndBlockComponent.h" namespace InsideBlockComponentUtility { // NOLINTBEGIN diff --git a/src/mc/world/components/InsideBlockWithPosAndBlockComponent.h b/src/mc/world/level/block/components/InsideBlockWithPosAndBlockComponent.h similarity index 100% rename from src/mc/world/components/InsideBlockWithPosAndBlockComponent.h rename to src/mc/world/level/block/components/InsideBlockWithPosAndBlockComponent.h diff --git a/src/mc/world/components/InsideBlockWithPosComponent.h b/src/mc/world/level/block/components/InsideBlockWithPosComponent.h similarity index 100% rename from src/mc/world/components/InsideBlockWithPosComponent.h rename to src/mc/world/level/block/components/InsideBlockWithPosComponent.h diff --git a/src/mc/world/components/InsideGenericBlockComponent.h b/src/mc/world/level/block/components/InsideGenericBlockComponent.h similarity index 100% rename from src/mc/world/components/InsideGenericBlockComponent.h rename to src/mc/world/level/block/components/InsideGenericBlockComponent.h diff --git a/src/mc/world/components/LocalConstBlockSourceFactoryComponent.h b/src/mc/world/level/block/components/LocalConstBlockSourceFactoryComponent.h similarity index 100% rename from src/mc/world/components/LocalConstBlockSourceFactoryComponent.h rename to src/mc/world/level/block/components/LocalConstBlockSourceFactoryComponent.h diff --git a/src/mc/network/NetEaseBlockComponentStorage.h b/src/mc/world/level/block/components/NetEaseBlockComponentStorage.h similarity index 100% rename from src/mc/network/NetEaseBlockComponentStorage.h rename to src/mc/world/level/block/components/NetEaseBlockComponentStorage.h diff --git a/src/mc/world/level/block/definition/BlockDefinitionGroup.h b/src/mc/world/level/block/definition/BlockDefinitionGroup.h index a44b2ed76f..e5f473e76a 100644 --- a/src/mc/world/level/block/definition/BlockDefinitionGroup.h +++ b/src/mc/world/level/block/definition/BlockDefinitionGroup.h @@ -53,8 +53,10 @@ class BlockDefinitionGroup { // symbol: // ?generateBlockDefinition@BlockDefinitionGroup@@QEAA?AV?$unique_ptr@UBlockDefinition@@U?$default_delete@UBlockDefinition@@@std@@@std@@AEBUBlockResource@1@AEBVExperiments@@@Z - MCAPI std::unique_ptr - generateBlockDefinition(struct BlockDefinitionGroup::BlockResource const& resource, class Experiments const&); + MCAPI std::unique_ptr generateBlockDefinition( + struct BlockDefinitionGroup::BlockResource const& resource, + class Experiments const& experiments + ); // symbol: // ?generateServerBlockProperties@BlockDefinitionGroup@@QEBA?AV?$vector@U?$pair@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@VCompoundTag@@@std@@V?$allocator@U?$pair@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@VCompoundTag@@@std@@@2@@std@@XZ @@ -83,15 +85,18 @@ class BlockDefinitionGroup { // symbol: // ?loadResources@BlockDefinitionGroup@@QEAAXAEBVResourcePackManager@@AEBVBlockComponentFactory@@AEBVExperiments@@@Z - MCAPI void - loadResources(class ResourcePackManager const& resourcePackManager, class BlockComponentFactory const& factory, class Experiments const&); + MCAPI void loadResources( + class ResourcePackManager const& resourcePackManager, + class BlockComponentFactory const& factory, + class Experiments const& experiments + ); // symbol: // ?registerBlockDefinition@BlockDefinitionGroup@@QEAAXV?$unique_ptr@UBlockDefinition@@U?$default_delete@UBlockDefinition@@@std@@@std@@@Z - MCAPI void registerBlockDefinition(std::unique_ptr); + MCAPI void registerBlockDefinition(std::unique_ptr blockDef); // symbol: ?registerBlockFromDefinition@BlockDefinitionGroup@@QEAAXAEBUBlockDefinition@@_N@Z - MCAPI void registerBlockFromDefinition(struct BlockDefinition const& definition, bool); + MCAPI void registerBlockFromDefinition(struct BlockDefinition const& definition, bool assertIfAlreadyExists); // symbol: ?registerBlocks@BlockDefinitionGroup@@QEAAXXZ MCAPI void registerBlocks(); @@ -138,16 +143,25 @@ class BlockDefinitionGroup { ); // symbol: ?_loadComponents@BlockDefinitionGroup@@AEAA_NAEBVValue@Json@@AEAUBlockDefinition@@AEBVExperiments@@@Z - MCAPI bool - _loadComponents(class Json::Value const& root, struct BlockDefinition& definition, class Experiments const&); + MCAPI bool _loadComponents( + class Json::Value const& root, + struct BlockDefinition& definition, + class Experiments const& experiments + ); // symbol: ?_loadEvents@BlockDefinitionGroup@@AEAA_NAEBVValue@Json@@AEAUBlockDefinition@@@Z MCAPI bool _loadEvents(class Json::Value const& root, struct BlockDefinition& definition); // symbol: // ?_parseComponents@BlockDefinitionGroup@@AEAA_NAEBVValue@Json@@AEAUBlockComponentGroupDescription@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVSemVersion@@3AEBVExperiments@@@Z - MCAPI bool - _parseComponents(class Json::Value const&, struct BlockComponentGroupDescription&, std::string const& blockIdentifier, class SemVersion const& engineVersion, class SemVersion const&, class Experiments const&); + MCAPI bool _parseComponents( + class Json::Value const&, + struct BlockComponentGroupDescription&, + std::string const& blockIdentifier, + class SemVersion const& engineVersion, + class SemVersion const&, + class Experiments const& experiments + ); // symbol: // ?_stringToCreativeItemCategory@BlockDefinitionGroup@@AEAA?AW4CreativeItemCategory@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z diff --git a/src/mc/world/level/block/events/BlockEventResponseFactory.h b/src/mc/world/level/block/events/BlockEventResponseFactory.h index dd073c420f..8494f12b1b 100644 --- a/src/mc/world/level/block/events/BlockEventResponseFactory.h +++ b/src/mc/world/level/block/events/BlockEventResponseFactory.h @@ -18,7 +18,7 @@ class BlockEventResponseFactory : public ::EventResponseFactory { virtual ~BlockEventResponseFactory(); // vIndex: 1, symbol: ?initializeFactory@BlockEventResponseFactory@@UEAAXAEBVExperiments@@@Z - virtual void initializeFactory(class Experiments const&); + virtual void initializeFactory(class Experiments const& experiments); // vIndex: 2, symbol: ?initSchema@BlockEventResponseFactory@@UEAAXXZ virtual void initSchema(); diff --git a/src/mc/world/level/block/utils/blockEvents/BlockFallOnEvent.h b/src/mc/world/level/block/events/BlockFallOnEvent.h similarity index 100% rename from src/mc/world/level/block/utils/blockEvents/BlockFallOnEvent.h rename to src/mc/world/level/block/events/BlockFallOnEvent.h diff --git a/src/mc/world/level/block/utils/blockEvents/BlockFallOnEventComponent.h b/src/mc/world/level/block/events/BlockFallOnEventComponent.h similarity index 100% rename from src/mc/world/level/block/utils/blockEvents/BlockFallOnEventComponent.h rename to src/mc/world/level/block/events/BlockFallOnEventComponent.h diff --git a/src/mc/world/level/block/utils/blockEvents/BlockPlaceEvent.h b/src/mc/world/level/block/events/BlockPlaceEvent.h similarity index 100% rename from src/mc/world/level/block/utils/blockEvents/BlockPlaceEvent.h rename to src/mc/world/level/block/events/BlockPlaceEvent.h diff --git a/src/mc/world/level/block/utils/blockEvents/BlockPlaceEventComponent.h b/src/mc/world/level/block/events/BlockPlaceEventComponent.h similarity index 100% rename from src/mc/world/level/block/utils/blockEvents/BlockPlaceEventComponent.h rename to src/mc/world/level/block/events/BlockPlaceEventComponent.h diff --git a/src/mc/world/level/block/utils/blockEvents/BlockPlayerDestroyEvent.h b/src/mc/world/level/block/events/BlockPlayerDestroyEvent.h similarity index 100% rename from src/mc/world/level/block/utils/blockEvents/BlockPlayerDestroyEvent.h rename to src/mc/world/level/block/events/BlockPlayerDestroyEvent.h diff --git a/src/mc/world/level/block/utils/blockEvents/BlockPlayerDestroyEventComponent.h b/src/mc/world/level/block/events/BlockPlayerDestroyEventComponent.h similarity index 100% rename from src/mc/world/level/block/utils/blockEvents/BlockPlayerDestroyEventComponent.h rename to src/mc/world/level/block/events/BlockPlayerDestroyEventComponent.h diff --git a/src/mc/world/level/block/utils/blockEvents/BlockPlayerInteractEvent.h b/src/mc/world/level/block/events/BlockPlayerInteractEvent.h similarity index 100% rename from src/mc/world/level/block/utils/blockEvents/BlockPlayerInteractEvent.h rename to src/mc/world/level/block/events/BlockPlayerInteractEvent.h diff --git a/src/mc/world/level/block/utils/blockEvents/BlockPlayerInteractEventComponent.h b/src/mc/world/level/block/events/BlockPlayerInteractEventComponent.h similarity index 100% rename from src/mc/world/level/block/utils/blockEvents/BlockPlayerInteractEventComponent.h rename to src/mc/world/level/block/events/BlockPlayerInteractEventComponent.h diff --git a/src/mc/world/level/block/utils/blockEvents/BlockPlayerPlacingEvent.h b/src/mc/world/level/block/events/BlockPlayerPlacingEvent.h similarity index 100% rename from src/mc/world/level/block/utils/blockEvents/BlockPlayerPlacingEvent.h rename to src/mc/world/level/block/events/BlockPlayerPlacingEvent.h diff --git a/src/mc/world/level/block/utils/blockEvents/BlockPlayerPlacingEventComponent.h b/src/mc/world/level/block/events/BlockPlayerPlacingEventComponent.h similarity index 100% rename from src/mc/world/level/block/utils/blockEvents/BlockPlayerPlacingEventComponent.h rename to src/mc/world/level/block/events/BlockPlayerPlacingEventComponent.h diff --git a/src/mc/world/level/block/utils/blockEvents/BlockQueuedTickEvent.h b/src/mc/world/level/block/events/BlockQueuedTickEvent.h similarity index 100% rename from src/mc/world/level/block/utils/blockEvents/BlockQueuedTickEvent.h rename to src/mc/world/level/block/events/BlockQueuedTickEvent.h diff --git a/src/mc/world/level/block/utils/blockEvents/BlockQueuedTickEventComponent.h b/src/mc/world/level/block/events/BlockQueuedTickEventComponent.h similarity index 100% rename from src/mc/world/level/block/utils/blockEvents/BlockQueuedTickEventComponent.h rename to src/mc/world/level/block/events/BlockQueuedTickEventComponent.h diff --git a/src/mc/world/level/block/utils/blockEvents/BlockRandomTickEvent.h b/src/mc/world/level/block/events/BlockRandomTickEvent.h similarity index 100% rename from src/mc/world/level/block/utils/blockEvents/BlockRandomTickEvent.h rename to src/mc/world/level/block/events/BlockRandomTickEvent.h diff --git a/src/mc/world/level/block/utils/blockEvents/BlockRandomTickEventComponent.h b/src/mc/world/level/block/events/BlockRandomTickEventComponent.h similarity index 100% rename from src/mc/world/level/block/utils/blockEvents/BlockRandomTickEventComponent.h rename to src/mc/world/level/block/events/BlockRandomTickEventComponent.h diff --git a/src/mc/world/level/block/utils/blockEvents/BlockStepOffEvent.h b/src/mc/world/level/block/events/BlockStepOffEvent.h similarity index 100% rename from src/mc/world/level/block/utils/blockEvents/BlockStepOffEvent.h rename to src/mc/world/level/block/events/BlockStepOffEvent.h diff --git a/src/mc/world/level/block/utils/blockEvents/BlockStepOffEventComponent.h b/src/mc/world/level/block/events/BlockStepOffEventComponent.h similarity index 100% rename from src/mc/world/level/block/utils/blockEvents/BlockStepOffEventComponent.h rename to src/mc/world/level/block/events/BlockStepOffEventComponent.h diff --git a/src/mc/world/level/block/utils/blockEvents/BlockStepOnEvent.h b/src/mc/world/level/block/events/BlockStepOnEvent.h similarity index 100% rename from src/mc/world/level/block/utils/blockEvents/BlockStepOnEvent.h rename to src/mc/world/level/block/events/BlockStepOnEvent.h diff --git a/src/mc/world/level/block/utils/blockEvents/BlockStepOnEventComponent.h b/src/mc/world/level/block/events/BlockStepOnEventComponent.h similarity index 100% rename from src/mc/world/level/block/utils/blockEvents/BlockStepOnEventComponent.h rename to src/mc/world/level/block/events/BlockStepOnEventComponent.h diff --git a/src/mc/world/level/block/registry/BlockTypeRegistry.h b/src/mc/world/level/block/registry/BlockTypeRegistry.h index 12d4d5846b..1f50020141 100644 --- a/src/mc/world/level/block/registry/BlockTypeRegistry.h +++ b/src/mc/world/level/block/registry/BlockTypeRegistry.h @@ -110,7 +110,7 @@ class BlockTypeRegistry { getComplexAliasPostSplitBlockNames(class HashedString const&); // symbol: ?getDefaultBlockState@BlockTypeRegistry@@SAAEBVBlock@@AEBVHashedString@@_N@Z - MCAPI static class Block const& getDefaultBlockState(class HashedString const& name, bool); + MCAPI static class Block const& getDefaultBlockState(class HashedString const& name, bool logNotFound); // symbol: ?getDirectAccessBlocks@BlockTypeRegistry@@SAAEBUDirectAccessBlocks@1@XZ MCAPI static struct BlockTypeRegistry::DirectAccessBlocks const& getDirectAccessBlocks(); @@ -127,16 +127,16 @@ class BlockTypeRegistry { // symbol: // ?lookupByName@BlockTypeRegistry@@SAPEBVBlock@@AEBVHashedString@@AEBV?$vector@UBlockComplexAliasBlockState@BlockTypeRegistry@@V?$allocator@UBlockComplexAliasBlockState@BlockTypeRegistry@@@std@@@std@@_N@Z MCAPI static class Block const* lookupByName( - class HashedString const& name, - std::vector const&, - bool + class HashedString const& name, + std::vector const& states, + bool logNotFound ); // symbol: ?lookupByName@BlockTypeRegistry@@SAPEBVBlock@@AEBVHashedString@@H_N@Z - MCAPI static class Block const* lookupByName(class HashedString const& name, int data, bool); + MCAPI static class Block const* lookupByName(class HashedString const& name, int data, bool logNotFound); // symbol: ?lookupByName@BlockTypeRegistry@@SA?AV?$WeakPtr@VBlockLegacy@@@@AEBVHashedString@@_N@Z - MCAPI static class WeakPtr lookupByName(class HashedString const& name, bool); + MCAPI static class WeakPtr lookupByName(class HashedString const& name, bool logNotFound); // symbol: ?prepareBlocks@BlockTypeRegistry@@SAXI@Z MCAPI static void prepareBlocks(uint latestUpdaterVersion); @@ -170,8 +170,12 @@ class BlockTypeRegistry { // symbol: // ?_lookupByNameImpl@BlockTypeRegistry@@CA?AULookupByNameImplReturnType@1@AEBVHashedString@@HW4LookupByNameImplResolve@1@_N@Z - MCAPI static struct BlockTypeRegistry::LookupByNameImplReturnType - _lookupByNameImpl(class HashedString const& name, int data, ::BlockTypeRegistry::LookupByNameImplResolve, bool); + MCAPI static struct BlockTypeRegistry::LookupByNameImplReturnType _lookupByNameImpl( + class HashedString const& name, + int data, + ::BlockTypeRegistry::LookupByNameImplResolve, + bool logNotFound + ); // NOLINTEND diff --git a/src/mc/world/level/block/registry/UnknownBlockTypeRegistry.h b/src/mc/world/level/block/registry/UnknownBlockTypeRegistry.h index 11e1e963d6..a5ba8bbceb 100644 --- a/src/mc/world/level/block/registry/UnknownBlockTypeRegistry.h +++ b/src/mc/world/level/block/registry/UnknownBlockTypeRegistry.h @@ -26,7 +26,7 @@ class UnknownBlockTypeRegistry : public ::IUnknownBlockTypeRegistry { // NOLINTBEGIN // symbol: // ?_registerBlock@UnknownBlockTypeRegistry@@AEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_K@Z - MCAPI void _registerBlock(std::string const& name, uint64); + MCAPI void _registerBlock(std::string const& name, uint64 serIdHash); // NOLINTEND }; diff --git a/src/mc/world/level/block/utils/BlockListSerializer.h b/src/mc/world/level/block/utils/BlockListSerializer.h index ce497d9f60..334eee8bda 100644 --- a/src/mc/world/level/block/utils/BlockListSerializer.h +++ b/src/mc/world/level/block/utils/BlockListSerializer.h @@ -17,16 +17,20 @@ class BlockListSerializer { public: // NOLINTBEGIN // symbol: ?loadJSON@BlockListSerializer@@SAXVValue@Json@@AEBVSemVersion@@AEAVBlockDescriptor@@@Z - MCAPI static void loadJSON(class Json::Value value, class SemVersion const& engineVersion, class BlockDescriptor&); + MCAPI static void + loadJSON(class Json::Value value, class SemVersion const& engineVersion, class BlockDescriptor& blockDescriptor); // symbol: // ?loadJSON@BlockListSerializer@@SAXVValue@Json@@AEBVSemVersion@@AEAV?$vector@VBlockDescriptor@@V?$allocator@VBlockDescriptor@@@std@@@std@@@Z - MCAPI static void - loadJSON(class Json::Value value, class SemVersion const& engineVersion, std::vector&); + MCAPI static void loadJSON( + class Json::Value value, + class SemVersion const& engineVersion, + std::vector& blockDescriptors + ); // symbol: // ?saveJSON@BlockListSerializer@@SAXAEBV?$vector@VBlockDescriptor@@V?$allocator@VBlockDescriptor@@@std@@@std@@AEAVValue@Json@@@Z - MCAPI static void saveJSON(std::vector const&, class Json::Value& value); + MCAPI static void saveJSON(std::vector const& blockDescriptors, class Json::Value& value); // NOLINTEND }; diff --git a/src/mc/world/level/block/utils/DepthBasedBlockSupplierUtils.h b/src/mc/world/level/block/utils/DepthBasedBlockSupplierUtils.h index d0330929a3..d1efab9ad9 100644 --- a/src/mc/world/level/block/utils/DepthBasedBlockSupplierUtils.h +++ b/src/mc/world/level/block/utils/DepthBasedBlockSupplierUtils.h @@ -6,7 +6,7 @@ namespace DepthBasedBlockSupplierUtils { // NOLINTBEGIN // symbol: ?getDepthBasedBlock@DepthBasedBlockSupplierUtils@@YAPEBVBlock@@HAEAVIRandom@@PEBV2@1@Z MCAPI class Block const* -getDepthBasedBlock(int, class IRandom& random, class Block const* fillBlock, class Block const*); +getDepthBasedBlock(int posY, class IRandom& random, class Block const* fillBlock, class Block const*); // NOLINTEND }; // namespace DepthBasedBlockSupplierUtils diff --git a/src/mc/world/level/block/utils/PlacementDirection.h b/src/mc/world/level/block/utils/PlacementDirection.h index db9a6b84b4..2f88e45413 100644 --- a/src/mc/world/level/block/utils/PlacementDirection.h +++ b/src/mc/world/level/block/utils/PlacementDirection.h @@ -42,8 +42,10 @@ class PlacementDirection : public ::BlockTrait::ITrait { // NOLINTBEGIN // symbol: // ?fromStringVector@EnabledStates@PlacementDirection@BlockTrait@@SAXAEAU123@AEBV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@@Z - MCAPI static void - fromStringVector(struct BlockTrait::PlacementDirection::EnabledStates& instance, std::vector const&); + MCAPI static void fromStringVector( + struct BlockTrait::PlacementDirection::EnabledStates& instance, + std::vector const& states + ); // NOLINTEND }; diff --git a/src/mc/world/level/block/utils/VanillaBlockStateTransformUtils.h b/src/mc/world/level/block/utils/VanillaBlockStateTransformUtils.h index 2847d102e9..74044056a5 100644 --- a/src/mc/world/level/block/utils/VanillaBlockStateTransformUtils.h +++ b/src/mc/world/level/block/utils/VanillaBlockStateTransformUtils.h @@ -18,10 +18,10 @@ class VanillaBlockStateTransformUtils { public: // NOLINTBEGIN // symbol: ?transformBlock@VanillaBlockStateTransformUtils@@SAPEBVBlock@@AEBV2@W4CommonDirection@@@Z - MCAPI static class Block const* transformBlock(class Block const& block, ::CommonDirection); + MCAPI static class Block const* transformBlock(class Block const& block, ::CommonDirection targetDirection); // symbol: ?transformBlock@VanillaBlockStateTransformUtils@@SAPEBVBlock@@AEBV2@W4Name@Facing@@@Z - MCAPI static class Block const* transformBlock(class Block const& block, ::Facing::Name); + MCAPI static class Block const* transformBlock(class Block const& block, ::Facing::Name targetDirection); // symbol: ?transformBlock@VanillaBlockStateTransformUtils@@SAPEBVBlock@@AEBV2@W4Rotation@@W4Mirror@@@Z MCAPI static class Block const* transformBlock(class Block const& block, ::Rotation rotation, ::Mirror mirror); diff --git a/src/mc/world/level/block/utils/VanillaBlockTypes.h b/src/mc/world/level/block/utils/VanillaBlockTypes.h index 887d394457..246486760a 100644 --- a/src/mc/world/level/block/utils/VanillaBlockTypes.h +++ b/src/mc/world/level/block/utils/VanillaBlockTypes.h @@ -83,7 +83,7 @@ MCAPI extern class WeakPtr mWeatheredCutCopperStairs; MCAPI void registerBlockMappings(); // symbol: ?registerBlocks@VanillaBlockTypes@@YAXAEBVBaseGameVersion@@AEBVExperiments@@@Z -MCAPI void registerBlocks(class BaseGameVersion const& baseGameVersion, class Experiments const&); +MCAPI void registerBlocks(class BaseGameVersion const& baseGameVersion, class Experiments const& experiments); // symbol: ?unregisterBlocks@VanillaBlockTypes@@YAXXZ MCAPI void unregisterBlocks(); diff --git a/src/mc/world/level/block/utils/VanillaBlocks.h b/src/mc/world/level/block/utils/VanillaBlocks.h index 9f23de6cda..185aee72ac 100644 --- a/src/mc/world/level/block/utils/VanillaBlocks.h +++ b/src/mc/world/level/block/utils/VanillaBlocks.h @@ -5,7 +5,7 @@ namespace VanillaBlocks { // NOLINTBEGIN // symbol: ?assignBlocks@VanillaBlocks@@YAXAEBVExperiments@@@Z -MCAPI void assignBlocks(class Experiments const&); +MCAPI void assignBlocks(class Experiments const& experiments); // symbol: ?mBambooSapling@VanillaBlocks@@3PEBVBlock@@EB MCAPI extern class Block const* mBambooSapling; diff --git a/src/mc/world/level/chunk/AverageTracker.h b/src/mc/world/level/chunk/AverageTracker.h index c989da5fce..a94cec2993 100644 --- a/src/mc/world/level/chunk/AverageTracker.h +++ b/src/mc/world/level/chunk/AverageTracker.h @@ -12,7 +12,7 @@ struct AverageTracker { public: // NOLINTBEGIN // symbol: ?addSample@AverageTracker@@QEAAXV?$duration@_JU?$ratio@$00$0DLJKMKAA@@std@@@chrono@std@@@Z - MCAPI void addSample(std::chrono::nanoseconds); + MCAPI void addSample(std::chrono::nanoseconds dt); // NOLINTEND }; diff --git a/src/mc/world/level/chunk/ChunkBlenderFactory.h b/src/mc/world/level/chunk/ChunkBlenderFactory.h index 9dd5b97ba0..025c0ec650 100644 --- a/src/mc/world/level/chunk/ChunkBlenderFactory.h +++ b/src/mc/world/level/chunk/ChunkBlenderFactory.h @@ -32,7 +32,7 @@ class ChunkBlenderFactory { public: // NOLINTBEGIN // symbol: ?getOrCreateChunkBlender@ChunkBlenderFactory@@QEAA?AV?$shared_ptr@VChunkBlender@@@std@@AEBVChunkPos@@@Z - MCAPI std::shared_ptr getOrCreateChunkBlender(class ChunkPos const&); + MCAPI std::shared_ptr getOrCreateChunkBlender(class ChunkPos const& lcPosition); // symbol: ?isClientSide@ChunkBlenderFactory@@QEBA?B_NXZ MCAPI bool const isClientSide() const; @@ -43,13 +43,13 @@ class ChunkBlenderFactory { // NOLINTBEGIN // symbol: // ?_createChunkBlendingAttenuator@ChunkBlenderFactory@@AEBA?AV?$shared_ptr@VChunkBlender@@@std@@AEBVChunkPos@@@Z - MCAPI std::shared_ptr _createChunkBlendingAttenuator(class ChunkPos const&) const; + MCAPI std::shared_ptr _createChunkBlendingAttenuator(class ChunkPos const& lcPosition) const; // symbol: // ?_finalizeChunkAttenuationData@ChunkBlenderFactory@@AEBA?AV?$vector@V?$array@UAttenuationData@ChunkBlenderUtil@@$03@std@@V?$allocator@V?$array@UAttenuationData@ChunkBlenderUtil@@$03@std@@@2@@std@@AEBV?$vector@V?$array@UIntermediateAttenuationData@ChunkBlenderFactory@@$03@std@@V?$allocator@V?$array@UIntermediateAttenuationData@ChunkBlenderFactory@@$03@std@@@2@@3@@Z MCAPI std::vector> _finalizeChunkAttenuationData(std::vector< - std::array> const&) const; + std::array> const&) const; // symbol: // ?_processDensityColumn@ChunkBlenderFactory@@AEBAXAEAV?$vector@V?$array@UIntermediateAttenuationData@ChunkBlenderFactory@@$03@std@@V?$allocator@V?$array@UIntermediateAttenuationData@ChunkBlenderFactory@@$03@std@@@2@@std@@AEBVBlendingData@@MU?$pair@HH@3@2_N@Z diff --git a/src/mc/world/level/chunk/ChunkLoadedRequest.h b/src/mc/world/level/chunk/ChunkLoadedRequest.h index c912bb7747..f6de2013eb 100644 --- a/src/mc/world/level/chunk/ChunkLoadedRequest.h +++ b/src/mc/world/level/chunk/ChunkLoadedRequest.h @@ -21,7 +21,7 @@ class ChunkLoadedRequest { // symbol: // ??0ChunkLoadedRequest@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$unique_ptr@VIRequestAction@@U?$default_delete@VIRequestAction@@@std@@@2@_N@Z MCAPI ChunkLoadedRequest( - std::string const&, + std::string const& tickingAreaName, std::unique_ptr requestAction, bool allowNonPlayerTicking ); @@ -36,21 +36,25 @@ class ChunkLoadedRequest { ); // symbol: ?areAllChunksLoaded@ChunkLoadedRequest@@QEBA?AW4ChunksLoadedStatus@@AEAVDimension@@UTick@@@Z - MCAPI ::ChunksLoadedStatus areAllChunksLoaded(class Dimension& dimension, struct Tick) const; + MCAPI ::ChunksLoadedStatus areAllChunksLoaded(class Dimension& dimension, struct Tick currentLevelTick) const; // symbol: ?areaContainsChunk@ChunkLoadedRequest@@QEBA_NAEBVLevelChunk@@@Z MCAPI bool areaContainsChunk(class LevelChunk const& chunk) const; // symbol: ?serialize@ChunkLoadedRequest@@QEAA?AVCompoundTag@@W4ChunkRequestListType@@@Z - MCAPI class CompoundTag serialize(::ChunkRequestListType); + MCAPI class CompoundTag serialize(::ChunkRequestListType chunkRequestListType); // symbol: ??1ChunkLoadedRequest@@QEAA@XZ MCAPI ~ChunkLoadedRequest(); // symbol: // ?load@ChunkLoadedRequest@@SA?AUDeserializedChunkLoadedRequest@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVCompoundTag@@AEAVICommandOriginLoader@@0@Z - MCAPI static struct DeserializedChunkLoadedRequest - load(std::string const& key, class CompoundTag const& tag, class ICommandOriginLoader& loader, std::string const&); + MCAPI static struct DeserializedChunkLoadedRequest load( + std::string const& key, + class CompoundTag const& tag, + class ICommandOriginLoader& loader, + std::string const& dimensionPrefix + ); // NOLINTEND diff --git a/src/mc/world/level/chunk/ChunkSource.h b/src/mc/world/level/chunk/ChunkSource.h index e872d6e935..71fd065048 100644 --- a/src/mc/world/level/chunk/ChunkSource.h +++ b/src/mc/world/level/chunk/ChunkSource.h @@ -189,7 +189,10 @@ class ChunkSource : public ::Bedrock::EnableNonOwnerReferences { // protected: // NOLINTBEGIN // symbol: ?_checkAndDispatchTaskForLevelChunk@ChunkSource@@IEAA_NAEBU?$pair@VChunkPos@@W4ChunkState@@@std@@_N@Z - MCAPI bool _checkAndDispatchTaskForLevelChunk(std::pair const&, bool areInTask); + MCAPI bool _checkAndDispatchTaskForLevelChunk( + std::pair const& chunkPosAndExpectedState, + bool areInTask + ); // symbol: ?_checkForReplacementDataTask@ChunkSource@@IEAAXAEAVLevelChunk@@AEAVChunkViewSource@@@Z MCAPI void _checkForReplacementDataTask(class LevelChunk& lc, class ChunkViewSource& chunks); diff --git a/src/mc/world/level/chunk/ChunksLoadedInfo.h b/src/mc/world/level/chunk/ChunksLoadedInfo.h index fba92eb9a3..885a396ca0 100644 --- a/src/mc/world/level/chunk/ChunksLoadedInfo.h +++ b/src/mc/world/level/chunk/ChunksLoadedInfo.h @@ -28,8 +28,8 @@ struct ChunksLoadedInfo { class ChunkSource& source, struct Bounds const& bounds, bool isCircle, - struct Tick, - bool allowNonPlayerTicking + struct Tick currentLevelTick, + bool allowNonPlayerTicking ); // symbol: @@ -39,9 +39,9 @@ struct ChunksLoadedInfo { class ChunkSource& source, struct Bounds const& bounds, bool isCircle, - struct Tick, - bool allowUnloadedChunks, - bool allowNonPlayerTicking, + struct Tick currentLevelTick, + bool allowUnloadedChunks, + bool allowNonPlayerTicking, bool ); diff --git a/src/mc/world/level/chunk/IRequestAction.h b/src/mc/world/level/chunk/IRequestAction.h index 02d1852fa9..9cb91c3df0 100644 --- a/src/mc/world/level/chunk/IRequestAction.h +++ b/src/mc/world/level/chunk/IRequestAction.h @@ -28,7 +28,7 @@ class IRequestAction { virtual bool operator==(class IRequestAction const& action) const; // symbol: ??0IRequestAction@@QEAA@AEBW4RequestActionType@0@@Z - MCAPI explicit IRequestAction(::IRequestAction::RequestActionType const&); + MCAPI explicit IRequestAction(::IRequestAction::RequestActionType const& actionType); // symbol: ?isValidTag@IRequestAction@@SA_NAEBVCompoundTag@@@Z MCAPI static bool isValidTag(class CompoundTag const& tag); diff --git a/src/mc/world/level/chunk/LevelChunk.h b/src/mc/world/level/chunk/LevelChunk.h index 68e6a450ee..c4c8eaa50a 100644 --- a/src/mc/world/level/chunk/LevelChunk.h +++ b/src/mc/world/level/chunk/LevelChunk.h @@ -244,7 +244,7 @@ class LevelChunk { gsl::span> ignoredEntities, class AABB const& bb, std::vector& entities, - bool + bool useHitbox ) const; // symbol: @@ -683,7 +683,7 @@ class LevelChunk { // symbol: // ?_fixupCorruptedBlockActors@LevelChunk@@IEAAXAEAV?$unordered_map@VChunkBlockPos@@V?$shared_ptr@VBlockActor@@@std@@U?$hash@VChunkBlockPos@@@3@U?$equal_to@VChunkBlockPos@@@3@V?$allocator@U?$pair@$$CBVChunkBlockPos@@V?$shared_ptr@VBlockActor@@@std@@@std@@@3@@std@@V?$buffer_span_mut@USubChunk@@@@@Z MCAPI void - _fixupCorruptedBlockActors(std::unordered_map>&, class buffer_span_mut); + _fixupCorruptedBlockActors(std::unordered_map>& deserialized, class buffer_span_mut); // symbol: ?_generateOriginalLighting@LevelChunk@@IEAAXAEAVChunkViewSource@@_N@Z MCAPI void _generateOriginalLighting(class ChunkViewSource& neighborhood, bool enforceBorderCheck); diff --git a/src/mc/world/level/chunk/RequestActionLoader.h b/src/mc/world/level/chunk/RequestActionLoader.h index 9de6b9560d..6ab4c4cc5a 100644 --- a/src/mc/world/level/chunk/RequestActionLoader.h +++ b/src/mc/world/level/chunk/RequestActionLoader.h @@ -15,12 +15,16 @@ class RequestActionLoader { public: // NOLINTBEGIN // symbol: ?isValidTag@RequestActionLoader@@SA_NW4RequestActionType@IRequestAction@@AEBVCompoundTag@@@Z - MCAPI static bool isValidTag(::IRequestAction::RequestActionType, class CompoundTag const& tag); + MCAPI static bool isValidTag(::IRequestAction::RequestActionType actionType, class CompoundTag const& tag); // symbol: // ?load@RequestActionLoader@@SA?AV?$unique_ptr@VIRequestAction@@U?$default_delete@VIRequestAction@@@std@@@std@@W4RequestActionType@IRequestAction@@AEBVCompoundTag@@AEAVICommandOriginLoader@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@@Z - MCAPI static std::unique_ptr - load(::IRequestAction::RequestActionType, class CompoundTag const& tag, class ICommandOriginLoader& loader, std::string const&); + MCAPI static std::unique_ptr load( + ::IRequestAction::RequestActionType actionType, + class CompoundTag const& tag, + class ICommandOriginLoader& loader, + std::string const& dimensionPrefix + ); // NOLINTEND }; diff --git a/src/mc/world/level/chunk/StructureAnimationAction.h b/src/mc/world/level/chunk/StructureAnimationAction.h index 20d731456f..c1c83fd361 100644 --- a/src/mc/world/level/chunk/StructureAnimationAction.h +++ b/src/mc/world/level/chunk/StructureAnimationAction.h @@ -29,20 +29,24 @@ class StructureAnimationAction : public ::IRequestAction { // symbol: // ??0StructureAnimationAction@@QEAA@V?$unique_ptr@VStructureAnimationData@@U?$default_delete@VStructureAnimationData@@@std@@@std@@V?$AutomaticID@VDimension@@H@@@Z - MCAPI StructureAnimationAction(std::unique_ptr, DimensionType dimensionType); + MCAPI StructureAnimationAction( + std::unique_ptr structureAnimationData, + DimensionType dimensionType + ); // symbol: // ??0StructureAnimationAction@@QEAA@AEBVStructureSettings@@V?$AutomaticID@VDimension@@H@@AEBVBlockPos@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z MCAPI StructureAnimationAction( class StructureSettings const& structureSettings, DimensionType dimensionType, - class BlockPos const&, - std::string const& fullName + class BlockPos const& loadPosition, + std::string const& fullName ); // symbol: // ?load@StructureAnimationAction@@SA?AV?$unique_ptr@VStructureAnimationAction@@U?$default_delete@VStructureAnimationAction@@@std@@@std@@AEBVCompoundTag@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@@Z - MCAPI static std::unique_ptr load(class CompoundTag const& tag, std::string const&); + MCAPI static std::unique_ptr + load(class CompoundTag const& tag, std::string const& dimensionPrefix); // NOLINTEND }; diff --git a/src/mc/world/level/chunk/SubChunkRelighter.h b/src/mc/world/level/chunk/SubChunkRelighter.h index 678fd78cd3..8149969562 100644 --- a/src/mc/world/level/chunk/SubChunkRelighter.h +++ b/src/mc/world/level/chunk/SubChunkRelighter.h @@ -63,8 +63,8 @@ class SubChunkRelighter { struct Brightness newBrightness, struct Brightness oldAbsorption, struct Brightness newAbsorption, - uint, - uint subChunkIndex + uint lightType, + uint subChunkIndex ); // symbol: ?_setPropagatedBlockLightValue@SubChunkRelighter@@QEAAXUSubChunkLightIndex@@E@Z diff --git a/src/mc/world/level/chunk/VanillaLevelChunkUpgrade.h b/src/mc/world/level/chunk/VanillaLevelChunkUpgrade.h index a408454cc1..b8519829ae 100644 --- a/src/mc/world/level/chunk/VanillaLevelChunkUpgrade.h +++ b/src/mc/world/level/chunk/VanillaLevelChunkUpgrade.h @@ -52,21 +52,21 @@ MCAPI void fillNegativeSubChunksWithGenerationOrAir( // symbol: // ?fixBlockStatesOnChunkBorderAxis@VanillaLevelChunkUpgrade@@YAXAEAVBlockSource@@AEBVLevelChunk@@EVBlockPos@@W4Axis@1@@Z MCAPI void fixBlockStatesOnChunkBorderAxis( - class BlockSource& region, - class LevelChunk const& levelChunk, - uchar, - class BlockPos pos, - ::VanillaLevelChunkUpgrade::Axis + class BlockSource& region, + class LevelChunk const& levelChunk, + uchar chunkAxisPos, + class BlockPos pos, + ::VanillaLevelChunkUpgrade::Axis fixAxis ); // symbol: ?fixStemBlockStates@VanillaLevelChunkUpgrade@@YAXAEAVBlockSource@@VBlockPos@@AEBVBlock@@@Z -MCAPI void fixStemBlockStates(class BlockSource& region, class BlockPos, class Block const& block); +MCAPI void fixStemBlockStates(class BlockSource& region, class BlockPos updatePos, class Block const& block); // symbol: ?fixUselessDynamicWater@VanillaLevelChunkUpgrade@@YAXAEAVLevelChunk@@AEAVBlockSource@@@Z MCAPI void fixUselessDynamicWater(class LevelChunk& lc, class BlockSource& region); // symbol: ?fixWallBlockStates@VanillaLevelChunkUpgrade@@YAXAEAVBlockSource@@VBlockPos@@@Z -MCAPI void fixWallBlockStates(class BlockSource& region, class BlockPos); +MCAPI void fixWallBlockStates(class BlockSource& region, class BlockPos updatePos); // symbol: ?fixWallChunk@VanillaLevelChunkUpgrade@@YAXAEAVLevelChunk@@AEAVBlockSource@@@Z MCAPI void fixWallChunk(class LevelChunk& lc, class BlockSource& region); diff --git a/src/mc/world/level/dimension/ChunkBuildOrderPolicy.h b/src/mc/world/level/dimension/ChunkBuildOrderPolicy.h index 59a1d8dee9..59c8b9b654 100644 --- a/src/mc/world/level/dimension/ChunkBuildOrderPolicy.h +++ b/src/mc/world/level/dimension/ChunkBuildOrderPolicy.h @@ -27,7 +27,7 @@ class ChunkBuildOrderPolicy : public ::ChunkBuildOrderPolicyBase { virtual void unregisterForUpdates(uint handle); // vIndex: 4, symbol: ?setPlayerInfluence@ChunkBuildOrderPolicy@@UEAAXIAEBVChunkPos@@AEBVVec3@@@Z - virtual void setPlayerInfluence(uint handle, class ChunkPos const&, class Vec3 const&); + virtual void setPlayerInfluence(uint handle, class ChunkPos const& playerPosition, class Vec3 const&); // vIndex: 5, symbol: ?setTickingAreaInfluence@ChunkBuildOrderPolicy@@UEAAXIAEBVChunkPos@@HH_N1@Z virtual void setTickingAreaInfluence(uint handle, class ChunkPos const&, int sizeX, int sizeZ, bool isCircle, bool); diff --git a/src/mc/world/level/dimension/ChunkBuildOrderPolicyBase.h b/src/mc/world/level/dimension/ChunkBuildOrderPolicyBase.h index 5f366bc7ea..0cc9748f8d 100644 --- a/src/mc/world/level/dimension/ChunkBuildOrderPolicyBase.h +++ b/src/mc/world/level/dimension/ChunkBuildOrderPolicyBase.h @@ -24,7 +24,7 @@ class ChunkBuildOrderPolicyBase { virtual void unregisterForUpdates(uint handle) = 0; // vIndex: 4, symbol: ?setPlayerInfluence@ChunkBuildOrderPolicy@@UEAAXIAEBVChunkPos@@AEBVVec3@@@Z - virtual void setPlayerInfluence(uint handle, class ChunkPos const&, class Vec3 const&) = 0; + virtual void setPlayerInfluence(uint handle, class ChunkPos const& playerPosition, class Vec3 const&) = 0; // vIndex: 5, symbol: ?setTickingAreaInfluence@ChunkBuildOrderPolicy@@UEAAXIAEBVChunkPos@@HH_N1@Z virtual void diff --git a/src/mc/world/level/dimension/ChunkLoadActionList.h b/src/mc/world/level/dimension/ChunkLoadActionList.h index feb4e67f60..f9652e965f 100644 --- a/src/mc/world/level/dimension/ChunkLoadActionList.h +++ b/src/mc/world/level/dimension/ChunkLoadActionList.h @@ -21,20 +21,25 @@ class ChunkLoadActionList { // symbol: // ?addChunkLoadedRequest@ChunkLoadActionList@@QEAAXVChunkLoadedRequest@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4ChunksLoadedStatus@@AEAVLevelStorage@@@Z MCAPI void addChunkLoadedRequest( - class ChunkLoadedRequest, - std::string const&, - ::ChunksLoadedStatus, - class LevelStorage& levelStorage + class ChunkLoadedRequest chunkLoadedRequest, + std::string const& dimensionPrefix, + ::ChunksLoadedStatus chunksLoadedStatus, + class LevelStorage& levelStorage ); // symbol: // ?loadRequest@ChunkLoadActionList@@QEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVCompoundTag@@AEAVICommandOriginLoader@@0@Z - MCAPI void - loadRequest(std::string const& key, class CompoundTag const& tag, class ICommandOriginLoader& loader, std::string const&); + MCAPI void loadRequest( + std::string const& key, + class CompoundTag const& tag, + class ICommandOriginLoader& loader, + std::string const& dimensionPrefix + ); // symbol: // ?loadRequests@ChunkLoadActionList@@QEAAXAEAVLevelStorage@@AEAVICommandOriginLoader@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z - MCAPI void loadRequests(class LevelStorage& storage, class ICommandOriginLoader& loader, std::string const&); + MCAPI void + loadRequests(class LevelStorage& storage, class ICommandOriginLoader& loader, std::string const& dimensionPrefix); // symbol: // ?onChunkLoaded@ChunkLoadActionList@@QEAAXAEAVLevelStorage@@AEAVChunkSource@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEAVLevelChunk@@UTick@@@Z @@ -58,14 +63,14 @@ class ChunkLoadActionList { // symbol: // ?queueRequestOrExecuteAction@ChunkLoadActionList@@QEAA?AW4QueueRequestResult@@VChunkLoadedRequest@@AEAVServerLevel@@AEAVLevelStorage@@AEAVDimension@@@Z MCAPI ::QueueRequestResult queueRequestOrExecuteAction( - class ChunkLoadedRequest, - class ServerLevel&, - class LevelStorage& levelStorage, - class Dimension& dimension + class ChunkLoadedRequest chunkLoadedRequest, + class ServerLevel& serverLevel, + class LevelStorage& levelStorage, + class Dimension& dimension ); // symbol: ?tickRequests@ChunkLoadActionList@@QEAAXAEAVServerLevel@@AEAVDimension@@@Z - MCAPI void tickRequests(class ServerLevel&, class Dimension& dimension); + MCAPI void tickRequests(class ServerLevel& serverLevel, class Dimension& dimension); // symbol: ??1ChunkLoadActionList@@QEAA@XZ MCAPI ~ChunkLoadActionList(); @@ -77,19 +82,19 @@ class ChunkLoadActionList { // symbol: // ?_addChunkLoadedRequest@ChunkLoadActionList@@AEAAXVChunkLoadedRequest@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4ChunksLoadedStatus@@AEAVLevelStorage@@@Z MCAPI void _addChunkLoadedRequest( - class ChunkLoadedRequest, - std::string const&, - ::ChunksLoadedStatus, - class LevelStorage& levelStorage + class ChunkLoadedRequest chunkLoadedRequest, + std::string const& dimensionPrefix, + ::ChunksLoadedStatus chunksLoadedStatus, + class LevelStorage& levelStorage ); // symbol: // ?_saveRequest@ChunkLoadActionList@@AEAAXAEAVChunkLoadedRequest@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4ChunkRequestListType@@AEAVLevelStorage@@@Z MCAPI void _saveRequest( class ChunkLoadedRequest& request, - std::string const&, - ::ChunkRequestListType, - class LevelStorage& levelStorage + std::string const& dimensionPrefix, + ::ChunkRequestListType chunkRequestListType, + class LevelStorage& levelStorage ); // symbol: @@ -100,7 +105,7 @@ class ChunkLoadActionList { // symbol: // ?_updateTickingList@ChunkLoadActionList@@AEAAXAEAVServerLevel@@AEAVDimension@@V?$function@$$A6A?AW4ChunksLoadedStatus@@AEAVChunkLoadedRequest@@@Z@std@@@Z MCAPI void - _updateTickingList(class ServerLevel&, class Dimension& dimension, std::function<::ChunksLoadedStatus(class ChunkLoadedRequest&)>); + _updateTickingList(class ServerLevel& serverLevel, class Dimension& dimension, std::function<::ChunksLoadedStatus(class ChunkLoadedRequest&)>); // NOLINTEND }; diff --git a/src/mc/world/level/dimension/Dimension.h b/src/mc/world/level/dimension/Dimension.h index 56d2461e5d..30029e2e52 100644 --- a/src/mc/world/level/dimension/Dimension.h +++ b/src/mc/world/level/dimension/Dimension.h @@ -190,11 +190,11 @@ class Dimension { // symbol: // ??0Dimension@@QEAA@AEAVILevel@@V?$AutomaticID@VDimension@@H@@VDimensionHeightRange@@AEAVScheduler@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z MCAPI Dimension( - class ILevel& level, - DimensionType dimId, - class DimensionHeightRange, - class Scheduler& callbackContext, - std::string name + class ILevel& level, + DimensionType dimId, + class DimensionHeightRange heightRange, + class Scheduler& callbackContext, + std::string name ); // symbol: @@ -373,7 +373,7 @@ class Dimension { // symbol: // ?onStaticTickingAreaAdded@Dimension@@QEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z - MCAPI void onStaticTickingAreaAdded(std::string const&); + MCAPI void onStaticTickingAreaAdded(std::string const& tickingAreaName); // symbol: ?pauseAndFlushTaskGroups@Dimension@@QEAAXXZ MCAPI void pauseAndFlushTaskGroups(); @@ -432,7 +432,7 @@ class Dimension { MCAPI void tryGarbageCollectStructures(); // symbol: ?tryLoadLimboEntities@Dimension@@QEAAXAEBVChunkPos@@@Z - MCAPI void tryLoadLimboEntities(class ChunkPos const&); + MCAPI void tryLoadLimboEntities(class ChunkPos const& loadPos); // symbol: ?unregisterDisplayEntity@Dimension@@QEAAXV?$WeakRef@VEntityContext@@@@@Z MCAPI void unregisterDisplayEntity(class WeakRef); diff --git a/src/mc/world/level/dimension/DimensionDataSerializer.h b/src/mc/world/level/dimension/DimensionDataSerializer.h index abe478dff4..00b9c0662a 100644 --- a/src/mc/world/level/dimension/DimensionDataSerializer.h +++ b/src/mc/world/level/dimension/DimensionDataSerializer.h @@ -13,7 +13,7 @@ class DimensionDataSerializer { // NOLINTBEGIN // symbol: // ?createSaveID@DimensionDataSerializer@@QEAA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV23@0@Z - MCAPI std::string createSaveID(std::string const&, std::string const&); + MCAPI std::string createSaveID(std::string const&, std::string const& dimensionPrefix); // symbol: // ?deleteDataWithID@DimensionDataSerializer@@QEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEAVLevelStorage@@@Z @@ -23,7 +23,7 @@ class DimensionDataSerializer { // ?forEachKeyWithDimensionPrefix@DimensionDataSerializer@@QEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0AEAVLevelStorage@@AEBV?$function@$$A6AXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVCompoundTag@@@Z@3@@Z MCAPI void forEachKeyWithDimensionPrefix( std::string const&, - std::string const&, + std::string const& dimensionPrefix, class LevelStorage& levelStorage, std::function const& callback ); @@ -38,7 +38,8 @@ class DimensionDataSerializer { // NOLINTBEGIN // symbol: // ?_createLevelStorageID@DimensionDataSerializer@@IEAA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV23@00@Z - MCAPI std::string _createLevelStorageID(std::string const&, std::string const&, std::string const&); + MCAPI std::string + _createLevelStorageID(std::string const&, std::string const& dimensionPrefix, std::string const& saveId); // NOLINTEND }; diff --git a/src/mc/world/level/dimension/end/EndDragonFight.h b/src/mc/world/level/dimension/end/EndDragonFight.h index 094a3508c0..0f20f3a14f 100644 --- a/src/mc/world/level/dimension/end/EndDragonFight.h +++ b/src/mc/world/level/dimension/end/EndDragonFight.h @@ -76,7 +76,7 @@ class EndDragonFight { MCAPI struct BuildMatch _findExitPortal(); // symbol: ?_initializeDragon@EndDragonFight@@AEAAXAEAVEnderDragon@@@Z - MCAPI void _initializeDragon(class EnderDragon&); + MCAPI void _initializeDragon(class EnderDragon& enderDragon); // symbol: ?_makeEndIslandFeature@EndDragonFight@@AEAAXAEAVBlockSource@@VBlockPos@@@Z MCAPI void _makeEndIslandFeature(class BlockSource& region, class BlockPos position); @@ -114,7 +114,7 @@ class EndDragonFight { // symbol: // ?_tickRespawnAnimation@EndDragonFight@@AEAAXAEBV?$vector@UActorUniqueID@@V?$allocator@UActorUniqueID@@@std@@@std@@H@Z - MCAPI void _tickRespawnAnimation(std::vector const&, int time); + MCAPI void _tickRespawnAnimation(std::vector const& crystalIDs, int time); // symbol: ?_updateCrystalCount@EndDragonFight@@AEAAXXZ MCAPI void _updateCrystalCount(); diff --git a/src/mc/world/level/levelgen/CachedHeightGenerator.h b/src/mc/world/level/levelgen/CachedHeightGenerator.h index cda70e857c..a297244312 100644 --- a/src/mc/world/level/levelgen/CachedHeightGenerator.h +++ b/src/mc/world/level/levelgen/CachedHeightGenerator.h @@ -7,9 +7,9 @@ namespace CachedHeightGenerator { // symbol: // ?cachedGenerationOfTerrainHeight@CachedHeightGenerator@@YAFAEBVBlockPos@@AEAVDimension@@AEAVBlockVolume@@AEAV?$unordered_map@VChunkPos@@V?$unique_ptr@V?$vector@FV?$allocator@F@std@@@std@@U?$default_delete@V?$vector@FV?$allocator@F@std@@@std@@@2@@std@@U?$hash@VChunkPos@@@3@U?$equal_to@VChunkPos@@@3@V?$allocator@U?$pair@$$CBVChunkPos@@V?$unique_ptr@V?$vector@FV?$allocator@F@std@@@std@@U?$default_delete@V?$vector@FV?$allocator@F@std@@@std@@@2@@std@@@std@@@3@@std@@@Z MCAPI short cachedGenerationOfTerrainHeight( - class BlockPos const& pos, - class Dimension& dimension, - class BlockVolume&, + class BlockPos const& pos, + class Dimension& dimension, + class BlockVolume& blockVolume, std::unordered_map>>& chunkHeightCache ); // NOLINTEND diff --git a/src/mc/world/level/levelgen/feature/BasaltColumnsFeature.h b/src/mc/world/level/levelgen/feature/BasaltColumnsFeature.h index 0a1b361598..aca7cf7df8 100644 --- a/src/mc/world/level/levelgen/feature/BasaltColumnsFeature.h +++ b/src/mc/world/level/levelgen/feature/BasaltColumnsFeature.h @@ -25,10 +25,11 @@ class BasaltColumnsFeature : public ::Feature { // private: // NOLINTBEGIN // symbol: ?_findSurface@BasaltColumnsFeature@@AEBA?AV?$optional@VBlockPos@@@std@@AEAVBlockSource@@VBlockPos@@HH@Z - MCAPI std::optional _findSurface(class BlockSource& region, class BlockPos, int limit, int) const; + MCAPI std::optional + _findSurface(class BlockSource& region, class BlockPos cursor, int limit, int yDirection) const; // symbol: ?_placeColumnCluster@BasaltColumnsFeature@@AEBAXAEAVBlockSource@@VBlockPos@@HH@Z - MCAPI void _placeColumnCluster(class BlockSource& region, class BlockPos origin, int, int) const; + MCAPI void _placeColumnCluster(class BlockSource& region, class BlockPos origin, int columnHeight, int reach) const; // NOLINTEND }; diff --git a/src/mc/world/level/levelgen/feature/BasaltPillarFeature.h b/src/mc/world/level/levelgen/feature/BasaltPillarFeature.h index 9f6aecec3f..5d8716d8cb 100644 --- a/src/mc/world/level/levelgen/feature/BasaltPillarFeature.h +++ b/src/mc/world/level/levelgen/feature/BasaltPillarFeature.h @@ -26,7 +26,7 @@ class BasaltPillarFeature : public ::Feature { // NOLINTBEGIN // symbol: ?_growColumn@BasaltPillarFeature@@AEBA_NAEAVBlockSource@@AEBVBlockPos@@AEAVRandom@@MAEBVBlock@@@Z MCAPI bool - _growColumn(class BlockSource& region, class BlockPos const& pos, class Random& random, float, class Block const&) + _growColumn(class BlockSource& region, class BlockPos const& pos, class Random& random, float placeChance, class Block const&) const; // NOLINTEND diff --git a/src/mc/world/level/levelgen/feature/DeltaFeature.h b/src/mc/world/level/levelgen/feature/DeltaFeature.h index 3d2eaecbd0..1d919b9d80 100644 --- a/src/mc/world/level/levelgen/feature/DeltaFeature.h +++ b/src/mc/world/level/levelgen/feature/DeltaFeature.h @@ -25,7 +25,7 @@ class DeltaFeature : public ::Feature { // private: // NOLINTBEGIN // symbol: ?_isValidPlacement@DeltaFeature@@AEBA_NAEAVBlockSource@@VBlockPos@@@Z - MCAPI bool _isValidPlacement(class BlockSource& region, class BlockPos) const; + MCAPI bool _isValidPlacement(class BlockSource& region, class BlockPos cursor) const; // NOLINTEND }; diff --git a/src/mc/world/level/levelgen/feature/HugeFungusFeature.h b/src/mc/world/level/levelgen/feature/HugeFungusFeature.h index 6d13b7cd2d..7c8afe2093 100644 --- a/src/mc/world/level/levelgen/feature/HugeFungusFeature.h +++ b/src/mc/world/level/levelgen/feature/HugeFungusFeature.h @@ -21,7 +21,7 @@ class HugeFungusFeature : public ::Feature { virtual bool place(class BlockSource& region, class BlockPos const& origin, class Random& random) const; // symbol: ??0HugeFungusFeature@@QEAA@_N@Z - MCAPI explicit HugeFungusFeature(bool); + MCAPI explicit HugeFungusFeature(bool isBlue); // NOLINTEND }; diff --git a/src/mc/world/level/levelgen/feature/HugeMushroomFeature.h b/src/mc/world/level/levelgen/feature/HugeMushroomFeature.h index b19f7eada4..331b8de62f 100644 --- a/src/mc/world/level/levelgen/feature/HugeMushroomFeature.h +++ b/src/mc/world/level/levelgen/feature/HugeMushroomFeature.h @@ -26,7 +26,7 @@ class HugeMushroomFeature : public ::Feature { MCAPI explicit HugeMushroomFeature(int forcedType); // symbol: ?placeFixed@HugeMushroomFeature@@QEBA_NAEAVBlockSource@@AEBVBlockPos@@HH@Z - MCAPI bool placeFixed(class BlockSource& region, class BlockPos const& pos, int, int height) const; + MCAPI bool placeFixed(class BlockSource& region, class BlockPos const& pos, int mushroomType, int height) const; // NOLINTEND diff --git a/src/mc/world/level/levelgen/feature/TwistingVinesClusterFeature.h b/src/mc/world/level/levelgen/feature/TwistingVinesClusterFeature.h index 26197e0328..cde42ec7aa 100644 --- a/src/mc/world/level/levelgen/feature/TwistingVinesClusterFeature.h +++ b/src/mc/world/level/levelgen/feature/TwistingVinesClusterFeature.h @@ -25,9 +25,14 @@ class TwistingVinesClusterFeature : public ::Feature { // private: // NOLINTBEGIN // symbol: ?_placeVineString@TwistingVinesClusterFeature@@AEBAXAEAVBlockSource@@AEAVRandom@@AEBVBlockPos@@HHH@Z - MCAPI void - _placeVineString(class BlockSource& region, class Random& random, class BlockPos const& vinePos, int, int, int) - const; + MCAPI void _placeVineString( + class BlockSource& region, + class Random& random, + class BlockPos const& vinePos, + int vineHeight, + int minAge, + int maxAge + ) const; // NOLINTEND }; diff --git a/src/mc/world/level/levelgen/feature/VanillaTreeFeature.h b/src/mc/world/level/levelgen/feature/VanillaTreeFeature.h index b6d6feb3a9..c098bfb2c1 100644 --- a/src/mc/world/level/levelgen/feature/VanillaTreeFeature.h +++ b/src/mc/world/level/levelgen/feature/VanillaTreeFeature.h @@ -53,7 +53,14 @@ class VanillaTreeFeature : public ::ITreeFeature { // symbol: // ?_buildVanillaCanopyVariants@VanillaTreeFeature@@CAXAEAV?$JsonSchemaObjectNode@V?$JsonParseState@VEmptyClass@JsonUtil@@UFeatureRootParseContext@FeatureLoading@@@JsonUtil@@U?$ConcreteFeatureHolder@VVanillaTreeFeature@@@FeatureLoading@@@JsonUtil@@V?$function@$$A6AAEAVITreeCanopyWrapper@@PEAU?$ConcreteFeatureHolder@VVanillaTreeFeature@@@FeatureLoading@@@Z@std@@@Z - MCAPI static void _buildVanillaCanopyVariants(class JsonUtil::JsonSchemaObjectNode, struct FeatureLoading::ConcreteFeatureHolder>& schemaNode, std::function*)>); + MCAPI static void _buildVanillaCanopyVariants( + class JsonUtil::JsonSchemaObjectNode< + class JsonUtil::JsonParseState, + struct FeatureLoading::ConcreteFeatureHolder>& schemaNode, + std::function< + class ITreeCanopyWrapper&(struct FeatureLoading::ConcreteFeatureHolder*)> + canopyAccessor + ); // symbol: // ?_buildVanillaRootVariants@VanillaTreeFeature@@CAXAEAV?$JsonSchemaObjectNode@V?$JsonParseState@VEmptyClass@JsonUtil@@UFeatureRootParseContext@FeatureLoading@@@JsonUtil@@U?$ConcreteFeatureHolder@VVanillaTreeFeature@@@FeatureLoading@@@JsonUtil@@V?$function@$$A6AAEAVITreeRootWrapper@@PEAU?$ConcreteFeatureHolder@VVanillaTreeFeature@@@FeatureLoading@@@Z@std@@@Z @@ -62,8 +69,13 @@ class VanillaTreeFeature : public ::ITreeFeature { // symbol: // ?_buildVanillaTrunkVariants@VanillaTreeFeature@@CAXAEAV?$JsonSchemaObjectNode@V?$JsonParseState@VEmptyClass@JsonUtil@@UFeatureRootParseContext@FeatureLoading@@@JsonUtil@@U?$ConcreteFeatureHolder@VVanillaTreeFeature@@@FeatureLoading@@@JsonUtil@@V?$function@$$A6AAEAVITreeTrunkWrapper@@PEAU?$ConcreteFeatureHolder@VVanillaTreeFeature@@@FeatureLoading@@@Z@std@@@Z - MCAPI static void - _buildVanillaTrunkVariants(class JsonUtil::JsonSchemaObjectNode, struct FeatureLoading::ConcreteFeatureHolder>& schemaNode, std::function*)>); + MCAPI static void _buildVanillaTrunkVariants( + class JsonUtil::JsonSchemaObjectNode< + class JsonUtil::JsonParseState, + struct FeatureLoading::ConcreteFeatureHolder>& schemaNode, + std::function*)> + trunkAccessor + ); // NOLINTEND }; diff --git a/src/mc/world/level/levelgen/feature/helpers/AcaciaTreeTrunk.h b/src/mc/world/level/levelgen/feature/helpers/AcaciaTreeTrunk.h index 076b204a6b..993fb920a3 100644 --- a/src/mc/world/level/levelgen/feature/helpers/AcaciaTreeTrunk.h +++ b/src/mc/world/level/levelgen/feature/helpers/AcaciaTreeTrunk.h @@ -35,23 +35,23 @@ class AcaciaTreeTrunk { // symbol: // ?_placeLeaningBranches@AcaciaTreeTrunk@@AEBAXAEAVIBlockWorldGenAPI@@AEBVBlockPos@@1AEAVRandom@@AEAVRenderParams@@HHHAEBUTreeParams@TreeHelper@@@Z MCAPI void _placeLeaningBranches( - class IBlockWorldGenAPI& target, - class BlockPos const& pos, - class BlockPos const&, - class Random& random, - class RenderParams& renderParams, - int treeHeight, - int, - int, + class IBlockWorldGenAPI& target, + class BlockPos const& pos, + class BlockPos const& branchPos, + class Random& random, + class RenderParams& renderParams, + int treeHeight, + int leanDirection, + int leanHeight, struct TreeHelper::TreeParams const& treeParams ) const; // symbol: // ?_placeVerticalBranches@AcaciaTreeTrunk@@AEBAXAEAVIBlockWorldGenAPI@@AEBVBlockPos@@1AEAVRandom@@AEAVRenderParams@@AEBUTreeParams@TreeHelper@@@Z MCAPI void _placeVerticalBranches( - class IBlockWorldGenAPI& target, - class BlockPos const& pos, - class BlockPos const&, + class IBlockWorldGenAPI& target, + class BlockPos const& pos, + class BlockPos const& branchPos, class Random& random, class RenderParams& renderParams, struct TreeHelper::TreeParams const& treeParams diff --git a/src/mc/world/level/levelgen/feature/helpers/MangroveTreeTrunk.h b/src/mc/world/level/levelgen/feature/helpers/MangroveTreeTrunk.h index 4f3aa4308c..302369882f 100644 --- a/src/mc/world/level/levelgen/feature/helpers/MangroveTreeTrunk.h +++ b/src/mc/world/level/levelgen/feature/helpers/MangroveTreeTrunk.h @@ -35,7 +35,7 @@ class MangroveTreeTrunk { // symbol: // ?_placeBranch@MangroveTreeTrunk@@AEBAXAEAVIBlockWorldGenAPI@@PEAV?$vector@VBlockPos@@V?$allocator@VBlockPos@@@std@@@std@@AEAVRandom@@HAEAVRenderParams@@AEBUTreeParams@TreeHelper@@AEAVBlockPos@@HEHHPEBVBlock@@@Z MCAPI void - _placeBranch(class IBlockWorldGenAPI& target, std::vector*, class Random& random, int treeHeight, class RenderParams&, struct TreeHelper::TreeParams const& treeParams, class BlockPos&, int, uchar, int, int, class Block const*) + _placeBranch(class IBlockWorldGenAPI& target, std::vector*, class Random& random, int treeHeight, class RenderParams&, struct TreeHelper::TreeParams const& treeParams, class BlockPos&, int, uchar, int branchPos, int, class Block const*) const; // NOLINTEND diff --git a/src/mc/world/level/levelgen/feature/helpers/TreeHelper.h b/src/mc/world/level/levelgen/feature/helpers/TreeHelper.h index 89f44f1dbb..e0518987ff 100644 --- a/src/mc/world/level/levelgen/feature/helpers/TreeHelper.h +++ b/src/mc/world/level/levelgen/feature/helpers/TreeHelper.h @@ -24,13 +24,26 @@ MCAPI bool isValidTreePosition( // symbol: // ?placeRadialBlockGroup@TreeHelper@@YA?AV?$optional@VBlockPos@@@std@@AEAVIBlockWorldGenAPI@@AEBVBlockPos@@AEAVRandom@@AEBVBlock@@HH_NAEBV?$vector@VBlockDescriptor@@V?$allocator@VBlockDescriptor@@@std@@@3@@Z -MCAPI std::optional -placeRadialBlockGroup(class IBlockWorldGenAPI& target, class BlockPos const& pos, class Random&, class Block const& block, int radius, int, bool, std::vector const&); +MCAPI std::optional placeRadialBlockGroup( + class IBlockWorldGenAPI& target, + class BlockPos const& pos, + class Random&, + class Block const& block, + int radius, + int coreWidth, + bool simplify, + std::vector const& mayGrowThrough +); // symbol: // ?prepareSpawn@TreeHelper@@YA_NAEBVIBlockWorldGenAPI@@AEBVBlockPos@@HAEBV?$vector@VBlockDescriptor@@V?$allocator@VBlockDescriptor@@@std@@@std@@2@Z -MCAPI bool -prepareSpawn(class IBlockWorldGenAPI const& target, class BlockPos const& pos, int treeHeight, std::vector const&, std::vector const&); +MCAPI bool prepareSpawn( + class IBlockWorldGenAPI const& target, + class BlockPos const& pos, + int treeHeight, + std::vector const& mayGrowOn, + std::vector const& mayGrowThrough +); // NOLINTEND }; // namespace TreeHelper diff --git a/src/mc/world/level/levelgen/feature/registry/FeatureRegistry.h b/src/mc/world/level/levelgen/feature/registry/FeatureRegistry.h index 862c34e7ef..2ad9db5558 100644 --- a/src/mc/world/level/levelgen/feature/registry/FeatureRegistry.h +++ b/src/mc/world/level/levelgen/feature/registry/FeatureRegistry.h @@ -129,7 +129,7 @@ class FeatureRegistry { // symbol: // ?_registerFeature@FeatureRegistry@@AEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$unique_ptr@VIFeature@@U?$default_delete@VIFeature@@@std@@@3@@Z - MCAPI void _registerFeature(std::string const& name, std::unique_ptr); + MCAPI void _registerFeature(std::string const& name, std::unique_ptr featurePtr); // symbol: // ?_setupFeature@FeatureRegistry@@AEAA_NAEAVIWorldRegistriesProvider@@_NAEBVResourcePackManager@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@3AEBVSemVersion@@1@Z diff --git a/src/mc/world/level/levelgen/structure/JigsawPlacement.h b/src/mc/world/level/levelgen/structure/JigsawPlacement.h index 27565fdfb4..5709d65fe9 100644 --- a/src/mc/world/level/levelgen/structure/JigsawPlacement.h +++ b/src/mc/world/level/levelgen/structure/JigsawPlacement.h @@ -19,9 +19,9 @@ class JigsawPlacement { // symbol: // ??0JigsawPlacement@@QEAA@_K0AEAV?$vector@V?$unique_ptr@VStructurePiece@@U?$default_delete@VStructurePiece@@@std@@@std@@V?$allocator@V?$unique_ptr@VStructurePiece@@U?$default_delete@VStructurePiece@@@std@@@std@@@2@@std@@V?$function@$$A6A?AV?$unique_ptr@VPoolElementStructurePiece@@U?$default_delete@VPoolElementStructurePiece@@@std@@@std@@AEBVStructurePoolElement@@AEBVBlockPos@@AEBW4Rotation@@HAEAUJigsawJunction@@AEBVBoundingBox@@1@Z@2@AEAVRandom@@AEBVJigsawStructureRegistry@@AEAVDimension@@@Z MCAPI JigsawPlacement( - uint64 maxDepth, - uint64, - std::vector>&, + uint64 maxDepth, + uint64 globalContextSize, + std::vector>& pieceList, std::function(class StructurePoolElement const&, class BlockPos const&, ::Rotation const&, int, struct JigsawJunction&, class BoundingBox const&, class BlockPos const&)> @@ -51,7 +51,7 @@ class JigsawPlacement { // symbol: // ?_findLocalAnchorOffset@JigsawPlacement@@AEBA?AVBlockPos@@AEBVStructurePoolElement@@AEBV2@AEBW4Rotation@@V?$basic_string_view@DU?$char_traits@D@std@@@std@@@Z MCAPI class BlockPos _findLocalAnchorOffset( - class StructurePoolElement const&, + class StructurePoolElement const& initialElement, class BlockPos const&, ::Rotation const& rotation, std::string_view diff --git a/src/mc/world/level/levelgen/structure/LegacyJigsawPlacement.h b/src/mc/world/level/levelgen/structure/LegacyJigsawPlacement.h index c1fb52a5ca..f15286478f 100644 --- a/src/mc/world/level/levelgen/structure/LegacyJigsawPlacement.h +++ b/src/mc/world/level/levelgen/structure/LegacyJigsawPlacement.h @@ -29,12 +29,12 @@ class LegacyJigsawPlacement { // ?addPieces@LegacyJigsawPlacement@@QEAAXAEAV?$vector@V?$unique_ptr@VStructurePiece@@U?$default_delete@VStructurePiece@@@std@@@std@@V?$allocator@V?$unique_ptr@VStructurePiece@@U?$default_delete@VStructurePiece@@@std@@@std@@@2@@std@@AEBVStructurePoolElement@@AEAVRandom@@AEBVBlockPos@@AEBW4Rotation@@AEBVJigsawStructureRegistry@@AEAVDimension@@@Z MCAPI void addPieces( std::vector>& pieces, - class StructurePoolElement const&, - class Random& random, - class BlockPos const& position, - ::Rotation const& rotation, - class JigsawStructureRegistry const& pools, - class Dimension& dimension + class StructurePoolElement const& initialElement, + class Random& random, + class BlockPos const& position, + ::Rotation const& rotation, + class JigsawStructureRegistry const& pools, + class Dimension& dimension ); // symbol: ??1LegacyJigsawPlacement@@QEAA@XZ @@ -48,31 +48,31 @@ class LegacyJigsawPlacement { // ?_addPiece@LegacyJigsawPlacement@@AEAAXAEAV?$vector@V?$unique_ptr@VStructurePiece@@U?$default_delete@VStructurePiece@@@std@@@std@@V?$allocator@V?$unique_ptr@VStructurePiece@@U?$default_delete@VStructurePiece@@@std@@@std@@@2@@std@@AEBVPoolElementStructurePiece@@AEAVRandom@@AEBVBlockPos@@AEBW4Rotation@@AEBVJigsawStructureRegistry@@AEAVDimension@@AEAVBlockVolume@@3@Z MCAPI void _addPiece( std::vector>& pieces, - class PoolElementStructurePiece const&, - class Random& random, - class BlockPos const& position, - ::Rotation const& rotation, - class JigsawStructureRegistry const& pools, - class Dimension& dimension, - class BlockVolume& box, - class BlockPos const& refPos + class PoolElementStructurePiece const& sourcePiece, + class Random& random, + class BlockPos const& position, + ::Rotation const& rotation, + class JigsawStructureRegistry const& pools, + class Dimension& dimension, + class BlockVolume& box, + class BlockPos const& refPos ); // symbol: // ?_tryPlacingPiece@LegacyJigsawPlacement@@AEAA_NAEAV?$vector@V?$unique_ptr@VStructurePiece@@U?$default_delete@VStructurePiece@@@std@@@std@@V?$allocator@V?$unique_ptr@VStructurePiece@@U?$default_delete@VStructurePiece@@@std@@@std@@@2@@std@@AEBVPoolElementStructurePiece@@AEAVRandom@@AEBVJigsawBlockInfo@@AEBVBoundingBox@@AEAV?$vector@VBoundingBox@@V?$allocator@VBoundingBox@@@std@@@3@AEBVBlockPos@@PEBVStructureTemplatePool@@AEBVJigsawStructureRegistry@@AEAVDimension@@AEAVBlockVolume@@6@Z MCAPI bool _tryPlacingPiece( std::vector>& pieces, - class PoolElementStructurePiece const&, - class Random& random, - class JigsawBlockInfo const& sourceJigsaw, - class BoundingBox const& sourceBB, - std::vector& sourceInternalBBs, - class BlockPos const& attachPos, - class StructureTemplatePool const* targetPool, - class JigsawStructureRegistry const& pools, - class Dimension& dimension, - class BlockVolume& box, - class BlockPos const& refPos + class PoolElementStructurePiece const& sourcePiece, + class Random& random, + class JigsawBlockInfo const& sourceJigsaw, + class BoundingBox const& sourceBB, + std::vector& sourceInternalBBs, + class BlockPos const& attachPos, + class StructureTemplatePool const* targetPool, + class JigsawStructureRegistry const& pools, + class Dimension& dimension, + class BlockVolume& box, + class BlockPos const& refPos ); // symbol: diff --git a/src/mc/world/level/levelgen/structure/StructureAnimationData.h b/src/mc/world/level/levelgen/structure/StructureAnimationData.h index fbad2462c3..901ba64c7c 100644 --- a/src/mc/world/level/levelgen/structure/StructureAnimationData.h +++ b/src/mc/world/level/levelgen/structure/StructureAnimationData.h @@ -16,8 +16,14 @@ class StructureAnimationData { // NOLINTBEGIN // symbol: // ??0StructureAnimationData@@QEAA@V?$unique_ptr@VCommandArea@@U?$default_delete@VCommandArea@@@std@@@std@@_KAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@AEBVStructureSettings@@EAEBVBlockPos@@@Z - MCAPI - StructureAnimationData(std::unique_ptr, uint64, std::string const& structureName, class StructureSettings const& structureSettings, uchar, class BlockPos const&); + MCAPI StructureAnimationData( + std::unique_ptr cmdArea, + uint64 tickQueued, + std::string const& structureName, + class StructureSettings const& structureSettings, + uchar structureVersion, + class BlockPos const& placementPos + ); // symbol: ?allBlocksPlaced@StructureAnimationData@@QEBA_NXZ MCAPI bool allBlocksPlaced() const; @@ -61,7 +67,7 @@ class StructureAnimationData { // symbol: // ?setCmdArea@StructureAnimationData@@QEAAXV?$unique_ptr@VCommandArea@@U?$default_delete@VCommandArea@@@std@@@std@@@Z - MCAPI void setCmdArea(std::unique_ptr); + MCAPI void setCmdArea(std::unique_ptr cmdArea); // symbol: ?setQueueID@StructureAnimationData@@QEAAXI@Z MCAPI void setQueueID(uint); diff --git a/src/mc/world/level/levelgen/structure/StructureBlockPalette.h b/src/mc/world/level/levelgen/structure/StructureBlockPalette.h index dba836884b..ec259a762a 100644 --- a/src/mc/world/level/levelgen/structure/StructureBlockPalette.h +++ b/src/mc/world/level/levelgen/structure/StructureBlockPalette.h @@ -55,7 +55,7 @@ class StructureBlockPalette { const; // symbol: ?getBlockPositionData@StructureBlockPalette@@QEBAPEBUBlockPositionData@1@_K@Z - MCAPI struct StructureBlockPalette::BlockPositionData const* getBlockPositionData(uint64) const; + MCAPI struct StructureBlockPalette::BlockPositionData const* getBlockPositionData(uint64 blockIndex) const; // symbol: // ?save@StructureBlockPalette@@QEBA?AV?$unique_ptr@VCompoundTag@@U?$default_delete@VCompoundTag@@@std@@@std@@XZ diff --git a/src/mc/world/level/levelgen/structure/StructureEditorData.h b/src/mc/world/level/levelgen/structure/StructureEditorData.h index 91f2b3b7d5..8c08017259 100644 --- a/src/mc/world/level/levelgen/structure/StructureEditorData.h +++ b/src/mc/world/level/levelgen/structure/StructureEditorData.h @@ -94,7 +94,7 @@ class StructureEditorData { MCAPI void setAnimationSeconds(float); // symbol: ?setAnimationTicks@StructureEditorData@@QEAAXI@Z - MCAPI void setAnimationTicks(uint); + MCAPI void setAnimationTicks(uint animationTicks); // symbol: ?setIgnoreBlocks@StructureEditorData@@QEAAX_N@Z MCAPI void setIgnoreBlocks(bool ignoreBlocks); diff --git a/src/mc/world/level/levelgen/structure/StructureFeature.h b/src/mc/world/level/levelgen/structure/StructureFeature.h index 2326a480b6..1d2d6f257d 100644 --- a/src/mc/world/level/levelgen/structure/StructureFeature.h +++ b/src/mc/world/level/levelgen/structure/StructureFeature.h @@ -122,7 +122,7 @@ class StructureFeature { class ChunkPos const& cp, class Random& random, uint levelSeed, - int, + int spacing, int, int salt, bool tiltedSpacing diff --git a/src/mc/world/level/levelgen/structure/StructureManager.h b/src/mc/world/level/levelgen/structure/StructureManager.h index 28ab59a4b0..e959c139ce 100644 --- a/src/mc/world/level/levelgen/structure/StructureManager.h +++ b/src/mc/world/level/levelgen/structure/StructureManager.h @@ -90,7 +90,7 @@ class StructureManager : public ::Bedrock::EnableNonOwnerReferences { // symbol: // ?queueLoad@StructureManager@@QEAAXV?$unique_ptr@VStructureAnimationData@@U?$default_delete@VStructureAnimationData@@@std@@@std@@@Z - MCAPI void queueLoad(std::unique_ptr); + MCAPI void queueLoad(std::unique_ptr structureAnimationData); // symbol: ?readStructure@StructureManager@@QEAA_NAEAVStructureTemplate@@@Z MCAPI bool readStructure(class StructureTemplate& structureTemplate); @@ -110,8 +110,16 @@ class StructureManager : public ::Bedrock::EnableNonOwnerReferences { // symbol: // ?tryPlaceStructureInWorld@StructureManager@@QEAA?AW4QueueRequestResult@@V?$unique_ptr@VCommandArea@@U?$default_delete@VCommandArea@@@std@@@std@@AEAVServerLevel@@AEAVDimension@@AEBVBoundingBox@@AEBVBlockPos@@AEBVStructureSettings@@AEBVStructureTemplate@@V?$unique_ptr@VStructureAnimationData@@U?$default_delete@VStructureAnimationData@@@std@@@4@@Z - MCAPI ::QueueRequestResult - tryPlaceStructureInWorld(std::unique_ptr, class ServerLevel& level, class Dimension& dimension, class BoundingBox const& bounds, class BlockPos const&, class StructureSettings const& settings, class StructureTemplate const& structureTemplate, std::unique_ptr); + MCAPI ::QueueRequestResult tryPlaceStructureInWorld( + std::unique_ptr cmdArea, + class ServerLevel& level, + class Dimension& dimension, + class BoundingBox const& bounds, + class BlockPos const& loadPosition, + class StructureSettings const& settings, + class StructureTemplate const& structureTemplate, + std::unique_ptr structureAnimationData + ); // symbol: // ?getStructurePath@StructureManager@@SA?AV?$PathBuffer@V?$StackString@D$0EAA@@Core@@@Core@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z @@ -128,7 +136,7 @@ class StructureManager : public ::Bedrock::EnableNonOwnerReferences { // NOLINTBEGIN // symbol: // ?_createLevelStorageId@StructureManager@@AEAA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV23@0@Z - MCAPI std::string _createLevelStorageId(std::string const&, std::string const&); + MCAPI std::string _createLevelStorageId(std::string const& dimensionPrefix, std::string const& saveId); // symbol: // ?_findResource@StructureManager@@AEAA_NAEBV?$PathBuffer@V?$StackString@D$0EAA@@Core@@@Core@@AEBVPackInstance@@AEAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z @@ -149,12 +157,12 @@ class StructureManager : public ::Bedrock::EnableNonOwnerReferences { ); // symbol: ?_placeSegment@StructureManager@@AEAA_NAEAVStructureAnimationData@@@Z - MCAPI bool _placeSegment(class StructureAnimationData&); + MCAPI bool _placeSegment(class StructureAnimationData& structureAnimationData); // symbol: // ?_placeSegment@StructureManager@@AEAA_NAEAVDimension@@AEAVStructureAnimationData@@AEAVChunkLoadActionList@@AEBVBoundingBox@@AEBV?$function@$$A6A?AW4ChunksLoadedStatus@@UTick@@@Z@std@@@Z MCAPI bool - _placeSegment(class Dimension& dimension, class StructureAnimationData&, class ChunkLoadActionList&, class BoundingBox const& boundingBox, std::function<::ChunksLoadedStatus(struct Tick)> const&); + _placeSegment(class Dimension& dimension, class StructureAnimationData& structureAnimationData, class ChunkLoadActionList&, class BoundingBox const& boundingBox, std::function<::ChunksLoadedStatus(struct Tick)> const&); // symbol: // ?_readLegacyStructure@StructureManager@@AEAAPEAVLegacyStructureTemplate@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z @@ -162,11 +170,13 @@ class StructureManager : public ::Bedrock::EnableNonOwnerReferences { // symbol: // ?_removePlacementQueueItem@StructureManager@@AEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEAVStructureAnimationData@@@Z - MCAPI void _removePlacementQueueItem(std::string const&, class StructureAnimationData&); + MCAPI void + _removePlacementQueueItem(std::string const& dimensionPrefix, class StructureAnimationData& structureAnimationData); // symbol: // ?_savePlacementQueueItem@StructureManager@@AEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEAVStructureAnimationData@@@Z - MCAPI void _savePlacementQueueItem(std::string const&, class StructureAnimationData&); + MCAPI void + _savePlacementQueueItem(std::string const& dimensionPrefix, class StructureAnimationData& structureAnimationData); // NOLINTEND diff --git a/src/mc/world/level/levelgen/structure/StructureSettings.h b/src/mc/world/level/levelgen/structure/StructureSettings.h index c97810e702..00f24a89cd 100644 --- a/src/mc/world/level/levelgen/structure/StructureSettings.h +++ b/src/mc/world/level/levelgen/structure/StructureSettings.h @@ -77,7 +77,7 @@ class StructureSettings { MCAPI void setIgnoreEntities(bool ignoreEntities); // symbol: ?setIgnoreJigsawBlocks@StructureSettings@@QEAAX_N@Z - MCAPI void setIgnoreJigsawBlocks(bool); + MCAPI void setIgnoreJigsawBlocks(bool ignoreJigsawBlocks); // symbol: ?setIntegritySeed@StructureSettings@@QEAAXI@Z MCAPI void setIntegritySeed(uint integritySeed); diff --git a/src/mc/world/level/levelgen/structure/StructureTemplate.h b/src/mc/world/level/levelgen/structure/StructureTemplate.h index 2b8839f39c..e590d0a73c 100644 --- a/src/mc/world/level/levelgen/structure/StructureTemplate.h +++ b/src/mc/world/level/levelgen/structure/StructureTemplate.h @@ -60,7 +60,7 @@ class StructureTemplate { // symbol: ?getTransformedBounds@StructureTemplate@@QEBA?AVBoundingBox@@VBlockPos@@AEBVStructureSettings@@@Z MCAPI class BoundingBox - getTransformedBounds(class BlockPos, class StructureSettings const& structureSettings) const; + getTransformedBounds(class BlockPos loadPosition, class StructureSettings const& structureSettings) const; // symbol: ?isLoaded@StructureTemplate@@QEBA_NXZ MCAPI bool isLoaded() const; @@ -73,12 +73,14 @@ class StructureTemplate { class BlockPos const& position, class StructureSettings const& structureSettings, class StructureTelemetryServerData* telemetryServerData, - bool + bool updateItemData ) const; // symbol: ?placeNextSegmentInWorld@StructureTemplate@@QEBAXAEAVStructureAnimationData@@AEBVBlockPalette@@@Z - MCAPI void - placeNextSegmentInWorld(class StructureAnimationData&, class BlockPalette const& globalBlockPalette) const; + MCAPI void placeNextSegmentInWorld( + class StructureAnimationData& structureAnimationData, + class BlockPalette const& globalBlockPalette + ) const; // symbol: ?save@StructureTemplate@@QEBA?AV?$unique_ptr@VCompoundTag@@U?$default_delete@VCompoundTag@@@std@@@std@@XZ MCAPI std::unique_ptr save() const; @@ -112,14 +114,18 @@ class StructureTemplate { _fillEntityList(class BlockSource& region, class BlockPos const& minCorner, class BlockPos const& maxCorner); // symbol: ?_placeEntitiesInWorld@StructureTemplate@@AEBAXAEAVBlockSource@@AEAVDataLoadHelper@@_N@Z - MCAPI void _placeEntitiesInWorld(class BlockSource& region, class DataLoadHelper& dataLoadHelper, bool) const; + MCAPI void _placeEntitiesInWorld( + class BlockSource& region, + class DataLoadHelper& dataLoadHelper, + bool shouldReloadActorEquipment + ) const; // symbol: // ?_placeNextBlockSegmentInWorld@StructureTemplate@@AEBAXAEAVBlockSource@@_K1AEBVStructureSettings@@AEAVDataLoadHelper@@AEBVStructureBlockPalette@@AEBVBlockPalette@@VBlockPos@@AEBV7@AEBVVec3@@W4Rotation@@W4Mirror@@MIPEAVStructureTelemetryServerData@@_N_N@Z MCAPI void _placeNextBlockSegmentInWorld( - class BlockSource& region, - uint64, - uint64, + class BlockSource& region, + uint64 startPlacement, + uint64 endPlacement, class StructureSettings const& structureSettings, class DataLoadHelper& dataLoadHelper, class StructureBlockPalette const& structureBlockPalette, @@ -132,8 +138,8 @@ class StructureTemplate { float integrityValue, uint integritySeed, class StructureTelemetryServerData*, - bool, - bool + bool updateItemData, + bool ignoreJigsawBlocks ) const; // NOLINTEND diff --git a/src/mc/world/level/levelgen/structure/structurepools/JigsawBlockInfo.h b/src/mc/world/level/levelgen/structure/structurepools/JigsawBlockInfo.h index ac234fd19f..98e4ca0f5d 100644 --- a/src/mc/world/level/levelgen/structure/structurepools/JigsawBlockInfo.h +++ b/src/mc/world/level/levelgen/structure/structurepools/JigsawBlockInfo.h @@ -16,10 +16,10 @@ class JigsawBlockInfo { // symbol: ??0JigsawBlockInfo@@QEAA@AEBVBlockPos@@PEBVBlock@@1VJigsawEditorData@@@Z MCAPI JigsawBlockInfo( - class BlockPos const& pos, - class Block const* block, - class Block const* finalBlock, - class JigsawEditorData + class BlockPos const& pos, + class Block const* block, + class Block const* finalBlock, + class JigsawEditorData editorData ); // symbol: ?getFrontFacing@JigsawBlockInfo@@QEBAEXZ diff --git a/src/mc/world/level/levelgen/structure/structurepools/StructurePoolBlockPredicateAxisAlignedPosition.h b/src/mc/world/level/levelgen/structure/structurepools/StructurePoolBlockPredicateAxisAlignedPosition.h index c90e2329c3..e983f0a65d 100644 --- a/src/mc/world/level/levelgen/structure/structurepools/StructurePoolBlockPredicateAxisAlignedPosition.h +++ b/src/mc/world/level/levelgen/structure/structurepools/StructurePoolBlockPredicateAxisAlignedPosition.h @@ -27,7 +27,7 @@ class StructurePoolBlockPredicateAxisAlignedPosition : public ::IStructurePoolBl virtual bool finalize(class BlockSource&, class IRandom&); // symbol: ??0StructurePoolBlockPredicateAxisAlignedPosition@@QEAA@MMHHE@Z - MCAPI StructurePoolBlockPredicateAxisAlignedPosition(float, float, int, int, uchar axis); + MCAPI StructurePoolBlockPredicateAxisAlignedPosition(float minChance, float maxChance, int, int, uchar axis); // NOLINTEND }; diff --git a/src/mc/world/level/levelgen/structure/structurepools/StructurePoolElement.h b/src/mc/world/level/levelgen/structure/structurepools/StructurePoolElement.h index 90f5e1bb59..d6733d9a0b 100644 --- a/src/mc/world/level/levelgen/structure/structurepools/StructurePoolElement.h +++ b/src/mc/world/level/levelgen/structure/structurepools/StructurePoolElement.h @@ -41,7 +41,7 @@ class StructurePoolElement { // symbol: // ?_findJigsawBlocks@LazyTemplate@StructurePoolElement@@KA?AV?$vector@VJigsawBlockInfo@@V?$allocator@VJigsawBlockInfo@@@std@@@std@@AEAV?$vector@VJigsawStructureBlockInfo@@V?$allocator@VJigsawStructureBlockInfo@@@std@@@4@PEBV?$vector@V?$unique_ptr@VStructurePoolBlockTagRule@@U?$default_delete@VStructurePoolBlockTagRule@@@std@@@std@@V?$allocator@V?$unique_ptr@VStructurePoolBlockTagRule@@U?$default_delete@VStructurePoolBlockTagRule@@@std@@@std@@@2@@4@@Z MCAPI static std::vector _findJigsawBlocks( - std::vector&, + std::vector& jigsawMarkers, std::vector> const* blockTagRules ); @@ -136,7 +136,7 @@ class StructurePoolElement { Bedrock::NotNullNonOwnerPtr manager, std::string const& location, ::Projection projection, - ::PostProcessSettings + ::PostProcessSettings postProcessSettings ); // symbol: @@ -148,7 +148,7 @@ class StructurePoolElement { std::vector> const* blockTagRules, std::vector> const* actorRules, ::Projection projection, - ::PostProcessSettings + ::PostProcessSettings postProcessSettings ); // symbol: diff --git a/src/mc/world/level/levelgen/v1/BeardAndShaverDescription.h b/src/mc/world/level/levelgen/v1/BeardAndShaverDescription.h index 862dd8dc81..fda6bdb56b 100644 --- a/src/mc/world/level/levelgen/v1/BeardAndShaverDescription.h +++ b/src/mc/world/level/levelgen/v1/BeardAndShaverDescription.h @@ -12,7 +12,12 @@ class BeardAndShaverDescription { public: // NOLINTBEGIN // symbol: ??0BeardAndShaverDescription@@QEAA@VBeardingDescriptionCache@@AEBUBeardKernel@@MM@Z - MCAPI BeardAndShaverDescription(class BeardingDescriptionCache cache, struct BeardKernel const&, float, float); + MCAPI BeardAndShaverDescription( + class BeardingDescriptionCache cache, + struct BeardKernel const&, + float minBeardWidth, + float maxBeardWidth + ); // symbol: ?calculateContribution@BeardAndShaverDescription@@QEBAMAEBVBlockPos@@@Z MCAPI float calculateContribution(class BlockPos const& pos) const; diff --git a/src/mc/world/level/levelgen/v1/BeardingDescriptionCache.h b/src/mc/world/level/levelgen/v1/BeardingDescriptionCache.h index c17dd86040..811780c4b3 100644 --- a/src/mc/world/level/levelgen/v1/BeardingDescriptionCache.h +++ b/src/mc/world/level/levelgen/v1/BeardingDescriptionCache.h @@ -12,7 +12,7 @@ class BeardingDescriptionCache { public: // NOLINTBEGIN // symbol: ??0BeardingDescriptionCache@@QEAA@AEBVBoundingBox@@H@Z - MCAPI BeardingDescriptionCache(class BoundingBox const& bb, int); + MCAPI BeardingDescriptionCache(class BoundingBox const& bb, int deltaY); // NOLINTEND }; diff --git a/src/mc/world/level/levelgen/v1/FeatureTerrainAdjustments.h b/src/mc/world/level/levelgen/v1/FeatureTerrainAdjustments.h index 8083836ccf..0f11a31de7 100644 --- a/src/mc/world/level/levelgen/v1/FeatureTerrainAdjustments.h +++ b/src/mc/world/level/levelgen/v1/FeatureTerrainAdjustments.h @@ -46,10 +46,11 @@ class FeatureTerrainAdjustments { MCAPI void garbageCollectDescriptions(); // symbol: ?setBeardAndShaver@FeatureTerrainAdjustments@@QEAA?AV?$shared_ptr@_N@std@@AEBVBoundingBox@@HMM@Z - MCAPI std::shared_ptr setBeardAndShaver(class BoundingBox const& bb, int, float, float); + MCAPI std::shared_ptr + setBeardAndShaver(class BoundingBox const& bb, int deltaY, float minBeardWidth, float maxBeardWidth); // symbol: ?setBeardifier@FeatureTerrainAdjustments@@QEAA?AV?$shared_ptr@_N@std@@AEBVBoundingBox@@H@Z - MCAPI std::shared_ptr setBeardifier(class BoundingBox const& bb, int); + MCAPI std::shared_ptr setBeardifier(class BoundingBox const& bb, int deltaY); // symbol: ?setBury@FeatureTerrainAdjustments@@QEAA?AV?$shared_ptr@_N@std@@AEBVBoundingBox@@@Z MCAPI std::shared_ptr setBury(class BoundingBox const& bb); @@ -59,8 +60,8 @@ class FeatureTerrainAdjustments { // symbol: ?calculateContribution@FeatureTerrainAdjustments@@SAMAEBUDescriptions@1@AEBVBlockPos@@M@Z MCAPI static float calculateContribution( - struct FeatureTerrainAdjustments::Descriptions const&, - class BlockPos const& currentPos, + struct FeatureTerrainAdjustments::Descriptions const& descriptions, + class BlockPos const& currentPos, float ); @@ -68,7 +69,7 @@ class FeatureTerrainAdjustments { MCAPI static struct BeardKernel& getBeardKernel(); // symbol: ?shouldDoTerrainAdjustments@FeatureTerrainAdjustments@@SA_NAEBUDescriptions@1@@Z - MCAPI static bool shouldDoTerrainAdjustments(struct FeatureTerrainAdjustments::Descriptions const&); + MCAPI static bool shouldDoTerrainAdjustments(struct FeatureTerrainAdjustments::Descriptions const& descriptions); // NOLINTEND diff --git a/src/mc/world/level/levelgen/v1/NetherGenerator.h b/src/mc/world/level/levelgen/v1/NetherGenerator.h index 0426bd7954..3ccda515d1 100644 --- a/src/mc/world/level/levelgen/v1/NetherGenerator.h +++ b/src/mc/world/level/levelgen/v1/NetherGenerator.h @@ -101,8 +101,8 @@ class NetherGenerator : public ::WorldGenerator { class BlockVolume& box, class ChunkPos const& chunkPos, bool factorInBeardsAndShavers, - std::vector*, - int + std::vector* ZXheights, + int skipTopN ); // NOLINTEND diff --git a/src/mc/world/level/levelgen/v1/OverworldGeneratorMultinoise.h b/src/mc/world/level/levelgen/v1/OverworldGeneratorMultinoise.h index 05e2ca1d45..d224c3c846 100644 --- a/src/mc/world/level/levelgen/v1/OverworldGeneratorMultinoise.h +++ b/src/mc/world/level/levelgen/v1/OverworldGeneratorMultinoise.h @@ -121,7 +121,7 @@ class OverworldGeneratorMultinoise : public ::OverworldGenerator { MCAPI OverworldGeneratorMultinoise(class Dimension&, class LevelSeed64, class Biome const*); // symbol: ?_applySlides@OverworldGeneratorMultinoise@@SAMAEBVDimensionHeightRange@@ME@Z - MCAPI static float _applySlides(class DimensionHeightRange const&, float, uchar); + MCAPI static float _applySlides(class DimensionHeightRange const& heightRange, float, uchar); // NOLINTEND diff --git a/src/mc/world/level/levelgen/v1/TheEndGenerator.h b/src/mc/world/level/levelgen/v1/TheEndGenerator.h index 14e7bc42d0..fe111ee5fa 100644 --- a/src/mc/world/level/levelgen/v1/TheEndGenerator.h +++ b/src/mc/world/level/levelgen/v1/TheEndGenerator.h @@ -97,8 +97,8 @@ class TheEndGenerator : public ::WorldGenerator { class BlockVolume& box, class ChunkPos const& chunkPos, bool factorInBeardsAndShavers, - std::vector*, - int + std::vector* ZXheights, + int skipTopN ); // symbol: ?getIslandHeightValue@TheEndGenerator@@AEBAMHHHH@Z diff --git a/src/mc/world/level/pathfinder/NavigationComponent.h b/src/mc/world/level/pathfinder/NavigationComponent.h index 35e3aee201..22ceb137e3 100644 --- a/src/mc/world/level/pathfinder/NavigationComponent.h +++ b/src/mc/world/level/pathfinder/NavigationComponent.h @@ -110,7 +110,7 @@ class NavigationComponent { MCAPI void incrementTick(); // symbol: ?initMultiTypeNavigationComponent@NavigationComponent@@QEAAXAEAVMob@@AEAVActorDefinitionDescriptor@@@Z - MCAPI void initMultiTypeNavigationComponent(class Mob& entity, class ActorDefinitionDescriptor&); + MCAPI void initMultiTypeNavigationComponent(class Mob& entity, class ActorDefinitionDescriptor& initDescription); // symbol: ?initializeFromDefinition@NavigationComponent@@QEAAXAEAVMob@@PEAUNavigationDescription@@@Z MCAPI void initializeFromDefinition(class Mob& owner, struct NavigationDescription* description); diff --git a/src/mc/world/level/pathfinder/PathFinder.h b/src/mc/world/level/pathfinder/PathFinder.h index d3ef242e69..70ccb91d98 100644 --- a/src/mc/world/level/pathfinder/PathFinder.h +++ b/src/mc/world/level/pathfinder/PathFinder.h @@ -137,7 +137,7 @@ class PathFinder { // symbol: // ?_findPath@PathFinder@@AEAA?AV?$unique_ptr@VPath@@U?$default_delete@VPath@@@std@@@std@@AEBUActorPathingData@@MMMM@Z MCAPI std::unique_ptr - _findPath(struct ActorPathingData const&, float xt, float yt, float zt, float maxDist); + _findPath(struct ActorPathingData const& actorData, float xt, float yt, float zt, float maxDist); // symbol: ?_getAABBForPathfinding@PathFinder@@AEBA?AVAABB@@AEBVBlockPos@@AEBVBlock@@@Z MCAPI class AABB _getAABBForPathfinding(class BlockPos const&, class Block const&) const; diff --git a/src/mc/world/level/saveddata/maps/MapItemSavedData.h b/src/mc/world/level/saveddata/maps/MapItemSavedData.h index cf2b145333..e030b23182 100644 --- a/src/mc/world/level/saveddata/maps/MapItemSavedData.h +++ b/src/mc/world/level/saveddata/maps/MapItemSavedData.h @@ -128,7 +128,7 @@ class MapItemSavedData { MCAPI void serialize(class CompoundTag& tag) const; // symbol: ?setClientPixelsDirty@MapItemSavedData@@QEAAX_N@Z - MCAPI void setClientPixelsDirty(bool); + MCAPI void setClientPixelsDirty(bool isDirty); // symbol: ?setDirtyForSaveAndPixelData@MapItemSavedData@@QEAAXXZ MCAPI void setDirtyForSaveAndPixelData(); diff --git a/src/mc/world/level/storage/DBChunkStorage.h b/src/mc/world/level/storage/DBChunkStorage.h index 2b6abaf8f2..f401f9080e 100644 --- a/src/mc/world/level/storage/DBChunkStorage.h +++ b/src/mc/world/level/storage/DBChunkStorage.h @@ -87,13 +87,17 @@ class DBChunkStorage : public ::ChunkSource { // symbol: // ??0DBChunkStorage@@QEAA@V?$unique_ptr@VChunkSource@@U?$default_delete@VChunkSource@@@std@@@std@@AEAVDBStorage@@AEAVScheduler@@AEBVExperiments@@@Z - MCAPI - DBChunkStorage(std::unique_ptr parent, class DBStorage& storage, class Scheduler& scheduler, class Experiments const&); + MCAPI DBChunkStorage( + std::unique_ptr parent, + class DBStorage& storage, + class Scheduler& scheduler, + class Experiments const& experiments + ); // symbol: // ?_getBlenderMode@DBChunkStorage@@SA?AW4BlenderMode@ConsoleChunkBlender@@AEBVLevelChunk@@AEBVExperiments@@@Z MCAPI static ::ConsoleChunkBlender::BlenderMode - _getBlenderMode(class LevelChunk const& lc, class Experiments const&); + _getBlenderMode(class LevelChunk const& lc, class Experiments const& experiments); // symbol: // ?deserializeActorStorageToString@DBChunkStorage@@SA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_NAEBV23@V?$function@$$A6A_NV?$basic_string_view@DU?$char_traits@D@std@@@std@@AEAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@@Z@3@@Z diff --git a/src/mc/world/level/storage/DBStorage.h b/src/mc/world/level/storage/DBStorage.h index 016d5a89b4..22876898c0 100644 --- a/src/mc/world/level/storage/DBStorage.h +++ b/src/mc/world/level/storage/DBStorage.h @@ -218,7 +218,7 @@ class DBStorage : public ::LevelStorage { MCAPI void _handleErrorStatus(leveldb::Status const& status); // symbol: ?_mergeIntoWriteCache@DBStorage@@IEAAXAEBVLevelStorageWriteBatch@@@Z - MCAPI void _mergeIntoWriteCache(class LevelStorageWriteBatch const&); + MCAPI void _mergeIntoWriteCache(class LevelStorageWriteBatch const& batchToMerge); // symbol: ?_queueSaveCallback@DBStorage@@IEAAX_N@Z MCAPI void _queueSaveCallback(bool invokeImmediately); diff --git a/src/mc/world/level/storage/Experiments.h b/src/mc/world/level/storage/Experiments.h index ab1ff9d5f6..1c79021693 100644 --- a/src/mc/world/level/storage/Experiments.h +++ b/src/mc/world/level/storage/Experiments.h @@ -52,10 +52,10 @@ class Experiments { MCAPI void getTagData(class CompoundTag const& tag); // symbol: ?isExperimentEnabled@Experiments@@QEBA_NW4AllExperiments@@@Z - MCAPI bool isExperimentEnabled(::AllExperiments) const; + MCAPI bool isExperimentEnabled(::AllExperiments experiment) const; // symbol: ?setExperimentEnabled@Experiments@@QEAAXW4AllExperiments@@_N@Z - MCAPI void setExperimentEnabled(::AllExperiments, bool value); + MCAPI void setExperimentEnabled(::AllExperiments experiment, bool value); // symbol: ?setTagData@Experiments@@QEBAXAEAVCompoundTag@@@Z MCAPI void setTagData(class CompoundTag& tag) const; diff --git a/src/mc/world/level/storage/ExternalFileLevelStorageSource.h b/src/mc/world/level/storage/ExternalFileLevelStorageSource.h index 8fd6658e63..01e297e9f6 100644 --- a/src/mc/world/level/storage/ExternalFileLevelStorageSource.h +++ b/src/mc/world/level/storage/ExternalFileLevelStorageSource.h @@ -47,7 +47,7 @@ class ExternalFileLevelStorageSource : public ::LevelStorageSource { // ?createLevelStorage@ExternalFileLevelStorageSource@@UEAA?AV?$OwnerPtr@VLevelStorage@@@@AEAVScheduler@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVContentIdentity@@AEBV?$not_null@V?$NonOwnerPointer@$$CBVIContentKeyProvider@@@Bedrock@@@gsl@@AEBV?$duration@_JU?$ratio@$00$0DLJKMKAA@@std@@@chrono@5@V?$not_null@V?$NonOwnerPointer@VLevelDbEnv@@@Bedrock@@@8@V?$unique_ptr@VLevelStorageEventing@@U?$default_delete@VLevelStorageEventing@@@std@@@5@@Z virtual class OwnerPtr - createLevelStorage(class Scheduler& scheduler, std::string const& levelId, class ContentIdentity const& contentIdentity, Bedrock::NotNullNonOwnerPtr const& keyProvider, std::chrono::nanoseconds const&, Bedrock::NotNullNonOwnerPtr levelDbEnv, std::unique_ptr); + createLevelStorage(class Scheduler& scheduler, std::string const& levelId, class ContentIdentity const& contentIdentity, Bedrock::NotNullNonOwnerPtr const& keyProvider, std::chrono::nanoseconds const& writeFlushInterval, Bedrock::NotNullNonOwnerPtr levelDbEnv, std::unique_ptr); // vIndex: 6, symbol: // ?createLevelLooseStorage@ExternalFileLevelStorageSource@@UEAA?AV?$unique_ptr@VLevelLooseFileStorage@@U?$default_delete@VLevelLooseFileStorage@@@std@@@std@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@AEBVContentIdentity@@AEBV?$not_null@V?$NonOwnerPointer@$$CBVIContentKeyProvider@@@Bedrock@@@gsl@@@Z diff --git a/src/mc/world/level/storage/LevelStorageSource.h b/src/mc/world/level/storage/LevelStorageSource.h index 1f03661ae0..c5a483bfd6 100644 --- a/src/mc/world/level/storage/LevelStorageSource.h +++ b/src/mc/world/level/storage/LevelStorageSource.h @@ -47,7 +47,7 @@ class LevelStorageSource : public ::Bedrock::EnableNonOwnerReferences { // ?createLevelStorage@ExternalFileLevelStorageSource@@UEAA?AV?$OwnerPtr@VLevelStorage@@@@AEAVScheduler@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVContentIdentity@@AEBV?$not_null@V?$NonOwnerPointer@$$CBVIContentKeyProvider@@@Bedrock@@@gsl@@AEBV?$duration@_JU?$ratio@$00$0DLJKMKAA@@std@@@chrono@5@V?$not_null@V?$NonOwnerPointer@VLevelDbEnv@@@Bedrock@@@8@V?$unique_ptr@VLevelStorageEventing@@U?$default_delete@VLevelStorageEventing@@@std@@@5@@Z virtual class OwnerPtr - createLevelStorage(class Scheduler& scheduler, std::string const& levelId, class ContentIdentity const& contentIdentity, Bedrock::NotNullNonOwnerPtr const& keyProvider, std::chrono::nanoseconds const&, Bedrock::NotNullNonOwnerPtr levelDbEnv, std::unique_ptr) = 0; + createLevelStorage(class Scheduler& scheduler, std::string const& levelId, class ContentIdentity const& contentIdentity, Bedrock::NotNullNonOwnerPtr const& keyProvider, std::chrono::nanoseconds const& writeFlushInterval, Bedrock::NotNullNonOwnerPtr levelDbEnv, std::unique_ptr) = 0; // vIndex: 6, symbol: // ?createLevelLooseStorage@ExternalFileLevelStorageSource@@UEAA?AV?$unique_ptr@VLevelLooseFileStorage@@U?$default_delete@VLevelLooseFileStorage@@@std@@@std@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@AEBVContentIdentity@@AEBV?$not_null@V?$NonOwnerPointer@$$CBVIContentKeyProvider@@@Bedrock@@@gsl@@@Z diff --git a/src/mc/world/level/storage/LevelSummary.h b/src/mc/world/level/storage/LevelSummary.h index 2921c454d1..07930aa9b9 100644 --- a/src/mc/world/level/storage/LevelSummary.h +++ b/src/mc/world/level/storage/LevelSummary.h @@ -32,7 +32,7 @@ struct LevelSummary { class LevelData const& levelData, class Core::Path const& levelDirectory, class Core::Path const& levelInfoDirectory, - bool + bool isBetaRetailLevel ); // symbol: diff --git a/src/mc/world/level/storage/loot/functions/SetBannerDetailsFunction.h b/src/mc/world/level/storage/loot/functions/SetBannerDetailsFunction.h index 7c6baaf0a8..79756a41da 100644 --- a/src/mc/world/level/storage/loot/functions/SetBannerDetailsFunction.h +++ b/src/mc/world/level/storage/loot/functions/SetBannerDetailsFunction.h @@ -43,7 +43,8 @@ class SetBannerDetailsFunction : public ::LootItemFunction { // symbol: // ?_parseBannerPattern@SetBannerDetailsFunction@@CAXAEAV?$vector@U?$pair@EW4ItemColor@@@std@@V?$allocator@U?$pair@EW4ItemColor@@@std@@@2@@std@@AEBVValue@Json@@@Z - MCAPI static void _parseBannerPattern(std::vector>&, class Json::Value const& object); + MCAPI static void + _parseBannerPattern(std::vector>& patternVec, class Json::Value const& object); // NOLINTEND }; diff --git a/src/mc/world/level/ticking/ITickingArea.h b/src/mc/world/level/ticking/ITickingArea.h index abfb6ddb44..8f941356e8 100644 --- a/src/mc/world/level/ticking/ITickingArea.h +++ b/src/mc/world/level/ticking/ITickingArea.h @@ -78,7 +78,7 @@ class ITickingArea { virtual void updatePosition(class Vec3 const& pos) = 0; // vIndex: 19, symbol: ?updateAndCenter@TickingArea@@UEAAXAEAVLevelStorage@@UTick@@@Z - virtual void updateAndCenter(class LevelStorage& levelStorage, struct Tick) = 0; + virtual void updateAndCenter(class LevelStorage& levelStorage, struct Tick currentLevelTick) = 0; // vIndex: 20, symbol: ?findOwner@TickingArea@@UEAAPEAVActor@@AEAE@Z virtual class Actor* findOwner(uchar& pendingChunks) = 0; diff --git a/src/mc/world/level/ticking/ITickingAreaView.h b/src/mc/world/level/ticking/ITickingAreaView.h index aae30ca21b..5c33c26158 100644 --- a/src/mc/world/level/ticking/ITickingAreaView.h +++ b/src/mc/world/level/ticking/ITickingAreaView.h @@ -39,7 +39,7 @@ class ITickingAreaView { virtual bool isDoneLoading() const = 0; // vIndex: 8, symbol: ?checkInitialLoadDone@TickingAreaView@@UEAA_NUTick@@@Z - virtual bool checkInitialLoadDone(struct Tick) = 0; + virtual bool checkInitialLoadDone(struct Tick currentLevelTick) = 0; // vIndex: 9, symbol: ?checkLoadedChunkNeighborsDone@TickingAreaView@@UEBA_NAEBVBlockSource@@_N@Z virtual bool checkLoadedChunkNeighborsDone(class BlockSource const& region, bool) const = 0; diff --git a/src/mc/world/level/ticking/TickingArea.h b/src/mc/world/level/ticking/TickingArea.h index 561a93d887..c2f94c6505 100644 --- a/src/mc/world/level/ticking/TickingArea.h +++ b/src/mc/world/level/ticking/TickingArea.h @@ -79,7 +79,7 @@ class TickingArea : public ::ITickingArea { virtual void updatePosition(class Vec3 const& pos); // vIndex: 19, symbol: ?updateAndCenter@TickingArea@@UEAAXAEAVLevelStorage@@UTick@@@Z - virtual void updateAndCenter(class LevelStorage& levelStorage, struct Tick); + virtual void updateAndCenter(class LevelStorage& levelStorage, struct Tick currentLevelTick); // vIndex: 20, symbol: ?findOwner@TickingArea@@UEAAPEAVActor@@AEAE@Z virtual class Actor* findOwner(uchar& pendingChunks); diff --git a/src/mc/world/level/ticking/TickingAreaView.h b/src/mc/world/level/ticking/TickingAreaView.h index 3a5d7d931b..d72ba00f53 100644 --- a/src/mc/world/level/ticking/TickingAreaView.h +++ b/src/mc/world/level/ticking/TickingAreaView.h @@ -40,7 +40,7 @@ class TickingAreaView : public ::ITickingAreaView { virtual bool isDoneLoading() const; // vIndex: 8, symbol: ?checkInitialLoadDone@TickingAreaView@@UEAA_NUTick@@@Z - virtual bool checkInitialLoadDone(struct Tick); + virtual bool checkInitialLoadDone(struct Tick currentLevelTick); // vIndex: 9, symbol: ?checkLoadedChunkNeighborsDone@TickingAreaView@@UEBA_NAEBVBlockSource@@_N@Z virtual bool checkLoadedChunkNeighborsDone(class BlockSource const& region, bool) const; diff --git a/src/mc/world/level/ticking/TickingAreasManager.h b/src/mc/world/level/ticking/TickingAreasManager.h index fc3d254e9f..f860a51e8e 100644 --- a/src/mc/world/level/ticking/TickingAreasManager.h +++ b/src/mc/world/level/ticking/TickingAreasManager.h @@ -185,7 +185,8 @@ class TickingAreasManager { // symbol: // ?_hasPendingTickingAreaNamed@TickingAreasManager@@AEBA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV?$vector@UPendingArea@@V?$allocator@UPendingArea@@@std@@@3@@Z - MCAPI bool _hasPendingTickingAreaNamed(std::string const& name, std::vector const&) const; + MCAPI bool + _hasPendingTickingAreaNamed(std::string const& name, std::vector const& dimensionAreas) const; // symbol: ?_postReloadActorAdded@TickingAreasManager@@AEAAXAEAVActor@@@Z MCAPI void _postReloadActorAdded(class Actor&); diff --git a/src/mc/world/module/GameModuleServer.h b/src/mc/world/module/GameModuleServer.h index 47ee4e5e0f..d34aab6a54 100644 --- a/src/mc/world/module/GameModuleServer.h +++ b/src/mc/world/module/GameModuleServer.h @@ -29,9 +29,9 @@ class GameModuleServer { // ?configureLevel@VanillaGameModuleServer@@UEAAXAEBV?$not_null@V?$NonOwnerPointer@VLevel@@@Bedrock@@@gsl@@AEBVExperiments@@AEAVResourcePackManager@@AEBVBaseGameVersion@@@Z virtual void configureLevel( Bedrock::NotNullNonOwnerPtr const& level, - class Experiments const&, - class ResourcePackManager& resourcePackManager, - class BaseGameVersion const& baseGameVersion + class Experiments const& experiments, + class ResourcePackManager& resourcePackManager, + class BaseGameVersion const& baseGameVersion ) = 0; // vIndex: 4, symbol: ?configureNewPlayer@VanillaGameModuleServer@@UEAAXAEAVPlayer@@@Z diff --git a/src/mc/world/phys/rope/RopeSystem.h b/src/mc/world/phys/rope/RopeSystem.h index 4b0d5fd1f2..77cea2ac5d 100644 --- a/src/mc/world/phys/rope/RopeSystem.h +++ b/src/mc/world/phys/rope/RopeSystem.h @@ -75,7 +75,7 @@ class RopeSystem { MCAPI void _resizeRope(); // symbol: ?_solveCollisions@RopeSystem@@AEAAM_N@Z - MCAPI float _solveCollisions(bool); + MCAPI float _solveCollisions(bool checkDenyList); // symbol: ?_solveDistanceConstraint@RopeSystem@@AEAAMAEAVVec3@@0M@Z MCAPI float _solveDistanceConstraint(class Vec3& a, class Vec3& b, float targetDist); diff --git a/src/mc/world/trim/SmithingTrimRecipeUtils.h b/src/mc/world/trim/SmithingTrimRecipeUtils.h index b2e77afc2f..205ae39e2d 100644 --- a/src/mc/world/trim/SmithingTrimRecipeUtils.h +++ b/src/mc/world/trim/SmithingTrimRecipeUtils.h @@ -6,8 +6,12 @@ namespace SmithingTrimRecipeUtils { // NOLINTBEGIN // symbol: // ?doesItemHaveResultingTrim@SmithingTrimRecipeUtils@@YA_NAEBVCraftingContext@@AEBVItemStack@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@2@Z -MCAPI bool -doesItemHaveResultingTrim(class CraftingContext const&, class ItemStack const& item, std::string const& templateName, std::string const&); +MCAPI bool doesItemHaveResultingTrim( + class CraftingContext const&, + class ItemStack const& item, + std::string const& templateName, + std::string const& materialName +); // symbol: // ?validateAdditionIngredient@SmithingTrimRecipeUtils@@YA_NAEBVLevel@@VRecipeIngredient@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z diff --git a/test/include_all.h b/test/include_all.h index f9675b004e..7be44c2a63 100644 --- a/test/include_all.h +++ b/test/include_all.h @@ -725,7 +725,6 @@ #include "mc/deps/core/utility/GetRidingHeightUtility.h" #include "mc/deps/core/utility/GoalSelectorUtility.h" #include "mc/deps/core/utility/Helpers.h" -#include "mc/deps/core/utility/InsideBlockComponentUtility.h" #include "mc/deps/core/utility/ItemReplacementCommandUtil.h" #include "mc/deps/core/utility/JumpPreventionUtility.h" #include "mc/deps/core/utility/LootTableUtils.h" @@ -1137,6 +1136,7 @@ #include "mc/entity/components/Interaction.h" #include "mc/entity/components/IPlayerTickPolicy.h" #include "mc/entity/components/IReplayStatePolicy.h" +#include "mc/entity/components/IRideableActor.h" #include "mc/entity/components/JumpControlComponent.h" #include "mc/entity/components/JumpPendingScaleComponent.h" #include "mc/entity/components/JumpRidingScaleComponent.h" @@ -1342,11 +1342,15 @@ #include "mc/entity/components/agent/Actions.h" #include "mc/entity/components/agent/AgentComponents.h" #include "mc/entity/components/agent/Animating.h" +#include "mc/entity/components/agent/AnimationCompleteFlag.h" +#include "mc/entity/components/agent/AnimationShrugFlag.h" #include "mc/entity/components/agent/BlockQueryResult.h" +#include "mc/entity/components/agent/CommandCooldown.h" #include "mc/entity/components/agent/Destroy.h" #include "mc/entity/components/agent/DetectObstacle.h" #include "mc/entity/components/agent/DetectRedstone.h" #include "mc/entity/components/agent/Direction.h" +#include "mc/entity/components/agent/ExecutingFlag.h" #include "mc/entity/components/agent/Interact.h" #include "mc/entity/components/agent/Move.h" #include "mc/entity/components/agent/actions/Attack.h" @@ -1384,8 +1388,6 @@ #include "mc/entity/flags/ActorRemovedFlag.h" #include "mc/entity/flags/ActorTickedFlag.h" #include "mc/entity/flags/AirTravelFlag.h" -#include "mc/entity/flags/AnimationCompleteFlag.h" -#include "mc/entity/flags/AnimationShrugFlag.h" #include "mc/entity/flags/ArmorFlyEnabledFlag.h" #include "mc/entity/flags/AutoClimbTravelFlag.h" #include "mc/entity/flags/AutoJumpingFlag.h" @@ -1409,7 +1411,6 @@ #include "mc/entity/flags/EnderDragonFlag.h" #include "mc/entity/flags/EnderManFlag.h" #include "mc/entity/flags/EndPortalBlockFlag.h" -#include "mc/entity/flags/ExecutingFlag.h" #include "mc/entity/flags/ExitFromPassengerFlag.h" #include "mc/entity/flags/ExperienceOrbFlag.h" #include "mc/entity/flags/EyeOfEnderFlag.h" @@ -1433,7 +1434,6 @@ #include "mc/entity/flags/InWaterFlag.h" #include "mc/entity/flags/IsDeadFlag.h" #include "mc/entity/flags/IsNearDolphinsFlag.h" -#include "mc/entity/flags/ItemActorFlag.h" #include "mc/entity/flags/JumpFromGroundRequestFlag.h" #include "mc/entity/flags/KeepPassengersTooLargeForVehicleFlag.h" #include "mc/entity/flags/LavaSlimeFlag.h" @@ -1791,8 +1791,6 @@ #include "mc/entity/systems/common/CleanUpSingleTickRemovePassengersSystemImpl.h" #include "mc/entity/systems/common/ClientInputUpdateSystemInternal.h" #include "mc/entity/systems/common/ClientInteractStopRidingSystemImpl.h" -#include "mc/entity/systems/common/ClientNetworkSystem.h" -#include "mc/entity/systems/common/ClientOrServerNetworkSystemRef.h" #include "mc/entity/systems/common/ClientPlayerRewindSystem.h" #include "mc/entity/systems/common/CommandOriginSystem.h" #include "mc/entity/systems/common/CompareVehiclePositionSystem.h" @@ -1911,7 +1909,6 @@ #include "mc/entity/systems/common/ServerCatchupMovementTrackerSystem.h" #include "mc/entity/systems/common/ServerMoveInputHandlerSystem.h" #include "mc/entity/systems/common/ServerMoveInputHandlerSystemUtils.h" -#include "mc/entity/systems/common/ServerNetworkSystem.h" #include "mc/entity/systems/common/ServerPlayerInventoryTransactionSystem.h" #include "mc/entity/systems/common/ServerPlayerMoveAbsoluteSystem.h" #include "mc/entity/systems/common/ServerPlayerMovementSystemUtils.h" @@ -2303,12 +2300,6 @@ #include "mc/events/IMinecraftEventing.h" #include "mc/events/IPackTelemetry.h" #include "mc/events/IScreenChangedEventing.h" -#include "mc/events/ItemCompleteUseEvent.h" -#include "mc/events/ItemGameplayEvent.h" -#include "mc/events/ItemReleaseUseEvent.h" -#include "mc/events/ItemStartUseEvent.h" -#include "mc/events/ItemStopUseEvent.h" -#include "mc/events/ItemUsedOnEvent.h" #include "mc/events/IUIEventTelemetry.h" #include "mc/events/IWebviewTelemetry.h" #include "mc/events/LevelEvent.h" @@ -2676,6 +2667,8 @@ #include "mc/network/AutomationSession.h" #include "mc/network/BatchedNetworkPeer.h" #include "mc/network/ClassroomModeNetworkHandler.h" +#include "mc/network/ClientNetworkSystem.h" +#include "mc/network/ClientOrServerNetworkSystemRef.h" #include "mc/network/CompressedNetworkPeer.h" #include "mc/network/ConnectionDefinition.h" #include "mc/network/ConnectionRequest.h" @@ -2702,7 +2695,6 @@ #include "mc/network/LocalConnector.h" #include "mc/network/MinecraftGameTest.h" #include "mc/network/MinecraftPackets.h" -#include "mc/network/NetEaseBlockComponentStorage.h" #include "mc/network/NetEventCallback.h" #include "mc/network/NetherStructureFeatureHelper.h" #include "mc/network/NetherWorldType.h" @@ -2737,6 +2729,7 @@ #include "mc/network/ServerLocator.h" #include "mc/network/ServerNetworkController.h" #include "mc/network/ServerNetworkHandler.h" +#include "mc/network/ServerNetworkSystem.h" #include "mc/network/SpatialActorNetworkData.h" #include "mc/network/StubServerLocator.h" #include "mc/network/SubClientConnectionRequest.h" @@ -3598,7 +3591,6 @@ #include "mc/server/commands/CommandBlockNameResult.h" #include "mc/server/commands/CommandChainedSubcommand.h" #include "mc/server/commands/CommandContext.h" -#include "mc/server/commands/CommandCooldown.h" #include "mc/server/commands/CommandFilePath.h" #include "mc/server/commands/CommandFlag.h" #include "mc/server/commands/CommandIntegerRange.h" @@ -3899,7 +3891,6 @@ #include "mc/util/EducationMetadataUtils.h" #include "mc/util/EntityTypes.h" #include "mc/util/EventResponseFactory.h" -#include "mc/util/ExplorationMapUtils.h" #include "mc/util/ExpressionNode.h" #include "mc/util/ExpressionNodeProxy.h" #include "mc/util/ExpressionNodeSerializer.h" @@ -4681,7 +4672,6 @@ #include "mc/world/actor/components/IActorManagerProxy.h" #include "mc/world/actor/components/IAddActorEntityProxy.h" #include "mc/world/actor/components/IDeregisterTagsFromActorProxy.h" -#include "mc/world/actor/components/IRideableActor.h" #include "mc/world/actor/components/IsBabyDefinition.h" #include "mc/world/actor/components/IsChargedDefinition.h" #include "mc/world/actor/components/IsChestedDefinition.h" @@ -4933,27 +4923,22 @@ #include "mc/world/components/ActorDataJumpDurationComponent.h" #include "mc/world/components/ActorDataSeatOffsetComponent.h" #include "mc/world/components/AirSpeedComponent.h" -#include "mc/world/components/AllowOffHandItemComponent.h" #include "mc/world/components/ApplyReplayStateTrackerRequestComponent.h" #include "mc/world/components/AttachedRocketsComponent.h" #include "mc/world/components/AttributeRequestComponent.h" #include "mc/world/components/BiomeTagComponent.h" -#include "mc/world/components/BlockCollisionEvaluationQueueComponent.h" #include "mc/world/components/BoatMovementComponent.h" #include "mc/world/components/BrushEffectsCooldownComponent.h" #include "mc/world/components/BuoyancyFloatRequestComponent.h" -#include "mc/world/components/CanDestroyInCreativeItemComponent.h" #include "mc/world/components/ClientInputLockComponent.h" #include "mc/world/components/CollisionBoxComponent.h" #include "mc/world/components/ComparisonEventingCapComponent.h" #include "mc/world/components/CustomSizeUpdateComponent.h" -#include "mc/world/components/DamageItemComponent.h" #include "mc/world/components/DashComponent.h" #include "mc/world/components/DashCooldownTimerComponent.h" #include "mc/world/components/DepenetrationComponent.h" #include "mc/world/components/DimensionTypeComponent.h" #include "mc/world/components/ElytraFlightTimeTicksComponent.h" -#include "mc/world/components/EnchantableItemComponent.h" #include "mc/world/components/ExternalDataComponent.h" #include "mc/world/components/FallDamageResultComponent.h" #include "mc/world/components/FeatureHelper.h" @@ -4961,24 +4946,14 @@ #include "mc/world/components/FlowerHelper.h" #include "mc/world/components/FoodConstants.h" #include "mc/world/components/GlidingCollisionDamageComponent.h" -#include "mc/world/components/GlintItemComponent.h" -#include "mc/world/components/HandEquippedItemComponent.h" -#include "mc/world/components/HoverTextColorItemComponent.h" #include "mc/world/components/IgnoresEntityInsideFlagComponent.h" -#include "mc/world/components/InsideBlockWithPosAndBlockComponent.h" -#include "mc/world/components/InsideBlockWithPosComponent.h" -#include "mc/world/components/InsideGenericBlockComponent.h" #include "mc/world/components/IsHorizontalPoseFlagComponent.h" #include "mc/world/components/IsSolidMobComponent.h" #include "mc/world/components/IsSolidMobNearbyComponent.h" -#include "mc/world/components/ItemUseSlowdownModifierComponent.h" -#include "mc/world/components/LiquidClippedItemComponent.h" -#include "mc/world/components/LocalConstBlockSourceFactoryComponent.h" #include "mc/world/components/LocalPlayerPrePlayerTravelComponent.h" #include "mc/world/components/LocalSpatialEntityFetcherFactoryComponent.h" #include "mc/world/components/MapConstants.h" #include "mc/world/components/MapDataManager.h" -#include "mc/world/components/MaxStackSizeItemComponent.h" #include "mc/world/components/MolangSerializer.h" #include "mc/world/components/MovementAbilitiesComponent.h" #include "mc/world/components/MovementAttributesComponent.h" @@ -4995,7 +4970,6 @@ #include "mc/world/components/PlayerLastPosComponent.h" #include "mc/world/components/PlayerPreMobTravelComponent.h" #include "mc/world/components/PostGameEventRequestComponent.h" -#include "mc/world/components/PublisherItemComponent.h" #include "mc/world/components/RawMoveInputComponent.h" #include "mc/world/components/RemoveAllPassengersRequestComponent.h" #include "mc/world/components/ReplayStateLenderFlagComponent.h" @@ -5007,15 +4981,10 @@ #include "mc/world/components/ServerPlayerInteractComponent.h" #include "mc/world/components/ServerPlayerInventoryTransactionComponent.h" #include "mc/world/components/ServerPlayerMoveAbsoluteComponent.h" -#include "mc/world/components/ShouldDespawnItemComponent.h" #include "mc/world/components/ShouldStopEmotingRequestComponent.h" -#include "mc/world/components/StackedByDataItemComponent.h" #include "mc/world/components/SwimAmountComponent.h" -#include "mc/world/components/TagsItemComponent.h" #include "mc/world/components/TriggerJumpRequestComponent.h" #include "mc/world/components/UnlockedRecipesServerComponent.h" -#include "mc/world/components/UseAnimationItemComponent.h" -#include "mc/world/components/UseModifiersItemComponent.h" #include "mc/world/components/VanillaOffsetComponent.h" #include "mc/world/components/VariableMaxAutoStepComponent.h" #include "mc/world/components/VehicleInputIntentComponent.h" @@ -5629,10 +5598,12 @@ #include "mc/world/item/WrittenBookItem.h" #include "mc/world/item/alchemy/Potion.h" #include "mc/world/item/alchemy/PotionBrewing.h" +#include "mc/world/item/components/AllowOffHandItemComponent.h" #include "mc/world/item/components/ArmorItemComponent.h" #include "mc/world/item/components/BlockLegacyPtr.h" #include "mc/world/item/components/BlockLegacyPtrProxy.h" #include "mc/world/item/components/CameraCallbacks.h" +#include "mc/world/item/components/CanDestroyInCreativeItemComponent.h" #include "mc/world/item/components/CerealItemComponentFactory.h" #include "mc/world/item/components/CerealSchemaUpgradeSet.h" #include "mc/world/item/components/ChargeableItemComponentLegacyFactoryData.h" @@ -5657,20 +5628,26 @@ #include "mc/world/item/components/ComponentItemDescriptionData_v1_20_20.h" #include "mc/world/item/components/ComponentItemMenuCategoryData_v1_20_20.h" #include "mc/world/item/components/CooldownItemComponent.h" +#include "mc/world/item/components/DamageItemComponent.h" #include "mc/world/item/components/DiggerItemComponent.h" #include "mc/world/item/components/DiggerItemComponentLegacyFactoryData.h" #include "mc/world/item/components/DisplayNameItemComponent.h" #include "mc/world/item/components/DurabilityItemComponent.h" #include "mc/world/item/components/DyeableComponent.h" +#include "mc/world/item/components/EnchantableItemComponent.h" #include "mc/world/item/components/EntityPlacerItemComponent.h" #include "mc/world/item/components/ExplorationMapData.h" #include "mc/world/item/components/ExplorationMapRegistry.h" +#include "mc/world/item/components/ExplorationMapUtils.h" #include "mc/world/item/components/FoodItemComponent.h" #include "mc/world/item/components/FoodItemComponentData_v1_20_30.h" #include "mc/world/item/components/FoodItemComponentLegacy.h" #include "mc/world/item/components/FoodItemComponentLegacyFactoryData.h" #include "mc/world/item/components/FoodItemVersioning.h" #include "mc/world/item/components/FuelItemComponent.h" +#include "mc/world/item/components/GlintItemComponent.h" +#include "mc/world/item/components/HandEquippedItemComponent.h" +#include "mc/world/item/components/HoverTextColorItemComponent.h" #include "mc/world/item/components/ICameraItemComponent.h" #include "mc/world/item/components/IconItemComponent.h" #include "mc/world/item/components/IconItemComponentVersioning.h" @@ -5678,17 +5655,21 @@ #include "mc/world/item/components/IItemComponentLegacyFactoryData.h" #include "mc/world/item/components/InteractButtonItemComponent.h" #include "mc/world/item/components/ItemAcquisitionMethod.h" +#include "mc/world/item/components/ItemActorFlag.h" #include "mc/world/item/components/ItemColor.h" #include "mc/world/item/components/ItemColorUtil.h" +#include "mc/world/item/components/ItemCompleteUseEvent.h" #include "mc/world/item/components/ItemComponent.h" #include "mc/world/item/components/ItemComponentHelpers.h" #include "mc/world/item/components/ItemContext.h" #include "mc/world/item/components/ItemDescriptorSerializer.h" #include "mc/world/item/components/ItemDynamicPropertiesHelper.h" #include "mc/world/item/components/ItemEventResponse.h" +#include "mc/world/item/components/ItemGameplayEvent.h" #include "mc/world/item/components/ItemIconInfoType.h" #include "mc/world/item/components/ItemLockMode.h" #include "mc/world/item/components/ItemRegistryComplexAlias.h" +#include "mc/world/item/components/ItemReleaseUseEvent.h" #include "mc/world/item/components/ItemStackLegacyRequestIdTag.h" #include "mc/world/item/components/ItemStackNetIdTag.h" #include "mc/world/item/components/ItemStackNetResult.h" @@ -5697,8 +5678,12 @@ #include "mc/world/item/components/ItemStackRequestActionType.h" #include "mc/world/item/components/ItemStackRequestHandlerSlotInfo.h" #include "mc/world/item/components/ItemStackRequestIdTag.h" +#include "mc/world/item/components/ItemStartUseEvent.h" +#include "mc/world/item/components/ItemStopUseEvent.h" #include "mc/world/item/components/ItemTransactionLogger.h" +#include "mc/world/item/components/ItemUsedOnEvent.h" #include "mc/world/item/components/ItemUseMethod.h" +#include "mc/world/item/components/ItemUseSlowdownModifierComponent.h" #include "mc/world/item/components/ItemVersion.h" #include "mc/world/item/components/LegacyEventItemComponent.h" #include "mc/world/item/components/LegacyEventItemComponentData.h" @@ -5713,6 +5698,8 @@ #include "mc/world/item/components/LegacyOnHurtActorTriggerItemComponent.h" #include "mc/world/item/components/LegacyOnHurtActorTriggerItemComponentData.h" #include "mc/world/item/components/LegacyTriggerItemComponent.h" +#include "mc/world/item/components/LiquidClippedItemComponent.h" +#include "mc/world/item/components/MaxStackSizeItemComponent.h" #include "mc/world/item/components/MiningBlock.h" #include "mc/world/item/components/OnHitActor.h" #include "mc/world/item/components/OnHitBlock.h" @@ -5721,13 +5708,19 @@ #include "mc/world/item/components/OnUseOnItemComponent.h" #include "mc/world/item/components/PlanterItemComponent.h" #include "mc/world/item/components/ProjectileItemComponent.h" +#include "mc/world/item/components/PublisherItemComponent.h" #include "mc/world/item/components/RecordItemComponent.h" #include "mc/world/item/components/RenderOffsetsItemComponent.h" #include "mc/world/item/components/RepairableItemComponent.h" #include "mc/world/item/components/RepairItemEntry.h" #include "mc/world/item/components/ShooterItemComponent.h" +#include "mc/world/item/components/ShouldDespawnItemComponent.h" +#include "mc/world/item/components/StackedByDataItemComponent.h" #include "mc/world/item/components/StorageItemComponent.h" +#include "mc/world/item/components/TagsItemComponent.h" #include "mc/world/item/components/ThrowableItemComponent.h" +#include "mc/world/item/components/UseAnimationItemComponent.h" +#include "mc/world/item/components/UseModifiersItemComponent.h" #include "mc/world/item/components/UseModifiersItemComponentLegacyFactoryData.h" #include "mc/world/item/components/UseTimeDepleted.h" #include "mc/world/item/components/WeaponItemComponent.h" @@ -6412,9 +6405,14 @@ #include "mc/world/level/block/components/BlockBreathabilityVersioning.h" #include "mc/world/level/block/components/BlockCollisionBoxComponent.h" #include "mc/world/level/block/components/BlockCollisionBoxDescription.h" +#include "mc/world/level/block/components/BlockCollisionEvaluationQueueComponent.h" #include "mc/world/level/block/components/BlockCollisionVersioning.h" +#include "mc/world/level/block/components/BlockComponentBase.h" #include "mc/world/level/block/components/BlockComponentDescription.h" +#include "mc/world/level/block/components/BlockComponentDirectData.h" #include "mc/world/level/block/components/BlockComponentFactory.h" +#include "mc/world/level/block/components/BlockComponentStorage.h" +#include "mc/world/level/block/components/BlockComponentStorageFinalizer.h" #include "mc/world/level/block/components/BlockCraftingTableComponent.h" #include "mc/world/level/block/components/BlockCraftingTableDescription.h" #include "mc/world/level/block/components/BlockCraftingTableVersioning.h" @@ -6438,6 +6436,7 @@ #include "mc/world/level/block/components/BlockGeometryComponent.h" #include "mc/world/level/block/components/BlockGeometryDescription.h" #include "mc/world/level/block/components/BlockGeometryVersioning.h" +#include "mc/world/level/block/components/BlockLegacyComponentStorageFinalizer.h" #include "mc/world/level/block/components/BlockLightDampeningComponent.h" #include "mc/world/level/block/components/BlockLightDampeningDescription.h" #include "mc/world/level/block/components/BlockLightDampeningVersioning.h" @@ -6467,9 +6466,16 @@ #include "mc/world/level/block/components/BlockSelectionBoxComponent.h" #include "mc/world/level/block/components/BlockSelectionBoxDescription.h" #include "mc/world/level/block/components/BlockSelectionBoxVersioning.h" +#include "mc/world/level/block/components/BlockTransformationComponent.h" #include "mc/world/level/block/components/BlockTransformationDescription.h" #include "mc/world/level/block/components/BlockUnitCubeComponent.h" #include "mc/world/level/block/components/BlockUnitCubeDescription.h" +#include "mc/world/level/block/components/InsideBlockComponentUtility.h" +#include "mc/world/level/block/components/InsideBlockWithPosAndBlockComponent.h" +#include "mc/world/level/block/components/InsideBlockWithPosComponent.h" +#include "mc/world/level/block/components/InsideGenericBlockComponent.h" +#include "mc/world/level/block/components/LocalConstBlockSourceFactoryComponent.h" +#include "mc/world/level/block/components/NetEaseBlockComponentStorage.h" #include "mc/world/level/block/components/collisionbox/BlockCollisionBoxComponentDescriptor.h" #include "mc/world/level/block/components/collisionbox/Proxy.h" #include "mc/world/level/block/components/queuedticking/BlockQueuedTickingComponentDescriptor.h" @@ -6499,6 +6505,24 @@ #include "mc/world/level/block/definition/BlockPermutationDescription.h" #include "mc/world/level/block/definition/BlockStateDefinition.h" #include "mc/world/level/block/events/BlockEventResponseFactory.h" +#include "mc/world/level/block/events/BlockFallOnEvent.h" +#include "mc/world/level/block/events/BlockFallOnEventComponent.h" +#include "mc/world/level/block/events/BlockPlaceEvent.h" +#include "mc/world/level/block/events/BlockPlaceEventComponent.h" +#include "mc/world/level/block/events/BlockPlayerDestroyEvent.h" +#include "mc/world/level/block/events/BlockPlayerDestroyEventComponent.h" +#include "mc/world/level/block/events/BlockPlayerInteractEvent.h" +#include "mc/world/level/block/events/BlockPlayerInteractEventComponent.h" +#include "mc/world/level/block/events/BlockPlayerPlacingEvent.h" +#include "mc/world/level/block/events/BlockPlayerPlacingEventComponent.h" +#include "mc/world/level/block/events/BlockQueuedTickEvent.h" +#include "mc/world/level/block/events/BlockQueuedTickEventComponent.h" +#include "mc/world/level/block/events/BlockRandomTickEvent.h" +#include "mc/world/level/block/events/BlockRandomTickEventComponent.h" +#include "mc/world/level/block/events/BlockStepOffEvent.h" +#include "mc/world/level/block/events/BlockStepOffEventComponent.h" +#include "mc/world/level/block/events/BlockStepOnEvent.h" +#include "mc/world/level/block/events/BlockStepOnEventComponent.h" #include "mc/world/level/block/events/responses/SetBlock.h" #include "mc/world/level/block/events/responses/SetBlockAtPos.h" #include "mc/world/level/block/registry/BlockTypeRegistry.h" @@ -6526,10 +6550,6 @@ #include "mc/world/level/block/utils/BlockCollisionsSystem.h" #include "mc/world/level/block/utils/BlockColor.h" #include "mc/world/level/block/utils/BlockColorUtil.h" -#include "mc/world/level/block/utils/BlockComponentBase.h" -#include "mc/world/level/block/utils/BlockComponentDirectData.h" -#include "mc/world/level/block/utils/BlockComponentStorage.h" -#include "mc/world/level/block/utils/BlockComponentStorageFinalizer.h" #include "mc/world/level/block/utils/BlockDataFetchResult.h" #include "mc/world/level/block/utils/BlockDefinitionLoader.h" #include "mc/world/level/block/utils/BlockDescriptorProxy.h" @@ -6540,7 +6560,6 @@ #include "mc/world/level/block/utils/BlockGameplayEvent.h" #include "mc/world/level/block/utils/BlockGeometryConstraint.h" #include "mc/world/level/block/utils/BlockGeometrySerializer.h" -#include "mc/world/level/block/utils/BlockLegacyComponentStorageFinalizer.h" #include "mc/world/level/block/utils/BlockListSerializer.h" #include "mc/world/level/block/utils/BlockPosAntiCheatSystem.h" #include "mc/world/level/block/utils/BlockPosNotificationSystem.h" @@ -6566,7 +6585,6 @@ #include "mc/world/level/block/utils/BlockTraitConversionUtils.h" #include "mc/world/level/block/utils/BlockTraitFactory.h" #include "mc/world/level/block/utils/BlockTranformationVersioning.h" -#include "mc/world/level/block/utils/BlockTransformationComponent.h" #include "mc/world/level/block/utils/BlockTryDestroyByPlayerEvent.h" #include "mc/world/level/block/utils/BlockTryPlaceByPlayerEvent.h" #include "mc/world/level/block/utils/BlockUtils.h" @@ -6647,24 +6665,6 @@ #include "mc/world/level/block/utils/VanillaBlockUpdater.h" #include "mc/world/level/block/utils/VolumeOf.h" #include "mc/world/level/block/utils/WallBlockType.h" -#include "mc/world/level/block/utils/blockEvents/BlockFallOnEvent.h" -#include "mc/world/level/block/utils/blockEvents/BlockFallOnEventComponent.h" -#include "mc/world/level/block/utils/blockEvents/BlockPlaceEvent.h" -#include "mc/world/level/block/utils/blockEvents/BlockPlaceEventComponent.h" -#include "mc/world/level/block/utils/blockEvents/BlockPlayerDestroyEvent.h" -#include "mc/world/level/block/utils/blockEvents/BlockPlayerDestroyEventComponent.h" -#include "mc/world/level/block/utils/blockEvents/BlockPlayerInteractEvent.h" -#include "mc/world/level/block/utils/blockEvents/BlockPlayerInteractEventComponent.h" -#include "mc/world/level/block/utils/blockEvents/BlockPlayerPlacingEvent.h" -#include "mc/world/level/block/utils/blockEvents/BlockPlayerPlacingEventComponent.h" -#include "mc/world/level/block/utils/blockEvents/BlockQueuedTickEvent.h" -#include "mc/world/level/block/utils/blockEvents/BlockQueuedTickEventComponent.h" -#include "mc/world/level/block/utils/blockEvents/BlockRandomTickEvent.h" -#include "mc/world/level/block/utils/blockEvents/BlockRandomTickEventComponent.h" -#include "mc/world/level/block/utils/blockEvents/BlockStepOffEvent.h" -#include "mc/world/level/block/utils/blockEvents/BlockStepOffEventComponent.h" -#include "mc/world/level/block/utils/blockEvents/BlockStepOnEvent.h" -#include "mc/world/level/block/utils/blockEvents/BlockStepOnEventComponent.h" #include "mc/world/level/chunk/AtomicTimeAccumulator.h" #include "mc/world/level/chunk/AttenuationData.h" #include "mc/world/level/chunk/AverageTracker.h" diff --git a/xmake.lua b/xmake.lua index 12ad3e29fe..3b82f98d88 100644 --- a/xmake.lua +++ b/xmake.lua @@ -6,11 +6,9 @@ if not has_config("vs_runtime") then set_runtimes("MD") end -add_requires("asio 1.28.0") -add_requires("entt v3.12.2") -add_requires("gsl v4.0.0") -add_requires("leveldb 1.23") -add_requires("openssl 1.1.1-t") +add_requires("entt") +add_requires("gsl") +add_requires("leveldb") add_requires("rapidjson v1.1.0") target("bdsheader") @@ -25,4 +23,4 @@ target("bdsheader") add_defines("UNICODE", "WIN32_LEAN_AND_MEAN", "_AMD64_", "NOMINMAX", "_CRT_SECURE_NO_WARNINGS") add_shflags("/DELAYLOAD:bedrock_server.dll") add_files("test/**.cpp") - add_packages("gsl", "entt", "leveldb", "asio", "rapidjson", "openssl") + add_packages("gsl", "entt", "leveldb", "rapidjson") From 05d02e156f09ae6e23ab1baa0ddc191bc7ecad8d Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Sat, 13 Apr 2024 06:45:33 +0800 Subject: [PATCH 39/44] format: formatting code --- src/mc/network/ClientOrServerNetworkSystemRef.h | 4 ++-- src/mc/server/LoopbackPacketSender.h | 2 +- src/mc/util/ExpressionNode.h | 6 +++--- src/mc/world/actor/ActorFactory.h | 6 +++--- src/mc/world/level/block/registry/BlockTypeRegistry.h | 4 ++-- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/mc/network/ClientOrServerNetworkSystemRef.h b/src/mc/network/ClientOrServerNetworkSystemRef.h index d0655abc4e..3e77f12af4 100644 --- a/src/mc/network/ClientOrServerNetworkSystemRef.h +++ b/src/mc/network/ClientOrServerNetworkSystemRef.h @@ -1,8 +1,8 @@ #pragma once #include "mc/_HeaderOutputPredefine.h" -#include "mc/entity/systems/common/ClientNetworkSystem.h" -#include "mc/entity/systems/common/ServerNetworkSystem.h" +#include "mc/network/ClientNetworkSystem.h" +#include "mc/network/ServerNetworkSystem.h" class ClientOrServerNetworkSystemRef { public: diff --git a/src/mc/server/LoopbackPacketSender.h b/src/mc/server/LoopbackPacketSender.h index 479e86fb78..b591a2e942 100644 --- a/src/mc/server/LoopbackPacketSender.h +++ b/src/mc/server/LoopbackPacketSender.h @@ -2,7 +2,7 @@ #include "mc/_HeaderOutputPredefine.h" #include "mc/entity/gamerefs_entity/EntityRefTraits.h" -#include "mc/entity/systems/common/ClientOrServerNetworkSystemRef.h" +#include "mc/network/ClientOrServerNetworkSystemRef.h" // auto generated inclusion list #include "mc/common/wrapper/OwnerPtr.h" diff --git a/src/mc/util/ExpressionNode.h b/src/mc/util/ExpressionNode.h index f06b7ead07..787326b097 100644 --- a/src/mc/util/ExpressionNode.h +++ b/src/mc/util/ExpressionNode.h @@ -172,9 +172,9 @@ class ExpressionNode { // symbol: // ?registerQueryFunction@ExpressionNode@@SAAEAUMolangQueryFunction@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$function@$$A6AAEBUMolangScriptArg@@AEAVRenderParams@@AEBV?$vector@VExpressionNode@@V?$allocator@VExpressionNode@@@std@@@std@@@Z@4@0W4MolangQueryFunctionReturnType@@VHashedString@@_K4AEBV?$initializer_list@H@4@@Z - MCAPI static struct MolangQueryFunction& - registerQueryFunction(std::string const& queryFunctionName, AccessorFn - accessor, + MCAPI static struct MolangQueryFunction& registerQueryFunction( + std::string const& queryFunctionName, + AccessorFn accessor, std::string const& documentation, ::MolangQueryFunctionReturnType returnType, class HashedString querySetIdentifier, diff --git a/src/mc/world/actor/ActorFactory.h b/src/mc/world/actor/ActorFactory.h index 11a6ab79e0..0de8dce1cd 100644 --- a/src/mc/world/actor/ActorFactory.h +++ b/src/mc/world/actor/ActorFactory.h @@ -142,10 +142,10 @@ class ActorFactory { // symbol: // ?registerEntityMapping@ActorFactory@@SAXAEBW4ActorType@@_NAEBQ6A?AV?$unique_ptr@VActor@@U?$default_delete@VActor@@@std@@@std@@PEAVActorDefinitionGroup@@AEBUActorDefinitionIdentifier@@AEAVEntityContext@@@ZV?$optional@H@4@@Z MCAPI static void registerEntityMapping( - ::ActorType const& actorType, - bool allowSummon, + ::ActorType const& actorType, + bool allowSummon, EntityMappingFactory* const& factory, - std::optional experimentIndex + std::optional experimentIndex ); // NOLINTEND diff --git a/src/mc/world/level/block/registry/BlockTypeRegistry.h b/src/mc/world/level/block/registry/BlockTypeRegistry.h index f0a20c4834..e64f986963 100644 --- a/src/mc/world/level/block/registry/BlockTypeRegistry.h +++ b/src/mc/world/level/block/registry/BlockTypeRegistry.h @@ -136,9 +136,9 @@ class BlockTypeRegistry { // symbol: // ?lookupByName@BlockTypeRegistry@@SAPEBVBlock@@AEBVHashedString@@AEBV?$vector@UBlockComplexAliasBlockState@BlockTypeRegistry@@V?$allocator@UBlockComplexAliasBlockState@BlockTypeRegistry@@@std@@@std@@_N@Z MCAPI static class Block const* lookupByName( - class HashedString const& name, + class HashedString const& name, std::vector const& states, - bool logNotFound = false + bool logNotFound = false ); // symbol: ?lookupByName@BlockTypeRegistry@@SAPEBVBlock@@AEBVHashedString@@H_N@Z From e43ae82b3899027f8794f0bc4552e3f856a672e5 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Sat, 13 Apr 2024 07:51:53 +0800 Subject: [PATCH 40/44] refactor: refactoring MemoryAllocator --- src/ll/core/Config.h | 4 +- src/ll/core/command/BuiltinCommands.cpp | 4 +- src/ll/core/command/BuiltinCommands.h | 2 +- .../{MemoryStatus.cpp => MemoryStats.cpp} | 6 +-- src/ll/core/tweak/ModifyMemoryAllocator.cpp | 52 +++++++++++++++---- xmake.lua | 3 ++ 6 files changed, 54 insertions(+), 17 deletions(-) rename src/ll/core/command/{MemoryStatus.cpp => MemoryStats.cpp} (87%) diff --git a/src/ll/core/Config.h b/src/ll/core/Config.h index 8a3bfc03be..6a87b16321 100644 --- a/src/ll/core/Config.h +++ b/src/ll/core/Config.h @@ -15,7 +15,7 @@ namespace ll { struct LeviConfig { - int version = 21; + int version = 22; std::string language = "system"; struct { @@ -46,7 +46,7 @@ struct LeviConfig { bool crashCommand = false; bool tpdimCommand = true; bool versionCommand = true; - bool memstatusCommand = true; + bool memstatsCommand = true; bool pluginManageCommand = true; } commands{}; diff --git a/src/ll/core/command/BuiltinCommands.cpp b/src/ll/core/command/BuiltinCommands.cpp index 187c6042aa..3bbb65919f 100644 --- a/src/ll/core/command/BuiltinCommands.cpp +++ b/src/ll/core/command/BuiltinCommands.cpp @@ -19,8 +19,8 @@ LL_TYPE_INSTANCE_HOOK( if (globalConfig.modules.commands.versionCommand) { registerVersionCommand(); } - if (globalConfig.modules.commands.memstatusCommand) { - registerMemstatusCommand(); + if (globalConfig.modules.commands.memstatsCommand) { + registerMemstatsCommand(); } if (globalConfig.modules.commands.crashCommand) { registerCrashCommand(); diff --git a/src/ll/core/command/BuiltinCommands.h b/src/ll/core/command/BuiltinCommands.h index 2ff34f8ae4..b4b8bdb59b 100644 --- a/src/ll/core/command/BuiltinCommands.h +++ b/src/ll/core/command/BuiltinCommands.h @@ -6,7 +6,7 @@ void registerCommands(); void registerVersionCommand(); void registerTpdimCommand(); -void registerMemstatusCommand(); +void registerMemstatsCommand(); void registerCrashCommand(); void registerPluginManageCommand(); diff --git a/src/ll/core/command/MemoryStatus.cpp b/src/ll/core/command/MemoryStats.cpp similarity index 87% rename from src/ll/core/command/MemoryStatus.cpp rename to src/ll/core/command/MemoryStats.cpp index 9f25ceb64c..cf29970851 100644 --- a/src/ll/core/command/MemoryStatus.cpp +++ b/src/ll/core/command/MemoryStats.cpp @@ -12,10 +12,10 @@ namespace ll::command { using namespace ll::i18n_literals; -void registerMemstatusCommand() { +void registerMemstatsCommand() { auto& cmd = CommandRegistrar::getInstance().getOrCreateCommand( - "memstatus", - "Query memory status"_tr(), + "memstats", + "Query memory stats"_tr(), CommandPermissionLevel::Host, CommandFlagValue::None ); diff --git a/src/ll/core/tweak/ModifyMemoryAllocator.cpp b/src/ll/core/tweak/ModifyMemoryAllocator.cpp index e856f7ccb8..31aac82e8f 100644 --- a/src/ll/core/tweak/ModifyMemoryAllocator.cpp +++ b/src/ll/core/tweak/ModifyMemoryAllocator.cpp @@ -8,9 +8,17 @@ #include "mimalloc.h" +#include "windows.h" + +#include "Psapi.h" + #include "heapapi.h" +#ifdef LL_USE_MIMALLOC +#define LL_DEFALUT_MEMORY_ALLOCATOR MimallocMemoryAllocator +#else #define LL_DEFALUT_MEMORY_ALLOCATOR StdMemoryAllocator +#endif namespace ll::memory { class MimallocMemoryAllocator : public ::Bedrock::Memory::IMemoryAllocator { @@ -57,17 +65,43 @@ class StdMemoryAllocator : public ::Bedrock::Memory::IMemoryAllocator { virtual uint64 getUsableSize(void* ptr) { return ptr ? _msize(ptr) : 0ui64; } + static std::string memStr(size_t mem) { + double r = (double)mem; + r /= 1024; + if (r < 1024) { + return ::fmt::format("{:>8.1f} KiB", r); + } + r /= 1024; + if (r < 1024) { + return ::fmt::format("{:>8.1f} MiB", r); + } + r /= 1024; + if (r < 1024) { + return ::fmt::format("{:>8.1f} GiB", r); + } + r /= 1024; + return ::fmt::format("{:>8.1f} TiB", r); + } + virtual void logCurrentState() { HEAP_SUMMARY summary{.cb = sizeof(HEAP_SUMMARY)}; - if (HeapSummary(GetProcessHeap(), 0, &summary)) { - logger.info(" heap summary:"); - logger.info(" max reserve:{:>8.1f} MiB", (double)(summary.cbMaxReserve) / (1024 * 1024)); - logger.info(" reserved:{:>8.1f} MiB", (double)(summary.cbReserved) / (1024 * 1024)); - logger.info(" committed:{:>8.1f} MiB", (double)(summary.cbCommitted) / (1024 * 1024)); - logger.info(" allocated:{:>8.1f} MiB", (double)(summary.cbAllocated) / (1024 * 1024)); - } else { - logger.error("fail to get heap summary"); - } + HeapSummary(GetProcessHeap(), 0, &summary); + PROCESS_MEMORY_COUNTERS_EX2 info{.cb = sizeof(PROCESS_MEMORY_COUNTERS_EX2)}; + GetProcessMemoryInfo(GetCurrentProcess(), (PPROCESS_MEMORY_COUNTERS)&info, info.cb); + // clang-format off + logger.info("heap stats: {:>12} {:>12}", "peak", "current"); + logger.info(" reserved: {:>12} {:>12}", memStr(summary.cbMaxReserve), memStr(summary.cbReserved)); + logger.info(" committed: {:>12} {:>12}", "", memStr(summary.cbCommitted)); + logger.info(" allocated: {:>12} {:>12}", "", memStr(summary.cbAllocated)); + logger.info(" pagefault: {:>12} {:>8}", "", info.PageFaultCount); + logger.info("workingset: {:>12} {:>12}", memStr(info.PeakWorkingSetSize), memStr(info.WorkingSetSize)); + logger.info(" pagedpool: {:>12} {:>12}", memStr(info.QuotaPeakPagedPoolUsage), memStr(info.QuotaPagedPoolUsage)); + logger.info(" nonpaged: {:>12} {:>12}", memStr(info.QuotaPeakNonPagedPoolUsage), memStr(info.QuotaNonPagedPoolUsage)); + logger.info(" pagefile: {:>12} {:>12}", memStr(info.PeakPagefileUsage), memStr(info.PagefileUsage)); + logger.info(" private: {:>12} {:>12}", "", memStr(info.PrivateUsage)); + logger.info("privateset: {:>12} {:>12}", "", memStr(info.PrivateWorkingSetSize)); + logger.info(" shared: {:>12} {:>12}", "", memStr(info.SharedCommitUsage)); + // clang-format on } virtual void* _realloc(gsl::not_null ptr, uint64 newSize) { return realloc(ptr, newSize); } diff --git a/xmake.lua b/xmake.lua index b35eddde39..a17604eb4a 100644 --- a/xmake.lua +++ b/xmake.lua @@ -124,6 +124,9 @@ target("LeviLamina") io.writefile("src/ll/test/include_all.cpp", "// auto gen when build test\n") end) end + if has_config("use_mimalloc") then + add_defines("LL_USE_MIMALLOC") + end if is_mode("debug") then add_defines("LL_DEBUG") From 3838b66770706fd84bdad361711a76d006f88e8e Mon Sep 17 00:00:00 2001 From: OEOTYAN <58554322+OEOTYAN@users.noreply.github.com> Date: Sat, 13 Apr 2024 07:53:33 +0800 Subject: [PATCH 41/44] format: formatting code --- src/ll/core/Config.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ll/core/Config.h b/src/ll/core/Config.h index 6a87b16321..0d8e0861b8 100644 --- a/src/ll/core/Config.h +++ b/src/ll/core/Config.h @@ -46,7 +46,7 @@ struct LeviConfig { bool crashCommand = false; bool tpdimCommand = true; bool versionCommand = true; - bool memstatsCommand = true; + bool memstatsCommand = true; bool pluginManageCommand = true; } commands{}; From d05cc1d58d9798ef6f53bc0220f3ab03bdd73ca4 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Sat, 13 Apr 2024 14:46:51 +0800 Subject: [PATCH 42/44] fix: remove to_underlying in DataItem --- src/ll/api/schedule/Task.cpp | 7 ++++++- src/ll/core/LeviLamina.cpp | 2 ++ src/ll/core/command/PluginManage.cpp | 4 ++-- src/ll/core/plugin/PluginRegistrar.cpp | 28 +++++++++++++++----------- src/ll/core/tweak/ModifyInfomation.cpp | 2 +- src/mc/nbt/detail/SnbtErrorCode.cpp | 2 +- src/mc/world/actor/DataItem.h | 2 +- xmake.lua | 5 +++-- 8 files changed, 32 insertions(+), 20 deletions(-) diff --git a/src/ll/api/schedule/Task.cpp b/src/ll/api/schedule/Task.cpp index af821d1053..4df8b21c8d 100644 --- a/src/ll/api/schedule/Task.cpp +++ b/src/ll/api/schedule/Task.cpp @@ -5,10 +5,13 @@ #include #include #include -#include #include #include +#if _HAS_CXX23 +#include +#endif + #include "ll/api/Logger.h" #include "ll/api/utils/ErrorUtils.h" #include "ll/core/LeviLamina.h" @@ -35,9 +38,11 @@ static std::optional tryParseTime(std::string_view expression, std::stri std::tm tm{}; auto time_now = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now()); localtime_s(&tm, &time_now); +#if _HAS_CXX23 if (std::ispanstream{expression} >> std::get_time(&tm, format.data())) { return std::mktime(&tm); } +#endif return std::nullopt; } std::chrono::system_clock::time_point parseTime(std::string_view expression) { diff --git a/src/ll/core/LeviLamina.cpp b/src/ll/core/LeviLamina.cpp index 811e04a8b1..6233a08fc7 100644 --- a/src/ll/core/LeviLamina.cpp +++ b/src/ll/core/LeviLamina.cpp @@ -237,7 +237,9 @@ void leviLaminaMain() { } if (globalConfig.modules.crashLogger.enabled) { if (globalConfig.modules.crashLogger.useBuiltin) { +#if _HAS_CXX23 static CrashLoggerNew crashLogger{}; +#endif } else { CrashLogger::initCrashLogger(); } diff --git a/src/ll/core/command/PluginManage.cpp b/src/ll/core/command/PluginManage.cpp index adc3393393..b82564a8d6 100644 --- a/src/ll/core/command/PluginManage.cpp +++ b/src/ll/core/command/PluginManage.cpp @@ -94,7 +94,7 @@ void registerPluginManageCommand() { } break; default: - std::unreachable(); + _STL_UNREACHABLE; } }>(); cmd.overload() @@ -142,7 +142,7 @@ void registerPluginManageCommand() { break; } default: - std::unreachable(); + _STL_UNREACHABLE; } }>(); cmd.overload().text("list").execute<[](CommandOrigin const&, CommandOutput& output) { diff --git a/src/ll/core/plugin/PluginRegistrar.cpp b/src/ll/core/plugin/PluginRegistrar.cpp index 77ac6ce180..9c4e56e519 100644 --- a/src/ll/core/plugin/PluginRegistrar.cpp +++ b/src/ll/core/plugin/PluginRegistrar.cpp @@ -2,7 +2,6 @@ #include #include -#include #include #include #include @@ -33,6 +32,7 @@ #include "ll/core/plugin/NativePluginManager.h" +#include "mc/external/expected_lite/expected.h" #include "mc/server/ServerInstance.h" #include "mc/world/events/ServerInstanceEventCoordinator.h" @@ -60,14 +60,14 @@ enum class DirState { Success, }; -static std::expected loadManifest(std::filesystem::path const& dir) { +static nonstd::expected loadManifest(std::filesystem::path const& dir) { auto content = file_utils::readFile(dir / u8"manifest.json"); if (!content || content->empty()) { - return std::unexpected{DirState::Empty}; + return nonstd::make_unexpected(DirState::Empty); } auto json = nlohmann::json::parse(*content, nullptr, false, true); if (json.is_discarded()) { - return std::unexpected{DirState::Error}; + return nonstd::make_unexpected(DirState::Error); } std::string dirName = string_utils::u8str2str(dir.filename().u8string()); Manifest manifest; @@ -75,14 +75,14 @@ static std::expected loadManifest(std::filesystem::path cons reflection::deserialize(manifest, json); } catch (...) { error_utils::printCurrentException(logger); - return std::unexpected{DirState::Error}; + return nonstd::make_unexpected(DirState::Error); } if (manifest.type == "preload-native" /*NativePluginTypeName*/) { - return std::unexpected{DirState::Empty}; // bypass preloader plugin + return nonstd::make_unexpected(DirState::Empty); // bypass preloader plugin } if (manifest.name != dirName) { logger.error("Plugin name {} do not match folder {}"_tr(manifest.name, dirName)); - return std::unexpected{DirState::Error}; + return nonstd::make_unexpected(DirState::Error); } return manifest; } @@ -112,7 +112,7 @@ void PluginRegistrar::loadAllPlugins() { } auto res = loadManifest(file.path()) .transform([&](auto&& manifest) { - manifests.emplace(std::string{manifest.name}, std::forward(manifest)); + manifests.try_emplace(manifest.name, std::forward(manifest)); }) .error_or(DirState::Success); if (res != DirState::Success) { @@ -136,8 +136,11 @@ void PluginRegistrar::loadAllPlugins() { error = true; #if _HAS_CXX23 logger.error("Missing dependency {}"_tr( - dependency.version.transform([&](auto& ver) { return dependency.name + " " + ver.to_string(); } - ).value_or(dependency.name) + dependency.version + .transform([&](auto& ver) { + return fmt::format("{} v{}", dependency.name, ver.to_string()); + }) + .value_or(dependency.name) )); #endif } @@ -171,8 +174,9 @@ void PluginRegistrar::loadAllPlugins() { #if _HAS_CXX23 logger.error("{} conflicts with {}"_tr( name, - conflict.version.transform([&](auto& ver) { return conflict.name + " " + ver.to_string(); } - ).value_or(conflict.name) + conflict.version + .transform([&](auto& ver) { return fmt::format("{} v{}", conflict.name, ver.to_string()); }) + .value_or(conflict.name) )); #endif } diff --git a/src/ll/core/tweak/ModifyInfomation.cpp b/src/ll/core/tweak/ModifyInfomation.cpp index 1f456531d5..601ba5172b 100644 --- a/src/ll/core/tweak/ModifyInfomation.cpp +++ b/src/ll/core/tweak/ModifyInfomation.cpp @@ -89,7 +89,7 @@ LL_STATIC_HOOK( } if (success && bufferCount > 0) { buffer = std::string(bufferCount, '\0'); - vsprintf(buffer.data(), pszFormat, va); + vsprintf_s(buffer.data(), buffer.size() + 1, pszFormat, va); } va_end(va); diff --git a/src/mc/nbt/detail/SnbtErrorCode.cpp b/src/mc/nbt/detail/SnbtErrorCode.cpp index 5cb8ca7615..90f2d6f52c 100644 --- a/src/mc/nbt/detail/SnbtErrorCode.cpp +++ b/src/mc/nbt/detail/SnbtErrorCode.cpp @@ -52,6 +52,6 @@ inline std::error_category const& snbt_category() noexcept { return std::_Immortalize_memcpy_image(); } -std::error_code makeSnbtError(SnbtErrorCode code) { return std::error_code{std::to_underlying(code), snbt_category()}; } +std::error_code makeSnbtError(SnbtErrorCode code) { return std::error_code{fmt::underlying(code), snbt_category()}; } } // namespace ll::nbt::detail diff --git a/src/mc/world/actor/DataItem.h b/src/mc/world/actor/DataItem.h index a642c8db4d..e1644bc600 100644 --- a/src/mc/world/actor/DataItem.h +++ b/src/mc/world/actor/DataItem.h @@ -38,7 +38,7 @@ class DataItem { template requires(DataItem::TypeList::contains>) [[nodiscard]] constexpr static std::unique_ptr create(::ActorDataIDs key, T&& value) { - return create(std::to_underlying(key), std::forward(value)); + return create(static_cast>(key), std::forward(value)); } [[nodiscard]] constexpr static std::unique_ptr create(::ActorDataIDs key, bool value) { return create(key, (schar)value); diff --git a/xmake.lua b/xmake.lua index a17604eb4a..a67eac4bc5 100644 --- a/xmake.lua +++ b/xmake.lua @@ -1,4 +1,6 @@ -add_rules("mode.debug", "mode.release") +add_rules("mode.release", "mode.debug") +set_allowedarchs("windows|x64") +set_defaultarchs("windows|x64") add_repositories("liteldev-repo https://github.com/LiteLDev/xmake-repo.git") @@ -64,7 +66,6 @@ target("LeviLamina") ) add_defines( "_AMD64_", - "_CRT_SECURE_NO_WARNINGS", "NOMINMAX", "UNICODE", "WIN32_LEAN_AND_MEAN", From bc3d94a3830790c71a37533f4535046d73ae8fc1 Mon Sep 17 00:00:00 2001 From: OEOTYAN Date: Sat, 13 Apr 2024 16:21:34 +0800 Subject: [PATCH 43/44] fix: fix default config load --- src/ll/api/Config.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/ll/api/Config.h b/src/ll/api/Config.h index 67193869bb..02720c8595 100644 --- a/src/ll/api/Config.h +++ b/src/ll/api/Config.h @@ -32,7 +32,11 @@ bool defaultConfigUpdater(T& config, J& data) { template inline bool loadConfig(T& config, std::filesystem::path const& path, F&& updater = defaultConfigUpdater) { bool noNeedRewrite = true; - auto content = file_utils::readFile(path); + namespace fs = std::filesystem; + if (!fs::exists(path)) { + saveConfig(config, path); + } + auto content = file_utils::readFile(path); if (content && !content->empty()) { auto data{J::parse(*content, nullptr, true, true)}; if (!data.contains("version")) { From 09a67511f0be206c35ccc82289bec34f3fe7f45a Mon Sep 17 00:00:00 2001 From: ShrBox Date: Sat, 13 Apr 2024 17:06:49 +0800 Subject: [PATCH 44/44] chore: update tooth.json --- CHANGELOG.md | 42 +++++++++++++++++++++++++++++++++++++++++- tooth.json | 4 ++-- 2 files changed, 43 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 889ad80fcf..ef36c8218e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,45 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.11.0] - 2024-04-13 + +### Added + +- Add ll::concepts::is_in_types +- Add ItemLockMode struct +- Add peers structure +- Add event::getId +- Add CompoundTagVariant::emplace +- Rewrite snbt to add error message +- Add param names from 1.16.201 + +### Changed + +- Refactoring HookRegistrar +- A more standard way of naming member variables has been adopted +- Refactoring forEachPos +- Update enum ContainerEnumName (#1503) +- Update enum ContainerType (#1504) +- Refactoring multilistener +- Refactoring TickSyncTaskPool +- Update ActorDataIDs +- Refactoring printDependencyError +- Refactoring bedrock service +- Add static_assert message in serialize associative container +- Refactoring MemoryAllocator +- Remove to_underlying in DataItem + +### Fixed + +- Fix LoopbackPacketSender member +- Fix the member order of PlayerAuthInputPacket +- Fix RakNetNetworkPeer +- Fix Bedrock::Threading namespace +- Fix PlayerActionType enum +- Fix wrong packet send logic +- Move PlayerInfoEntry to public +- Fix StructureTemplate::create + ## [0.10.5] - 2024-04-01 ### Fixed @@ -418,7 +457,8 @@ For lip and tooth-hub test only. [#1499]: https://github.com/LiteLDev/LeviLamina/issues/1499 [#1502]: https://github.com/LiteLDev/LeviLamina/issues/1502 -[Unreleased]: https://github.com/LiteLDev/LeviLamina/compare/v0.10.5...HEAD +[Unreleased]: https://github.com/LiteLDev/LeviLamina/compare/v0.11.0...HEAD +[0.11.0]: https://github.com/LiteLDev/LeviLamina/compare/v0.10.5...v0.11.0 [0.10.5]: https://github.com/LiteLDev/LeviLamina/compare/v0.10.4...v0.10.5 [0.10.4]: https://github.com/LiteLDev/LeviLamina/compare/v0.10.2...v0.10.4 [0.10.2]: https://github.com/LiteLDev/LeviLamina/compare/v0.10.1...v0.10.2 diff --git a/tooth.json b/tooth.json index 447dc54cc5..22500f1e0e 100644 --- a/tooth.json +++ b/tooth.json @@ -1,14 +1,14 @@ { "format_version": 2, "tooth": "github.com/LiteLDev/LeviLamina", - "version": "0.10.5", + "version": "0.11.0", "info": { "name": "LeviLamina", "description": "A lightweight, modular and versatile plugin loader for Minecraft Bedrock Server BDS, formerly known as LiteLoaderBDS", "author": "LiteLDev", "tags": [] }, - "asset_url": "https://github.com/LiteLDev/LeviLamina/releases/download/v0.10.5/levilamina-release-windows-x64.zip", + "asset_url": "https://github.com/LiteLDev/LeviLamina/releases/download/v0.11.0/levilamina-release-windows-x64.zip", "dependencies": { "github.com/LiteLDev/bds": "1.20.72", "github.com/LiteLDev/CrashLogger": "1.1.x",