Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make fields public for ServerListPingEvent #75

Merged
merged 43 commits into from
Dec 18, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
809c7e3
Update server_list_ping_event.h and make fields public
theaddonn Oct 11, 2024
b0757da
use proper setters
theaddonn Oct 11, 2024
7f9f59a
add set guid method for ServerListPingEvent
theaddonn Oct 11, 2024
c5f58c8
docs: update README.md
wu-vincent Dec 3, 2024
e9491ff
chore: update symbols.toml for BDS v1.21.50 Windows (not supported yet)
wu-vincent Dec 4, 2024
99b3437
fix: add missing virtual functions in IResourcePackRepository
wu-vincent Dec 5, 2024
6d719a9
fix: ScriptingGameplayEvent variants
wu-vincent Dec 5, 2024
b05c77a
fix: Dimension class members
wu-vincent Dec 5, 2024
f088952
fix: PlayerGameplayEvent variants
wu-vincent Dec 5, 2024
1d2df09
fix: update enums
wu-vincent Dec 5, 2024
a1c6b00
fix: Block and BlockLegacy
wu-vincent Dec 5, 2024
408e17b
fix: Item and ItemRegistry
wu-vincent Dec 5, 2024
f76cf4a
fix: Actor class
wu-vincent Dec 5, 2024
1a32ec8
fix: BlockSource and BinaryStream
wu-vincent Dec 5, 2024
facfb51
fix: correct size assertion for Block class
wu-vincent Dec 5, 2024
4e6c8f3
fix: prevent server crash when comments are present in `world_resourc…
wu-vincent Dec 5, 2024
1e68d72
feat: improve error logging to include exception details when JSON lo…
wu-vincent Dec 5, 2024
b9501c6
chore: update symbols.toml for BDS v1.21.50 Linux
wu-vincent Dec 6, 2024
cb950ea
fix: make Level::_cerealContext() a pure virtual function.
wu-vincent Dec 6, 2024
c860482
docs: update CHANGELOG.md
wu-vincent Dec 6, 2024
01a3ac6
deps: switch to FetchContent for funchook
wu-vincent Dec 6, 2024
ccd918e
fix(event): ensure ScriptMessageEvent is invoked correctly
wu-vincent Dec 6, 2024
dc44a72
fix: remove funchook in conanfile.py
wu-vincent Dec 6, 2024
c95504e
fix: add missing dependencies in CMakeLists.txt
wu-vincent Dec 6, 2024
4abe7d5
fix: compilation error in ScriptingEventCoordinator
wu-vincent Dec 6, 2024
b6a7847
fix: remove funchook from conanfile.py
wu-vincent Dec 6, 2024
692278c
feat: add `Block::canContainLiquid` (#107)
smartcmd Dec 14, 2024
a749b61
refactor(devtools): remove deprecated material (#109)
smartcmd Dec 16, 2024
7561b70
fix: update Biome class members
wu-vincent Dec 16, 2024
6f646e0
ci: fix static_assert macros for class size checks
wu-vincent Dec 16, 2024
8dd9acf
fix: player inventory not being updated after calling `clear`
wu-vincent Dec 16, 2024
e5bf28a
refactor: correct headers
wu-vincent Dec 18, 2024
5113f6b
feat: add an overload for `/ban` command for player name auto-completion
wu-vincent Dec 18, 2024
14a4846
refactor: update members in CommandRegistry
wu-vincent Dec 18, 2024
9821ee5
chore(deps): bump scikit-build-core-conan version in pyproject.toml
wu-vincent Dec 18, 2024
bb56db7
fix: ensure the correct plugin loader is selected when loading from f…
engsr6982 Dec 18, 2024
8ce11d7
Update server_list_ping_event.h and make fields public
theaddonn Oct 11, 2024
fd09f6a
use proper setters
theaddonn Oct 11, 2024
9404248
add set guid method for ServerListPingEvent
theaddonn Oct 11, 2024
bc386b3
docs: fix documentation for the setters
wu-vincent Dec 18, 2024
a613f88
feat: add python bindings for the setters in `ServerListPingEvent`
wu-vincent Dec 18, 2024
72b63d7
Merge remote-tracking branch 'theaddonn/patch-2' into fork/theaddonn/…
wu-vincent Dec 18, 2024
219c890
docs: update documentation to improve consistency
wu-vincent Dec 18, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,6 @@ jobs:
python -m pip install --upgrade pip
pip install conan
conan profile detect --force
conan export third_party/funchook --version 1.1.3

- name: Build with Conan (Linux)
if: runner.os == 'Linux'
Expand Down
1 change: 0 additions & 1 deletion .github/workflows/coverage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,6 @@ jobs:
python -m pip install --upgrade pip
pip install conan
conan profile detect --force
conan export third_party/funchook --version 1.1.3
conan install . --build=missing -s compiler.cppstd=17 -s compiler.libcxx=libc++ -s build_type=Debug -c tools.cmake.cmaketoolchain:generator=Ninja

- name: Build with CMake
Expand Down
27 changes: 25 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,32 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).

## 0.5.6 - Unreleased
## 0.5.7 - Unreleased

<small>[Compare with 0.5.5](https://github.com/EndstoneMC/endstone/compare/v0.5.5...HEAD)</small>
<small>[Compare with 0.5.6](https://github.com/EndstoneMC/endstone/compare/v0.5.6...HEAD)</small>

## [0.5.6](https://github.com/EndstoneMC/endstone/releases/tag/v0.5.6) - 2024-12-06

<small>[Compare with 0.5.5](https://github.com/EndstoneMC/endstone/compare/v0.5.5...v0.5.6)</small>

### Added

- Added support for Minecraft v1.21.50 (The Garden Awakens).
- Added `Inventory::getItem` and `Inventory::setItem` methods to manipulate a player's inventory.
- Added `Inventory::getContents` method to retrieve all items in an inventory.
- Added `/ban` and `/unban` commands to add or remove players from the deny list.
- Added `/banlist [ips|players]` command to list all banned players and/or IPs.
- Added `PluginManager::loadPlugin` to allow third-party plugin loaders to load plugins from single files instead of
directories. [#98](https://github.com/EndstoneMC/endstone/issues/98)

### Fixed

- Fixed an issue where `block_palette.nbt` was dumped twice in the DevTools.

### Changed

- Added support for loading a mixture of folder packs listed in `world_resource_packs.json` (the conventional method)
and zipped packs in `.zip` or `.mcpack` format placed under `resource_packs`.

## [0.5.5](https://github.com/EndstoneMC/endstone/releases/tag/v0.5.5) - 2024-10-26

Expand Down
63 changes: 6 additions & 57 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -31,33 +31,12 @@ if (ENDSTONE_DEVTOOLS_ENABLED)
add_compile_definitions(ENDSTONE_DEVTOOLS)
endif ()

# ========
# packages
# ========
find_package(base64 CONFIG REQUIRED)
find_package(Boost CONFIG REQUIRED)
find_package(concurrentqueue CONFIG REQUIRED)
find_package(cpptrace CONFIG REQUIRED)
find_package(EnTT CONFIG REQUIRED)
find_package(expected-lite REQUIRED)
find_package(fmt CONFIG REQUIRED)
find_package(funchook CONFIG REQUIRED)
find_package(glm CONFIG REQUIRED)
find_package(magic_enum CONFIG REQUIRED)
find_package(Microsoft.GSL CONFIG REQUIRED)
find_package(nlohmann_json CONFIG REQUIRED)
find_package(spdlog CONFIG REQUIRED)
find_package(tomlplusplus CONFIG REQUIRED)
if (UNIX)
find_package(libelf CONFIG REQUIRED)
endif ()

find_package(GTest CONFIG REQUIRED)


# =================
# endstone::headers
# =================
find_package(fmt REQUIRED)
find_package(expected-lite REQUIRED)

add_library(endstone_headers INTERFACE)
add_library(endstone::headers ALIAS endstone_headers)
target_include_directories(endstone_headers INTERFACE include)
Expand All @@ -66,7 +45,6 @@ target_link_libraries(endstone_headers INTERFACE fmt::fmt nonstd::expected-lite)
include(GNUInstallDirs)
install(DIRECTORY include/ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})


# ================
# endstone::python
# ================
Expand Down Expand Up @@ -103,43 +81,14 @@ endif ()
# =================
# endstone::runtime
# =================
file(GLOB_RECURSE ENDSTONE_RUNTIME_SOURCE_FILES CONFIGURE_DEPENDS "src/endstone_runtime/*.cpp")
add_library(endstone_runtime SHARED ${ENDSTONE_RUNTIME_SOURCE_FILES})
add_library(endstone::runtime ALIAS endstone_runtime)
target_link_libraries(endstone_runtime PRIVATE endstone::core funchook::funchook)
if (ENDSTONE_DEVTOOLS_ENABLED)
target_link_libraries(endstone_runtime PRIVATE endstone::devtools)
endif ()
if (WIN32)
target_link_libraries(endstone_runtime PRIVATE dbghelp.lib ws2_32.lib)
target_link_options(endstone_runtime PRIVATE "/INCREMENTAL:NO")
endif ()
if (UNIX)
target_link_libraries(endstone_runtime PRIVATE libelf::libelf)
target_link_options(endstone_runtime PRIVATE "-Wl,--exclude-libs,ALL")
target_compile_options(endstone_runtime PRIVATE "-fvisibility=hidden" "-fms-extensions")
endif ()

include(GNUInstallDirs)
install(TARGETS endstone_runtime
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
install(TARGETS endstone_runtime DESTINATION "endstone/_internal/" COMPONENT endstone_wheel OPTIONAL)
if (CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo" AND MSVC)
install(FILES $<TARGET_PDB_FILE:endstone_runtime> DESTINATION "endstone/_internal/" COMPONENT endstone_wheel OPTIONAL)
endif ()

if (WIN32)
add_library(endstone_runtime_loader SHARED "src/endstone_runtime/loader.cpp")
target_compile_definitions(endstone_runtime_loader PRIVATE _CRT_SECURE_NO_WARNINGS ENDSTONE_RUNTIME_LOADER)
install(TARGETS endstone_runtime_loader DESTINATION "endstone/_internal/" COMPONENT endstone_wheel OPTIONAL)
endif ()
add_subdirectory(src/endstone_runtime)

# =====
# tests
# =====
if (NOT BUILD_TESTING STREQUAL OFF)
find_package(GTest REQUIRED)

add_library(test_plugin SHARED tests/plugin/test_plugin.cpp)
target_link_libraries(test_plugin PRIVATE endstone::headers)
set_target_properties(test_plugin PROPERTIES LIBRARY_OUTPUT_DIRECTORY "plugins")
Expand Down
8 changes: 1 addition & 7 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,13 +36,7 @@ conan profile detect

### Install dependencies

First of all, add the `funchook/1.1.3` recipe to your conan local repository.

```shell
conan export third_party/funchook --version 1.1.3
```

Then, run the following commands:
First of all, run the following commands to install dependencies of this project:

=== ":fontawesome-brands-windows: Command Prompt"
```shell
Expand Down
3 changes: 1 addition & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,11 @@

[![CI](https://github.com/EndstoneMC/endstone/actions/workflows/ci.yml/badge.svg)](https://github.com/EndstoneMC/endstone/actions/workflows/ci.yml)
[![Documentation](https://github.com/EndstoneMC/endstone/actions/workflows/docs.yml/badge.svg)](https://endstone.dev/)
[![Minecraft - Version](https://img.shields.io/badge/minecraft-v1.21.41_(Bedrock)-black)](https://feedback.minecraft.net/hc/en-us/articles/31222183227149-Minecraft-Bedrock-Edition-1-21-40-Bundles-of-Bravery)
[![Minecraft - Version](https://img.shields.io/badge/minecraft-v1.21.50_(Bedrock)-black)](https://feedback.minecraft.net/hc/en-us/sections/360001186971-Release-Changelogs)
[![PyPI - Version](https://img.shields.io/pypi/v/endstone)](https://pypi.org/project/endstone)
[![Python](https://img.shields.io/pypi/pyversions/endstone?logo=python&logoColor=white)](https://www.python.org/)
[![GitHub License](https://img.shields.io/github/license/endstonemc/endstone)](LICENSE)
[![Codacy Badge](https://img.shields.io/codacy/grade/8877402fc70b40f5a8c4b325d890e3f7?logo=codacy)](https://app.codacy.com/gh/EndstoneMC/endstone/dashboard)
[![Code style: black](https://img.shields.io/badge/code_style-black-000000.svg)](https://github.com/psf/black)
[![Discord](https://img.shields.io/discord/1230982180742631457?logo=discord&logoColor=white&color=5865F2)](https://discord.gg/xxgPuc2XN9)
[![Ko-Fi](https://img.shields.io/badge/Buy_Me_a_Coffee-f37574?logo=kofi&logoColor=white)](https://ko-fi.com/EndstoneMC)

Expand Down
7 changes: 2 additions & 5 deletions conanfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ def requirements(self):
self.requires("entt/3.14.0")
self.requires("expected-lite/0.8.0")
self.requires("fmt/[~10]", transitive_headers=True, transitive_libs=True)
self.requires("funchook/1.1.3")
# self.requires("funchook/1.1.3")
self.requires("glm/1.0.1")
self.requires("magic_enum/0.9.5")
self.requires("ms-gsl/4.0.0")
Expand Down Expand Up @@ -205,10 +205,7 @@ def package_info(self):

self.cpp_info.components["runtime"].libs = ["endstone_runtime"]
self.cpp_info.components["runtime"].set_property("cmake_target_name", "endstone::runtime")
self.cpp_info.components["runtime"].requires = [
"core",
"funchook::funchook",
]
self.cpp_info.components["runtime"].requires = ["core"]
if self._devtools_enabled:
self.cpp_info.components["runtime"].requires.extend(["devtools"])
if self.settings.os == "Windows":
Expand Down
8 changes: 4 additions & 4 deletions include/bedrock/certificates/certificate.h
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ class Certificate {
[[nodiscard]] bool isSelfSigned() const;

private:
UnverifiedCertificate unverified_certificate_; // +0
std::unique_ptr<Certificate> parent_; // +136
bool valid_; // +144
bool self_signed_; // +145
UnverifiedCertificate unverified_certificate_; // +0
std::unique_ptr<Certificate> parent_certificate_; // +136
bool is_valid_; // +144
bool is_self_signed_; // +145
};
16 changes: 10 additions & 6 deletions include/bedrock/certificates/web_token.h
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,14 @@

#include "bedrock/deps/json/value.h"

struct WebToken {
std::string header; // +0
Json::Value header_info; // +32
std::string data; // +48
Json::Value data_info; // +80
std::string signature; // +96
class WebToken {
public:
[[nodiscard]] Json::Value const &getData() const;

private:
std::string header_; // +0
Json::Value header_info_; // +32
std::string data_; // +48
Json::Value data_info_; // +80
std::string signature_; // +96
};
9 changes: 9 additions & 0 deletions include/bedrock/common_types.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,9 @@
#include "bedrock/util/new_type.h"

using ActorList = std::vector<class Actor *>;
using BlockActorList = std::vector<class BlockActor *>;
using MobList = std::vector<std::shared_ptr<class MobSpawnerData>>;
using MobCategoryMap = std::array<std::vector<std::shared_ptr<class MobSpawnerData>>, 8UL>;

enum class SubClientId : std::uint8_t {
PrimaryClient = 0,
Expand All @@ -31,13 +34,19 @@ enum class SubClientId : std::uint8_t {
};

using BlockRuntimeId = std::uint32_t;
using BiomeIdType = std::uint16_t;

struct NewBlockID : NewType<std::uint16_t> {};
static_assert(sizeof(NewBlockID) == 2);

struct Brightness : NewType<std::uint8_t> {};
static_assert(sizeof(Brightness) == 1);

struct BrightnessPair {
Brightness sky;
Brightness block;
};
static_assert(sizeof(BrightnessPair) == 2);

using DataID = std::uint16_t;
using FacingID = std::uint8_t;
15 changes: 9 additions & 6 deletions include/bedrock/core/utility/binary_stream.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,15 @@ class ReadOnlyBinaryStream {
virtual ~ReadOnlyBinaryStream();
virtual Bedrock::Result<void> read(void *, std::uint64_t);

protected:
std::string owned_buffer_; // +8
std::string_view view_; // +40

private:
std::size_t read_pointer_; // +8
bool has_overflowed_; // +16
std::string owned_buffer_; // +24
std::string *buffer_; // +56
std::size_t read_pointer_; // +56
bool has_overflowed_; // +64
};
BEDROCK_STATIC_ASSERT_SIZE(ReadOnlyBinaryStream, 72, 64);

class BinaryStream : public ReadOnlyBinaryStream {
public:
Expand All @@ -42,6 +45,6 @@ class BinaryStream : public ReadOnlyBinaryStream {
void writeFloat(float value);

private:
std::string owned_buffer_; // +64
std::string *buffer_; // +96
std::string *buffer_; // +72
};
BEDROCK_STATIC_ASSERT_SIZE(BinaryStream, 80, 72);
4 changes: 2 additions & 2 deletions include/bedrock/forward.h
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,7 @@ class IContentTierManager;
class IFoodItemComponent;
class IGameModuleShared;
class ILevelRandom;
class ILevelStorageManagerConnector;
class IMinecraftEventing;
class INpcDialogueData;
class IUnknownBlockTypeRegistry;
Expand Down Expand Up @@ -175,7 +176,6 @@ class TrackedPacketDataContainer;
class TrimMaterialRegistry;
class TrimPatternRegistry;
class UpdateEntityAfterFallOnInterface;
class VariantParameterList;
class WeakEntityRef;
class _TickPtr; // NOLINT

Expand All @@ -185,7 +185,7 @@ enum class ArmorSlot;
enum class ArmorTextureType;
enum class BedSleepingResult;
enum class BlockActorType;
enum class BlockRenderLayer;
enum class BlockRenderLayer : std::uint8_t;
enum class BlockSupportType;
enum class BlockTintType;
enum class BurnOdds;
Expand Down
1 change: 0 additions & 1 deletion include/bedrock/locale/i18n.h
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,6 @@ class I18n {
virtual void appendAdditionalTranslations(std::unordered_map<std::string, std::string> const &,
std::string const &) = 0;
virtual void appendLanguageStrings(PackAccessStrategy *) = 0;
virtual void appendTranslations(std::string const &, std::unordered_map<std::string, std::string> const &) = 0;
virtual void addI18nObserver(I18nObserver &) = 0;
virtual void chooseLanguage(std::string const &) = 0;
virtual std::string get(std::string const &, std::vector<std::string> const &, std::shared_ptr<Localization>) = 0;
Expand Down
2 changes: 1 addition & 1 deletion include/bedrock/network/connection_request.h
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ class ConnectionRequest {
[[nodiscard]] Json::Value getData(const std::string &key) const
{
if (certificate_ && raw_token_) {
return raw_token_->data_info.get(key, Json::nullValue);
return raw_token_->getData().get(key, Json::nullValue);
}
return Json::nullValue;
}
Expand Down
2 changes: 1 addition & 1 deletion include/bedrock/network/disconnection_request_info.h
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ class Connection {
BlockMismatch = 63,
InvalidHeights = 64,
InvalidWidths = 65,
ConnectionLost = 66,
ConnectionLost_DEPRECATED = 66,
ZombieConnection = 67,
Shutdown = 68,
ReasonNotSet_DEPRECATED = 69,
Expand Down
5 changes: 3 additions & 2 deletions include/bedrock/network/packet.h
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
#include "bedrock/network/network_peer.h"
#include "bedrock/platform/result.h"

enum class MinecraftPacketIds {
enum class MinecraftPacketIds : int {
KeepAlive = 0,
Login = 1,
PlayStatus = 2,
Expand Down Expand Up @@ -242,7 +242,8 @@ enum class MinecraftPacketIds {
ContainerRegistryCleanup = 317,
MovementEffect = 318,
SetMovementAuthorityMode = 319,
EndId,
CameraAimAssistPresets = 320,
EndId = 321,
};

class Packet {
Expand Down
2 changes: 1 addition & 1 deletion include/bedrock/network/sub_client_connection_request.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ class SubClientConnectionRequest {
[[nodiscard]] Json::Value getData(const std::string &key) const
{
if (certificate_ && raw_token_) {
return raw_token_->data_info.get(key, Json::nullValue);
return raw_token_->getData().get(key, Json::nullValue);
}
return Json::nullValue;
}
Expand Down
2 changes: 1 addition & 1 deletion include/bedrock/platform/build_platform.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ enum class BuildPlatform {
iOS = 2,
OSX = 3,
Amazon = 4,
GearVR = 5,
GearVR_Deprecated = 5,
UWP = 7,
Win32 = 8,
Dedicated = 9,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,8 @@ class IResourcePackRepository : public Bedrock::EnableNonOwnerReferences {
public:
virtual void getResourcePacksByPackId(std::vector<PackInstanceId> const &, std::vector<PackInstance> &) const = 0;
[[nodiscard]] virtual ResourcePack *getResourcePackForPackId(PackIdVersion const &) const = 0;
[[nodiscard]] virtual ResourcePack *getResourcePackForPackIdInPath(PackIdVersion const &,Core::Path const &) const = 0;
[[nodiscard]] virtual ResourcePack *getResourcePackForPackIdInPath(PackIdVersion const &,
Core::Path const &) const = 0;
[[nodiscard]] virtual ResourcePack *getResourcePackByUUID(mce::UUID const &) const = 0;
[[nodiscard]] virtual ResourcePack *getResourcePackForPackIdOwned(PackIdVersion const &) const = 0;
[[nodiscard]] virtual ResourcePack *getResourcePackSatisfiesPackId(PackIdVersion const &, bool) const = 0;
Expand All @@ -39,6 +40,7 @@ class IResourcePackRepository : public Bedrock::EnableNonOwnerReferences {
virtual void addCachedResourcePacks(ContentKeyMap const *) = 0;
virtual void addWorldResourcePacks(Core::Path const &) = 0;
virtual void addPremiumWorldTemplateResourcePacks(Core::Path const &, ContentIdentity const &) = 0;
virtual void addTempWorldTemplateResourcePacks(mce::UUID const &) = 0;
virtual void removePacksLoadedFromCache() = 0;
virtual void removePacksLoadedFromWorld() = 0;
[[nodiscard]] virtual Core::HeapPathBuffer getResourcePacksPath() const = 0;
Expand Down
2 changes: 1 addition & 1 deletion include/bedrock/server/commands/command.h
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,6 @@ class Command {
CommandRegistry *registry_{nullptr}; // +16
CommandRegistry::Symbol command_symbol_; // +24
CommandPermissionLevel permission_level_ = CommandPermissionLevel::Internal; // +28
CommandFlag flags_{0}; // +30
CommandFlag flags_; // +30
};
BEDROCK_STATIC_ASSERT_SIZE(Command, 32, 32);
Loading