diff --git a/latest/assets/.doxy/reference/cpp/hashChanges.yaml b/latest/assets/.doxy/reference/cpp/hashChanges.yaml index 7e9daf95d..e1784856e 100644 --- a/latest/assets/.doxy/reference/cpp/hashChanges.yaml +++ b/latest/assets/.doxy/reference/cpp/hashChanges.yaml @@ -1 +1 @@ -1b1b6060c0f0d98b99770e1fb12c4661e83f65a9 \ No newline at end of file +043f75b99a75015193323d9be1ff4af2ced40dd4 \ No newline at end of file diff --git a/latest/assets/.doxy/reference/cpp/reference/cpp/annotated.md b/latest/assets/.doxy/reference/cpp/reference/cpp/annotated.md index ff2086090..0c3425bb4 100644 --- a/latest/assets/.doxy/reference/cpp/reference/cpp/annotated.md +++ b/latest/assets/.doxy/reference/cpp/reference/cpp/annotated.md @@ -14,6 +14,7 @@ Here are the classes, structs, unions and interfaces with brief descriptions: * **class** [**ActorRemoveEvent**](classendstone_1_1ActorRemoveEvent.md) _Called when an_ [_**Actor**_](classendstone_1_1Actor.md) _is removed._ * **class** [**ActorSpawnEvent**](classendstone_1_1ActorSpawnEvent.md) _Called when an_ [_**Actor**_](classendstone_1_1Actor.md) _is spawned into a world._ * **class** [**ActorTeleportEvent**](classendstone_1_1ActorTeleportEvent.md) _Called when a non-player entity is teleported from one location to another._ + * **class** [**BanList**](classendstone_1_1BanList.md) _A class that represents a ban list, containing bans of some target type._ * **class** [**Block**](classendstone_1_1Block.md) _Represents a block._ * **class** [**BlockBreakEvent**](classendstone_1_1BlockBreakEvent.md) _Called when a block is broken by a player._ * **class** [**BlockData**](classendstone_1_1BlockData.md) _Represents the data related to a live block._ diff --git a/latest/assets/.doxy/reference/cpp/reference/cpp/ban__list_8h.md b/latest/assets/.doxy/reference/cpp/reference/cpp/ban__list_8h.md new file mode 100644 index 000000000..0640ab42a --- /dev/null +++ b/latest/assets/.doxy/reference/cpp/reference/cpp/ban__list_8h.md @@ -0,0 +1,95 @@ + + +# File ban\_list.h + + + +[**FileList**](files.md) **>** [**ban**](dir_f1b1f2e9abb31749ef58cd98f22bcd78.md) **>** [**ban\_list.h**](ban__list_8h.md) + +[Go to the source code of this file](ban__list_8h_source.md) + + + +* `#include ` +* `#include ` +* `#include ` +* `#include ` + + + + + + + + + + + + + +## Namespaces + +| Type | Name | +| ---: | :--- | +| namespace | [**endstone**](namespaceendstone.md)
| + + +## Classes + +| Type | Name | +| ---: | :--- | +| class | [**BanList**](classendstone_1_1BanList.md) <typename T>
_A class that represents a ban list, containing bans of some target type._ | + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +------------------------------ +The documentation for this class was generated from the following file `include/endstone/ban/ban_list.h` + diff --git a/latest/assets/.doxy/reference/cpp/reference/cpp/ban__list_8h_source.md b/latest/assets/.doxy/reference/cpp/reference/cpp/ban__list_8h_source.md new file mode 100644 index 000000000..fb83a6ce4 --- /dev/null +++ b/latest/assets/.doxy/reference/cpp/reference/cpp/ban__list_8h_source.md @@ -0,0 +1,62 @@ + + +# File ban\_list.h + +[**File List**](files.md) **>** [**ban**](dir_f1b1f2e9abb31749ef58cd98f22bcd78.md) **>** [**ban\_list.h**](ban__list_8h.md) + +[Go to the documentation of this file](ban__list_8h.md) + + +```C++ +// Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#pragma once + +#include +#include +#include +#include + +namespace endstone { + +template +class BanList { +public: + virtual ~BanList() = default; + + virtual BanEntry* getBanEntry(T target) const = 0; + + virtual BanEntry& addBan(T target, + std::optional reason, + std::optional expires, + std::optional source) = 0; + + virtual BanEntry& addBan(T target, + std::optional reason, + std::optional duration, + std::optional source) = 0; + + virtual std::vector*> getEntries() const = 0; + + virtual bool isBanned(T target) const = 0; + + virtual void removeBan(T target) = 0; +}; + +} // namespace endstone + +``` + + diff --git a/latest/assets/.doxy/reference/cpp/reference/cpp/class_member_functions.md b/latest/assets/.doxy/reference/cpp/reference/cpp/class_member_functions.md index fca81310d..4ce4b025d 100644 --- a/latest/assets/.doxy/reference/cpp/reference/cpp/class_member_functions.md +++ b/latest/assets/.doxy/reference/cpp/reference/cpp/class_member_functions.md @@ -15,6 +15,7 @@ * **ActorRemoveEvent** ([**endstone::ActorRemoveEvent**](classendstone_1_1ActorRemoveEvent.md)) * **ActorSpawnEvent** ([**endstone::ActorSpawnEvent**](classendstone_1_1ActorSpawnEvent.md)) * **ActorTeleportEvent** ([**endstone::ActorTeleportEvent**](classendstone_1_1ActorTeleportEvent.md)) +* **addBan** ([**endstone::BanList**](classendstone_1_1BanList.md)) * **addFlag** ([**endstone::BossBar**](classendstone_1_1BossBar.md)) * **addPlayer** ([**endstone::BossBar**](classendstone_1_1BossBar.md)) * **allowChangesFrom** ([**endstone::Command**](classendstone_1_1Command.md)) @@ -122,6 +123,8 @@ * **getSource** ([**endstone::ActorKnockbackEvent**](classendstone_1_1ActorKnockbackEvent.md)) * **getFrom** ([**endstone::ActorTeleportEvent**](classendstone_1_1ActorTeleportEvent.md), [**endstone::PlayerTeleportEvent**](classendstone_1_1PlayerTeleportEvent.md)) * **getTo** ([**endstone::ActorTeleportEvent**](classendstone_1_1ActorTeleportEvent.md), [**endstone::PlayerTeleportEvent**](classendstone_1_1PlayerTeleportEvent.md)) +* **getBanEntry** ([**endstone::BanList**](classendstone_1_1BanList.md)) +* **getEntries** ([**endstone::BanList**](classendstone_1_1BanList.md), [**endstone::Scoreboard**](classendstone_1_1Scoreboard.md)) * **getData** ([**endstone::Block**](classendstone_1_1Block.md), [**endstone::BlockState**](classendstone_1_1BlockState.md)) * **getRelative** ([**endstone::Block**](classendstone_1_1Block.md)) * **getType** ([**endstone::Block**](classendstone_1_1Block.md), [**endstone::BlockData**](classendstone_1_1BlockData.md), [**endstone::BlockState**](classendstone_1_1BlockState.md), [**endstone::Dimension**](classendstone_1_1Dimension.md), [**endstone::ItemStack**](classendstone_1_1ItemStack.md), [**endstone::Packet**](classendstone_1_1Packet.md), [**endstone::ServerLoadEvent**](classendstone_1_1ServerLoadEvent.md), [**endstone::SpawnParticleEffectPacket**](classendstone_1_1SpawnParticleEffectPacket.md)) @@ -245,7 +248,6 @@ * **getPendingTasks** ([**endstone::Scheduler**](classendstone_1_1Scheduler.md)) * **getEntry** ([**endstone::Score**](classendstone_1_1Score.md)) * **getObjective** ([**endstone::Score**](classendstone_1_1Score.md), [**endstone::Scoreboard**](classendstone_1_1Scoreboard.md)) -* **getEntries** ([**endstone::Scoreboard**](classendstone_1_1Scoreboard.md)) * **getObjectives** ([**endstone::Scoreboard**](classendstone_1_1Scoreboard.md)) * **getObjectivesByCriteria** ([**endstone::Scoreboard**](classendstone_1_1Scoreboard.md)) * **getScores** ([**endstone::Scoreboard**](classendstone_1_1Scoreboard.md)) @@ -309,6 +311,7 @@ * **isInWater** ([**endstone::Actor**](classendstone_1_1Actor.md)) * **isOnGround** ([**endstone::Actor**](classendstone_1_1Actor.md)) * **isCancellable** ([**endstone::ActorDeathEvent**](classendstone_1_1ActorDeathEvent.md), [**endstone::ActorKnockbackEvent**](classendstone_1_1ActorKnockbackEvent.md), [**endstone::ActorRemoveEvent**](classendstone_1_1ActorRemoveEvent.md), [**endstone::ActorSpawnEvent**](classendstone_1_1ActorSpawnEvent.md), [**endstone::ActorTeleportEvent**](classendstone_1_1ActorTeleportEvent.md), [**endstone::BlockBreakEvent**](classendstone_1_1BlockBreakEvent.md), [**endstone::BlockPlaceEvent**](classendstone_1_1BlockPlaceEvent.md), [**endstone::BroadcastMessageEvent**](classendstone_1_1BroadcastMessageEvent.md), [**endstone::Event**](classendstone_1_1Event.md), [**endstone::PlayerChatEvent**](classendstone_1_1PlayerChatEvent.md), [**endstone::PlayerCommandEvent**](classendstone_1_1PlayerCommandEvent.md), [**endstone::PlayerDeathEvent**](classendstone_1_1PlayerDeathEvent.md), [**endstone::PlayerInteractActorEvent**](classendstone_1_1PlayerInteractActorEvent.md), [**endstone::PlayerInteractEvent**](classendstone_1_1PlayerInteractEvent.md), [**endstone::PlayerJoinEvent**](classendstone_1_1PlayerJoinEvent.md), [**endstone::PlayerKickEvent**](classendstone_1_1PlayerKickEvent.md), [**endstone::PlayerLoginEvent**](classendstone_1_1PlayerLoginEvent.md), [**endstone::PlayerQuitEvent**](classendstone_1_1PlayerQuitEvent.md), [**endstone::PlayerTeleportEvent**](classendstone_1_1PlayerTeleportEvent.md), [**endstone::PluginDisableEvent**](classendstone_1_1PluginDisableEvent.md), [**endstone::PluginEnableEvent**](classendstone_1_1PluginEnableEvent.md), [**endstone::ScriptMessageEvent**](classendstone_1_1ScriptMessageEvent.md), [**endstone::ServerCommandEvent**](classendstone_1_1ServerCommandEvent.md), [**endstone::ServerListPingEvent**](classendstone_1_1ServerListPingEvent.md), [**endstone::ServerLoadEvent**](classendstone_1_1ServerLoadEvent.md), [**endstone::ThunderChangeEvent**](classendstone_1_1ThunderChangeEvent.md), [**endstone::WeatherChangeEvent**](classendstone_1_1WeatherChangeEvent.md)) +* **isBanned** ([**endstone::BanList**](classendstone_1_1BanList.md)) * **isValid** ([**endstone::Block**](classendstone_1_1Block.md)) * **isVisible** ([**endstone::BossBar**](classendstone_1_1BossBar.md)) * **isRegistered** ([**endstone::Command**](classendstone_1_1Command.md)) @@ -403,6 +406,7 @@ ## r * **removeScoreboardTag** ([**endstone::Actor**](classendstone_1_1Actor.md)) +* **removeBan** ([**endstone::BanList**](classendstone_1_1BanList.md)) * **removeAll** ([**endstone::BossBar**](classendstone_1_1BossBar.md)) * **removeFlag** ([**endstone::BossBar**](classendstone_1_1BossBar.md)) * **removePlayer** ([**endstone::BossBar**](classendstone_1_1BossBar.md)) @@ -582,6 +586,7 @@ * **~ActorRemoveEvent** ([**endstone::ActorRemoveEvent**](classendstone_1_1ActorRemoveEvent.md)) * **~ActorSpawnEvent** ([**endstone::ActorSpawnEvent**](classendstone_1_1ActorSpawnEvent.md)) * **~ActorTeleportEvent** ([**endstone::ActorTeleportEvent**](classendstone_1_1ActorTeleportEvent.md)) +* **~BanList** ([**endstone::BanList**](classendstone_1_1BanList.md)) * **~Block** ([**endstone::Block**](classendstone_1_1Block.md)) * **~BlockBreakEvent** ([**endstone::BlockBreakEvent**](classendstone_1_1BlockBreakEvent.md)) * **~BlockData** ([**endstone::BlockData**](classendstone_1_1BlockData.md)) diff --git a/latest/assets/.doxy/reference/cpp/reference/cpp/class_members.md b/latest/assets/.doxy/reference/cpp/reference/cpp/class_members.md index 91d8b7aee..016c83fc7 100644 --- a/latest/assets/.doxy/reference/cpp/reference/cpp/class_members.md +++ b/latest/assets/.doxy/reference/cpp/reference/cpp/class_members.md @@ -16,6 +16,7 @@ * **ActorRemoveEvent** ([**endstone::ActorRemoveEvent**](classendstone_1_1ActorRemoveEvent.md)) * **ActorSpawnEvent** ([**endstone::ActorSpawnEvent**](classendstone_1_1ActorSpawnEvent.md)) * **ActorTeleportEvent** ([**endstone::ActorTeleportEvent**](classendstone_1_1ActorTeleportEvent.md)) +* **addBan** ([**endstone::BanList**](classendstone_1_1BanList.md)) * **addFlag** ([**endstone::BossBar**](classendstone_1_1BossBar.md)) * **addPlayer** ([**endstone::BossBar**](classendstone_1_1BossBar.md)) * **Aqua** ([**endstone::ColorFormat**](structendstone_1_1ColorFormat.md)) @@ -182,6 +183,8 @@ * **getSource** ([**endstone::ActorKnockbackEvent**](classendstone_1_1ActorKnockbackEvent.md)) * **getFrom** ([**endstone::ActorTeleportEvent**](classendstone_1_1ActorTeleportEvent.md), [**endstone::PlayerTeleportEvent**](classendstone_1_1PlayerTeleportEvent.md)) * **getTo** ([**endstone::ActorTeleportEvent**](classendstone_1_1ActorTeleportEvent.md), [**endstone::PlayerTeleportEvent**](classendstone_1_1PlayerTeleportEvent.md)) +* **getBanEntry** ([**endstone::BanList**](classendstone_1_1BanList.md)) +* **getEntries** ([**endstone::BanList**](classendstone_1_1BanList.md), [**endstone::Scoreboard**](classendstone_1_1Scoreboard.md)) * **getData** ([**endstone::Block**](classendstone_1_1Block.md), [**endstone::BlockState**](classendstone_1_1BlockState.md)) * **getRelative** ([**endstone::Block**](classendstone_1_1Block.md)) * **getType** ([**endstone::Block**](classendstone_1_1Block.md), [**endstone::BlockData**](classendstone_1_1BlockData.md), [**endstone::BlockState**](classendstone_1_1BlockState.md), [**endstone::Dimension**](classendstone_1_1Dimension.md), [**endstone::ItemStack**](classendstone_1_1ItemStack.md), [**endstone::Packet**](classendstone_1_1Packet.md), [**endstone::ServerLoadEvent**](classendstone_1_1ServerLoadEvent.md), [**endstone::SpawnParticleEffectPacket**](classendstone_1_1SpawnParticleEffectPacket.md)) @@ -308,7 +311,6 @@ * **getPendingTasks** ([**endstone::Scheduler**](classendstone_1_1Scheduler.md)) * **getEntry** ([**endstone::Score**](classendstone_1_1Score.md)) * **getObjective** ([**endstone::Score**](classendstone_1_1Score.md), [**endstone::Scoreboard**](classendstone_1_1Scoreboard.md)) -* **getEntries** ([**endstone::Scoreboard**](classendstone_1_1Scoreboard.md)) * **getObjectives** ([**endstone::Scoreboard**](classendstone_1_1Scoreboard.md)) * **getObjectivesByCriteria** ([**endstone::Scoreboard**](classendstone_1_1Scoreboard.md)) * **getScores** ([**endstone::Scoreboard**](classendstone_1_1Scoreboard.md)) @@ -377,6 +379,7 @@ * **isInWater** ([**endstone::Actor**](classendstone_1_1Actor.md)) * **isOnGround** ([**endstone::Actor**](classendstone_1_1Actor.md)) * **isCancellable** ([**endstone::ActorDeathEvent**](classendstone_1_1ActorDeathEvent.md), [**endstone::ActorKnockbackEvent**](classendstone_1_1ActorKnockbackEvent.md), [**endstone::ActorRemoveEvent**](classendstone_1_1ActorRemoveEvent.md), [**endstone::ActorSpawnEvent**](classendstone_1_1ActorSpawnEvent.md), [**endstone::ActorTeleportEvent**](classendstone_1_1ActorTeleportEvent.md), [**endstone::BlockBreakEvent**](classendstone_1_1BlockBreakEvent.md), [**endstone::BlockPlaceEvent**](classendstone_1_1BlockPlaceEvent.md), [**endstone::BroadcastMessageEvent**](classendstone_1_1BroadcastMessageEvent.md), [**endstone::Event**](classendstone_1_1Event.md), [**endstone::PlayerChatEvent**](classendstone_1_1PlayerChatEvent.md), [**endstone::PlayerCommandEvent**](classendstone_1_1PlayerCommandEvent.md), [**endstone::PlayerDeathEvent**](classendstone_1_1PlayerDeathEvent.md), [**endstone::PlayerInteractActorEvent**](classendstone_1_1PlayerInteractActorEvent.md), [**endstone::PlayerInteractEvent**](classendstone_1_1PlayerInteractEvent.md), [**endstone::PlayerJoinEvent**](classendstone_1_1PlayerJoinEvent.md), [**endstone::PlayerKickEvent**](classendstone_1_1PlayerKickEvent.md), [**endstone::PlayerLoginEvent**](classendstone_1_1PlayerLoginEvent.md), [**endstone::PlayerQuitEvent**](classendstone_1_1PlayerQuitEvent.md), [**endstone::PlayerTeleportEvent**](classendstone_1_1PlayerTeleportEvent.md), [**endstone::PluginDisableEvent**](classendstone_1_1PluginDisableEvent.md), [**endstone::PluginEnableEvent**](classendstone_1_1PluginEnableEvent.md), [**endstone::ScriptMessageEvent**](classendstone_1_1ScriptMessageEvent.md), [**endstone::ServerCommandEvent**](classendstone_1_1ServerCommandEvent.md), [**endstone::ServerListPingEvent**](classendstone_1_1ServerListPingEvent.md), [**endstone::ServerLoadEvent**](classendstone_1_1ServerLoadEvent.md), [**endstone::ThunderChangeEvent**](classendstone_1_1ThunderChangeEvent.md), [**endstone::WeatherChangeEvent**](classendstone_1_1WeatherChangeEvent.md)) +* **isBanned** ([**endstone::BanList**](classendstone_1_1BanList.md)) * **isValid** ([**endstone::Block**](classendstone_1_1Block.md)) * **isVisible** ([**endstone::BossBar**](classendstone_1_1BossBar.md)) * **Italic** ([**endstone::ColorFormat**](structendstone_1_1ColorFormat.md)) @@ -559,6 +562,7 @@ * **removeScoreboardTag** ([**endstone::Actor**](classendstone_1_1Actor.md)) * **raw\_knockback\_** ([**endstone::ActorKnockbackEvent**](classendstone_1_1ActorKnockbackEvent.md)) +* **removeBan** ([**endstone::BanList**](classendstone_1_1BanList.md)) * **removeAll** ([**endstone::BossBar**](classendstone_1_1BossBar.md)) * **removeFlag** ([**endstone::BossBar**](classendstone_1_1BossBar.md)) * **removePlayer** ([**endstone::BossBar**](classendstone_1_1BossBar.md)) @@ -784,6 +788,7 @@ * **~ActorRemoveEvent** ([**endstone::ActorRemoveEvent**](classendstone_1_1ActorRemoveEvent.md)) * **~ActorSpawnEvent** ([**endstone::ActorSpawnEvent**](classendstone_1_1ActorSpawnEvent.md)) * **~ActorTeleportEvent** ([**endstone::ActorTeleportEvent**](classendstone_1_1ActorTeleportEvent.md)) +* **~BanList** ([**endstone::BanList**](classendstone_1_1BanList.md)) * **~Block** ([**endstone::Block**](classendstone_1_1Block.md)) * **~BlockBreakEvent** ([**endstone::BlockBreakEvent**](classendstone_1_1BlockBreakEvent.md)) * **~BlockData** ([**endstone::BlockData**](classendstone_1_1BlockData.md)) diff --git a/latest/assets/.doxy/reference/cpp/reference/cpp/classendstone_1_1BanList.md b/latest/assets/.doxy/reference/cpp/reference/cpp/classendstone_1_1BanList.md new file mode 100644 index 000000000..3a142e606 --- /dev/null +++ b/latest/assets/.doxy/reference/cpp/reference/cpp/classendstone_1_1BanList.md @@ -0,0 +1,331 @@ + + +# Class endstone::BanList + +**template <typename T>** + + + +[**ClassList**](annotated.md) **>** [**endstone**](namespaceendstone.md) **>** [**BanList**](classendstone_1_1BanList.md) + + + +_A class that represents a ban list, containing bans of some target type._ [More...](#detailed-description) + +* `#include ` + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +## Public Functions + +| Type | Name | +| ---: | :--- | +| virtual BanEntry< T > & | [**addBan**](#function-addban-12) (T target, std::optional< std::string > reason, std::optional< std::chrono::system\_clock::time\_point > expires, std::optional< std::string > source) = 0
_Adds a ban to this list. If a previous ban exists, this will update the previous entry._ | +| virtual BanEntry< T > & | [**addBan**](#function-addban-22) (T target, std::optional< std::string > reason, std::optional< std::chrono::seconds > duration, std::optional< std::string > source) = 0
_Adds a ban to this list. If a previous ban exists, this will update the previous entry._ | +| virtual BanEntry< T > \* | [**getBanEntry**](#function-getbanentry) (T target) const = 0
_Gets a BanEntry by the target._ | +| virtual std::vector< BanEntry< T > \* > | [**getEntries**](#function-getentries) () const = 0
_Gets a vector containing pointers to every BanEntry in this list._ | +| virtual bool | [**isBanned**](#function-isbanned) (T target) const = 0
_Checks if a BanEntry exists for the target, indicating an active ban status._ | +| virtual void | [**removeBan**](#function-removeban) (T target) = 0
_Removes the specified target from this list, therefore indicating a "not banned" status._ | +| virtual | [**~BanList**](#function-banlist) () = default
| + + + + + + + + + + + + + + + + + + + + + + + + + + + + +# Detailed Description + + + + +**Template parameters:** + + +* `T` The ban target type + + + + + +## Public Functions Documentation + + + + +### function addBan [1/2] + +_Adds a ban to this list. If a previous ban exists, this will update the previous entry._ +```C++ +virtual BanEntry< T > & endstone::BanList::addBan ( + T target, + std::optional< std::string > reason, + std::optional< std::chrono::system_clock::time_point > expires, + std::optional< std::string > source +) = 0 +``` + + + + + +**Parameters:** + + +* `target` The target of the ban +* `reason` The reason for the ban, std::nullopt indicates implementation default +* `expires` The date for the ban's expiration (unban), or std::nullopt to imply forever +* `source` The source of the ban, std::nullopt indicates implementation default + + + +**Returns:** + +BanEntry<T>& The entry for the newly created ban, or the entry for the (updated) previous ban + + + + + + + +
+ + + +### function addBan [2/2] + +_Adds a ban to this list. If a previous ban exists, this will update the previous entry._ +```C++ +virtual BanEntry< T > & endstone::BanList::addBan ( + T target, + std::optional< std::string > reason, + std::optional< std::chrono::seconds > duration, + std::optional< std::string > source +) = 0 +``` + + + + + +**Parameters:** + + +* `target` The target of the ban +* `reason` The reason for the ban, std::nullopt indicates implementation default +* `duration` The duration of the ban, or std::nullopt to imply forever +* `source` The source of the ban, std::nullopt indicates implementation default + + + +**Returns:** + +BanEntry<T>& The entry for the newly created ban, or the entry for the (updated) previous ban + + + + + + + +
+ + + +### function getBanEntry + +_Gets a BanEntry by the target._ +```C++ +virtual BanEntry< T > * endstone::BanList::getBanEntry ( + T target +) const = 0 +``` + + + + + +**Parameters:** + + +* `target` The entry parameter to search for + + + +**Returns:** + +BanEntry<T>\* The corresponding entry, or nullptr if none found + + + + + + + +
+ + + +### function getEntries + +_Gets a vector containing pointers to every BanEntry in this list._ +```C++ +virtual std::vector< BanEntry< T > * > endstone::BanList::getEntries () const = 0 +``` + + + + + +**Returns:** + +std::vector<BanEntry<T>\*> A vector containing pointers to every entry tracked by this list + + + + + + + +
+ + + +### function isBanned + +_Checks if a BanEntry exists for the target, indicating an active ban status._ +```C++ +virtual bool endstone::BanList::isBanned ( + T target +) const = 0 +``` + + + + + +**Parameters:** + + +* `target` The target to find + + + +**Returns:** + +true If a BanEntry exists for the target, indicating an active ban status + + + + +**Returns:** + +false Otherwise + + + + + + + +
+ + + +### function removeBan + +_Removes the specified target from this list, therefore indicating a "not banned" status._ +```C++ +virtual void endstone::BanList::removeBan ( + T target +) = 0 +``` + + + + + +**Parameters:** + + +* `target` The target to remove from this list + + + + + + +
+ + + +### function ~BanList + +```C++ +virtual endstone::BanList::~BanList () = default +``` + + + + +
+ +------------------------------ +The documentation for this class was generated from the following file `include/endstone/ban/ban_list.h` + diff --git a/latest/assets/.doxy/reference/cpp/reference/cpp/classes.md b/latest/assets/.doxy/reference/cpp/reference/cpp/classes.md index c1e302a74..2d9c47f37 100644 --- a/latest/assets/.doxy/reference/cpp/reference/cpp/classes.md +++ b/latest/assets/.doxy/reference/cpp/reference/cpp/classes.md @@ -24,6 +24,8 @@ ## b +* [**BanList**](classendstone_1_1BanList.md) +([**endstone**](namespaceendstone.md)) * [**Block**](classendstone_1_1Block.md) ([**endstone**](namespaceendstone.md)) * [**BlockBreakEvent**](classendstone_1_1BlockBreakEvent.md) diff --git a/latest/assets/.doxy/reference/cpp/reference/cpp/dir_6cf277b678674f97c7a2b6b3b2447b33.md b/latest/assets/.doxy/reference/cpp/reference/cpp/dir_6cf277b678674f97c7a2b6b3b2447b33.md index 5d52b59bb..f6897a3e1 100644 --- a/latest/assets/.doxy/reference/cpp/reference/cpp/dir_6cf277b678674f97c7a2b6b3b2447b33.md +++ b/latest/assets/.doxy/reference/cpp/reference/cpp/dir_6cf277b678674f97c7a2b6b3b2447b33.md @@ -36,6 +36,7 @@ | Type | Name | | ---: | :--- | | dir | [**actor**](dir_dd7779a583e02d88c9a89a2c881c3946.md)
| +| dir | [**ban**](dir_f1b1f2e9abb31749ef58cd98f22bcd78.md)
| | dir | [**block**](dir_faca67fc60a7463eb1bd30eabe023cf1.md)
| | dir | [**boss**](dir_d0a7fd8d5b72659767e2a2651b1ff51c.md)
| | dir | [**command**](dir_5c7b2dbfabcd1115569d1e20a260545c.md)
| diff --git a/latest/assets/.doxy/reference/cpp/reference/cpp/dir_f1b1f2e9abb31749ef58cd98f22bcd78.md b/latest/assets/.doxy/reference/cpp/reference/cpp/dir_f1b1f2e9abb31749ef58cd98f22bcd78.md new file mode 100644 index 000000000..8cfe64bc7 --- /dev/null +++ b/latest/assets/.doxy/reference/cpp/reference/cpp/dir_f1b1f2e9abb31749ef58cd98f22bcd78.md @@ -0,0 +1,86 @@ + + +# Dir include/endstone/ban + + + +[**FileList**](files.md) **>** [**ban**](dir_f1b1f2e9abb31749ef58cd98f22bcd78.md) + + + + + + + + + + + + +## Files + +| Type | Name | +| ---: | :--- | +| file | [**ban\_list.h**](ban__list_8h.md)
| + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +------------------------------ +The documentation for this class was generated from the following file `include/endstone/ban/` + diff --git a/latest/assets/.doxy/reference/cpp/reference/cpp/files.md b/latest/assets/.doxy/reference/cpp/reference/cpp/files.md index 2bac81e33..36e66f5af 100644 --- a/latest/assets/.doxy/reference/cpp/reference/cpp/files.md +++ b/latest/assets/.doxy/reference/cpp/reference/cpp/files.md @@ -12,6 +12,8 @@ Here is a list of all files with brief descriptions: * **dir** [**actor**](dir_dd7779a583e02d88c9a89a2c881c3946.md) * **file** [**actor.h**](actor_8h.md) * **file** [**mob.h**](mob_8h.md) + * **dir** [**ban**](dir_f1b1f2e9abb31749ef58cd98f22bcd78.md) + * **file** [**ban\_list.h**](ban__list_8h.md) * **dir** [**block**](dir_faca67fc60a7463eb1bd30eabe023cf1.md) * **file** [**block.h**](block_8h.md) * **file** [**block\_data.h**](block__data_8h.md) diff --git a/latest/assets/.doxy/reference/cpp/reference/cpp/hierarchy.md b/latest/assets/.doxy/reference/cpp/reference/cpp/hierarchy.md index 977ebe796..5a1325069 100644 --- a/latest/assets/.doxy/reference/cpp/reference/cpp/hierarchy.md +++ b/latest/assets/.doxy/reference/cpp/reference/cpp/hierarchy.md @@ -47,6 +47,7 @@ This inheritance list is sorted roughly, but not completely, alphabetically: * **class** [**endstone::WeatherEvent**](classendstone_1_1WeatherEvent.md) _Represents a Weather-related event._ * **class** [**endstone::ThunderChangeEvent**](classendstone_1_1ThunderChangeEvent.md) _Called when the thunder state in a world is changing._ * **class** [**endstone::WeatherChangeEvent**](classendstone_1_1WeatherChangeEvent.md) _Called when the weather (rain) state in a world is changing._ +* **class** [**endstone::BanList**](classendstone_1_1BanList.md) _A class that represents a ban list, containing bans of some target type._ * **class** [**endstone::Block**](classendstone_1_1Block.md) _Represents a block._ * **class** [**endstone::BossBar**](classendstone_1_1BossBar.md) _Represents a boss bar that is displayed to players._ * **class** [**endstone::Command**](classendstone_1_1Command.md) _Represents a_ [_**Command**_](classendstone_1_1Command.md) _, which executes various tasks upon user input._ diff --git a/latest/assets/.doxy/reference/cpp/reference/cpp/namespaceendstone.md b/latest/assets/.doxy/reference/cpp/reference/cpp/namespaceendstone.md index db1af2d66..1cb3e11c6 100644 --- a/latest/assets/.doxy/reference/cpp/reference/cpp/namespaceendstone.md +++ b/latest/assets/.doxy/reference/cpp/reference/cpp/namespaceendstone.md @@ -42,6 +42,7 @@ | class | [**ActorRemoveEvent**](classendstone_1_1ActorRemoveEvent.md)
_Called when an_ [_**Actor**_](classendstone_1_1Actor.md) _is removed._ | | class | [**ActorSpawnEvent**](classendstone_1_1ActorSpawnEvent.md)
_Called when an_ [_**Actor**_](classendstone_1_1Actor.md) _is spawned into a world._ | | class | [**ActorTeleportEvent**](classendstone_1_1ActorTeleportEvent.md)
_Called when a non-player entity is teleported from one location to another._ | +| class | [**BanList**](classendstone_1_1BanList.md) <typename T>
_A class that represents a ban list, containing bans of some target type._ | | class | [**Block**](classendstone_1_1Block.md)
_Represents a block._ | | class | [**BlockBreakEvent**](classendstone_1_1BlockBreakEvent.md)
_Called when a block is broken by a player._ | | class | [**BlockData**](classendstone_1_1BlockData.md)
_Represents the data related to a live block._ | diff --git a/latest/assets/.doxy/reference/cpp/xml/ban__list_8h.xml b/latest/assets/.doxy/reference/cpp/xml/ban__list_8h.xml new file mode 100644 index 000000000..98791e15f --- /dev/null +++ b/latest/assets/.doxy/reference/cpp/xml/ban__list_8h.xml @@ -0,0 +1,94 @@ + + + + ban_list.h + vector + string + optional + chrono + + + + + + + + + + + + + + + + + + + + + + + + + + + endstone::BanList + endstone + + + + + +//Copyright(c)2024,TheEndstoneProject.(https://endstone.dev)AllRightsReserved. +// +//LicensedundertheApacheLicense,Version2.0(the"License"); +//youmaynotusethisfileexceptincompliancewiththeLicense. +//YoumayobtainacopyoftheLicenseat +// +//http://www.apache.org/licenses/LICENSE-2.0 +// +//Unlessrequiredbyapplicablelaworagreedtoinwriting,software +//distributedundertheLicenseisdistributedonan"ASIS"BASIS, +//WITHOUTWARRANTIESORCONDITIONSOFANYKIND,eitherexpressorimplied. +//SeetheLicenseforthespecificlanguagegoverningpermissionsand +//limitationsundertheLicense. + +#pragmaonce + +#include<vector> +#include<string> +#include<optional> +#include<chrono> + +namespaceendstone{ + +template<typenameT> +classBanList{ +public: +virtual~BanList()=default; + +virtualBanEntry<T>*getBanEntry(Ttarget)const=0; + +virtualBanEntry<T>&addBan(Ttarget, +std::optional<std::string>reason, +std::optional<std::chrono::system_clock::time_point>expires, +std::optional<std::string>source)=0; + +virtualBanEntry<T>&addBan(Ttarget, +std::optional<std::string>reason, +std::optional<std::chrono::seconds>duration, +std::optional<std::string>source)=0; + +virtualstd::vector<BanEntry<T>*>getEntries()const=0; + +virtualboolisBanned(Ttarget)const=0; + +virtualvoidremoveBan(Ttarget)=0; +}; + +}//namespaceendstone + + + + + diff --git a/latest/assets/.doxy/reference/cpp/xml/classendstone_1_1BanList.xml b/latest/assets/.doxy/reference/cpp/xml/classendstone_1_1BanList.xml new file mode 100644 index 000000000..9048d3349 --- /dev/null +++ b/latest/assets/.doxy/reference/cpp/xml/classendstone_1_1BanList.xml @@ -0,0 +1,291 @@ + + + + endstone::BanList + endstone/ban/ban_list.h + + + typename T + + + + + + virtual endstone::BanList< T >::~BanList + ()=default + ~BanList + + + + + + + + + + BanEntry< T > * + virtual BanEntry<T>* endstone::BanList< T >::getBanEntry + (T target) const =0 + getBanEntry + + T + target + + +Gets a BanEntry by the target. + + + + +target + + +The entry parameter to search for + + + +BanEntry<T>* The corresponding entry, or nullptr if none found + + + + + + + + + BanEntry< T > & + virtual BanEntry<T>& endstone::BanList< T >::addBan + (T target, std::optional< std::string > reason, std::optional< std::chrono::system_clock::time_point > expires, std::optional< std::string > source)=0 + addBan + + T + target + + + std::optional< std::string > + reason + + + std::optional< std::chrono::system_clock::time_point > + expires + + + std::optional< std::string > + source + + +Adds a ban to this list. If a previous ban exists, this will update the previous entry. + + + + +target + + +The target of the ban + + + + +reason + + +The reason for the ban, std::nullopt indicates implementation default + + + + +expires + + +The date for the ban's expiration (unban), or std::nullopt to imply forever + + + + +source + + +The source of the ban, std::nullopt indicates implementation default + + + +BanEntry<T>& The entry for the newly created ban, or the entry for the (updated) previous ban + + + + + + + + + BanEntry< T > & + virtual BanEntry<T>& endstone::BanList< T >::addBan + (T target, std::optional< std::string > reason, std::optional< std::chrono::seconds > duration, std::optional< std::string > source)=0 + addBan + + T + target + + + std::optional< std::string > + reason + + + std::optional< std::chrono::seconds > + duration + + + std::optional< std::string > + source + + +Adds a ban to this list. If a previous ban exists, this will update the previous entry. + + + + +target + + +The target of the ban + + + + +reason + + +The reason for the ban, std::nullopt indicates implementation default + + + + +duration + + +The duration of the ban, or std::nullopt to imply forever + + + + +source + + +The source of the ban, std::nullopt indicates implementation default + + + +BanEntry<T>& The entry for the newly created ban, or the entry for the (updated) previous ban + + + + + + + + + std::vector< BanEntry< T > * > + virtual std::vector<BanEntry<T>*> endstone::BanList< T >::getEntries + () const =0 + getEntries + +Gets a vector containing pointers to every BanEntry in this list. + + +std::vector<BanEntry<T>*> A vector containing pointers to every entry tracked by this list + + + + + + + + + bool + virtual bool endstone::BanList< T >::isBanned + (T target) const =0 + isBanned + + T + target + + +Checks if a BanEntry exists for the target, indicating an active ban status. + + + + +target + + +The target to find + + + +true If a BanEntry exists for the target, indicating an active ban status + +false Otherwise + + + + + + + + + void + virtual void endstone::BanList< T >::removeBan + (T target)=0 + removeBan + + T + target + + +Removes the specified target from this list, therefore indicating a "not banned" status. + + + + +target + + +The target to remove from this list + + + + + + + + + + + +A class that represents a ban list, containing bans of some target type. + + + + +T + + +The ban target type + + + + + + + + endstone::BanListaddBan + endstone::BanListaddBan + endstone::BanListgetBanEntry + endstone::BanListgetEntries + endstone::BanListisBanned + endstone::BanListremoveBan + endstone::BanList~BanList + + + diff --git a/latest/assets/.doxy/reference/cpp/xml/dir_6cf277b678674f97c7a2b6b3b2447b33.xml b/latest/assets/.doxy/reference/cpp/xml/dir_6cf277b678674f97c7a2b6b3b2447b33.xml index 7a4deaf0b..2ab9526d5 100644 --- a/latest/assets/.doxy/reference/cpp/xml/dir_6cf277b678674f97c7a2b6b3b2447b33.xml +++ b/latest/assets/.doxy/reference/cpp/xml/dir_6cf277b678674f97c7a2b6b3b2447b33.xml @@ -3,6 +3,7 @@ include/endstone include/endstone/actor + include/endstone/ban include/endstone/block include/endstone/boss include/endstone/command diff --git a/latest/assets/.doxy/reference/cpp/xml/dir_f1b1f2e9abb31749ef58cd98f22bcd78.xml b/latest/assets/.doxy/reference/cpp/xml/dir_f1b1f2e9abb31749ef58cd98f22bcd78.xml new file mode 100644 index 000000000..8dedef8b9 --- /dev/null +++ b/latest/assets/.doxy/reference/cpp/xml/dir_f1b1f2e9abb31749ef58cd98f22bcd78.xml @@ -0,0 +1,12 @@ + + + + include/endstone/ban + ban_list.h + + + + + + + diff --git a/latest/assets/.doxy/reference/cpp/xml/index.xml b/latest/assets/.doxy/reference/cpp/xml/index.xml index cafa8d8dc..183536724 100644 --- a/latest/assets/.doxy/reference/cpp/xml/index.xml +++ b/latest/assets/.doxy/reference/cpp/xml/index.xml @@ -91,6 +91,15 @@ getTo setTo + endstone::BanList + ~BanList + getBanEntry + addBan + addBan + getEntries + isBanned + removeBan + endstone::Block ~Block isValid @@ -1381,6 +1390,8 @@ mob.h + ban_list.h + block.h block_data.h @@ -1607,6 +1618,8 @@ include/endstone/event/actor + include/endstone/ban + include/endstone/block include/endstone/event/block diff --git a/latest/assets/.doxy/reference/cpp/xml/namespaceendstone.xml b/latest/assets/.doxy/reference/cpp/xml/namespaceendstone.xml index 1223a6d2b..2e979a0a8 100644 --- a/latest/assets/.doxy/reference/cpp/xml/namespaceendstone.xml +++ b/latest/assets/.doxy/reference/cpp/xml/namespaceendstone.xml @@ -4,6 +4,7 @@ endstone endstone::Actor endstone::Mob + endstone::BanList endstone::Block endstone::BlockData endstone::BlockState diff --git a/latest/reference/cpp/annotated/index.html b/latest/reference/cpp/annotated/index.html index 692de55ac..14db2d7ec 100644 --- a/latest/reference/cpp/annotated/index.html +++ b/latest/reference/cpp/annotated/index.html @@ -1997,6 +1997,7 @@

Class ListActorRemoveEvent Called when an Actor is removed.
  • class ActorSpawnEvent Called when an Actor is spawned into a world.
  • class ActorTeleportEvent Called when a non-player entity is teleported from one location to another.
  • +
  • class BanList A class that represents a ban list, containing bans of some target type.
  • class Block Represents a block.
  • class BlockBreakEvent Called when a block is broken by a player.
  • class BlockData Represents the data related to a live block.
  • diff --git a/latest/reference/cpp/ban__list_8h/index.html b/latest/reference/cpp/ban__list_8h/index.html new file mode 100644 index 000000000..47de77cef --- /dev/null +++ b/latest/reference/cpp/ban__list_8h/index.html @@ -0,0 +1,2151 @@ + + + + + + + + + + + + + + + + + + + + + + + File ban_list.h - Endstone + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    + + + + + + + + + + + + + + + + + + + + +

    File ban_list.h

    +

    FileList > ban > ban_list.h

    +

    Go to the source code of this file

    +
      +
    • #include <vector>
    • +
    • #include <string>
    • +
    • #include <optional>
    • +
    • #include <chrono>
    • +
    +

    Namespaces

    + + + + + + + + + + + + + +
    TypeName
    namespaceendstone
    +

    Classes

    + + + + + + + + + + + + + +
    TypeName
    classBanList <typename T>
    A class that represents a ban list, containing bans of some target type.
    +
    +

    The documentation for this class was generated from the following file include/endstone/ban/ban_list.h

    + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + \ No newline at end of file diff --git a/latest/reference/cpp/ban__list_8h_source/index.html b/latest/reference/cpp/ban__list_8h_source/index.html new file mode 100644 index 000000000..9cdc9b895 --- /dev/null +++ b/latest/reference/cpp/ban__list_8h_source/index.html @@ -0,0 +1,2132 @@ + + + + + + + + + + + + + + + + + + + + + + + File ban_list.h - Endstone + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    + + + + + + + + + + + + + + + + + + + + +

    File ban_list.h

    +

    File List > ban > ban_list.h

    +

    Go to the documentation of this file

    +
    // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.
    +//
    +// Licensed under the Apache License, Version 2.0 (the "License");
    +// you may not use this file except in compliance with the License.
    +// You may obtain a copy of the License at
    +//
    +//     http://www.apache.org/licenses/LICENSE-2.0
    +//
    +// Unless required by applicable law or agreed to in writing, software
    +// distributed under the License is distributed on an "AS IS" BASIS,
    +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +// See the License for the specific language governing permissions and
    +// limitations under the License.
    +
    +#pragma once
    +
    +#include <vector>
    +#include <string>
    +#include <optional>
    +#include <chrono>
    +
    +namespace endstone {
    +
    +template <typename T>
    +class BanList {
    +public:
    +    virtual ~BanList() = default;
    +
    +    virtual BanEntry<T>* getBanEntry(T target) const = 0;
    +
    +    virtual BanEntry<T>& addBan(T target,
    +                                std::optional<std::string> reason,
    +                                std::optional<std::chrono::system_clock::time_point> expires,
    +                                std::optional<std::string> source) = 0;
    +
    +    virtual BanEntry<T>& addBan(T target,
    +                                std::optional<std::string> reason,
    +                                std::optional<std::chrono::seconds> duration,
    +                                std::optional<std::string> source) = 0;
    +
    +    virtual std::vector<BanEntry<T>*> getEntries() const = 0;
    +
    +    virtual bool isBanned(T target) const = 0;
    +
    +    virtual void removeBan(T target) = 0;
    +};
    +
    +}  // namespace endstone
    +
    + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + \ No newline at end of file diff --git a/latest/reference/cpp/class_member_functions/index.html b/latest/reference/cpp/class_member_functions/index.html index 60c278fb5..25350210b 100644 --- a/latest/reference/cpp/class_member_functions/index.html +++ b/latest/reference/cpp/class_member_functions/index.html @@ -2473,6 +2473,7 @@

    aActorRemoveEvent (endstone::ActorRemoveEvent)
  • ActorSpawnEvent (endstone::ActorSpawnEvent)
  • ActorTeleportEvent (endstone::ActorTeleportEvent)
  • +
  • addBan (endstone::BanList)
  • addFlag (endstone::BossBar)
  • addPlayer (endstone::BossBar)
  • allowChangesFrom (endstone::Command)
  • @@ -2574,6 +2575,8 @@

    ggetSource (endstone::ActorKnockbackEvent)
  • getFrom (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
  • getTo (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
  • +
  • getBanEntry (endstone::BanList)
  • +
  • getEntries (endstone::BanList, endstone::Scoreboard)
  • getData (endstone::Block, endstone::BlockState)
  • getRelative (endstone::Block)
  • getType (endstone::Block, endstone::BlockData, endstone::BlockState, endstone::Dimension, endstone::ItemStack, endstone::Packet, endstone::ServerLoadEvent, endstone::SpawnParticleEffectPacket)
  • @@ -2697,7 +2700,6 @@

    ggetPendingTasks (endstone::Scheduler)
  • getEntry (endstone::Score)
  • getObjective (endstone::Score, endstone::Scoreboard)
  • -
  • getEntries (endstone::Scoreboard)
  • getObjectives (endstone::Scoreboard)
  • getObjectivesByCriteria (endstone::Scoreboard)
  • getScores (endstone::Scoreboard)
  • @@ -2759,6 +2761,7 @@

    iisInWater (endstone::Actor)
  • isOnGround (endstone::Actor)
  • isCancellable (endstone::ActorDeathEvent, endstone::ActorKnockbackEvent, endstone::ActorRemoveEvent, endstone::ActorSpawnEvent, endstone::ActorTeleportEvent, endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::BroadcastMessageEvent, endstone::Event, endstone::PlayerChatEvent, endstone::PlayerCommandEvent, endstone::PlayerDeathEvent, endstone::PlayerInteractActorEvent, endstone::PlayerInteractEvent, endstone::PlayerJoinEvent, endstone::PlayerKickEvent, endstone::PlayerLoginEvent, endstone::PlayerQuitEvent, endstone::PlayerTeleportEvent, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::ScriptMessageEvent, endstone::ServerCommandEvent, endstone::ServerListPingEvent, endstone::ServerLoadEvent, endstone::ThunderChangeEvent, endstone::WeatherChangeEvent)
  • +
  • isBanned (endstone::BanList)
  • isValid (endstone::Block)
  • isVisible (endstone::BossBar)
  • isRegistered (endstone::Command)
  • @@ -2848,6 +2851,7 @@

    pr

    • removeScoreboardTag (endstone::Actor)
    • +
    • removeBan (endstone::BanList)
    • removeAll (endstone::BossBar)
    • removeFlag (endstone::BossBar)
    • removePlayer (endstone::BossBar)
    • @@ -3021,6 +3025,7 @@

      ~<
    • ~ActorRemoveEvent (endstone::ActorRemoveEvent)
    • ~ActorSpawnEvent (endstone::ActorSpawnEvent)
    • ~ActorTeleportEvent (endstone::ActorTeleportEvent)
    • +
    • ~BanList (endstone::BanList)
    • ~Block (endstone::Block)
    • ~BlockBreakEvent (endstone::BlockBreakEvent)
    • ~BlockData (endstone::BlockData)
    • diff --git a/latest/reference/cpp/class_members/index.html b/latest/reference/cpp/class_members/index.html index 6028b087d..a515a65f5 100644 --- a/latest/reference/cpp/class_members/index.html +++ b/latest/reference/cpp/class_members/index.html @@ -2628,6 +2628,7 @@

      aActorRemoveEvent (endstone::ActorRemoveEvent)
    • ActorSpawnEvent (endstone::ActorSpawnEvent)
    • ActorTeleportEvent (endstone::ActorTeleportEvent)
    • +
    • addBan (endstone::BanList)
    • addFlag (endstone::BossBar)
    • addPlayer (endstone::BossBar)
    • Aqua (endstone::ColorFormat)
    • @@ -2788,6 +2789,8 @@

      ggetSource (endstone::ActorKnockbackEvent)
    • getFrom (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
    • getTo (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
    • +
    • getBanEntry (endstone::BanList)
    • +
    • getEntries (endstone::BanList, endstone::Scoreboard)
    • getData (endstone::Block, endstone::BlockState)
    • getRelative (endstone::Block)
    • getType (endstone::Block, endstone::BlockData, endstone::BlockState, endstone::Dimension, endstone::ItemStack, endstone::Packet, endstone::ServerLoadEvent, endstone::SpawnParticleEffectPacket)
    • @@ -2914,7 +2917,6 @@

      ggetPendingTasks (endstone::Scheduler)
    • getEntry (endstone::Score)
    • getObjective (endstone::Score, endstone::Scoreboard)
    • -
    • getEntries (endstone::Scoreboard)
    • getObjectives (endstone::Scoreboard)
    • getObjectivesByCriteria (endstone::Scoreboard)
    • getScores (endstone::Scoreboard)
    • @@ -2981,6 +2983,7 @@

      iisInWater (endstone::Actor)
    • isOnGround (endstone::Actor)
    • isCancellable (endstone::ActorDeathEvent, endstone::ActorKnockbackEvent, endstone::ActorRemoveEvent, endstone::ActorSpawnEvent, endstone::ActorTeleportEvent, endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::BroadcastMessageEvent, endstone::Event, endstone::PlayerChatEvent, endstone::PlayerCommandEvent, endstone::PlayerDeathEvent, endstone::PlayerInteractActorEvent, endstone::PlayerInteractEvent, endstone::PlayerJoinEvent, endstone::PlayerKickEvent, endstone::PlayerLoginEvent, endstone::PlayerQuitEvent, endstone::PlayerTeleportEvent, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::ScriptMessageEvent, endstone::ServerCommandEvent, endstone::ServerListPingEvent, endstone::ServerLoadEvent, endstone::ThunderChangeEvent, endstone::WeatherChangeEvent)
    • +
    • isBanned (endstone::BanList)
    • isValid (endstone::Block)
    • isVisible (endstone::BossBar)
    • Italic (endstone::ColorFormat)
    • @@ -3154,6 +3157,7 @@

      r
    • removeScoreboardTag (endstone::Actor)
    • raw_knockback_ (endstone::ActorKnockbackEvent)
    • +
    • removeBan (endstone::BanList)
    • removeAll (endstone::BossBar)
    • removeFlag (endstone::BossBar)
    • removePlayer (endstone::BossBar)
    • @@ -3370,6 +3374,7 @@

      ~<
    • ~ActorRemoveEvent (endstone::ActorRemoveEvent)
    • ~ActorSpawnEvent (endstone::ActorSpawnEvent)
    • ~ActorTeleportEvent (endstone::ActorTeleportEvent)
    • +
    • ~BanList (endstone::BanList)
    • ~Block (endstone::Block)
    • ~BlockBreakEvent (endstone::BlockBreakEvent)
    • ~BlockData (endstone::BlockData)
    • diff --git a/latest/reference/cpp/classendstone_1_1BanList/index.html b/latest/reference/cpp/classendstone_1_1BanList/index.html new file mode 100644 index 000000000..358018274 --- /dev/null +++ b/latest/reference/cpp/classendstone_1_1BanList/index.html @@ -0,0 +1,2248 @@ + + + + + + + + + + + + + + + + + + + + + + + Class endstone::BanList - Endstone + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      + + + +
      + + + + + + +
      + + +
      + +
      + + + + + + + + + +
      +
      + + + +
      +
      +
      + + + + + + + +
      +
      +
      + + + +
      +
      +
      + + + +
      +
      +
      + + + +
      +
      + + + + + + + + + + + + + + + + + + + + +

      Class endstone::BanList

      +

      template <typename T>

      +

      ClassList > endstone > BanList

      +

      A class that represents a ban list, containing bans of some target type. More...

      +
        +
      • #include <endstone/ban/ban_list.h>
      • +
      +

      Public Functions

      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      TypeName
      virtual BanEntry< T > &addBan (T target, std::optional< std::string > reason, std::optional< std::chrono::system_clock::time_point > expires, std::optional< std::string > source) = 0
      Adds a ban to this list. If a previous ban exists, this will update the previous entry.
      virtual BanEntry< T > &addBan (T target, std::optional< std::string > reason, std::optional< std::chrono::seconds > duration, std::optional< std::string > source) = 0
      Adds a ban to this list. If a previous ban exists, this will update the previous entry.
      virtual BanEntry< T > *getBanEntry (T target) const = 0
      Gets a BanEntry by the target.
      virtual std::vector< BanEntry< T > * >getEntries () const = 0
      Gets a vector containing pointers to every BanEntry in this list.
      virtual boolisBanned (T target) const = 0
      Checks if a BanEntry exists for the target, indicating an active ban status.
      virtual voidremoveBan (T target) = 0
      Removes the specified target from this list, therefore indicating a "not banned" status.
      virtual~BanList () = default
      +

      Detailed Description

      +

      Template parameters:

      +
        +
      • T The ban target type
      • +
      +

      Public Functions Documentation

      +

      function addBan [½]

      +

      Adds a ban to this list. If a previous ban exists, this will update the previous entry. +

      virtual BanEntry< T > & endstone::BanList::addBan (
      +    T target,
      +    std::optional< std::string > reason,
      +    std::optional< std::chrono::system_clock::time_point > expires,
      +    std::optional< std::string > source
      +) = 0
      +

      +

      Parameters:

      +
        +
      • target The target of the ban
      • +
      • reason The reason for the ban, std::nullopt indicates implementation default
      • +
      • expires The date for the ban's expiration (unban), or std::nullopt to imply forever
      • +
      • source The source of the ban, std::nullopt indicates implementation default
      • +
      +

      Returns:

      +

      BanEntry<T>& The entry for the newly created ban, or the entry for the (updated) previous ban

      +
      + +

      function addBan [2/2]

      +

      Adds a ban to this list. If a previous ban exists, this will update the previous entry. +

      virtual BanEntry< T > & endstone::BanList::addBan (
      +    T target,
      +    std::optional< std::string > reason,
      +    std::optional< std::chrono::seconds > duration,
      +    std::optional< std::string > source
      +) = 0
      +

      +

      Parameters:

      +
        +
      • target The target of the ban
      • +
      • reason The reason for the ban, std::nullopt indicates implementation default
      • +
      • duration The duration of the ban, or std::nullopt to imply forever
      • +
      • source The source of the ban, std::nullopt indicates implementation default
      • +
      +

      Returns:

      +

      BanEntry<T>& The entry for the newly created ban, or the entry for the (updated) previous ban

      +
      + +

      function getBanEntry

      +

      Gets a BanEntry by the target. +

      virtual BanEntry< T > * endstone::BanList::getBanEntry (
      +    T target
      +) const = 0
      +

      +

      Parameters:

      +
        +
      • target The entry parameter to search for
      • +
      +

      Returns:

      +

      BanEntry<T>* The corresponding entry, or nullptr if none found

      +
      + +

      function getEntries

      +

      Gets a vector containing pointers to every BanEntry in this list. +

      virtual std::vector< BanEntry< T > * > endstone::BanList::getEntries () const = 0
      +

      +

      Returns:

      +

      std::vector<BanEntry<T>*> A vector containing pointers to every entry tracked by this list

      +
      + +

      function isBanned

      +

      Checks if a BanEntry exists for the target, indicating an active ban status. +

      virtual bool endstone::BanList::isBanned (
      +    T target
      +) const = 0
      +

      +

      Parameters:

      +
        +
      • target The target to find
      • +
      +

      Returns:

      +

      true If a BanEntry exists for the target, indicating an active ban status

      +

      Returns:

      +

      false Otherwise

      +
      + +

      function removeBan

      +

      Removes the specified target from this list, therefore indicating a "not banned" status. +

      virtual void endstone::BanList::removeBan (
      +    T target
      +) = 0
      +

      +

      Parameters:

      +
        +
      • target The target to remove from this list
      • +
      +
      + +

      function ~BanList

      +
      virtual endstone::BanList::~BanList () = default
      +
      +
      + +
      +

      The documentation for this class was generated from the following file include/endstone/ban/ban_list.h

      + + + + + + + + + + + + + +
      +
      + + + + + +
      + + + +
      + + + +
      +
      +
      +
      + + + + + + + + + + \ No newline at end of file diff --git a/latest/reference/cpp/classes/index.html b/latest/reference/cpp/classes/index.html index 6dbb3386e..6cec53964 100644 --- a/latest/reference/cpp/classes/index.html +++ b/latest/reference/cpp/classes/index.html @@ -2416,6 +2416,8 @@

      a

      b

      +
    • dir ban +
    • dir block
      • file block.h
      • file block_data.h
      • diff --git a/latest/reference/cpp/hierarchy/index.html b/latest/reference/cpp/hierarchy/index.html index 56f380d1e..422d54274 100644 --- a/latest/reference/cpp/hierarchy/index.html +++ b/latest/reference/cpp/hierarchy/index.html @@ -2050,6 +2050,7 @@

        Class Hierarchyendstone::BanList A class that represents a ban list, containing bans of some target type.
      • class endstone::Block Represents a block.
      • class endstone::BossBar Represents a boss bar that is displayed to players.
      • class endstone::Command Represents a Command , which executes various tasks upon user input.
          diff --git a/latest/reference/cpp/namespaceendstone/index.html b/latest/reference/cpp/namespaceendstone/index.html index d18b4a398..fd2d13b82 100644 --- a/latest/reference/cpp/namespaceendstone/index.html +++ b/latest/reference/cpp/namespaceendstone/index.html @@ -2448,6 +2448,10 @@

          Classesclass +BanList <typename T>
          A class that represents a ban list, containing bans of some target type. + + +class Block
          Represents a block. diff --git a/latest/search/search_index.json b/latest/search/search_index.json index d0f0e4c47..f320400a7 100644 --- a/latest/search/search_index.json +++ b/latest/search/search_index.json @@ -1 +1 @@ -{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Home","text":"

          Write you plugins in Python or C++ and enhance the Bedrock Dedicated Servers in minutes - add custom features and functionality, design innovative and bespoke player experiences.

          "},{"location":"#ready-to-start","title":"\ud83d\ude80 Ready to Start?","text":"
          • Install Endstone server

            Follow the comprehensive guide to install and configure your Endstone server.

            Getting Started

          • Write your first plugin

            Our step-by-step tutorial takes you from zero to hero as you create your first plugin.

            Tutorials

          "},{"location":"#looking-for-hosting-support","title":"\ud83c\udfae Looking for Hosting Support?","text":"

          Try Bisect Hosting and get 25% off with promo code endstone.

          "},{"location":"changelog/","title":"Changelog","text":"

          All notable changes to this project will be documented in this file.

          The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

          "},{"location":"changelog/#056-unreleased","title":"0.5.6 - Unreleased","text":"

          Compare with 0.5.5

          "},{"location":"changelog/#055-2024-10-26","title":"0.5.5 - 2024-10-26","text":"

          Compare with 0.5.4.1

          "},{"location":"changelog/#added","title":"Added","text":"
          • Added support for Minecraft v1.21.40 (Bundles of Bravery).
          • CommandSender will now be downcast to the correct derived type on the Python side.
          • Added the Objective::isDisplayed method to check if an objective is being displayed in any of the scoreboard slots.
          • Added Server::getOnlineMode to check if the server is running with authentication enabled.
          • Added Actor::getScoreboardTags to get the list of tags added to the actor.
          • Added Actor::addScoreboardTag and Actor::removeScoreboardTag to modify the actor's tags.
          • Added support for loading zipped resource packs. You can now put .zip and .mcpack resource packs under the resource_packs folder, and they will be loaded automatically when the server starts.
          • Added support for encrypted resource packs. You can put the keys in the .zip.key or .mcpack.key format next to the resource packs.
          • Added the ScriptMessageEvent, which will get called when a script message is sent using the /scriptevent command.
          • Added Server::getLanguage to translate a message into a specific locale.
          • Added Actor::getHealth, Actor::setHealth, and Actor::getMaxHealth for getting and setting actor health.
          • Added CommandSenderWrapper to capture the output of command execution for any command sender.
          • Added Player::spawnParticle to send a particle effect that is only visible to the player.
          "},{"location":"changelog/#changed","title":"Changed","text":"
          • Error messages from DevTools, when OpenGL is not available, are now suppressed.
          • The return type of several methods has been changed to endstone::Result to include error messages, which will automatically throw exceptions with the same messages on the Python side.
          "},{"location":"changelog/#fixed","title":"Fixed","text":"
          • Fixed a crash that occurred while handling server ping requests (#60).
          "},{"location":"changelog/#0541-2023-09-19","title":"0.5.4.1 - 2023-09-19","text":"

          Compare with 0.5.4

          "},{"location":"changelog/#fixed_1","title":"Fixed","text":"
          • Fixed a crash that could occur when the player uses emotes.
          "},{"location":"changelog/#054-2024-09-19","title":"0.5.4 - 2024-09-19","text":"

          Compare with 0.5.3

          "},{"location":"changelog/#added_1","title":"Added","text":"
          • Added support for Minecraft v1.21.30.
          • Added support for Python 3.13.
          • Added biome data to the DevTools by @CoolLoong.
          "},{"location":"changelog/#changed_1","title":"Changed","text":"
          • BREAKING CHANGE: Player::performCommand now executes the command as a Player to resolve #53. This means the command execution will now depend on the player's permissions as operator permissions are no longer granted. If you still want to have the player perform a command with elevated permissions, consider using Server::dispatchCommand to execute execute as {player_name} run {command}.
          "},{"location":"changelog/#fixed_2","title":"Fixed","text":"
          • Actor::isOnGround, Actor::isInWater, and Actor::isInLava now return the correct values.
          • Fixed a typo in the documentation by @thatgurkangurk.
          • Fixed the command parser logic for chained commands.
          • Fixed a server crash when spawning a simulated player due to the absence of an invalid network identifier.
          "},{"location":"changelog/#053-2024-09-12","title":"0.5.3 - 2024-09-12","text":"

          Compare with 0.5.2

          "},{"location":"changelog/#added_2","title":"Added","text":"
          • Added support for Minecraft v1.21.23.
          • Introduced the BlockData class, which encapsulates both the block type and a specific state from all possible block states.
          • Block types and block states can now be used as command arguments.
          • Added PlayerKnockbackEvent, triggered when a player receives knockback. Developers can modify the knockback that the player will receive.
          • Added PlayerKickEvent, triggered when a player is kicked from the server, allowing for customization of kick messages.
          • Introduced the BlockState class, representing a snapshot of a block at a specific point in time.
          • PlayerJoinEvent and PlayerQuitEvent now include getter and setter methods for customizing join/quit messages.
          • Integrated bStats metrics.
          "},{"location":"changelog/#changed_2","title":"Changed","text":"
          • BREAKING CHANGE: Renamed Server::getNewScoreboard to Server::createScoreboard for consistency with other methods like createBossbar and createBlockData.
          • Lifted the restriction on the /reload command for console use. It can now be executed in-game.
          "},{"location":"changelog/#fixed_3","title":"Fixed","text":"
          • Enforced the use of libc++ for C++ plugins on Linux to resolve symbol errors.
          • Player::setExpProgress now correctly sets experience progress without precision loss.
          • Fixed an issue where death messages were being sent to players twice.
          • Resolved a crash when calling ItemStack::getType on an item from PlayerInteractEvent when the player interacts with a block with bare hands.
          • PlayerInteractEvent::hasItem now correctly returns false if the player has no item in hand when interacting.
          "},{"location":"changelog/#052-2024-08-30","title":"0.5.2 - 2024-08-30","text":"

          Compare with 0.5.1

          "},{"location":"changelog/#added_3","title":"Added","text":"
          • Support for Minecraft v1.21.22.
          • Boss bar API.
          • Block::getRelative to get a block relative to a block face.
          • BlockBreakEvent triggered when a player breaks a block.
          • BlockPlaceEvent triggered when a player places a block against another block.
          • PlayerInteractEvent triggered when a player right-clicks a block.
          • PlayerInteractActorEvent triggered when a player interacts with an actor.
          • An auto installer script for installing Endstone on Linux (thanks to @legitbox).
          "},{"location":"changelog/#changed_3","title":"Changed","text":"
          • Check chunk states before getting the block in Dimension::getBlockAt.
          "},{"location":"changelog/#fixed_4","title":"Fixed","text":"
          • #38 - Plugins can now be properly loaded inside a virtual environment on Linux.
          "},{"location":"changelog/#051-2024-08-24","title":"0.5.1 - 2024-08-24","text":"

          Compare with 0.5.0

          "},{"location":"changelog/#added_4","title":"Added","text":"
          • Support for Minecraft v1.21.20.
          • Player::getScoreboard and Player::setScoreboard methods to allow each player to have their own scoreboard ( separate from the main shared scoreboard).
          • PlayerTeleportEvent, which is called when a player is teleported from one location to another.
          • Actor::teleport method to teleport an actor to a given location or actor.
          • The server can now be gracefully shut down when Ctrl + C is pressed.
          • /status command to show the uptime and performance of the server.
          • Basic network API to allow plugins to send custom packets. Currently, only SpawnParticleEffectPacket is supported.
          • /reload command to reload plugins in addition to addons.
          • Player::sendToast method to send a toast message to players.
          • Furnace-related item data to DevTools by @smartcmd.
          "},{"location":"changelog/#changed_4","title":"Changed","text":"
          • Player::isOp and Player::setOp methods are now consistent with the similar methods in the scripting API.
          • The fix for the warning message about empty packets is now redundant and has been removed.
          • BREAKING CHANGE: Server::getLevels has been replaced by Server::getLevel.
          • BREAKING CHANGE: Player::getDeviceId now returns a string object instead of a UUID object, as it is not guaranteed to be a UUID on all platforms.
          "},{"location":"changelog/#fixed_5","title":"Fixed","text":"
          • #29 - Commands will no longer be sent to a player who doesn't have
          • #32 - Creating an action form without an on_submit callback will no longer crashes the server
          • Plugin config files are now always read and written in UTF-8 encoding.
          • Added a missing parameter to ActionForm::addButton.
          • Action forms without any buttons can now be displayed correctly on the client side.
          • The Python executable can now be located in multiple possible locations on Linux.
          "},{"location":"changelog/#050-2024-07-29","title":"0.5.0 - 2024-07-29","text":"

          Compare with 0.4.10

          "},{"location":"changelog/#added_5","title":"Added","text":"
          • Support for Minecraft v1.21.3.
          • Actor::getId function to get an actor's unique id, persisting between server runs.
          • Actor::isDead function to check if an actor is marked for removal post-death.
          • ActorTeleport event that triggers when an entity teleports (e.g., Enderman, Wolf).
          • Mob::isGliding function to check if a living entity is gliding.
          • Player::sendTitle and Player::resetTitle functions for sending and resetting an on-screen title.
          • Player::transfer function to transfer a player to another server.
          • Player::getXuid to get the Xbox User ID (XUID) of the player.
          • Python: package metadata can now be used as a fallback for plugin metadata.
          • Python: isinstance function can now be used to check if a CommandSender is a Player or ConsoleCommandSender.
          • Experimental Scoreboard API.
          • Experimental Form API.
          "},{"location":"changelog/#changed_5","title":"Changed","text":"
          • Player class now inherits from the Mob class instead of Actor class.
          • BREAKING CHANGE: Plugin names should only contain lowercase letters, numbers, and underscores. Use the prefix property to display a different name for the plugin logger.
          • BREAKING CHANGE: The player.ping property now returns an int instead of datetime.timedelta.
          "},{"location":"changelog/#fixed_6","title":"Fixed","text":"
          • Fixed issue where Server::setMaxPlayers would crash due to a change in the internal struct in BDS.
          • Fixed issue that python executable cannot be located when running in a virtual environment.
          "},{"location":"changelog/#0410-2024-07-10","title":"0.4.10 - 2024-07-10","text":"

          Compare with 0.4.9

          "},{"location":"changelog/#added_6","title":"Added","text":"
          • Support for Minecraft v1.21.2.
          • Player::getSkin method to retrieve the current skin of a player.
          • Support for recipes with output items possessing NBT (Named Binary Tag) tags. These tags are now also included in the dumped data.
          "},{"location":"changelog/#fixed_7","title":"Fixed","text":"
          • Issue with shaped recipes. Recipes that have item tags as input (instead of item names) can now be dumped correctly.
          "},{"location":"changelog/#049-2024-07-05","title":"0.4.9 - 2024-07-05","text":"

          Compare with 0.4.8.1

          "},{"location":"changelog/#added_7","title":"Added","text":"
          • Support for Minecraft v1.21.1.
          • ActorDeathEvent and PlayerDeathEvent triggers when an actor or a player dies.
          • Player::giveExp and Player::giveExpLevels functionality for adding experience points/levels added.
          • Player::getAllowFlight and Player::setAllowFlight to check or grant the ability for players not in creative mode to fly.
          • Player::setFlying to toggle a player's flying status.
          • An overload of sendMessage to allow sending of translatable messages with parameters that will be localized on the client side.
          • Player::getExpProgress and Player::setExpProgress to get or set a player's progress towards the next level.
          • Player::getExpLevel and Player::setExpLevel to get or set a player's current experience level.
          • Player::getTotalExp to get the total amount of experiences a player has collected.
          • Player::getLocale to get the player's current locale.
          • Player::getDeviceId and Player::getDeviceOS to get information related to player's device.
          • A DevTools to help community projects get necessary data from BDS (currently only available on Windows). To open the DevTools, use command /devtools in the console.
          "},{"location":"changelog/#changed_6","title":"Changed","text":"
          • Permissible.op property in the python binding is renamed to Permissible.is_op.
          • Crash dumps will now print system and version info in addition to stacktraces.
          "},{"location":"changelog/#fixed_8","title":"Fixed","text":"
          • Suppressed warning message about empty UDP packets from the output.
          "},{"location":"changelog/#0481-2024-06-15","title":"0.4.8.1 - 2024-06-15","text":"

          Compare with 0.4.7

          "},{"location":"changelog/#added_8","title":"Added","text":"
          • Support Minecraft v1.21 (Tricky Trials)
          "},{"location":"changelog/#fixed_9","title":"Fixed","text":"
          • Player::getPing now returns correct value instead of -1 on Linux.
          • Player::isFlying now works correctly in all conditions.
          • Calling python binding of Server::getPlayer with uuid no longer crashes.
          • Fixed a regression in vanilla command permissions.
          • Permission attachment now works as expected.
          "},{"location":"changelog/#047-2024-06-13","title":"0.4.7 - 2024-06-13","text":"

          Compare with 0.4.6

          "},{"location":"changelog/#added_9","title":"Added","text":"
          • Player::performCommand allows a player to execute a given command. During the command execution, the player is temporarily granted the operator permission.
          • Level::getDimension and Level::getDimensions for getting dimensions within a specific level.
          • Actor::getDimension for getting the dimension that an actor resides in.
          • Player::getGameMode and Player::setGameMode for getting and setting a player's game mode.
          • Plugin configuration for Python plugins.
          • Added more struct info by @Duckos-Mods in #11.
          • World seed will no longer be sent to the client when client-side-chunk-generation-enabled is disabled in server.properties.
          • Command permissions are now checked before its parsing.
          • Server::dispatchCommand allows one to dispatch a command on the server.
          • Server::getMaxPlayers and Server::setMaxPlayers for getting and setting the maximum amount of players allowed to be logged in.
          • Server::getPlayer now also accepts a string argument to get a player by name instead of UUID.
          "},{"location":"changelog/#changed_7","title":"Changed","text":"
          • Changed logging level look-up from using a hashmap to using a switch by @Duckos-Mods in #12
          • Endstone no longer requires the presence of debug symbols at runtime.
          "},{"location":"changelog/#fixed_10","title":"Fixed","text":"
          • Actor::getVelocity now returns the correct velocity when the actor rides a vehicle.
          • Python plugin loader now works correctly with Python 3.9.
          "},{"location":"changelog/#046-2024-05-15","title":"0.4.6 - 2024-05-15","text":"

          Compare with 0.4.5

          "},{"location":"changelog/#fixed_11","title":"Fixed","text":"
          • Improved the detection of Python executable.
          "},{"location":"changelog/#045-2024-05-14","title":"0.4.5 - 2024-05-14","text":"

          Compare with 0.4.3

          "},{"location":"changelog/#added_10","title":"Added","text":"
          • Bootstrap now protects specific files from overwriting during update.
          • Python plugin loader now loads all *.whl plugins under the plguins folder and their dependencies during server start up.
          "},{"location":"changelog/#fixed_12","title":"Fixed","text":"
          • Scheduler now works on Linux.
          "},{"location":"changelog/#043-2024-05-13","title":"0.4.3 - 2024-05-13","text":"

          Compare with 0.4.2

          "},{"location":"changelog/#added_11","title":"Added","text":"
          • Server::getOnlinePlayers for getting all online players.
          • Player::kick for kicking a specific player with a custom message.
          • Player::getPing for getting the average latency of a connected player.
          • Actor::getLocation and Actor::getVelocity for getting the location and velocity of an actor respectively.
          • Actor::getLevel for getting the Level that an actor resides in.
          "},{"location":"changelog/#changed_8","title":"Changed","text":"
          • Level is no longer created for each Dimension in a Minecraft world. Instead, one Level now manages multiple Dimensions.
          • Player::getAddress now returns a SocketAddress instead of std::string. Player::getPort was removed, use SocketAddress::getPort instead.
          • Executable endstone now accepts --server-folder instead of --install-folder, and --no-confirm instead of --install.
          • Endstone server will now ask the user whether to update the Bedrock Dedicated Server if an older version is found.
          "},{"location":"changelog/#042-2024-04-30","title":"0.4.2 - 2024-04-30","text":"

          Compare with 0.4.1

          "},{"location":"changelog/#added_12","title":"Added","text":"
          • Level::getDimension for getting the dimension of a specific level.
          • Player::getAddress and Player::getPort for getting the socket address and port of a specific player, respectively.
          • Logs are now written to logs/latest.log with rotations.
          • Basic scheduler implementation, currently supporting only synchronized task execution.
          • PlayerLoginEvent is called when a player attempts to log in.
          "},{"location":"changelog/#changed_9","title":"Changed","text":"
          • Support for Minecraft v1.20.81 (Bedrock)
          "},{"location":"changelog/#fixed_13","title":"Fixed","text":"
          • Server no longer crashes when the weather is changed on Linux.
          "},{"location":"changelog/#041-2024-04-24","title":"0.4.1 - 2024-04-24","text":"

          Compare with 0.4.0

          This release focuses on supporting game version v1.20.80, which adds several new features. Additionally, we add a few useful functions to Player and Server.

          "},{"location":"changelog/#added_13","title":"Added","text":"
          • Commands executed by players are now logged to the console.
          • Message of /say command will be logged to the console.
          • PlayerCommandEvent is called when a player attempts to execute a command.
          • Server::broadcastMessage for broadcasting messages to all players.
          • BroadcastMessageEvent is called when a message is broadcast by the server.
          "},{"location":"changelog/#changed_10","title":"Changed","text":"
          • Support for Minecraft v1.20.80 - Armored Paws (Bedrock)
          "},{"location":"changelog/#fixed_14","title":"Fixed","text":"
          • Player permissions are recalculated when the op status is changed.
          • Incorrect UUID for Players corrected.
          "},{"location":"changelog/#040-2024-04-20","title":"0.4.0 - 2024-04-20","text":"

          Compare with 0.3.0

          In this release, we added an event system and several basic interfaces for game objects like Level, Actor and Player.

          "},{"location":"changelog/#added_14","title":"Added","text":"
          • Event system that allows plugins to listen for specific events.
          • ServerLoadEvent is called when a server is started up.
          • Plugin::registerEventHandler for registering an event handler in C++ plugins.
          • Decorator @event_handler for registering an event handler in Python plugins.
          • PluginEnableEvent and PluginDisableEvent are called when a plugin is enabled or disabled.
          • ServerPingListEvent can be listened to for customizing how the server appears in the client list.
          • ServerCommandEvent is called when the server executes a command.
          • WeatherChangeEvent and ThunderChangeEvent are called when the weather or thunder status changes in a level.
          • Basic interface endstone::Level for a level/world.
          • Basic interface endstone::Actor for entities/actors.
          • Basic interface endstone::Player for players.
          • Server::getPlayer for getting a player instance by UUID.
          • Player::sendPopup and Player::sendTip for sending popup and tip messages.
          • Stack traces are now printed to the console when an unrecoverable error occurs.
          • PlayerJoinEvent and PlayerQuitEvent are called when a player joins and leaves the server.
          • ActorSpawnEvent is called when an actor is spawned in the level.
          • ActorRemoveEvent is called when an actor is removed from the level.
          • PlayerChatEvent is called when a player sends a message.
          "},{"location":"changelog/#changed_11","title":"Changed","text":"
          • Singletons are now managed using entt::locator.
          • Macro ENDSTONE_PLUGIN is improved to simplify the definition of plugin metadata.
          • ColorFormat and GameMode have been moved from endstone.util to endstone in the Python package.
          • Wheels are now built and released with RelWithDebInfo configuration to enable stack trace printing.
          • Support for Minecraft v1.20.73 (Bedrock)
          "},{"location":"changelog/#fixed_15","title":"Fixed","text":"
          • Server no longer crashes when /listd command is executed.
          "},{"location":"changelog/#030-2024-03-21","title":"0.3.0 - 2024-03-21","text":"

          Compare with 0.2.0

          This is the second release of Endstone with a focus on the permission system and improving the plugin loading mechanisms.

          "},{"location":"changelog/#added_15","title":"Added","text":"
          • Basic permission systems.
          • Enforced Plugin API version checks for C++ and Python plugins to ensure ABI/API compatibility.
          • Commands are now defined within the plugin metadata which will be automatically registered when the associated plugin is enabled.
          • PluginDescription properties are extended to support website, load_order, depend, soft_depend, load_before, and provides.
          "},{"location":"changelog/#changed_12","title":"Changed","text":"
          • Improved ENDSTONE_PLUGIN macro to further simplify the definition of plugin metadata.
          • Plugin names and websites are now displayed when using /version [plugin: PluginName].
          • Support for Minecraft v1.20.72 (Bedrock)
          "},{"location":"changelog/#fixed_16","title":"Fixed","text":"
          • C++ plugin loader now respects the prefix property of a plugin.
          "},{"location":"changelog/#020-2024-03-19","title":"0.2.0 - 2024-03-19","text":"

          Hello World! This is the first release of Endstone.

          "},{"location":"changelog/#added_16","title":"Added","text":"
          • Basic plugin loader for C++ and Python plugins.
          • Basic command system that allows plugins to register custom commands.
          "},{"location":"getting-started/contributing/","title":"Contributing","text":"

          \ud83d\udc4d\ud83c\udf89 First off, thanks for taking the time to contribute! \ud83c\udf89\ud83d\udc4d

          "},{"location":"getting-started/contributing/#where-to-start","title":"Where to start?","text":"

          If you are looking for a good issue to start with, please check the following:

          • good first issue - issues that should be pretty simple to implement,
          • help wanted - issues that typically are a bit more involved than beginner issues,
          • high priority - things to fix ASAP but often of higher complexity.
          "},{"location":"getting-started/contributing/#source","title":"Source","text":"

          To build from source on your local machine, please follow the instructions below:

          "},{"location":"getting-started/contributing/#clone-the-repository","title":"Clone the repository","text":"
          git clone https://github.com/EndstoneMC/endstone.git\ncd endstone\n
          "},{"location":"getting-started/contributing/#install-the-package-manager-conan","title":"Install the package manager (conan)","text":"

          The dependencies needed for the development of Endstone are provided Conan Package Manager (>=2.0). The install the package manager, run the following commands in your Python environment.

          pip install conan\nconan detect profile\n
          "},{"location":"getting-started/contributing/#install-dependencies","title":"Install dependencies","text":"

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

          conan export third_party/funchook --version 1.1.3\n

          Then, run the following commands:

          Command Prompt Powershell Linux
          conan install . --build=missing -s compiler.cppstd=17 -s build_type=RelWithDebInfo -c tools.cmake.cmaketoolchain:generator=Ninja\n
          conan install . --build=missing -s compiler.cppstd=17 -s build_type=RelWithDebInfo -c tools.cmake.cmaketoolchain:generator=Ninja -c tools.env.virtualenv:powershell=True\n
          conan install . --build=missing -s compiler.cppstd=17 -s compiler.libcxx=libc++ -s build_type=RelWithDebInfo -c tools.cmake.cmaketoolchain:generator=Ninja\n

          Now, activate the build virtual environment create by conan.

          Command Prompt Powershell Linux
          .\\build\\RelWithDebInfo\\generators\\conanbuild.bat\n
          .\\build\\RelWithDebInfo\\generators\\conanbuild.ps1\n
          source ./build/RelWithDebInfo/generators/conanbuild.sh\n

          Run cmake and check the version:

          $ cmake --version\ncmake version 3.22.6\n
          "},{"location":"getting-started/contributing/#build-with-cmake","title":"Build with CMake","text":"
          cmake --preset conan-relwithdebinfo\ncmake --build --preset conan-relwithdebinfo\n
          "},{"location":"getting-started/contributing/#install","title":"Install","text":"

          To install Endstone from your local sources, you will need to activate the build environment and then run:

          pip install -U .\n
          "},{"location":"getting-started/contributing/#documentation","title":"Documentation","text":"

          We are building our documentation using Material for MkDocs. The easiest way to install all the required dependencies is with pip:

          pip install -r docs/requirements.txt\n

          After that, you can either:

          • Start a live server to preview the documentation as you write, or
          mkdocs serve\n
          • Build the documentation
          mkdocs build\n
          "},{"location":"getting-started/installation/","title":"Getting started","text":"

          Endstone offers a powerful plugin API for Bedrock Dedicated Servers, the official server software for Minecraft: Bedrock Edition. If you're familiar with Python, you can install Endstone with pip, the Python package manager. If not, we recommend using docker.

          "},{"location":"getting-started/installation/#installation","title":"Installation","text":""},{"location":"getting-started/installation/#environment","title":"Environment optional","text":"

          We recommend using a virtual environment, which is an isolated Python runtime. If you are in a virtual environment, any packages that you install or upgrade will be local to the environment. If you run into problems, you can just delete and recreate the environment. It's trivial to set up:

          • Create a new virtual environment with:

            python3 -m venv venv\n
          • Activate the environment with:

            Windows Linux
            . venv/Scripts/activate\n
            . venv/bin/activate\n

            Your terminal should now print (venv) before the prompt, which is how you know that you are inside the virtual environment that you just created.

          • Exit the environment with:

            deactivate\n
          "},{"location":"getting-started/installation/#with-pip","title":"with pip recommended","text":"

          Endstone is published as a Python package and can be installed with pip, ideally by using the virtual environment from the last step. Open up a terminal and install Endstone with:

          Latest
          pip install endstone\n
          "},{"location":"getting-started/installation/#with-docker","title":"with docker","text":"

          The official Docker image is a great way to get the Endstone server up and running in a few minutes. Open up a terminal and pull the image with:

          Latest
          docker pull endstone/endstone\n
          "},{"location":"getting-started/project-structure/","title":"Project Structure","text":"

          This chapter provides a high-level overview of the project to make it easier to navigate, build, and use.

          "},{"location":"getting-started/project-structure/#cmake-projects-and-dependencies","title":"CMake Projects and Dependencies","text":"

          The GitHub repository contains the following CMake projects:

          • Endstone API (include/endstone)

            • This is the header-only API layer that developers use to create plugins.
            • It provides a standardized set of methods and abstractions to interact with Minecraft, ensuring plugins work across different Minecraft versions with minimal adjustments.
            • It abstracts Minecraft internals, allowing plugins to interact with the game in a version-agnostic way without directly interfacing with Mojang's code.
          • Endstone Python Bindings (src/endstone_python)

            • This is the Python binding of the Endstone API.
            • It allows developers to create plugins in Python by translating API calls from Python to the underlying C++ calls.
          • Endstone Core (src/endstone_core)

            • This is the implementation of the Endstone API. It sits between the API and the game itself.
            • It provides the actual behavior for API methods by interacting directly with the Bedrock Dedicated Server (BDS), translating abstracted API calls from plugins into specific BDS internal calls.
          • Endstone Runtime (src/endstone_runtime)

            • This includes hooks that are applied to the executable binary of the Bedrock Dedicated Server to modify or extend functionality, providing bug fixes and features that are not possible through the API alone.
            • These hooks are necessary because the original software is compiled into binary, and updates to Minecraft frequently break compatibility with existing code.
          • Endstone DevTools (src/endstone_devtools)

            • This provides a Graphical User Interface (GUI) that allows advanced users to dump useful data from the vanilla software for other purposes, such as third-party server software.
            • It is currently enabled only on Windows and requires OpenGL functionality to be available on the system.
          "},{"location":"getting-started/project-structure/#python-project","title":"Python Project","text":"

          Endstone is released as a Python package on PyPI, which encapsulates several utilities written in pure Python, in addition to the compiled libraries of the CMake projects and the Python bindings of the Endstone API. These Python codes are located under the python/src folder, and unit tests are located under python/tests.

          "},{"location":"getting-started/start-your-server/","title":"Start your server","text":"

          After you've installed Endstone, you can bootstrap your server using the endstone executable. Go to the directory where you want your server to be located and enter:

          endstone\n

          Alternatively, if you're running Endstone from within Docker, use:

          Linux / Powershell Command Prompt
          docker run --rm -it -v ${PWD}:/home/endstone -p 19132:19132/udp endstone/endstone\n
          docker run --rm -it -v \"%cd%\":/home/endstone -p 19132:19132/udp endstone/endstone\n

          You should see this in your console:

          Tip

          The first time you run the bootstrap, it will need to download the Bedrock Dedicated Server from the official mirror. Press Y and Enter to continue.

          "},{"location":"reference/","title":"Reference","text":"

          In the course of your plugin development, you may choose between the Python API and C++ API. If you are seeking a quick start and prefer a more flexible language, the Python API documentation can be your starting point. However, if you need to implement more performance-driven, highly optimized code, you may want to delve into the C++ API documentation.

          • Python API

            Craft your plugins using the Python API for a quick start.

            Learn more

          • C++ API

            Write your plugins using the C++ API for maximum performance.

            Learn more

          "},{"location":"reference/python/actor/","title":"Actor","text":""},{"location":"reference/python/actor/#endstone.actor","title":"endstone.actor","text":"

          Classes:

          Name Description Actor

          Represents a base actor in the level.

          Mob

          Represents a mobile entity (i.e. living entity), such as a monster or player.

          "},{"location":"reference/python/actor/#endstone.actor.Actor","title":"Actor","text":"

          Bases: CommandSender

          Represents a base actor in the level.

          Methods:

          Name Description add_scoreboard_tag

          Adds a tag to this actor.

          remove_scoreboard_tag

          Removes a given tag from this actor.

          set_rotation

          Sets the actor's rotation.

          teleport

          Attributes:

          Name Type Description dimension Dimension

          Gets the current Dimension this actor resides in.

          health int

          Gets or sets the entity's health from 0 to its max possible value, where 0 is dead.

          id int

          Returns a unique id for this actor.

          is_dead bool

          Returns true if this actor has been marked for removal.

          is_in_lava bool

          Returns true if the actor is in lava.

          is_in_water bool

          Returns true if the actor is in water.

          is_on_ground bool

          Returns true if the actor is supported by a block, i.e. on ground.

          level Level

          Gets the current Level this actor resides in.

          location Location

          Gets the actor's current position.

          max_health int

          Gets the maximum health this entity has.

          runtime_id int

          Returns the runtime id for this actor.

          scoreboard_tags list[str]

          Returns a list of scoreboard tags for this actor.

          velocity Vector

          Gets this actor's current velocity.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.dimension","title":"dimension property","text":"
          dimension: Dimension\n

          Gets the current Dimension this actor resides in.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.health","title":"health property writable","text":"
          health: int\n

          Gets or sets the entity's health from 0 to its max possible value, where 0 is dead.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.id","title":"id property","text":"
          id: int\n

          Returns a unique id for this actor.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.is_dead","title":"is_dead property","text":"
          is_dead: bool\n

          Returns true if this actor has been marked for removal.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.is_in_lava","title":"is_in_lava property","text":"
          is_in_lava: bool\n

          Returns true if the actor is in lava.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.is_in_water","title":"is_in_water property","text":"
          is_in_water: bool\n

          Returns true if the actor is in water.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.is_on_ground","title":"is_on_ground property","text":"
          is_on_ground: bool\n

          Returns true if the actor is supported by a block, i.e. on ground.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.level","title":"level property","text":"
          level: Level\n

          Gets the current Level this actor resides in.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.location","title":"location property","text":"
          location: Location\n

          Gets the actor's current position.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.max_health","title":"max_health property","text":"
          max_health: int\n

          Gets the maximum health this entity has.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.runtime_id","title":"runtime_id property","text":"
          runtime_id: int\n

          Returns the runtime id for this actor.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.scoreboard_tags","title":"scoreboard_tags property","text":"
          scoreboard_tags: list[str]\n

          Returns a list of scoreboard tags for this actor.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.velocity","title":"velocity property","text":"
          velocity: Vector\n

          Gets this actor's current velocity.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.add_scoreboard_tag","title":"add_scoreboard_tag","text":"
          add_scoreboard_tag(tag: str) -> bool\n

          Adds a tag to this actor.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.remove_scoreboard_tag","title":"remove_scoreboard_tag","text":"
          remove_scoreboard_tag(tag: str) -> bool\n

          Removes a given tag from this actor.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.set_rotation","title":"set_rotation","text":"
          set_rotation(yaw: float, pitch: float) -> None\n

          Sets the actor's rotation.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.teleport","title":"teleport","text":"
          teleport(location: Location) -> None\n

          Teleports this actor to the given location.

          teleport(target: Actor) -> None\n

          Teleports this actor to the target Actor.

          "},{"location":"reference/python/actor/#endstone.actor.Mob","title":"Mob","text":"

          Bases: Actor

          Represents a mobile entity (i.e. living entity), such as a monster or player.

          Attributes:

          Name Type Description is_gliding bool

          Checks to see if an actor is gliding, such as using an Elytra.

          "},{"location":"reference/python/actor/#endstone.actor.Mob.is_gliding","title":"is_gliding property","text":"
          is_gliding: bool\n

          Checks to see if an actor is gliding, such as using an Elytra.

          "},{"location":"reference/python/block/","title":"Block","text":""},{"location":"reference/python/block/#endstone.block","title":"endstone.block","text":"

          Classes:

          Name Description Block

          Represents a block.

          BlockData

          Represents the data related to a live block

          BlockFace BlockState

          Represents a captured state of a block, which will not update automatically.

          "},{"location":"reference/python/block/#endstone.block.Block","title":"Block","text":"

          Represents a block.

          Methods:

          Name Description capture_state

          Captures the current state of this block. The returned object will never be updated, and you are not guaranteed that (for example) a sign is still a sign after you capture its state.

          get_relative set_data

          Sets the complete data for this block

          set_type

          Sets the type of this block

          Attributes:

          Name Type Description data BlockData

          Gets or sets the complete data for this block

          dimension Dimension

          Gets the dimension which contains this Block

          location Location

          Gets the Location of the block

          type str

          Gets or sets the type of the block.

          x int

          Gets the x-coordinate of this block

          y int

          Gets the y-coordinate of this block

          z int

          Gets the z-coordinate of this block

          "},{"location":"reference/python/block/#endstone.block.Block.data","title":"data property writable","text":"
          data: BlockData\n

          Gets or sets the complete data for this block

          "},{"location":"reference/python/block/#endstone.block.Block.dimension","title":"dimension property","text":"
          dimension: Dimension\n

          Gets the dimension which contains this Block

          "},{"location":"reference/python/block/#endstone.block.Block.location","title":"location property","text":"
          location: Location\n

          Gets the Location of the block

          "},{"location":"reference/python/block/#endstone.block.Block.type","title":"type property writable","text":"
          type: str\n

          Gets or sets the type of the block.

          "},{"location":"reference/python/block/#endstone.block.Block.x","title":"x property","text":"
          x: int\n

          Gets the x-coordinate of this block

          "},{"location":"reference/python/block/#endstone.block.Block.y","title":"y property","text":"
          y: int\n

          Gets the y-coordinate of this block

          "},{"location":"reference/python/block/#endstone.block.Block.z","title":"z property","text":"
          z: int\n

          Gets the z-coordinate of this block

          "},{"location":"reference/python/block/#endstone.block.Block.capture_state","title":"capture_state","text":"
          capture_state() -> BlockState\n

          Captures the current state of this block. The returned object will never be updated, and you are not guaranteed that (for example) a sign is still a sign after you capture its state.

          "},{"location":"reference/python/block/#endstone.block.Block.get_relative","title":"get_relative","text":"
          get_relative(\n    offset_x: int, offset_y: int, offset_z: int\n) -> Block\n

          Gets the block at the given offsets

          get_relative(face: BlockFace, distance: int = 1) -> Block\n

          Gets the block at the given distance of the given face

          "},{"location":"reference/python/block/#endstone.block.Block.set_data","title":"set_data","text":"
          set_data(\n    data: BlockData, apply_physics: bool = True\n) -> None\n

          Sets the complete data for this block

          "},{"location":"reference/python/block/#endstone.block.Block.set_type","title":"set_type","text":"
          set_type(type: str, apply_physics: bool = True) -> None\n

          Sets the type of this block

          "},{"location":"reference/python/block/#endstone.block.BlockData","title":"BlockData","text":"

          Represents the data related to a live block

          Attributes:

          Name Type Description block_states dict[str, bool | str | int]

          Gets the block states for this block.

          type str

          Get the block type represented by this block data.

          "},{"location":"reference/python/block/#endstone.block.BlockData.block_states","title":"block_states property","text":"
          block_states: dict[str, bool | str | int]\n

          Gets the block states for this block.

          "},{"location":"reference/python/block/#endstone.block.BlockData.type","title":"type property","text":"
          type: str\n

          Get the block type represented by this block data.

          "},{"location":"reference/python/block/#endstone.block.BlockFace","title":"BlockFace","text":"
          BlockFace(value: int)\n

          Attributes:

          Name Type Description DOWN BlockFace EAST BlockFace NORTH BlockFace SOUTH BlockFace UP BlockFace WEST BlockFace name str value int"},{"location":"reference/python/block/#endstone.block.BlockFace.DOWN","title":"DOWN class-attribute","text":"
          DOWN: BlockFace\n
          "},{"location":"reference/python/block/#endstone.block.BlockFace.EAST","title":"EAST class-attribute","text":"
          EAST: BlockFace\n
          "},{"location":"reference/python/block/#endstone.block.BlockFace.NORTH","title":"NORTH class-attribute","text":"
          NORTH: BlockFace\n
          "},{"location":"reference/python/block/#endstone.block.BlockFace.SOUTH","title":"SOUTH class-attribute","text":"
          SOUTH: BlockFace\n
          "},{"location":"reference/python/block/#endstone.block.BlockFace.UP","title":"UP class-attribute","text":"
          UP: BlockFace\n
          "},{"location":"reference/python/block/#endstone.block.BlockFace.WEST","title":"WEST class-attribute","text":"
          WEST: BlockFace\n
          "},{"location":"reference/python/block/#endstone.block.BlockFace.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/block/#endstone.block.BlockFace.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/block/#endstone.block.BlockState","title":"BlockState","text":"

          Represents a captured state of a block, which will not update automatically.

          Methods:

          Name Description update

          Attempts to update the block represented by this state.

          Attributes:

          Name Type Description block Block

          Gets the block represented by this block state.

          data BlockData

          Gets or sets the data for this block state.

          dimension Dimension

          Gets the dimension which contains the block represented by this block state.

          location Location

          Gets the location of this block state.

          type str

          Gets or sets the type of this block state.

          x int

          Gets the x-coordinate of this block state.

          y int

          Gets the y-coordinate of this block state.

          z int

          Gets the z-coordinate of this block state.

          "},{"location":"reference/python/block/#endstone.block.BlockState.block","title":"block property","text":"
          block: Block\n

          Gets the block represented by this block state.

          "},{"location":"reference/python/block/#endstone.block.BlockState.data","title":"data property writable","text":"
          data: BlockData\n

          Gets or sets the data for this block state.

          "},{"location":"reference/python/block/#endstone.block.BlockState.dimension","title":"dimension property","text":"
          dimension: Dimension\n

          Gets the dimension which contains the block represented by this block state.

          "},{"location":"reference/python/block/#endstone.block.BlockState.location","title":"location property","text":"
          location: Location\n

          Gets the location of this block state.

          "},{"location":"reference/python/block/#endstone.block.BlockState.type","title":"type property writable","text":"
          type: str\n

          Gets or sets the type of this block state.

          "},{"location":"reference/python/block/#endstone.block.BlockState.x","title":"x property","text":"
          x: int\n

          Gets the x-coordinate of this block state.

          "},{"location":"reference/python/block/#endstone.block.BlockState.y","title":"y property","text":"
          y: int\n

          Gets the y-coordinate of this block state.

          "},{"location":"reference/python/block/#endstone.block.BlockState.z","title":"z property","text":"
          z: int\n

          Gets the z-coordinate of this block state.

          "},{"location":"reference/python/block/#endstone.block.BlockState.update","title":"update","text":"
          update(\n    force: bool = False, apply_physics: bool = True\n) -> bool\n

          Attempts to update the block represented by this state.

          "},{"location":"reference/python/boss/","title":"Boss","text":""},{"location":"reference/python/boss/#endstone.boss","title":"endstone.boss","text":"

          Classes:

          Name Description BarColor BarFlag BarStyle BossBar

          Represents a boss bar that is displayed to players.

          "},{"location":"reference/python/boss/#endstone.boss.BarColor","title":"BarColor","text":"
          BarColor(value: int)\n

          Attributes:

          Name Type Description BLUE BarColor GREEN BarColor PINK BarColor PURPLE BarColor REBECCA_PURPLE BarColor RED BarColor WHITE BarColor YELLOW BarColor name str value int"},{"location":"reference/python/boss/#endstone.boss.BarColor.BLUE","title":"BLUE class-attribute","text":"
          BLUE: BarColor\n
          "},{"location":"reference/python/boss/#endstone.boss.BarColor.GREEN","title":"GREEN class-attribute","text":"
          GREEN: BarColor\n
          "},{"location":"reference/python/boss/#endstone.boss.BarColor.PINK","title":"PINK class-attribute","text":"
          PINK: BarColor\n
          "},{"location":"reference/python/boss/#endstone.boss.BarColor.PURPLE","title":"PURPLE class-attribute","text":"
          PURPLE: BarColor\n
          "},{"location":"reference/python/boss/#endstone.boss.BarColor.REBECCA_PURPLE","title":"REBECCA_PURPLE class-attribute","text":"
          REBECCA_PURPLE: BarColor\n
          "},{"location":"reference/python/boss/#endstone.boss.BarColor.RED","title":"RED class-attribute","text":"
          RED: BarColor\n
          "},{"location":"reference/python/boss/#endstone.boss.BarColor.WHITE","title":"WHITE class-attribute","text":"
          WHITE: BarColor\n
          "},{"location":"reference/python/boss/#endstone.boss.BarColor.YELLOW","title":"YELLOW class-attribute","text":"
          YELLOW: BarColor\n
          "},{"location":"reference/python/boss/#endstone.boss.BarColor.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/boss/#endstone.boss.BarColor.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/boss/#endstone.boss.BarFlag","title":"BarFlag","text":"
          BarFlag(value: int)\n

          Attributes:

          Name Type Description DARKEN_SKY BarFlag name str value int"},{"location":"reference/python/boss/#endstone.boss.BarFlag.DARKEN_SKY","title":"DARKEN_SKY class-attribute","text":"
          DARKEN_SKY: BarFlag\n
          "},{"location":"reference/python/boss/#endstone.boss.BarFlag.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/boss/#endstone.boss.BarFlag.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/boss/#endstone.boss.BarStyle","title":"BarStyle","text":"
          BarStyle(value: int)\n

          Attributes:

          Name Type Description SEGMENTED_10 BarStyle SEGMENTED_12 BarStyle SEGMENTED_20 BarStyle SEGMENTED_6 BarStyle SOLID BarStyle name str value int"},{"location":"reference/python/boss/#endstone.boss.BarStyle.SEGMENTED_10","title":"SEGMENTED_10 class-attribute","text":"
          SEGMENTED_10: BarStyle\n
          "},{"location":"reference/python/boss/#endstone.boss.BarStyle.SEGMENTED_12","title":"SEGMENTED_12 class-attribute","text":"
          SEGMENTED_12: BarStyle\n
          "},{"location":"reference/python/boss/#endstone.boss.BarStyle.SEGMENTED_20","title":"SEGMENTED_20 class-attribute","text":"
          SEGMENTED_20: BarStyle\n
          "},{"location":"reference/python/boss/#endstone.boss.BarStyle.SEGMENTED_6","title":"SEGMENTED_6 class-attribute","text":"
          SEGMENTED_6: BarStyle\n
          "},{"location":"reference/python/boss/#endstone.boss.BarStyle.SOLID","title":"SOLID class-attribute","text":"
          SOLID: BarStyle\n
          "},{"location":"reference/python/boss/#endstone.boss.BarStyle.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/boss/#endstone.boss.BarStyle.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/boss/#endstone.boss.BossBar","title":"BossBar","text":"

          Represents a boss bar that is displayed to players.

          Methods:

          Name Description add_flag

          Adds an optional flag to this boss bar.

          add_player

          Adds the player to this boss bar causing it to display on their screen.

          has_flag

          Checks whether this boss bar has the passed flag set.

          remove_all

          Removes all players from this boss bar.

          remove_flag

          Removes an existing flag on this boss bar.

          remove_player

          Removes the player from this boss bar causing it to be removed from their screen.

          Attributes:

          Name Type Description color BarColor

          The color of this boss bar.

          players list[Player]

          Returns all players viewing this boss bar.

          progress float

          The progress of the bar between 0.0 and 1.0.

          style BarStyle

          The style of this boss bar.

          title str

          The title of this boss bar.

          visible bool

          If the boss bar is displayed to attached players.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.color","title":"color property writable","text":"
          color: BarColor\n

          The color of this boss bar.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.players","title":"players property","text":"
          players: list[Player]\n

          Returns all players viewing this boss bar.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.progress","title":"progress property writable","text":"
          progress: float\n

          The progress of the bar between 0.0 and 1.0.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.style","title":"style property writable","text":"
          style: BarStyle\n

          The style of this boss bar.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.title","title":"title property writable","text":"
          title: str\n

          The title of this boss bar.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.visible","title":"visible property writable","text":"
          visible: bool\n

          If the boss bar is displayed to attached players.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.add_flag","title":"add_flag","text":"
          add_flag(flag: BarFlag) -> None\n

          Adds an optional flag to this boss bar.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.add_player","title":"add_player","text":"
          add_player(player: Player) -> None\n

          Adds the player to this boss bar causing it to display on their screen.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.has_flag","title":"has_flag","text":"
          has_flag(flag: BarFlag) -> bool\n

          Checks whether this boss bar has the passed flag set.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.remove_all","title":"remove_all","text":"
          remove_all() -> None\n

          Removes all players from this boss bar.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.remove_flag","title":"remove_flag","text":"
          remove_flag(flag: BarFlag) -> None\n

          Removes an existing flag on this boss bar.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.remove_player","title":"remove_player","text":"
          remove_player(player: Player) -> None\n

          Removes the player from this boss bar causing it to be removed from their screen.

          "},{"location":"reference/python/command/","title":"Command","text":""},{"location":"reference/python/command/#endstone.command","title":"endstone.command","text":"

          Classes:

          Name Description Command

          Represents a Command, which executes various tasks upon user input

          CommandExecutor

          Represents a class which contains a single method for executing commands

          CommandSender

          Represents a command sender.

          CommandSenderWrapper

          Represents a wrapper that forwards commands to the wrapped CommandSender and captures its output

          ConsoleCommandSender

          Represents a console command sender.

          "},{"location":"reference/python/command/#endstone.command.Command","title":"Command","text":"
          Command(\n    name: str,\n    description: str | None = None,\n    usages: list[str] | None = None,\n    aliases: list[str] | None = None,\n    permissions: list[str] | None = None,\n    *args,\n    **kwargs\n)\n

          Represents a Command, which executes various tasks upon user input

          Methods:

          Name Description execute

          Executes the command, returning its success

          test_permission

          Tests the given CommandSender to see if they can perform this command.

          test_permission_silently

          Tests the given CommandSender to see if they can perform this command. No error is sent to the sender.

          Attributes:

          Name Type Description aliases list[str]

          List of aliases of this command

          description str

          Brief description of this command

          name str

          Name of this command.

          permissions list[str]

          The permissions required by users to be able to perform this command

          registered bool

          Returns the current registered state of this command

          usages list[str]

          List of usages of this command

          "},{"location":"reference/python/command/#endstone.command.Command.aliases","title":"aliases property writable","text":"
          aliases: list[str]\n

          List of aliases of this command

          "},{"location":"reference/python/command/#endstone.command.Command.description","title":"description property writable","text":"
          description: str\n

          Brief description of this command

          "},{"location":"reference/python/command/#endstone.command.Command.name","title":"name property writable","text":"
          name: str\n

          Name of this command.

          "},{"location":"reference/python/command/#endstone.command.Command.permissions","title":"permissions property writable","text":"
          permissions: list[str]\n

          The permissions required by users to be able to perform this command

          "},{"location":"reference/python/command/#endstone.command.Command.registered","title":"registered property","text":"
          registered: bool\n

          Returns the current registered state of this command

          "},{"location":"reference/python/command/#endstone.command.Command.usages","title":"usages property writable","text":"
          usages: list[str]\n

          List of usages of this command

          "},{"location":"reference/python/command/#endstone.command.Command.execute","title":"execute","text":"
          execute(sender: CommandSender, args: list[str]) -> bool\n

          Executes the command, returning its success

          "},{"location":"reference/python/command/#endstone.command.Command.test_permission","title":"test_permission","text":"
          test_permission(target: CommandSender) -> bool\n

          Tests the given CommandSender to see if they can perform this command.

          "},{"location":"reference/python/command/#endstone.command.Command.test_permission_silently","title":"test_permission_silently","text":"
          test_permission_silently(target: CommandSender) -> bool\n

          Tests the given CommandSender to see if they can perform this command. No error is sent to the sender.

          "},{"location":"reference/python/command/#endstone.command.CommandExecutor","title":"CommandExecutor","text":"
          CommandExecutor()\n

          Represents a class which contains a single method for executing commands

          Methods:

          Name Description on_command

          Executes the given command, returning its success.

          "},{"location":"reference/python/command/#endstone.command.CommandExecutor.on_command","title":"on_command","text":"
          on_command(\n    sender: CommandSender, command: Command, args: list[str]\n) -> bool\n

          Executes the given command, returning its success.

          "},{"location":"reference/python/command/#endstone.command.CommandSender","title":"CommandSender","text":"

          Bases: Permissible

          Represents a command sender.

          Methods:

          Name Description send_error_message

          Sends this sender an error message

          send_message

          Sends this sender a message

          Attributes:

          Name Type Description name str

          Gets the name of this command sender

          server Server

          Returns the server instance that this command is running on

          "},{"location":"reference/python/command/#endstone.command.CommandSender.name","title":"name property","text":"
          name: str\n

          Gets the name of this command sender

          "},{"location":"reference/python/command/#endstone.command.CommandSender.server","title":"server property","text":"
          server: Server\n

          Returns the server instance that this command is running on

          "},{"location":"reference/python/command/#endstone.command.CommandSender.send_error_message","title":"send_error_message","text":"
          send_error_message(message: str | Translatable) -> None\n

          Sends this sender an error message

          "},{"location":"reference/python/command/#endstone.command.CommandSender.send_message","title":"send_message","text":"
          send_message(message: str | Translatable) -> None\n

          Sends this sender a message

          "},{"location":"reference/python/command/#endstone.command.CommandSenderWrapper","title":"CommandSenderWrapper","text":"
          CommandSenderWrapper(\n    sender: CommandSender,\n    on_message: Callable[[str | Translatable], None] = None,\n    on_error: Callable[[str | Translatable], None] = None,\n)\n

          Bases: CommandSender

          Represents a wrapper that forwards commands to the wrapped CommandSender and captures its output

          "},{"location":"reference/python/command/#endstone.command.ConsoleCommandSender","title":"ConsoleCommandSender","text":"

          Bases: CommandSender

          Represents a console command sender.

          "},{"location":"reference/python/event/","title":"Event","text":""},{"location":"reference/python/event/#endstone.event","title":"endstone.event","text":"

          Classes:

          Name Description ActorDeathEvent

          Called when an Actor dies.

          ActorEvent

          Represents an Actor-related event.

          ActorKnockbackEvent

          Called when a living entity receives knockback.

          ActorRemoveEvent

          Called when an Actor is removed.

          ActorSpawnEvent

          Called when an Actor is spawned into a world.

          ActorTeleportEvent

          Called when a non-player entity is teleported from one location to another.

          BlockBreakEvent

          Called when a block is broken by a player.

          BlockEvent

          Represents an Block-related event

          BlockPlaceEvent

          Called when a block is placed by a player.

          BroadcastMessageEvent

          Event triggered for server broadcast messages such as from Server.broadcast

          Event

          Represents an event.

          EventPriority

          Listeners are called in following order: LOWEST -> LOW -> NORMAL -> HIGH -> HIGHEST -> MONITOR

          PlayerChatEvent

          Called when a player sends a chat message.

          PlayerCommandEvent

          Called whenever a player runs a command.

          PlayerDeathEvent

          Called when a player dies

          PlayerEvent

          Represents a player related event

          PlayerInteractActorEvent

          Represents an event that is called when a player right-clicks an actor.

          PlayerInteractEvent

          Represents an event that is called when a player right-clicks a block.

          PlayerJoinEvent

          Called when a player joins a server

          PlayerKickEvent

          Called when a player gets kicked from the server

          PlayerLoginEvent

          Called when a player attempts to login in.

          PlayerQuitEvent

          Called when a player leaves a server.

          PlayerTeleportEvent

          Called when a player is teleported from one location to another.

          PluginDisableEvent

          Called when a plugin is disabled.

          PluginEnableEvent

          Called when a plugin is enabled.

          ScriptMessageEvent

          Called when a message is sent by /scriptevent command

          ServerCommandEvent

          Called when the console runs a command, early in the process.

          ServerListPingEvent

          Called when a server ping is coming in.

          ServerLoadEvent

          Called when either the server startup or reload has completed.

          ThunderChangeEvent

          Called when the thunder state in a world is changing.

          WeatherChangeEvent

          Called when the weather (rain) state in a world is changing.

          Functions:

          Name Description event_handler"},{"location":"reference/python/event/#endstone.event.ActorDeathEvent","title":"ActorDeathEvent","text":"

          Bases: ActorEvent

          Called when an Actor dies.

          "},{"location":"reference/python/event/#endstone.event.ActorEvent","title":"ActorEvent","text":"

          Bases: Event

          Represents an Actor-related event.

          Attributes:

          Name Type Description actor Actor

          Returns the Actor involved in this event

          "},{"location":"reference/python/event/#endstone.event.ActorEvent.actor","title":"actor property","text":"
          actor: Actor\n

          Returns the Actor involved in this event

          "},{"location":"reference/python/event/#endstone.event.ActorKnockbackEvent","title":"ActorKnockbackEvent","text":"

          Bases: ActorEvent

          Called when a living entity receives knockback.

          Attributes:

          Name Type Description actor Mob

          Returns the Mob involved in this event

          knockback Vector

          Gets or sets the knockback that will be applied to the entity.

          source Actor

          Get the source actor that has caused knockback to the defender, if exists.

          "},{"location":"reference/python/event/#endstone.event.ActorKnockbackEvent.actor","title":"actor property","text":"
          actor: Mob\n

          Returns the Mob involved in this event

          "},{"location":"reference/python/event/#endstone.event.ActorKnockbackEvent.knockback","title":"knockback property writable","text":"
          knockback: Vector\n

          Gets or sets the knockback that will be applied to the entity.

          "},{"location":"reference/python/event/#endstone.event.ActorKnockbackEvent.source","title":"source property","text":"
          source: Actor\n

          Get the source actor that has caused knockback to the defender, if exists.

          "},{"location":"reference/python/event/#endstone.event.ActorRemoveEvent","title":"ActorRemoveEvent","text":"

          Bases: ActorEvent

          Called when an Actor is removed.

          "},{"location":"reference/python/event/#endstone.event.ActorSpawnEvent","title":"ActorSpawnEvent","text":"

          Bases: ActorEvent

          Called when an Actor is spawned into a world.

          "},{"location":"reference/python/event/#endstone.event.ActorTeleportEvent","title":"ActorTeleportEvent","text":"

          Bases: ActorEvent

          Called when a non-player entity is teleported from one location to another.

          Attributes:

          Name Type Description from_location Location

          Gets or sets the location that this actor moved from.

          to_location Location

          Gets or sets the location that this actor moved to.

          "},{"location":"reference/python/event/#endstone.event.ActorTeleportEvent.from_location","title":"from_location property writable","text":"
          from_location: Location\n

          Gets or sets the location that this actor moved from.

          "},{"location":"reference/python/event/#endstone.event.ActorTeleportEvent.to_location","title":"to_location property writable","text":"
          to_location: Location\n

          Gets or sets the location that this actor moved to.

          "},{"location":"reference/python/event/#endstone.event.BlockBreakEvent","title":"BlockBreakEvent","text":"

          Bases: BlockEvent

          Called when a block is broken by a player.

          Attributes:

          Name Type Description player Player

          Gets the Player that is breaking the block involved in this event.

          "},{"location":"reference/python/event/#endstone.event.BlockBreakEvent.player","title":"player property","text":"
          player: Player\n

          Gets the Player that is breaking the block involved in this event.

          "},{"location":"reference/python/event/#endstone.event.BlockEvent","title":"BlockEvent","text":"

          Bases: Event

          Represents an Block-related event

          Attributes:

          Name Type Description block Block

          Gets the block involved in this event.

          "},{"location":"reference/python/event/#endstone.event.BlockEvent.block","title":"block property","text":"
          block: Block\n

          Gets the block involved in this event.

          "},{"location":"reference/python/event/#endstone.event.BlockPlaceEvent","title":"BlockPlaceEvent","text":"

          Bases: BlockEvent

          Called when a block is placed by a player.

          Attributes:

          Name Type Description block_against Block

          Gets the block that this block was placed against

          block_placed_state BlockState

          Gets the BlockState for the block which was placed.

          block_replaced Block

          Gets the block which was replaced.

          player Player

          Gets the player who placed the block involved in this event.

          "},{"location":"reference/python/event/#endstone.event.BlockPlaceEvent.block_against","title":"block_against property","text":"
          block_against: Block\n

          Gets the block that this block was placed against

          "},{"location":"reference/python/event/#endstone.event.BlockPlaceEvent.block_placed_state","title":"block_placed_state property","text":"
          block_placed_state: BlockState\n

          Gets the BlockState for the block which was placed.

          "},{"location":"reference/python/event/#endstone.event.BlockPlaceEvent.block_replaced","title":"block_replaced property","text":"
          block_replaced: Block\n

          Gets the block which was replaced.

          "},{"location":"reference/python/event/#endstone.event.BlockPlaceEvent.player","title":"player property","text":"
          player: Player\n

          Gets the player who placed the block involved in this event.

          "},{"location":"reference/python/event/#endstone.event.BroadcastMessageEvent","title":"BroadcastMessageEvent","text":"

          Bases: Event

          Event triggered for server broadcast messages such as from Server.broadcast

          Attributes:

          Name Type Description message str

          Gets or sets the message to broadcast.

          recipients set[CommandSender]

          Gets a set of recipients that this broadcast message will be displayed to.

          "},{"location":"reference/python/event/#endstone.event.BroadcastMessageEvent.message","title":"message property writable","text":"
          message: str\n

          Gets or sets the message to broadcast.

          "},{"location":"reference/python/event/#endstone.event.BroadcastMessageEvent.recipients","title":"recipients property","text":"
          recipients: set[CommandSender]\n

          Gets a set of recipients that this broadcast message will be displayed to.

          "},{"location":"reference/python/event/#endstone.event.Event","title":"Event","text":"

          Represents an event.

          Attributes:

          Name Type Description asynchronous bool

          Whether the event fires asynchronously.

          cancellable bool

          Whether the event can be cancelled by a plugin or the server.

          cancelled bool

          Gets or sets the cancellation state of this event. A cancelled event will not be executed in the server, but will still pass to other plugins

          event_name str

          Gets a user-friendly identifier for this event.

          "},{"location":"reference/python/event/#endstone.event.Event.asynchronous","title":"asynchronous property","text":"
          asynchronous: bool\n

          Whether the event fires asynchronously.

          "},{"location":"reference/python/event/#endstone.event.Event.cancellable","title":"cancellable property","text":"
          cancellable: bool\n

          Whether the event can be cancelled by a plugin or the server.

          "},{"location":"reference/python/event/#endstone.event.Event.cancelled","title":"cancelled property writable","text":"
          cancelled: bool\n

          Gets or sets the cancellation state of this event. A cancelled event will not be executed in the server, but will still pass to other plugins

          "},{"location":"reference/python/event/#endstone.event.Event.event_name","title":"event_name property","text":"
          event_name: str\n

          Gets a user-friendly identifier for this event.

          "},{"location":"reference/python/event/#endstone.event.EventPriority","title":"EventPriority","text":"
          EventPriority(value: int)\n

          Listeners are called in following order: LOWEST -> LOW -> NORMAL -> HIGH -> HIGHEST -> MONITOR

          Attributes:

          Name Type Description HIGH EventPriority HIGHEST EventPriority LOW EventPriority LOWEST EventPriority MONITOR EventPriority NORMAL EventPriority name str value int"},{"location":"reference/python/event/#endstone.event.EventPriority.HIGH","title":"HIGH class-attribute","text":"
          HIGH: EventPriority\n
          "},{"location":"reference/python/event/#endstone.event.EventPriority.HIGHEST","title":"HIGHEST class-attribute","text":"
          HIGHEST: EventPriority\n
          "},{"location":"reference/python/event/#endstone.event.EventPriority.LOW","title":"LOW class-attribute","text":"
          LOW: EventPriority\n
          "},{"location":"reference/python/event/#endstone.event.EventPriority.LOWEST","title":"LOWEST class-attribute","text":"
          LOWEST: EventPriority\n
          "},{"location":"reference/python/event/#endstone.event.EventPriority.MONITOR","title":"MONITOR class-attribute","text":"
          MONITOR: EventPriority\n
          "},{"location":"reference/python/event/#endstone.event.EventPriority.NORMAL","title":"NORMAL class-attribute","text":"
          NORMAL: EventPriority\n
          "},{"location":"reference/python/event/#endstone.event.EventPriority.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/event/#endstone.event.EventPriority.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/event/#endstone.event.PlayerChatEvent","title":"PlayerChatEvent","text":"

          Bases: PlayerEvent

          Called when a player sends a chat message.

          Attributes:

          Name Type Description message str

          Gets or sets the message that the player will send.

          "},{"location":"reference/python/event/#endstone.event.PlayerChatEvent.message","title":"message property writable","text":"
          message: str\n

          Gets or sets the message that the player will send.

          "},{"location":"reference/python/event/#endstone.event.PlayerCommandEvent","title":"PlayerCommandEvent","text":"

          Bases: PlayerEvent

          Called whenever a player runs a command.

          Attributes:

          Name Type Description command str

          Gets or sets the command that the player will send.

          "},{"location":"reference/python/event/#endstone.event.PlayerCommandEvent.command","title":"command property writable","text":"
          command: str\n

          Gets or sets the command that the player will send.

          "},{"location":"reference/python/event/#endstone.event.PlayerDeathEvent","title":"PlayerDeathEvent","text":"

          Bases: ActorDeathEvent, PlayerEvent

          Called when a player dies

          Attributes:

          Name Type Description death_message str

          Gets or sets the death message that will appear to everyone on the server.

          "},{"location":"reference/python/event/#endstone.event.PlayerDeathEvent.death_message","title":"death_message property writable","text":"
          death_message: str\n

          Gets or sets the death message that will appear to everyone on the server.

          "},{"location":"reference/python/event/#endstone.event.PlayerEvent","title":"PlayerEvent","text":"

          Bases: Event

          Represents a player related event

          Attributes:

          Name Type Description player Player

          Returns the player involved in this event.

          "},{"location":"reference/python/event/#endstone.event.PlayerEvent.player","title":"player property","text":"
          player: Player\n

          Returns the player involved in this event.

          "},{"location":"reference/python/event/#endstone.event.PlayerInteractActorEvent","title":"PlayerInteractActorEvent","text":"

          Bases: PlayerEvent

          Represents an event that is called when a player right-clicks an actor.

          Attributes:

          Name Type Description actor Actor

          Gets the actor that was right-clicked by the player.

          "},{"location":"reference/python/event/#endstone.event.PlayerInteractActorEvent.actor","title":"actor property","text":"
          actor: Actor\n

          Gets the actor that was right-clicked by the player.

          "},{"location":"reference/python/event/#endstone.event.PlayerInteractEvent","title":"PlayerInteractEvent","text":"

          Bases: PlayerEvent

          Represents an event that is called when a player right-clicks a block.

          Attributes:

          Name Type Description block Block

          Returns the clicked block

          block_face BlockFace

          Returns the face of the block that was clicked

          clicked_position Vector

          Gets the exact position on the block the player interacted with.

          has_block bool

          Check if this event involved a block

          has_item bool

          Check if this event involved an item

          item ItemStack

          Returns the item in hand represented by this event

          "},{"location":"reference/python/event/#endstone.event.PlayerInteractEvent.block","title":"block property","text":"
          block: Block\n

          Returns the clicked block

          "},{"location":"reference/python/event/#endstone.event.PlayerInteractEvent.block_face","title":"block_face property","text":"
          block_face: BlockFace\n

          Returns the face of the block that was clicked

          "},{"location":"reference/python/event/#endstone.event.PlayerInteractEvent.clicked_position","title":"clicked_position property","text":"
          clicked_position: Vector\n

          Gets the exact position on the block the player interacted with.

          "},{"location":"reference/python/event/#endstone.event.PlayerInteractEvent.has_block","title":"has_block property","text":"
          has_block: bool\n

          Check if this event involved a block

          "},{"location":"reference/python/event/#endstone.event.PlayerInteractEvent.has_item","title":"has_item property","text":"
          has_item: bool\n

          Check if this event involved an item

          "},{"location":"reference/python/event/#endstone.event.PlayerInteractEvent.item","title":"item property","text":"
          item: ItemStack\n

          Returns the item in hand represented by this event

          "},{"location":"reference/python/event/#endstone.event.PlayerJoinEvent","title":"PlayerJoinEvent","text":"

          Bases: PlayerEvent

          Called when a player joins a server

          Attributes:

          Name Type Description join_message str

          Gets or sets the join message to send to all online players.

          "},{"location":"reference/python/event/#endstone.event.PlayerJoinEvent.join_message","title":"join_message property writable","text":"
          join_message: str\n

          Gets or sets the join message to send to all online players.

          "},{"location":"reference/python/event/#endstone.event.PlayerKickEvent","title":"PlayerKickEvent","text":"

          Bases: PlayerEvent

          Called when a player gets kicked from the server

          Attributes:

          Name Type Description reason str

          Gets or sets the reason why the player is getting kicked

          "},{"location":"reference/python/event/#endstone.event.PlayerKickEvent.reason","title":"reason property writable","text":"
          reason: str\n

          Gets or sets the reason why the player is getting kicked

          "},{"location":"reference/python/event/#endstone.event.PlayerLoginEvent","title":"PlayerLoginEvent","text":"

          Bases: PlayerEvent

          Called when a player attempts to login in.

          Attributes:

          Name Type Description kick_message str

          Gets or sets kick message to display if event is cancelled

          "},{"location":"reference/python/event/#endstone.event.PlayerLoginEvent.kick_message","title":"kick_message property writable","text":"
          kick_message: str\n

          Gets or sets kick message to display if event is cancelled

          "},{"location":"reference/python/event/#endstone.event.PlayerQuitEvent","title":"PlayerQuitEvent","text":"

          Bases: PlayerEvent

          Called when a player leaves a server.

          Attributes:

          Name Type Description quit_message str

          Gets or sets the quit message to send to all online players.

          "},{"location":"reference/python/event/#endstone.event.PlayerQuitEvent.quit_message","title":"quit_message property writable","text":"
          quit_message: str\n

          Gets or sets the quit message to send to all online players.

          "},{"location":"reference/python/event/#endstone.event.PlayerTeleportEvent","title":"PlayerTeleportEvent","text":"

          Bases: PlayerEvent

          Called when a player is teleported from one location to another.

          Attributes:

          Name Type Description from_location Location

          Gets or sets the location that this player moved from.

          to_location Location

          Gets or sets the location that this player moved to.

          "},{"location":"reference/python/event/#endstone.event.PlayerTeleportEvent.from_location","title":"from_location property writable","text":"
          from_location: Location\n

          Gets or sets the location that this player moved from.

          "},{"location":"reference/python/event/#endstone.event.PlayerTeleportEvent.to_location","title":"to_location property writable","text":"
          to_location: Location\n

          Gets or sets the location that this player moved to.

          "},{"location":"reference/python/event/#endstone.event.PluginDisableEvent","title":"PluginDisableEvent","text":"

          Bases: Event

          Called when a plugin is disabled.

          Attributes:

          Name Type Description plugin Plugin"},{"location":"reference/python/event/#endstone.event.PluginDisableEvent.plugin","title":"plugin property","text":"
          plugin: Plugin\n
          "},{"location":"reference/python/event/#endstone.event.PluginEnableEvent","title":"PluginEnableEvent","text":"

          Bases: Event

          Called when a plugin is enabled.

          Attributes:

          Name Type Description plugin Plugin"},{"location":"reference/python/event/#endstone.event.PluginEnableEvent.plugin","title":"plugin property","text":"
          plugin: Plugin\n
          "},{"location":"reference/python/event/#endstone.event.ScriptMessageEvent","title":"ScriptMessageEvent","text":"

          Bases: Event

          Called when a message is sent by /scriptevent command

          Attributes:

          Name Type Description message str

          Get the message to send.

          message_id str

          Get the message id to send.

          sender CommandSender

          Gets the command sender who initiated the command.

          "},{"location":"reference/python/event/#endstone.event.ScriptMessageEvent.message","title":"message property","text":"
          message: str\n

          Get the message to send.

          "},{"location":"reference/python/event/#endstone.event.ScriptMessageEvent.message_id","title":"message_id property","text":"
          message_id: str\n

          Get the message id to send.

          "},{"location":"reference/python/event/#endstone.event.ScriptMessageEvent.sender","title":"sender property","text":"
          sender: CommandSender\n

          Gets the command sender who initiated the command.

          "},{"location":"reference/python/event/#endstone.event.ServerCommandEvent","title":"ServerCommandEvent","text":"

          Bases: Event

          Called when the console runs a command, early in the process.

          Attributes:

          Name Type Description command str

          Gets or sets the command that the server will execute

          sender CommandSender

          Get the command sender.

          "},{"location":"reference/python/event/#endstone.event.ServerCommandEvent.command","title":"command property writable","text":"
          command: str\n

          Gets or sets the command that the server will execute

          "},{"location":"reference/python/event/#endstone.event.ServerCommandEvent.sender","title":"sender property","text":"
          sender: CommandSender\n

          Get the command sender.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent","title":"ServerListPingEvent","text":"

          Bases: Event

          Called when a server ping is coming in.

          Attributes:

          Name Type Description game_mode GameMode

          Gets or sets the current game mode.

          level_name str

          Gets or sets the level name.

          local_port int

          Get the local port of the server.

          local_port_v6 int

          Get the local port of the server for IPv6 support

          max_players int

          Gets or sets the maximum number of players allowed.

          minecraft_version_network str

          Gets or sets the network version of Minecraft that is supported by this server

          motd str

          Gets or sets the message of the day message.

          network_protocol_version int

          Get the network protocol version of this server

          num_players int

          Gets or sets the number of players online.

          remote_host str

          Get the host the ping is coming from.

          remote_port int

          Get the port the ping is coming from.

          server_guid str

          Get the unique identifier of the server.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.game_mode","title":"game_mode property writable","text":"
          game_mode: GameMode\n

          Gets or sets the current game mode.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.level_name","title":"level_name property writable","text":"
          level_name: str\n

          Gets or sets the level name.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.local_port","title":"local_port property","text":"
          local_port: int\n

          Get the local port of the server.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.local_port_v6","title":"local_port_v6 property","text":"
          local_port_v6: int\n

          Get the local port of the server for IPv6 support

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.max_players","title":"max_players property writable","text":"
          max_players: int\n

          Gets or sets the maximum number of players allowed.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.minecraft_version_network","title":"minecraft_version_network property writable","text":"
          minecraft_version_network: str\n

          Gets or sets the network version of Minecraft that is supported by this server

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.motd","title":"motd property writable","text":"
          motd: str\n

          Gets or sets the message of the day message.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.network_protocol_version","title":"network_protocol_version property","text":"
          network_protocol_version: int\n

          Get the network protocol version of this server

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.num_players","title":"num_players property writable","text":"
          num_players: int\n

          Gets or sets the number of players online.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.remote_host","title":"remote_host property","text":"
          remote_host: str\n

          Get the host the ping is coming from.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.remote_port","title":"remote_port property","text":"
          remote_port: int\n

          Get the port the ping is coming from.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.server_guid","title":"server_guid property","text":"
          server_guid: str\n

          Get the unique identifier of the server.

          "},{"location":"reference/python/event/#endstone.event.ServerLoadEvent","title":"ServerLoadEvent","text":"

          Bases: Event

          Called when either the server startup or reload has completed.

          Classes:

          Name Description LoadType

          Attributes:

          Name Type Description STARTUP LoadType type LoadType"},{"location":"reference/python/event/#endstone.event.ServerLoadEvent.STARTUP","title":"STARTUP class-attribute","text":"
          STARTUP: LoadType\n
          "},{"location":"reference/python/event/#endstone.event.ServerLoadEvent.type","title":"type property","text":"
          type: LoadType\n
          "},{"location":"reference/python/event/#endstone.event.ServerLoadEvent.LoadType","title":"LoadType","text":"
          LoadType(value: int)\n

          Attributes:

          Name Type Description STARTUP LoadType name str value int"},{"location":"reference/python/event/#endstone.event.ServerLoadEvent.LoadType.STARTUP","title":"STARTUP class-attribute","text":"
          STARTUP: LoadType\n
          "},{"location":"reference/python/event/#endstone.event.ServerLoadEvent.LoadType.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/event/#endstone.event.ServerLoadEvent.LoadType.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/event/#endstone.event.ThunderChangeEvent","title":"ThunderChangeEvent","text":"

          Bases: Event

          Called when the thunder state in a world is changing.

          Attributes:

          Name Type Description level Level

          Returns the Level where this event is occurring

          to_thunder_state bool

          Gets the state of thunder that the world is being set to

          "},{"location":"reference/python/event/#endstone.event.ThunderChangeEvent.level","title":"level property","text":"
          level: Level\n

          Returns the Level where this event is occurring

          "},{"location":"reference/python/event/#endstone.event.ThunderChangeEvent.to_thunder_state","title":"to_thunder_state property","text":"
          to_thunder_state: bool\n

          Gets the state of thunder that the world is being set to

          "},{"location":"reference/python/event/#endstone.event.WeatherChangeEvent","title":"WeatherChangeEvent","text":"

          Bases: Event

          Called when the weather (rain) state in a world is changing.

          Attributes:

          Name Type Description level Level

          Returns the Level where this event is occurring

          to_weather_state bool

          Gets the state of weather that the world is being set to

          "},{"location":"reference/python/event/#endstone.event.WeatherChangeEvent.level","title":"level property","text":"
          level: Level\n

          Returns the Level where this event is occurring

          "},{"location":"reference/python/event/#endstone.event.WeatherChangeEvent.to_weather_state","title":"to_weather_state property","text":"
          to_weather_state: bool\n

          Gets the state of weather that the world is being set to

          "},{"location":"reference/python/event/#endstone.event.event_handler","title":"event_handler","text":"
          event_handler(\n    func=None,\n    *,\n    priority: EventPriority = NORMAL,\n    ignore_cancelled: bool = False\n)\n
          "},{"location":"reference/python/form/","title":"Form","text":""},{"location":"reference/python/form/#endstone.form","title":"endstone.form","text":"

          Classes:

          Name Description ActionForm

          Represents a form with buttons that let the player take action.

          Dropdown

          Represents a dropdown with a set of predefined options.

          Label

          Represents a text label.

          MessageForm

          Represents a form with two buttons.

          ModalForm

          Represents a modal form with controls.

          Slider

          Represents a slider with a label.

          StepSlider

          Represents a step slider with a set of predefined options.

          TextInput

          Represents a text input field.

          Toggle

          Represents a toggle button with a label.

          "},{"location":"reference/python/form/#endstone.form.ActionForm","title":"ActionForm","text":"
          ActionForm(\n    title: str | Translatable = \"\",\n    content: str | Translatable = \"\",\n    buttons: list[Button] | None = None,\n    on_submit: Callable[[Player, int], None] = None,\n    on_close: Callable[[Player], None] = None,\n)\n

          Represents a form with buttons that let the player take action.

          Classes:

          Name Description Button

          Represents a button with text and an optional icon.

          Methods:

          Name Description add_button

          Adds a button to the form.

          Attributes:

          Name Type Description buttons list[Button]

          Gets or sets the buttons of the action form.

          content str | Translatable

          Gets or sets the content of the form.

          on_close Callable[[Player], None]

          Gets or sets the on close callback.

          on_submit Callable[[Player, int], None]

          Gets or sets the on submit callback.

          title str | Translatable

          Gets or sets the title of the form.

          "},{"location":"reference/python/form/#endstone.form.ActionForm.buttons","title":"buttons property writable","text":"
          buttons: list[Button]\n

          Gets or sets the buttons of the action form.

          "},{"location":"reference/python/form/#endstone.form.ActionForm.content","title":"content property writable","text":"
          content: str | Translatable\n

          Gets or sets the content of the form.

          "},{"location":"reference/python/form/#endstone.form.ActionForm.on_close","title":"on_close property writable","text":"
          on_close: Callable[[Player], None]\n

          Gets or sets the on close callback.

          "},{"location":"reference/python/form/#endstone.form.ActionForm.on_submit","title":"on_submit property writable","text":"
          on_submit: Callable[[Player, int], None]\n

          Gets or sets the on submit callback.

          "},{"location":"reference/python/form/#endstone.form.ActionForm.title","title":"title property writable","text":"
          title: str | Translatable\n

          Gets or sets the title of the form.

          "},{"location":"reference/python/form/#endstone.form.ActionForm.Button","title":"Button","text":"
          Button(\n    text: str | Translatable = \"\",\n    icon: str | None = None,\n    on_click: Callable[[Player], None] = None,\n)\n

          Represents a button with text and an optional icon.

          Attributes:

          Name Type Description icon str | None

          Gets or sets the icon path or URL of the button

          on_click Callable[[Player], None]

          Gets or sets the on click callback.

          text str | Translatable

          Gets or sets the text of the button

          "},{"location":"reference/python/form/#endstone.form.ActionForm.Button.icon","title":"icon property writable","text":"
          icon: str | None\n

          Gets or sets the icon path or URL of the button

          "},{"location":"reference/python/form/#endstone.form.ActionForm.Button.on_click","title":"on_click property writable","text":"
          on_click: Callable[[Player], None]\n

          Gets or sets the on click callback.

          "},{"location":"reference/python/form/#endstone.form.ActionForm.Button.text","title":"text property writable","text":"
          text: str | Translatable\n

          Gets or sets the text of the button

          "},{"location":"reference/python/form/#endstone.form.ActionForm.add_button","title":"add_button","text":"
          add_button(\n    text: str | Translatable,\n    icon: str | None = None,\n    on_click: Callable[[Player], None] = None,\n) -> ActionForm\n

          Adds a button to the form.

          "},{"location":"reference/python/form/#endstone.form.Dropdown","title":"Dropdown","text":"
          Dropdown(\n    label: str | Translatable = \"\",\n    options: list[str] | None = None,\n    default_index: int | None = None,\n)\n

          Represents a dropdown with a set of predefined options.

          Methods:

          Name Description add_option

          Adds a new option to the dropdown.

          Attributes:

          Name Type Description default_index int | None

          Gets or sets the optional default index of the dropdown.

          label str | Translatable

          Gets or sets the label of the dropdown.

          options list[str]

          Gets or sets the options of the dropdown.

          "},{"location":"reference/python/form/#endstone.form.Dropdown.default_index","title":"default_index property writable","text":"
          default_index: int | None\n

          Gets or sets the optional default index of the dropdown.

          "},{"location":"reference/python/form/#endstone.form.Dropdown.label","title":"label property writable","text":"
          label: str | Translatable\n

          Gets or sets the label of the dropdown.

          "},{"location":"reference/python/form/#endstone.form.Dropdown.options","title":"options property writable","text":"
          options: list[str]\n

          Gets or sets the options of the dropdown.

          "},{"location":"reference/python/form/#endstone.form.Dropdown.add_option","title":"add_option","text":"
          add_option(option: str) -> Dropdown\n

          Adds a new option to the dropdown.

          "},{"location":"reference/python/form/#endstone.form.Label","title":"Label","text":"
          Label(text: str | Translatable = '')\n

          Represents a text label.

          Attributes:

          Name Type Description text str | Translatable

          Gets or sets the text of the label.

          "},{"location":"reference/python/form/#endstone.form.Label.text","title":"text property writable","text":"
          text: str | Translatable\n

          Gets or sets the text of the label.

          "},{"location":"reference/python/form/#endstone.form.MessageForm","title":"MessageForm","text":"
          MessageForm(\n    title: str | Translatable = \"\",\n    content: str | Translatable = \"\",\n    button1: str | Translatable = \"\",\n    button2: str | Translatable = \"\",\n    on_submit: Callable[[Player, int], None] = None,\n    on_close: Callable[[Player], None] = None,\n)\n

          Represents a form with two buttons.

          Attributes:

          Name Type Description button1 str | Translatable

          Gets or sets the text of button1.

          button2 str | Translatable

          Gets or sets the text of button2.

          content str | Translatable

          Gets or sets the content of the form.

          on_close Callable[[Player], None]

          Gets or sets the on close callback.

          on_submit Callable[[Player, int], None]

          Gets or sets the on submit callback.

          title str | Translatable

          Gets or sets the title of the form.

          "},{"location":"reference/python/form/#endstone.form.MessageForm.button1","title":"button1 property writable","text":"
          button1: str | Translatable\n

          Gets or sets the text of button1.

          "},{"location":"reference/python/form/#endstone.form.MessageForm.button2","title":"button2 property writable","text":"
          button2: str | Translatable\n

          Gets or sets the text of button2.

          "},{"location":"reference/python/form/#endstone.form.MessageForm.content","title":"content property writable","text":"
          content: str | Translatable\n

          Gets or sets the content of the form.

          "},{"location":"reference/python/form/#endstone.form.MessageForm.on_close","title":"on_close property writable","text":"
          on_close: Callable[[Player], None]\n

          Gets or sets the on close callback.

          "},{"location":"reference/python/form/#endstone.form.MessageForm.on_submit","title":"on_submit property writable","text":"
          on_submit: Callable[[Player, int], None]\n

          Gets or sets the on submit callback.

          "},{"location":"reference/python/form/#endstone.form.MessageForm.title","title":"title property writable","text":"
          title: str | Translatable\n

          Gets or sets the title of the form.

          "},{"location":"reference/python/form/#endstone.form.ModalForm","title":"ModalForm","text":"
          ModalForm(\n    title: str | Translatable = \"\",\n    controls: (\n        list[\n            Dropdown\n            | Label\n            | Slider\n            | StepSlider\n            | TextInput\n            | Toggle\n        ]\n        | None\n    ) = None,\n    submit_button: str | Translatable | None = None,\n    icon: str | None = None,\n    on_submit: Callable[[Player, str], None] = None,\n    on_close: Callable[[Player], None] = None,\n)\n

          Represents a modal form with controls.

          Methods:

          Name Description add_control

          Adds a control to the form.

          Attributes:

          Name Type Description controls list[Dropdown | Label | Slider | StepSlider | TextInput | Toggle]

          Gets or sets the controls of the modal form.

          icon str | None

          Gets or sets the icon of the form.

          on_close Callable[[Player], None]

          Gets or sets the on close callback.

          on_submit Callable[[Player, str], None]

          Gets or sets the on submit callback.

          submit_button str | Translatable | None

          Gets or sets the submit button message of the form.

          title str | Translatable

          Gets or sets the title of the form.

          "},{"location":"reference/python/form/#endstone.form.ModalForm.controls","title":"controls property writable","text":"
          controls: list[\n    Dropdown\n    | Label\n    | Slider\n    | StepSlider\n    | TextInput\n    | Toggle\n]\n

          Gets or sets the controls of the modal form.

          "},{"location":"reference/python/form/#endstone.form.ModalForm.icon","title":"icon property writable","text":"
          icon: str | None\n

          Gets or sets the icon of the form.

          "},{"location":"reference/python/form/#endstone.form.ModalForm.on_close","title":"on_close property writable","text":"
          on_close: Callable[[Player], None]\n

          Gets or sets the on close callback.

          "},{"location":"reference/python/form/#endstone.form.ModalForm.on_submit","title":"on_submit property writable","text":"
          on_submit: Callable[[Player, str], None]\n

          Gets or sets the on submit callback.

          "},{"location":"reference/python/form/#endstone.form.ModalForm.submit_button","title":"submit_button property writable","text":"
          submit_button: str | Translatable | None\n

          Gets or sets the submit button message of the form.

          "},{"location":"reference/python/form/#endstone.form.ModalForm.title","title":"title property writable","text":"
          title: str | Translatable\n

          Gets or sets the title of the form.

          "},{"location":"reference/python/form/#endstone.form.ModalForm.add_control","title":"add_control","text":"
          add_control(\n    control: (\n        Dropdown\n        | Label\n        | Slider\n        | StepSlider\n        | TextInput\n        | Toggle\n    ),\n) -> ModalForm\n

          Adds a control to the form.

          "},{"location":"reference/python/form/#endstone.form.Slider","title":"Slider","text":"
          Slider(\n    label: str | Translatable = \"\",\n    min: float = 0,\n    max: float = 100,\n    step: float = 20,\n    default_value: float | None = None,\n)\n

          Represents a slider with a label.

          Attributes:

          Name Type Description default_value float | None

          Gets or sets the optional default value of the slider.

          label str | Translatable

          Gets or sets the label of the slider.

          max float

          Gets or sets the maximum value of the slider.

          min float

          Gets or sets the minimum value of the slider.

          step float

          Gets or sets the step size of the slider.

          "},{"location":"reference/python/form/#endstone.form.Slider.default_value","title":"default_value property writable","text":"
          default_value: float | None\n

          Gets or sets the optional default value of the slider.

          "},{"location":"reference/python/form/#endstone.form.Slider.label","title":"label property writable","text":"
          label: str | Translatable\n

          Gets or sets the label of the slider.

          "},{"location":"reference/python/form/#endstone.form.Slider.max","title":"max property writable","text":"
          max: float\n

          Gets or sets the maximum value of the slider.

          "},{"location":"reference/python/form/#endstone.form.Slider.min","title":"min property writable","text":"
          min: float\n

          Gets or sets the minimum value of the slider.

          "},{"location":"reference/python/form/#endstone.form.Slider.step","title":"step property writable","text":"
          step: float\n

          Gets or sets the step size of the slider.

          "},{"location":"reference/python/form/#endstone.form.StepSlider","title":"StepSlider","text":"
          StepSlider(\n    label: str | Translatable = \"\",\n    options: list[str] | None = None,\n    default_index: int | None = None,\n)\n

          Represents a step slider with a set of predefined options.

          Methods:

          Name Description add_option

          Adds a new option to the step slider.

          Attributes:

          Name Type Description default_index int | None

          Gets or sets the optional default index of the step slider.

          label str | Translatable

          Gets or sets the label of the step slider.

          options list[str]

          Gets or sets the options of the step slider.

          "},{"location":"reference/python/form/#endstone.form.StepSlider.default_index","title":"default_index property writable","text":"
          default_index: int | None\n

          Gets or sets the optional default index of the step slider.

          "},{"location":"reference/python/form/#endstone.form.StepSlider.label","title":"label property writable","text":"
          label: str | Translatable\n

          Gets or sets the label of the step slider.

          "},{"location":"reference/python/form/#endstone.form.StepSlider.options","title":"options property writable","text":"
          options: list[str]\n

          Gets or sets the options of the step slider.

          "},{"location":"reference/python/form/#endstone.form.StepSlider.add_option","title":"add_option","text":"
          add_option(option: str) -> Dropdown\n

          Adds a new option to the step slider.

          "},{"location":"reference/python/form/#endstone.form.TextInput","title":"TextInput","text":"
          TextInput(\n    label: str | Translatable = \"\",\n    placeholder: str | Translatable = \"\",\n    default_value: str | None = None,\n)\n

          Represents a text input field.

          Attributes:

          Name Type Description default_value str | None

          Gets or sets the optional default text of the text input field.

          label str | Translatable

          Gets or sets the label of the text input field.

          placeholder str | Translatable

          Gets or sets the placeholder of the text input field.

          "},{"location":"reference/python/form/#endstone.form.TextInput.default_value","title":"default_value property writable","text":"
          default_value: str | None\n

          Gets or sets the optional default text of the text input field.

          "},{"location":"reference/python/form/#endstone.form.TextInput.label","title":"label property writable","text":"
          label: str | Translatable\n

          Gets or sets the label of the text input field.

          "},{"location":"reference/python/form/#endstone.form.TextInput.placeholder","title":"placeholder property writable","text":"
          placeholder: str | Translatable\n

          Gets or sets the placeholder of the text input field.

          "},{"location":"reference/python/form/#endstone.form.Toggle","title":"Toggle","text":"
          Toggle(\n    label: str | Translatable = \"\",\n    default_value: bool = False,\n)\n

          Represents a toggle button with a label.

          Attributes:

          Name Type Description default_value bool

          Gets or sets the value of the toggle.

          label str | Translatable

          Gets or sets the label of the toggle.

          "},{"location":"reference/python/form/#endstone.form.Toggle.default_value","title":"default_value property writable","text":"
          default_value: bool\n

          Gets or sets the value of the toggle.

          "},{"location":"reference/python/form/#endstone.form.Toggle.label","title":"label property writable","text":"
          label: str | Translatable\n

          Gets or sets the label of the toggle.

          "},{"location":"reference/python/inventory/","title":"Inventory","text":""},{"location":"reference/python/inventory/#endstone.inventory","title":"endstone.inventory","text":"

          Classes:

          Name Description Inventory

          Interface to the various inventories.

          ItemStack

          Represents a stack of items.

          PlayerInventory

          Interface to the inventory of a Player, including the four armor slots and any extra slots.

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory","title":"Inventory","text":"

          Interface to the various inventories.

          Methods:

          Name Description add_item

          Stores the given ItemStacks in the inventory. This will try to fill existing stacks and empty slots as well as it can.

          clear

          Clears out the whole Inventory.

          first

          Returns the first slot in the inventory containing an ItemStack with the given stack.

          get_item

          Returns the ItemStack found in the slot at the given index

          set_item

          Stores the ItemStack at the given index of the inventory.

          Attributes:

          Name Type Description contents list[ItemStack]

          Returns all ItemStacks from the inventory

          is_empty bool

          Check whether this inventory is empty. An inventory is considered to be empty if there are no ItemStacks in any slot of this inventory.

          max_stack_size int

          Returns the maximum stack size for an ItemStack in this inventory.

          size int

          Returns the size of the inventory

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory.contents","title":"contents property","text":"
          contents: list[ItemStack]\n

          Returns all ItemStacks from the inventory

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory.is_empty","title":"is_empty property","text":"
          is_empty: bool\n

          Check whether this inventory is empty. An inventory is considered to be empty if there are no ItemStacks in any slot of this inventory.

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory.max_stack_size","title":"max_stack_size property","text":"
          max_stack_size: int\n

          Returns the maximum stack size for an ItemStack in this inventory.

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory.size","title":"size property","text":"
          size: int\n

          Returns the size of the inventory

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory.add_item","title":"add_item","text":"
          add_item(item: ItemStack) -> None\n

          Stores the given ItemStacks in the inventory. This will try to fill existing stacks and empty slots as well as it can.

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory.clear","title":"clear","text":"
          clear() -> None\n

          Clears out the whole Inventory.

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory.first","title":"first","text":"
          first(item: ItemStack) -> int\n

          Returns the first slot in the inventory containing an ItemStack with the given stack.

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory.get_item","title":"get_item","text":"
          get_item(index: int) -> ItemStack\n

          Returns the ItemStack found in the slot at the given index

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory.set_item","title":"set_item","text":"
          set_item(index: int, item: ItemStack | None) -> None\n

          Stores the ItemStack at the given index of the inventory.

          "},{"location":"reference/python/inventory/#endstone.inventory.ItemStack","title":"ItemStack","text":"
          ItemStack(type: str = 'minecraft:air', amount: int = 1)\n

          Represents a stack of items.

          Attributes:

          Name Type Description amount int

          Gets or sets the amount of items in this stack.

          type str

          Gets or sets the type of this item.

          "},{"location":"reference/python/inventory/#endstone.inventory.ItemStack.amount","title":"amount property writable","text":"
          amount: int\n

          Gets or sets the amount of items in this stack.

          "},{"location":"reference/python/inventory/#endstone.inventory.ItemStack.type","title":"type property writable","text":"
          type: str\n

          Gets or sets the type of this item.

          "},{"location":"reference/python/inventory/#endstone.inventory.PlayerInventory","title":"PlayerInventory","text":"

          Bases: Inventory

          Interface to the inventory of a Player, including the four armor slots and any extra slots.

          "},{"location":"reference/python/lang/","title":"Language","text":""},{"location":"reference/python/lang/#endstone.lang","title":"endstone.lang","text":"

          Classes:

          Name Description Language

          Represents the interface for translating text into different languages.

          Translatable

          Represents an object with a text representation that can be translated by the Minecraft client.

          "},{"location":"reference/python/lang/#endstone.lang.Language","title":"Language","text":"

          Represents the interface for translating text into different languages.

          Methods:

          Name Description translate

          Attributes:

          Name Type Description locale str

          Gets the current locale.

          "},{"location":"reference/python/lang/#endstone.lang.Language.locale","title":"locale property","text":"
          locale: str\n

          Gets the current locale.

          "},{"location":"reference/python/lang/#endstone.lang.Language.translate","title":"translate","text":"
          translate(\n    text: str,\n    params: list[str] | None = None,\n    locale: str | None = None,\n) -> str\n

          Translates a given text using a set of parameters for a specific locale.

          translate(\n    translatable: Translatable, locale: str | None = None\n) -> str\n

          Translates a Translatable object into a specific locale.

          "},{"location":"reference/python/lang/#endstone.lang.Translatable","title":"Translatable","text":"
          Translatable(text: str, params: list[str] | None = None)\n

          Represents an object with a text representation that can be translated by the Minecraft client.

          Attributes:

          Name Type Description params list[str]

          Get the translation parameters.

          text str

          Get the text to be translated.

          "},{"location":"reference/python/lang/#endstone.lang.Translatable.params","title":"params property","text":"
          params: list[str]\n

          Get the translation parameters.

          "},{"location":"reference/python/lang/#endstone.lang.Translatable.text","title":"text property","text":"
          text: str\n

          Get the text to be translated.

          "},{"location":"reference/python/level/","title":"Level","text":""},{"location":"reference/python/level/#endstone.level","title":"endstone.level","text":"

          Classes:

          Name Description Dimension

          Represents a dimension within a Level.

          Level Location

          Represents a 3-dimensional location in a dimension within a level.

          Position

          Represents a 3-dimensional position in a dimension within a level.

          "},{"location":"reference/python/level/#endstone.level.Dimension","title":"Dimension","text":"

          Represents a dimension within a Level.

          Classes:

          Name Description Type

          Represents various dimension types.

          Methods:

          Name Description get_block_at

          Attributes:

          Name Type Description CUSTOM Type NETHER Type OVERWORLD Type THE_END Type level Level

          Gets the level to which this dimension belongs

          name str

          Gets the name of this dimension

          type Type

          Gets the type of this dimension

          "},{"location":"reference/python/level/#endstone.level.Dimension.CUSTOM","title":"CUSTOM class-attribute","text":"
          CUSTOM: Type\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.NETHER","title":"NETHER class-attribute","text":"
          NETHER: Type\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.OVERWORLD","title":"OVERWORLD class-attribute","text":"
          OVERWORLD: Type\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.THE_END","title":"THE_END class-attribute","text":"
          THE_END: Type\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.level","title":"level property","text":"
          level: Level\n

          Gets the level to which this dimension belongs

          "},{"location":"reference/python/level/#endstone.level.Dimension.name","title":"name property","text":"
          name: str\n

          Gets the name of this dimension

          "},{"location":"reference/python/level/#endstone.level.Dimension.type","title":"type property","text":"
          type: Type\n

          Gets the type of this dimension

          "},{"location":"reference/python/level/#endstone.level.Dimension.Type","title":"Type","text":"
          Type(value: int)\n

          Represents various dimension types.

          Attributes:

          Name Type Description CUSTOM Type NETHER Type OVERWORLD Type THE_END Type name str value int"},{"location":"reference/python/level/#endstone.level.Dimension.Type.CUSTOM","title":"CUSTOM class-attribute","text":"
          CUSTOM: Type\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.Type.NETHER","title":"NETHER class-attribute","text":"
          NETHER: Type\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.Type.OVERWORLD","title":"OVERWORLD class-attribute","text":"
          OVERWORLD: Type\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.Type.THE_END","title":"THE_END class-attribute","text":"
          THE_END: Type\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.Type.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.Type.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.get_block_at","title":"get_block_at","text":"
          get_block_at(location: Location) -> Block\n

          Gets the Block at the given Location

          get_block_at(x: int, y: int, z: int) -> Block\n

          Gets the Block at the given coordinates

          "},{"location":"reference/python/level/#endstone.level.Level","title":"Level","text":"

          Methods:

          Name Description get_dimension

          Gets the dimension with the given name.

          Attributes:

          Name Type Description actors list[Actor]

          Get a list of all actors in this level

          dimensions list[Dimension]

          Gets a list of all dimensions within this level.

          name str

          Gets the unique name of this level

          time int

          Gets and sets the relative in-game time on the server

          "},{"location":"reference/python/level/#endstone.level.Level.actors","title":"actors property","text":"
          actors: list[Actor]\n

          Get a list of all actors in this level

          "},{"location":"reference/python/level/#endstone.level.Level.dimensions","title":"dimensions property","text":"
          dimensions: list[Dimension]\n

          Gets a list of all dimensions within this level.

          "},{"location":"reference/python/level/#endstone.level.Level.name","title":"name property","text":"
          name: str\n

          Gets the unique name of this level

          "},{"location":"reference/python/level/#endstone.level.Level.time","title":"time property writable","text":"
          time: int\n

          Gets and sets the relative in-game time on the server

          "},{"location":"reference/python/level/#endstone.level.Level.get_dimension","title":"get_dimension","text":"
          get_dimension(name: str) -> Dimension\n

          Gets the dimension with the given name.

          "},{"location":"reference/python/level/#endstone.level.Location","title":"Location","text":"
          Location(\n    dimension: Dimension,\n    x: float,\n    y: float,\n    z: float,\n    pitch: float = 0.0,\n    yaw: float = 0.0,\n)\n

          Bases: Position

          Represents a 3-dimensional location in a dimension within a level.

          Attributes:

          Name Type Description pitch float

          The pitch of this location, measured in degrees.

          yaw float

          The yaw of this location, measured in degrees.

          "},{"location":"reference/python/level/#endstone.level.Location.pitch","title":"pitch property writable","text":"
          pitch: float\n

          The pitch of this location, measured in degrees.

          "},{"location":"reference/python/level/#endstone.level.Location.yaw","title":"yaw property writable","text":"
          yaw: float\n

          The yaw of this location, measured in degrees.

          "},{"location":"reference/python/level/#endstone.level.Position","title":"Position","text":"
          Position(\n    dimension: Dimension, x: float, y: float, z: float\n)\n

          Bases: Vector

          Represents a 3-dimensional position in a dimension within a level.

          Attributes:

          Name Type Description block_x int

          Gets the floored value of the X component, indicating the block that this location is contained with.

          block_y int

          Gets the floored value of the Y component, indicating the block that this location is contained with.

          block_z int

          Gets the floored value of the Z component, indicating the block that this location is contained with.

          dimension Dimension

          The Dimension that contains this position

          "},{"location":"reference/python/level/#endstone.level.Position.block_x","title":"block_x property","text":"
          block_x: int\n

          Gets the floored value of the X component, indicating the block that this location is contained with.

          "},{"location":"reference/python/level/#endstone.level.Position.block_y","title":"block_y property","text":"
          block_y: int\n

          Gets the floored value of the Y component, indicating the block that this location is contained with.

          "},{"location":"reference/python/level/#endstone.level.Position.block_z","title":"block_z property","text":"
          block_z: int\n

          Gets the floored value of the Z component, indicating the block that this location is contained with.

          "},{"location":"reference/python/level/#endstone.level.Position.dimension","title":"dimension property writable","text":"
          dimension: Dimension\n

          The Dimension that contains this position

          "},{"location":"reference/python/misc/","title":"Miscellaneous","text":""},{"location":"reference/python/misc/#endstone.ColorFormat","title":"endstone.ColorFormat","text":"

          All supported color and format codes.

          Attributes:

          Name Type Description AQUA str BLACK str BLUE str BOLD str DARK_AQUA str DARK_BLUE str DARK_GRAY str DARK_GREEN str DARK_PURPLE str DARK_RED str GOLD str GRAY str GREEN str ITALIC str LIGHT_PURPLE str MATERIAL_AMETHYST str MATERIAL_COPPER str MATERIAL_DIAMOND str MATERIAL_EMERALD str MATERIAL_GOLD str MATERIAL_IRON str MATERIAL_LAPIS str MATERIAL_NETHERITE str MATERIAL_QUARTZ str MATERIAL_REDSTONE str MINECOIN_GOLD str OBFUSCATED str RED str RESET str WHITE str YELLOW str"},{"location":"reference/python/misc/#endstone.ColorFormat.AQUA","title":"AQUA class-attribute","text":"
          AQUA: str = '\u00a7b'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.BLACK","title":"BLACK class-attribute","text":"
          BLACK: str = '\u00a70'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.BLUE","title":"BLUE class-attribute","text":"
          BLUE: str = '\u00a79'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.BOLD","title":"BOLD class-attribute","text":"
          BOLD: str = '\u00a7l'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.DARK_AQUA","title":"DARK_AQUA class-attribute","text":"
          DARK_AQUA: str = '\u00a73'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.DARK_BLUE","title":"DARK_BLUE class-attribute","text":"
          DARK_BLUE: str = '\u00a71'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.DARK_GRAY","title":"DARK_GRAY class-attribute","text":"
          DARK_GRAY: str = '\u00a78'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.DARK_GREEN","title":"DARK_GREEN class-attribute","text":"
          DARK_GREEN: str = '\u00a72'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.DARK_PURPLE","title":"DARK_PURPLE class-attribute","text":"
          DARK_PURPLE: str = '\u00a75'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.DARK_RED","title":"DARK_RED class-attribute","text":"
          DARK_RED: str = '\u00a74'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.GOLD","title":"GOLD class-attribute","text":"
          GOLD: str = '\u00a76'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.GRAY","title":"GRAY class-attribute","text":"
          GRAY: str = '\u00a77'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.GREEN","title":"GREEN class-attribute","text":"
          GREEN: str = '\u00a7a'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.ITALIC","title":"ITALIC class-attribute","text":"
          ITALIC: str = '\u00a7o'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.LIGHT_PURPLE","title":"LIGHT_PURPLE class-attribute","text":"
          LIGHT_PURPLE: str = '\u00a7d'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_AMETHYST","title":"MATERIAL_AMETHYST class-attribute","text":"
          MATERIAL_AMETHYST: str = '\u00a7u'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_COPPER","title":"MATERIAL_COPPER class-attribute","text":"
          MATERIAL_COPPER: str = '\u00a7n'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_DIAMOND","title":"MATERIAL_DIAMOND class-attribute","text":"
          MATERIAL_DIAMOND: str = '\u00a7s'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_EMERALD","title":"MATERIAL_EMERALD class-attribute","text":"
          MATERIAL_EMERALD: str = '\u00a7q'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_GOLD","title":"MATERIAL_GOLD class-attribute","text":"
          MATERIAL_GOLD: str = '\u00a7p'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_IRON","title":"MATERIAL_IRON class-attribute","text":"
          MATERIAL_IRON: str = '\u00a7i'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_LAPIS","title":"MATERIAL_LAPIS class-attribute","text":"
          MATERIAL_LAPIS: str = '\u00a7t'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_NETHERITE","title":"MATERIAL_NETHERITE class-attribute","text":"
          MATERIAL_NETHERITE: str = '\u00a7j'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_QUARTZ","title":"MATERIAL_QUARTZ class-attribute","text":"
          MATERIAL_QUARTZ: str = '\u00a7h'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_REDSTONE","title":"MATERIAL_REDSTONE class-attribute","text":"
          MATERIAL_REDSTONE: str = '\u00a7m'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MINECOIN_GOLD","title":"MINECOIN_GOLD class-attribute","text":"
          MINECOIN_GOLD: str = '\u00a7g'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.OBFUSCATED","title":"OBFUSCATED class-attribute","text":"
          OBFUSCATED: str = '\u00a7k'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.RED","title":"RED class-attribute","text":"
          RED: str = '\u00a7c'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.RESET","title":"RESET class-attribute","text":"
          RESET: str = '\u00a7r'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.WHITE","title":"WHITE class-attribute","text":"
          WHITE: str = '\u00a7f'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.YELLOW","title":"YELLOW class-attribute","text":"
          YELLOW: str = '\u00a7e'\n
          "},{"location":"reference/python/misc/#endstone.GameMode","title":"endstone.GameMode","text":"
          GameMode(value: int)\n

          Represents the various type of game modes that Players may have.

          Attributes:

          Name Type Description ADVENTURE GameMode CREATIVE GameMode SPECTATOR GameMode SURVIVAL GameMode name str value int"},{"location":"reference/python/misc/#endstone.GameMode.ADVENTURE","title":"ADVENTURE class-attribute","text":"
          ADVENTURE: GameMode\n
          "},{"location":"reference/python/misc/#endstone.GameMode.CREATIVE","title":"CREATIVE class-attribute","text":"
          CREATIVE: GameMode\n
          "},{"location":"reference/python/misc/#endstone.GameMode.SPECTATOR","title":"SPECTATOR class-attribute","text":"
          SPECTATOR: GameMode\n
          "},{"location":"reference/python/misc/#endstone.GameMode.SURVIVAL","title":"SURVIVAL class-attribute","text":"
          SURVIVAL: GameMode\n
          "},{"location":"reference/python/misc/#endstone.GameMode.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/misc/#endstone.GameMode.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/misc/#endstone.Logger","title":"endstone.Logger","text":"

          Logger class which can format and output varies levels of logs.

          Classes:

          Name Description Level

          Specifies the log level.

          Methods:

          Name Description critical

          Log a message at the CRITICAL level.

          debug

          Log a message at the DEBUG level.

          error

          Log a message at the ERROR level.

          info

          Log a message at the INFO level.

          is_enabled_for

          Check if the Logger instance is enabled for the given log Level.

          set_level

          Set the logging level for this Logger instance.

          trace

          Log a message at the TRACE level.

          warning

          Log a message at the WARNING level.

          Attributes:

          Name Type Description CRITICAL Level DEBUG Level ERROR Level INFO Level TRACE Level WARNING Level name str

          Get the name of this Logger instance.

          "},{"location":"reference/python/misc/#endstone.Logger.CRITICAL","title":"CRITICAL class-attribute","text":"
          CRITICAL: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.DEBUG","title":"DEBUG class-attribute","text":"
          DEBUG: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.ERROR","title":"ERROR class-attribute","text":"
          ERROR: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.INFO","title":"INFO class-attribute","text":"
          INFO: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.TRACE","title":"TRACE class-attribute","text":"
          TRACE: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.WARNING","title":"WARNING class-attribute","text":"
          WARNING: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.name","title":"name property","text":"
          name: str\n

          Get the name of this Logger instance.

          "},{"location":"reference/python/misc/#endstone.Logger.Level","title":"Level","text":"
          Level(value: int)\n

          Specifies the log level.

          Attributes:

          Name Type Description CRITICAL Level DEBUG Level ERROR Level INFO Level TRACE Level WARNING Level name str value int"},{"location":"reference/python/misc/#endstone.Logger.Level.CRITICAL","title":"CRITICAL class-attribute","text":"
          CRITICAL: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.Level.DEBUG","title":"DEBUG class-attribute","text":"
          DEBUG: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.Level.ERROR","title":"ERROR class-attribute","text":"
          ERROR: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.Level.INFO","title":"INFO class-attribute","text":"
          INFO: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.Level.TRACE","title":"TRACE class-attribute","text":"
          TRACE: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.Level.WARNING","title":"WARNING class-attribute","text":"
          WARNING: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.Level.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/misc/#endstone.Logger.Level.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/misc/#endstone.Logger.critical","title":"critical","text":"
          critical(message: str) -> None\n

          Log a message at the CRITICAL level.

          "},{"location":"reference/python/misc/#endstone.Logger.debug","title":"debug","text":"
          debug(message: str) -> None\n

          Log a message at the DEBUG level.

          "},{"location":"reference/python/misc/#endstone.Logger.error","title":"error","text":"
          error(message: str) -> None\n

          Log a message at the ERROR level.

          "},{"location":"reference/python/misc/#endstone.Logger.info","title":"info","text":"
          info(message: str) -> None\n

          Log a message at the INFO level.

          "},{"location":"reference/python/misc/#endstone.Logger.is_enabled_for","title":"is_enabled_for","text":"
          is_enabled_for(level: Level) -> bool\n

          Check if the Logger instance is enabled for the given log Level.

          "},{"location":"reference/python/misc/#endstone.Logger.set_level","title":"set_level","text":"
          set_level(level: Level) -> None\n

          Set the logging level for this Logger instance.

          "},{"location":"reference/python/misc/#endstone.Logger.trace","title":"trace","text":"
          trace(message: str) -> None\n

          Log a message at the TRACE level.

          "},{"location":"reference/python/misc/#endstone.Logger.warning","title":"warning","text":"
          warning(message: str) -> None\n

          Log a message at the WARNING level.

          "},{"location":"reference/python/misc/#endstone.Skin","title":"endstone.Skin","text":"
          Skin(\n    skin_id: str,\n    skin_data: ndarray[uint8],\n    cape_id: str | None = None,\n    cape_data: ndarray[uint8] | None = None,\n)\n

          Attributes:

          Name Type Description cape_data ndarray[uint8] | None

          Get the Cape data.

          cape_id str | None

          Get the Cape ID.

          skin_data ndarray[uint8]

          Get the Skin data.

          skin_id str

          Get the Skin ID.

          "},{"location":"reference/python/misc/#endstone.Skin.cape_data","title":"cape_data property","text":"
          cape_data: ndarray[uint8] | None\n

          Get the Cape data.

          "},{"location":"reference/python/misc/#endstone.Skin.cape_id","title":"cape_id property","text":"
          cape_id: str | None\n

          Get the Cape ID.

          "},{"location":"reference/python/misc/#endstone.Skin.skin_data","title":"skin_data property","text":"
          skin_data: ndarray[uint8]\n

          Get the Skin data.

          "},{"location":"reference/python/misc/#endstone.Skin.skin_id","title":"skin_id property","text":"
          skin_id: str\n

          Get the Skin ID.

          "},{"location":"reference/python/misc/#endstone.util","title":"endstone.util","text":"

          Classes:

          Name Description SocketAddress

          Represents an IP Socket Address (hostname + port number).

          Vector

          Represents a 3-dimensional vector.

          "},{"location":"reference/python/misc/#endstone.util.SocketAddress","title":"SocketAddress","text":"
          SocketAddress()\n

          Represents an IP Socket Address (hostname + port number).

          Attributes:

          Name Type Description hostname str

          Gets the hostname.

          port int

          Gets the port number.

          "},{"location":"reference/python/misc/#endstone.util.SocketAddress.hostname","title":"hostname property","text":"
          hostname: str\n

          Gets the hostname.

          "},{"location":"reference/python/misc/#endstone.util.SocketAddress.port","title":"port property","text":"
          port: int\n

          Gets the port number.

          "},{"location":"reference/python/misc/#endstone.util.Vector","title":"Vector","text":"
          Vector()\n

          Represents a 3-dimensional vector.

          Methods:

          Name Description distance

          The distance between this Vector and another

          distance_squared

          The squared distance between this Vector and another

          Attributes:

          Name Type Description length float

          The magnitude of the Vector

          length_squared float

          The squared magnitude of the Vector

          x float

          The X component of the vector

          y float

          The Y component of the vector

          z float

          The Z component of the vector

          "},{"location":"reference/python/misc/#endstone.util.Vector.length","title":"length property","text":"
          length: float\n

          The magnitude of the Vector

          "},{"location":"reference/python/misc/#endstone.util.Vector.length_squared","title":"length_squared property","text":"
          length_squared: float\n

          The squared magnitude of the Vector

          "},{"location":"reference/python/misc/#endstone.util.Vector.x","title":"x property writable","text":"
          x: float\n

          The X component of the vector

          "},{"location":"reference/python/misc/#endstone.util.Vector.y","title":"y property writable","text":"
          y: float\n

          The Y component of the vector

          "},{"location":"reference/python/misc/#endstone.util.Vector.z","title":"z property writable","text":"
          z: float\n

          The Z component of the vector

          "},{"location":"reference/python/misc/#endstone.util.Vector.distance","title":"distance","text":"
          distance(other: Vector) -> float\n

          The distance between this Vector and another

          "},{"location":"reference/python/misc/#endstone.util.Vector.distance_squared","title":"distance_squared","text":"
          distance_squared(other: Vector) -> float\n

          The squared distance between this Vector and another

          "},{"location":"reference/python/network/","title":"Network","text":""},{"location":"reference/python/network/#endstone.network","title":"endstone.network","text":"

          Classes:

          Name Description Packet

          Represents a packet.

          PacketType

          Represents the types of packets.

          SpawnParticleEffectPacket

          Represents a packet for spawning a particle effect.

          "},{"location":"reference/python/network/#endstone.network.Packet","title":"Packet","text":"

          Represents a packet.

          Attributes:

          Name Type Description type PacketType

          Gets the type of the packet.

          "},{"location":"reference/python/network/#endstone.network.Packet.type","title":"type property","text":"
          type: PacketType\n

          Gets the type of the packet.

          "},{"location":"reference/python/network/#endstone.network.PacketType","title":"PacketType","text":"
          PacketType(value: int)\n

          Represents the types of packets.

          Attributes:

          Name Type Description SPAWN_PARTICLE_EFFECT PacketType name str value int"},{"location":"reference/python/network/#endstone.network.PacketType.SPAWN_PARTICLE_EFFECT","title":"SPAWN_PARTICLE_EFFECT class-attribute","text":"
          SPAWN_PARTICLE_EFFECT: PacketType\n
          "},{"location":"reference/python/network/#endstone.network.PacketType.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/network/#endstone.network.PacketType.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/network/#endstone.network.SpawnParticleEffectPacket","title":"SpawnParticleEffectPacket","text":"
          SpawnParticleEffectPacket()\n

          Bases: Packet

          Represents a packet for spawning a particle effect.

          Attributes:

          Name Type Description actor_id int dimension_id int effect_name str molang_variables_json str | None position Vector"},{"location":"reference/python/network/#endstone.network.SpawnParticleEffectPacket.actor_id","title":"actor_id instance-attribute","text":"
          actor_id: int\n
          "},{"location":"reference/python/network/#endstone.network.SpawnParticleEffectPacket.dimension_id","title":"dimension_id instance-attribute","text":"
          dimension_id: int\n
          "},{"location":"reference/python/network/#endstone.network.SpawnParticleEffectPacket.effect_name","title":"effect_name instance-attribute","text":"
          effect_name: str\n
          "},{"location":"reference/python/network/#endstone.network.SpawnParticleEffectPacket.molang_variables_json","title":"molang_variables_json instance-attribute","text":"
          molang_variables_json: str | None\n
          "},{"location":"reference/python/network/#endstone.network.SpawnParticleEffectPacket.position","title":"position instance-attribute","text":"
          position: Vector\n
          "},{"location":"reference/python/permissions/","title":"Permissions","text":""},{"location":"reference/python/permissions/#endstone.permissions","title":"endstone.permissions","text":"

          Classes:

          Name Description Permissible

          Represents an object that may become a server operator and can be assigned permissions.

          Permission

          Represents a unique permission that may be attached to a Permissible

          PermissionAttachment

          Holds information about a permission attachment on a Permissible object

          PermissionAttachmentInfo

          Holds information on a permission and which PermissionAttachment provides it

          PermissionDefault

          Represents the possible default values for permissions

          "},{"location":"reference/python/permissions/#endstone.permissions.Permissible","title":"Permissible","text":"

          Represents an object that may become a server operator and can be assigned permissions.

          Methods:

          Name Description add_attachment has_permission is_permission_set recalculate_permissions

          Recalculates the permissions.

          remove_attachment

          Removes a given PermissionAttachment.

          Attributes:

          Name Type Description effective_permissions set[PermissionAttachmentInfo]

          Gets effective permissions.

          is_op bool

          The operator status of this object

          "},{"location":"reference/python/permissions/#endstone.permissions.Permissible.effective_permissions","title":"effective_permissions property","text":"
          effective_permissions: set[PermissionAttachmentInfo]\n

          Gets effective permissions.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permissible.is_op","title":"is_op property writable","text":"
          is_op: bool\n

          The operator status of this object

          "},{"location":"reference/python/permissions/#endstone.permissions.Permissible.add_attachment","title":"add_attachment","text":"
          add_attachment(\n    plugin: Plugin, name: str, value: bool\n) -> PermissionAttachment\n

          Adds a new PermissionAttachment.

          add_attachment(plugin: Plugin) -> PermissionAttachment\n

          Adds a new PermissionAttachment.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permissible.has_permission","title":"has_permission","text":"
          has_permission(name: str) -> bool\n

          Checks if a permissions is available by name.

          has_permission(perm: Permission) -> bool\n

          Checks if a permissions is available by permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permissible.is_permission_set","title":"is_permission_set","text":"
          is_permission_set(name: str) -> bool\n

          Checks if a permissions is set by name.

          is_permission_set(perm: Permission) -> bool\n

          Checks if a permissions is set by permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permissible.recalculate_permissions","title":"recalculate_permissions","text":"
          recalculate_permissions() -> None\n

          Recalculates the permissions.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permissible.remove_attachment","title":"remove_attachment","text":"
          remove_attachment(attachment: PermissionAttachment) -> None\n

          Removes a given PermissionAttachment.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permission","title":"Permission","text":"
          Permission(\n    name: str,\n    description: str | None = None,\n    default: PermissionDefault | None = None,\n    children: dict[str, bool] | None = None,\n    *args,\n    **kwargs\n)\n

          Represents a unique permission that may be attached to a Permissible

          Methods:

          Name Description add_parent recalculate_permissibles

          Recalculates all Permissibles that contain this permission.

          Attributes:

          Name Type Description children dict[str, bool]

          Gets the children of this permission.

          default PermissionDefault

          The default value of this permission.

          description str

          The brief description of this permission

          name str

          Gets the unique fully qualified name of this Permission.

          permissibles set[Permissible]

          Gets a set containing every Permissible that has this permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permission.children","title":"children property","text":"
          children: dict[str, bool]\n

          Gets the children of this permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permission.default","title":"default property writable","text":"
          default: PermissionDefault\n

          The default value of this permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permission.description","title":"description property writable","text":"
          description: str\n

          The brief description of this permission

          "},{"location":"reference/python/permissions/#endstone.permissions.Permission.name","title":"name property","text":"
          name: str\n

          Gets the unique fully qualified name of this Permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permission.permissibles","title":"permissibles property","text":"
          permissibles: set[Permissible]\n

          Gets a set containing every Permissible that has this permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permission.add_parent","title":"add_parent","text":"
          add_parent(name: str, value: bool) -> Permission\n

          Adds this permission to the specified parent permission.

          add_parent(perm: Permission, value: bool) -> None\n

          Adds this permission to the specified parent permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permission.recalculate_permissibles","title":"recalculate_permissibles","text":"
          recalculate_permissibles() -> None\n

          Recalculates all Permissibles that contain this permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachment","title":"PermissionAttachment","text":"
          PermissionAttachment(\n    plugin: Plugin, permissible: Permissible\n)\n

          Holds information about a permission attachment on a Permissible object

          Methods:

          Name Description remove

          Removes this attachment from its registered Permissible.

          set_permission unset_permission

          Attributes:

          Name Type Description permissible Permissible

          Gets the Permissible that this is attached to.

          permissions dict[str, bool]

          Gets a copy of all set permissions and values contained within this attachment.

          plugin Plugin

          Gets the plugin responsible for this attachment.

          removal_callback Callable[[PermissionAttachment], None]

          The callback to be called when this attachment is removed.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachment.permissible","title":"permissible property","text":"
          permissible: Permissible\n

          Gets the Permissible that this is attached to.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachment.permissions","title":"permissions property","text":"
          permissions: dict[str, bool]\n

          Gets a copy of all set permissions and values contained within this attachment.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachment.plugin","title":"plugin property","text":"
          plugin: Plugin\n

          Gets the plugin responsible for this attachment.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachment.removal_callback","title":"removal_callback property writable","text":"
          removal_callback: Callable[[PermissionAttachment], None]\n

          The callback to be called when this attachment is removed.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachment.remove","title":"remove","text":"
          remove() -> bool\n

          Removes this attachment from its registered Permissible.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachment.set_permission","title":"set_permission","text":"
          set_permission(name: str, value: bool) -> None\n

          Sets a permission to the given value, by its fully qualified name.

          set_permission(perm: Permission, value: bool) -> None\n

          Sets a permission to the given value.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachment.unset_permission","title":"unset_permission","text":"
          unset_permission(name: str) -> None\n

          Removes the specified permission from this attachment by name.

          unset_permission(perm: Permission) -> None\n

          Removes the specified permission from this attachment.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachmentInfo","title":"PermissionAttachmentInfo","text":"
          PermissionAttachmentInfo(\n    permissible: Permissible,\n    permission: str,\n    attachment: PermissionAttachment,\n    value: bool,\n)\n

          Holds information on a permission and which PermissionAttachment provides it

          Attributes:

          Name Type Description attachment PermissionAttachment

          Gets the attachment providing this permission.

          permissible Permissible

          Get the permissible this is attached to

          permission str

          Gets the permission being set

          value bool

          Gets the value of this permission

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachmentInfo.attachment","title":"attachment property","text":"
          attachment: PermissionAttachment\n

          Gets the attachment providing this permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachmentInfo.permissible","title":"permissible property","text":"
          permissible: Permissible\n

          Get the permissible this is attached to

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachmentInfo.permission","title":"permission property","text":"
          permission: str\n

          Gets the permission being set

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachmentInfo.value","title":"value property","text":"
          value: bool\n

          Gets the value of this permission

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionDefault","title":"PermissionDefault","text":"
          PermissionDefault(value: int)\n

          Represents the possible default values for permissions

          Attributes:

          Name Type Description FALSE PermissionDefault NOT_OP PermissionDefault NOT_OPERATOR PermissionDefault OP PermissionDefault OPERATOR PermissionDefault TRUE PermissionDefault name str value int"},{"location":"reference/python/permissions/#endstone.permissions.PermissionDefault.FALSE","title":"FALSE class-attribute","text":"
          FALSE: PermissionDefault\n
          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionDefault.NOT_OP","title":"NOT_OP class-attribute","text":"
          NOT_OP: PermissionDefault\n
          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionDefault.NOT_OPERATOR","title":"NOT_OPERATOR class-attribute","text":"
          NOT_OPERATOR: PermissionDefault\n
          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionDefault.OP","title":"OP class-attribute","text":"
          OP: PermissionDefault\n
          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionDefault.OPERATOR","title":"OPERATOR class-attribute","text":"
          OPERATOR: PermissionDefault\n
          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionDefault.TRUE","title":"TRUE class-attribute","text":"
          TRUE: PermissionDefault\n
          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionDefault.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionDefault.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/player/","title":"Player","text":""},{"location":"reference/python/player/#endstone.Player","title":"endstone.Player","text":"

          Bases: Mob

          Represents a player.

          Methods:

          Name Description close_form

          Closes the forms that are currently open for the player.

          give_exp

          Gives the player the amount of experience specified.

          give_exp_levels

          Gives the player the amount of experience levels specified.

          kick

          Kicks player with custom kick message.

          perform_command

          Makes the player perform the given command.

          reset_title

          Resets the title displayed to the player. This will clear the displayed title / subtitle and reset timings to their default values.

          send_form

          Sends a form to the player.

          send_packet

          Sends a packet to the player.

          send_popup

          Sends this player a popup message

          send_tip

          Sends this player a tip message

          send_title

          Sends a title and a subtitle message to the player. If they are empty strings, the display will be updated as such.

          send_toast

          Sends this player a toast notification.

          spawn_particle transfer

          Transfers the player to another server.

          update_commands

          Send the list of commands to the client.

          Attributes:

          Name Type Description address SocketAddress

          Gets the socket address of this player

          allow_flight bool

          If the Player is allowed to fly via jump key double-tap.

          device_id str

          Get the player's current device id.

          device_os str

          Get the player's current device's operation system (OS).

          exp_level int

          Gets or sets the players current experience level.

          exp_progress float

          Gets or sets the players current experience progress towards the next level.

          fly_speed float

          Gets or sets the current allowed speed that a client can fly.

          game_mode GameMode

          The player's current game mode.

          game_version str

          Get the player's current game version.

          inventory PlayerInventory

          Get the player's inventory.

          is_flying bool

          If the player is currently flying or not.

          locale str

          Get the player's current locale.

          ping int

          Gets the player's average ping in milliseconds.

          scoreboard Scoreboard

          Gets or sets the player's visible Scoreboard.

          skin Skin

          Get the player's skin.

          total_exp int

          Gets the players total experience points.

          unique_id UUID

          Returns the UUID of this player

          walk_speed float

          Gets or sets the current allowed speed that a client can walk.

          xuid str

          Returns the Xbox User ID (XUID) of this player

          "},{"location":"reference/python/player/#endstone.Player.address","title":"address property","text":"
          address: SocketAddress\n

          Gets the socket address of this player

          "},{"location":"reference/python/player/#endstone.Player.allow_flight","title":"allow_flight property writable","text":"
          allow_flight: bool\n

          If the Player is allowed to fly via jump key double-tap.

          "},{"location":"reference/python/player/#endstone.Player.device_id","title":"device_id property","text":"
          device_id: str\n

          Get the player's current device id.

          "},{"location":"reference/python/player/#endstone.Player.device_os","title":"device_os property","text":"
          device_os: str\n

          Get the player's current device's operation system (OS).

          "},{"location":"reference/python/player/#endstone.Player.exp_level","title":"exp_level property writable","text":"
          exp_level: int\n

          Gets or sets the players current experience level.

          "},{"location":"reference/python/player/#endstone.Player.exp_progress","title":"exp_progress property writable","text":"
          exp_progress: float\n

          Gets or sets the players current experience progress towards the next level.

          "},{"location":"reference/python/player/#endstone.Player.fly_speed","title":"fly_speed property writable","text":"
          fly_speed: float\n

          Gets or sets the current allowed speed that a client can fly.

          "},{"location":"reference/python/player/#endstone.Player.game_mode","title":"game_mode property writable","text":"
          game_mode: GameMode\n

          The player's current game mode.

          "},{"location":"reference/python/player/#endstone.Player.game_version","title":"game_version property","text":"
          game_version: str\n

          Get the player's current game version.

          "},{"location":"reference/python/player/#endstone.Player.inventory","title":"inventory property","text":"
          inventory: PlayerInventory\n

          Get the player's inventory.

          "},{"location":"reference/python/player/#endstone.Player.is_flying","title":"is_flying property writable","text":"
          is_flying: bool\n

          If the player is currently flying or not.

          "},{"location":"reference/python/player/#endstone.Player.locale","title":"locale property","text":"
          locale: str\n

          Get the player's current locale.

          "},{"location":"reference/python/player/#endstone.Player.ping","title":"ping property","text":"
          ping: int\n

          Gets the player's average ping in milliseconds.

          "},{"location":"reference/python/player/#endstone.Player.scoreboard","title":"scoreboard property writable","text":"
          scoreboard: Scoreboard\n

          Gets or sets the player's visible Scoreboard.

          "},{"location":"reference/python/player/#endstone.Player.skin","title":"skin property","text":"
          skin: Skin\n

          Get the player's skin.

          "},{"location":"reference/python/player/#endstone.Player.total_exp","title":"total_exp property","text":"
          total_exp: int\n

          Gets the players total experience points.

          "},{"location":"reference/python/player/#endstone.Player.unique_id","title":"unique_id property","text":"
          unique_id: UUID\n

          Returns the UUID of this player

          "},{"location":"reference/python/player/#endstone.Player.walk_speed","title":"walk_speed property writable","text":"
          walk_speed: float\n

          Gets or sets the current allowed speed that a client can walk.

          "},{"location":"reference/python/player/#endstone.Player.xuid","title":"xuid property","text":"
          xuid: str\n

          Returns the Xbox User ID (XUID) of this player

          "},{"location":"reference/python/player/#endstone.Player.close_form","title":"close_form","text":"
          close_form() -> None\n

          Closes the forms that are currently open for the player.

          "},{"location":"reference/python/player/#endstone.Player.give_exp","title":"give_exp","text":"
          give_exp(amount: int) -> None\n

          Gives the player the amount of experience specified.

          "},{"location":"reference/python/player/#endstone.Player.give_exp_levels","title":"give_exp_levels","text":"
          give_exp_levels(amount: int) -> None\n

          Gives the player the amount of experience levels specified.

          "},{"location":"reference/python/player/#endstone.Player.kick","title":"kick","text":"
          kick(message: str) -> None\n

          Kicks player with custom kick message.

          "},{"location":"reference/python/player/#endstone.Player.perform_command","title":"perform_command","text":"
          perform_command(command: str) -> bool\n

          Makes the player perform the given command.

          "},{"location":"reference/python/player/#endstone.Player.reset_title","title":"reset_title","text":"
          reset_title() -> None\n

          Resets the title displayed to the player. This will clear the displayed title / subtitle and reset timings to their default values.

          "},{"location":"reference/python/player/#endstone.Player.send_form","title":"send_form","text":"
          send_form(\n    form: MessageForm | ActionForm | ModalForm,\n) -> None\n

          Sends a form to the player.

          "},{"location":"reference/python/player/#endstone.Player.send_packet","title":"send_packet","text":"
          send_packet(packet: Packet) -> None\n

          Sends a packet to the player.

          "},{"location":"reference/python/player/#endstone.Player.send_popup","title":"send_popup","text":"
          send_popup(message: str) -> None\n

          Sends this player a popup message

          "},{"location":"reference/python/player/#endstone.Player.send_tip","title":"send_tip","text":"
          send_tip(message: str) -> None\n

          Sends this player a tip message

          "},{"location":"reference/python/player/#endstone.Player.send_title","title":"send_title","text":"
          send_title(\n    title: str,\n    subtitle: str,\n    fade_in: int = 10,\n    stay: int = 70,\n    fade_out: int = 20,\n) -> None\n

          Sends a title and a subtitle message to the player. If they are empty strings, the display will be updated as such.

          "},{"location":"reference/python/player/#endstone.Player.send_toast","title":"send_toast","text":"
          send_toast(title: str, content: str) -> None\n

          Sends this player a toast notification.

          "},{"location":"reference/python/player/#endstone.Player.spawn_particle","title":"spawn_particle","text":"
          spawn_particle(\n    name: str,\n    location: Location,\n    molang_variables_json: str | None = None,\n) -> None\n

          Spawns the particle at the target location.

          spawn_particle(\n    name: str,\n    x: float,\n    y: float,\n    z: float,\n    molang_variables_json: str | None = None,\n) -> None\n

          Spawns the particle at the target location.

          "},{"location":"reference/python/player/#endstone.Player.transfer","title":"transfer","text":"
          transfer(host: str, port: int = 19132) -> None\n

          Transfers the player to another server.

          "},{"location":"reference/python/player/#endstone.Player.update_commands","title":"update_commands","text":"
          update_commands() -> None\n

          Send the list of commands to the client.

          "},{"location":"reference/python/plugin/","title":"Plugin","text":""},{"location":"reference/python/plugin/#endstone.plugin","title":"endstone.plugin","text":"

          Modules:

          Name Description endstone_python

          Classes:

          Name Description Plugin PluginCommand

          Represents a Command belonging to a Plugin

          PluginDescription

          Represents the basic information about a plugin that the plugin loader needs to know.

          PluginLoadOrder

          Represents the order in which a plugin should be initialized and enabled.

          PluginLoader

          Represents a plugin loader, which handles direct access to specific types of plugins

          PluginManager

          Represents a plugin manager that handles all plugins from the Server

          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin","title":"Plugin","text":"
          Plugin()\n

          Bases: Plugin

          Methods:

          Name Description register_events reload_config save_config save_default_config save_resources

          Attributes:

          Name Type Description api_version authors commands config dict contributors default_permission depend description load load_before name permissions prefix provides soft_depend version website"},{"location":"reference/python/plugin/#endstone.plugin.Plugin.api_version","title":"api_version class-attribute instance-attribute","text":"
          api_version = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.authors","title":"authors class-attribute instance-attribute","text":"
          authors = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.commands","title":"commands class-attribute instance-attribute","text":"
          commands = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.config","title":"config property","text":"
          config: dict\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.contributors","title":"contributors class-attribute instance-attribute","text":"
          contributors = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.default_permission","title":"default_permission class-attribute instance-attribute","text":"
          default_permission = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.depend","title":"depend class-attribute instance-attribute","text":"
          depend = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.description","title":"description class-attribute instance-attribute","text":"
          description = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.load","title":"load class-attribute instance-attribute","text":"
          load = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.load_before","title":"load_before class-attribute instance-attribute","text":"
          load_before = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.name","title":"name class-attribute instance-attribute","text":"
          name = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.permissions","title":"permissions class-attribute instance-attribute","text":"
          permissions = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.prefix","title":"prefix class-attribute instance-attribute","text":"
          prefix = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.provides","title":"provides class-attribute instance-attribute","text":"
          provides = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.soft_depend","title":"soft_depend class-attribute instance-attribute","text":"
          soft_depend = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.version","title":"version class-attribute instance-attribute","text":"
          version = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.website","title":"website class-attribute instance-attribute","text":"
          website = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.register_events","title":"register_events","text":"
          register_events(listener: object) -> None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.reload_config","title":"reload_config","text":"
          reload_config() -> dict\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.save_config","title":"save_config","text":"
          save_config() -> None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.save_default_config","title":"save_default_config","text":"
          save_default_config() -> None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.save_resources","title":"save_resources","text":"
          save_resources(path: str, replace: bool = False) -> None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.PluginCommand","title":"PluginCommand","text":"
          PluginCommand(\n    name: str,\n    description: str | None = None,\n    usages: list[str] | None = None,\n    aliases: list[str] | None = None,\n    permissions: list[str] | None = None,\n    *args,\n    **kwargs\n)\n

          Bases: Command

          Represents a Command belonging to a Plugin

          Attributes:

          Name Type Description executor CommandExecutor

          The CommandExecutor to run when parsing this command

          plugin Plugin

          The owner of this PluginCommand

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginCommand.executor","title":"executor property writable","text":"
          executor: CommandExecutor\n

          The CommandExecutor to run when parsing this command

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginCommand.plugin","title":"plugin property","text":"
          plugin: Plugin\n

          The owner of this PluginCommand

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription","title":"PluginDescription","text":"
          PluginDescription(\n    name: str,\n    version: str,\n    description: str | None = None,\n    load: PluginLoadOrder | None = None,\n    authors: list[str] | None = None,\n    contributors: list[str] | None = None,\n    website: str | None = None,\n    prefix: str | None = None,\n    provides: list[str] | None = None,\n    depend: list[str] | None = None,\n    soft_depend: list[str] | None = None,\n    load_before: list[str] | None = None,\n    default_permission: PermissionDefault | None = None,\n    commands: list[Command] | None = None,\n    permissions: list[Permission] | None = None,\n    *args,\n    **kwargs\n)\n

          Represents the basic information about a plugin that the plugin loader needs to know.

          Attributes:

          Name Type Description api_version str

          Gives the API version which this plugin is designed to support.

          authors list[str]

          Gives the list of authors for the plugin.

          commands list[Command]

          Gives the list of commands the plugin will register at runtime.

          contributors list[str]

          Gives the list of contributors for the plugin.

          default_permission PermissionDefault

          Gives the default value of permissions registered for the plugin.

          depend list[str]

          Gives a list of other plugins that the plugin requires.

          description str

          Gives a human-friendly description of the functionality the plugin provides.

          full_name str

          Returns the name of a plugin, including the version.

          load PluginLoadOrder

          Gives the phase of server startup that the plugin should be loaded.

          load_before list[str]

          Gets the list of plugins that should consider this plugin a soft-dependency.

          name str

          Gives the name of the plugin. This name is a unique identifier for plugins.

          permissions list[Permission]

          Gives the list of permissions the plugin will register at runtime, immediately proceeding enabling.

          prefix str

          Gives the token to prefix plugin-specific logging messages with.

          provides list[str]

          Gives the list of other plugin APIs which this plugin provides. These are usable for other plugins to depend on.

          soft_depend list[str]

          Gives a list of other plugins that the plugin requires for full functionality.

          version str

          Gives the version of the plugin.

          website str

          Gives the plugin's or plugin's author's website.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.api_version","title":"api_version property","text":"
          api_version: str\n

          Gives the API version which this plugin is designed to support.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.authors","title":"authors property","text":"
          authors: list[str]\n

          Gives the list of authors for the plugin.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.commands","title":"commands property","text":"
          commands: list[Command]\n

          Gives the list of commands the plugin will register at runtime.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.contributors","title":"contributors property","text":"
          contributors: list[str]\n

          Gives the list of contributors for the plugin.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.default_permission","title":"default_permission property","text":"
          default_permission: PermissionDefault\n

          Gives the default value of permissions registered for the plugin.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.depend","title":"depend property","text":"
          depend: list[str]\n

          Gives a list of other plugins that the plugin requires.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.description","title":"description property","text":"
          description: str\n

          Gives a human-friendly description of the functionality the plugin provides.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.full_name","title":"full_name property","text":"
          full_name: str\n

          Returns the name of a plugin, including the version.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.load","title":"load property","text":"
          load: PluginLoadOrder\n

          Gives the phase of server startup that the plugin should be loaded.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.load_before","title":"load_before property","text":"
          load_before: list[str]\n

          Gets the list of plugins that should consider this plugin a soft-dependency.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.name","title":"name property","text":"
          name: str\n

          Gives the name of the plugin. This name is a unique identifier for plugins.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.permissions","title":"permissions property","text":"
          permissions: list[Permission]\n

          Gives the list of permissions the plugin will register at runtime, immediately proceeding enabling.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.prefix","title":"prefix property","text":"
          prefix: str\n

          Gives the token to prefix plugin-specific logging messages with.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.provides","title":"provides property","text":"
          provides: list[str]\n

          Gives the list of other plugin APIs which this plugin provides. These are usable for other plugins to depend on.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.soft_depend","title":"soft_depend property","text":"
          soft_depend: list[str]\n

          Gives a list of other plugins that the plugin requires for full functionality.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.version","title":"version property","text":"
          version: str\n

          Gives the version of the plugin.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.website","title":"website property","text":"
          website: str\n

          Gives the plugin's or plugin's author's website.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginLoadOrder","title":"PluginLoadOrder","text":"
          PluginLoadOrder(value: int)\n

          Represents the order in which a plugin should be initialized and enabled.

          Attributes:

          Name Type Description POSTWORLD PluginLoadOrder STARTUP PluginLoadOrder name str value int"},{"location":"reference/python/plugin/#endstone.plugin.PluginLoadOrder.POSTWORLD","title":"POSTWORLD class-attribute","text":"
          POSTWORLD: PluginLoadOrder\n
          "},{"location":"reference/python/plugin/#endstone.plugin.PluginLoadOrder.STARTUP","title":"STARTUP class-attribute","text":"
          STARTUP: PluginLoadOrder\n
          "},{"location":"reference/python/plugin/#endstone.plugin.PluginLoadOrder.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/plugin/#endstone.plugin.PluginLoadOrder.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/plugin/#endstone.plugin.PluginLoader","title":"PluginLoader","text":"
          PluginLoader(server: Server)\n

          Represents a plugin loader, which handles direct access to specific types of plugins

          Methods:

          Name Description disable_plugin

          Disables the specified plugin

          enable_plugin

          Enables the specified plugin

          load_plugins

          Loads the plugin contained within the specified directory

          Attributes:

          Name Type Description server Server

          Retrieves the Server object associated with the PluginLoader.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginLoader.server","title":"server property","text":"
          server: Server\n

          Retrieves the Server object associated with the PluginLoader.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginLoader.disable_plugin","title":"disable_plugin","text":"
          disable_plugin(plugin: Plugin) -> None\n

          Disables the specified plugin

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginLoader.enable_plugin","title":"enable_plugin","text":"
          enable_plugin(plugin: Plugin) -> None\n

          Enables the specified plugin

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginLoader.load_plugins","title":"load_plugins","text":"
          load_plugins(directory: str) -> list[Plugin]\n

          Loads the plugin contained within the specified directory

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager","title":"PluginManager","text":"

          Represents a plugin manager that handles all plugins from the Server

          Methods:

          Name Description call_event

          Calls an event which will be passed to plugins.

          clear_plugins

          Disables and removes all plugins

          disable_plugin

          Disables the specified plugin

          disable_plugins

          Disables all the loaded plugins

          enable_plugin

          Enables the specified plugin

          enable_plugins

          Enable all the loaded plugins

          get_default_perm_subscriptions

          Gets a set containing all subscribed Permissibles to the given default list, by op status.

          get_default_permissions

          Gets the default permissions for the given op status.

          get_permission

          Gets a Permission from its fully qualified name.

          get_permission_subscriptions

          Gets a set containing all subscribed Permissibles to the given permission.

          get_plugin

          Checks if the given plugin is loaded and returns it when applicable.

          is_plugin_enabled load_plugins

          Loads the plugin contained within the specified directory

          recalculate_permission_defaults

          Recalculates the defaults for the given Permission.

          register_event

          Registers the given event

          remove_permission subscribe_to_default_perms

          Subscribes to the given Default permissions by operator status.

          subscribe_to_permission

          Subscribes the given Permissible for information about the requested Permission.

          unsubscribe_from_default_perms

          Unsubscribes from the given Default permissions by operator status.

          unsubscribe_from_permission

          Unsubscribes the given Permissible for information about the requested Permission.

          Attributes:

          Name Type Description permissions set[Permission]

          Gets a set of all registered permissions.

          plugins list[Plugin]

          Gets a list of all currently loaded plugins

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.permissions","title":"permissions property","text":"
          permissions: set[Permission]\n

          Gets a set of all registered permissions.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.plugins","title":"plugins property","text":"
          plugins: list[Plugin]\n

          Gets a list of all currently loaded plugins

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.call_event","title":"call_event","text":"
          call_event(event: Event) -> None\n

          Calls an event which will be passed to plugins.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.clear_plugins","title":"clear_plugins","text":"
          clear_plugins() -> None\n

          Disables and removes all plugins

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.disable_plugin","title":"disable_plugin","text":"
          disable_plugin(plugin: Plugin) -> None\n

          Disables the specified plugin

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.disable_plugins","title":"disable_plugins","text":"
          disable_plugins() -> None\n

          Disables all the loaded plugins

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.enable_plugin","title":"enable_plugin","text":"
          enable_plugin(plugin: Plugin) -> None\n

          Enables the specified plugin

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.enable_plugins","title":"enable_plugins","text":"
          enable_plugins() -> None\n

          Enable all the loaded plugins

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.get_default_perm_subscriptions","title":"get_default_perm_subscriptions","text":"
          get_default_perm_subscriptions(\n    op: bool,\n) -> set[Permissible]\n

          Gets a set containing all subscribed Permissibles to the given default list, by op status.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.get_default_permissions","title":"get_default_permissions","text":"
          get_default_permissions(op: bool) -> set[Permission]\n

          Gets the default permissions for the given op status.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.get_permission","title":"get_permission","text":"
          get_permission(name: str) -> Permission\n

          Gets a Permission from its fully qualified name.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.get_permission_subscriptions","title":"get_permission_subscriptions","text":"
          get_permission_subscriptions(\n    permission: str,\n) -> set[Permissible]\n

          Gets a set containing all subscribed Permissibles to the given permission.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.get_plugin","title":"get_plugin","text":"
          get_plugin(name: str) -> Plugin\n

          Checks if the given plugin is loaded and returns it when applicable.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.is_plugin_enabled","title":"is_plugin_enabled","text":"
          is_plugin_enabled(plugin: str) -> bool\n

          Checks if the given plugin is enabled or not

          is_plugin_enabled(plugin: Plugin) -> bool\n

          Checks if the given plugin is enabled or not

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.load_plugins","title":"load_plugins","text":"
          load_plugins(directory: str) -> list[Plugin]\n

          Loads the plugin contained within the specified directory

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.recalculate_permission_defaults","title":"recalculate_permission_defaults","text":"
          recalculate_permission_defaults(perm: Permission) -> None\n

          Recalculates the defaults for the given Permission.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.register_event","title":"register_event","text":"
          register_event(\n    name: str,\n    executor: Callable[[Event], None],\n    priority: EventPriority,\n    plugin: Plugin,\n    ignore_cancelled: bool,\n) -> None\n

          Registers the given event

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.remove_permission","title":"remove_permission","text":"
          remove_permission(perm: Permission) -> None\n

          Removes a Permission registration from this plugin manager by permission object.

          remove_permission(name: str) -> None\n

          Removes a Permission registration from this plugin manager by name.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.subscribe_to_default_perms","title":"subscribe_to_default_perms","text":"
          subscribe_to_default_perms(\n    op: bool, permissible: Permissible\n) -> None\n

          Subscribes to the given Default permissions by operator status.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.subscribe_to_permission","title":"subscribe_to_permission","text":"
          subscribe_to_permission(\n    permission: str, permissible: Permissible\n) -> None\n

          Subscribes the given Permissible for information about the requested Permission.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.unsubscribe_from_default_perms","title":"unsubscribe_from_default_perms","text":"
          unsubscribe_from_default_perms(\n    op: bool, permissible: Permissible\n) -> None\n

          Unsubscribes from the given Default permissions by operator status.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.unsubscribe_from_permission","title":"unsubscribe_from_permission","text":"
          unsubscribe_from_permission(\n    permission: str, permissible: Permissible\n) -> None\n

          Unsubscribes the given Permissible for information about the requested Permission.

          "},{"location":"reference/python/scheduler/","title":"Scheduler","text":""},{"location":"reference/python/scheduler/#endstone.scheduler","title":"endstone.scheduler","text":"

          Classes:

          Name Description Scheduler

          Represents a scheduler that executes various tasks

          Task

          Represents a task being executed by the scheduler

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Scheduler","title":"Scheduler","text":"

          Represents a scheduler that executes various tasks

          Methods:

          Name Description cancel_task

          Removes task from scheduler.

          cancel_tasks

          Removes all tasks associated with a particular plugin from the scheduler.

          get_pending_tasks

          Returns a vector of all pending tasks.

          is_queued

          Check if the task queued to be run later.

          is_running

          Check if the task currently running.

          run_task

          Returns a task that will be executed synchronously

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Scheduler.cancel_task","title":"cancel_task","text":"
          cancel_task(id: int) -> None\n

          Removes task from scheduler.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Scheduler.cancel_tasks","title":"cancel_tasks","text":"
          cancel_tasks(plugin: Plugin) -> None\n

          Removes all tasks associated with a particular plugin from the scheduler.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Scheduler.get_pending_tasks","title":"get_pending_tasks","text":"
          get_pending_tasks() -> list[Task]\n

          Returns a vector of all pending tasks.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Scheduler.is_queued","title":"is_queued","text":"
          is_queued(id: int) -> bool\n

          Check if the task queued to be run later.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Scheduler.is_running","title":"is_running","text":"
          is_running(id: int) -> bool\n

          Check if the task currently running.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Scheduler.run_task","title":"run_task","text":"
          run_task(\n    plugin: Plugin,\n    task: Callable[[], None],\n    delay: int = 0,\n    period: int = 0,\n) -> Task\n

          Returns a task that will be executed synchronously

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Task","title":"Task","text":"

          Represents a task being executed by the scheduler

          Methods:

          Name Description cancel

          Attempts to cancel this task.

          Attributes:

          Name Type Description is_cancelled bool

          Returns true if the task has been cancelled.

          is_sync bool

          Returns true if the task is run by server thread.

          owner Plugin

          Returns the Plugin that owns the task.

          task_id int

          Returns the task id.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Task.is_cancelled","title":"is_cancelled property","text":"
          is_cancelled: bool\n

          Returns true if the task has been cancelled.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Task.is_sync","title":"is_sync property","text":"
          is_sync: bool\n

          Returns true if the task is run by server thread.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Task.owner","title":"owner property","text":"
          owner: Plugin\n

          Returns the Plugin that owns the task.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Task.task_id","title":"task_id property","text":"
          task_id: int\n

          Returns the task id.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Task.cancel","title":"cancel","text":"
          cancel() -> None\n

          Attempts to cancel this task.

          "},{"location":"reference/python/scoreboard/","title":"Scoreboard","text":""},{"location":"reference/python/scoreboard/#endstone.scoreboard","title":"endstone.scoreboard","text":"

          Classes:

          Name Description Criteria

          Represents a scoreboard criteria.

          DisplaySlot

          Locations for displaying objectives to the player

          Objective

          Represents an objective on a scoreboard that can show scores specific to entries.

          ObjectiveSortOrder

          Represents the sort order of objectives on a DisplaySlot.

          Score

          Represents a score for an objective on a scoreboard.

          Scoreboard

          Represents a scoreboard

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Criteria","title":"Criteria","text":"

          Represents a scoreboard criteria.

          Classes:

          Name Description Type

          Represents a scoreboard criteria.

          Attributes:

          Name Type Description DUMMY Type default_render_type RenderType is_read_only bool name str"},{"location":"reference/python/scoreboard/#endstone.scoreboard.Criteria.DUMMY","title":"DUMMY class-attribute","text":"
          DUMMY: Type\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Criteria.default_render_type","title":"default_render_type property","text":"
          default_render_type: RenderType\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Criteria.is_read_only","title":"is_read_only property","text":"
          is_read_only: bool\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Criteria.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Criteria.Type","title":"Type","text":"
          Type(value: int)\n

          Represents a scoreboard criteria.

          Attributes:

          Name Type Description DUMMY Type name str value int"},{"location":"reference/python/scoreboard/#endstone.scoreboard.Criteria.Type.DUMMY","title":"DUMMY class-attribute","text":"
          DUMMY: Type\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Criteria.Type.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Criteria.Type.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.DisplaySlot","title":"DisplaySlot","text":"
          DisplaySlot(value: int)\n

          Locations for displaying objectives to the player

          Attributes:

          Name Type Description BELOW_NAME DisplaySlot PLAYER_LIST DisplaySlot SIDE_BAR DisplaySlot name str value int"},{"location":"reference/python/scoreboard/#endstone.scoreboard.DisplaySlot.BELOW_NAME","title":"BELOW_NAME class-attribute","text":"
          BELOW_NAME: DisplaySlot\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.DisplaySlot.PLAYER_LIST","title":"PLAYER_LIST class-attribute","text":"
          PLAYER_LIST: DisplaySlot\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.DisplaySlot.SIDE_BAR","title":"SIDE_BAR class-attribute","text":"
          SIDE_BAR: DisplaySlot\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.DisplaySlot.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.DisplaySlot.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective","title":"Objective","text":"

          Represents an objective on a scoreboard that can show scores specific to entries.

          Methods:

          Name Description get_score

          Gets an entry's Score for this objective

          set_display

          Sets the display slot and sort order for this objective. This will remove it from any other display slot.

          unregister

          Unregisters this objective from the associated Scoreboard.

          Attributes:

          Name Type Description criteria Criteria

          Gets the criteria this objective tracks

          display_name str

          Gets or sets the name displayed to players for this objective

          display_slot DisplaySlot | None

          Gets the display slot this objective is displayed at

          is_displayed bool

          Gets if the objective is currently displayed in a slot.

          is_modifiable bool

          Gets if the objective's scores can be modified directly by a plugin

          name str

          Gets the name of this Objective

          render_type RenderType

          Gets and sets the manner in which this objective will be rendered.

          scoreboard Scoreboard

          Gets the scoreboard to which this objective is attached

          sort_order ObjectiveSortOrder | None

          Gets and sets the sort order for this objective

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.criteria","title":"criteria property","text":"
          criteria: Criteria\n

          Gets the criteria this objective tracks

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.display_name","title":"display_name property writable","text":"
          display_name: str\n

          Gets or sets the name displayed to players for this objective

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.display_slot","title":"display_slot property","text":"
          display_slot: DisplaySlot | None\n

          Gets the display slot this objective is displayed at

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.is_displayed","title":"is_displayed property","text":"
          is_displayed: bool\n

          Gets if the objective is currently displayed in a slot.

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.is_modifiable","title":"is_modifiable property","text":"
          is_modifiable: bool\n

          Gets if the objective's scores can be modified directly by a plugin

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.name","title":"name property","text":"
          name: str\n

          Gets the name of this Objective

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.render_type","title":"render_type property writable","text":"
          render_type: RenderType\n

          Gets and sets the manner in which this objective will be rendered.

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.scoreboard","title":"scoreboard property","text":"
          scoreboard: Scoreboard\n

          Gets the scoreboard to which this objective is attached

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.sort_order","title":"sort_order property","text":"
          sort_order: ObjectiveSortOrder | None\n

          Gets and sets the sort order for this objective

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.get_score","title":"get_score","text":"
          get_score(entry: Player | Actor | str) -> Score\n

          Gets an entry's Score for this objective

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.set_display","title":"set_display","text":"
          set_display(\n    slot: DisplaySlot | None,\n    order: ObjectiveSortOrder | None = None,\n) -> None\n

          Sets the display slot and sort order for this objective. This will remove it from any other display slot.

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.unregister","title":"unregister","text":"
          unregister() -> None\n

          Unregisters this objective from the associated Scoreboard.

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.ObjectiveSortOrder","title":"ObjectiveSortOrder","text":"
          ObjectiveSortOrder(value: int)\n

          Represents the sort order of objectives on a DisplaySlot.

          Attributes:

          Name Type Description ASCENDING ObjectiveSortOrder DESCENDING ObjectiveSortOrder name str value int"},{"location":"reference/python/scoreboard/#endstone.scoreboard.ObjectiveSortOrder.ASCENDING","title":"ASCENDING class-attribute","text":"
          ASCENDING: ObjectiveSortOrder\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.ObjectiveSortOrder.DESCENDING","title":"DESCENDING class-attribute","text":"
          DESCENDING: ObjectiveSortOrder\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.ObjectiveSortOrder.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.ObjectiveSortOrder.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Score","title":"Score","text":"

          Represents a score for an objective on a scoreboard.

          Attributes:

          Name Type Description entry Player | Actor | str

          Gets the entry being tracked by this Score

          is_score_set bool

          Shows if this score has been set at any point in time.

          objective Objective

          Gets the Objective being tracked by this Score.

          scoreboard Scoreboard

          Gets the scoreboard for the associated objective.

          value int

          Gets or sets the current score.

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Score.entry","title":"entry property","text":"
          entry: Player | Actor | str\n

          Gets the entry being tracked by this Score

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Score.is_score_set","title":"is_score_set property","text":"
          is_score_set: bool\n

          Shows if this score has been set at any point in time.

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Score.objective","title":"objective property","text":"
          objective: Objective\n

          Gets the Objective being tracked by this Score.

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Score.scoreboard","title":"scoreboard property","text":"
          scoreboard: Scoreboard\n

          Gets the scoreboard for the associated objective.

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Score.value","title":"value property writable","text":"
          value: int\n

          Gets or sets the current score.

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Scoreboard","title":"Scoreboard","text":"

          Represents a scoreboard

          Methods:

          Name Description add_objective

          Registers an Objective on this Scoreboard with a name displayed to players

          clear_slot

          Clears any objective in the specified slot

          get_objective get_objectives_by_criteria

          Gets all Objectives of a Criteria on the Scoreboard

          get_scores

          Gets all scores for an entry on this Scoreboard

          reset_scores

          Removes all scores for an entry on this Scoreboard

          Attributes:

          Name Type Description entries list[Player | Actor | str]

          Gets all entries tracked by this Scoreboard

          objectives list[Objective]

          Gets all Objectives on this Scoreboard

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Scoreboard.entries","title":"entries property","text":"
          entries: list[Player | Actor | str]\n

          Gets all entries tracked by this Scoreboard

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Scoreboard.objectives","title":"objectives property","text":"
          objectives: list[Objective]\n

          Gets all Objectives on this Scoreboard

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Scoreboard.add_objective","title":"add_objective","text":"
          add_objective(\n    name: str,\n    criteria: Type,\n    display_name: str | None = None,\n    render_type: RenderType = INTEGER,\n) -> Objective\n

          Registers an Objective on this Scoreboard with a name displayed to players

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Scoreboard.clear_slot","title":"clear_slot","text":"
          clear_slot(slot: DisplaySlot) -> None\n

          Clears any objective in the specified slot

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Scoreboard.get_objective","title":"get_objective","text":"
          get_objective(name: str) -> Objective\n

          Gets an Objective on this Scoreboard by name

          get_objective(slot: DisplaySlot) -> Objective\n

          Gets the Objective currently displayed in a DisplaySlot on this Scoreboard

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Scoreboard.get_objectives_by_criteria","title":"get_objectives_by_criteria","text":"
          get_objectives_by_criteria(\n    criteria: Type,\n) -> list[Objective]\n

          Gets all Objectives of a Criteria on the Scoreboard

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Scoreboard.get_scores","title":"get_scores","text":"
          get_scores(entry: Player | Actor | str) -> list[Score]\n

          Gets all scores for an entry on this Scoreboard

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Scoreboard.reset_scores","title":"reset_scores","text":"
          reset_scores(entry: Player | Actor | str) -> None\n

          Removes all scores for an entry on this Scoreboard

          "},{"location":"reference/python/server/","title":"Server","text":""},{"location":"reference/python/server/#endstone.Server","title":"endstone.Server","text":"

          Represents a server implementation.

          Methods:

          Name Description broadcast

          Broadcasts the specified message to every user with the given permission name.

          broadcast_message

          Broadcasts the specified message to every user with permission endstone.broadcast.user

          create_block_data

          Creates a new BlockData instance for the specified block type, with all properties initialized to defaults, except for those provided.

          create_boss_bar

          Creates a boss bar instance to display to players. The progress defaults to 1.0.

          create_scoreboard

          Creates a new Scoreboard to be tracked by the server.

          dispatch_command

          Dispatches a command on this server, and executes it if found.

          get_player get_plugin_command

          Gets a PluginCommand with the given name or alias.

          reload

          Reloads the server configuration, functions, scripts and plugins.

          reload_data

          Reload only the Minecraft data for the server.

          shutdown

          Shutdowns the server, stopping everything.

          Attributes:

          Name Type Description average_mspt float

          Gets the average milliseconds per tick (MSPT).

          average_tick_usage float

          Gets the average tick usage of the server.

          average_tps float

          Gets the average ticks per second (TPS).

          command_sender ConsoleCommandSender

          Gets a CommandSender for this server.

          current_mspt float

          Gets the current milliseconds per tick (MSPT).

          current_tick_usage float

          Gets the current tick usage of the server.

          current_tps float

          Gets the current ticks per second (TPS).

          language Language

          Gets the current language interface used by the server.

          level Level

          Gets the server level.

          logger Logger

          Returns the primary logger associated with this server instance.

          max_players int

          The maximum amount of players which can login to this server.

          minecraft_version str

          Gets the Minecraft version that this server is running.

          name str

          Gets the name of this server implementation.

          online_mode bool

          Gets whether the Server is in online mode or not.

          online_players list[Player]

          Gets a list of all currently online players.

          plugin_manager PluginManager

          Gets the plugin manager for interfacing with plugins.

          scheduler Scheduler

          Gets the scheduler for managing scheduled events.

          scoreboard Scoreboard

          Gets the primary Scoreboard controlled by the server.

          start_time datetime

          Gets the start time of the server.

          version str

          Gets the version of this server implementation.

          "},{"location":"reference/python/server/#endstone.Server.average_mspt","title":"average_mspt property","text":"
          average_mspt: float\n

          Gets the average milliseconds per tick (MSPT).

          "},{"location":"reference/python/server/#endstone.Server.average_tick_usage","title":"average_tick_usage property","text":"
          average_tick_usage: float\n

          Gets the average tick usage of the server.

          "},{"location":"reference/python/server/#endstone.Server.average_tps","title":"average_tps property","text":"
          average_tps: float\n

          Gets the average ticks per second (TPS).

          "},{"location":"reference/python/server/#endstone.Server.command_sender","title":"command_sender property","text":"
          command_sender: ConsoleCommandSender\n

          Gets a CommandSender for this server.

          "},{"location":"reference/python/server/#endstone.Server.current_mspt","title":"current_mspt property","text":"
          current_mspt: float\n

          Gets the current milliseconds per tick (MSPT).

          "},{"location":"reference/python/server/#endstone.Server.current_tick_usage","title":"current_tick_usage property","text":"
          current_tick_usage: float\n

          Gets the current tick usage of the server.

          "},{"location":"reference/python/server/#endstone.Server.current_tps","title":"current_tps property","text":"
          current_tps: float\n

          Gets the current ticks per second (TPS).

          "},{"location":"reference/python/server/#endstone.Server.language","title":"language property","text":"
          language: Language\n

          Gets the current language interface used by the server.

          "},{"location":"reference/python/server/#endstone.Server.level","title":"level property","text":"
          level: Level\n

          Gets the server level.

          "},{"location":"reference/python/server/#endstone.Server.logger","title":"logger property","text":"
          logger: Logger\n

          Returns the primary logger associated with this server instance.

          "},{"location":"reference/python/server/#endstone.Server.max_players","title":"max_players property writable","text":"
          max_players: int\n

          The maximum amount of players which can login to this server.

          "},{"location":"reference/python/server/#endstone.Server.minecraft_version","title":"minecraft_version property","text":"
          minecraft_version: str\n

          Gets the Minecraft version that this server is running.

          "},{"location":"reference/python/server/#endstone.Server.name","title":"name property","text":"
          name: str\n

          Gets the name of this server implementation.

          "},{"location":"reference/python/server/#endstone.Server.online_mode","title":"online_mode property","text":"
          online_mode: bool\n

          Gets whether the Server is in online mode or not.

          "},{"location":"reference/python/server/#endstone.Server.online_players","title":"online_players property","text":"
          online_players: list[Player]\n

          Gets a list of all currently online players.

          "},{"location":"reference/python/server/#endstone.Server.plugin_manager","title":"plugin_manager property","text":"
          plugin_manager: PluginManager\n

          Gets the plugin manager for interfacing with plugins.

          "},{"location":"reference/python/server/#endstone.Server.scheduler","title":"scheduler property","text":"
          scheduler: Scheduler\n

          Gets the scheduler for managing scheduled events.

          "},{"location":"reference/python/server/#endstone.Server.scoreboard","title":"scoreboard property","text":"
          scoreboard: Scoreboard\n

          Gets the primary Scoreboard controlled by the server.

          "},{"location":"reference/python/server/#endstone.Server.start_time","title":"start_time property","text":"
          start_time: datetime\n

          Gets the start time of the server.

          "},{"location":"reference/python/server/#endstone.Server.version","title":"version property","text":"
          version: str\n

          Gets the version of this server implementation.

          "},{"location":"reference/python/server/#endstone.Server.broadcast","title":"broadcast","text":"
          broadcast(\n    message: str | Translatable, permission: str\n) -> None\n

          Broadcasts the specified message to every user with the given permission name.

          "},{"location":"reference/python/server/#endstone.Server.broadcast_message","title":"broadcast_message","text":"
          broadcast_message(message: str | Translatable) -> None\n

          Broadcasts the specified message to every user with permission endstone.broadcast.user

          "},{"location":"reference/python/server/#endstone.Server.create_block_data","title":"create_block_data","text":"
          create_block_data(\n    type: str,\n    block_states: dict[str, bool | str | int] | None = None,\n) -> BlockData\n

          Creates a new BlockData instance for the specified block type, with all properties initialized to defaults, except for those provided.

          "},{"location":"reference/python/server/#endstone.Server.create_boss_bar","title":"create_boss_bar","text":"
          create_boss_bar(\n    title: str,\n    color: BarColor,\n    style: BarStyle,\n    flags: list[BarFlag] | None = None,\n) -> BossBar\n

          Creates a boss bar instance to display to players. The progress defaults to 1.0.

          "},{"location":"reference/python/server/#endstone.Server.create_scoreboard","title":"create_scoreboard","text":"
          create_scoreboard() -> Scoreboard\n

          Creates a new Scoreboard to be tracked by the server.

          "},{"location":"reference/python/server/#endstone.Server.dispatch_command","title":"dispatch_command","text":"
          dispatch_command(\n    sender: CommandSender, command_line: str\n) -> bool\n

          Dispatches a command on this server, and executes it if found.

          "},{"location":"reference/python/server/#endstone.Server.get_player","title":"get_player","text":"
          get_player(name: str) -> Player\n

          Gets the player with the exact given name, case insensitive.

          get_player(unique_id: UUID) -> Player\n

          Gets the player with the given UUID.

          "},{"location":"reference/python/server/#endstone.Server.get_plugin_command","title":"get_plugin_command","text":"
          get_plugin_command(name: str) -> PluginCommand\n

          Gets a PluginCommand with the given name or alias.

          "},{"location":"reference/python/server/#endstone.Server.reload","title":"reload","text":"
          reload() -> None\n

          Reloads the server configuration, functions, scripts and plugins.

          "},{"location":"reference/python/server/#endstone.Server.reload_data","title":"reload_data","text":"
          reload_data() -> None\n

          Reload only the Minecraft data for the server.

          "},{"location":"reference/python/server/#endstone.Server.shutdown","title":"shutdown","text":"
          shutdown() -> None\n

          Shutdowns the server, stopping everything.

          "},{"location":"tutorials/create-your-first-plugin/","title":"Create your first plugin","text":""},{"location":"tutorials/create-your-first-plugin/#prerequisites","title":"Prerequisites","text":"Python C++

          To develop your first plugin with the Python API, you will have to install the following prerequisites:

          • JetBrains PyCharm
          • Python (>= 3.9)
          • endstone Python package

          To develop your first plugin with the C++ API, you will have to install the following prerequisites:

          • JetBrains CLion
          • CMake (>= 3.15)
          • C++ Compiler
            • Windows: Visual Studio 2017 or newer
            • Linux: LLVM Toolchain 5 or newer with Clang and libc++
          "},{"location":"tutorials/create-your-first-plugin/#create-a-new-project","title":"Create a new project","text":"Python C++

          When you start up PyCharm, you will see this welcome screen:

          Click on New Project

          Let's say you want to name your plugin MyPlugin. In Endstone plugin development, we follow the following naming convention:

          1. Use lower-case-with-dash for project name
          2. Prefix your project name with endstone-

          Hence, you should put endstone-my-plugin in the Name field.

          Then, in the Interpreter type, select Custom environment. Select Select existing, and set the path to where you previously installed endstone as stated in the prerequisites.

          Finally, click on Create. The PyCharm workspace will pop up and you will see this.

          Tip

          Endstone server requires its plugins to be installed in the same Python environment. A virtual environment is strongly recommended.

          When you start up CLion, you will see this welcome screen:

          Click on New Project

          In the side bar, select C++ Library. Select C++ 17 for Language standard. Select shared for Library type. Click on Create. The CLion workspace will pop up and you will see this.

          "},{"location":"tutorials/create-your-first-plugin/#check-your-dependencies","title":"Check your dependencies","text":"

          In the last step, you selected the existing interpreter where endstone package is installed. For now, that's the only dependency we need for a simple plugin. To check its installation, click on the icon on the side bar to open the terminal and type:

          pip show endstone\n

          You show see something like this:

          Name: endstone\nVersion: 0.4.2\nSummary: Endstone offers a plugin API for Bedrock Dedicated Servers, supporting both Python and C++.\nHome-page:\nAuthor:\nAuthor-email: Vincent Wu <magicdroidx@gmail.com>\nLicense: Apache License\n

          "},{"location":"tutorials/create-your-first-plugin/#create-pyprojecttoml","title":"Create pyproject.toml","text":"

          Modern Python packages can contain a pyproject.toml file, first introduced in PEP 518. This file contains build system requirements and information, which are used by pip to build the package.

          Now, right click on the project folder and select New > File to create a pyproject.toml.

          Copy the following content and paste into the file. pyproject.toml

          [build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"endstone-my-plugin\"\nversion = \"0.1.0\"\ndescription = \"My first Python plugin for Endstone servers!\"\n

          Notice

          The name field should always be the project name. It must start with endstone- which is enforced by the plugin loader. The name should also use lower-case-with-dash style.

          "},{"location":"tutorials/create-your-first-plugin/#file-structure","title":"File structure","text":"

          From the project view in the side bar, you will notice that CLion created a few files for us.

          • .clang-format: The configuration file for ClangFormat
          • CMakeLists.txt: The manifest file for CMake build system
          • library.cpp: Source file
          • library.h: Header file

          Delete library.cpp and library.h as we don't need them. You can keep the .clang-format and CMakeLists.txt.

          "},{"location":"tutorials/create-your-first-plugin/#update-cmakeliststxt","title":"Update CMakeLists.txt","text":"

          Now, open the CMakeLists.txt in the side bar and delete all the existing content. Then, copy and paste the following into your CMakeLists.txt.

          CMakeLists.txt
          cmake_minimum_required(VERSION 3.15)\n\nproject(my_plugin CXX)\n\nset(CMAKE_CXX_STANDARD 17)\nset(CMAKE_CXX_STANDARD_REQUIRED ON)\n\ninclude(FetchContent)\nFetchContent_Declare(\n    endstone\n    GIT_REPOSITORY https://github.com/EndstoneMC/endstone.git\n    GIT_TAG main #(1)!\n)\nFetchContent_MakeAvailable(endstone)\n
          1. This will use the latest development version of Endstone. Consider use a release tag (e.g. v0.4.0) instead of main.
          "},{"location":"tutorials/create-your-first-plugin/#create-the-main-plugin-class","title":"Create the main plugin class","text":"Python C++

          Now, right click on the project folder and select New > Directory to create a src directory.

          Right click on the src directory you just created and select Mark Directory as > Sources Root. You will notice the colour of the icon changes to blue.

          Right click again on the src directory and select New > Python Package to create a package for our plugin. Since my project name is endstone-my-plugin, I will name the package endstone_my_plugin.

          You should have something similar to this:

          Tip

          For Python packages, it is a common practice to use lower-case-with-dash for project name and lower_case_with_underscore for the package name. See PEP 8 for the style guide for Python.

          Right click on the package you just created and select New > Python File to create a my_plugin.py. Create a class named MyPlugin which extends the Plugin class from endstone.plugin.

          src/endstone_my_plugin/my_plugin.py
          from endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    pass\n

          Then, open the __init__.py under the same folder and import the MyPlugin class from the Python file and add it to the __all__ variable.

          src/endstone_my_plugin/__init__.py
          from endstone_my_plugin.my_plugin import MyPlugin\n\n__all__ = [\"MyPlugin\"]\n

          Now, create two files: src/my_plugin.cpp and include/my_plugin.h.

          Open CMakeLists.txt and add a new target.

          CMakeLists.txt
          cmake_minimum_required(VERSION 3.15)\n\nproject(my_plugin CXX)\n\nset(CMAKE_CXX_STANDARD 17)\nset(CMAKE_CXX_STANDARD_REQUIRED ON)\n\ninclude(FetchContent)\nFetchContent_Declare(\n    endstone\n    GIT_REPOSITORY https://github.com/EndstoneMC/endstone.git\n    GIT_TAG main\n)\nFetchContent_MakeAvailable(endstone)\n\nendstone_add_plugin(${PROJECT_NAME} src/my_plugin.cpp)\n

          You should have something similar to this:

          Open include/my_plugin.h and add a new class MyPlugin which extends the endstone::Plugin class.

          include/my_plugin.h
          #include <endstone/plugin/plugin.h>\n\nclass MyPlugin : public endstone::Plugin {};\n

          Then, in src/my_plugin.cpp, include the header file.

          src/my_plugin.cpp
          #include \"my_plugin.h\"\n
          "},{"location":"tutorials/create-your-first-plugin/#add-methods","title":"Add methods","text":"Python C++

          Now we want to override a few methods from the base class:

          • on_load: this will be called when the plugin is loaded by the server
          • on_enable: this will be called when the plugin is enabled
          • on_disable: this will be called when the plugin is disabled (e.g. during server shutdown)

          You can use the logger to log a message when the plugin is loaded, enabled and disabled like below:

          src/endstone_my_plugin/my_plugin.py
          from endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    def on_load(self) -> None:\n        self.logger.info(\"on_load is called!\")\n\n    def on_enable(self) -> None:\n        self.logger.info(\"on_enable is called!\")\n\n    def on_disable(self) -> None:\n        self.logger.info(\"on_disable is called!\")\n

          Now we want to override a few methods from the base class:

          • onLoad: this will be called when the plugin is loaded by the server
          • onEnable: this will be called when the plugin is enabled
          • onDisable: this will be called when the plugin is disabled (e.g. during server shutdown)

          You can use the logger to log a message when the plugin is loaded, enabled and disabled like below:

          include/my_plugin.h
          #include <endstone/plugin/plugin.h>\n\nclass MyPlugin : public endstone::Plugin {\npublic:\n    void onLoad() override\n    {\n        getLogger().info(\"onLoad is called\");\n    }\n\n    void onEnable() override\n    {\n        getLogger().info(\"onEnable is called\");\n    }\n\n    void onDisable() override\n    {\n        getLogger().info(\"onDisable is called\");\n    }\n};\n
          "},{"location":"tutorials/create-your-first-plugin/#configure-plugin-metadata","title":"Configure plugin metadata","text":"Python C++

          Now, the plugin is almost finished. Let's tell the server about our compatible API version.

          src/endstone_my_plugin/my_plugin.py
          from endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    api_version = \"0.4\"\n\n    def on_load(self) -> None:\n        self.logger.info(\"on_load is called!\")\n\n    def on_enable(self) -> None:\n        self.logger.info(\"on_enable is called!\")\n\n    def on_disable(self) -> None:\n        self.logger.info(\"on_disable is called!\")\n

          Lastly, to have the plugin discoverable by the server, you must specify an entry point in pyproject.toml.

          pyproject.toml
          [build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"endstone-my-plugin\"\nversion = \"0.1.0\"\ndescription = \"My first Python plugin for Endstone servers!\"\n\n[project.entry-points.\"endstone\"]\nmy-plugin = \"endstone_my_plugin:MyPlugin\"\n

          Notice

          For the entry point, the name must be the name of your project without the endstone- prefix. For example, our project name is endstone-my-plugin so the entry point's name should be my-plugin. The value is simply {module}:{class}.

          Now, the plugin is almost finished. Let's tell the server about our name, version, main class and the description.

          src/my_plugin.cpp
          #include \"my_plugin.h\"\n\nENDSTONE_PLUGIN(/*(1)!*/\"my_plugin\", /*(2)!*/\"0.1.0\", /*(3)!*/MyPlugin)\n{\n    description = \"My first C++ plugin for Endstone servers\";\n}\n
          1. This is the plugin name!
          2. This is the plugin version!
          3. This is the main class of the plugin!

          Notice

          For plugin name, it must contains only lowercase letters, numbers and underscores.

          "},{"location":"tutorials/install-your-plugin/","title":"Install your plugin","text":"

          Before installing your first plugin, you will need to build it.

          Python C++

          Click on the icon on the side bar to open the terminal and type:

          pip install pipx\npipx run build --wheel\n

          You should see something like this in your console:

          Then, copy the built wheel package endstone_my_plugin.whl under the dist folder to the plugins folder path/to/bedrock_server/plugins.

          Now, start your server again. You should see your plugin has been successfully loaded.

          Congratulations! You've made your first plugin for Endstone servers!

          Click on the menu icon on the top bar and select Build > Build Project to build your plugin.

          Then, copy the built shared library endstone_my_plugin.dll to the plugins folder path/to/bedrock_server/plugins.

          Now, start your server again. You should see your plugin has been successfully loaded.

          Congratulations! You've made your first plugin for Endstone servers!

          "},{"location":"tutorials/install-your-plugin/#development-mode-aka-editable-installs","title":"Development Mode (a.k.a Editable Installs)","text":"

          When creating a plugin, developers usually want to implement and test changes iteratively, before cutting a release and preparing a distribution archive. In normal circumstances this can be quite cumbersome and require the developers to continuously re-build and re-install the plugin.

          But we've got you! Endstone also allows developers to load the code under development directly from the project folder without having to copy the whl files to the plugins folder.

          To do so, you will need the activate the virtual environment. Please make sure Endstone is also installed inside the environment.

          Windows Linux
          . venv/Scripts/activate\n
          . venv/bin/activate\n

          You can now enter this \u201cdevelopment mode\u201d by performing an editable installation inside the virtual environment, using pip\u2019s -e/--editable flag, as shown below:

          (venv)
          pip install --editable .\n

          Now, if you change the source code on the disk, you can simply run the /reload command in Endstone and you change will be effective immediately.

          When you\u2019re done with a given development task, you can simply uninstall your package (as you would normally do with pip uninstall <package name>).

          "},{"location":"tutorials/publish-your-plugin/","title":"Publish your plugin","text":"

          Let's say you have finished all the work on the new release of your project, written the release notes, increased the version number, tagged the release and are ready to publish.

          "},{"location":"tutorials/publish-your-plugin/#install-twine","title":"Install twine","text":"

          You will need to install Twine if you haven't done so. Twine is a utility for publishing Python packages to PyPI and other repositories.

          pip install twine\n
          "},{"location":"tutorials/publish-your-plugin/#build-your-package","title":"Build your package","text":"

          Build your package is as simple as one line of command.

          pipx run build\n

          This will build the package in an isolated environment, generating a source-distribution and wheel in the dist/ directory.

          "},{"location":"tutorials/publish-your-plugin/#upload-to-testpypi","title":"Upload to TestPyPI","text":"

          Unlike PyPI, which is the actual index of all python packages, TestPyPI is a separate instance of the Python Package Index. It's a good place to try distribution tools and processes without affecting the real index.

          Because TestPyPI has a separate database from the live PyPI, you\u2019ll need a separate user account specifically for TestPyPI. Go to https://test.pypi.org/account/register/ to register your account.

          Once done, you can upload your distributions to TestPyPI using twine by specifying the --repository/-r flag:

          twine upload -r testpypi dist/*\n

          Twine will prompt for your API token or username and password.

          Tip

          For security reasons it is strongly recommended to create an API token instead of using your username and password when uploading a package to PyPI. If you haven\u2019t done so, create an API token on both PyPI and the TestPyPI. You will also be asked to choose the scope of this token, for now you can just leave the token unrestricted.

          "},{"location":"tutorials/publish-your-plugin/#upload-to-pypi","title":"Upload to PyPI","text":"

          Now if things looks right, you can upload to the actual Python Package Index - PyPI:

          twine upload -r pypi dist/*\n
          "},{"location":"tutorials/publish-your-plugin/#publish-using-github-actions-cicd-workflows","title":"Publish using GitHub Actions CI/CD workflows","text":"

          GitHub Actions CI/CD allows you to run a series of commands whenever an event occurs on the GitHub platform. This can be a great choice if you want your plugin be published to PyPI automatically whenever you created a release.

          For more information, please follow the instructions here.

          "},{"location":"tutorials/publish-your-plugin/#and-thats-it","title":"And that's it!","text":"

          Congratulations! If everything goes well, you should soon be able to see your plugin on https://pypi.org/project/<package name>.

          "},{"location":"tutorials/register-commands/","title":"Register commands","text":"

          In this section, we'll walk you through creating a simple command. By the end of this section, you'll have a basic understanding of how to define and register commands with Endstone.

          "},{"location":"tutorials/register-commands/#create-a-command","title":"Create a command","text":"

          Let's start with a simple command /hello that greets the command sender.

          Python C++ src/endstone_my_plugin/my_plugin.py
          from endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    api_version = \"0.4\"\n\n    commands = {\n        \"hello\": {\n            \"description\": \"Greet the command sender.\",\n            \"usages\": [\"/hello\"],\n        }\n    }\n\n    # ...\n
          src/my_plugin.cpp
          #include \"my_plugin.h\"\n\nENDSTONE_PLUGIN(\"my_plugin\", \"0.1.0\", MyPlugin)\n{\n    description = \"My first C++ plugin for Endstone servers\";\n\n    command(\"hello\")\n        .description(\"Greet the command sender.\")\n        .usages(\"/hello\");\n}\n

          And it's just as simple as that! You've just created a new command with description and usages.

          "},{"location":"tutorials/register-commands/#add-permissions","title":"Add permissions","text":"

          By the default, all the commands in endstone requires the operator permission to execute for security reasons. Since we are creating a simple command here, we might want to change its permission for everyone to use.

          Let's make the following changes to our code.

          Python C++ src/endstone_my_plugin/my_plugin.py
          from endstone.command import Command, CommandSender\nfrom endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    api_version = \"0.4\"\n\n    commands = {\n        \"hello\": {\n            \"description\": \"Greet the command sender.\",\n            \"usages\": [\"/hello\"],\n            \"permissions\": [\"my_plugin.command.hello\"],\n        }\n    }\n\n    permissions = {\n        \"my_plugin.command.hello\": {\n            \"description\": \"Allow users to use the /hello command.\",\n            \"default\": True, #(1)!\n        }\n    }\n\n    # ...\n
          1. See tips

          Tip

          The default field sets the permission level required for executing the command. Possible values are:

          • True: everyone can execute this command
          • False: on one can execute this command, unless explicitly granted the permission.
          • \"op\": only operators can execute this command
          • \"not_op\": only non-operators can execute this command
          src/my_plugin.cpp
          #include \"my_plugin.h\"\n\nENDSTONE_PLUGIN(\"my_plugin\", \"0.1.0\", MyPlugin)\n{\n    description = \"My first C++ plugin for Endstone servers\";\n\n    command(\"hello\")\n        .description(\"Greet the command sender.\")\n        .usages(\"/hello\")\n        .permissions(\"my_plugin.command.hello\");\n\n    permission(\"my_plugin.command.hello\")\n        .description(\"Allow users to use the /hello command.\")\n        .default_(endstone::PermissionDefault::True); /*(1)!*/\n}\n
          1. See tips

          Tip

          The default_ method sets the permission level required for executing the command. Possible values are:

          • endstone::PermissionDefault::True: everyone can execute this command
          • endstone::PermissionDefault::False: on one can execute this command, unless explicitly granted the permission.
          • endstone::PermissionDefault::Operator: only operators can execute this command
          • endstone::PermissionDefault::NotOperator: only non-operators can execute this command
          "},{"location":"tutorials/register-commands/#handle-the-commands","title":"Handle the commands","text":"

          Now, the next step is to handle the commands we just created. Let's say we want to send a \"Hello, World!\" greeting message to whoever execute this command. It's just a few more lines away from that.

          Python C++ src/endstone_my_plugin/my_plugin.py
          from endstone.command import Command, CommandSender\nfrom endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    api_version = \"0.4\"\n\n    commands = {\n        \"hello\": {\n            \"description\": \"Greet the command sender.\",\n            \"usages\": [\"/hello\"],\n            \"permissions\": [\"my_plugin.command.hello\"],\n        }\n    }\n\n    permissions = {\n        \"my_plugin.command.hello\": {\n            \"description\": \"Allow users to use the /hello command.\",\n            \"default\": True,\n        }\n    }\n\n    def on_command(self, sender: CommandSender, command: Command, args: list[str]) -> bool:\n        if command.name == \"hello\":\n            sender.send_message(\"Hello World!\")\n\n        return True\n\n    # ...\n
          include/my_plugin.h
          #include <endstone/plugin/plugin.h>\n\nclass MyPlugin : public endstone::Plugin {\npublic:\n    bool onCommand(endstone::CommandSender &sender, const endstone::Command &command, const std::vector<std::string> &args) override\n    {\n        if (command.getName() == \"hello\") \n        {\n            sender.sendMessage(\"Hello World!\");\n        }\n        return true;\n    }\n\n    // ...\n};\n

          Now, install your plugin and restart your server. Join the game and type /help hello. You should see the usage information, which indicates that our command has been successfully added to the game!

          Now, type /hello, and you should receive the message \"Hello World!\".

          "},{"location":"tutorials/register-commands/#add-parameters-to-commands","title":"Add parameters to commands","text":"

          Now, let's say we want to send a custom message to greet the sender instead of \"Hello World!\". We can add a parameter to the command that accepts a message.

          In Endstone, there are two basic kinds of parameters:

          Kind Description Syntax Mandatory This parameter must be provided <name: type> Optional This parameter is optional and can be omitted [name: type]

          Let's change our code to add an optional parameter msg with message type. Based on the table above, the syntax should be [msg: message]. Let's add it to our code.

          Python C++ src/endstone_my_plugin/my_plugin.py
          from endstone.command import Command, CommandSender\nfrom endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    api_version = \"0.4\"\n\n    commands = {\n        \"hello\": {\n            \"description\": \"Greet the command sender.\",\n            \"usages\": [\"/hello [msg: message]\"],\n            \"permissions\": [\"my_plugin.command.hello\"],\n        }\n    }\n\n    permissions = {\n        \"my_plugin.command.hello\": {\n            \"description\": \"Allow users to use the /hello command.\",\n            \"default\": True,\n        }\n    }\n\n    def on_command(self, sender: CommandSender, command: Command, args: list[str]) -> bool:\n        if command.name == \"hello\":\n            if len(args) == 0: #(1)!\n                sender.send_message(\"Hello World!\")\n            else:\n                sender.send_message(args[0])\n\n        return True\n\n    # ...\n
          1. Here, we checked if the optional parameter is provided.
          src/my_plugin.cpp
          #include \"my_plugin.h\"\n\nENDSTONE_PLUGIN(\"my_plugin\", \"0.1.0\", MyPlugin)\n{\n    description = \"My first C++ plugin for Endstone servers\";\n\n    command(\"hello\")\n        .description(\"Greet the command sender.\")\n        .usages(\"/hello [msg: message]\")\n        .permissions(\"my_plugin.command.hello\");\n\n    permission(\"my_plugin.command.hello\")\n        .description(\"Allow users to use the /hello command.\")\n        .default_(endstone::PermissionDefault::True);\n}\n
          include/my_plugin.h
          #include <endstone/plugin/plugin.h>\n\nclass MyPlugin : public endstone::Plugin {\npublic:\n    bool onCommand(endstone::CommandSender &sender, const endstone::Command &command, const std::vector<std::string> &args) override\n    {\n        if (command.getName() == \"hello\") \n        {\n            if (args.empty()) {\n                sender.sendMessage(\"Hello World!\");\n            }\n            else {\n                sender.sendMessage(args[0]);\n            }\n        }\n        return true;\n    }\n\n    // ...\n};\n

          And it's done! Now when the users use /hello This is my message!, \"This is my message!\" will be shown to them instead of \"Hello World!\".

          Tip

          To make the parameter mandatory, change the parameter from [msg: message] to <msg: message>

          "},{"location":"tutorials/register-commands/#built-in-types","title":"Built-in types","text":"

          In the section above, we added a parameter with type message which is a built-in type supported by Endstone. Here is a full list of all built-in types currently supported.

          Type Alias Description Possible Value int Represents an integer 10 float Represents a floating point number 3.14 bool Represents a boolean true target actor, entity, player Represents a target selector @e, @r, PlayerName str string Represents a string, terminated by space Hello block_pos vec3i Represents a 3-Dimensionalinteger position 1 2 3 pos vec3, vec3f Represents a 3-Dimensional float position 1.0 2.0 3.0 message Represents a message with everything until end of line Hello World! json Represents a JSON string {\"key\": \"value\"} block Represents a block type wood block_states Represents the block states [\"wood_type\"=\"birch\",\"stripped_bit\"=true]"},{"location":"tutorials/register-commands/#user-defined-enum-types","title":"User-defined enum types","text":"

          Enum Types can be used to represent a set of predefined string constants. This behavior is similar to how literal types function in modern programming languages such as Node.js and Python. Enum types provide a way to define a \"type\" comprised of a set of named constants, referred to as the enumeration, or in short, \"enum\".

          Endstone allows developer to add their own enums. The basic syntax follows the pattern:

          • Mandatory: (value1|value2|value3)<name: EnumType>
          • Optional: (value1|value2|value3)[name: EnumType]

          Here, all possible values, separated by the pipeline operator |, are scoped inside the parentheses (), followed by the parameter kind, name and type.

          Example

          An example of using enum types in command usages is: /home (add|list|del)<action: HomeAction>

          In this example, the parameter is named action and has a user-defined enum type HomeAction. When using the command, the user must select one of the specified action from the set: add, list, or del.

          "},{"location":"tutorials/register-event-listeners/","title":"Register event listeners","text":"

          Endstone provides a powerful event system that allows plugins to listen to various events that happen in the server. Let's walk you through registering a simple event listener.

          "},{"location":"tutorials/register-event-listeners/#add-event-handlers","title":"Add event handlers","text":"

          Let's say your plugin want to listen to when a player joins the server and send a message to inform everyone on the server.

          Python C++ src/endstone_my_plugin/my_plugin.py
          from endstone import ColorFormat\nfrom endstone.event import event_handler, PlayerJoinEvent\nfrom endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    api_version = \"0.4\"\n\n    # ...\n\n    def on_enable(self) -> None:\n        self.logger.info(\"on_enable is called!\")\n\n    @event_handler\n    def on_player_join(self, event: PlayerJoinEvent):\n        self.server.broadcast_message(ColorFormat.YELLOW + f\"{event.player.name} has joined the server\")\n
          include/my_plugin.h
          #include <endstone/color_format.h>\n#include <endstone/event/player/player_join_event.h>\n#include <endstone/plugin/plugin.h>\n\nclass MyPlugin : public endstone::Plugin {\npublic:\n    // ...\n\n    void onEnable() override\n    {\n        getLogger().info(\"onEnable is called\");\n    }\n\n    void onPlayerJoin(endstone::PlayerJoinEvent& event)\n    {\n        getServer().broadcastMessage(ColorFormat::Yellow + \"{} has joined the server\", event.getPlayer().getName());\n    }\n};\n
          "},{"location":"tutorials/register-event-listeners/#register-listeners","title":"Register listeners","text":"

          Now, we need to register our event handlers to the Endstone event system.

          Python C++ src/endstone_my_plugin/my_plugin.py
          from endstone import ColorFormat\nfrom endstone.event import event_handler, PlayerJoinEvent\nfrom endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    api_version = \"0.4\"\n\n    # ...\n\n    def on_enable(self) -> None:\n        self.logger.info(\"on_enable is called!\")\n        self.register_events(self)\n\n    @event_handler\n    def on_player_join(self, event: PlayerJoinEvent):\n        self.server.broadcast_message(ColorFormat.YELLOW + f\"{event.player.name} has joined the server\")\n

          By calling self.register_events, Endstone will look into the object that is passed in as the argument and register all handlers with a @event_handler decorator to the event system.

          include/my_plugin.h
          #include <endstone/color_format.h>\n#include <endstone/event/player/player_join_event.h>\n#include <endstone/plugin/plugin.h>\n\nclass MyPlugin : public endstone::Plugin {\npublic:\n    // ...\n\n    void onEnable() override\n    {\n        getLogger().info(\"onEnable is called\");\n        registerEvent(&MyPlugin::onPlayerJoin, *this);\n    }\n\n    void onPlayerJoin(endstone::PlayerJoinEvent& event)\n    {\n        getServer().broadcastMessage(ColorFormat::Yellow + \"{} has joined the server\", event.getPlayer().getName());\n    }\n};\n

          And that's it! Your plugin should now listen to and handle events when player joins. Remember, you can add as many methods as you want to listen to any event.

          "},{"location":"tutorials/schedule-tasks/","title":"Schedule tasks","text":"

          Endstone provides a task scheduling system that allows plugins to schedule tasks for future execution, possibly at regular intervals. In this tutorial, we'll guide you on scheduling a straightforward task.

          Here, we want an on-screen popup displaying \"Hi!\" to appear for every online player at a 1-second interval.

          Python C++ src/endstone_my_plugin/my_plugin.py
          from endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    api_version = \"0.4\"\n\n    # ...\n\n    def on_enable(self) -> None:\n        self.logger.info(\"on_enable is called!\")\n        self.server.scheduler.run_task(self, self.say_hi, delay=0, period=20)\n\n    def say_hi(self) -> None:\n        for player in self.server.online_players:\n            player.send_popup(\"Hi!\")\n
          include/my_plugin.h
          #include <endstone/plugin/plugin.h>\n\nclass MyPlugin : public endstone::Plugin {\npublic:\n    // ...\n\n    void onEnable() override\n    {\n        getLogger().info(\"onEnable is called\");\n        getServer().getScheduler().runTaskTimer([&]() { sayHi(); }, 0, 20);\n    }\n\n    void sayHi()\n    {\n        for (auto& player : getServer().getOnlinePlayers())\n        {\n            player->sendPopup(\"Hi\");\n        }\n    }\n};\n

          And that's it! The server will now send a \"Hi\" message to all players online at an interval of 20 ticks or approximately every second.

          "},{"location":"tutorials/use-color-codes/","title":"Use color codes","text":"

          Color codes are used to customize the color and formatting of text in the game, such as on signs, in chat, in titles, in forms and more. These color codes are represented by the section sign (\u00a7) followed by a character. Each character represents a different color or formatting option. Endstone wants to make it easy to use them, that is why an easy to use api is provided.

          "},{"location":"tutorials/use-color-codes/#usage","title":"Usage","text":"Python C++

          This code shows how easy it is to use colored text in endstone:

          from endstone import ColorFormat\n\nmy_beautiful_text = f\"This is {ColorFormat.YELLOW}yellow, {ColorFormat.AQUA}aqua and {ColorFormat.GOLD}gold{ColorFormat.RESET}.\"\n

          Pythons f-strings are awesome.

          Tip

          Don't forget to end the colored text with ColorFormat.RESET, it ends all extra color format options and resets them.

          This code shows how easy it is to use colored text in endstone:

          #include <endstone/color_format.h>\n\nauto my_beautiful_text = \"This is \" + endstone::ColorFormat::DarkGreen + \"dark green.\" + endstone::ColorFormat::Reset;\n

          Tip

          Don't forget to end the colored text with endstone::ColorFormat::Reset, it ends all extra color format options and resets them.

          "},{"location":"tutorials/use-color-codes/#all-color-and-format-codes","title":"All color and format codes","text":"Code Name \u00a70 black \u00a71 dark_blue \u00a72 dark_green \u00a73 dark_aqua \u00a74 dark_red \u00a75 dark_purple \u00a76 gold \u00a77 gray \u00a78 dark_gray \u00a79 blue \u00a7a green \u00a7b aqua \u00a7c red \u00a7d light_purple \u00a7e yellow \u00a7f white \u00a7g minecoin_gold \u00a7h material_quartz \u00a7i material_iron \u00a7j material_netherite \u00a7k obfuscated \u00a7l bold \u00a7m material_redstone \u00a7n material_copper \u00a7o italic \u00a7p material_gold \u00a7q material_emerald \u00a7r reset \u00a7s material_diamond \u00a7t material_lapis \u00a7u material_amethyst"},{"location":"reference/cpp/annotated/","title":"Class List","text":"

          Here are the classes, structs, unions and interfaces with brief descriptions:

          • namespace endstone
            • class ActionForm Represents a form with buttons that let the player take action.
              • class Button Represents a button with text and an optional icon.
            • class Actor Represents a base actor in the level.
            • class ActorDeathEvent Called when an Actor dies.
            • class ActorEvent Represents an Actor-related event.
            • class ActorKnockbackEvent Called when a living entity receives knockback.
            • class ActorRemoveEvent Called when an Actor is removed.
            • class ActorSpawnEvent Called when an Actor is spawned into a world.
            • class ActorTeleportEvent Called when a non-player entity is teleported from one location to another.
            • class Block Represents a block.
            • class BlockBreakEvent Called when a block is broken by a player.
            • class BlockData Represents the data related to a live block.
            • class BlockEvent Represents an Block-related event.
            • class BlockPlaceEvent Called when a block is placed by a player.
            • class BlockState Represents a captured state of a block, which will not update automatically.
            • class BossBar Represents a boss bar that is displayed to players.
            • class BroadcastMessageEvent Event triggered for server broadcast messages such as fromServer::broadcast .
            • struct ColorFormat All supported color and format codes.
            • class Command Represents a Command , which executes various tasks upon user input.
            • class CommandExecutor Represents a class which contains a single method for executing commands.
            • class CommandMap Represents a command map that manages all commands of the Server .
            • class CommandSender Represents a command sender.
            • class CommandSenderWrapper Represents a wrapper that forwards commands to the wrapped CommandSender and captures its output.
            • class ConsoleCommandSender Represents a console command sender.
            • class Criteria Represents a scoreboard criteria.
            • class Dimension Represents a dimension within a Level .
            • class Dropdown Represents a dropdown with a set of predefined options.
            • class Error Represents an error with a message and the stack trace.
            • class Event Represents an event.
            • class EventHandler Represents a registered EventHandler which associates with aPlugin .
            • class Form Represents a generic form.
            • class HandlerList A list of event handlers. Should be instantiated on a per-event basis.
            • class Inventory Interface to the various inventories.
            • class ItemStack Represents a stack of items.
            • class Label Represents a text label.
            • class Language Represents the interface for translating text into different languages.
            • class Level Represents a level, which may contain actors, chunks and blocks.
            • class Location Represents a 3-dimensional location in a dimension within a level.
            • class Logger Logger class which can format and output varies levels of logs.
            • class MessageForm Represents a form with two buttons.
            • class Mob Represents a mobile entity (i.e. living entity), such as a monster or player.
            • class ModalForm Represents a modal form with controls.
            • class Objective Represents an objective on a scoreboard that can show scores specific to entries.
            • class Packet Represents a packet.
            • class Permissible Represents an object that may become a server operator and can be assigned permissions.
            • class Permission Represents a unique permission that may be attached to a Permissible .
            • class PermissionAttachment Holds information about a permission attachment on a Permissible object.
            • class PermissionAttachmentInfo Holds information on a permission and which PermissionAttachment provides it.
            • class Player Represents a player.
            • class PlayerChatEvent Called when a player sends a chat message.
            • class PlayerCommandEvent Called whenever a player runs a command.
            • class PlayerDeathEvent Called when a Player dies.
            • class PlayerEvent Represents a player related event.
            • class PlayerInteractActorEvent Represents an event that is called when a player right-clicks an actor.
            • class PlayerInteractEvent Represents an event that is called when a player right-clicks a block.
            • class PlayerInventory Interface to the inventory of a Player , including the four armor slots and any extra slots.
            • class PlayerJoinEvent Called when a player joins a server.
            • class PlayerKickEvent Called when a player gets kicked from the server.
            • class PlayerLoginEvent Called when a player attempts to login in.
            • class PlayerQuitEvent Called when a player leaves a server.
            • class PlayerTeleportEvent Called when a player is teleported from one location to another.
            • class Plugin Represents a Plugin .
            • class PluginCommand Represents a Command belonging to aPlugin .
            • class PluginDescription Represents the basic information about a plugin that the plugin loader needs to know.
            • class PluginDisableEvent Called when a plugin is disabled.
            • class PluginEnableEvent Called when a plugin is enabled.
            • class PluginLoader Represents a plugin loader, which handles direct access to specific types of plugins.
            • class PluginManager Represents a plugin manager that handles all plugins from the Server .
            • class Position Represents a 3-dimensional position in a dimension within a level.
            • class ProxiedCommandSender Interface for proxied command sender.
            • class Scheduler Represents a scheduler that executes various tasks.
            • class Score Represents a score for an objective on a scoreboard.
            • class Scoreboard Represents a scoreboard.
            • class ScriptMessageEvent Called when a message is sent by /scriptevent command.
            • class Server Represents a server implementation.
            • class ServerCommandEvent Called when the console runs a command, early in the process.
            • class ServerEvent Represents an Server-related event.
            • class ServerListPingEvent Called when a server ping is coming in.
            • class ServerLoadEvent Called when either the server startup or reload has completed.
            • class Skin Represents a player skin.
              • struct ImageData
            • class Slider Represents a slider with a label.
            • class SocketAddress Represents an IP Socket Address (hostname + port number).
            • class SpawnParticleEffectPacket Represents a packet for spawning a particle effect.
            • class StepSlider Represents a step slider with a set of predefined options.
            • class Task Represents a task being executed by the scheduler.
            • class TextInput Represents a text input field.
            • class ThunderChangeEvent Called when the thunder state in a world is changing.
            • class Toggle Represents a toggle button with a label.
            • class Translatable Represents an object with a text representation that can be translated by the Minecraft client.
            • class UUID Implementation of Universally Unique Identifier ( UUID )
            • class Vector Represents a 3-dimensional vector.
            • class WeatherChangeEvent Called when the weather (rain) state in a world is changing.
            • class WeatherEvent Represents a Weather-related event.
            • namespace detail
            • struct overloaded Helper type for visitors.
          • namespace fmt
            • struct formatter< endstone::Block >
            • struct formatter< endstone::BlockData >
            • struct formatter< endstone::BlockState >
            • struct formatter< endstone::BlockStates >
            • struct formatter< endstone::BlockStates::mapped_type >
            • struct formatter< endstone::BlockStates::value_type >
            • struct formatter< endstone::ItemStack >
          • namespace std
            • struct hash< endstone::UUID >
          "},{"location":"reference/cpp/files/","title":"File List","text":"

          Here is a list of all files with brief descriptions:

          • dir include
            • dir endstone
              • file color_format.h
              • file endstone.h
              • file game_mode.h
              • dir actor
                • file actor.h
                • file mob.h
              • dir block
                • file block.h
                • file block_data.h
                • file block_face.h
                • file block_state.h
              • dir boss
                • file bar_color.h
                • file bar_flag.h
                • file bar_style.h
                • file boss_bar.h
              • dir command
                • file command.h
                • file command_executor.h
                • file command_map.h
                • file command_sender.h
                • file command_sender_wrapper.h
                • file console_command_sender.h
                • file plugin_command.h
                • file proxied_command_sender.h
              • dir event
                • file event.h
                • file event_handler.h
                • file event_priority.h
                • file handler_list.h
                • dir actor
                  • file actor_death_event.h
                  • file actor_event.h
                  • file actor_knockback_event.h
                  • file actor_remove_event.h
                  • file actor_spawn_event.h
                  • file actor_teleport_event.h
                • dir block
                  • file block_break_event.h
                  • file block_event.h
                  • file block_place_event.h
                • dir player
                  • file player_chat_event.h
                  • file player_command_event.h
                  • file player_death_event.h
                  • file player_event.h
                  • file player_interact_actor_event.h
                  • file player_interact_event.h
                  • file player_join_event.h
                  • file player_kick_event.h
                  • file player_login_event.h
                  • file player_quit_event.h
                  • file player_teleport_event.h
                • dir server
                  • file broadcast_message_event.h
                  • file plugin_disable_event.h
                  • file plugin_enable_event.h
                  • file script_message_event.h
                  • file server_command_event.h
                  • file server_event.h
                  • file server_list_ping_event.h
                  • file server_load_event.h
                • dir weather
                  • file thunder_change_event.h
                  • file weather_change_event.h
                  • file weather_event.h
              • dir form
                • file action_form.h
                • file form.h
                • dir controls
                  • file dropdown.h
                  • file label.h
                  • file slider.h
                  • file step_slider.h
                  • file text_input.h
                  • file toggle.h
                • file message_form.h
                • file modal_form.h
              • dir inventory
                • file inventory.h
                • file item_stack.h
                • file player_inventory.h
              • dir lang
                • file language.h
                • file translatable.h
              • dir level
                • file dimension.h
                • file level.h
                • file location.h
                • file position.h
              • dir network
                • file packet.h
                • file packet_type.h
                • file spawn_particle_effect_packet.h
              • dir permissions
                • file permissible.h
                • file permission.h
                • file permission_attachment.h
                • file permission_attachment_info.h
                • file permission_default.h
              • dir plugin
                • file plugin.h
                • file plugin_description.h
                • file plugin_load_order.h
                • file plugin_loader.h
                • file plugin_manager.h
              • dir scheduler
                • file scheduler.h
                • file task.h
              • dir scoreboard
                • file criteria.h
                • file display_slot.h
                • file objective.h
                • file objective_sort_order.h
                • file render_type.h
                • file score.h
                • file score_entry.h
                • file scoreboard.h
              • dir util
                • file error.h
                • file result.h
                • file socket_address.h
                • file uuid.h
                • file vector.h
              • file logger.h
              • file message.h
              • file player.h
              • file server.h
              • file skin.h
          "},{"location":"reference/cpp/namespaceendstone/","title":"Namespace endstone","text":"

          Namespace List > endstone

          "},{"location":"reference/cpp/namespaceendstone/#namespaces","title":"Namespaces","text":"Type Name namespace detail"},{"location":"reference/cpp/namespaceendstone/#classes","title":"Classes","text":"Type Name class ActionForm Represents a form with buttons that let the player take action. class Actor Represents a base actor in the level. class ActorDeathEvent Called when an Actor dies. class ActorEvent Represents an Actor-related event. class ActorKnockbackEvent Called when a living entity receives knockback. class ActorRemoveEvent Called when an Actor is removed. class ActorSpawnEvent Called when an Actor is spawned into a world. class ActorTeleportEvent Called when a non-player entity is teleported from one location to another. class Block Represents a block. class BlockBreakEvent Called when a block is broken by a player. class BlockData Represents the data related to a live block. class BlockEvent Represents an Block-related event. class BlockPlaceEvent Called when a block is placed by a player. class BlockState Represents a captured state of a block, which will not update automatically. class BossBar Represents a boss bar that is displayed to players. class BroadcastMessageEvent Event triggered for server broadcast messages such as fromServer::broadcast . struct ColorFormat All supported color and format codes. class Command Represents a Command , which executes various tasks upon user input. class CommandExecutor Represents a class which contains a single method for executing commands. class CommandMap Represents a command map that manages all commands of the Server . class CommandSender Represents a command sender. class CommandSenderWrapper Represents a wrapper that forwards commands to the wrapped CommandSender and captures its output. class ConsoleCommandSender Represents a console command sender. class Criteria Represents a scoreboard criteria. class Dimension Represents a dimension within a Level . class Dropdown Represents a dropdown with a set of predefined options. class Error Represents an error with a message and the stack trace. class Event Represents an event. class EventHandler Represents a registered EventHandler which associates with aPlugin . class Form <typename T>Represents a generic form. class HandlerList A list of event handlers. Should be instantiated on a per-event basis. class Inventory Interface to the various inventories. class ItemStack Represents a stack of items. class Label Represents a text label. class Language Represents the interface for translating text into different languages. class Level Represents a level, which may contain actors, chunks and blocks. class Location Represents a 3-dimensional location in a dimension within a level. class Logger Logger class which can format and output varies levels of logs. class MessageForm Represents a form with two buttons. class Mob Represents a mobile entity (i.e. living entity), such as a monster or player. class ModalForm Represents a modal form with controls. class Objective Represents an objective on a scoreboard that can show scores specific to entries. class Packet Represents a packet. class Permissible Represents an object that may become a server operator and can be assigned permissions. class Permission Represents a unique permission that may be attached to a Permissible . class PermissionAttachment Holds information about a permission attachment on a Permissible object. class PermissionAttachmentInfo Holds information on a permission and which PermissionAttachment provides it. class Player Represents a player. class PlayerChatEvent Called when a player sends a chat message. class PlayerCommandEvent Called whenever a player runs a command. class PlayerDeathEvent Called when a Player dies. class PlayerEvent Represents a player related event. class PlayerInteractActorEvent Represents an event that is called when a player right-clicks an actor. class PlayerInteractEvent Represents an event that is called when a player right-clicks a block. class PlayerInventory Interface to the inventory of a Player , including the four armor slots and any extra slots. class PlayerJoinEvent Called when a player joins a server. class PlayerKickEvent Called when a player gets kicked from the server. class PlayerLoginEvent Called when a player attempts to login in. class PlayerQuitEvent Called when a player leaves a server. class PlayerTeleportEvent Called when a player is teleported from one location to another. class Plugin Represents a Plugin . class PluginCommand Represents a Command belonging to aPlugin . class PluginDescription Represents the basic information about a plugin that the plugin loader needs to know. class PluginDisableEvent Called when a plugin is disabled. class PluginEnableEvent Called when a plugin is enabled. class PluginLoader Represents a plugin loader, which handles direct access to specific types of plugins. class PluginManager Represents a plugin manager that handles all plugins from the Server . class Position Represents a 3-dimensional position in a dimension within a level. class ProxiedCommandSender Interface for proxied command sender. class Scheduler Represents a scheduler that executes various tasks. class Score Represents a score for an objective on a scoreboard. class Scoreboard Represents a scoreboard. class ScriptMessageEvent Called when a message is sent by /scriptevent command. class Server Represents a server implementation. class ServerCommandEvent Called when the console runs a command, early in the process. class ServerEvent Represents an Server-related event. class ServerListPingEvent Called when a server ping is coming in. class ServerLoadEvent Called when either the server startup or reload has completed. class Skin Represents a player skin. class Slider Represents a slider with a label. class SocketAddress Represents an IP Socket Address (hostname + port number). class SpawnParticleEffectPacket Represents a packet for spawning a particle effect. class StepSlider Represents a step slider with a set of predefined options. class Task Represents a task being executed by the scheduler. class TextInput Represents a text input field. class ThunderChangeEvent Called when the thunder state in a world is changing. class Toggle Represents a toggle button with a label. class Translatable Represents an object with a text representation that can be translated by the Minecraft client. class UUID Implementation of Universally Unique Identifier ( UUID ) class Vector <typename T>Represents a 3-dimensional vector. class WeatherChangeEvent Called when the weather (rain) state in a world is changing. class WeatherEvent Represents a Weather-related event. struct overloaded <Func>Helper type for visitors."},{"location":"reference/cpp/namespaceendstone/#public-types","title":"Public Types","text":"Type Name enum BarColor enum BarFlag enum BarStyle enum BlockFace typedef std::unordered_map< std::string, std::variant< bool, std::string, int > > BlockStates enum DisplaySlot Locations for displaying objectives to the player. enum EventPriority Represents an event's priority in execution. enum GameMode Represents the various type of game modes that Players may have. typedef std::variant< std::string, Translatable > Message enum ObjectiveSortOrder Represents the sort order of objectives on a DisplaySlot. enum PacketType Represents the types of packets. enum PermissionDefault Represents the possible default values for permissions. typedef std::function< void(const PermissionAttachment &)> PermissionRemovedExecutor enum PluginLoadOrder Represents the order in which a plugin should be initialized and enabled. enum std::uint8_t RenderType Controls the way in which an Objective is rendered on the client side. typedef nonstd::expected< T, Error > Result typedef std::variant< Player *, Actor *, std::string > ScoreEntry typedef std::uint32_t TaskId"},{"location":"reference/cpp/namespaceendstone/#public-functions","title":"Public Functions","text":"Type Name std::size_t hash_value (UUID const & u) noexcept bool operator!= (UUID const & lhs, UUID const & rhs) noexcept bool operator< (UUID const & lhs, UUID const & rhs) noexcept bool operator<= (UUID const & lhs, UUID const & rhs) noexcept bool operator== (UUID const & lhs, UUID const & rhs) noexcept bool operator> (UUID const & lhs, UUID const & rhs) noexcept bool operator>= (UUID const & lhs, UUID const & rhs) noexcept overloaded (Func...) Deduction guide. void swap (UUID & lhs, UUID & rhs) noexcept"},{"location":"reference/cpp/namespaceendstone/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/namespaceendstone/#enum-barcolor","title":"enum BarColor","text":"
          enum endstone::BarColor {\n    Pink = 0,\n    Blue = 1,\n    Red = 2,\n    Green = 3,\n    Yellow = 4,\n    Purple = 5,\n    RebeccaPurple = 6,\n    White = 7\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-barflag","title":"enum BarFlag","text":"
          enum endstone::BarFlag {\n    DarkenSky,\n    Count\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-barstyle","title":"enum BarStyle","text":"
          enum endstone::BarStyle {\n    Solid,\n    Segmented6,\n    Segmented10,\n    Segmented12,\n    Segmented20\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-blockface","title":"enum BlockFace","text":"
          enum endstone::BlockFace {\n    Down,\n    Up,\n    North,\n    South,\n    West,\n    East\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#typedef-blockstates","title":"typedef BlockStates","text":"
          using endstone::BlockStates = typedef std::unordered_map<std::string, std::variant<bool, std::string, int> >;\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-displayslot","title":"enum DisplaySlot","text":"
          enum endstone::DisplaySlot {\n    BelowName,\n    PlayerList,\n    SideBar\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-eventpriority","title":"enum EventPriority","text":"

          Represents an event's priority in execution.

          enum endstone::EventPriority {\n    Lowest = 0,\n    Low = 1,\n    Normal = 2,\n    High = 3,\n    Highest = 4,\n    Monitor = 5\n};\n

          Listeners with lower priority are called first will listeners with higher priority are called last. Listeners are called in following order: LOWEST -> LOW -> NORMAL -> HIGH -> HIGHEST -> MONITOR

          "},{"location":"reference/cpp/namespaceendstone/#enum-gamemode","title":"enum GameMode","text":"
          enum endstone::GameMode {\n    Survival = 0,\n    Creative = 1,\n    Adventure = 2,\n    Spectator = 3\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#typedef-message","title":"typedef Message","text":"
          using endstone::Message = typedef std::variant<std::string, Translatable>;\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-objectivesortorder","title":"enum ObjectiveSortOrder","text":"
          enum endstone::ObjectiveSortOrder {\n    Ascending,\n    Descending\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-packettype","title":"enum PacketType","text":"
          enum endstone::PacketType {\n    SpawnParticleEffect = 118\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-permissiondefault","title":"enum PermissionDefault","text":"
          enum endstone::PermissionDefault {\n    True,\n    False,\n    Operator,\n    NotOperator\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#typedef-permissionremovedexecutor","title":"typedef PermissionRemovedExecutor","text":"
          using endstone::PermissionRemovedExecutor = typedef std::function<void(const PermissionAttachment &)>;\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-pluginloadorder","title":"enum PluginLoadOrder","text":"
          enum endstone::PluginLoadOrder {\n    Startup,\n    PostWorld\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-rendertype","title":"enum RenderType","text":"
          enum endstone::RenderType {\n    Integer\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#typedef-result","title":"typedef Result","text":"
          using endstone::Result = typedef nonstd::expected<T, Error>;\n
          "},{"location":"reference/cpp/namespaceendstone/#typedef-scoreentry","title":"typedef ScoreEntry","text":"
          using endstone::ScoreEntry = typedef std::variant<Player *, Actor *, std::string>;\n

          An entry for a score.

          "},{"location":"reference/cpp/namespaceendstone/#typedef-taskid","title":"typedef TaskId","text":"
          using endstone::TaskId = typedef std::uint32_t;\n
          "},{"location":"reference/cpp/namespaceendstone/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/namespaceendstone/#function-hash_value","title":"function hash_value","text":"
          inline std::size_t endstone::hash_value (\n    UUID const & u\n) noexcept\n
          "},{"location":"reference/cpp/namespaceendstone/#function-operator","title":"function operator!=","text":"
          inline bool endstone::operator!= (\n    UUID const & lhs,\n    UUID const & rhs\n) noexcept\n
          "},{"location":"reference/cpp/namespaceendstone/#function-operator_1","title":"function operator<","text":"
          inline bool endstone::operator< (\n    UUID const & lhs,\n    UUID const & rhs\n) noexcept\n
          "},{"location":"reference/cpp/namespaceendstone/#function-operator_2","title":"function operator<=","text":"
          inline bool endstone::operator<= (\n    UUID const & lhs,\n    UUID const & rhs\n) noexcept\n
          "},{"location":"reference/cpp/namespaceendstone/#function-operator_3","title":"function operator==","text":"
          inline bool endstone::operator== (\n    UUID const & lhs,\n    UUID const & rhs\n) noexcept\n
          "},{"location":"reference/cpp/namespaceendstone/#function-operator_4","title":"function operator>","text":"
          inline bool endstone::operator> (\n    UUID const & lhs,\n    UUID const & rhs\n) noexcept\n
          "},{"location":"reference/cpp/namespaceendstone/#function-operator_5","title":"function operator>=","text":"
          inline bool endstone::operator>= (\n    UUID const & lhs,\n    UUID const & rhs\n) noexcept\n
          "},{"location":"reference/cpp/namespaceendstone/#function-overloaded","title":"function overloaded","text":"

          Deduction guide.

          template<typename... Func>\nendstone::overloaded (\n    Func...\n) \n

          Template parameters:

          • Func Types of function objects.
          "},{"location":"reference/cpp/namespaceendstone/#function-swap","title":"function swap","text":"
          inline void endstone::swap (\n    UUID & lhs,\n    UUID & rhs\n) noexcept\n

          The documentation for this class was generated from the following file include/endstone/actor/actor.h

          "},{"location":"reference/cpp/classendstone_1_1ActionForm/","title":"Class endstone::ActionForm","text":"

          ClassList > endstone > ActionForm

          Represents a form with buttons that let the player take action.

          • #include <endstone/form/action_form.h>

          Inherits the following classes: endstone::Form

          "},{"location":"reference/cpp/classendstone_1_1ActionForm/#classes","title":"Classes","text":"Type Name class Button Represents a button with text and an optional icon."},{"location":"reference/cpp/classendstone_1_1ActionForm/#public-types","title":"Public Types","text":"Type Name typedef std::function< void(Player *, int)> OnSubmitCallback"},{"location":"reference/cpp/classendstone_1_1ActionForm/#public-types-inherited-from-endstoneform","title":"Public Types inherited from endstone::Form","text":"

          See endstone::Form

          Type Name typedef std::function< void(Player *)> OnCloseCallback"},{"location":"reference/cpp/classendstone_1_1ActionForm/#public-functions","title":"Public Functions","text":"Type Name ActionForm () = default ActionForm & addButton (const Message & text, const std::optional< std::string > & icon=std::nullopt, Button::OnClickCallback on_click={}) Adds a button to the form. const std::vector< Button > & getButtons () constGet the buttons of the action form. Message getContent () constGet the content of the form. OnSubmitCallback getOnSubmit () constGets the on submit callback of the form. ActionForm & setButtons (const std::vector< Button > & buttons) Set the buttons of the action form. ActionForm & setContent (Message text) Set the content of the form. ActionForm & setOnSubmit (OnSubmitCallback on_submit) Sets the on submit callback of the form."},{"location":"reference/cpp/classendstone_1_1ActionForm/#public-functions-inherited-from-endstoneform","title":"Public Functions inherited from endstone::Form","text":"

          See endstone::Form

          Type Name Form () = default OnCloseCallback getOnClose () constGets the on close callback of the form. Message getTitle () constGets the title of the form. T & setOnClose (OnCloseCallback on_close) Sets the on close callback of the form. T & setTitle (Message title) Sets the title of the form."},{"location":"reference/cpp/classendstone_1_1ActionForm/#protected-attributes-inherited-from-endstoneform","title":"Protected Attributes inherited from endstone::Form","text":"

          See endstone::Form

          Type Name OnCloseCallback on_close_ Message title_"},{"location":"reference/cpp/classendstone_1_1ActionForm/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActionForm/#typedef-onsubmitcallback","title":"typedef OnSubmitCallback","text":"
          using endstone::ActionForm::OnSubmitCallback =  std::function<void(Player *, int)>;\n
          "},{"location":"reference/cpp/classendstone_1_1ActionForm/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActionForm/#function-actionform","title":"function ActionForm","text":"
          explicit endstone::ActionForm::ActionForm () = default\n
          "},{"location":"reference/cpp/classendstone_1_1ActionForm/#function-addbutton","title":"function addButton","text":"

          Adds a button to the form.

          inline ActionForm & endstone::ActionForm::addButton (\n    const Message & text,\n    const std::optional< std::string > & icon=std::nullopt,\n    Button::OnClickCallback on_click={}\n) \n

          Parameters:

          • text The text of the button
          • icon The path or URL to the icon image
          • on_click The on click callback of the button

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm/#function-getbuttons","title":"function getButtons","text":"

          Get the buttons of the action form.

          inline const std::vector< Button > & endstone::ActionForm::getButtons () const\n

          Returns:

          A list of buttons in the action form.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm/#function-getcontent","title":"function getContent","text":"

          Get the content of the form.

          inline Message endstone::ActionForm::getContent () const\n

          Returns:

          The content of the form.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm/#function-getonsubmit","title":"function getOnSubmit","text":"

          Gets the on submit callback of the form.

          inline OnSubmitCallback endstone::ActionForm::getOnSubmit () const\n

          Returns:

          The on submit callback of the form.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm/#function-setbuttons","title":"function setButtons","text":"

          Set the buttons of the action form.

          inline ActionForm & endstone::ActionForm::setButtons (\n    const std::vector< Button > & buttons\n) \n

          Parameters:

          • buttons The list of buttons to set.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm/#function-setcontent","title":"function setContent","text":"

          Set the content of the form.

          inline ActionForm & endstone::ActionForm::setContent (\n    Message text\n) \n

          Parameters:

          • text The text to set as the content.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm/#function-setonsubmit","title":"function setOnSubmit","text":"

          Sets the on submit callback of the form.

          inline ActionForm & endstone::ActionForm::setOnSubmit (\n    OnSubmitCallback on_submit\n) \n

          Parameters:

          • on_submit The callback to be set.

          Returns:

          A reference to the current form.

          The documentation for this class was generated from the following file include/endstone/form/action_form.h

          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/","title":"Class endstone::ActionForm::Button","text":"

          ClassList > endstone > ActionForm > Button

          Represents a button with text and an optional icon.

          • #include <endstone/form/action_form.h>
          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#public-types","title":"Public Types","text":"Type Name typedef std::function< void(Player *)> OnClickCallback"},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#public-functions","title":"Public Functions","text":"Type Name Button () = default Button (Message text, std::optional< std::string > icon=std::nullopt, OnClickCallback on_click={}) std::optional< std::string > getIcon () constGet the icon of the button. OnClickCallback getOnClick () constGets the on click callback of the button. Message getText () constGets the text of the button. Button & setIcon (std::string icon) Sets the icon for the button. Button & setOnClick (OnClickCallback on_click) Sets the on click callback of the button. Button & setText (Message text) Sets the text of the button."},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#typedef-onclickcallback","title":"typedef OnClickCallback","text":"
          using endstone::ActionForm::Button::OnClickCallback =  std::function<void(Player *)>;\n
          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#function-button-12","title":"function Button [\u00bd]","text":"
          endstone::ActionForm::Button::Button () = default\n
          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#function-button-22","title":"function Button [2/2]","text":"
          inline explicit endstone::ActionForm::Button::Button (\n    Message text,\n    std::optional< std::string > icon=std::nullopt,\n    OnClickCallback on_click={}\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#function-geticon","title":"function getIcon","text":"

          Get the icon of the button.

          inline std::optional< std::string > endstone::ActionForm::Button::getIcon () const\n

          Returns:

          The path or URL to the icon file

          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#function-getonclick","title":"function getOnClick","text":"

          Gets the on click callback of the button.

          inline OnClickCallback endstone::ActionForm::Button::getOnClick () const\n

          Returns:

          The on click callback of the button.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#function-gettext","title":"function getText","text":"

          Gets the text of the button.

          inline Message endstone::ActionForm::Button::getText () const\n

          Returns:

          The text.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#function-seticon","title":"function setIcon","text":"

          Sets the icon for the button.

          inline Button & endstone::ActionForm::Button::setIcon (\n    std::string icon\n) \n

          Parameters:

          • icon The path or URL to the icon file.

          Returns:

          A reference to the current button.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#function-setonclick","title":"function setOnClick","text":"

          Sets the on click callback of the button.

          inline Button & endstone::ActionForm::Button::setOnClick (\n    OnClickCallback on_click\n) \n

          Parameters:

          • on_click The callback to be set.

          Returns:

          A reference to the current button.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#function-settext","title":"function setText","text":"

          Sets the text of the button.

          inline Button & endstone::ActionForm::Button::setText (\n    Message text\n) \n

          Parameters:

          • text The new text for the button.

          Returns:

          A reference to the current button.

          The documentation for this class was generated from the following file include/endstone/form/action_form.h

          "},{"location":"reference/cpp/classendstone_1_1Actor/","title":"Class endstone::Actor","text":"

          ClassList > endstone > Actor

          Represents a base actor in the level.

          • #include <endstone/actor/actor.h>

          Inherits the following classes: endstone::CommandSender

          Inherited by the following classes: endstone::Mob

          "},{"location":"reference/cpp/classendstone_1_1Actor/#public-functions","title":"Public Functions","text":"Type Name virtual bool addScoreboardTag (std::string tag) const = 0Adds a tag to this actor. virtual Actor * asActor () override constGets a CommandSender asActor . virtual Dimension & getDimension () const = 0 virtual int getHealth () const = 0Gets the entity's health from 0 to its max possible value, where 0 is dead. virtual std::int64_t getId () const = 0Returns a unique id for this actor. virtual Level & getLevel () const = 0 virtual Location getLocation () const = 0 virtual int getMaxHealth () const = 0Gets the maximum health this entity has. virtual std::uint64_t getRuntimeId () const = 0 virtual std::vector< std::string > getScoreboardTags () const = 0Returns a list of scoreboard tags for this actor. virtual Vector< float > getVelocity () const = 0 virtual bool isDead () const = 0Returns true if this actor has been marked for removal. virtual bool isInLava () const = 0 virtual bool isInWater () const = 0 virtual bool isOnGround () const = 0 virtual bool removeScoreboardTag (std::string tag) const = 0Removes a given tag from this actor. virtual Result< void > setHealth (int health) const = 0 virtual void setRotation (float yaw, float pitch) = 0 virtual void teleport (Location location) = 0 virtual void teleport (Actor & target) = 0"},{"location":"reference/cpp/classendstone_1_1Actor/#public-functions-inherited-from-endstonecommandsender","title":"Public Functions inherited from endstone::CommandSender","text":"

          See endstone::CommandSender

          Type Name virtual Actor * asActor () constGets a CommandSender asActor . virtual CommandSender * asCommandSender () override constCasts a Permissible asCommandSender . virtual ConsoleCommandSender * asConsole () constGets a CommandSender as Console. virtual Player * asPlayer () constGets a CommandSender asPlayer . virtual std::string getName () const = 0Gets the name of this command sender. virtual Server & getServer () const = 0Returns the server instance that this command is running on. virtual void sendErrorMessage (const Message & message) const = 0Sends this sender a error message. void sendErrorMessage (const fmt::format_string< Args... > format, Args &&... args) const virtual void sendMessage (const Message & message) const = 0Sends this sender a message. void sendMessage (const fmt::format_string< Args... > format, Args &&... args) const"},{"location":"reference/cpp/classendstone_1_1Actor/#public-functions-inherited-from-endstonepermissible","title":"Public Functions inherited from endstone::Permissible","text":"

          See endstone::Permissible

          Type Name virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin, const std::string & name, bool value) = 0 virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin) = 0 virtual CommandSender * asCommandSender () const = 0Casts a Permissible asCommandSender . virtual std::unordered_set< PermissionAttachmentInfo * > getEffectivePermissions () const = 0 virtual bool hasPermission (std::string name) const = 0 virtual bool hasPermission (const Permission & perm) const = 0 virtual bool isOp () const = 0Checks if this object is a server operator. virtual bool isPermissionSet (std::string name) const = 0 virtual bool isPermissionSet (const Permission & perm) const = 0 virtual void recalculatePermissions () = 0 virtual Result< void > removeAttachment (PermissionAttachment & attachment) = 0 virtual void setOp (bool value) = 0Sets the operator status of this object. virtual ~Permissible () = default"},{"location":"reference/cpp/classendstone_1_1Actor/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Actor/#function-addscoreboardtag","title":"function addScoreboardTag","text":"

          Adds a tag to this actor.

          virtual bool endstone::Actor::addScoreboardTag (\n    std::string tag\n) const = 0\n

          Parameters:

          • tag the tag to add

          Returns:

          true if the tag was successfully added, false if the tag already exists.

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-asactor","title":"function asActor","text":"

          Gets a CommandSender asActor .

          inline virtual Actor * endstone::Actor::asActor () override const\n

          Returns:

          Player, nullptr if not an Actor

          Implements endstone::CommandSender::asActor

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-getdimension","title":"function getDimension","text":"
          virtual Dimension & endstone::Actor::getDimension () const = 0\n

          Gets the current Dimension this actor resides in

          Returns:

          The current Dimension this actor resides in

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-gethealth","title":"function getHealth","text":"

          Gets the entity's health from 0 to its max possible value, where 0 is dead.

          virtual int endstone::Actor::getHealth () const = 0\n

          Returns:

          Health represented from 0 to max

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-getid","title":"function getId","text":"

          Returns a unique id for this actor.

          virtual std::int64_t endstone::Actor::getId () const = 0\n

          Returns:

          Actor id

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-getlevel","title":"function getLevel","text":"
          virtual Level & endstone::Actor::getLevel () const = 0\n

          Gets the current Level this actor resides in

          Returns:

          The current Level this actor resides in

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-getlocation","title":"function getLocation","text":"
          virtual Location endstone::Actor::getLocation () const = 0\n

          Gets the actor's current position

          Returns:

          a new copy of Location containing the position of this actor

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-getmaxhealth","title":"function getMaxHealth","text":"

          Gets the maximum health this entity has.

          virtual int endstone::Actor::getMaxHealth () const = 0\n

          Returns:

          Maximum health

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-getruntimeid","title":"function getRuntimeId","text":"
          virtual std::uint64_t endstone::Actor::getRuntimeId () const = 0\n

          Returns the runtime id for this actor

          Returns:

          Runtime id for this actor

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-getscoreboardtags","title":"function getScoreboardTags","text":"

          Returns a list of scoreboard tags for this actor.

          virtual std::vector< std::string > endstone::Actor::getScoreboardTags () const = 0\n

          Returns:

          a list of scoreboard tags for this actor

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-getvelocity","title":"function getVelocity","text":"
          virtual Vector < float > endstone::Actor::getVelocity () const = 0\n

          Gets this actor's current velocity

          Returns:

          Current traveling velocity of this actor

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-isdead","title":"function isDead","text":"

          Returns true if this actor has been marked for removal.

          virtual bool endstone::Actor::isDead () const = 0\n

          Returns:

          True if it is dead.

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-isinlava","title":"function isInLava","text":"
          virtual bool endstone::Actor::isInLava () const = 0\n

          Returns true if the actor is in lava.

          Returns:

          True if the actor is in lava.

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-isinwater","title":"function isInWater","text":"
          virtual bool endstone::Actor::isInWater () const = 0\n

          Returns true if the actor is in water.

          Returns:

          True if the actor is in water.

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-isonground","title":"function isOnGround","text":"
          virtual bool endstone::Actor::isOnGround () const = 0\n

          Returns true if the actor is supported by a block.

          Returns:

          True if actor is on ground.

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-removescoreboardtag","title":"function removeScoreboardTag","text":"

          Removes a given tag from this actor.

          virtual bool endstone::Actor::removeScoreboardTag (\n    std::string tag\n) const = 0\n

          Parameters:

          • tag the tag to remove

          Returns:

          true if the tag was successfully removed, false if the tag does not exist.

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-sethealth","title":"function setHealth","text":"
          virtual Result< void > endstone::Actor::setHealth (\n    int health\n) const = 0\n

          Sets the entity's health from 0 to its possible value, where 0 is dead.

          Parameters:

          • health New health represented from 0 to max
          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-setrotation","title":"function setRotation","text":"
          virtual void endstone::Actor::setRotation (\n    float yaw,\n    float pitch\n) = 0\n

          Returns:

          Sets the actor's rotation.

          Note that if the actor is affected by AI, it may override this rotation.

          Parameters:

          • yaw Rotation around the up axis (Y axis)
          • pitch Rotation around the right axis (X axis)
          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-teleport-12","title":"function teleport [\u00bd]","text":"
          virtual void endstone::Actor::teleport (\n    Location location\n) = 0\n

          Returns:

          Teleports this actor to the given location.

          Parameters:

          • location New location to teleport this actor to
          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-teleport-22","title":"function teleport [2/2]","text":"
          virtual void endstone::Actor::teleport (\n    Actor & target\n) = 0\n

          Teleports this actor to the target Actor.

          Parameters:

          • target Actor to teleport this actor to

          The documentation for this class was generated from the following file include/endstone/actor/actor.h

          "},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/","title":"Class endstone::ActorDeathEvent","text":"

          ClassList > endstone > ActorDeathEvent

          Called when an Actor dies.

          • #include <endstone/event/actor/actor_death_event.h>

          Inherits the following classes: endstone::ActorEvent

          Inherited by the following classes: endstone::PlayerDeathEvent

          "},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ActorDeathEvent\""},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#public-functions","title":"Public Functions","text":"Type Name ActorDeathEvent (Actor & actor) virtual std::string getEventName () override const virtual bool isCancellable () override const ~ActorDeathEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#public-functions-inherited-from-endstoneactorevent","title":"Public Functions inherited from endstone::ActorEvent","text":"

          See endstone::ActorEvent

          Type Name ActorEvent (Actor & actor) Actor & getActor () constReturns the Actor involved in this event. ~ActorEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ActorDeathEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#function-actordeathevent","title":"function ActorDeathEvent","text":"
          inline explicit endstone::ActorDeathEvent::ActorDeathEvent (\n    Actor & actor\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ActorDeathEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ActorDeathEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#function-actordeathevent_1","title":"function ~ActorDeathEvent","text":"
          endstone::ActorDeathEvent::~ActorDeathEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_death_event.h

          "},{"location":"reference/cpp/classendstone_1_1ActorEvent/","title":"Class endstone::ActorEvent","text":"

          ClassList > endstone > ActorEvent

          Represents an Actor-related event.

          • #include <endstone/event/actor/actor_event.h>

          Inherits the following classes: endstone::Event

          Inherited by the following classes: endstone::ActorDeathEvent, endstone::ActorKnockbackEvent, endstone::ActorRemoveEvent, endstone::ActorSpawnEvent, endstone::ActorTeleportEvent

          "},{"location":"reference/cpp/classendstone_1_1ActorEvent/#public-functions","title":"Public Functions","text":"Type Name ActorEvent (Actor & actor) Actor & getActor () constReturns the Actor involved in this event. ~ActorEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ActorEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorEvent/#function-actorevent","title":"function ActorEvent","text":"
          inline explicit endstone::ActorEvent::ActorEvent (\n    Actor & actor\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ActorEvent/#function-getactor","title":"function getActor","text":"

          Returns the Actor involved in this event.

          inline Actor & endstone::ActorEvent::getActor () const\n

          Returns:

          Actor which is involved in this event

          "},{"location":"reference/cpp/classendstone_1_1ActorEvent/#function-actorevent_1","title":"function ~ActorEvent","text":"
          endstone::ActorEvent::~ActorEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_event.h

          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/","title":"Class endstone::ActorKnockbackEvent","text":"

          ClassList > endstone > ActorKnockbackEvent

          Called when a living entity receives knockback.

          • #include <endstone/event/actor/actor_knockback_event.h>

          Inherits the following classes: endstone::ActorEvent

          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ActorKnockbackEvent\""},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#public-functions","title":"Public Functions","text":"Type Name ActorKnockbackEvent (Mob & mob, Actor * source, Vector< float > knockback) Mob & getActor () constReturns the Mob involved in this event. virtual std::string getEventName () override const Vector< float > getKnockback () const Actor * getSource () constGet the source actor that has caused knockback to the defender, if exists. virtual bool isCancellable () override const void setKnockback (Vector< float > knockback) Sets the knockback that will be applied to the entity. ~ActorKnockbackEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#public-functions-inherited-from-endstoneactorevent","title":"Public Functions inherited from endstone::ActorEvent","text":"

          See endstone::ActorEvent

          Type Name ActorEvent (Actor & actor) Actor & getActor () constReturns the Actor involved in this event. ~ActorEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ActorKnockbackEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#function-actorknockbackevent","title":"function ActorKnockbackEvent","text":"
          inline explicit endstone::ActorKnockbackEvent::ActorKnockbackEvent (\n    Mob & mob,\n    Actor * source,\n    Vector < float > knockback\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#function-getactor","title":"function getActor","text":"

          Returns the Mob involved in this event.

          inline Mob & endstone::ActorKnockbackEvent::getActor () const\n

          Returns:

          Mob which is involved in this event

          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ActorKnockbackEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#function-getknockback","title":"function getKnockback","text":"
          inline Vector < float > endstone::ActorKnockbackEvent::getKnockback () const\n

          Gets the knockback that will be applied to the entity.

          Note: this method returns a copy, changes must be applied with setKnockback(Vector)

          Returns:

          the knockback

          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#function-getsource","title":"function getSource","text":"

          Get the source actor that has caused knockback to the defender, if exists.

          inline Actor * endstone::ActorKnockbackEvent::getSource () const\n

          Returns:

          actor that caused knockback, or nullptr if the knockback is not caused by an actor.

          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ActorKnockbackEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#function-setknockback","title":"function setKnockback","text":"

          Sets the knockback that will be applied to the entity.

          inline void endstone::ActorKnockbackEvent::setKnockback (\n    Vector < float > knockback\n) \n

          Parameters:

          • knockback the knockback to apply
          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#function-actorknockbackevent_1","title":"function ~ActorKnockbackEvent","text":"
          endstone::ActorKnockbackEvent::~ActorKnockbackEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_knockback_event.h

          "},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/","title":"Class endstone::ActorRemoveEvent","text":"

          ClassList > endstone > ActorRemoveEvent

          Called when an Actor is removed.More...

          • #include <endstone/event/actor/actor_remove_event.h>

          Inherits the following classes: endstone::ActorEvent

          "},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ActorRemoveEvent\""},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#public-functions","title":"Public Functions","text":"Type Name ActorRemoveEvent (Actor & actor) virtual std::string getEventName () override const virtual bool isCancellable () override const ~ActorRemoveEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#public-functions-inherited-from-endstoneactorevent","title":"Public Functions inherited from endstone::ActorEvent","text":"

          See endstone::ActorEvent

          Type Name ActorEvent (Actor & actor) Actor & getActor () constReturns the Actor involved in this event. ~ActorEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#detailed-description","title":"Detailed Description","text":"

          This event should only be used for monitoring. Modifying the actor during or after this event leads to undefined behaviours. This event will not be called for Players.

          "},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ActorRemoveEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#function-actorremoveevent","title":"function ActorRemoveEvent","text":"
          inline explicit endstone::ActorRemoveEvent::ActorRemoveEvent (\n    Actor & actor\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ActorRemoveEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ActorRemoveEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#function-actorremoveevent_1","title":"function ~ActorRemoveEvent","text":"
          endstone::ActorRemoveEvent::~ActorRemoveEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_remove_event.h

          "},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/","title":"Class endstone::ActorSpawnEvent","text":"

          ClassList > endstone > ActorSpawnEvent

          Called when an Actor is spawned into a world.More...

          • #include <endstone/event/actor/actor_spawn_event.h>

          Inherits the following classes: endstone::ActorEvent

          "},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ActorSpawnEvent\""},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#public-functions","title":"Public Functions","text":"Type Name ActorSpawnEvent (Actor & actor) virtual std::string getEventName () override const virtual bool isCancellable () override const ~ActorSpawnEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#public-functions-inherited-from-endstoneactorevent","title":"Public Functions inherited from endstone::ActorEvent","text":"

          See endstone::ActorEvent

          Type Name ActorEvent (Actor & actor) Actor & getActor () constReturns the Actor involved in this event. ~ActorEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#detailed-description","title":"Detailed Description","text":"

          If an Actor Spawn event is cancelled, the actor will not spawn.

          "},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ActorSpawnEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#function-actorspawnevent","title":"function ActorSpawnEvent","text":"
          inline explicit endstone::ActorSpawnEvent::ActorSpawnEvent (\n    Actor & actor\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ActorSpawnEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ActorSpawnEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#function-actorspawnevent_1","title":"function ~ActorSpawnEvent","text":"
          endstone::ActorSpawnEvent::~ActorSpawnEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_spawn_event.h

          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/","title":"Class endstone::ActorTeleportEvent","text":"

          ClassList > endstone > ActorTeleportEvent

          Called when a non-player entity is teleported from one location to another. More...

          • #include <endstone/event/actor/actor_teleport_event.h>

          Inherits the following classes: endstone::ActorEvent

          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ActorTeleportEvent\""},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#public-functions","title":"Public Functions","text":"Type Name ActorTeleportEvent (Actor & actor, Location from, Location to) virtual std::string getEventName () override const const Location & getFrom () constGets the location that this actor moved from. const Location & getTo () constGets the location that this actor moved to. virtual bool isCancellable () override const void setFrom (const Location & from) Sets the location that this actor moved from. void setTo (const Location & to) Sets the location that this actor moved to. ~ActorTeleportEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#public-functions-inherited-from-endstoneactorevent","title":"Public Functions inherited from endstone::ActorEvent","text":"

          See endstone::ActorEvent

          Type Name ActorEvent (Actor & actor) Actor & getActor () constReturns the Actor involved in this event. ~ActorEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#detailed-description","title":"Detailed Description","text":"

          This may be as a result of natural causes (Enderman, Shulker), pathfinding (Wolf), or commands (/teleport).

          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ActorTeleportEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#function-actorteleportevent","title":"function ActorTeleportEvent","text":"
          inline explicit endstone::ActorTeleportEvent::ActorTeleportEvent (\n    Actor & actor,\n    Location from,\n    Location to\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ActorTeleportEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#function-getfrom","title":"function getFrom","text":"

          Gets the location that this actor moved from.

          inline const Location & endstone::ActorTeleportEvent::getFrom () const\n

          Returns:

          Location this actor moved from

          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#function-getto","title":"function getTo","text":"

          Gets the location that this actor moved to.

          inline const Location & endstone::ActorTeleportEvent::getTo () const\n

          Returns:

          Location this actor moved to

          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ActorTeleportEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#function-setfrom","title":"function setFrom","text":"

          Sets the location that this actor moved from.

          inline void endstone::ActorTeleportEvent::setFrom (\n    const Location & from\n) \n

          Parameters:

          • from New location this actor moved from
          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#function-setto","title":"function setTo","text":"

          Sets the location that this actor moved to.

          inline void endstone::ActorTeleportEvent::setTo (\n    const Location & to\n) \n

          Parameters:

          • to New Location this actor moved to
          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#function-actorteleportevent_1","title":"function ~ActorTeleportEvent","text":"
          endstone::ActorTeleportEvent::~ActorTeleportEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_teleport_event.h

          "},{"location":"reference/cpp/classendstone_1_1Block/","title":"Class endstone::Block","text":"

          ClassList > endstone > Block

          Represents a block. More...

          • #include <endstone/block/block.h>
          "},{"location":"reference/cpp/classendstone_1_1Block/#public-functions","title":"Public Functions","text":"Type Name virtual std::shared_ptr< BlockState > captureState () const = 0 virtual Result< std::shared_ptr< BlockData > > getData () const = 0Gets the complete block data for this block. virtual Dimension & getDimension () const = 0Gets the dimension which contains this Block . virtual Location getLocation () const = 0Gets the Location of the block. virtual Result< std::unique_ptr< Block > > getRelative (int offset_x, int offset_y, int offset_z) = 0Gets the block at the given offsets. virtual Result< std::unique_ptr< Block > > getRelative (BlockFace face) = 0Gets the block at the given face. virtual Result< std::unique_ptr< Block > > getRelative (BlockFace face, int distance) = 0Gets the block at the given distance of the given face. virtual Result< std::string > getType () const = 0Get the type of the block. virtual int getX () const = 0Gets the x-coordinate of this block. virtual int getY () const = 0Gets the y-coordinate of this block. virtual int getZ () const = 0Gets the z-coordinate of this block. virtual bool isValid () const = 0Checks if the block is valid. virtual Result< void > setData (std::shared_ptr< BlockData > data) = 0Sets the complete data for this block. virtual Result< void > setData (std::shared_ptr< BlockData > data, bool apply_physics) = 0Sets the complete data for this block. virtual Result< void > setType (std::string type) = 0Sets the type of this block. virtual Result< void > setType (std::string type, bool apply_physics) = 0Sets the type of this block. virtual ~Block () = default"},{"location":"reference/cpp/classendstone_1_1Block/#detailed-description","title":"Detailed Description","text":"

          This is a live object, and only one Block may exist for any given location in a dimension.

          "},{"location":"reference/cpp/classendstone_1_1Block/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Block/#function-capturestate","title":"function captureState","text":"
          virtual std::shared_ptr< BlockState > endstone::Block::captureState () const = 0\n

          Captures the current state of this block.

          The returned object will never be updated, and you are not guaranteed that (for example) a sign is still a sign after you capture its state.

          Returns:

          BlockState with the current state of this block.

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-getdata","title":"function getData","text":"

          Gets the complete block data for this block.

          virtual Result< std::shared_ptr< BlockData > > endstone::Block::getData () const = 0\n

          Returns:

          block specific data

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-getdimension","title":"function getDimension","text":"

          Gets the dimension which contains this Block .

          virtual Dimension & endstone::Block::getDimension () const = 0\n

          Returns:

          Dimension containing this block

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-getlocation","title":"function getLocation","text":"

          Gets the Location of the block.

          virtual Location endstone::Block::getLocation () const = 0\n

          Returns:

          Location of block

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-getrelative-13","title":"function getRelative [\u2153]","text":"

          Gets the block at the given offsets.

          virtual Result< std::unique_ptr< Block > > endstone::Block::getRelative (\n    int offset_x,\n    int offset_y,\n    int offset_z\n) = 0\n

          Parameters:

          • offset_x X-coordinate offset
          • offset_y Y-coordinate offset
          • offset_z Z-coordinate offset

          Returns:

          Block at the given offsets

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-getrelative-23","title":"function getRelative [\u2154]","text":"

          Gets the block at the given face.

          virtual Result< std::unique_ptr< Block > > endstone::Block::getRelative (\n    BlockFace face\n) = 0\n

          This method is equal to getRelative(face, 1)

          Parameters:

          • face Face of this block to return

          Returns:

          Block at the given face

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-getrelative-33","title":"function getRelative [3/3]","text":"

          Gets the block at the given distance of the given face.

          virtual Result< std::unique_ptr< Block > > endstone::Block::getRelative (\n    BlockFace face,\n    int distance\n) = 0\n

          Parameters:

          • face Face of this block to return
          • distance Distance to get the block at

          Returns:

          Block at the given face

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-gettype","title":"function getType","text":"

          Get the type of the block.

          virtual Result< std::string > endstone::Block::getType () const = 0\n

          This method returns the type of the block as a string, for example, minecraft:acacia_stairs.

          Returns:

          The type of the block.

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-getx","title":"function getX","text":"

          Gets the x-coordinate of this block.

          virtual int endstone::Block::getX () const = 0\n

          Returns:

          x-coordinate

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-gety","title":"function getY","text":"

          Gets the y-coordinate of this block.

          virtual int endstone::Block::getY () const = 0\n

          Returns:

          x-coordinate

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-getz","title":"function getZ","text":"

          Gets the z-coordinate of this block.

          virtual int endstone::Block::getZ () const = 0\n

          Returns:

          x-coordinate

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-isvalid","title":"function isValid","text":"

          Checks if the block is valid.

          virtual bool endstone::Block::isValid () const = 0\n

          This method verifies the validity of the block. A block is considered valid if and only if the chunk containing this block is loaded and ticking. If the chunk is not loaded or not in the ticking state, this method will return false.

          Returns:

          true if the block is valid (i.e., the containing chunk is loaded and ticking), otherwise false.

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-setdata-12","title":"function setData [\u00bd]","text":"

          Sets the complete data for this block.

          virtual Result< void > endstone::Block::setData (\n    std::shared_ptr< BlockData > data\n) = 0\n

          Parameters:

          • data new block specific data
          "},{"location":"reference/cpp/classendstone_1_1Block/#function-setdata-22","title":"function setData [2/2]","text":"

          Sets the complete data for this block.

          virtual Result< void > endstone::Block::setData (\n    std::shared_ptr< BlockData > data,\n    bool apply_physics\n) = 0\n

          Parameters:

          • data new block specific data
          • apply_physics False to cancel physics on the changed block.
          "},{"location":"reference/cpp/classendstone_1_1Block/#function-settype-12","title":"function setType [\u00bd]","text":"

          Sets the type of this block.

          virtual Result< void > endstone::Block::setType (\n    std::string type\n) = 0\n

          Parameters:

          • type Material to change this block to
          "},{"location":"reference/cpp/classendstone_1_1Block/#function-settype-22","title":"function setType [2/2]","text":"

          Sets the type of this block.

          virtual Result< void > endstone::Block::setType (\n    std::string type,\n    bool apply_physics\n) = 0\n

          Parameters:

          • type Material to change this block to
          • apply_physics False to cancel physics on the changed block.
          "},{"location":"reference/cpp/classendstone_1_1Block/#function-block","title":"function ~Block","text":"
          virtual endstone::Block::~Block () = default\n

          The documentation for this class was generated from the following file include/endstone/block/block.h

          "},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/","title":"Class endstone::BlockBreakEvent","text":"

          ClassList > endstone > BlockBreakEvent

          Called when a block is broken by a player. More...

          • #include <endstone/event/block/block_break_event.h>

          Inherits the following classes: endstone::BlockEvent

          "},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"BlockBreakEvent\""},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#public-functions","title":"Public Functions","text":"Type Name BlockBreakEvent (Block & block, Player & player) virtual std::string getEventName () override const Player & getPlayer () constGets the Player that is breaking the block involved in this event. virtual bool isCancellable () override const ~BlockBreakEvent () override"},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#public-functions-inherited-from-endstoneblockevent","title":"Public Functions inherited from endstone::BlockEvent","text":"

          See endstone::BlockEvent

          Type Name BlockEvent (Block & block) Block & getBlock () constGets the block involved in this event. ~BlockEvent () override"},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#detailed-description","title":"Detailed Description","text":"

          If a BlockBreakEvent is cancelled, the block will not break and experience will not drop.

          "},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::BlockBreakEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#function-blockbreakevent","title":"function BlockBreakEvent","text":"
          inline explicit endstone::BlockBreakEvent::BlockBreakEvent (\n    Block & block,\n    Player & player\n) \n
          "},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::BlockBreakEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#function-getplayer","title":"function getPlayer","text":"

          Gets the Player that is breaking the block involved in this event.

          inline Player & endstone::BlockBreakEvent::getPlayer () const\n

          Returns:

          The Player that is breaking the block involved in this event

          "},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::BlockBreakEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#function-blockbreakevent_1","title":"function ~BlockBreakEvent","text":"
          endstone::BlockBreakEvent::~BlockBreakEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/block/block_break_event.h

          "},{"location":"reference/cpp/classendstone_1_1BlockData/","title":"Class endstone::BlockData","text":"

          ClassList > endstone > BlockData

          Represents the data related to a live block.

          • #include <endstone/block/block_data.h>

          Inherits the following classes: std::enable_shared_from_this< BlockData >

          "},{"location":"reference/cpp/classendstone_1_1BlockData/#public-functions","title":"Public Functions","text":"Type Name virtual BlockStates getBlockStates () const = 0Gets the block states, which when passed into a method such as Server::createBlockData(type, block_states) will unambiguously recreate this instance. virtual std::string getType () const = 0Get the block type represented by this block data. virtual ~BlockData () = default"},{"location":"reference/cpp/classendstone_1_1BlockData/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BlockData/#function-getblockstates","title":"function getBlockStates","text":"

          Gets the block states, which when passed into a method such as Server::createBlockData(type, block_states) will unambiguously recreate this instance.

          virtual BlockStates endstone::BlockData::getBlockStates () const = 0\n

          Returns:

          the block states for this block

          "},{"location":"reference/cpp/classendstone_1_1BlockData/#function-gettype","title":"function getType","text":"

          Get the block type represented by this block data.

          virtual std::string endstone::BlockData::getType () const = 0\n

          Returns:

          the block type

          "},{"location":"reference/cpp/classendstone_1_1BlockData/#function-blockdata","title":"function ~BlockData","text":"
          virtual endstone::BlockData::~BlockData () = default\n

          The documentation for this class was generated from the following file include/endstone/block/block_data.h

          "},{"location":"reference/cpp/classendstone_1_1BlockEvent/","title":"Class endstone::BlockEvent","text":"

          ClassList > endstone > BlockEvent

          Represents an Block-related event.

          • #include <endstone/event/block/block_event.h>

          Inherits the following classes: endstone::Event

          Inherited by the following classes: endstone::BlockBreakEvent, endstone::BlockPlaceEvent

          "},{"location":"reference/cpp/classendstone_1_1BlockEvent/#public-functions","title":"Public Functions","text":"Type Name BlockEvent (Block & block) Block & getBlock () constGets the block involved in this event. ~BlockEvent () override"},{"location":"reference/cpp/classendstone_1_1BlockEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1BlockEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BlockEvent/#function-blockevent","title":"function BlockEvent","text":"
          inline explicit endstone::BlockEvent::BlockEvent (\n    Block & block\n) \n
          "},{"location":"reference/cpp/classendstone_1_1BlockEvent/#function-getblock","title":"function getBlock","text":"

          Gets the block involved in this event.

          inline Block & endstone::BlockEvent::getBlock () const\n

          Returns:

          The Block which block is involved in this event

          "},{"location":"reference/cpp/classendstone_1_1BlockEvent/#function-blockevent_1","title":"function ~BlockEvent","text":"
          endstone::BlockEvent::~BlockEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/block/block_event.h

          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/","title":"Class endstone::BlockPlaceEvent","text":"

          ClassList > endstone > BlockPlaceEvent

          Called when a block is placed by a player. More...

          • #include <endstone/event/block/block_place_event.h>

          Inherits the following classes: endstone::BlockEvent

          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"BlockPlaceEvent\""},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#public-functions","title":"Public Functions","text":"Type Name BlockPlaceEvent (std::unique_ptr< BlockState > placed_block, Block & replaced_block, Block & placed_against, Player & player) Block & getBlockAgainst () constGets the block that this block was placed against. BlockState & getBlockPlacedState () constGets the BlockState for the block which was placed. Block & getBlockReplaced () constGets the block which was replaced. virtual std::string getEventName () override const Player & getPlayer () constGets the player who placed the block involved in this event. virtual bool isCancellable () override const ~BlockPlaceEvent () override"},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#public-functions-inherited-from-endstoneblockevent","title":"Public Functions inherited from endstone::BlockEvent","text":"

          See endstone::BlockEvent

          Type Name BlockEvent (Block & block) Block & getBlock () constGets the block involved in this event. ~BlockEvent () override"},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#detailed-description","title":"Detailed Description","text":"

          If a BlockPlaceEvent is cancelled, the block will not be placed.

          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::BlockPlaceEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#function-blockplaceevent","title":"function BlockPlaceEvent","text":"
          inline explicit endstone::BlockPlaceEvent::BlockPlaceEvent (\n    std::unique_ptr< BlockState > placed_block,\n    Block & replaced_block,\n    Block & placed_against,\n    Player & player\n) \n
          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#function-getblockagainst","title":"function getBlockAgainst","text":"

          Gets the block that this block was placed against.

          inline Block & endstone::BlockPlaceEvent::getBlockAgainst () const\n

          Returns:

          Block the block that the new block was placed against

          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#function-getblockplacedstate","title":"function getBlockPlacedState","text":"

          Gets the BlockState for the block which was placed.

          inline BlockState & endstone::BlockPlaceEvent::getBlockPlacedState () const\n

          Returns:

          The BlockState for the block which was placed.

          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#function-getblockreplaced","title":"function getBlockReplaced","text":"

          Gets the block which was replaced.

          inline Block & endstone::BlockPlaceEvent::getBlockReplaced () const\n

          Returns:

          The Block which was replaced.

          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::BlockPlaceEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#function-getplayer","title":"function getPlayer","text":"

          Gets the player who placed the block involved in this event.

          inline Player & endstone::BlockPlaceEvent::getPlayer () const\n

          Returns:

          The Player who placed the block involved in this event

          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::BlockPlaceEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#function-blockplaceevent_1","title":"function ~BlockPlaceEvent","text":"
          endstone::BlockPlaceEvent::~BlockPlaceEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/block/block_place_event.h

          "},{"location":"reference/cpp/classendstone_1_1BlockState/","title":"Class endstone::BlockState","text":"

          ClassList > endstone > BlockState

          Represents a captured state of a block, which will not update automatically. More...

          • #include <endstone/block/block_state.h>

          Inherits the following classes: std::enable_shared_from_this< BlockState >

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#public-functions","title":"Public Functions","text":"Type Name virtual Result< std::unique_ptr< Block > > getBlock () const = 0Gets the block represented by this block state. virtual std::shared_ptr< BlockData > getData () const = 0Gets the data for this block state. virtual Dimension & getDimension () const = 0Gets the dimension which contains the block represented by this block state. virtual Location getLocation () const = 0Gets the location of this block state. virtual std::string getType () const = 0Gets the type of this block state. virtual int getX () const = 0Gets the x-coordinate of this block state. virtual int getY () const = 0Gets the y-coordinate of this block state. virtual int getZ () const = 0Gets the z-coordinate of this block state. virtual Result< void > setData (std::shared_ptr< BlockData > data) = 0Sets the data for this block state. virtual Result< void > setType (std::string type) = 0Sets the type of this block state. virtual Result< bool > update () = 0Attempts to update the block represented by this state, setting it to yhe new values as defined by this state. virtual Result< bool > update (bool force) = 0Attempts to update the block represented by this state, setting it to the new values as defined by this state. virtual Result< bool > update (bool force, bool apply_physics) = 0Attempts to update the block represented by this state, setting it to the new values as defined by this state. virtual ~BlockState () = default"},{"location":"reference/cpp/classendstone_1_1BlockState/#detailed-description","title":"Detailed Description","text":"

          Unlike Block, which only one object can exist per coordinate, BlockState can exist multiple times for any given Block. Note that another plugin may change the state of the block, and you will not know, or they may change the block to another type entirely, causing your BlockState to become invalid.

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BlockState/#function-getblock","title":"function getBlock","text":"

          Gets the block represented by this block state.

          virtual Result< std::unique_ptr< Block > > endstone::BlockState::getBlock () const = 0\n

          Returns:

          the block represented by this block state

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-getdata","title":"function getData","text":"

          Gets the data for this block state.

          virtual std::shared_ptr< BlockData > endstone::BlockState::getData () const = 0\n

          Returns:

          block specific data

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-getdimension","title":"function getDimension","text":"

          Gets the dimension which contains the block represented by this block state.

          virtual Dimension & endstone::BlockState::getDimension () const = 0\n

          Returns:

          the dimension containing the block represented by this block state

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-getlocation","title":"function getLocation","text":"

          Gets the location of this block state.

          virtual Location endstone::BlockState::getLocation () const = 0\n

          Returns:

          the location

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-gettype","title":"function getType","text":"

          Gets the type of this block state.

          virtual std::string endstone::BlockState::getType () const = 0\n

          Returns:

          block type

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-getx","title":"function getX","text":"

          Gets the x-coordinate of this block state.

          virtual int endstone::BlockState::getX () const = 0\n

          Returns:

          x-coordinate

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-gety","title":"function getY","text":"

          Gets the y-coordinate of this block state.

          virtual int endstone::BlockState::getY () const = 0\n

          Returns:

          y-coordinate

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-getz","title":"function getZ","text":"

          Gets the z-coordinate of this block state.

          virtual int endstone::BlockState::getZ () const = 0\n

          Returns:

          z-coordinate

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-setdata","title":"function setData","text":"

          Sets the data for this block state.

          virtual Result< void > endstone::BlockState::setData (\n    std::shared_ptr< BlockData > data\n) = 0\n

          Parameters:

          • data New block specific data
          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-settype","title":"function setType","text":"

          Sets the type of this block state.

          virtual Result< void > endstone::BlockState::setType (\n    std::string type\n) = 0\n

          Parameters:

          • type Block type to change this block state to
          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-update-13","title":"function update [\u2153]","text":"

          Attempts to update the block represented by this state, setting it to yhe new values as defined by this state.

          virtual Result< bool > endstone::BlockState::update () = 0\n

          This has the same effect as calling update(false). That is to say, this will not modify the state of a block if it is no longer the same type as it was when this state was taken. It will return false in this eventuality.

          Returns:

          true if the update was successful, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-update-23","title":"function update [\u2154]","text":"

          Attempts to update the block represented by this state, setting it to the new values as defined by this state.

          virtual Result< bool > endstone::BlockState::update (\n    bool force\n) = 0\n

          This has the same effect as calling update(force, true). That is to say, this will trigger a physics update to surrounding blocks.

          Parameters:

          • force true to forcefully set the state

          Returns:

          true if the update was successful, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-update-33","title":"function update [3/3]","text":"

          Attempts to update the block represented by this state, setting it to the new values as defined by this state.

          virtual Result< bool > endstone::BlockState::update (\n    bool force,\n    bool apply_physics\n) = 0\n

          Unless force is true, this will not modify the state of a block if it is no longer the same type as it was when this state was taken. It will return false in this eventuality.

          If force is true, it will set the type of the block to match the new state, set the state data and then return true.

          If apply_physics is true, it will trigger a physics update on surrounding blocks which could cause them to update or disappear.

          Parameters:

          • force true to forcefully set the state
          • apply_physics false to cancel updating physics on surrounding blocks

          Returns:

          true if the update was successful, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-blockstate","title":"function ~BlockState","text":"
          virtual endstone::BlockState::~BlockState () = default\n

          The documentation for this class was generated from the following file include/endstone/block/block_state.h

          "},{"location":"reference/cpp/classendstone_1_1BossBar/","title":"Class endstone::BossBar","text":"

          ClassList > endstone > BossBar

          Represents a boss bar that is displayed to players.

          • #include <endstone/boss/boss_bar.h>
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#public-functions","title":"Public Functions","text":"Type Name virtual void addFlag (BarFlag flag) = 0Add an optional flag to this boss bar. virtual void addPlayer (Player & player) = 0Adds the player to this boss bar causing it to display on their screen. virtual BarColor getColor () const = 0Returns the color of this boss bar. virtual std::vector< Player * > getPlayers () const = 0Returns all players viewing this boss bar. virtual float getProgress () const = 0Returns the progress of the bar between 0.0 and 1.0. virtual BarStyle getStyle () const = 0Returns the style of this boss bar. virtual std::string getTitle () const = 0Returns the title of this boss bar. virtual bool hasFlag (BarFlag flag) const = 0Returns whether this boss bar has the passed flag set. virtual bool isVisible () const = 0Return if the boss bar is displayed to attached players. virtual void removeAll () = 0Removes all players from this boss bar. virtual void removeFlag (BarFlag flag) = 0Remove an existing flag on this boss bar. virtual void removePlayer (Player & player) = 0Removes the player from this boss bar causing it to be removed from their screen. virtual void setColor (BarColor color) = 0Sets the color of this boss bar. virtual Result< void > setProgress (float progress) = 0Sets the progress of the bar. Values should be between 0.0 (empty) and 1.0 (full) virtual void setStyle (BarStyle style) = 0Sets the bar style of this boss bar. virtual void setTitle (std::string title) = 0Sets the title of this boss bar. virtual void setVisible (bool visible) = 0Set if the boss bar is displayed to attached players. virtual ~BossBar () = default"},{"location":"reference/cpp/classendstone_1_1BossBar/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BossBar/#function-addflag","title":"function addFlag","text":"

          Add an optional flag to this boss bar.

          virtual void endstone::BossBar::addFlag (\n    BarFlag flag\n) = 0\n

          Parameters:

          • flag an optional flag to set on the boss bar.
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-addplayer","title":"function addPlayer","text":"

          Adds the player to this boss bar causing it to display on their screen.

          virtual void endstone::BossBar::addPlayer (\n    Player & player\n) = 0\n

          Parameters:

          • player the player to add
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-getcolor","title":"function getColor","text":"

          Returns the color of this boss bar.

          virtual BarColor endstone::BossBar::getColor () const = 0\n

          Returns:

          the color of the bar

          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-getplayers","title":"function getPlayers","text":"

          Returns all players viewing this boss bar.

          virtual std::vector< Player * > endstone::BossBar::getPlayers () const = 0\n

          Returns:

          a list of players

          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-getprogress","title":"function getProgress","text":"

          Returns the progress of the bar between 0.0 and 1.0.

          virtual float endstone::BossBar::getProgress () const = 0\n

          Returns:

          the progress of the bar

          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-getstyle","title":"function getStyle","text":"

          Returns the style of this boss bar.

          virtual BarStyle endstone::BossBar::getStyle () const = 0\n

          Returns:

          the style of the bar.

          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-gettitle","title":"function getTitle","text":"

          Returns the title of this boss bar.

          virtual std::string endstone::BossBar::getTitle () const = 0\n

          Returns:

          the title of the bar

          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-hasflag","title":"function hasFlag","text":"

          Returns whether this boss bar has the passed flag set.

          virtual bool endstone::BossBar::hasFlag (\n    BarFlag flag\n) const = 0\n

          Parameters:

          • flag the flag to check.

          Returns:

          whether it has the flag.

          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-isvisible","title":"function isVisible","text":"

          Return if the boss bar is displayed to attached players.

          virtual bool endstone::BossBar::isVisible () const = 0\n

          Returns:

          visible status

          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-removeall","title":"function removeAll","text":"
          virtual void endstone::BossBar::removeAll () = 0\n
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-removeflag","title":"function removeFlag","text":"

          Remove an existing flag on this boss bar.

          virtual void endstone::BossBar::removeFlag (\n    BarFlag flag\n) = 0\n

          Parameters:

          • flag the existing flag to remove.
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-removeplayer","title":"function removePlayer","text":"

          Removes the player from this boss bar causing it to be removed from their screen.

          virtual void endstone::BossBar::removePlayer (\n    Player & player\n) = 0\n

          Parameters:

          • player the player to remove
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-setcolor","title":"function setColor","text":"

          Sets the color of this boss bar.

          virtual void endstone::BossBar::setColor (\n    BarColor color\n) = 0\n

          Parameters:

          • color the color of the bar
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-setprogress","title":"function setProgress","text":"

          Sets the progress of the bar. Values should be between 0.0 (empty) and 1.0 (full)

          virtual Result< void > endstone::BossBar::setProgress (\n    float progress\n) = 0\n

          Parameters:

          • progress the progress of the bar
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-setstyle","title":"function setStyle","text":"

          Sets the bar style of this boss bar.

          virtual void endstone::BossBar::setStyle (\n    BarStyle style\n) = 0\n

          Parameters:

          • style the style of the bar.
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-settitle","title":"function setTitle","text":"

          Sets the title of this boss bar.

          virtual void endstone::BossBar::setTitle (\n    std::string title\n) = 0\n

          Parameters:

          • title the title of the bar
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-setvisible","title":"function setVisible","text":"

          Set if the boss bar is displayed to attached players.

          virtual void endstone::BossBar::setVisible (\n    bool visible\n) = 0\n

          Parameters:

          • visible visible status
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-bossbar","title":"function ~BossBar","text":"
          virtual endstone::BossBar::~BossBar () = default\n

          The documentation for this class was generated from the following file include/endstone/boss/boss_bar.h

          "},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/","title":"Class endstone::BroadcastMessageEvent","text":"

          ClassList > endstone > BroadcastMessageEvent

          Event triggered for server broadcast messages such as fromServer::broadcast .More...

          • #include <endstone/event/server/broadcast_message_event.h>

          Inherits the following classes: endstone::ServerEvent

          "},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"BroadcastMessageEvent\""},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#public-functions","title":"Public Functions","text":"Type Name BroadcastMessageEvent (bool async, std::string message, std::unordered_set< const CommandSender * > recipients) virtual std::string getEventName () override const const std::string & getMessage () const const std::unordered_set< const CommandSender * > & getRecipients () const virtual bool isCancellable () override const void setMessage (std::string message)"},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#public-functions-inherited-from-endstoneserverevent","title":"Public Functions inherited from endstone::ServerEvent","text":"

          See endstone::ServerEvent

          Type Name Event (bool async=false) Event (const Event &) = delete"},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#detailed-description","title":"Detailed Description","text":"

          This event should be async if fired from an async thread.

          "},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::BroadcastMessageEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#function-broadcastmessageevent","title":"function BroadcastMessageEvent","text":"
          inline endstone::BroadcastMessageEvent::BroadcastMessageEvent (\n    bool async,\n    std::string message,\n    std::unordered_set< const CommandSender * > recipients\n) \n
          "},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::BroadcastMessageEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#function-getmessage","title":"function getMessage","text":"
          inline const std::string & endstone::BroadcastMessageEvent::getMessage () const\n

          Get the message to broadcast.

          Returns:

          Message to broadcast

          "},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#function-getrecipients","title":"function getRecipients","text":"
          inline const std::unordered_set< const CommandSender * > & endstone::BroadcastMessageEvent::getRecipients () const\n

          Gets a set of recipients that this broadcast message will be displayed to.

          Returns:

          All CommandSenders who will see this broadcast message

          "},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::BroadcastMessageEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#function-setmessage","title":"function setMessage","text":"
          inline void endstone::BroadcastMessageEvent::setMessage (\n    std::string message\n) \n

          Set the message to broadcast.

          Parameters:

          • message New message to broadcast

          The documentation for this class was generated from the following file include/endstone/event/server/broadcast_message_event.h

          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/","title":"Struct endstone::ColorFormat","text":"

          ClassList > endstone > ColorFormat

          All supported color and format codes.

          • #include <endstone/color_format.h>
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string Aqua = = Escape + 'b' const std::string Black = = Escape + '0' const std::string Blue = = Escape + '9' const std::string Bold = = Escape + 'l' const std::string DarkAqua = = Escape + '3' const std::string DarkBlue = = Escape + '1' const std::string DarkGray = = Escape + '8' const std::string DarkGreen = = Escape + '2' const std::string DarkPurple = = Escape + '5' const std::string DarkRed = = Escape + '4' const std::string Escape = = \"\u00a7\" const std::string Gold = = Escape + '6' const std::string Gray = = Escape + '7' const std::string Green = = Escape + 'a' const std::string Italic = = Escape + 'o' const std::string LightPurple = = Escape + 'd' const std::string MaterialAmethyst = = Escape + 'u' const std::string MaterialCopper = = Escape + 'n' const std::string MaterialDiamond = = Escape + 's' const std::string MaterialEmerald = = Escape + 'q' const std::string MaterialGold = = Escape + 'p' const std::string MaterialIron = = Escape + 'i' const std::string MaterialLapis = = Escape + 't' const std::string MaterialNetherite = = Escape + 'j' const std::string MaterialQuartz = = Escape + 'h' const std::string MaterialRedstone = = Escape + 'm' const std::string MinecoinGold = = Escape + 'g' const std::string Obfuscated = = Escape + 'k' const std::string Red = = Escape + 'c' const std::string Reset = = Escape + 'r' const std::string White = = Escape + 'f' const std::string Yellow = = Escape + 'e'"},{"location":"reference/cpp/structendstone_1_1ColorFormat/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-aqua","title":"variable Aqua","text":"
          const std::string endstone::ColorFormat::Aqua;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-black","title":"variable Black","text":"
          const std::string endstone::ColorFormat::Black;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-blue","title":"variable Blue","text":"
          const std::string endstone::ColorFormat::Blue;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-bold","title":"variable Bold","text":"
          const std::string endstone::ColorFormat::Bold;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-darkaqua","title":"variable DarkAqua","text":"
          const std::string endstone::ColorFormat::DarkAqua;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-darkblue","title":"variable DarkBlue","text":"
          const std::string endstone::ColorFormat::DarkBlue;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-darkgray","title":"variable DarkGray","text":"
          const std::string endstone::ColorFormat::DarkGray;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-darkgreen","title":"variable DarkGreen","text":"
          const std::string endstone::ColorFormat::DarkGreen;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-darkpurple","title":"variable DarkPurple","text":"
          const std::string endstone::ColorFormat::DarkPurple;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-darkred","title":"variable DarkRed","text":"
          const std::string endstone::ColorFormat::DarkRed;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-escape","title":"variable Escape","text":"
          const std::string endstone::ColorFormat::Escape;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-gold","title":"variable Gold","text":"
          const std::string endstone::ColorFormat::Gold;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-gray","title":"variable Gray","text":"
          const std::string endstone::ColorFormat::Gray;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-green","title":"variable Green","text":"
          const std::string endstone::ColorFormat::Green;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-italic","title":"variable Italic","text":"
          const std::string endstone::ColorFormat::Italic;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-lightpurple","title":"variable LightPurple","text":"
          const std::string endstone::ColorFormat::LightPurple;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materialamethyst","title":"variable MaterialAmethyst","text":"
          const std::string endstone::ColorFormat::MaterialAmethyst;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materialcopper","title":"variable MaterialCopper","text":"
          const std::string endstone::ColorFormat::MaterialCopper;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materialdiamond","title":"variable MaterialDiamond","text":"
          const std::string endstone::ColorFormat::MaterialDiamond;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materialemerald","title":"variable MaterialEmerald","text":"
          const std::string endstone::ColorFormat::MaterialEmerald;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materialgold","title":"variable MaterialGold","text":"
          const std::string endstone::ColorFormat::MaterialGold;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materialiron","title":"variable MaterialIron","text":"
          const std::string endstone::ColorFormat::MaterialIron;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materiallapis","title":"variable MaterialLapis","text":"
          const std::string endstone::ColorFormat::MaterialLapis;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materialnetherite","title":"variable MaterialNetherite","text":"
          const std::string endstone::ColorFormat::MaterialNetherite;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materialquartz","title":"variable MaterialQuartz","text":"
          const std::string endstone::ColorFormat::MaterialQuartz;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materialredstone","title":"variable MaterialRedstone","text":"
          const std::string endstone::ColorFormat::MaterialRedstone;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-minecoingold","title":"variable MinecoinGold","text":"
          const std::string endstone::ColorFormat::MinecoinGold;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-obfuscated","title":"variable Obfuscated","text":"
          const std::string endstone::ColorFormat::Obfuscated;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-red","title":"variable Red","text":"
          const std::string endstone::ColorFormat::Red;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-reset","title":"variable Reset","text":"
          const std::string endstone::ColorFormat::Reset;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-white","title":"variable White","text":"
          const std::string endstone::ColorFormat::White;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-yellow","title":"variable Yellow","text":"
          const std::string endstone::ColorFormat::Yellow;\n

          The documentation for this class was generated from the following file include/endstone/color_format.h

          "},{"location":"reference/cpp/classendstone_1_1Command/","title":"Class endstone::Command","text":"

          ClassList > endstone > Command

          Represents a Command , which executes various tasks upon user input.

          • #include <endstone/command/command.h>

          Inherited by the following classes: endstone::PluginCommand

          "},{"location":"reference/cpp/classendstone_1_1Command/#public-functions","title":"Public Functions","text":"Type Name Command (std::string name, std::string description=\"\", std::vector< std::string > usages={}, std::vector< std::string > aliases={}, std::vector< std::string > permissions={}) virtual PluginCommand * asPluginCommand () const virtual bool execute (CommandSender & sender, const std::vector< std::string > & args) const std::vector< std::string > getAliases () const std::string getDescription () const std::string getName () const std::vector< std::string > getPermissions () const std::vector< std::string > getUsages () const bool isRegistered () const bool registerTo (CommandMap & command_map) void setAliases (Alias... aliases) void setDescription (std::string description) void setName (std::string name) void setPermissions (Permission... permissions) void setUsages (Usage... usages) bool testPermission (const CommandSender & target) const bool testPermissionSilently (const CommandSender & target) const bool unregisterFrom (const CommandMap & command_map) virtual ~Command () = default"},{"location":"reference/cpp/classendstone_1_1Command/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Command/#function-command","title":"function Command","text":"
          inline explicit endstone::Command::Command (\n    std::string name,\n    std::string description=\"\",\n    std::vector< std::string > usages={},\n    std::vector< std::string > aliases={},\n    std::vector< std::string > permissions={}\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Command/#function-asplugincommand","title":"function asPluginCommand","text":"
          inline virtual PluginCommand * endstone::Command::asPluginCommand () const\n
          "},{"location":"reference/cpp/classendstone_1_1Command/#function-execute","title":"function execute","text":"
          inline virtual bool endstone::Command::execute (\n    CommandSender & sender,\n    const std::vector< std::string > & args\n) const\n

          Executes the command, returning its success

          Parameters:

          • sender Source of the command
          • args Arguments passed to the command

          Returns:

          true if the execution was successful, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-getaliases","title":"function getAliases","text":"
          inline std::vector< std::string > endstone::Command::getAliases () const\n

          Returns a list of aliases of this command

          Returns:

          List of aliases

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-getdescription","title":"function getDescription","text":"
          inline std::string endstone::Command::getDescription () const\n

          Gets a brief description of this command

          Returns:

          Description of this command

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-getname","title":"function getName","text":"
          inline std::string endstone::Command::getName () const\n

          Returns the name of this command

          Returns:

          Name of this command

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-getpermissions","title":"function getPermissions","text":"
          inline std::vector< std::string > endstone::Command::getPermissions () const\n

          Gets the permissions required by users to be able to perform this command

          Returns:

          List of permission names, or empty if none

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-getusages","title":"function getUsages","text":"
          inline std::vector< std::string > endstone::Command::getUsages () const\n

          Returns a list of usages of this command

          Returns:

          List of usages

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-isregistered","title":"function isRegistered","text":"
          inline bool endstone::Command::isRegistered () const\n

          Returns the current registered state of this command

          Returns:

          true if this command is currently registered false otherwise

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-registerto","title":"function registerTo","text":"
          inline bool endstone::Command::registerTo (\n    CommandMap & command_map\n) \n

          Registers this command to a CommandMap.

          Parameters:

          • command_map the CommandMap to register to

          Returns:

          true if the registration was successful, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-setaliases","title":"function setAliases","text":"
          template<typename... Alias>\ninline void endstone::Command::setAliases (\n    Alias... aliases\n) \n

          Sets the list of aliases to request on registration for this command.

          Parameters:

          • aliases aliases to register to this command
          "},{"location":"reference/cpp/classendstone_1_1Command/#function-setdescription","title":"function setDescription","text":"
          inline void endstone::Command::setDescription (\n    std::string description\n) \n

          Sets a brief description of this command.

          Parameters:

          • description new command description
          "},{"location":"reference/cpp/classendstone_1_1Command/#function-setname","title":"function setName","text":"
          inline void endstone::Command::setName (\n    std::string name\n) \n

          Sets the name of this command.

          May only be used before registering the command.

          Parameters:

          • name New command name
          "},{"location":"reference/cpp/classendstone_1_1Command/#function-setpermissions","title":"function setPermissions","text":"
          template<typename... Permission>\ninline void endstone::Command::setPermissions (\n    Permission... permissions\n) \n

          Sets the permissions required by users to be able to perform this command

          Parameters:

          • permissions List of permission names
          "},{"location":"reference/cpp/classendstone_1_1Command/#function-setusages","title":"function setUsages","text":"
          template<typename... Usage>\ninline void endstone::Command::setUsages (\n    Usage... usages\n) \n

          Sets the usages of this command

          Parameters:

          • usages List of usages
          "},{"location":"reference/cpp/classendstone_1_1Command/#function-testpermission","title":"function testPermission","text":"
          inline bool endstone::Command::testPermission (\n    const CommandSender & target\n) const\n

          Tests the given CommandSender to see if they can perform this command. If they do not have permission, they will be informed that they cannot do this.

          Parameters:

          • target User to test

          Returns:

          true if they can use it, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-testpermissionsilently","title":"function testPermissionSilently","text":"
          inline bool endstone::Command::testPermissionSilently (\n    const CommandSender & target\n) const\n

          Tests the given CommandSender to see if they can perform this command. No error is sent to the sender.

          Parameters:

          • target User to test

          Returns:

          true if they can use it, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-unregisterfrom","title":"function unregisterFrom","text":"
          inline bool endstone::Command::unregisterFrom (\n    const CommandMap & command_map\n) \n

          Unregisters this command from a CommandMap

          Parameters:

          • command_map the CommandMap to unregister from

          Returns:

          true if the unregistration was successful, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-command_1","title":"function ~Command","text":"
          virtual endstone::Command::~Command () = default\n

          The documentation for this class was generated from the following file include/endstone/command/command.h

          "},{"location":"reference/cpp/classendstone_1_1CommandExecutor/","title":"Class endstone::CommandExecutor","text":"

          ClassList > endstone > CommandExecutor

          Represents a class which contains a single method for executing commands.

          • #include <endstone/command/command_executor.h>

          Inherited by the following classes: endstone::Plugin

          "},{"location":"reference/cpp/classendstone_1_1CommandExecutor/#public-functions","title":"Public Functions","text":"Type Name virtual bool onCommand (CommandSender & sender, const Command & command, const std::vector< std::string > & args) virtual ~CommandExecutor () = default"},{"location":"reference/cpp/classendstone_1_1CommandExecutor/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1CommandExecutor/#function-oncommand","title":"function onCommand","text":"
          inline virtual bool endstone::CommandExecutor::onCommand (\n    CommandSender & sender,\n    const Command & command,\n    const std::vector< std::string > & args\n) \n

          Executes the given command, returning its success.

          Parameters:

          • sender Source of the command
          • command Command which was executed
          • args Passed command arguments

          Returns:

          true if the execution is successful, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1CommandExecutor/#function-commandexecutor","title":"function ~CommandExecutor","text":"
          virtual endstone::CommandExecutor::~CommandExecutor () = default\n

          The documentation for this class was generated from the following file include/endstone/command/command_executor.h

          "},{"location":"reference/cpp/classendstone_1_1CommandMap/","title":"Class endstone::CommandMap","text":"

          ClassList > endstone > CommandMap

          Represents a command map that manages all commands of the Server .

          • #include <endstone/command/command_map.h>
          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#public-functions","title":"Public Functions","text":"Type Name CommandMap () = default CommandMap (const CommandMap &) = delete CommandMap (CommandMap &&) = default virtual void clearCommands () = 0 virtual bool dispatch (CommandSender & sender, std::string command_line) const = 0Looks for the requested command and executes it if found. virtual Command * getCommand (std::string name) const = 0 CommandMap & operator= (const CommandMap &) = delete CommandMap & operator= (CommandMap &&) = default virtual bool registerCommand (std::shared_ptr< Command > command) = 0 virtual ~CommandMap () = default"},{"location":"reference/cpp/classendstone_1_1CommandMap/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-commandmap-13","title":"function CommandMap [\u2153]","text":"
          endstone::CommandMap::CommandMap () = default\n
          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-commandmap-23","title":"function CommandMap [\u2154]","text":"
          endstone::CommandMap::CommandMap (\n    const CommandMap &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-commandmap-33","title":"function CommandMap [3/3]","text":"
          endstone::CommandMap::CommandMap (\n    CommandMap &&\n) = default\n
          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-clearcommands","title":"function clearCommands","text":"
          virtual void endstone::CommandMap::clearCommands () = 0\n

          Clears all registered commands.

          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-dispatch","title":"function dispatch","text":"

          Looks for the requested command and executes it if found.

          virtual bool endstone::CommandMap::dispatch (\n    CommandSender & sender,\n    std::string command_line\n) const = 0\n

          Parameters:

          • sender The command's sender
          • command_line command + arguments. Example: \"/test abc 123\"

          Returns:

          true if execution is successful, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-getcommand","title":"function getCommand","text":"
          virtual Command * endstone::CommandMap::getCommand (\n    std::string name\n) const = 0\n

          Gets the command registered to the specified name

          Parameters:

          • name Name of the command to retrieve

          Returns:

          Command with the specified name or nullptr if a command with that label doesn't exist

          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-operator","title":"function operator=","text":"
          CommandMap & endstone::CommandMap::operator= (\n    const CommandMap &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-operator_1","title":"function operator=","text":"
          CommandMap & endstone::CommandMap::operator= (\n    CommandMap &&\n) = default\n
          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-registercommand","title":"function registerCommand","text":"
          virtual bool endstone::CommandMap::registerCommand (\n    std::shared_ptr< Command > command\n) = 0\n

          Registers a command.

          Parameters:

          • command the command to register

          Returns:

          true on success, false if a command with the same name is already registered

          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-commandmap","title":"function ~CommandMap","text":"
          virtual endstone::CommandMap::~CommandMap () = default\n

          The documentation for this class was generated from the following file include/endstone/command/command_map.h

          "},{"location":"reference/cpp/classendstone_1_1CommandSender/","title":"Class endstone::CommandSender","text":"

          ClassList > endstone > CommandSender

          Represents a command sender.

          • #include <endstone/command/command_sender.h>

          Inherits the following classes: endstone::Permissible

          Inherited by the following classes: endstone::Actor, endstone::CommandSenderWrapper, endstone::ConsoleCommandSender, endstone::ProxiedCommandSender

          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#public-functions","title":"Public Functions","text":"Type Name virtual Actor * asActor () constGets a CommandSender asActor . virtual CommandSender * asCommandSender () override constCasts a Permissible asCommandSender . virtual ConsoleCommandSender * asConsole () constGets a CommandSender as Console. virtual Player * asPlayer () constGets a CommandSender asPlayer . virtual std::string getName () const = 0Gets the name of this command sender. virtual Server & getServer () const = 0Returns the server instance that this command is running on. virtual void sendErrorMessage (const Message & message) const = 0Sends this sender a error message. void sendErrorMessage (const fmt::format_string< Args... > format, Args &&... args) const virtual void sendMessage (const Message & message) const = 0Sends this sender a message. void sendMessage (const fmt::format_string< Args... > format, Args &&... args) const"},{"location":"reference/cpp/classendstone_1_1CommandSender/#public-functions-inherited-from-endstonepermissible","title":"Public Functions inherited from endstone::Permissible","text":"

          See endstone::Permissible

          Type Name virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin, const std::string & name, bool value) = 0 virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin) = 0 virtual CommandSender * asCommandSender () const = 0Casts a Permissible asCommandSender . virtual std::unordered_set< PermissionAttachmentInfo * > getEffectivePermissions () const = 0 virtual bool hasPermission (std::string name) const = 0 virtual bool hasPermission (const Permission & perm) const = 0 virtual bool isOp () const = 0Checks if this object is a server operator. virtual bool isPermissionSet (std::string name) const = 0 virtual bool isPermissionSet (const Permission & perm) const = 0 virtual void recalculatePermissions () = 0 virtual Result< void > removeAttachment (PermissionAttachment & attachment) = 0 virtual void setOp (bool value) = 0Sets the operator status of this object. virtual ~Permissible () = default"},{"location":"reference/cpp/classendstone_1_1CommandSender/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-asactor","title":"function asActor","text":"

          Gets a CommandSender asActor .

          inline virtual Actor * endstone::CommandSender::asActor () const\n

          Returns:

          Player, nullptr if not an Actor

          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-ascommandsender","title":"function asCommandSender","text":"

          Casts a Permissible asCommandSender .

          inline virtual CommandSender * endstone::CommandSender::asCommandSender () override const\n

          Returns:

          CommandSender, nullptr if not a CommandSender

          Implements endstone::Permissible::asCommandSender

          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-asconsole","title":"function asConsole","text":"

          Gets a CommandSender as Console.

          inline virtual ConsoleCommandSender * endstone::CommandSender::asConsole () const\n

          Returns:

          CommandSender, nullptr if not a Console

          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-asplayer","title":"function asPlayer","text":"

          Gets a CommandSender asPlayer .

          inline virtual Player * endstone::CommandSender::asPlayer () const\n

          Returns:

          Player, nullptr if not a Player

          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-getname","title":"function getName","text":"

          Gets the name of this command sender.

          virtual std::string endstone::CommandSender::getName () const = 0\n

          Returns:

          Name of the sender

          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-getserver","title":"function getServer","text":"

          Returns the server instance that this command is running on.

          virtual Server & endstone::CommandSender::getServer () const = 0\n

          Returns:

          Server instance

          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-senderrormessage-12","title":"function sendErrorMessage [\u00bd]","text":"

          Sends this sender a error message.

          virtual void endstone::CommandSender::sendErrorMessage (\n    const Message & message\n) const = 0\n

          Parameters:

          • message Error message to be displayed
          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-senderrormessage-22","title":"function sendErrorMessage [2/2]","text":"
          template<typename... Args>\ninline void endstone::CommandSender::sendErrorMessage (\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-sendmessage-12","title":"function sendMessage [\u00bd]","text":"

          Sends this sender a message.

          virtual void endstone::CommandSender::sendMessage (\n    const Message & message\n) const = 0\n

          Parameters:

          • message Message to be displayed
          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-sendmessage-22","title":"function sendMessage [2/2]","text":"
          template<typename... Args>\ninline void endstone::CommandSender::sendMessage (\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n

          The documentation for this class was generated from the following file include/endstone/command/command_sender.h

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/","title":"Class endstone::CommandSenderWrapper","text":"

          ClassList > endstone > CommandSenderWrapper

          Represents a wrapper that forwards commands to the wrapped CommandSender and captures its output.

          • #include <endstone/command/command_sender_wrapper.h>

          Inherits the following classes: endstone::CommandSender

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#public-types","title":"Public Types","text":"Type Name typedef std::function< void(const Message &)> Callback"},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#public-functions","title":"Public Functions","text":"Type Name CommandSenderWrapper (CommandSender & sender, Callback on_message={}, Callback on_error={}) virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin, const std::string & name, bool value) override virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin) override virtual Actor * asActor () override constGets a CommandSender asActor . virtual CommandSender * asCommandSender () override constCasts a Permissible asCommandSender . virtual ConsoleCommandSender * asConsole () override constGets a CommandSender as Console. virtual Player * asPlayer () override constGets a CommandSender asPlayer . virtual std::unordered_set< PermissionAttachmentInfo * > getEffectivePermissions () override const virtual std::string getName () override constGets the name of this command sender. virtual Server & getServer () override constReturns the server instance that this command is running on. virtual bool hasPermission (std::string name) override const virtual bool hasPermission (const Permission & perm) override const virtual bool isOp () override constChecks if this object is a server operator. virtual bool isPermissionSet (std::string name) override const virtual bool isPermissionSet (const Permission & perm) override const virtual void recalculatePermissions () override virtual Result< void > removeAttachment (PermissionAttachment & attachment) override virtual void sendErrorMessage (const Message & message) override constSends this sender a error message. virtual void sendMessage (const Message & message) override constSends this sender a message. virtual void setOp (bool value) overrideSets the operator status of this object."},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#public-functions-inherited-from-endstonecommandsender","title":"Public Functions inherited from endstone::CommandSender","text":"

          See endstone::CommandSender

          Type Name virtual Actor * asActor () constGets a CommandSender asActor . virtual CommandSender * asCommandSender () override constCasts a Permissible asCommandSender . virtual ConsoleCommandSender * asConsole () constGets a CommandSender as Console. virtual Player * asPlayer () constGets a CommandSender asPlayer . virtual std::string getName () const = 0Gets the name of this command sender. virtual Server & getServer () const = 0Returns the server instance that this command is running on. virtual void sendErrorMessage (const Message & message) const = 0Sends this sender a error message. void sendErrorMessage (const fmt::format_string< Args... > format, Args &&... args) const virtual void sendMessage (const Message & message) const = 0Sends this sender a message. void sendMessage (const fmt::format_string< Args... > format, Args &&... args) const"},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#public-functions-inherited-from-endstonepermissible","title":"Public Functions inherited from endstone::Permissible","text":"

          See endstone::Permissible

          Type Name virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin, const std::string & name, bool value) = 0 virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin) = 0 virtual CommandSender * asCommandSender () const = 0Casts a Permissible asCommandSender . virtual std::unordered_set< PermissionAttachmentInfo * > getEffectivePermissions () const = 0 virtual bool hasPermission (std::string name) const = 0 virtual bool hasPermission (const Permission & perm) const = 0 virtual bool isOp () const = 0Checks if this object is a server operator. virtual bool isPermissionSet (std::string name) const = 0 virtual bool isPermissionSet (const Permission & perm) const = 0 virtual void recalculatePermissions () = 0 virtual Result< void > removeAttachment (PermissionAttachment & attachment) = 0 virtual void setOp (bool value) = 0Sets the operator status of this object. virtual ~Permissible () = default"},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#typedef-callback","title":"typedef Callback","text":"
          using endstone::CommandSenderWrapper::Callback =  std::function<void(const Message &)>;\n
          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-commandsenderwrapper","title":"function CommandSenderWrapper","text":"
          inline explicit endstone::CommandSenderWrapper::CommandSenderWrapper (\n    CommandSender & sender,\n    Callback on_message={},\n    Callback on_error={}\n) \n
          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-addattachment-12","title":"function addAttachment [\u00bd]","text":"
          inline virtual Result< PermissionAttachment * > endstone::CommandSenderWrapper::addAttachment (\n    Plugin & plugin,\n    const std::string & name,\n    bool value\n) override\n

          Adds a new PermissionAttachment with a single permission by name and value

          Parameters:

          • plugin Plugin responsible for this attachment, may not be null or disabled
          • name Name of the permission to attach
          • value Value of the permission

          Returns:

          The PermissionAttachment that was just created

          Implements endstone::Permissible::addAttachment

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-addattachment-22","title":"function addAttachment [2/2]","text":"
          inline virtual Result< PermissionAttachment * > endstone::CommandSenderWrapper::addAttachment (\n    Plugin & plugin\n) override\n

          Adds a new empty PermissionAttachment to this object

          Parameters:

          • plugin Plugin responsible for this attachment, may not be null or disabled

          Returns:

          The PermissionAttachment that was just created

          Implements endstone::Permissible::addAttachment

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-asactor","title":"function asActor","text":"

          Gets a CommandSender asActor .

          inline virtual Actor * endstone::CommandSenderWrapper::asActor () override const\n

          Returns:

          Player, nullptr if not an Actor

          Implements endstone::CommandSender::asActor

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-ascommandsender","title":"function asCommandSender","text":"

          Casts a Permissible asCommandSender .

          inline virtual CommandSender * endstone::CommandSenderWrapper::asCommandSender () override const\n

          Returns:

          CommandSender, nullptr if not a CommandSender

          Implements endstone::CommandSender::asCommandSender

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-asconsole","title":"function asConsole","text":"

          Gets a CommandSender as Console.

          inline virtual ConsoleCommandSender * endstone::CommandSenderWrapper::asConsole () override const\n

          Returns:

          CommandSender, nullptr if not a Console

          Implements endstone::CommandSender::asConsole

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-asplayer","title":"function asPlayer","text":"

          Gets a CommandSender asPlayer .

          inline virtual Player * endstone::CommandSenderWrapper::asPlayer () override const\n

          Returns:

          Player, nullptr if not a Player

          Implements endstone::CommandSender::asPlayer

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-geteffectivepermissions","title":"function getEffectivePermissions","text":"
          inline virtual std::unordered_set< PermissionAttachmentInfo * > endstone::CommandSenderWrapper::getEffectivePermissions () override const\n

          Gets a set containing all the permissions currently in effect by this object

          Returns:

          Set of currently effective permissions

          Implements endstone::Permissible::getEffectivePermissions

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-getname","title":"function getName","text":"

          Gets the name of this command sender.

          inline virtual std::string endstone::CommandSenderWrapper::getName () override const\n

          Returns:

          Name of the sender

          Implements endstone::CommandSender::getName

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-getserver","title":"function getServer","text":"

          Returns the server instance that this command is running on.

          inline virtual Server & endstone::CommandSenderWrapper::getServer () override const\n

          Returns:

          Server instance

          Implements endstone::CommandSender::getServer

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-haspermission-12","title":"function hasPermission [\u00bd]","text":"
          inline virtual bool endstone::CommandSenderWrapper::hasPermission (\n    std::string name\n) override const\n

          Gets the value of the specified permission, if set. If a permission override is not set on this object, the default value of the permission will be returned.

          Parameters:

          • name Name of the permission

          Returns:

          Value of the permission

          Implements endstone::Permissible::hasPermission

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-haspermission-22","title":"function hasPermission [2/2]","text":"
          inline virtual bool endstone::CommandSenderWrapper::hasPermission (\n    const Permission & perm\n) override const\n

          Gets the value of the specified permission, if set. If a permission override is not set on this object, the default value of the permission will be returned.

          Parameters:

          • perm Permission to get

          Returns:

          Value of the permission

          Implements endstone::Permissible::hasPermission

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-isop","title":"function isOp","text":"

          Checks if this object is a server operator.

          inline virtual bool endstone::CommandSenderWrapper::isOp () override const\n

          Returns:

          true if this is an operator, otherwise false

          Implements endstone::Permissible::isOp

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-ispermissionset-12","title":"function isPermissionSet [\u00bd]","text":"
          inline virtual bool endstone::CommandSenderWrapper::isPermissionSet (\n    std::string name\n) override const\n

          Checks if this object contains an override for the specified permission, by fully qualified name

          Parameters:

          • name Name of the permission

          Returns:

          true if the permission is set, otherwise false

          Implements endstone::Permissible::isPermissionSet

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-ispermissionset-22","title":"function isPermissionSet [2/2]","text":"
          inline virtual bool endstone::CommandSenderWrapper::isPermissionSet (\n    const Permission & perm\n) override const\n

          Checks if this object contains an override for the specified Permission

          Parameters:

          • perm Permission to check

          Returns:

          true if the permission is set, otherwise false

          Implements endstone::Permissible::isPermissionSet

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-recalculatepermissions","title":"function recalculatePermissions","text":"
          inline virtual void endstone::CommandSenderWrapper::recalculatePermissions () override\n

          Recalculates the permissions for this object, if the attachments have changed values. This should very rarely need to be called from a plugin.

          Implements endstone::Permissible::recalculatePermissions

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-removeattachment","title":"function removeAttachment","text":"
          inline virtual Result< void > endstone::CommandSenderWrapper::removeAttachment (\n    PermissionAttachment & attachment\n) override\n

          Removes the given PermissionAttachment from this object

          Parameters:

          • attachment Attachment to remove

          Returns:

          true if the specified attachment was removed successfully, false when it isn't part of this object

          Implements endstone::Permissible::removeAttachment

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-senderrormessage","title":"function sendErrorMessage","text":"

          Sends this sender a error message.

          inline virtual void endstone::CommandSenderWrapper::sendErrorMessage (\n    const Message & message\n) override const\n

          Parameters:

          • message Error message to be displayed

          Implements endstone::CommandSender::sendErrorMessage

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-sendmessage","title":"function sendMessage","text":"

          Sends this sender a message.

          inline virtual void endstone::CommandSenderWrapper::sendMessage (\n    const Message & message\n) override const\n

          Parameters:

          • message Message to be displayed

          Implements endstone::CommandSender::sendMessage

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-setop","title":"function setOp","text":"

          Sets the operator status of this object.

          inline virtual void endstone::CommandSenderWrapper::setOp (\n    bool value\n) override\n

          Parameters:

          • value New operator value

          Implements endstone::Permissible::setOp

          The documentation for this class was generated from the following file include/endstone/command/command_sender_wrapper.h

          "},{"location":"reference/cpp/classendstone_1_1ConsoleCommandSender/","title":"Class endstone::ConsoleCommandSender","text":"

          ClassList > endstone > ConsoleCommandSender

          Represents a console command sender.

          • #include <endstone/command/console_command_sender.h>

          Inherits the following classes: endstone::CommandSender

          "},{"location":"reference/cpp/classendstone_1_1ConsoleCommandSender/#public-functions-inherited-from-endstonecommandsender","title":"Public Functions inherited from endstone::CommandSender","text":"

          See endstone::CommandSender

          Type Name virtual Actor * asActor () constGets a CommandSender asActor . virtual CommandSender * asCommandSender () override constCasts a Permissible asCommandSender . virtual ConsoleCommandSender * asConsole () constGets a CommandSender as Console. virtual Player * asPlayer () constGets a CommandSender asPlayer . virtual std::string getName () const = 0Gets the name of this command sender. virtual Server & getServer () const = 0Returns the server instance that this command is running on. virtual void sendErrorMessage (const Message & message) const = 0Sends this sender a error message. void sendErrorMessage (const fmt::format_string< Args... > format, Args &&... args) const virtual void sendMessage (const Message & message) const = 0Sends this sender a message. void sendMessage (const fmt::format_string< Args... > format, Args &&... args) const"},{"location":"reference/cpp/classendstone_1_1ConsoleCommandSender/#public-functions-inherited-from-endstonepermissible","title":"Public Functions inherited from endstone::Permissible","text":"

          See endstone::Permissible

          Type Name virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin, const std::string & name, bool value) = 0 virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin) = 0 virtual CommandSender * asCommandSender () const = 0Casts a Permissible asCommandSender . virtual std::unordered_set< PermissionAttachmentInfo * > getEffectivePermissions () const = 0 virtual bool hasPermission (std::string name) const = 0 virtual bool hasPermission (const Permission & perm) const = 0 virtual bool isOp () const = 0Checks if this object is a server operator. virtual bool isPermissionSet (std::string name) const = 0 virtual bool isPermissionSet (const Permission & perm) const = 0 virtual void recalculatePermissions () = 0 virtual Result< void > removeAttachment (PermissionAttachment & attachment) = 0 virtual void setOp (bool value) = 0Sets the operator status of this object. virtual ~Permissible () = default

          The documentation for this class was generated from the following file include/endstone/command/console_command_sender.h

          "},{"location":"reference/cpp/classendstone_1_1Criteria/","title":"Class endstone::Criteria","text":"

          ClassList > endstone > Criteria

          Represents a scoreboard criteria.

          • #include <endstone/scoreboard/criteria.h>
          "},{"location":"reference/cpp/classendstone_1_1Criteria/#public-types","title":"Public Types","text":"Type Name enum Type"},{"location":"reference/cpp/classendstone_1_1Criteria/#public-functions","title":"Public Functions","text":"Type Name virtual RenderType getDefaultRenderType () const = 0 virtual std::string getName () const = 0Get the name of this criteria (its unique id). virtual bool isReadOnly () const = 0Get whether or not this criteria is read only. If read only, scoreboards with this criteria cannot have their scores changed. virtual ~Criteria () = default"},{"location":"reference/cpp/classendstone_1_1Criteria/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Criteria/#enum-type","title":"enum Type","text":"
          enum endstone::Criteria::Type {\n    Dummy\n};\n
          "},{"location":"reference/cpp/classendstone_1_1Criteria/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Criteria/#function-getdefaultrendertype","title":"function getDefaultRenderType","text":"
          virtual RenderType endstone::Criteria::getDefaultRenderType () const = 0\n

          Get the RenderType used by default for this criteria.

          Returns:

          the default render type

          "},{"location":"reference/cpp/classendstone_1_1Criteria/#function-getname","title":"function getName","text":"

          Get the name of this criteria (its unique id).

          virtual std::string endstone::Criteria::getName () const = 0\n

          Returns:

          the name

          "},{"location":"reference/cpp/classendstone_1_1Criteria/#function-isreadonly","title":"function isReadOnly","text":"

          Get whether or not this criteria is read only. If read only, scoreboards with this criteria cannot have their scores changed.

          virtual bool endstone::Criteria::isReadOnly () const = 0\n

          Returns:

          true if read only, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1Criteria/#function-criteria","title":"function ~Criteria","text":"
          virtual endstone::Criteria::~Criteria () = default\n

          The documentation for this class was generated from the following file include/endstone/scoreboard/criteria.h

          "},{"location":"reference/cpp/classendstone_1_1Dimension/","title":"Class endstone::Dimension","text":"

          ClassList > endstone > Dimension

          Represents a dimension within a Level .

          • #include <endstone/level/dimension.h>
          "},{"location":"reference/cpp/classendstone_1_1Dimension/#public-types","title":"Public Types","text":"Type Name enum Type Represents various dimension types."},{"location":"reference/cpp/classendstone_1_1Dimension/#public-functions","title":"Public Functions","text":"Type Name virtual Result< std::unique_ptr< Block > > getBlockAt (int x, int y, int z) = 0Gets the Block at the given coordinates. virtual Result< std::unique_ptr< Block > > getBlockAt (Location location) = 0Gets the Block at the givenLocation . virtual Level & getLevel () const = 0Gets the level to which this dimension belongs. virtual std::string getName () const = 0Gets the name of this dimension. virtual Type getType () const = 0Gets the type of this dimension. virtual ~Dimension () = default"},{"location":"reference/cpp/classendstone_1_1Dimension/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Dimension/#enum-type","title":"enum Type","text":"
          enum endstone::Dimension::Type {\n    Overworld = 0,\n    Nether = 1,\n    TheEnd = 2,\n    Custom = 999\n};\n
          "},{"location":"reference/cpp/classendstone_1_1Dimension/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Dimension/#function-getblockat-12","title":"function getBlockAt [\u00bd]","text":"

          Gets the Block at the given coordinates.

          virtual Result< std::unique_ptr< Block > > endstone::Dimension::getBlockAt (\n    int x,\n    int y,\n    int z\n) = 0\n

          Parameters:

          • x X-coordinate of the block
          • y Y-coordinate of the block
          • z Z-coordinate of the block

          Returns:

          Block at the given coordinates

          "},{"location":"reference/cpp/classendstone_1_1Dimension/#function-getblockat-22","title":"function getBlockAt [2/2]","text":"

          Gets the Block at the givenLocation .

          virtual Result< std::unique_ptr< Block > > endstone::Dimension::getBlockAt (\n    Location location\n) = 0\n

          Parameters:

          • location Location of the block

          Returns:

          Block at the given coordinates

          "},{"location":"reference/cpp/classendstone_1_1Dimension/#function-getlevel","title":"function getLevel","text":"

          Gets the level to which this dimension belongs.

          virtual Level & endstone::Dimension::getLevel () const = 0\n

          Returns:

          Level containing this dimension.

          "},{"location":"reference/cpp/classendstone_1_1Dimension/#function-getname","title":"function getName","text":"

          Gets the name of this dimension.

          virtual std::string endstone::Dimension::getName () const = 0\n

          Returns:

          Name of this dimension

          "},{"location":"reference/cpp/classendstone_1_1Dimension/#function-gettype","title":"function getType","text":"

          Gets the type of this dimension.

          virtual Type endstone::Dimension::getType () const = 0\n

          Returns:

          Type of this dimension

          "},{"location":"reference/cpp/classendstone_1_1Dimension/#function-dimension","title":"function ~Dimension","text":"
          virtual endstone::Dimension::~Dimension () = default\n

          The documentation for this class was generated from the following file include/endstone/level/dimension.h

          "},{"location":"reference/cpp/classendstone_1_1Dropdown/","title":"Class endstone::Dropdown","text":"

          ClassList > endstone > Dropdown

          Represents a dropdown with a set of predefined options.

          • #include <endstone/form/controls/dropdown.h>

          Inherited by the following classes: endstone::StepSlider

          "},{"location":"reference/cpp/classendstone_1_1Dropdown/#public-functions","title":"Public Functions","text":"Type Name Dropdown () = default Dropdown (Message label, std::vector< std::string > options, std::optional< int > default_index=std::nullopt) Dropdown & addOption (const std::string & option) Adds a new option to the dropdown. std::optional< int > getDefaultIndex () constGets the default index of the dropdown. Message getLabel () constGets the label of the dropdown. std::vector< std::string > getOptions () constGets the options of the dropdown. Dropdown & setDefaultIndex (std::optional< int > default_index) Sets the default index of the dropdown. Dropdown & setLabel (Message label) Sets the label of the dropdown. Dropdown & setOptions (std::vector< std::string > options) Sets the options of the dropdown."},{"location":"reference/cpp/classendstone_1_1Dropdown/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Dropdown/#function-dropdown-12","title":"function Dropdown [\u00bd]","text":"
          endstone::Dropdown::Dropdown () = default\n
          "},{"location":"reference/cpp/classendstone_1_1Dropdown/#function-dropdown-22","title":"function Dropdown [2/2]","text":"
          inline explicit endstone::Dropdown::Dropdown (\n    Message label,\n    std::vector< std::string > options,\n    std::optional< int > default_index=std::nullopt\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Dropdown/#function-addoption","title":"function addOption","text":"

          Adds a new option to the dropdown.

          inline Dropdown & endstone::Dropdown::addOption (\n    const std::string & option\n) \n

          Parameters:

          • option The new option for the dropdown.

          Returns:

          A reference to the dropdown itself.

          "},{"location":"reference/cpp/classendstone_1_1Dropdown/#function-getdefaultindex","title":"function getDefaultIndex","text":"

          Gets the default index of the dropdown.

          inline std::optional< int > endstone::Dropdown::getDefaultIndex () const\n

          Returns:

          The default index of the dropdown.

          "},{"location":"reference/cpp/classendstone_1_1Dropdown/#function-getlabel","title":"function getLabel","text":"

          Gets the label of the dropdown.

          inline Message endstone::Dropdown::getLabel () const\n

          Returns:

          The label of the dropdown.

          "},{"location":"reference/cpp/classendstone_1_1Dropdown/#function-getoptions","title":"function getOptions","text":"

          Gets the options of the dropdown.

          inline std::vector< std::string > endstone::Dropdown::getOptions () const\n

          Returns:

          The options of the dropdown.

          "},{"location":"reference/cpp/classendstone_1_1Dropdown/#function-setdefaultindex","title":"function setDefaultIndex","text":"

          Sets the default index of the dropdown.

          inline Dropdown & endstone::Dropdown::setDefaultIndex (\n    std::optional< int > default_index\n) \n

          Parameters:

          • default_index The new default index for the dropdown.

          Returns:

          A reference to the dropdown itself.

          "},{"location":"reference/cpp/classendstone_1_1Dropdown/#function-setlabel","title":"function setLabel","text":"

          Sets the label of the dropdown.

          inline Dropdown & endstone::Dropdown::setLabel (\n    Message label\n) \n

          Parameters:

          • label The new label for the dropdown.

          Returns:

          A reference to the dropdown itself.

          "},{"location":"reference/cpp/classendstone_1_1Dropdown/#function-setoptions","title":"function setOptions","text":"

          Sets the options of the dropdown.

          inline Dropdown & endstone::Dropdown::setOptions (\n    std::vector< std::string > options\n) \n

          Parameters:

          • options The new options for the dropdown.

          Returns:

          A reference to the dropdown itself.

          The documentation for this class was generated from the following file include/endstone/form/controls/dropdown.h

          "},{"location":"reference/cpp/classendstone_1_1Error/","title":"Class endstone::Error","text":"

          ClassList > endstone > Error

          Represents an error with a message and the stack trace.

          • #include <endstone/util/error.h>
          "},{"location":"reference/cpp/classendstone_1_1Error/#public-functions","title":"Public Functions","text":"Type Name Error (std::string_view message, std::string_view stack_trace) std::string_view getMessage () noexcept constReturns the error message. std::string_view getStackTrace () noexcept constReturns the stack trace associated with the error."},{"location":"reference/cpp/classendstone_1_1Error/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Error/#function-error","title":"function Error","text":"
          inline endstone::Error::Error (\n    std::string_view message,\n    std::string_view stack_trace\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Error/#function-getmessage","title":"function getMessage","text":"

          Returns the error message.

          inline std::string_view endstone::Error::getMessage () noexcept const\n

          Returns:

          The error message.

          "},{"location":"reference/cpp/classendstone_1_1Error/#function-getstacktrace","title":"function getStackTrace","text":"

          Returns the stack trace associated with the error.

          inline std::string_view endstone::Error::getStackTrace () noexcept const\n

          Returns:

          The stack trace associated with the error.

          The documentation for this class was generated from the following file include/endstone/util/error.h

          "},{"location":"reference/cpp/classendstone_1_1Event/","title":"Class endstone::Event","text":"

          ClassList > endstone > Event

          Represents an event.

          • #include <endstone/event/event.h>

          Inherited by the following classes: endstone::ActorEvent, endstone::BlockEvent, endstone::PlayerEvent, endstone::ServerEvent, endstone::WeatherEvent

          "},{"location":"reference/cpp/classendstone_1_1Event/#public-functions","title":"Public Functions","text":"Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1Event/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Event/#function-event-12","title":"function Event [\u00bd]","text":"
          inline explicit endstone::Event::Event (\n    bool async=false\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Event/#function-event-22","title":"function Event [2/2]","text":"
          endstone::Event::Event (\n    const Event &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1Event/#function-geteventname","title":"function getEventName","text":"
          virtual std::string endstone::Event::getEventName () const = 0\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          "},{"location":"reference/cpp/classendstone_1_1Event/#function-isasynchronous","title":"function isAsynchronous","text":"
          inline bool endstone::Event::isAsynchronous () const\n

          Any custom event that should not by synchronized with other events must use the specific constructor.

          Returns:

          false by default, true if the event fires asynchronously

          "},{"location":"reference/cpp/classendstone_1_1Event/#function-iscancellable","title":"function isCancellable","text":"
          virtual bool endstone::Event::isCancellable () const = 0\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          "},{"location":"reference/cpp/classendstone_1_1Event/#function-iscancelled","title":"function isCancelled","text":"
          inline bool endstone::Event::isCancelled () const\n

          Gets the cancellation state of this event. A cancelled event will not be executed in the server, but will still pass to other plugins

          Returns:

          true if this event is cancelled

          "},{"location":"reference/cpp/classendstone_1_1Event/#function-operator","title":"function operator=","text":"
          Event & endstone::Event::operator= (\n    const Event &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1Event/#function-setcancelled","title":"function setCancelled","text":"
          inline void endstone::Event::setCancelled (\n    bool cancel\n) \n

          Sets the cancellation state of this event. A cancelled event will not be executed in the server, but will still pass to other plugins.

          Parameters:

          • cancel true if you wish to cancel this event
          "},{"location":"reference/cpp/classendstone_1_1Event/#function-event","title":"function ~Event","text":"
          virtual endstone::Event::~Event () = default\n

          The documentation for this class was generated from the following file include/endstone/event/event.h

          "},{"location":"reference/cpp/classendstone_1_1EventHandler/","title":"Class endstone::EventHandler","text":"

          ClassList > endstone > EventHandler

          Represents a registered EventHandler which associates with aPlugin .

          • #include <endstone/event/event_handler.h>
          "},{"location":"reference/cpp/classendstone_1_1EventHandler/#public-functions","title":"Public Functions","text":"Type Name EventHandler (std::string event, std::function< void(Event &)> executor, EventPriority priority, Plugin & plugin, bool ignore_cancelled) void callEvent (Event & event) std::string getEventType () const Plugin & getPlugin () const EventPriority getPriority () const bool isIgnoreCancelled () const"},{"location":"reference/cpp/classendstone_1_1EventHandler/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1EventHandler/#function-eventhandler","title":"function EventHandler","text":"
          inline endstone::EventHandler::EventHandler (\n    std::string event,\n    std::function< void( Event &)> executor,\n    EventPriority priority,\n    Plugin & plugin,\n    bool ignore_cancelled\n) \n
          "},{"location":"reference/cpp/classendstone_1_1EventHandler/#function-callevent","title":"function callEvent","text":"
          inline void endstone::EventHandler::callEvent (\n    Event & event\n) \n

          Calls the event executor

          Parameters:

          • event The event
          "},{"location":"reference/cpp/classendstone_1_1EventHandler/#function-geteventtype","title":"function getEventType","text":"
          inline std::string endstone::EventHandler::getEventType () const\n

          Gets the event type for this registration

          Returns:

          Registered event type

          "},{"location":"reference/cpp/classendstone_1_1EventHandler/#function-getplugin","title":"function getPlugin","text":"
          inline Plugin & endstone::EventHandler::getPlugin () const\n

          Gets the plugin for this registration

          Returns:

          Registered Plugin

          "},{"location":"reference/cpp/classendstone_1_1EventHandler/#function-getpriority","title":"function getPriority","text":"
          inline EventPriority endstone::EventHandler::getPriority () const\n

          Gets the priority for this registration

          Returns:

          Registered Priority

          "},{"location":"reference/cpp/classendstone_1_1EventHandler/#function-isignorecancelled","title":"function isIgnoreCancelled","text":"
          inline bool endstone::EventHandler::isIgnoreCancelled () const\n

          Whether this listener accepts cancelled events

          Returns:

          True when ignoring cancelled events

          The documentation for this class was generated from the following file include/endstone/event/event_handler.h

          "},{"location":"reference/cpp/classendstone_1_1Form/","title":"Class endstone::Form","text":"

          template <typename T>

          ClassList > endstone > Form

          Represents a generic form. More...

          • #include <endstone/form/form.h>
          "},{"location":"reference/cpp/classendstone_1_1Form/#public-types","title":"Public Types","text":"Type Name typedef std::function< void(Player *)> OnCloseCallback"},{"location":"reference/cpp/classendstone_1_1Form/#public-functions","title":"Public Functions","text":"Type Name Form () = default OnCloseCallback getOnClose () constGets the on close callback of the form. Message getTitle () constGets the title of the form. T & setOnClose (OnCloseCallback on_close) Sets the on close callback of the form. T & setTitle (Message title) Sets the title of the form."},{"location":"reference/cpp/classendstone_1_1Form/#protected-attributes","title":"Protected Attributes","text":"Type Name OnCloseCallback on_close_ Message title_"},{"location":"reference/cpp/classendstone_1_1Form/#detailed-description","title":"Detailed Description","text":"

          The Form class provides a base abstraction for different types of forms. It supports three types of forms: Action, Message, and Modal. Each form has a title, which can be a string or a translatable object.

          "},{"location":"reference/cpp/classendstone_1_1Form/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Form/#typedef-onclosecallback","title":"typedef OnCloseCallback","text":"
          using endstone::Form< T >::OnCloseCallback =  std::function<void(Player *)>;\n
          "},{"location":"reference/cpp/classendstone_1_1Form/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Form/#function-form","title":"function Form","text":"
          explicit endstone::Form::Form () = default\n
          "},{"location":"reference/cpp/classendstone_1_1Form/#function-getonclose","title":"function getOnClose","text":"

          Gets the on close callback of the form.

          inline OnCloseCallback endstone::Form::getOnClose () const\n

          Returns:

          The on close callback of the form.

          "},{"location":"reference/cpp/classendstone_1_1Form/#function-gettitle","title":"function getTitle","text":"

          Gets the title of the form.

          inline Message endstone::Form::getTitle () const\n

          Returns:

          The title of the form.

          "},{"location":"reference/cpp/classendstone_1_1Form/#function-setonclose","title":"function setOnClose","text":"

          Sets the on close callback of the form.

          inline T & endstone::Form::setOnClose (\n    OnCloseCallback on_close\n) \n

          Parameters:

          • on_close The callback to be set.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1Form/#function-settitle","title":"function setTitle","text":"

          Sets the title of the form.

          inline T & endstone::Form::setTitle (\n    Message title\n) \n

          Parameters:

          • title The title of the form to be set.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1Form/#protected-attributes-documentation","title":"Protected Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Form/#variable-on_close_","title":"variable on_close_","text":"
          OnCloseCallback endstone::Form< T >::on_close_;\n
          "},{"location":"reference/cpp/classendstone_1_1Form/#variable-title_","title":"variable title_","text":"
          Message endstone::Form< T >::title_;\n

          The documentation for this class was generated from the following file include/endstone/form/form.h

          "},{"location":"reference/cpp/classendstone_1_1HandlerList/","title":"Class endstone::HandlerList","text":"

          ClassList > endstone > HandlerList

          A list of event handlers. Should be instantiated on a per-event basis.

          • #include <endstone/event/handler_list.h>
          "},{"location":"reference/cpp/classendstone_1_1HandlerList/#public-functions","title":"Public Functions","text":"Type Name HandlerList (std::string event) std::vector< EventHandler * > getHandlers () const EventHandler * registerHandler (std::unique_ptr< EventHandler > handler) void unregister (const EventHandler & handler) void unregister (const Plugin & plugin)"},{"location":"reference/cpp/classendstone_1_1HandlerList/#protected-functions","title":"Protected Functions","text":"Type Name void bake () const"},{"location":"reference/cpp/classendstone_1_1HandlerList/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1HandlerList/#function-handlerlist","title":"function HandlerList","text":"
          inline explicit endstone::HandlerList::HandlerList (\n    std::string event\n) \n
          "},{"location":"reference/cpp/classendstone_1_1HandlerList/#function-gethandlers","title":"function getHandlers","text":"
          inline std::vector< EventHandler * > endstone::HandlerList::getHandlers () const\n

          Get the baked registered handlers associated with this handler list

          Returns:

          the array of registered handlers

          "},{"location":"reference/cpp/classendstone_1_1HandlerList/#function-registerhandler","title":"function registerHandler","text":"
          inline EventHandler * endstone::HandlerList::registerHandler (\n    std::unique_ptr< EventHandler > handler\n) \n

          Register a new handler

          Parameters:

          • handler Event handler to register

          Returns:

          the pointer to the registered handler

          "},{"location":"reference/cpp/classendstone_1_1HandlerList/#function-unregister-12","title":"function unregister [\u00bd]","text":"
          inline void endstone::HandlerList::unregister (\n    const EventHandler & handler\n) \n

          Remove a handler from a specific order slot

          Parameters:

          • handler Event handler to remove
          "},{"location":"reference/cpp/classendstone_1_1HandlerList/#function-unregister-22","title":"function unregister [2/2]","text":"
          inline void endstone::HandlerList::unregister (\n    const Plugin & plugin\n) \n

          Remove a specific plugin's handlers from this handler

          Parameters:

          • plugin Plugin to remove
          "},{"location":"reference/cpp/classendstone_1_1HandlerList/#protected-functions-documentation","title":"Protected Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1HandlerList/#function-bake","title":"function bake","text":"
          inline void endstone::HandlerList::bake () const\n

          The documentation for this class was generated from the following file include/endstone/event/handler_list.h

          "},{"location":"reference/cpp/classendstone_1_1Inventory/","title":"Class endstone::Inventory","text":"

          ClassList > endstone > Inventory

          Interface to the various inventories.

          • #include <endstone/inventory/inventory.h>

          Inherited by the following classes: endstone::PlayerInventory

          "},{"location":"reference/cpp/classendstone_1_1Inventory/#public-functions","title":"Public Functions","text":"Type Name virtual void addItem (ItemStack & item) = 0Stores the given ItemStacks in the inventory. This will try to fill existing stacks and empty slots as well as it can. virtual void clear () = 0Clears out the whole Inventory . virtual int first (ItemStack & item) = 0Returns the first slot in the inventory containing an ItemStack with the given stack. virtual std::vector< std::shared_ptr< ItemStack > > getContents () const = 0Returns all ItemStacks from the inventory. virtual std::shared_ptr< ItemStack > getItem (int index) const = 0Returns the ItemStack found in the slot at the given index. virtual int getMaxStackSize () const = 0Returns the maximum stack size for an ItemStack in this inventory. virtual int getSize () const = 0Returns the size of the inventory. virtual bool isEmpty () const = 0Check whether this inventory is empty. An inventory is considered to be empty if there are no ItemStacks in any slot of this inventory. virtual void setItem (int index, std::shared_ptr< ItemStack > item) = 0Stores the ItemStack at the given index of the inventory. virtual ~Inventory () = default"},{"location":"reference/cpp/classendstone_1_1Inventory/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Inventory/#function-additem","title":"function addItem","text":"

          Stores the given ItemStacks in the inventory. This will try to fill existing stacks and empty slots as well as it can.

          virtual void endstone::Inventory::addItem (\n    ItemStack & item\n) = 0\n

          Parameters:

          • item The ItemStack to add
          "},{"location":"reference/cpp/classendstone_1_1Inventory/#function-clear","title":"function clear","text":"
          virtual void endstone::Inventory::clear () = 0\n
          "},{"location":"reference/cpp/classendstone_1_1Inventory/#function-first","title":"function first","text":"

          Returns the first slot in the inventory containing an ItemStack with the given stack.

          virtual int endstone::Inventory::first (\n    ItemStack & item\n) = 0\n

          Parameters:

          • item The ItemStack to match against

          Returns:

          The slot index of the given ItemStack or -1 if not found

          "},{"location":"reference/cpp/classendstone_1_1Inventory/#function-getcontents","title":"function getContents","text":"

          Returns all ItemStacks from the inventory.

          virtual std::vector< std::shared_ptr< ItemStack > > endstone::Inventory::getContents () const = 0\n

          Returns:

          An array of ItemStacks from the inventory. Individual items may be null.

          "},{"location":"reference/cpp/classendstone_1_1Inventory/#function-getitem","title":"function getItem","text":"

          Returns the ItemStack found in the slot at the given index.

          virtual std::shared_ptr< ItemStack > endstone::Inventory::getItem (\n    int index\n) const = 0\n

          Parameters:

          • index The index of the Slot's ItemStack to return

          Returns:

          The ItemStack in the slot

          "},{"location":"reference/cpp/classendstone_1_1Inventory/#function-getmaxstacksize","title":"function getMaxStackSize","text":"

          Returns the maximum stack size for an ItemStack in this inventory.

          virtual int endstone::Inventory::getMaxStackSize () const = 0\n

          Returns:

          The maximum size for an ItemStack in this inventory.

          "},{"location":"reference/cpp/classendstone_1_1Inventory/#function-getsize","title":"function getSize","text":"

          Returns the size of the inventory.

          virtual int endstone::Inventory::getSize () const = 0\n

          Returns:

          The size of the inventory

          "},{"location":"reference/cpp/classendstone_1_1Inventory/#function-isempty","title":"function isEmpty","text":"

          Check whether this inventory is empty. An inventory is considered to be empty if there are no ItemStacks in any slot of this inventory.

          virtual bool endstone::Inventory::isEmpty () const = 0\n

          Returns:

          true if empty, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1Inventory/#function-setitem","title":"function setItem","text":"

          Stores the ItemStack at the given index of the inventory.

          virtual void endstone::Inventory::setItem (\n    int index,\n    std::shared_ptr< ItemStack > item\n) = 0\n

          Parameters:

          • index The index where to put the ItemStack
          • item The ItemStack to set
          "},{"location":"reference/cpp/classendstone_1_1Inventory/#function-inventory","title":"function ~Inventory","text":"
          virtual endstone::Inventory::~Inventory () = default\n

          The documentation for this class was generated from the following file include/endstone/inventory/inventory.h

          "},{"location":"reference/cpp/classendstone_1_1ItemStack/","title":"Class endstone::ItemStack","text":"

          ClassList > endstone > ItemStack

          Represents a stack of items.

          • #include <endstone/inventory/item_stack.h>

          Inherits the following classes: std::enable_shared_from_this< ItemStack >

          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#public-functions","title":"Public Functions","text":"Type Name ItemStack () = default ItemStack (std::string type, int amount=1) virtual int getAmount () constGets the amount of items in this stack. virtual std::string getType () constGets the type of this item. virtual void setAmount (int amount) Sets the amount of items in this stack. virtual void setType (std::string type) Sets the type of this item. virtual ~ItemStack () = default"},{"location":"reference/cpp/classendstone_1_1ItemStack/#protected-functions","title":"Protected Functions","text":"Type Name virtual const detail::EndstoneItemStack * asEndstoneItemStack () const virtual detail::EndstoneItemStack * asEndstoneItemStack ()"},{"location":"reference/cpp/classendstone_1_1ItemStack/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ItemStack/#function-itemstack-12","title":"function ItemStack [\u00bd]","text":"
          endstone::ItemStack::ItemStack () = default\n
          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#function-itemstack-22","title":"function ItemStack [2/2]","text":"
          inline explicit endstone::ItemStack::ItemStack (\n    std::string type,\n    int amount=1\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#function-getamount","title":"function getAmount","text":"

          Gets the amount of items in this stack.

          inline virtual int endstone::ItemStack::getAmount () const\n

          Returns:

          Amount of items in this stack

          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#function-gettype","title":"function getType","text":"

          Gets the type of this item.

          inline virtual std::string endstone::ItemStack::getType () const\n

          Returns:

          Type of the items in this stack

          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#function-setamount","title":"function setAmount","text":"

          Sets the amount of items in this stack.

          inline virtual void endstone::ItemStack::setAmount (\n    int amount\n) \n

          Parameters:

          • amount New amount of items in this stack
          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#function-settype","title":"function setType","text":"

          Sets the type of this item.

          inline virtual void endstone::ItemStack::setType (\n    std::string type\n) \n

          Parameters:

          • type New type to set the items in this stack to
          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#function-itemstack","title":"function ~ItemStack","text":"
          virtual endstone::ItemStack::~ItemStack () = default\n
          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#protected-functions-documentation","title":"Protected Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ItemStack/#function-asendstoneitemstack-12","title":"function asEndstoneItemStack [\u00bd]","text":"
          inline virtual const detail::EndstoneItemStack * endstone::ItemStack::asEndstoneItemStack () const\n
          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#function-asendstoneitemstack-22","title":"function asEndstoneItemStack [2/2]","text":"
          inline virtual detail::EndstoneItemStack * endstone::ItemStack::asEndstoneItemStack () \n
          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#friends-documentation","title":"Friends Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ItemStack/#friend-endstoneitemstack","title":"friend EndstoneItemStack","text":"
          class endstone::ItemStack::EndstoneItemStack (\n    detail::EndstoneItemStack\n) \n

          The documentation for this class was generated from the following file include/endstone/inventory/item_stack.h

          "},{"location":"reference/cpp/classendstone_1_1Label/","title":"Class endstone::Label","text":"

          ClassList > endstone > Label

          Represents a text label.

          • #include <endstone/form/controls/label.h>
          "},{"location":"reference/cpp/classendstone_1_1Label/#public-functions","title":"Public Functions","text":"Type Name Label () = default Label (Message text) Message getText () constGets the text of the label. Label & setText (Message text) Sets the text of the label."},{"location":"reference/cpp/classendstone_1_1Label/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Label/#function-label-12","title":"function Label [\u00bd]","text":"
          endstone::Label::Label () = default\n
          "},{"location":"reference/cpp/classendstone_1_1Label/#function-label-22","title":"function Label [2/2]","text":"
          inline explicit endstone::Label::Label (\n    Message text\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Label/#function-gettext","title":"function getText","text":"

          Gets the text of the label.

          inline Message endstone::Label::getText () const\n

          Returns:

          The text of the label.

          "},{"location":"reference/cpp/classendstone_1_1Label/#function-settext","title":"function setText","text":"

          Sets the text of the label.

          inline Label & endstone::Label::setText (\n    Message text\n) \n

          Parameters:

          • text The new text for the label.

          Returns:

          A reference to the current label.

          The documentation for this class was generated from the following file include/endstone/form/controls/label.h

          "},{"location":"reference/cpp/classendstone_1_1Language/","title":"Class endstone::Language","text":"

          ClassList > endstone > Language

          Represents the interface for translating text into different languages.

          • #include <endstone/lang/language.h>
          "},{"location":"reference/cpp/classendstone_1_1Language/#public-functions","title":"Public Functions","text":"Type Name virtual std::string getLocale () const = 0Gets the current locale. virtual std::string translate (std::string text) const = 0Translates a given text into the current locale. virtual std::string translate (std::string text, std::string locale) const = 0Translates a given text into a specific locale. virtual std::string translate (std::string text, std::vector< std::string > params) const = 0Translates a given text using a set of parameters for the current locale. virtual std::string translate (std::string text, std::vector< std::string > params, std::string locale) const = 0Translates a given text using a set of parameters for a specific locale. virtual std::string translate (Translatable translatable) const = 0Translates a Translatable object into the current locale. virtual std::string translate (Translatable translatable, std::string locale) const = 0Translates a Translatable object into a specific locale. virtual ~Language () = default"},{"location":"reference/cpp/classendstone_1_1Language/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Language/#function-getlocale","title":"function getLocale","text":"

          Gets the current locale.

          virtual std::string endstone::Language::getLocale () const = 0\n

          Returns:

          A string representing the current locale (e.g., \"en_US\").

          "},{"location":"reference/cpp/classendstone_1_1Language/#function-translate-16","title":"function translate [\u2159]","text":"

          Translates a given text into the current locale.

          virtual std::string endstone::Language::translate (\n    std::string text\n) const = 0\n

          Parameters:

          • text The text to be translated.

          Returns:

          The translated text in the current locale.

          "},{"location":"reference/cpp/classendstone_1_1Language/#function-translate-26","title":"function translate [2/6]","text":"

          Translates a given text into a specific locale.

          virtual std::string endstone::Language::translate (\n    std::string text,\n    std::string locale\n) const = 0\n

          Parameters:

          • text The text to be translated.
          • locale The locale identifier for the desired translation (e.g., \"en_US\").

          Returns:

          The translated text in the specified locale.

          "},{"location":"reference/cpp/classendstone_1_1Language/#function-translate-36","title":"function translate [3/6]","text":"

          Translates a given text using a set of parameters for the current locale.

          virtual std::string endstone::Language::translate (\n    std::string text,\n    std::vector< std::string > params\n) const = 0\n

          Parameters:

          • text The text to be translated.
          • params A list of parameters to be used in the translation.

          Returns:

          The translated text in the current locale, with parameters applied.

          "},{"location":"reference/cpp/classendstone_1_1Language/#function-translate-46","title":"function translate [4/6]","text":"

          Translates a given text using a set of parameters for a specific locale.

          virtual std::string endstone::Language::translate (\n    std::string text,\n    std::vector< std::string > params,\n    std::string locale\n) const = 0\n

          Parameters:

          • text The text to be translated.
          • params A list of parameters to be used in the translation.
          • locale The locale identifier for the desired translation (e.g., \"en_US\").

          Returns:

          The translated text in the specified locale, with parameters applied.

          "},{"location":"reference/cpp/classendstone_1_1Language/#function-translate-56","title":"function translate [\u215a]","text":"

          Translates a Translatable object into the current locale.

          virtual std::string endstone::Language::translate (\n    Translatable translatable\n) const = 0\n

          Parameters:

          • translatable A Translatable object containing text and parameters.

          Returns:

          The translated text in the current locale.

          "},{"location":"reference/cpp/classendstone_1_1Language/#function-translate-66","title":"function translate [6/6]","text":"

          Translates a Translatable object into a specific locale.

          virtual std::string endstone::Language::translate (\n    Translatable translatable,\n    std::string locale\n) const = 0\n

          Parameters:

          • translatable A Translatable object containing text and parameters.
          • locale The locale identifier for the desired translation (e.g., \"en_US\").

          Returns:

          The translated text in the specified locale.

          "},{"location":"reference/cpp/classendstone_1_1Language/#function-language","title":"function ~Language","text":"
          virtual endstone::Language::~Language () = default\n

          The documentation for this class was generated from the following file include/endstone/lang/language.h

          "},{"location":"reference/cpp/classendstone_1_1Level/","title":"Class endstone::Level","text":"

          ClassList > endstone > Level

          Represents a level, which may contain actors, chunks and blocks.

          • #include <endstone/level/level.h>
          "},{"location":"reference/cpp/classendstone_1_1Level/#public-functions","title":"Public Functions","text":"Type Name virtual std::vector< Actor * > getActors () const = 0Get a list of all actors in this level. virtual Dimension * getDimension (std::string name) const = 0Gets the dimension with the given name. virtual std::vector< Dimension * > getDimensions () const = 0Gets a list of all dimensions within this level. virtual std::string getName () const = 0Gets the unique name of this level. virtual int getTime () const = 0Gets the relative in-game time of this level. virtual void setTime (int time) = 0Sets the relative in-game time on the server. virtual ~Level () = default"},{"location":"reference/cpp/classendstone_1_1Level/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Level/#function-getactors","title":"function getActors","text":"

          Get a list of all actors in this level.

          virtual std::vector< Actor * > endstone::Level::getActors () const = 0\n

          Returns:

          A List of all actors currently residing in this level

          "},{"location":"reference/cpp/classendstone_1_1Level/#function-getdimension","title":"function getDimension","text":"

          Gets the dimension with the given name.

          virtual Dimension * endstone::Level::getDimension (\n    std::string name\n) const = 0\n

          Parameters:

          • name the name of the dimension to retrieve

          Returns:

          The Dimension with the given name, or nullptr if none exists

          "},{"location":"reference/cpp/classendstone_1_1Level/#function-getdimensions","title":"function getDimensions","text":"

          Gets a list of all dimensions within this level.

          virtual std::vector< Dimension * > endstone::Level::getDimensions () const = 0\n

          Returns:

          a list of dimensions

          "},{"location":"reference/cpp/classendstone_1_1Level/#function-getname","title":"function getName","text":"

          Gets the unique name of this level.

          virtual std::string endstone::Level::getName () const = 0\n

          Returns:

          Name of this level

          "},{"location":"reference/cpp/classendstone_1_1Level/#function-gettime","title":"function getTime","text":"

          Gets the relative in-game time of this level.

          virtual int endstone::Level::getTime () const = 0\n

          Returns:

          The current relative time

          "},{"location":"reference/cpp/classendstone_1_1Level/#function-settime","title":"function setTime","text":"

          Sets the relative in-game time on the server.

          virtual void endstone::Level::setTime (\n    int time\n) = 0\n

          Parameters:

          • time The new relative time to set the in-game time to
          "},{"location":"reference/cpp/classendstone_1_1Level/#function-level","title":"function ~Level","text":"
          virtual endstone::Level::~Level () = default\n

          The documentation for this class was generated from the following file include/endstone/level/level.h

          "},{"location":"reference/cpp/classendstone_1_1Location/","title":"Class endstone::Location","text":"

          ClassList > endstone > Location

          Represents a 3-dimensional location in a dimension within a level.

          • #include <endstone/level/location.h>

          Inherits the following classes: endstone::Position

          "},{"location":"reference/cpp/classendstone_1_1Location/#public-functions","title":"Public Functions","text":"Type Name Location (Dimension * dimension, int x, int y, int z, float pitch=0.0, float yaw=0.0) Location (Dimension * dimension, float x, float y, float z, float pitch=0.0, float yaw=0.0) float getPitch () const float getYaw () const void setPitch (float pitch) void setYaw (float yaw)"},{"location":"reference/cpp/classendstone_1_1Location/#public-functions-inherited-from-endstoneposition","title":"Public Functions inherited from endstone::Position","text":"

          See endstone::Position

          Type Name Position (Dimension * dimension, float x, float y, float z) int getBlockX () constGets the floored value of the X component, indicating the block that this location is contained with. int getBlockY () constGets the floored value of the Y component, indicating the block that this location is contained with. int getBlockZ () constGets the floored value of the Z component, indicating the block that this location is contained with. Dimension * getDimension () const void setDimension (Dimension & dimension)"},{"location":"reference/cpp/classendstone_1_1Location/#public-functions-inherited-from-endstonevector","title":"Public Functions inherited from endstone::Vector","text":"

          See endstone::Vector

          Type Name constexpr Vector () constexpr Vector (T x, T y, T z) constexpr T distance (const Vector< T > & other) const constexpr T distanceSquared (const Vector< T > & other) const constexpr T getX () constGets the X component. constexpr T getY () constGets the Y component. constexpr T getZ () constGets the Z component. constexpr T length () constGets the magnitude of the vector, defined as sqrt(x2+y2+z^2). constexpr T lengthSquared () constGets the magnitude of the vector squared. constexpr Vector< T > operator* (const Vector< T > & other) const Vector< T > operator* (T scalar) const Vector< T > & operator*= (const Vector< T > & other) constexpr Vector< T > operator+ (const Vector< T > & other) const Vector< T > operator+ (T scalar) const Vector< T > & operator+= (const Vector< T > & other) constexpr Vector< T > operator- (const Vector< T > & other) const Vector< T > operator- (T scalar) const Vector< T > & operator-= (const Vector< T > & other) constexpr Vector< T > operator/ (const Vector< T > & other) const Vector< T > operator/ (T scalar) const Vector< T > & operator/= (const Vector< T > & other) constexpr bool operator== (const Vector< T > & other) const constexpr void setX (T x) Set the X component. constexpr void setY (T y) Set the Y component. constexpr void setZ (T z) Set the Z component."},{"location":"reference/cpp/classendstone_1_1Location/#protected-attributes-inherited-from-endstonevector","title":"Protected Attributes inherited from endstone::Vector","text":"

          See endstone::Vector

          Type Name T x_ T y_ T z_"},{"location":"reference/cpp/classendstone_1_1Location/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Location/#function-location-12","title":"function Location [\u00bd]","text":"
          inline endstone::Location::Location (\n    Dimension * dimension,\n    int x,\n    int y,\n    int z,\n    float pitch=0.0,\n    float yaw=0.0\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Location/#function-location-22","title":"function Location [2/2]","text":"
          inline endstone::Location::Location (\n    Dimension * dimension,\n    float x,\n    float y,\n    float z,\n    float pitch=0.0,\n    float yaw=0.0\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Location/#function-getpitch","title":"function getPitch","text":"
          inline float endstone::Location::getPitch () const\n

          Gets the pitch of this location, measured in degrees.

          Returns:

          the incline's pitch

          "},{"location":"reference/cpp/classendstone_1_1Location/#function-getyaw","title":"function getYaw","text":"
          inline float endstone::Location::getYaw () const\n

          Gets the yaw of this location, measured in degrees.

          Returns:

          the rotation's yaw

          "},{"location":"reference/cpp/classendstone_1_1Location/#function-setpitch","title":"function setPitch","text":"
          inline void endstone::Location::setPitch (\n    float pitch\n) \n

          Sets the pitch of this location, measured in degrees. * A pitch of 0 represents level forward facing. * A pitch of 90 represents downward facing, or negative y direction. * A pitch of -90 represents upward facing, or positive y direction.

          Increasing pitch values the equivalent of looking down.

          Parameters:

          • pitch new incline's pitch
          "},{"location":"reference/cpp/classendstone_1_1Location/#function-setyaw","title":"function setYaw","text":"
          inline void endstone::Location::setYaw (\n    float yaw\n) \n

          Sets the yaw of this location, measured in degrees. * A yaw of 0 or 360 represents the positive z direction. * A yaw of 180 represents the negative z direction. * A yaw of 90 represents the negative x direction. * A yaw of 270 represents the positive x direction.

          Increasing yaw values are the equivalent of turning to your right-facing, increasing the scale of the next respective axis, and decreasing the scale of the previous axis.

          Parameters:

          • yaw new rotation's yaw

          The documentation for this class was generated from the following file include/endstone/level/location.h

          "},{"location":"reference/cpp/classendstone_1_1Logger/","title":"Class endstone::Logger","text":"

          ClassList > endstone > Logger

          Logger class which can format and output varies levels of logs.

          • #include <endstone/logger.h>
          "},{"location":"reference/cpp/classendstone_1_1Logger/#public-types","title":"Public Types","text":"Type Name enum std::uint8_t Level Specifies the log level."},{"location":"reference/cpp/classendstone_1_1Logger/#public-functions","title":"Public Functions","text":"Type Name Logger () = default void critical (const std::string & message) const void critical (const fmt::format_string< Args... > format, Args &&... args) const void debug (const std::string & message) const void debug (const fmt::format_string< Args... > format, Args &&... args) const void error (const std::string & message) const void error (const fmt::format_string< Args... > format, Args &&... args) const void error (const endstone::Error & error) const virtual std::string_view getName () const = 0Get the name of this Logger instance. void info (const std::string & message) const void info (const fmt::format_string< Args... > format, Args &&... args) const virtual bool isEnabledFor (Level level) const = 0Check if the Logger instance is enabled for the given logLevel . virtual void log (Level level, const std::string & message) const = 0Log a message at the given level. void log (Level level, const fmt::format_string< Args... > format, Args &&... args) const virtual void setLevel (Level level) = 0Set the logging level for this Logger instance. void trace (const std::string & message) const void trace (const fmt::format_string< Args... > format, Args &&... args) const void warning (const std::string & message) const void warning (const fmt::format_string< Args... > format, Args &&... args) const virtual ~Logger () = default"},{"location":"reference/cpp/classendstone_1_1Logger/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Logger/#enum-level","title":"enum Level","text":"
          enum endstone::Logger::Level {\n    Trace = 0,\n    Debug = 1,\n    Info = 2,\n    Warning = 3,\n    Error = 4,\n    Critical = 5,\n    Off = 6\n};\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Logger/#function-logger","title":"function Logger","text":"
          endstone::Logger::Logger () = default\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-critical-12","title":"function critical [\u00bd]","text":"
          inline void endstone::Logger::critical (\n    const std::string & message\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-critical-22","title":"function critical [2/2]","text":"
          template<typename... Args>\ninline void endstone::Logger::critical (\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-debug-12","title":"function debug [\u00bd]","text":"
          inline void endstone::Logger::debug (\n    const std::string & message\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-debug-22","title":"function debug [2/2]","text":"
          template<typename... Args>\ninline void endstone::Logger::debug (\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-error-13","title":"function error [\u2153]","text":"
          inline void endstone::Logger::error (\n    const std::string & message\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-error-23","title":"function error [\u2154]","text":"
          template<typename... Args>\ninline void endstone::Logger::error (\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-error-33","title":"function error [3/3]","text":"
          inline void endstone::Logger::error (\n    const endstone::Error & error\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-getname","title":"function getName","text":"

          Get the name of this Logger instance.

          virtual std::string_view endstone::Logger::getName () const = 0\n

          Returns:

          The name of this Logger instance.

          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-info-12","title":"function info [\u00bd]","text":"
          inline void endstone::Logger::info (\n    const std::string & message\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-info-22","title":"function info [2/2]","text":"
          template<typename... Args>\ninline void endstone::Logger::info (\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-isenabledfor","title":"function isEnabledFor","text":"

          Check if the Logger instance is enabled for the given logLevel .

          virtual bool endstone::Logger::isEnabledFor (\n    Level level\n) const = 0\n

          Parameters:

          • level The log level to check

          Returns:

          true if the logger is enabled for the Level, false otherwise.

          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-log-12","title":"function log [\u00bd]","text":"

          Log a message at the given level.

          virtual void endstone::Logger::log (\n    Level level,\n    const std::string & message\n) const = 0\n

          Parameters:

          • level The level at which the message should be logged.
          • message The message to log.
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-log-22","title":"function log [2/2]","text":"
          template<typename... Args>\ninline void endstone::Logger::log (\n    Level level,\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-setlevel","title":"function setLevel","text":"

          Set the logging level for this Logger instance.

          virtual void endstone::Logger::setLevel (\n    Level level\n) = 0\n

          Parameters:

          • level The desired log level
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-trace-12","title":"function trace [\u00bd]","text":"
          inline void endstone::Logger::trace (\n    const std::string & message\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-trace-22","title":"function trace [2/2]","text":"
          template<typename... Args>\ninline void endstone::Logger::trace (\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-warning-12","title":"function warning [\u00bd]","text":"
          inline void endstone::Logger::warning (\n    const std::string & message\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-warning-22","title":"function warning [2/2]","text":"
          template<typename... Args>\ninline void endstone::Logger::warning (\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-logger_1","title":"function ~Logger","text":"
          virtual endstone::Logger::~Logger () = default\n

          The documentation for this class was generated from the following file include/endstone/logger.h

          "},{"location":"reference/cpp/classendstone_1_1MessageForm/","title":"Class endstone::MessageForm","text":"

          ClassList > endstone > MessageForm

          Represents a form with two buttons.

          • #include <endstone/form/message_form.h>

          Inherits the following classes: endstone::Form

          "},{"location":"reference/cpp/classendstone_1_1MessageForm/#public-types","title":"Public Types","text":"Type Name typedef std::function< void(Player *, int)> OnSubmitCallback"},{"location":"reference/cpp/classendstone_1_1MessageForm/#public-types-inherited-from-endstoneform","title":"Public Types inherited from endstone::Form","text":"

          See endstone::Form

          Type Name typedef std::function< void(Player *)> OnCloseCallback"},{"location":"reference/cpp/classendstone_1_1MessageForm/#public-functions","title":"Public Functions","text":"Type Name Message getButton1 () constGet the text of button1. Message getButton2 () constGet the text of button2. Message getContent () constGet the content of the form. OnSubmitCallback getOnSubmit () constGets the on submit callback of the form. MessageForm & setButton1 (Message text) Set the text of button1. MessageForm & setButton2 (Message text) Set the text of button2. MessageForm & setContent (Message text) Set the content of the form. MessageForm & setOnSubmit (OnSubmitCallback on_submit) Sets the on submit callback of the form."},{"location":"reference/cpp/classendstone_1_1MessageForm/#public-functions-inherited-from-endstoneform","title":"Public Functions inherited from endstone::Form","text":"

          See endstone::Form

          Type Name Form () = default OnCloseCallback getOnClose () constGets the on close callback of the form. Message getTitle () constGets the title of the form. T & setOnClose (OnCloseCallback on_close) Sets the on close callback of the form. T & setTitle (Message title) Sets the title of the form."},{"location":"reference/cpp/classendstone_1_1MessageForm/#protected-attributes-inherited-from-endstoneform","title":"Protected Attributes inherited from endstone::Form","text":"

          See endstone::Form

          Type Name OnCloseCallback on_close_ Message title_"},{"location":"reference/cpp/classendstone_1_1MessageForm/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1MessageForm/#typedef-onsubmitcallback","title":"typedef OnSubmitCallback","text":"
          using endstone::MessageForm::OnSubmitCallback =  std::function<void(Player *, int)>;\n
          "},{"location":"reference/cpp/classendstone_1_1MessageForm/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1MessageForm/#function-getbutton1","title":"function getButton1","text":"

          Get the text of button1.

          inline Message endstone::MessageForm::getButton1 () const\n

          Returns:

          The text of button1.

          "},{"location":"reference/cpp/classendstone_1_1MessageForm/#function-getbutton2","title":"function getButton2","text":"

          Get the text of button2.

          inline Message endstone::MessageForm::getButton2 () const\n

          Returns:

          The text of button2.

          "},{"location":"reference/cpp/classendstone_1_1MessageForm/#function-getcontent","title":"function getContent","text":"

          Get the content of the form.

          inline Message endstone::MessageForm::getContent () const\n

          Returns:

          The content of the form.

          "},{"location":"reference/cpp/classendstone_1_1MessageForm/#function-getonsubmit","title":"function getOnSubmit","text":"

          Gets the on submit callback of the form.

          inline OnSubmitCallback endstone::MessageForm::getOnSubmit () const\n

          Returns:

          The on submit callback of the form.

          "},{"location":"reference/cpp/classendstone_1_1MessageForm/#function-setbutton1","title":"function setButton1","text":"

          Set the text of button1.

          inline MessageForm & endstone::MessageForm::setButton1 (\n    Message text\n) \n

          Parameters:

          • text The text to set as the button1 text.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1MessageForm/#function-setbutton2","title":"function setButton2","text":"

          Set the text of button2.

          inline MessageForm & endstone::MessageForm::setButton2 (\n    Message text\n) \n

          Parameters:

          • text The text to set as the button2 text.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1MessageForm/#function-setcontent","title":"function setContent","text":"

          Set the content of the form.

          inline MessageForm & endstone::MessageForm::setContent (\n    Message text\n) \n

          Parameters:

          • text The text to set as the content.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1MessageForm/#function-setonsubmit","title":"function setOnSubmit","text":"

          Sets the on submit callback of the form.

          inline MessageForm & endstone::MessageForm::setOnSubmit (\n    OnSubmitCallback on_submit\n) \n

          Parameters:

          • on_submit The callback to be set.

          Returns:

          A reference to the current form.

          The documentation for this class was generated from the following file include/endstone/form/message_form.h

          "},{"location":"reference/cpp/classendstone_1_1Mob/","title":"Class endstone::Mob","text":"

          ClassList > endstone > Mob

          Represents a mobile entity (i.e. living entity), such as a monster or player.

          • #include <endstone/actor/mob.h>

          Inherits the following classes: endstone::Actor

          Inherited by the following classes: endstone::Player

          "},{"location":"reference/cpp/classendstone_1_1Mob/#public-functions","title":"Public Functions","text":"Type Name virtual bool isGliding () const = 0Checks to see if an actor is gliding, such as using an Elytra."},{"location":"reference/cpp/classendstone_1_1Mob/#public-functions-inherited-from-endstoneactor","title":"Public Functions inherited from endstone::Actor","text":"

          See endstone::Actor

          Type Name virtual bool addScoreboardTag (std::string tag) const = 0Adds a tag to this actor. virtual Actor * asActor () override constGets a CommandSender asActor . virtual Dimension & getDimension () const = 0 virtual int getHealth () const = 0Gets the entity's health from 0 to its max possible value, where 0 is dead. virtual std::int64_t getId () const = 0Returns a unique id for this actor. virtual Level & getLevel () const = 0 virtual Location getLocation () const = 0 virtual int getMaxHealth () const = 0Gets the maximum health this entity has. virtual std::uint64_t getRuntimeId () const = 0 virtual std::vector< std::string > getScoreboardTags () const = 0Returns a list of scoreboard tags for this actor. virtual Vector< float > getVelocity () const = 0 virtual bool isDead () const = 0Returns true if this actor has been marked for removal. virtual bool isInLava () const = 0 virtual bool isInWater () const = 0 virtual bool isOnGround () const = 0 virtual bool removeScoreboardTag (std::string tag) const = 0Removes a given tag from this actor. virtual Result< void > setHealth (int health) const = 0 virtual void setRotation (float yaw, float pitch) = 0 virtual void teleport (Location location) = 0 virtual void teleport (Actor & target) = 0"},{"location":"reference/cpp/classendstone_1_1Mob/#public-functions-inherited-from-endstonecommandsender","title":"Public Functions inherited from endstone::CommandSender","text":"

          See endstone::CommandSender

          Type Name virtual Actor * asActor () constGets a CommandSender asActor . virtual CommandSender * asCommandSender () override constCasts a Permissible asCommandSender . virtual ConsoleCommandSender * asConsole () constGets a CommandSender as Console. virtual Player * asPlayer () constGets a CommandSender asPlayer . virtual std::string getName () const = 0Gets the name of this command sender. virtual Server & getServer () const = 0Returns the server instance that this command is running on. virtual void sendErrorMessage (const Message & message) const = 0Sends this sender a error message. void sendErrorMessage (const fmt::format_string< Args... > format, Args &&... args) const virtual void sendMessage (const Message & message) const = 0Sends this sender a message. void sendMessage (const fmt::format_string< Args... > format, Args &&... args) const"},{"location":"reference/cpp/classendstone_1_1Mob/#public-functions-inherited-from-endstonepermissible","title":"Public Functions inherited from endstone::Permissible","text":"

          See endstone::Permissible

          Type Name virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin, const std::string & name, bool value) = 0 virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin) = 0 virtual CommandSender * asCommandSender () const = 0Casts a Permissible asCommandSender . virtual std::unordered_set< PermissionAttachmentInfo * > getEffectivePermissions () const = 0 virtual bool hasPermission (std::string name) const = 0 virtual bool hasPermission (const Permission & perm) const = 0 virtual bool isOp () const = 0Checks if this object is a server operator. virtual bool isPermissionSet (std::string name) const = 0 virtual bool isPermissionSet (const Permission & perm) const = 0 virtual void recalculatePermissions () = 0 virtual Result< void > removeAttachment (PermissionAttachment & attachment) = 0 virtual void setOp (bool value) = 0Sets the operator status of this object. virtual ~Permissible () = default"},{"location":"reference/cpp/classendstone_1_1Mob/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Mob/#function-isgliding","title":"function isGliding","text":"

          Checks to see if an actor is gliding, such as using an Elytra.

          virtual bool endstone::Mob::isGliding () const = 0\n

          Returns:

          True if this actor is gliding.

          The documentation for this class was generated from the following file include/endstone/actor/mob.h

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/","title":"Class endstone::ModalForm","text":"

          ClassList > endstone > ModalForm

          Represents a modal form with controls.

          • #include <endstone/form/modal_form.h>

          Inherits the following classes: endstone::Form

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#public-types","title":"Public Types","text":"Type Name typedef std::variant< Dropdown, Label, Slider, StepSlider, TextInput, Toggle > Control typedef std::function< void(Player *, std::string)> OnSubmitCallback"},{"location":"reference/cpp/classendstone_1_1ModalForm/#public-types-inherited-from-endstoneform","title":"Public Types inherited from endstone::Form","text":"

          See endstone::Form

          Type Name typedef std::function< void(Player *)> OnCloseCallback"},{"location":"reference/cpp/classendstone_1_1ModalForm/#public-functions","title":"Public Functions","text":"Type Name ModalForm & addControl (const Control & control) Adds a control to the form. std::vector< Control > getControls () constGets the controls of the modal form. std::optional< std::string > getIcon () constGet the icon of the form. OnSubmitCallback getOnSubmit () constGets the on submit callback of the form. std::optional< Message > getSubmitButton () constGets the submit button text of the form. ModalForm & setControls (std::vector< Control > controls) Sets the controls of the modal form. ModalForm & setIcon (std::optional< std::string > icon) Sets the icon of the form. ModalForm & setOnSubmit (OnSubmitCallback on_submit) Sets the on submit callback of the form. ModalForm & setSubmitButton (std::optional< Message > text) Sets the submit button text of the form."},{"location":"reference/cpp/classendstone_1_1ModalForm/#public-functions-inherited-from-endstoneform","title":"Public Functions inherited from endstone::Form","text":"

          See endstone::Form

          Type Name Form () = default OnCloseCallback getOnClose () constGets the on close callback of the form. Message getTitle () constGets the title of the form. T & setOnClose (OnCloseCallback on_close) Sets the on close callback of the form. T & setTitle (Message title) Sets the title of the form."},{"location":"reference/cpp/classendstone_1_1ModalForm/#protected-attributes-inherited-from-endstoneform","title":"Protected Attributes inherited from endstone::Form","text":"

          See endstone::Form

          Type Name OnCloseCallback on_close_ Message title_"},{"location":"reference/cpp/classendstone_1_1ModalForm/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ModalForm/#typedef-control","title":"typedef Control","text":"
          using endstone::ModalForm::Control =  std::variant<Dropdown, Label, Slider, StepSlider, TextInput, Toggle>;\n
          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#typedef-onsubmitcallback","title":"typedef OnSubmitCallback","text":"
          using endstone::ModalForm::OnSubmitCallback =  std::function<void(Player *, std::string)>;\n
          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ModalForm/#function-addcontrol","title":"function addControl","text":"

          Adds a control to the form.

          inline ModalForm & endstone::ModalForm::addControl (\n    const Control & control\n) \n

          Parameters:

          • control The control to add to the form.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#function-getcontrols","title":"function getControls","text":"

          Gets the controls of the modal form.

          inline std::vector< Control > endstone::ModalForm::getControls () const\n

          Returns:

          A list of controls in the modal form.

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#function-geticon","title":"function getIcon","text":"

          Get the icon of the form.

          inline std::optional< std::string > endstone::ModalForm::getIcon () const\n

          Returns:

          The path or URL to the icon file

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#function-getonsubmit","title":"function getOnSubmit","text":"

          Gets the on submit callback of the form.

          inline OnSubmitCallback endstone::ModalForm::getOnSubmit () const\n

          Returns:

          The on submit callback of the form.

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#function-getsubmitbutton","title":"function getSubmitButton","text":"

          Gets the submit button text of the form.

          inline std::optional< Message > endstone::ModalForm::getSubmitButton () const\n

          Returns:

          The submit button text of the form.

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#function-setcontrols","title":"function setControls","text":"

          Sets the controls of the modal form.

          inline ModalForm & endstone::ModalForm::setControls (\n    std::vector< Control > controls\n) \n

          Parameters:

          • controls The list of controls to set.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#function-seticon","title":"function setIcon","text":"

          Sets the icon of the form.

          inline ModalForm & endstone::ModalForm::setIcon (\n    std::optional< std::string > icon\n) \n

          Parameters:

          • icon The path or URL to the icon file.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#function-setonsubmit","title":"function setOnSubmit","text":"

          Sets the on submit callback of the form.

          inline ModalForm & endstone::ModalForm::setOnSubmit (\n    OnSubmitCallback on_submit\n) \n

          Parameters:

          • on_submit The callback to be set.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#function-setsubmitbutton","title":"function setSubmitButton","text":"

          Sets the submit button text of the form.

          inline ModalForm & endstone::ModalForm::setSubmitButton (\n    std::optional< Message > text\n) \n

          Parameters:

          • text The submit button text to set.

          Returns:

          A reference to the current form.

          The documentation for this class was generated from the following file include/endstone/form/modal_form.h

          "},{"location":"reference/cpp/classendstone_1_1Objective/","title":"Class endstone::Objective","text":"

          ClassList > endstone > Objective

          Represents an objective on a scoreboard that can show scores specific to entries.

          • #include <endstone/scoreboard/objective.h>
          "},{"location":"reference/cpp/classendstone_1_1Objective/#public-functions","title":"Public Functions","text":"Type Name virtual Result< const Criteria * > getCriteria () const = 0Gets the criteria this objective tracks. virtual Result< std::string > getDisplayName () const = 0Gets the name displayed to players for this objective. virtual Result< DisplaySlot > getDisplaySlot () const = 0Gets the display slot this objective is displayed at. virtual Result< std::string > getName () const = 0Gets the name of this Objective . virtual Result< RenderType > getRenderType () const = 0 virtual Result< std::unique_ptr< Score > > getScore (ScoreEntry entry) const = 0Gets an entry's Score for this objective. virtual Scoreboard & getScoreboard () const = 0Gets the scoreboard to which this objective is attached. virtual Result< ObjectiveSortOrder > getSortOrder () const = 0Gets the sort order for this objective. virtual Result< bool > isDisplayed () const = 0Gets if the objective is currently displayed in a slot. virtual Result< bool > isModifiable () const = 0Gets if the objective's scores can be modified directly by a plugin. virtual bool operator!= (const Objective & other) const = 0 virtual bool operator== (const Objective & other) const = 0 virtual Result< void > setDisplay (std::optional< DisplaySlot > slot) = 0Sets the display slot for this objective. This will remove it from any other display slot. virtual Result< void > setDisplay (std::optional< DisplaySlot > slot, ObjectiveSortOrder order) = 0Sets the display slot and sort order for this objective. This will remove it from any other display slot. virtual Result< void > setDisplayName (std::string display_name) = 0Sets the name displayed to players for this objective. virtual Result< void > setRenderType (RenderType render_type) = 0Sets manner in which this objective will be rendered. virtual Result< void > unregister () const = 0Unregisters this objective from the associated Scoreboard . virtual ~Objective () = default"},{"location":"reference/cpp/classendstone_1_1Objective/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Objective/#function-getcriteria","title":"function getCriteria","text":"

          Gets the criteria this objective tracks.

          virtual Result< const Criteria * > endstone::Objective::getCriteria () const = 0\n

          Returns:

          this objective's criteria.

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-getdisplayname","title":"function getDisplayName","text":"

          Gets the name displayed to players for this objective.

          virtual Result< std::string > endstone::Objective::getDisplayName () const = 0\n

          Returns:

          this objective's display name

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-getdisplayslot","title":"function getDisplaySlot","text":"

          Gets the display slot this objective is displayed at.

          virtual Result< DisplaySlot > endstone::Objective::getDisplaySlot () const = 0\n

          Returns:

          the display slot for this objective

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-getname","title":"function getName","text":"

          Gets the name of this Objective .

          virtual Result< std::string > endstone::Objective::getName () const = 0\n

          Returns:

          this objective's name

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-getrendertype","title":"function getRenderType","text":"
          virtual Result< RenderType > endstone::Objective::getRenderType () const = 0\n

          Gets manner in which this objective will be rendered.

          Returns:

          the render type

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-getscore","title":"function getScore","text":"

          Gets an entry's Score for this objective.

          virtual Result< std::unique_ptr< Score > > endstone::Objective::getScore (\n    ScoreEntry entry\n) const = 0\n

          Parameters:

          • entry Entry for the Score

          Returns:

          Score tracking the Objective and entry specified

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-getscoreboard","title":"function getScoreboard","text":"

          Gets the scoreboard to which this objective is attached.

          virtual Scoreboard & endstone::Objective::getScoreboard () const = 0\n

          Returns:

          Owning scoreboard

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-getsortorder","title":"function getSortOrder","text":"

          Gets the sort order for this objective.

          virtual Result< ObjectiveSortOrder > endstone::Objective::getSortOrder () const = 0\n

          Returns:

          The sort order for this objective.

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-isdisplayed","title":"function isDisplayed","text":"

          Gets if the objective is currently displayed in a slot.

          virtual Result< bool > endstone::Objective::isDisplayed () const = 0\n

          Returns:

          true if the objective is displayed

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-ismodifiable","title":"function isModifiable","text":"

          Gets if the objective's scores can be modified directly by a plugin.

          virtual Result< bool > endstone::Objective::isModifiable () const = 0\n

          Returns:

          true if scores are modifiable

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-operator","title":"function operator!=","text":"
          virtual bool endstone::Objective::operator!= (\n    const Objective & other\n) const = 0\n
          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-operator_1","title":"function operator==","text":"
          virtual bool endstone::Objective::operator== (\n    const Objective & other\n) const = 0\n
          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-setdisplay-12","title":"function setDisplay [\u00bd]","text":"

          Sets the display slot for this objective. This will remove it from any other display slot.

          virtual Result< void > endstone::Objective::setDisplay (\n    std::optional< DisplaySlot > slot\n) = 0\n

          Parameters:

          • slot The display slot where this objective should be displayed.
          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-setdisplay-22","title":"function setDisplay [2/2]","text":"

          Sets the display slot and sort order for this objective. This will remove it from any other display slot.

          virtual Result< void > endstone::Objective::setDisplay (\n    std::optional< DisplaySlot > slot,\n    ObjectiveSortOrder order\n) = 0\n

          Parameters:

          • slot The display slot where this objective should be displayed.
          • order The sort order for this objective in the display slot.
          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-setdisplayname","title":"function setDisplayName","text":"

          Sets the name displayed to players for this objective.

          virtual Result< void > endstone::Objective::setDisplayName (\n    std::string display_name\n) = 0\n

          Parameters:

          • display_name Display name to set
          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-setrendertype","title":"function setRenderType","text":"

          Sets manner in which this objective will be rendered.

          virtual Result< void > endstone::Objective::setRenderType (\n    RenderType render_type\n) = 0\n

          Parameters:

          • render_type new render type
          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-unregister","title":"function unregister","text":"
          virtual Result< void > endstone::Objective::unregister () const = 0\n
          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-objective","title":"function ~Objective","text":"
          virtual endstone::Objective::~Objective () = default\n

          The documentation for this class was generated from the following file include/endstone/scoreboard/objective.h

          "},{"location":"reference/cpp/classendstone_1_1Packet/","title":"Class endstone::Packet","text":"

          ClassList > endstone > Packet

          Represents a packet.

          • #include <endstone/network/packet.h>

          Inherited by the following classes: endstone::SpawnParticleEffectPacket

          "},{"location":"reference/cpp/classendstone_1_1Packet/#public-functions","title":"Public Functions","text":"Type Name virtual PacketType getType () const = 0Gets the type of the packet. virtual ~Packet () = default"},{"location":"reference/cpp/classendstone_1_1Packet/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Packet/#function-gettype","title":"function getType","text":"

          Gets the type of the packet.

          virtual PacketType endstone::Packet::getType () const = 0\n

          Returns:

          The type of the packet.

          "},{"location":"reference/cpp/classendstone_1_1Packet/#function-packet","title":"function ~Packet","text":"
          virtual endstone::Packet::~Packet () = default\n

          The documentation for this class was generated from the following file include/endstone/network/packet.h

          "},{"location":"reference/cpp/classendstone_1_1Permissible/","title":"Class endstone::Permissible","text":"

          ClassList > endstone > Permissible

          Represents an object that may become a server operator and can be assigned permissions.

          • #include <endstone/permissions/permissible.h>

          Inherited by the following classes: endstone::CommandSender

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#public-functions","title":"Public Functions","text":"Type Name virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin, const std::string & name, bool value) = 0 virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin) = 0 virtual CommandSender * asCommandSender () const = 0Casts a Permissible asCommandSender . virtual std::unordered_set< PermissionAttachmentInfo * > getEffectivePermissions () const = 0 virtual bool hasPermission (std::string name) const = 0 virtual bool hasPermission (const Permission & perm) const = 0 virtual bool isOp () const = 0Checks if this object is a server operator. virtual bool isPermissionSet (std::string name) const = 0 virtual bool isPermissionSet (const Permission & perm) const = 0 virtual void recalculatePermissions () = 0 virtual Result< void > removeAttachment (PermissionAttachment & attachment) = 0 virtual void setOp (bool value) = 0Sets the operator status of this object. virtual ~Permissible () = default"},{"location":"reference/cpp/classendstone_1_1Permissible/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Permissible/#function-addattachment-12","title":"function addAttachment [\u00bd]","text":"
          virtual Result< PermissionAttachment * > endstone::Permissible::addAttachment (\n    Plugin & plugin,\n    const std::string & name,\n    bool value\n) = 0\n

          Adds a new PermissionAttachment with a single permission by name and value

          Parameters:

          • plugin Plugin responsible for this attachment, may not be null or disabled
          • name Name of the permission to attach
          • value Value of the permission

          Returns:

          The PermissionAttachment that was just created

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-addattachment-22","title":"function addAttachment [2/2]","text":"
          virtual Result< PermissionAttachment * > endstone::Permissible::addAttachment (\n    Plugin & plugin\n) = 0\n

          Adds a new empty PermissionAttachment to this object

          Parameters:

          • plugin Plugin responsible for this attachment, may not be null or disabled

          Returns:

          The PermissionAttachment that was just created

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-ascommandsender","title":"function asCommandSender","text":"

          Casts a Permissible asCommandSender .

          virtual CommandSender * endstone::Permissible::asCommandSender () const = 0\n

          Returns:

          CommandSender, nullptr if not a CommandSender

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-geteffectivepermissions","title":"function getEffectivePermissions","text":"
          virtual std::unordered_set< PermissionAttachmentInfo * > endstone::Permissible::getEffectivePermissions () const = 0\n

          Gets a set containing all the permissions currently in effect by this object

          Returns:

          Set of currently effective permissions

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-haspermission-12","title":"function hasPermission [\u00bd]","text":"
          virtual bool endstone::Permissible::hasPermission (\n    std::string name\n) const = 0\n

          Gets the value of the specified permission, if set. If a permission override is not set on this object, the default value of the permission will be returned.

          Parameters:

          • name Name of the permission

          Returns:

          Value of the permission

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-haspermission-22","title":"function hasPermission [2/2]","text":"
          virtual bool endstone::Permissible::hasPermission (\n    const Permission & perm\n) const = 0\n

          Gets the value of the specified permission, if set. If a permission override is not set on this object, the default value of the permission will be returned.

          Parameters:

          • perm Permission to get

          Returns:

          Value of the permission

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-isop","title":"function isOp","text":"

          Checks if this object is a server operator.

          virtual bool endstone::Permissible::isOp () const = 0\n

          Returns:

          true if this is an operator, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-ispermissionset-12","title":"function isPermissionSet [\u00bd]","text":"
          virtual bool endstone::Permissible::isPermissionSet (\n    std::string name\n) const = 0\n

          Checks if this object contains an override for the specified permission, by fully qualified name

          Parameters:

          • name Name of the permission

          Returns:

          true if the permission is set, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-ispermissionset-22","title":"function isPermissionSet [2/2]","text":"
          virtual bool endstone::Permissible::isPermissionSet (\n    const Permission & perm\n) const = 0\n

          Checks if this object contains an override for the specified Permission

          Parameters:

          • perm Permission to check

          Returns:

          true if the permission is set, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-recalculatepermissions","title":"function recalculatePermissions","text":"
          virtual void endstone::Permissible::recalculatePermissions () = 0\n

          Recalculates the permissions for this object, if the attachments have changed values. This should very rarely need to be called from a plugin.

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-removeattachment","title":"function removeAttachment","text":"
          virtual Result< void > endstone::Permissible::removeAttachment (\n    PermissionAttachment & attachment\n) = 0\n

          Removes the given PermissionAttachment from this object

          Parameters:

          • attachment Attachment to remove

          Returns:

          true if the specified attachment was removed successfully, false when it isn't part of this object

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-setop","title":"function setOp","text":"

          Sets the operator status of this object.

          virtual void endstone::Permissible::setOp (\n    bool value\n) = 0\n

          Parameters:

          • value New operator value
          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-permissible","title":"function ~Permissible","text":"
          virtual endstone::Permissible::~Permissible () = default\n

          The documentation for this class was generated from the following file include/endstone/permissions/permissible.h

          "},{"location":"reference/cpp/classendstone_1_1Permission/","title":"Class endstone::Permission","text":"

          ClassList > endstone > Permission

          Represents a unique permission that may be attached to a Permissible .

          • #include <endstone/permissions/permission.h>
          "},{"location":"reference/cpp/classendstone_1_1Permission/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const PermissionDefault DefaultPermission = = PermissionDefault::Operator"},{"location":"reference/cpp/classendstone_1_1Permission/#public-functions","title":"Public Functions","text":"Type Name Permission (std::string name, std::string description=\"\", PermissionDefault default_value=DefaultPermission, std::unordered_map< std::string, bool > children={}) Permission * addParent (std::string name, bool value) void addParent (Permission & perm, bool value) const std::unordered_map< std::string, bool > & getChildren () PermissionDefault getDefault () const std::string getDescription () const std::string getName () const std::unordered_set< Permissible * > getPermissibles () const void init (PluginManager & plugin_manager) void recalculatePermissibles () void setDefault (PermissionDefault value) void setDescription (std::string value)"},{"location":"reference/cpp/classendstone_1_1Permission/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Permission/#variable-defaultpermission","title":"variable DefaultPermission","text":"
          const PermissionDefault endstone::Permission::DefaultPermission;\n
          "},{"location":"reference/cpp/classendstone_1_1Permission/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Permission/#function-permission","title":"function Permission","text":"
          inline explicit endstone::Permission::Permission (\n    std::string name,\n    std::string description=\"\",\n    PermissionDefault default_value=DefaultPermission,\n    std::unordered_map< std::string, bool > children={}\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-addparent-12","title":"function addParent [\u00bd]","text":"
          inline Permission * endstone::Permission::addParent (\n    std::string name,\n    bool value\n) \n

          Adds this permission to the specified parent permission.

          If the parent permission does not exist, it will be created and registered.

          Parameters:

          • name Name of the parent permission
          • value The value to set this permission to

          Returns:

          Parent permission it created or loaded

          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-addparent-22","title":"function addParent [2/2]","text":"
          inline void endstone::Permission::addParent (\n    Permission & perm,\n    bool value\n) const\n

          Adds this permission to the specified parent permission.

          Parameters:

          • perm Parent permission to register with
          • value The value to set this permission to
          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-getchildren","title":"function getChildren","text":"
          inline std::unordered_map< std::string, bool > & endstone::Permission::getChildren () \n

          Gets the children of this permission. If you change this map in any form, you must call recalculatePermissibles() to recalculate all Permissibles

          Returns:

          Permission children

          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-getdefault","title":"function getDefault","text":"
          inline PermissionDefault endstone::Permission::getDefault () const\n

          Gets the default value of this permission.

          Returns:

          Default value of this permission.

          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-getdescription","title":"function getDescription","text":"
          inline std::string endstone::Permission::getDescription () const\n

          Gets a brief description of this permission, may be empty

          Returns:

          Brief description of this permission

          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-getname","title":"function getName","text":"
          inline std::string endstone::Permission::getName () const\n

          Returns the unique fully qualified name of this Permission

          Returns:

          Fully qualified name

          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-getpermissibles","title":"function getPermissibles","text":"
          inline std::unordered_set< Permissible * > endstone::Permission::getPermissibles () const\n

          Gets a set containing every Permissible that has this permission. This set cannot be modified.

          Returns:

          Set containing permissibles with this permission

          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-init","title":"function init","text":"
          inline void endstone::Permission::init (\n    PluginManager & plugin_manager\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-recalculatepermissibles","title":"function recalculatePermissibles","text":"
          inline void endstone::Permission::recalculatePermissibles () \n

          Recalculates all Permissibles that contain this permission.

          This should be called after modifying the children, and is automatically called after modifying the default value

          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-setdefault","title":"function setDefault","text":"
          inline void endstone::Permission::setDefault (\n    PermissionDefault value\n) \n

          Sets the default value of this permission.

          This will not be saved to disk, and is a temporary operation until the server reloads permissions. Changing this default will cause all Permissibles that contain this permission to recalculate their permissions

          Parameters:

          • value The new default to set
          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-setdescription","title":"function setDescription","text":"
          inline void endstone::Permission::setDescription (\n    std::string value\n) \n

          Sets the description of this permission.

          This will not be saved to disk, and is a temporary operation until the server reloads permissions.

          Parameters:

          • value The new description to set

          The documentation for this class was generated from the following file include/endstone/permissions/permission.h

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/","title":"Class endstone::PermissionAttachment","text":"

          ClassList > endstone > PermissionAttachment

          Holds information about a permission attachment on a Permissible object.

          • #include <endstone/permissions/permission_attachment.h>
          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#public-functions","title":"Public Functions","text":"Type Name PermissionAttachment (Plugin & plugin, Permissible & permissible) Permissible & getPermissible () const std::unordered_map< std::string, bool > getPermissions () const Plugin & getPlugin () const PermissionRemovedExecutor getRemovalCallback () const bool remove () void setPermission (std::string name, bool value) void setPermission (Permission & perm, bool value) void setRemovalCallback (PermissionRemovedExecutor ex) void unsetPermission (std::string name) void unsetPermission (Permission & perm)"},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-permissionattachment","title":"function PermissionAttachment","text":"
          inline endstone::PermissionAttachment::PermissionAttachment (\n    Plugin & plugin,\n    Permissible & permissible\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-getpermissible","title":"function getPermissible","text":"
          inline Permissible & endstone::PermissionAttachment::getPermissible () const\n

          Gets the Permissible that this is attached to

          Returns:

          Permissible containing this attachment

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-getpermissions","title":"function getPermissions","text":"
          inline std::unordered_map< std::string, bool > endstone::PermissionAttachment::getPermissions () const\n

          Gets a copy of all set permissions and values contained within this attachment. This map may be modified but will not affect the attachment, as it is a copy.

          Returns:

          Copy of all permissions and values expressed by this attachment

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-getplugin","title":"function getPlugin","text":"
          inline Plugin & endstone::PermissionAttachment::getPlugin () const\n

          Gets the plugin responsible for this attachment

          Returns:

          Plugin responsible for this permission attachment

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-getremovalcallback","title":"function getRemovalCallback","text":"
          inline PermissionRemovedExecutor endstone::PermissionAttachment::getRemovalCallback () const\n

          Gets the class that was previously set to be called when this attachment was removed from a Permissible. May be empty.

          Returns:

          Executor to be called when this is removed

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-remove","title":"function remove","text":"
          inline bool endstone::PermissionAttachment::remove () \n

          Removes this attachment from its registered Permissible

          Returns:

          true if the permissible was removed successfully, false if it did not exist

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-setpermission-12","title":"function setPermission [\u00bd]","text":"
          inline void endstone::PermissionAttachment::setPermission (\n    std::string name,\n    bool value\n) \n

          Sets a permission to the given value, by its fully qualified name

          Parameters:

          • name Name of the permission
          • value New value of the permission
          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-setpermission-22","title":"function setPermission [2/2]","text":"
          inline void endstone::PermissionAttachment::setPermission (\n    Permission & perm,\n    bool value\n) \n

          Sets a permission to the given value

          Parameters:

          • perm Permission to set
          • value New value of the permission
          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-setremovalcallback","title":"function setRemovalCallback","text":"
          inline void endstone::PermissionAttachment::setRemovalCallback (\n    PermissionRemovedExecutor ex\n) \n

          Sets an executor to be called for when this attachment is removed from a Permissible. May be empty.

          Parameters:

          • ex Executor to be called when this is removed
          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-unsetpermission-12","title":"function unsetPermission [\u00bd]","text":"
          inline void endstone::PermissionAttachment::unsetPermission (\n    std::string name\n) \n

          Removes the specified permission from this attachment. If the permission does not exist in this attachment, nothing will happen.

          Parameters:

          • name Name of the permission to remove
          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-unsetpermission-22","title":"function unsetPermission [2/2]","text":"
          inline void endstone::PermissionAttachment::unsetPermission (\n    Permission & perm\n) \n

          Removes the specified permission from this attachment. If the permission does not exist in this attachment, nothing will happen.

          Parameters:

          • perm Permission to remove

          The documentation for this class was generated from the following file include/endstone/permissions/permission_attachment.h

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachmentInfo/","title":"Class endstone::PermissionAttachmentInfo","text":"

          ClassList > endstone > PermissionAttachmentInfo

          Holds information on a permission and which PermissionAttachment provides it.

          • #include <endstone/permissions/permission_attachment_info.h>
          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachmentInfo/#public-functions","title":"Public Functions","text":"Type Name PermissionAttachmentInfo (Permissible & permissible, std::string permission, PermissionAttachment * attachment, bool value) PermissionAttachment * getAttachment () const Permissible & getPermissible () const std::string getPermission () const bool getValue () const"},{"location":"reference/cpp/classendstone_1_1PermissionAttachmentInfo/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PermissionAttachmentInfo/#function-permissionattachmentinfo","title":"function PermissionAttachmentInfo","text":"
          inline endstone::PermissionAttachmentInfo::PermissionAttachmentInfo (\n    Permissible & permissible,\n    std::string permission,\n    PermissionAttachment * attachment,\n    bool value\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachmentInfo/#function-getattachment","title":"function getAttachment","text":"
          inline PermissionAttachment * endstone::PermissionAttachmentInfo::getAttachment () const\n

          Gets the attachment providing this permission. This may be null for default permissions (usually parent permissions).

          Returns:

          Attachment

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachmentInfo/#function-getpermissible","title":"function getPermissible","text":"
          inline Permissible & endstone::PermissionAttachmentInfo::getPermissible () const\n

          Gets the permissible this is attached to

          Returns:

          Permissible this permission is for

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachmentInfo/#function-getpermission","title":"function getPermission","text":"
          inline std::string endstone::PermissionAttachmentInfo::getPermission () const\n

          Gets the permission being set

          Returns:

          Name of the permission

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachmentInfo/#function-getvalue","title":"function getValue","text":"
          inline bool endstone::PermissionAttachmentInfo::getValue () const\n

          Gets the value of this permission

          Returns:

          Value of the permission

          The documentation for this class was generated from the following file include/endstone/permissions/permission_attachment_info.h

          "},{"location":"reference/cpp/classendstone_1_1Player/","title":"Class endstone::Player","text":"

          ClassList > endstone > Player

          Represents a player.

          • #include <endstone/player.h>

          Inherits the following classes: endstone::Mob

          "},{"location":"reference/cpp/classendstone_1_1Player/#public-functions","title":"Public Functions","text":"Type Name virtual Player * asPlayer () override constGets a CommandSender asPlayer . virtual void closeForm () = 0Closes the forms that are currently open for the player. virtual const SocketAddress & getAddress () const = 0Gets the socket address of this player. virtual bool getAllowFlight () const = 0Determines if the Player is allowed to fly via jump key double-tap. virtual std::string getDeviceId () const = 0Gets the player's current device id. virtual std::string getDeviceOS () const = 0Gets the player's current device's operation system (OS). virtual int getExpLevel () const = 0Gets the players current experience level. virtual float getExpProgress () const = 0Gets the players current experience progress towards the next level. virtual float getFlySpeed () const = 0Gets the current allowed speed that a client can fly. virtual GameMode getGameMode () const = 0Gets this player's current GameMode. virtual std::string getGameVersion () const = 0Gets the player's current game version. virtual PlayerInventory & getInventory () const = 0Get the player's inventory. virtual std::string getLocale () const = 0Gets the player's current locale. virtual std::chrono::milliseconds getPing () const = 0Gets the player's average ping. virtual Scoreboard & getScoreboard () const = 0Gets the Scoreboard displayed to this player. virtual const Skin & getSkin () const = 0Gets the player's skin. virtual int getTotalExp () const = 0Gets the players total experience points. virtual UUID getUniqueId () const = 0Returns the UUID of this player. virtual float getWalkSpeed () const = 0Gets the current allowed speed that a client can walk. virtual std::string getXuid () const = 0Returns the Xbox User ID (XUID) of this player. virtual void giveExp (int amount) = 0Gives the player the amount of experience specified. virtual void giveExpLevels (int amount) = 0Gives the player the amount of experience levels specified. virtual bool isFlying () const = 0Checks to see if this player is currently flying or not. virtual void kick (std::string message) const = 0Kicks player with custom kick message. virtual bool performCommand (std::string command) const = 0Makes the player perform the given command. virtual void resetTitle () const = 0Resets the title displayed to the player. This will clear the displayed title / subtitle and reset timings to their default values. virtual void sendForm (FormVariant form) = 0Sends a form to the player. virtual void sendPacket (Packet & packet) const = 0Sends a packet to the player. virtual void sendPopup (std::string message) const = 0Sends this player a popup message. virtual void sendTip (std::string message) const = 0Sends this player a tip message. virtual void sendTitle (std::string title, std::string subtitle) const = 0Sends a title and a subtitle message to the player. If they are empty strings, the display will be updated as such. The titles will be displayed with the default timings. virtual void sendTitle (std::string title, std::string subtitle, int fade_in, int stay, int fade_out) const = 0Sends a title and a subtitle message to the player. If they are empty strings, the display will be updated as such. virtual void sendToast (std::string title, std::string content) const = 0Sends this player a toast notification. virtual void setAllowFlight (bool flight) = 0Sets if the Player is allowed to fly via jump key double-tap. virtual Result< void > setExpLevel (int level) = 0Sets the players current experience level. virtual Result< void > setExpProgress (float progress) = 0Sets the players current experience progress towards the next level. virtual void setFlySpeed (float value) const = 0 virtual Result< void > setFlying (bool value) = 0Makes this player start or stop flying. virtual void setGameMode (GameMode mode) = 0Sets this player's current GameMode. virtual void setScoreboard (Scoreboard & scoreboard) = 0 virtual void setWalkSpeed (float value) const = 0 virtual void spawnParticle (std::string name, Location location) const = 0Spawns the particle at the target location. virtual void spawnParticle (std::string name, float x, float y, float z) const = 0Spawns the particle at the target location. virtual void spawnParticle (std::string name, Location location, std::optional< std::string > molang_variables_json) const = 0Spawns the particle at the target location. virtual void spawnParticle (std::string name, float x, float y, float z, std::optional< std::string > molang_variables_json) const = 0Spawns the particle at the target location. virtual void transfer (std::string host, int port) const = 0Transfers the player to another server. virtual void updateCommands () const = 0Send the list of commands to the client."},{"location":"reference/cpp/classendstone_1_1Player/#public-functions-inherited-from-endstonemob","title":"Public Functions inherited from endstone::Mob","text":"

          See endstone::Mob

          Type Name virtual bool isGliding () const = 0Checks to see if an actor is gliding, such as using an Elytra."},{"location":"reference/cpp/classendstone_1_1Player/#public-functions-inherited-from-endstoneactor","title":"Public Functions inherited from endstone::Actor","text":"

          See endstone::Actor

          Type Name virtual bool addScoreboardTag (std::string tag) const = 0Adds a tag to this actor. virtual Actor * asActor () override constGets a CommandSender asActor . virtual Dimension & getDimension () const = 0 virtual int getHealth () const = 0Gets the entity's health from 0 to its max possible value, where 0 is dead. virtual std::int64_t getId () const = 0Returns a unique id for this actor. virtual Level & getLevel () const = 0 virtual Location getLocation () const = 0 virtual int getMaxHealth () const = 0Gets the maximum health this entity has. virtual std::uint64_t getRuntimeId () const = 0 virtual std::vector< std::string > getScoreboardTags () const = 0Returns a list of scoreboard tags for this actor. virtual Vector< float > getVelocity () const = 0 virtual bool isDead () const = 0Returns true if this actor has been marked for removal. virtual bool isInLava () const = 0 virtual bool isInWater () const = 0 virtual bool isOnGround () const = 0 virtual bool removeScoreboardTag (std::string tag) const = 0Removes a given tag from this actor. virtual Result< void > setHealth (int health) const = 0 virtual void setRotation (float yaw, float pitch) = 0 virtual void teleport (Location location) = 0 virtual void teleport (Actor & target) = 0"},{"location":"reference/cpp/classendstone_1_1Player/#public-functions-inherited-from-endstonecommandsender","title":"Public Functions inherited from endstone::CommandSender","text":"

          See endstone::CommandSender

          Type Name virtual Actor * asActor () constGets a CommandSender asActor . virtual CommandSender * asCommandSender () override constCasts a Permissible asCommandSender . virtual ConsoleCommandSender * asConsole () constGets a CommandSender as Console. virtual Player * asPlayer () constGets a CommandSender asPlayer . virtual std::string getName () const = 0Gets the name of this command sender. virtual Server & getServer () const = 0Returns the server instance that this command is running on. virtual void sendErrorMessage (const Message & message) const = 0Sends this sender a error message. void sendErrorMessage (const fmt::format_string< Args... > format, Args &&... args) const virtual void sendMessage (const Message & message) const = 0Sends this sender a message. void sendMessage (const fmt::format_string< Args... > format, Args &&... args) const"},{"location":"reference/cpp/classendstone_1_1Player/#public-functions-inherited-from-endstonepermissible","title":"Public Functions inherited from endstone::Permissible","text":"

          See endstone::Permissible

          Type Name virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin, const std::string & name, bool value) = 0 virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin) = 0 virtual CommandSender * asCommandSender () const = 0Casts a Permissible asCommandSender . virtual std::unordered_set< PermissionAttachmentInfo * > getEffectivePermissions () const = 0 virtual bool hasPermission (std::string name) const = 0 virtual bool hasPermission (const Permission & perm) const = 0 virtual bool isOp () const = 0Checks if this object is a server operator. virtual bool isPermissionSet (std::string name) const = 0 virtual bool isPermissionSet (const Permission & perm) const = 0 virtual void recalculatePermissions () = 0 virtual Result< void > removeAttachment (PermissionAttachment & attachment) = 0 virtual void setOp (bool value) = 0Sets the operator status of this object. virtual ~Permissible () = default"},{"location":"reference/cpp/classendstone_1_1Player/#protected-types","title":"Protected Types","text":"Type Name typedef std::variant< MessageForm, ActionForm, ModalForm > FormVariant"},{"location":"reference/cpp/classendstone_1_1Player/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Player/#function-asplayer","title":"function asPlayer","text":"

          Gets a CommandSender asPlayer .

          inline virtual Player * endstone::Player::asPlayer () override const\n

          Returns:

          Player, nullptr if not a Player

          Implements endstone::CommandSender::asPlayer

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-closeform","title":"function closeForm","text":"
          virtual void endstone::Player::closeForm () = 0\n
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getaddress","title":"function getAddress","text":"

          Gets the socket address of this player.

          virtual const SocketAddress & endstone::Player::getAddress () const = 0\n

          Returns:

          the player's socket address

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getallowflight","title":"function getAllowFlight","text":"

          Determines if the Player is allowed to fly via jump key double-tap.

          virtual bool endstone::Player::getAllowFlight () const = 0\n

          Returns:

          True if the player is allowed to fly.

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getdeviceid","title":"function getDeviceId","text":"

          Gets the player's current device id.

          virtual std::string endstone::Player::getDeviceId () const = 0\n

          Returns:

          the player's device id

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getdeviceos","title":"function getDeviceOS","text":"

          Gets the player's current device's operation system (OS).

          virtual std::string endstone::Player::getDeviceOS () const = 0\n

          Returns:

          the player's device OS

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getexplevel","title":"function getExpLevel","text":"

          Gets the players current experience level.

          virtual int endstone::Player::getExpLevel () const = 0\n

          Returns:

          Current experience level

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getexpprogress","title":"function getExpProgress","text":"

          Gets the players current experience progress towards the next level.

          virtual float endstone::Player::getExpProgress () const = 0\n

          This is a percentage value. 0.0 is \"no progress\" and 1.0 is \"next level\".

          Returns:

          Current experience points

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getflyspeed","title":"function getFlySpeed","text":"

          Gets the current allowed speed that a client can fly.

          virtual float endstone::Player::getFlySpeed () const = 0\n

          Returns:

          The current allowed speed, default is 0.05.

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getgamemode","title":"function getGameMode","text":"

          Gets this player's current GameMode.

          virtual GameMode endstone::Player::getGameMode () const = 0\n

          Returns:

          Current game mode

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getgameversion","title":"function getGameVersion","text":"

          Gets the player's current game version.

          virtual std::string endstone::Player::getGameVersion () const = 0\n

          Returns:

          the player's game version

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getinventory","title":"function getInventory","text":"

          Get the player's inventory.

          virtual PlayerInventory & endstone::Player::getInventory () const = 0\n

          Returns:

          The inventory of the player, this also contains the armor slots.

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getlocale","title":"function getLocale","text":"

          Gets the player's current locale.

          virtual std::string endstone::Player::getLocale () const = 0\n

          Returns:

          the player's locale

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getping","title":"function getPing","text":"

          Gets the player's average ping.

          virtual std::chrono::milliseconds endstone::Player::getPing () const = 0\n

          Returns:

          player ping

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getscoreboard","title":"function getScoreboard","text":"

          Gets the Scoreboard displayed to this player.

          virtual Scoreboard & endstone::Player::getScoreboard () const = 0\n

          Returns:

          The current scoreboard seen by this player

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getskin","title":"function getSkin","text":"

          Gets the player's skin.

          virtual const Skin & endstone::Player::getSkin () const = 0\n

          Returns:

          the player's skin

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-gettotalexp","title":"function getTotalExp","text":"

          Gets the players total experience points.

          virtual int endstone::Player::getTotalExp () const = 0\n

          This refers to the total amount of experience the player has collected over time and is not currently displayed to the client.

          Returns:

          Current total experience points

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getuniqueid","title":"function getUniqueId","text":"

          Returns the UUID of this player.

          virtual UUID endstone::Player::getUniqueId () const = 0\n

          Returns:

          Player UUID

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getwalkspeed","title":"function getWalkSpeed","text":"

          Gets the current allowed speed that a client can walk.

          virtual float endstone::Player::getWalkSpeed () const = 0\n

          Returns:

          The current allowed speed, default is 0.10.

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getxuid","title":"function getXuid","text":"

          Returns the Xbox User ID (XUID) of this player.

          virtual std::string endstone::Player::getXuid () const = 0\n

          Returns:

          Player XUID

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-giveexp","title":"function giveExp","text":"

          Gives the player the amount of experience specified.

          virtual void endstone::Player::giveExp (\n    int amount\n) = 0\n

          Parameters:

          • amount Exp amount to give
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-giveexplevels","title":"function giveExpLevels","text":"

          Gives the player the amount of experience levels specified.

          virtual void endstone::Player::giveExpLevels (\n    int amount\n) = 0\n

          Parameters:

          • amount amount of experience levels to give or take
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-isflying","title":"function isFlying","text":"

          Checks to see if this player is currently flying or not.

          virtual bool endstone::Player::isFlying () const = 0\n

          Returns:

          True if the player is flying, else false.

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-kick","title":"function kick","text":"

          Kicks player with custom kick message.

          virtual void endstone::Player::kick (\n    std::string message\n) const = 0\n

          Parameters:

          • message kick message
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-performcommand","title":"function performCommand","text":"

          Makes the player perform the given command.

          virtual bool endstone::Player::performCommand (\n    std::string command\n) const = 0\n

          Parameters:

          • command Command to perform

          Returns:

          true if the command was successful, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-resettitle","title":"function resetTitle","text":"
          virtual void endstone::Player::resetTitle () const = 0\n
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-sendform","title":"function sendForm","text":"

          Sends a form to the player.

          virtual void endstone::Player::sendForm (\n    FormVariant form\n) = 0\n

          Parameters:

          • form The form to send
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-sendpacket","title":"function sendPacket","text":"

          Sends a packet to the player.

          virtual void endstone::Player::sendPacket (\n    Packet & packet\n) const = 0\n

          Parameters:

          • packet The packet to be sent.
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-sendpopup","title":"function sendPopup","text":"

          Sends this player a popup message.

          virtual void endstone::Player::sendPopup (\n    std::string message\n) const = 0\n

          Parameters:

          • message Message to be displayed
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-sendtip","title":"function sendTip","text":"

          Sends this player a tip message.

          virtual void endstone::Player::sendTip (\n    std::string message\n) const = 0\n

          Parameters:

          • message Message to be displayed
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-sendtitle-12","title":"function sendTitle [\u00bd]","text":"

          Sends a title and a subtitle message to the player. If they are empty strings, the display will be updated as such. The titles will be displayed with the default timings.

          virtual void endstone::Player::sendTitle (\n    std::string title,\n    std::string subtitle\n) const = 0\n

          Parameters:

          • title Title text
          • subtitle Subtitle text
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-sendtitle-22","title":"function sendTitle [2/2]","text":"

          Sends a title and a subtitle message to the player. If they are empty strings, the display will be updated as such.

          virtual void endstone::Player::sendTitle (\n    std::string title,\n    std::string subtitle,\n    int fade_in,\n    int stay,\n    int fade_out\n) const = 0\n

          Parameters:

          • title Title text
          • subtitle Subtitle text
          • fade_in time in ticks for titles to fade in. Defaults to 10.
          • stay time in ticks for titles to stay. Defaults to 70.
          • fade_out time in ticks for titles to fade out. Defaults to 20.
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-sendtoast","title":"function sendToast","text":"

          Sends this player a toast notification.

          virtual void endstone::Player::sendToast (\n    std::string title,\n    std::string content\n) const = 0\n

          Parameters:

          • title The title of the toast notification.
          • content The content of the toast notification.
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-setallowflight","title":"function setAllowFlight","text":"

          Sets if the Player is allowed to fly via jump key double-tap.

          virtual void endstone::Player::setAllowFlight (\n    bool flight\n) = 0\n

          Parameters:

          • flight If flight should be allowed.
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-setexplevel","title":"function setExpLevel","text":"

          Sets the players current experience level.

          virtual Result< void > endstone::Player::setExpLevel (\n    int level\n) = 0\n

          Parameters:

          • level New experience level
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-setexpprogress","title":"function setExpProgress","text":"

          Sets the players current experience progress towards the next level.

          virtual Result< void > endstone::Player::setExpProgress (\n    float progress\n) = 0\n

          This is a percentage value. 0.0 is \"no progress\" and 1.0 is \"next level\".

          Parameters:

          • progress New experience progress
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-setflyspeed","title":"function setFlySpeed","text":"
          virtual void endstone::Player::setFlySpeed (\n    float value\n) const = 0\n

          Sets the speed at which a client will fly.

          Parameters:

          • value The new speed.
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-setflying","title":"function setFlying","text":"

          Makes this player start or stop flying.

          virtual Result< void > endstone::Player::setFlying (\n    bool value\n) = 0\n

          Parameters:

          • value True to fly.
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-setgamemode","title":"function setGameMode","text":"

          Sets this player's current GameMode.

          virtual void endstone::Player::setGameMode (\n    GameMode mode\n) = 0\n

          Parameters:

          • mode New game mode
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-setscoreboard","title":"function setScoreboard","text":"
          virtual void endstone::Player::setScoreboard (\n    Scoreboard & scoreboard\n) = 0\n

          @breif Sets the player's visible Scoreboard.

          Parameters:

          • scoreboard New Scoreboard for the player
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-setwalkspeed","title":"function setWalkSpeed","text":"
          virtual void endstone::Player::setWalkSpeed (\n    float value\n) const = 0\n

          Sets the speed at which a client will walk.

          Parameters:

          • value The new speed.
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-spawnparticle-14","title":"function spawnParticle [\u00bc]","text":"

          Spawns the particle at the target location.

          virtual void endstone::Player::spawnParticle (\n    std::string name,\n    Location location\n) const = 0\n

          Parameters:

          • name the name of the particle effect to spawn
          • location the location to spawn at
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-spawnparticle-24","title":"function spawnParticle [2/4]","text":"

          Spawns the particle at the target location.

          virtual void endstone::Player::spawnParticle (\n    std::string name,\n    float x,\n    float y,\n    float z\n) const = 0\n

          Parameters:

          • name the name of the particle effect to spawn
          • x the position on the x axis to spawn at
          • y the position on the y axis to spawn at
          • z the position on the z axis to spawn at
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-spawnparticle-34","title":"function spawnParticle [\u00be]","text":"

          Spawns the particle at the target location.

          virtual void endstone::Player::spawnParticle (\n    std::string name,\n    Location location,\n    std::optional< std::string > molang_variables_json\n) const = 0\n

          Parameters:

          • name the name of the particle effect to spawn
          • location the location to spawn at
          • molang_variables_json the customizable molang variables that can be adjusted for this particle, in json
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-spawnparticle-44","title":"function spawnParticle [4/4]","text":"

          Spawns the particle at the target location.

          virtual void endstone::Player::spawnParticle (\n    std::string name,\n    float x,\n    float y,\n    float z,\n    std::optional< std::string > molang_variables_json\n) const = 0\n

          Parameters:

          • name the name of the particle effect to spawn
          • x the position on the x axis to spawn at
          • y the position on the y axis to spawn at
          • z the position on the z axis to spawn at
          • molang_variables_json the customizable molang variables that can be adjusted for this particle, in json
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-transfer","title":"function transfer","text":"

          Transfers the player to another server.

          virtual void endstone::Player::transfer (\n    std::string host,\n    int port\n) const = 0\n

          Parameters:

          • host Server address to transfer the player to.
          • port Server port to transfer the player to
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-updatecommands","title":"function updateCommands","text":"

          Send the list of commands to the client.

          virtual void endstone::Player::updateCommands () const = 0\n

          Generally useful to ensure the client has a complete list of commands after permission changes are done.

          "},{"location":"reference/cpp/classendstone_1_1Player/#protected-types-documentation","title":"Protected Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Player/#typedef-formvariant","title":"typedef FormVariant","text":"
          using endstone::Player::FormVariant =  std::variant<MessageForm, ActionForm, ModalForm>;\n

          The documentation for this class was generated from the following file include/endstone/player.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/","title":"Class endstone::PlayerChatEvent","text":"

          ClassList > endstone > PlayerChatEvent

          Called when a player sends a chat message.

          • #include <endstone/event/player/player_chat_event.h>

          Inherits the following classes: endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerChatEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerChatEvent (Player & player, std::string message) virtual std::string getEventName () override const std::string getMessage () const virtual bool isCancellable () override const void setMessage (std::string message) ~PlayerChatEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerChatEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#function-playerchatevent","title":"function PlayerChatEvent","text":"
          inline explicit endstone::PlayerChatEvent::PlayerChatEvent (\n    Player & player,\n    std::string message\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerChatEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#function-getmessage","title":"function getMessage","text":"
          inline std::string endstone::PlayerChatEvent::getMessage () const\n

          Gets the message that the player is attempting to send.

          Returns:

          Message the player is attempting to send

          "},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerChatEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#function-setmessage","title":"function setMessage","text":"
          inline void endstone::PlayerChatEvent::setMessage (\n    std::string message\n) \n

          Sets the message that the player will send.

          Parameters:

          • message New message that the player will send
          "},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#function-playerchatevent_1","title":"function ~PlayerChatEvent","text":"
          endstone::PlayerChatEvent::~PlayerChatEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_chat_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/","title":"Class endstone::PlayerCommandEvent","text":"

          ClassList > endstone > PlayerCommandEvent

          Called whenever a player runs a command.

          • #include <endstone/event/player/player_command_event.h>

          Inherits the following classes: endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerCommandEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerCommandEvent (Player & player, std::string command) std::string getCommand () const virtual std::string getEventName () override const virtual bool isCancellable () override const void setCommand (std::string command) ~PlayerCommandEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerCommandEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#function-playercommandevent","title":"function PlayerCommandEvent","text":"
          inline explicit endstone::PlayerCommandEvent::PlayerCommandEvent (\n    Player & player,\n    std::string command\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#function-getcommand","title":"function getCommand","text":"
          inline std::string endstone::PlayerCommandEvent::getCommand () const\n

          Gets the command that the player is attempting to send.

          Returns:

          Command the player is attempting to send

          "},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerCommandEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerCommandEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#function-setcommand","title":"function setCommand","text":"
          inline void endstone::PlayerCommandEvent::setCommand (\n    std::string command\n) \n

          Sets the command that the player will send.

          Parameters:

          • command New command that the player will send
          "},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#function-playercommandevent_1","title":"function ~PlayerCommandEvent","text":"
          endstone::PlayerCommandEvent::~PlayerCommandEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_command_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/","title":"Class endstone::PlayerDeathEvent","text":"

          ClassList > endstone > PlayerDeathEvent

          Called when a Player dies.

          • #include <endstone/event/player/player_death_event.h>

          Inherits the following classes: endstone::ActorDeathEvent, endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerDeathEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-static-attributes-inherited-from-endstoneactordeathevent","title":"Public Static Attributes inherited from endstone::ActorDeathEvent","text":"

          See endstone::ActorDeathEvent

          Type Name const std::string NAME = = \"ActorDeathEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerDeathEvent (Player & player, std::string death_message) const std::string & getDeathMessage () constGet the death message that will appear to everyone on the server. virtual std::string getEventName () override const virtual bool isCancellable () override const void setDeathMessage (const std::string & death_message) Set the death message that will appear to everyone on the server. ~PlayerDeathEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-functions-inherited-from-endstoneactordeathevent","title":"Public Functions inherited from endstone::ActorDeathEvent","text":"

          See endstone::ActorDeathEvent

          Type Name ActorDeathEvent (Actor & actor) virtual std::string getEventName () override const virtual bool isCancellable () override const ~ActorDeathEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-functions-inherited-from-endstoneactorevent","title":"Public Functions inherited from endstone::ActorEvent","text":"

          See endstone::ActorEvent

          Type Name ActorEvent (Actor & actor) Actor & getActor () constReturns the Actor involved in this event. ~ActorEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-functions-inherited-from-endstoneevent_1","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerDeathEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#function-playerdeathevent","title":"function PlayerDeathEvent","text":"
          inline explicit endstone::PlayerDeathEvent::PlayerDeathEvent (\n    Player & player,\n    std::string death_message\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#function-getdeathmessage","title":"function getDeathMessage","text":"

          Get the death message that will appear to everyone on the server.

          inline const std::string & endstone::PlayerDeathEvent::getDeathMessage () const\n

          Returns:

          Message to appear to other players on the server.

          "},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerDeathEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::ActorDeathEvent::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerDeathEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::ActorDeathEvent::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#function-setdeathmessage","title":"function setDeathMessage","text":"

          Set the death message that will appear to everyone on the server.

          inline void endstone::PlayerDeathEvent::setDeathMessage (\n    const std::string & death_message\n) \n

          Parameters:

          • death_message Message to appear to other players on the server.
          "},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#function-playerdeathevent_1","title":"function ~PlayerDeathEvent","text":"
          endstone::PlayerDeathEvent::~PlayerDeathEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_death_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerEvent/","title":"Class endstone::PlayerEvent","text":"

          ClassList > endstone > PlayerEvent

          Represents a player related event.

          • #include <endstone/event/player/player_event.h>

          Inherits the following classes: endstone::Event

          Inherited by the following classes: endstone::PlayerChatEvent, endstone::PlayerCommandEvent, endstone::PlayerDeathEvent, endstone::PlayerInteractActorEvent, endstone::PlayerInteractEvent, endstone::PlayerJoinEvent, endstone::PlayerKickEvent, endstone::PlayerLoginEvent, endstone::PlayerQuitEvent, endstone::PlayerTeleportEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerEvent/#function-playerevent","title":"function PlayerEvent","text":"
          inline explicit endstone::PlayerEvent::PlayerEvent (\n    Player & player\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerEvent/#function-getplayer","title":"function getPlayer","text":"
          inline Player & endstone::PlayerEvent::getPlayer () const\n

          Returns the player involved in this event

          Returns:

          Player who is involved in this event

          "},{"location":"reference/cpp/classendstone_1_1PlayerEvent/#function-playerevent_1","title":"function ~PlayerEvent","text":"
          endstone::PlayerEvent::~PlayerEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/","title":"Class endstone::PlayerInteractActorEvent","text":"

          ClassList > endstone > PlayerInteractActorEvent

          Represents an event that is called when a player right-clicks an actor.

          • #include <endstone/event/player/player_interact_actor_event.h>

          Inherits the following classes: endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerInteractActorEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerInteractActorEvent (Player & player, Actor & actor) Actor & getActor () constGets the actor that was right-clicked by the player. virtual std::string getEventName () override const virtual bool isCancellable () override const ~PlayerInteractActorEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerInteractActorEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#function-playerinteractactorevent","title":"function PlayerInteractActorEvent","text":"
          inline explicit endstone::PlayerInteractActorEvent::PlayerInteractActorEvent (\n    Player & player,\n    Actor & actor\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#function-getactor","title":"function getActor","text":"

          Gets the actor that was right-clicked by the player.

          inline Actor & endstone::PlayerInteractActorEvent::getActor () const\n

          Returns:

          actor right-clicked by player

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerInteractActorEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerInteractActorEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#function-playerinteractactorevent_1","title":"function ~PlayerInteractActorEvent","text":"
          endstone::PlayerInteractActorEvent::~PlayerInteractActorEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_interact_actor_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/","title":"Class endstone::PlayerInteractEvent","text":"

          ClassList > endstone > PlayerInteractEvent

          Represents an event that is called when a player right-clicks a block.

          • #include <endstone/event/player/player_interact_event.h>

          Inherits the following classes: endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerInteractEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerInteractEvent (Player & player, std::unique_ptr< ItemStack > item, std::unique_ptr< Block > block_clicked, BlockFace block_face, const Vector< float > & clicked_position) Block * getBlock () constReturns the clicked block. BlockFace getBlockFace () constReturns the face of the block that was clicked. Vector< float > getClickedPosition () constGets the exact position on the block the player interacted with. virtual std::string getEventName () override const ItemStack * getItem () constReturns the item in hand represented by this event. bool hasBlock () constCheck if this event involved a block. bool hasItem () constCheck if this event involved an item. virtual bool isCancellable () override const ~PlayerInteractEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerInteractEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-playerinteractevent","title":"function PlayerInteractEvent","text":"
          inline endstone::PlayerInteractEvent::PlayerInteractEvent (\n    Player & player,\n    std::unique_ptr< ItemStack > item,\n    std::unique_ptr< Block > block_clicked,\n    BlockFace block_face,\n    const Vector < float > & clicked_position\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-getblock","title":"function getBlock","text":"

          Returns the clicked block.

          inline Block * endstone::PlayerInteractEvent::getBlock () const\n

          Returns:

          Block returns the block clicked with this item.

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-getblockface","title":"function getBlockFace","text":"

          Returns the face of the block that was clicked.

          inline BlockFace endstone::PlayerInteractEvent::getBlockFace () const\n

          Returns:

          BlockFace returns the face of the block that was clicked

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-getclickedposition","title":"function getClickedPosition","text":"

          Gets the exact position on the block the player interacted with.

          inline Vector < float > endstone::PlayerInteractEvent::getClickedPosition () const\n

          All vector components are between 0.0 and 1.0 inclusive.

          Returns:

          the clicked position.

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerInteractEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-getitem","title":"function getItem","text":"

          Returns the item in hand represented by this event.

          inline ItemStack * endstone::PlayerInteractEvent::getItem () const\n

          Returns:

          ItemStack the item used

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-hasblock","title":"function hasBlock","text":"

          Check if this event involved a block.

          inline bool endstone::PlayerInteractEvent::hasBlock () const\n

          Returns:

          boolean true if it did

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-hasitem","title":"function hasItem","text":"

          Check if this event involved an item.

          inline bool endstone::PlayerInteractEvent::hasItem () const\n

          Returns:

          boolean true if it did

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerInteractEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-playerinteractevent_1","title":"function ~PlayerInteractEvent","text":"
          endstone::PlayerInteractEvent::~PlayerInteractEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_interact_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerInventory/","title":"Class endstone::PlayerInventory","text":"

          ClassList > endstone > PlayerInventory

          Interface to the inventory of a Player , including the four armor slots and any extra slots.

          • #include <endstone/inventory/player_inventory.h>

          Inherits the following classes: endstone::Inventory

          "},{"location":"reference/cpp/classendstone_1_1PlayerInventory/#public-functions-inherited-from-endstoneinventory","title":"Public Functions inherited from endstone::Inventory","text":"

          See endstone::Inventory

          Type Name virtual void addItem (ItemStack & item) = 0Stores the given ItemStacks in the inventory. This will try to fill existing stacks and empty slots as well as it can. virtual void clear () = 0Clears out the whole Inventory . virtual int first (ItemStack & item) = 0Returns the first slot in the inventory containing an ItemStack with the given stack. virtual std::vector< std::shared_ptr< ItemStack > > getContents () const = 0Returns all ItemStacks from the inventory. virtual std::shared_ptr< ItemStack > getItem (int index) const = 0Returns the ItemStack found in the slot at the given index. virtual int getMaxStackSize () const = 0Returns the maximum stack size for an ItemStack in this inventory. virtual int getSize () const = 0Returns the size of the inventory. virtual bool isEmpty () const = 0Check whether this inventory is empty. An inventory is considered to be empty if there are no ItemStacks in any slot of this inventory. virtual void setItem (int index, std::shared_ptr< ItemStack > item) = 0Stores the ItemStack at the given index of the inventory. virtual ~Inventory () = default

          The documentation for this class was generated from the following file include/endstone/inventory/player_inventory.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/","title":"Class endstone::PlayerJoinEvent","text":"

          ClassList > endstone > PlayerJoinEvent

          Called when a player joins a server.

          • #include <endstone/event/player/player_join_event.h>

          Inherits the following classes: endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerJoinEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerJoinEvent (Player & player, std::string join_message) virtual std::string getEventName () override const std::string getJoinMessage () constGets the join message to send to all online players. virtual bool isCancellable () override const void setJoinMessage (std::string message) Sets the join message to send to all online players. ~PlayerJoinEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerJoinEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#function-playerjoinevent","title":"function PlayerJoinEvent","text":"
          inline explicit endstone::PlayerJoinEvent::PlayerJoinEvent (\n    Player & player,\n    std::string join_message\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerJoinEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#function-getjoinmessage","title":"function getJoinMessage","text":"

          Gets the join message to send to all online players.

          inline std::string endstone::PlayerJoinEvent::getJoinMessage () const\n

          Returns:

          Message to appear to other players on the server.

          "},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerJoinEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#function-setjoinmessage","title":"function setJoinMessage","text":"

          Sets the join message to send to all online players.

          inline void endstone::PlayerJoinEvent::setJoinMessage (\n    std::string message\n) \n

          Parameters:

          • message Message to appear to other players on the server.
          "},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#function-playerjoinevent_1","title":"function ~PlayerJoinEvent","text":"
          endstone::PlayerJoinEvent::~PlayerJoinEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_join_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/","title":"Class endstone::PlayerKickEvent","text":"

          ClassList > endstone > PlayerKickEvent

          Called when a player gets kicked from the server.

          • #include <endstone/event/player/player_kick_event.h>

          Inherits the following classes: endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerKickEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerKickEvent (Player & player, std::string reason) virtual std::string getEventName () override const std::string getReason () constGets the reason why the player is getting kicked. virtual bool isCancellable () override const void setReason (std::string reason) Sets the reason why the player is getting kicked. ~PlayerKickEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerKickEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#function-playerkickevent","title":"function PlayerKickEvent","text":"
          inline explicit endstone::PlayerKickEvent::PlayerKickEvent (\n    Player & player,\n    std::string reason\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerKickEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#function-getreason","title":"function getReason","text":"

          Gets the reason why the player is getting kicked.

          inline std::string endstone::PlayerKickEvent::getReason () const\n

          Returns:

          string kick reason

          "},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerKickEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#function-setreason","title":"function setReason","text":"

          Sets the reason why the player is getting kicked.

          inline void endstone::PlayerKickEvent::setReason (\n    std::string reason\n) \n

          Parameters:

          • reason kick reason
          "},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#function-playerkickevent_1","title":"function ~PlayerKickEvent","text":"
          endstone::PlayerKickEvent::~PlayerKickEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_kick_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/","title":"Class endstone::PlayerLoginEvent","text":"

          ClassList > endstone > PlayerLoginEvent

          Called when a player attempts to login in.

          • #include <endstone/event/player/player_login_event.h>

          Inherits the following classes: endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerLoginEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerLoginEvent (Player & player, std::string message=\"\") virtual std::string getEventName () override const const std::string & getKickMessage () const virtual bool isCancellable () override const void setKickMessage (const std::string & message) ~PlayerLoginEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerLoginEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#function-playerloginevent","title":"function PlayerLoginEvent","text":"
          inline explicit endstone::PlayerLoginEvent::PlayerLoginEvent (\n    Player & player,\n    std::string message=\"\"\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerLoginEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#function-getkickmessage","title":"function getKickMessage","text":"
          inline const std::string & endstone::PlayerLoginEvent::getKickMessage () const\n

          Gets the current kick message that will be used if event is cancelled

          Returns:

          Current kick message

          "},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerLoginEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#function-setkickmessage","title":"function setKickMessage","text":"
          inline void endstone::PlayerLoginEvent::setKickMessage (\n    const std::string & message\n) \n

          Sets the kick message to display if event is cancelled

          Parameters:

          • message New kick message
          "},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#function-playerloginevent_1","title":"function ~PlayerLoginEvent","text":"
          endstone::PlayerLoginEvent::~PlayerLoginEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_login_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/","title":"Class endstone::PlayerQuitEvent","text":"

          ClassList > endstone > PlayerQuitEvent

          Called when a player leaves a server.

          • #include <endstone/event/player/player_quit_event.h>

          Inherits the following classes: endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerQuitEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerQuitEvent (Player & player, std::string quit_message) virtual std::string getEventName () override const std::string getQuitMessage () constGets the quit message to send to all online players. virtual bool isCancellable () override const void setQuitMessage (std::string message) Sets the quit message to send to all online players. ~PlayerQuitEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerQuitEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#function-playerquitevent","title":"function PlayerQuitEvent","text":"
          inline explicit endstone::PlayerQuitEvent::PlayerQuitEvent (\n    Player & player,\n    std::string quit_message\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerQuitEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#function-getquitmessage","title":"function getQuitMessage","text":"

          Gets the quit message to send to all online players.

          inline std::string endstone::PlayerQuitEvent::getQuitMessage () const\n

          Returns:

          Message to appear to other players on the server.

          "},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerQuitEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#function-setquitmessage","title":"function setQuitMessage","text":"

          Sets the quit message to send to all online players.

          inline void endstone::PlayerQuitEvent::setQuitMessage (\n    std::string message\n) \n

          Parameters:

          • message Message to appear to other players on the server.
          "},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#function-playerquitevent_1","title":"function ~PlayerQuitEvent","text":"
          endstone::PlayerQuitEvent::~PlayerQuitEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_quit_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/","title":"Class endstone::PlayerTeleportEvent","text":"

          ClassList > endstone > PlayerTeleportEvent

          Called when a player is teleported from one location to another.

          • #include <endstone/event/player/player_teleport_event.h>

          Inherits the following classes: endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerTeleportEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerTeleportEvent (Player & player, Location from, Location to) virtual std::string getEventName () override const const Location & getFrom () constGets the location that this player moved from. const Location & getTo () constGets the location that this player moved to. virtual bool isCancellable () override const void setFrom (const Location & from) Sets the location that this player moved from. void setTo (const Location & to) Sets the location that this player moved to. ~PlayerTeleportEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerTeleportEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#function-playerteleportevent","title":"function PlayerTeleportEvent","text":"
          inline explicit endstone::PlayerTeleportEvent::PlayerTeleportEvent (\n    Player & player,\n    Location from,\n    Location to\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerTeleportEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#function-getfrom","title":"function getFrom","text":"

          Gets the location that this player moved from.

          inline const Location & endstone::PlayerTeleportEvent::getFrom () const\n

          Returns:

          Location this player moved from

          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#function-getto","title":"function getTo","text":"

          Gets the location that this player moved to.

          inline const Location & endstone::PlayerTeleportEvent::getTo () const\n

          Returns:

          Location this player moved to

          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerTeleportEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#function-setfrom","title":"function setFrom","text":"

          Sets the location that this player moved from.

          inline void endstone::PlayerTeleportEvent::setFrom (\n    const Location & from\n) \n

          Parameters:

          • from New location this player moved from
          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#function-setto","title":"function setTo","text":"

          Sets the location that this player moved to.

          inline void endstone::PlayerTeleportEvent::setTo (\n    const Location & to\n) \n

          Parameters:

          • to New Location this player moved to
          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#function-playerteleportevent_1","title":"function ~PlayerTeleportEvent","text":"
          endstone::PlayerTeleportEvent::~PlayerTeleportEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_teleport_event.h

          "},{"location":"reference/cpp/classendstone_1_1Plugin/","title":"Class endstone::Plugin","text":"

          ClassList > endstone > Plugin

          Represents a Plugin .

          • #include <endstone/plugin/plugin.h>

          Inherits the following classes: endstone::CommandExecutor

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#public-functions","title":"Public Functions","text":"Type Name Plugin () = default Plugin (const Plugin &) = delete PluginCommand * getCommand (std::string name) constGets the command with the given name, specific to this plugin. const std::filesystem::path & getDataFolder () constReturns the folder that the plugin data's files are located in. The folder may not yet exist. virtual const PluginDescription & getDescription () const = 0Returns the details of this plugin. Logger & getLogger () constReturns the plugin logger associated with this server's logger. The returned logger automatically tags all log messages with the plugin's name. std::string getName () constReturns the name of the plugin. PluginLoader & getPluginLoader () constGets the associated PluginLoader responsible for this plugin. Server & getServer () constReturns the Server instance currently running this plugin. bool isEnabled () constReturns a value indicating whether this plugin is currently enabled. virtual void onDisable () Called when this plugin is disabled. virtual void onEnable () Called when this plugin is enabled. virtual void onLoad () Called after a plugin is loaded but before it has been enabled. Plugin & operator= (const Plugin &) = delete void registerEvent (void(T::*)(EventType &) func, T & instance, EventPriority priority=EventPriority::Normal, bool ignore_cancelled=false) void registerEvent (std::function< void(EventType &)> func, EventPriority priority=EventPriority::Normal, bool ignore_cancelled=false) ~Plugin () override"},{"location":"reference/cpp/classendstone_1_1Plugin/#public-functions-inherited-from-endstonecommandexecutor","title":"Public Functions inherited from endstone::CommandExecutor","text":"

          See endstone::CommandExecutor

          Type Name virtual bool onCommand (CommandSender & sender, const Command & command, const std::vector< std::string > & args) virtual ~CommandExecutor () = default"},{"location":"reference/cpp/classendstone_1_1Plugin/#protected-functions","title":"Protected Functions","text":"Type Name void setEnabled (bool enabled)"},{"location":"reference/cpp/classendstone_1_1Plugin/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Plugin/#function-plugin-12","title":"function Plugin [\u00bd]","text":"
          endstone::Plugin::Plugin () = default\n
          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-plugin-22","title":"function Plugin [2/2]","text":"
          endstone::Plugin::Plugin (\n    const Plugin &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-getcommand","title":"function getCommand","text":"

          Gets the command with the given name, specific to this plugin.

          inline PluginCommand * endstone::Plugin::getCommand (\n    std::string name\n) const\n

          Parameters:

          • name name or alias of the command

          Returns:

          the plugin command if found, otherwise null

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-getdatafolder","title":"function getDataFolder","text":"

          Returns the folder that the plugin data's files are located in. The folder may not yet exist.

          inline const std::filesystem::path & endstone::Plugin::getDataFolder () const\n

          Returns:

          The folder

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-getdescription","title":"function getDescription","text":"

          Returns the details of this plugin.

          virtual const PluginDescription & endstone::Plugin::getDescription () const = 0\n

          Returns:

          Details of this plugin

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-getlogger","title":"function getLogger","text":"

          Returns the plugin logger associated with this server's logger. The returned logger automatically tags all log messages with the plugin's name.

          inline Logger & endstone::Plugin::getLogger () const\n

          Returns:

          Logger associated with this plugin

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-getname","title":"function getName","text":"

          Returns the name of the plugin.

          inline std::string endstone::Plugin::getName () const\n

          This should return the bare name of the plugin and should be used for comparison.

          Returns:

          name of the plugin

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-getpluginloader","title":"function getPluginLoader","text":"

          Gets the associated PluginLoader responsible for this plugin.

          inline PluginLoader & endstone::Plugin::getPluginLoader () const\n

          Returns:

          PluginLoader that controls this plugin

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-getserver","title":"function getServer","text":"

          Returns the Server instance currently running this plugin.

          inline Server & endstone::Plugin::getServer () const\n

          Returns:

          Server running this plugin

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-isenabled","title":"function isEnabled","text":"

          Returns a value indicating whether this plugin is currently enabled.

          inline bool endstone::Plugin::isEnabled () const\n

          Returns:

          true if this plugin is enabled, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-ondisable","title":"function onDisable","text":"
          inline virtual void endstone::Plugin::onDisable () \n
          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-onenable","title":"function onEnable","text":"
          inline virtual void endstone::Plugin::onEnable () \n
          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-onload","title":"function onLoad","text":"

          Called after a plugin is loaded but before it has been enabled.

          inline virtual void endstone::Plugin::onLoad () \n

          When multiple plugins are loaded, the onLoad() for all plugins is called before any onEnable() is called.

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-operator","title":"function operator=","text":"
          Plugin & endstone::Plugin::operator= (\n    const Plugin &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-registerevent-12","title":"function registerEvent [\u00bd]","text":"
          template<typename EventType, typename T>\ninline void endstone::Plugin::registerEvent (\n    void(T::*)(EventType &) func,\n    T & instance,\n    EventPriority priority=EventPriority::Normal,\n    bool ignore_cancelled=false\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-registerevent-22","title":"function registerEvent [2/2]","text":"
          template<typename EventType>\ninline void endstone::Plugin::registerEvent (\n    std::function< void(EventType &)> func,\n    EventPriority priority=EventPriority::Normal,\n    bool ignore_cancelled=false\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-plugin","title":"function ~Plugin","text":"
          endstone::Plugin::~Plugin () override\n
          "},{"location":"reference/cpp/classendstone_1_1Plugin/#protected-functions-documentation","title":"Protected Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Plugin/#function-setenabled","title":"function setEnabled","text":"
          inline void endstone::Plugin::setEnabled (\n    bool enabled\n) \n

          Sets the enabled state of this plugin

          Parameters:

          • enabled true if enabled, otherwise false
          "},{"location":"reference/cpp/classendstone_1_1Plugin/#friends-documentation","title":"Friends Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Plugin/#friend-endstonepluginmanager","title":"friend EndstonePluginManager","text":"
          class endstone::Plugin::EndstonePluginManager (\n    detail::EndstonePluginManager\n) \n

          The documentation for this class was generated from the following file include/endstone/plugin/plugin.h

          "},{"location":"reference/cpp/classendstone_1_1PluginCommand/","title":"Class endstone::PluginCommand","text":"

          ClassList > endstone > PluginCommand

          Represents a Command belonging to aPlugin .

          • #include <endstone/command/plugin_command.h>

          Inherits the following classes: endstone::Command

          "},{"location":"reference/cpp/classendstone_1_1PluginCommand/#public-functions","title":"Public Functions","text":"Type Name PluginCommand (const Command & command, Plugin & owner) virtual PluginCommand * asPluginCommand () override const virtual bool execute (CommandSender & sender, const std::vector< std::string > & args) override const virtual CommandExecutor & getExecutor () const Plugin & getPlugin () const virtual void setExecutor (std::shared_ptr< CommandExecutor > executor)"},{"location":"reference/cpp/classendstone_1_1PluginCommand/#public-functions-inherited-from-endstonecommand","title":"Public Functions inherited from endstone::Command","text":"

          See endstone::Command

          Type Name Command (std::string name, std::string description=\"\", std::vector< std::string > usages={}, std::vector< std::string > aliases={}, std::vector< std::string > permissions={}) virtual PluginCommand * asPluginCommand () const virtual bool execute (CommandSender & sender, const std::vector< std::string > & args) const std::vector< std::string > getAliases () const std::string getDescription () const std::string getName () const std::vector< std::string > getPermissions () const std::vector< std::string > getUsages () const bool isRegistered () const bool registerTo (CommandMap & command_map) void setAliases (Alias... aliases) void setDescription (std::string description) void setName (std::string name) void setPermissions (Permission... permissions) void setUsages (Usage... usages) bool testPermission (const CommandSender & target) const bool testPermissionSilently (const CommandSender & target) const bool unregisterFrom (const CommandMap & command_map) virtual ~Command () = default"},{"location":"reference/cpp/classendstone_1_1PluginCommand/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PluginCommand/#function-plugincommand","title":"function PluginCommand","text":"
          inline endstone::PluginCommand::PluginCommand (\n    const Command & command,\n    Plugin & owner\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PluginCommand/#function-asplugincommand","title":"function asPluginCommand","text":"
          inline virtual PluginCommand * endstone::PluginCommand::asPluginCommand () override const\n

          Implements endstone::Command::asPluginCommand

          "},{"location":"reference/cpp/classendstone_1_1PluginCommand/#function-execute","title":"function execute","text":"
          inline virtual bool endstone::PluginCommand::execute (\n    CommandSender & sender,\n    const std::vector< std::string > & args\n) override const\n

          Executes the command, returning its success

          Parameters:

          • sender Source of the command
          • args Arguments passed to the command

          Returns:

          true if the execution was successful, otherwise false

          Implements endstone::Command::execute

          "},{"location":"reference/cpp/classendstone_1_1PluginCommand/#function-getexecutor","title":"function getExecutor","text":"
          inline virtual CommandExecutor & endstone::PluginCommand::getExecutor () const\n

          Gets the CommandExecutor associated with this command

          Returns:

          CommandExecutor object linked to this command

          "},{"location":"reference/cpp/classendstone_1_1PluginCommand/#function-getplugin","title":"function getPlugin","text":"
          inline Plugin & endstone::PluginCommand::getPlugin () const\n

          Gets the owner of this PluginCommand

          Returns:

          Plugin that owns this command

          "},{"location":"reference/cpp/classendstone_1_1PluginCommand/#function-setexecutor","title":"function setExecutor","text":"
          inline virtual void endstone::PluginCommand::setExecutor (\n    std::shared_ptr< CommandExecutor > executor\n) \n

          Sets the CommandExecutor to run when parsing this command

          Parameters:

          • executor New executor to run

          The documentation for this class was generated from the following file include/endstone/command/plugin_command.h

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/","title":"Class endstone::PluginDescription","text":"

          ClassList > endstone > PluginDescription

          Represents the basic information about a plugin that the plugin loader needs to know.

          • #include <endstone/plugin/plugin_description.h>
          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#public-functions","title":"Public Functions","text":"Type Name PluginDescription (std::string name, std::string version, std::string description=\"\", PluginLoadOrder load=PluginLoadOrder::PostWorld, std::vector< std::string > authors={}, std::vector< std::string > contributors={}, std::string website=\"\", std::string prefix=\"\", std::vector< std::string > provides={}, std::vector< std::string > depend={}, std::vector< std::string > soft_depend={}, std::vector< std::string > load_before={}, PermissionDefault default_permission=PermissionDefault::Operator, std::vector< Command > commands={}, std::vector< Permission > permissions={}) std::string getAPIVersion () const std::vector< std::string > getAuthors () const std::vector< Command > getCommands () const std::vector< std::string > getContributors () const PermissionDefault getDefaultPermission () const std::vector< std::string > getDepend () const std::string getDescription () const std::string getFullName () const PluginLoadOrder getLoad () const std::vector< std::string > getLoadBefore () const std::string getName () const std::vector< Permission > getPermissions () const std::string getPrefix () const std::vector< std::string > getProvides () const std::vector< std::string > getSoftDepend () const std::string getVersion () const std::string getWebsite () const"},{"location":"reference/cpp/classendstone_1_1PluginDescription/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-plugindescription","title":"function PluginDescription","text":"
          inline endstone::PluginDescription::PluginDescription (\n    std::string name,\n    std::string version,\n    std::string description=\"\",\n    PluginLoadOrder load=PluginLoadOrder::PostWorld,\n    std::vector< std::string > authors={},\n    std::vector< std::string > contributors={},\n    std::string website=\"\",\n    std::string prefix=\"\",\n    std::vector< std::string > provides={},\n    std::vector< std::string > depend={},\n    std::vector< std::string > soft_depend={},\n    std::vector< std::string > load_before={},\n    PermissionDefault default_permission=PermissionDefault::Operator,\n    std::vector< Command > commands={},\n    std::vector< Permission > permissions={}\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getapiversion","title":"function getAPIVersion","text":"
          inline std::string endstone::PluginDescription::getAPIVersion () const\n

          Gives the API version which this plugin is designed to support.

          Returns:

          the API version supported by the plugin

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getauthors","title":"function getAuthors","text":"
          inline std::vector< std::string > endstone::PluginDescription::getAuthors () const\n

          Gives the list of authors for the plugin.

          Returns:

          an immutable list of the plugin's authors

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getcommands","title":"function getCommands","text":"
          inline std::vector< Command > endstone::PluginDescription::getCommands () const\n

          Gives the list of commands the plugin will register at runtime.

          Returns:

          the commands this plugin will register

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getcontributors","title":"function getContributors","text":"
          inline std::vector< std::string > endstone::PluginDescription::getContributors () const\n

          Gives the list of contributors for the plugin.

          Returns:

          an immutable list of the plugin's contributions

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getdefaultpermission","title":"function getDefaultPermission","text":"
          inline PermissionDefault endstone::PluginDescription::getDefaultPermission () const\n

          Gives the default value of permissions registered for the plugin.

          Returns:

          the default value for the plugin's permissions

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getdepend","title":"function getDepend","text":"
          inline std::vector< std::string > endstone::PluginDescription::getDepend () const\n

          Gives a list of other plugins that the plugin requires.

          Returns:

          immutable list of the plugin's dependencies

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getdescription","title":"function getDescription","text":"
          inline std::string endstone::PluginDescription::getDescription () const\n

          Gives a human-friendly description of the functionality the plugin provides.

          Returns:

          description of this plugin, or empty if not specified

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getfullname","title":"function getFullName","text":"
          inline std::string endstone::PluginDescription::getFullName () const\n

          Returns the name of a plugin, including the version.

          Returns:

          a descriptive name of the plugin and respective version

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getload","title":"function getLoad","text":"
          inline PluginLoadOrder endstone::PluginDescription::getLoad () const\n

          Gives the phase of server startup that the plugin should be loaded.

          Returns:

          the phase when the plugin should be loaded

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getloadbefore","title":"function getLoadBefore","text":"
          inline std::vector< std::string > endstone::PluginDescription::getLoadBefore () const\n

          Gets the list of plugins that should consider this plugin a soft-dependency.

          Returns:

          immutable list of plugins that should consider this plugin a soft-dependency

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getname","title":"function getName","text":"
          inline std::string endstone::PluginDescription::getName () const\n

          Gives the name of the plugin. This name is a unique identifier for plugins.

          Returns:

          the name of the plugin

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getpermissions","title":"function getPermissions","text":"
          inline std::vector< Permission > endstone::PluginDescription::getPermissions () const\n

          Gives the list of permissions the plugin will register at runtime, immediately proceeding enabling.

          Returns:

          the permissions this plugin will register

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getprefix","title":"function getPrefix","text":"
          inline std::string endstone::PluginDescription::getPrefix () const\n

          Gives the token to prefix plugin-specific logging messages with.

          Returns:

          the prefixed logging token, or empty if not specified

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getprovides","title":"function getProvides","text":"
          inline std::vector< std::string > endstone::PluginDescription::getProvides () const\n

          Gives the list of other plugin APIs which this plugin provides. These are usable for other plugins to depend on.

          Returns:

          immutable list of the plugin APIs which this plugin provides

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getsoftdepend","title":"function getSoftDepend","text":"
          inline std::vector< std::string > endstone::PluginDescription::getSoftDepend () const\n

          Gives a list of other plugins that the plugin requires for full functionality.

          Returns:

          immutable list of the plugin's preferred dependencies

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getversion","title":"function getVersion","text":"
          inline std::string endstone::PluginDescription::getVersion () const\n

          Gives the version of the plugin.

          Returns:

          the version of the plugin

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getwebsite","title":"function getWebsite","text":"
          inline std::string endstone::PluginDescription::getWebsite () const\n

          Gives the plugin's or plugin's author's website.

          Returns:

          the website of this plugin, or empty if not specified

          The documentation for this class was generated from the following file include/endstone/plugin/plugin_description.h

          "},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/","title":"Class endstone::PluginDisableEvent","text":"

          ClassList > endstone > PluginDisableEvent

          Called when a plugin is disabled.

          • #include <endstone/event/server/plugin_disable_event.h>

          Inherits the following classes: endstone::ServerEvent

          "},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PluginDisableEvent\""},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#public-functions","title":"Public Functions","text":"Type Name PluginDisableEvent (Plugin & plugin) virtual std::string getEventName () override const Plugin & getPlugin () const virtual bool isCancellable () override const"},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#public-functions-inherited-from-endstoneserverevent","title":"Public Functions inherited from endstone::ServerEvent","text":"

          See endstone::ServerEvent

          Type Name Event (bool async=false) Event (const Event &) = delete"},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PluginDisableEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#function-plugindisableevent","title":"function PluginDisableEvent","text":"
          inline explicit endstone::PluginDisableEvent::PluginDisableEvent (\n    Plugin & plugin\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PluginDisableEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#function-getplugin","title":"function getPlugin","text":"
          inline Plugin & endstone::PluginDisableEvent::getPlugin () const\n

          Gets the plugin involved in this event

          Returns:

          Plugin for this event

          "},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PluginDisableEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          The documentation for this class was generated from the following file include/endstone/event/server/plugin_disable_event.h

          "},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/","title":"Class endstone::PluginEnableEvent","text":"

          ClassList > endstone > PluginEnableEvent

          Called when a plugin is enabled.

          • #include <endstone/event/server/plugin_enable_event.h>

          Inherits the following classes: endstone::ServerEvent

          "},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PluginEnableEvent\""},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#public-functions","title":"Public Functions","text":"Type Name PluginEnableEvent (Plugin & plugin) virtual std::string getEventName () override const Plugin & getPlugin () const virtual bool isCancellable () override const"},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#public-functions-inherited-from-endstoneserverevent","title":"Public Functions inherited from endstone::ServerEvent","text":"

          See endstone::ServerEvent

          Type Name Event (bool async=false) Event (const Event &) = delete"},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PluginEnableEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#function-pluginenableevent","title":"function PluginEnableEvent","text":"
          inline explicit endstone::PluginEnableEvent::PluginEnableEvent (\n    Plugin & plugin\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PluginEnableEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#function-getplugin","title":"function getPlugin","text":"
          inline Plugin & endstone::PluginEnableEvent::getPlugin () const\n

          Gets the plugin involved in this event

          Returns:

          Plugin for this event

          "},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PluginEnableEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          The documentation for this class was generated from the following file include/endstone/event/server/plugin_enable_event.h

          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/","title":"Class endstone::PluginLoader","text":"

          ClassList > endstone > PluginLoader

          Represents a plugin loader, which handles direct access to specific types of plugins.

          • #include <endstone/plugin/plugin_loader.h>
          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/#public-functions","title":"Public Functions","text":"Type Name PluginLoader (Server & server) PluginLoader (const PluginLoader &) = delete virtual void disablePlugin (Plugin & plugin) const virtual void enablePlugin (Plugin & plugin) const Server & getServer () constRetrieves the Server object associated with thePluginLoader . virtual std::vector< Plugin * > loadPlugins (const std::string & directory) = 0 PluginLoader & operator= (const PluginLoader &) = delete virtual ~PluginLoader () = default"},{"location":"reference/cpp/classendstone_1_1PluginLoader/#protected-attributes","title":"Protected Attributes","text":"Type Name Server & server_"},{"location":"reference/cpp/classendstone_1_1PluginLoader/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PluginLoader/#function-pluginloader-12","title":"function PluginLoader [\u00bd]","text":"
          inline explicit endstone::PluginLoader::PluginLoader (\n    Server & server\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/#function-pluginloader-22","title":"function PluginLoader [2/2]","text":"
          endstone::PluginLoader::PluginLoader (\n    const PluginLoader &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/#function-disableplugin","title":"function disablePlugin","text":"
          inline virtual void endstone::PluginLoader::disablePlugin (\n    Plugin & plugin\n) const\n

          Disables the specified plugin Attempting to disable a plugin that is not enabled will have no effect

          Parameters:

          • plugin Plugin to disable
          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/#function-enableplugin","title":"function enablePlugin","text":"
          inline virtual void endstone::PluginLoader::enablePlugin (\n    Plugin & plugin\n) const\n

          Enables the specified plugin Attempting to enable a plugin that is already enabled will have no effect

          Parameters:

          • plugin Plugin to enable
          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/#function-getserver","title":"function getServer","text":"

          Retrieves the Server object associated with thePluginLoader .

          inline Server & endstone::PluginLoader::getServer () const\n

          This function returns a reference to the Server object that the PluginLoader is associated with.

          Returns:

          The Server reference.

          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/#function-loadplugins","title":"function loadPlugins","text":"
          virtual std::vector< Plugin * > endstone::PluginLoader::loadPlugins (\n    const std::string & directory\n) = 0\n

          Loads the plugin contained within the specified directory

          Parameters:

          • directory Directory to check for plugins

          Returns:

          A list of all plugins loaded

          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/#function-operator","title":"function operator=","text":"
          PluginLoader & endstone::PluginLoader::operator= (\n    const PluginLoader &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/#function-pluginloader","title":"function ~PluginLoader","text":"
          virtual endstone::PluginLoader::~PluginLoader () = default\n
          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/#protected-attributes-documentation","title":"Protected Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PluginLoader/#variable-server_","title":"variable server_","text":"
          Server& endstone::PluginLoader::server_;\n

          The documentation for this class was generated from the following file include/endstone/plugin/plugin_loader.h

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/","title":"Class endstone::PluginManager","text":"

          ClassList > endstone > PluginManager

          Represents a plugin manager that handles all plugins from the Server .

          • #include <endstone/plugin/plugin_manager.h>
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#public-functions","title":"Public Functions","text":"Type Name PluginManager () = default PluginManager (PluginManager const &) = delete virtual Permission * addPermission (std::unique_ptr< Permission > perm) = 0 virtual void callEvent (Event & event) = 0 virtual void clearPlugins () = 0 virtual void disablePlugin (Plugin & plugin) = 0 virtual void disablePlugins () = 0 virtual void enablePlugin (Plugin & plugin) const = 0 virtual void enablePlugins () const = 0 virtual std::unordered_set< Permissible * > getDefaultPermSubscriptions (bool op) const = 0 virtual std::unordered_set< Permission * > getDefaultPermissions (bool op) const = 0 virtual Permission * getPermission (std::string name) const = 0 virtual std::unordered_set< Permissible * > getPermissionSubscriptions (std::string permission) const = 0 virtual std::unordered_set< Permission * > getPermissions () const = 0 virtual Plugin * getPlugin (const std::string & name) const = 0 virtual std::vector< Plugin * > getPlugins () const = 0 virtual bool isPluginEnabled (const std::string & name) const = 0 virtual bool isPluginEnabled (Plugin * plugin) const = 0 virtual std::vector< Plugin * > loadPlugins (const std::string & directory) = 0 PluginManager & operator= (PluginManager const &) = delete virtual void recalculatePermissionDefaults (Permission & perm) = 0 virtual Result< void > registerEvent (std::string event, std::function< void(Event &)> executor, EventPriority priority, Plugin & plugin, bool ignore_cancelled) = 0 virtual void registerLoader (std::unique_ptr< PluginLoader > loader) = 0 virtual void removePermission (Permission & perm) = 0 virtual void removePermission (std::string name) = 0 virtual void subscribeToDefaultPerms (bool op, Permissible & permissible) = 0 virtual void subscribeToPermission (std::string permission, Permissible & permissible) = 0 virtual void unsubscribeFromDefaultPerms (bool op, Permissible & permissible) = 0 virtual void unsubscribeFromPermission (std::string permission, Permissible & permissible) = 0 virtual ~PluginManager () = default"},{"location":"reference/cpp/classendstone_1_1PluginManager/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-pluginmanager-12","title":"function PluginManager [\u00bd]","text":"
          endstone::PluginManager::PluginManager () = default\n
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-pluginmanager-22","title":"function PluginManager [2/2]","text":"
          endstone::PluginManager::PluginManager (\n    PluginManager const &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-addpermission","title":"function addPermission","text":"
          virtual Permission * endstone::PluginManager::addPermission (\n    std::unique_ptr< Permission > perm\n) = 0\n

          Adds a Permission to this plugin manager.

          Parameters:

          • perm Permission to add

          Returns:

          Permission, or nullptr if a permission is already defined with the given name of the new permission

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-callevent","title":"function callEvent","text":"
          virtual void endstone::PluginManager::callEvent (\n    Event & event\n) = 0\n

          Calls an event which will be passed to plugins.

          Parameters:

          • event Event to be called
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-clearplugins","title":"function clearPlugins","text":"
          virtual void endstone::PluginManager::clearPlugins () = 0\n

          Disables and removes all plugins

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-disableplugin","title":"function disablePlugin","text":"
          virtual void endstone::PluginManager::disablePlugin (\n    Plugin & plugin\n) = 0\n

          Disables the specified plugin Attempting to disable a plugin that is not enabled will have no effect

          Parameters:

          • plugin Plugin to disable
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-disableplugins","title":"function disablePlugins","text":"
          virtual void endstone::PluginManager::disablePlugins () = 0\n

          Disables all the loaded plugins

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-enableplugin","title":"function enablePlugin","text":"
          virtual void endstone::PluginManager::enablePlugin (\n    Plugin & plugin\n) const = 0\n

          Enables the specified plugin Attempting to enable a plugin that is already enabled will have no effect

          Parameters:

          • plugin Plugin to enable
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-enableplugins","title":"function enablePlugins","text":"
          virtual void endstone::PluginManager::enablePlugins () const = 0\n

          Enable all the loaded plugins

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-getdefaultpermsubscriptions","title":"function getDefaultPermSubscriptions","text":"
          virtual std::unordered_set< Permissible * > endstone::PluginManager::getDefaultPermSubscriptions (\n    bool op\n) const = 0\n

          Gets a set containing all subscribed Permissibles to the given default list, by op status

          Parameters:

          • op Default list to query for

          Returns:

          Set containing all subscribed permissions

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-getdefaultpermissions","title":"function getDefaultPermissions","text":"
          virtual std::unordered_set< Permission * > endstone::PluginManager::getDefaultPermissions (\n    bool op\n) const = 0\n

          Gets the default permissions for the given op status

          Parameters:

          • op Which set of default permissions to get

          Returns:

          The default permissions

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-getpermission","title":"function getPermission","text":"
          virtual Permission * endstone::PluginManager::getPermission (\n    std::string name\n) const = 0\n

          Gets a Permission from its fully qualified name

          Parameters:

          • name Name of the permission

          Returns:

          Permission, or null if none

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-getpermissionsubscriptions","title":"function getPermissionSubscriptions","text":"
          virtual std::unordered_set< Permissible * > endstone::PluginManager::getPermissionSubscriptions (\n    std::string permission\n) const = 0\n

          Gets a set containing all subscribed Permissibles to the given permission, by name

          Parameters:

          • permission Permission to query for

          Returns:

          Set containing all subscribed permissions

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-getpermissions","title":"function getPermissions","text":"
          virtual std::unordered_set< Permission * > endstone::PluginManager::getPermissions () const = 0\n

          Gets a set of all registered permissions.

          This set is a copy and will not be modified live.

          Returns:

          Set containing all current registered permissions

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-getplugin","title":"function getPlugin","text":"
          virtual Plugin * endstone::PluginManager::getPlugin (\n    const std::string & name\n) const = 0\n

          Checks if the given plugin is loaded and returns it when applicable. Please note that the name of the plugin is case-sensitive

          Parameters:

          • name Name of the plugin to check

          Returns:

          Plugin if it exists, otherwise nullptr

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-getplugins","title":"function getPlugins","text":"
          virtual std::vector< Plugin * > endstone::PluginManager::getPlugins () const = 0\n

          Gets a list of all currently loaded plugins

          Returns:

          List of Plugins

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-ispluginenabled-12","title":"function isPluginEnabled [\u00bd]","text":"
          virtual bool endstone::PluginManager::isPluginEnabled (\n    const std::string & name\n) const = 0\n

          Checks if the given plugin is enabled or not Please note that the name of the plugin is case-sensitive.

          Parameters:

          • name Name of the plugin to check

          Returns:

          true if the plugin is enabled, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-ispluginenabled-22","title":"function isPluginEnabled [2/2]","text":"
          virtual bool endstone::PluginManager::isPluginEnabled (\n    Plugin * plugin\n) const = 0\n

          Checks if the given plugin is enabled or not

          Parameters:

          • plugin Plugin to check

          Returns:

          true if the plugin is enabled, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-loadplugins","title":"function loadPlugins","text":"
          virtual std::vector< Plugin * > endstone::PluginManager::loadPlugins (\n    const std::string & directory\n) = 0\n

          Loads the plugin contained within the specified directory

          Parameters:

          • directory Directory to check for plugins

          Returns:

          A list of all plugins loaded

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-operator","title":"function operator=","text":"
          PluginManager & endstone::PluginManager::operator= (\n    PluginManager const &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-recalculatepermissiondefaults","title":"function recalculatePermissionDefaults","text":"
          virtual void endstone::PluginManager::recalculatePermissionDefaults (\n    Permission & perm\n) = 0\n

          Recalculates the defaults for the given Permission.

          This will have no effect if the specified permission is not registered here.

          Parameters:

          • perm Permission to recalculate
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-registerevent","title":"function registerEvent","text":"
          virtual Result< void > endstone::PluginManager::registerEvent (\n    std::string event,\n    std::function< void( Event &)> executor,\n    EventPriority priority,\n    Plugin & plugin,\n    bool ignore_cancelled\n) = 0\n

          Registers the given event

          Parameters:

          • event Event name to register
          • executor EventExecutor to register
          • priority Priority of this event
          • plugin Plugin to register
          • ignore_cancelled Do not call executor if event was already cancelled
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-registerloader","title":"function registerLoader","text":"
          virtual void endstone::PluginManager::registerLoader (\n    std::unique_ptr< PluginLoader > loader\n) = 0\n

          Registers the specified plugin loader

          Parameters:

          • loader PluginLoader to register
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-removepermission-12","title":"function removePermission [\u00bd]","text":"
          virtual void endstone::PluginManager::removePermission (\n    Permission & perm\n) = 0\n

          Removes a Permission registration from this plugin manager.

          If the specified permission does not exist in this plugin manager, nothing will happen. Removing a permission registration will not remove the permission from any Permissibles that have it.

          Parameters:

          • perm Permission to remove
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-removepermission-22","title":"function removePermission [2/2]","text":"
          virtual void endstone::PluginManager::removePermission (\n    std::string name\n) = 0\n

          Removes a Permission registration from this plugin manager.

          If the specified permission does not exist in this plugin manager, nothing will happen. Removing a permission registration will not remove the permission from any Permissibles that have it.

          Parameters:

          • name Permission to remove
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-subscribetodefaultperms","title":"function subscribeToDefaultPerms","text":"
          virtual void endstone::PluginManager::subscribeToDefaultPerms (\n    bool op,\n    Permissible & permissible\n) = 0\n

          Subscribes to the given Default permissions by operator status

          If the specified defaults change in any form, the Permissible will be asked to recalculate.

          Parameters:

          • op Default list to subscribe to
          • permissible Permissible subscribing
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-subscribetopermission","title":"function subscribeToPermission","text":"
          virtual void endstone::PluginManager::subscribeToPermission (\n    std::string permission,\n    Permissible & permissible\n) = 0\n

          Subscribes the given Permissible for information about the requested Permission, by name. If the specified Permission changes in any form, the Permissible will be asked to recalculate.

          Parameters:

          • permission Permission to subscribe to
          • permissible Permissible subscribing
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-unsubscribefromdefaultperms","title":"function unsubscribeFromDefaultPerms","text":"
          virtual void endstone::PluginManager::unsubscribeFromDefaultPerms (\n    bool op,\n    Permissible & permissible\n) = 0\n

          Unsubscribes from the given Default permissions by operator status

          Parameters:

          • op Default list to unsubscribe from
          • permissible Permissible subscribing
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-unsubscribefrompermission","title":"function unsubscribeFromPermission","text":"
          virtual void endstone::PluginManager::unsubscribeFromPermission (\n    std::string permission,\n    Permissible & permissible\n) = 0\n

          Unsubscribes the given Permissible for information about the requested Permission, by name.

          Parameters:

          • permission Permission to unsubscribe from
          • permissible Permissible subscribing
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-pluginmanager","title":"function ~PluginManager","text":"
          virtual endstone::PluginManager::~PluginManager () = default\n

          The documentation for this class was generated from the following file include/endstone/plugin/plugin_manager.h

          "},{"location":"reference/cpp/classendstone_1_1Position/","title":"Class endstone::Position","text":"

          ClassList > endstone > Position

          Represents a 3-dimensional position in a dimension within a level.

          • #include <endstone/level/position.h>

          Inherits the following classes: endstone::Vector

          Inherited by the following classes: endstone::Location

          "},{"location":"reference/cpp/classendstone_1_1Position/#public-functions","title":"Public Functions","text":"Type Name Position (Dimension * dimension, float x, float y, float z) int getBlockX () constGets the floored value of the X component, indicating the block that this location is contained with. int getBlockY () constGets the floored value of the Y component, indicating the block that this location is contained with. int getBlockZ () constGets the floored value of the Z component, indicating the block that this location is contained with. Dimension * getDimension () const void setDimension (Dimension & dimension)"},{"location":"reference/cpp/classendstone_1_1Position/#public-functions-inherited-from-endstonevector","title":"Public Functions inherited from endstone::Vector","text":"

          See endstone::Vector

          Type Name constexpr Vector () constexpr Vector (T x, T y, T z) constexpr T distance (const Vector< T > & other) const constexpr T distanceSquared (const Vector< T > & other) const constexpr T getX () constGets the X component. constexpr T getY () constGets the Y component. constexpr T getZ () constGets the Z component. constexpr T length () constGets the magnitude of the vector, defined as sqrt(x2+y2+z^2). constexpr T lengthSquared () constGets the magnitude of the vector squared. constexpr Vector< T > operator* (const Vector< T > & other) const Vector< T > operator* (T scalar) const Vector< T > & operator*= (const Vector< T > & other) constexpr Vector< T > operator+ (const Vector< T > & other) const Vector< T > operator+ (T scalar) const Vector< T > & operator+= (const Vector< T > & other) constexpr Vector< T > operator- (const Vector< T > & other) const Vector< T > operator- (T scalar) const Vector< T > & operator-= (const Vector< T > & other) constexpr Vector< T > operator/ (const Vector< T > & other) const Vector< T > operator/ (T scalar) const Vector< T > & operator/= (const Vector< T > & other) constexpr bool operator== (const Vector< T > & other) const constexpr void setX (T x) Set the X component. constexpr void setY (T y) Set the Y component. constexpr void setZ (T z) Set the Z component."},{"location":"reference/cpp/classendstone_1_1Position/#protected-attributes-inherited-from-endstonevector","title":"Protected Attributes inherited from endstone::Vector","text":"

          See endstone::Vector

          Type Name T x_ T y_ T z_"},{"location":"reference/cpp/classendstone_1_1Position/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Position/#function-position","title":"function Position","text":"
          inline endstone::Position::Position (\n    Dimension * dimension,\n    float x,\n    float y,\n    float z\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Position/#function-getblockx","title":"function getBlockX","text":"

          Gets the floored value of the X component, indicating the block that this location is contained with.

          inline int endstone::Position::getBlockX () const\n

          Returns:

          block X

          "},{"location":"reference/cpp/classendstone_1_1Position/#function-getblocky","title":"function getBlockY","text":"

          Gets the floored value of the Y component, indicating the block that this location is contained with.

          inline int endstone::Position::getBlockY () const\n

          Returns:

          block Y

          "},{"location":"reference/cpp/classendstone_1_1Position/#function-getblockz","title":"function getBlockZ","text":"

          Gets the floored value of the Z component, indicating the block that this location is contained with.

          inline int endstone::Position::getBlockZ () const\n

          Returns:

          block Z

          "},{"location":"reference/cpp/classendstone_1_1Position/#function-getdimension","title":"function getDimension","text":"
          inline Dimension * endstone::Position::getDimension () const\n

          Gets the dimension that this position resides in

          Returns:

          Dimension that contains this position, or nullptr if the dimension is not set.

          "},{"location":"reference/cpp/classendstone_1_1Position/#function-setdimension","title":"function setDimension","text":"
          inline void endstone::Position::setDimension (\n    Dimension & dimension\n) \n

          Sets the dimension that this position resides in

          Parameters:

          • dimension New dimension that this position resides in

          The documentation for this class was generated from the following file include/endstone/level/position.h

          "},{"location":"reference/cpp/classendstone_1_1ProxiedCommandSender/","title":"Class endstone::ProxiedCommandSender","text":"

          ClassList > endstone > ProxiedCommandSender

          Interface for proxied command sender.

          • #include <endstone/command/proxied_command_sender.h>

          Inherits the following classes: endstone::CommandSender

          "},{"location":"reference/cpp/classendstone_1_1ProxiedCommandSender/#public-functions","title":"Public Functions","text":"Type Name virtual CommandSender & getCallee () const = 0Returns the CommandSender which is being used to call the command. virtual CommandSender & getCaller () const = 0Returns the CommandSender which triggered this proxied command."},{"location":"reference/cpp/classendstone_1_1ProxiedCommandSender/#public-functions-inherited-from-endstonecommandsender","title":"Public Functions inherited from endstone::CommandSender","text":"

          See endstone::CommandSender

          Type Name virtual Actor * asActor () constGets a CommandSender asActor . virtual CommandSender * asCommandSender () override constCasts a Permissible asCommandSender . virtual ConsoleCommandSender * asConsole () constGets a CommandSender as Console. virtual Player * asPlayer () constGets a CommandSender asPlayer . virtual std::string getName () const = 0Gets the name of this command sender. virtual Server & getServer () const = 0Returns the server instance that this command is running on. virtual void sendErrorMessage (const Message & message) const = 0Sends this sender a error message. void sendErrorMessage (const fmt::format_string< Args... > format, Args &&... args) const virtual void sendMessage (const Message & message) const = 0Sends this sender a message. void sendMessage (const fmt::format_string< Args... > format, Args &&... args) const"},{"location":"reference/cpp/classendstone_1_1ProxiedCommandSender/#public-functions-inherited-from-endstonepermissible","title":"Public Functions inherited from endstone::Permissible","text":"

          See endstone::Permissible

          Type Name virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin, const std::string & name, bool value) = 0 virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin) = 0 virtual CommandSender * asCommandSender () const = 0Casts a Permissible asCommandSender . virtual std::unordered_set< PermissionAttachmentInfo * > getEffectivePermissions () const = 0 virtual bool hasPermission (std::string name) const = 0 virtual bool hasPermission (const Permission & perm) const = 0 virtual bool isOp () const = 0Checks if this object is a server operator. virtual bool isPermissionSet (std::string name) const = 0 virtual bool isPermissionSet (const Permission & perm) const = 0 virtual void recalculatePermissions () = 0 virtual Result< void > removeAttachment (PermissionAttachment & attachment) = 0 virtual void setOp (bool value) = 0Sets the operator status of this object. virtual ~Permissible () = default"},{"location":"reference/cpp/classendstone_1_1ProxiedCommandSender/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ProxiedCommandSender/#function-getcallee","title":"function getCallee","text":"

          Returns the CommandSender which is being used to call the command.

          virtual CommandSender & endstone::ProxiedCommandSender::getCallee () const = 0\n

          Returns:

          a shared pointer to the caller which the command is being run as

          "},{"location":"reference/cpp/classendstone_1_1ProxiedCommandSender/#function-getcaller","title":"function getCaller","text":"

          Returns the CommandSender which triggered this proxied command.

          virtual CommandSender & endstone::ProxiedCommandSender::getCaller () const = 0\n

          Returns:

          a shared pointer to the caller which triggered the command

          The documentation for this class was generated from the following file include/endstone/command/proxied_command_sender.h

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/","title":"Class endstone::Scheduler","text":"

          ClassList > endstone > Scheduler

          Represents a scheduler that executes various tasks.

          • #include <endstone/scheduler/scheduler.h>
          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#public-functions","title":"Public Functions","text":"Type Name virtual void cancelTask (TaskId id) = 0 virtual void cancelTasks (Plugin & plugin) = 0 virtual std::vector< Task * > getPendingTasks () = 0 virtual bool isQueued (TaskId id) = 0 virtual bool isRunning (TaskId id) = 0 virtual std::shared_ptr< Task > runTask (Plugin & plugin, std::function< void()> task) = 0 virtual std::shared_ptr< Task > runTaskAsync (Plugin & plugin, std::function< void()> task) = 0Returns a task that will be executed asynchronously on the next server tick. virtual std::shared_ptr< Task > runTaskLater (Plugin & plugin, std::function< void()> task, std::uint64_t delay) = 0 virtual std::shared_ptr< Task > runTaskLaterAsync (Plugin & plugin, std::function< void()> task, std::uint64_t delay) = 0Returns a task that will be executed asynchronously after the specified number of server ticks. virtual std::shared_ptr< Task > runTaskTimer (Plugin & plugin, std::function< void()> task, std::uint64_t delay, std::uint64_t period) = 0 virtual std::shared_ptr< Task > runTaskTimerAsync (Plugin & plugin, std::function< void()> task, std::uint64_t delay, std::uint64_t period) = 0Returns a task that will be executed repeatedly (and asynchronously) until cancelled, starting after the specified number of server ticks. virtual ~Scheduler () = default"},{"location":"reference/cpp/classendstone_1_1Scheduler/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-canceltask","title":"function cancelTask","text":"
          virtual void endstone::Scheduler::cancelTask (\n    TaskId id\n) = 0\n

          Removes task from scheduler.

          Parameters:

          • taskId Id number of task to be removed
          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-canceltasks","title":"function cancelTasks","text":"
          virtual void endstone::Scheduler::cancelTasks (\n    Plugin & plugin\n) = 0\n

          Removes all tasks associated with a particular plugin from the scheduler.

          Parameters:

          • plugin Owner of tasks to be removed
          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-getpendingtasks","title":"function getPendingTasks","text":"
          virtual std::vector< Task * > endstone::Scheduler::getPendingTasks () = 0\n

          Returns a vector of all pending tasks.

          The ordering of the tasks is NOT related to their order of execution.

          Returns:

          Pending tasks

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-isqueued","title":"function isQueued","text":"
          virtual bool endstone::Scheduler::isQueued (\n    TaskId id\n) = 0\n

          Check if the task queued to be run later.

          Parameters:

          • taskId The task to check.

          Returns:

          If the task is queued to be run.

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-isrunning","title":"function isRunning","text":"
          virtual bool endstone::Scheduler::isRunning (\n    TaskId id\n) = 0\n

          Check if the task currently running.

          Parameters:

          • taskId The task to check.

          Returns:

          If the task is currently running.

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-runtask","title":"function runTask","text":"
          virtual std::shared_ptr< Task > endstone::Scheduler::runTask (\n    Plugin & plugin,\n    std::function< void()> task\n) = 0\n

          Returns a task that will be executed synchronously on the next server tick.

          Parameters:

          • plugin the reference to the plugin scheduling task
          • task the task to be run

          Returns:

          a Task that contains the id number (nullptr if task is empty)

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-runtaskasync","title":"function runTaskAsync","text":"

          Returns a task that will be executed asynchronously on the next server tick.

          virtual std::shared_ptr< Task > endstone::Scheduler::runTaskAsync (\n    Plugin & plugin,\n    std::function< void()> task\n) = 0\n

          Remark:

          Asynchronous tasks should never access any Endstone API

          Parameters:

          • plugin the reference to the plugin scheduling task
          • task the task to be run

          Returns:

          a Task that contains the id number (nullptr if task is empty)

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-runtasklater","title":"function runTaskLater","text":"
          virtual std::shared_ptr< Task > endstone::Scheduler::runTaskLater (\n    Plugin & plugin,\n    std::function< void()> task,\n    std::uint64_t delay\n) = 0\n

          Returns a task that will be executed synchronously after the specified number of server ticks.

          Parameters:

          • plugin the reference to the plugin scheduling task
          • task the task to be run
          • delay the ticks to wait before running the task

          Returns:

          a Task that contains the id number (nullptr if task is empty)

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-runtasklaterasync","title":"function runTaskLaterAsync","text":"

          Returns a task that will be executed asynchronously after the specified number of server ticks.

          virtual std::shared_ptr< Task > endstone::Scheduler::runTaskLaterAsync (\n    Plugin & plugin,\n    std::function< void()> task,\n    std::uint64_t delay\n) = 0\n

          Remark:

          Asynchronous tasks should never access any Endstone API

          Parameters:

          • plugin the reference to the plugin scheduling task
          • task the task to be run
          • delay the ticks to wait before running the task

          Returns:

          a Task that contains the id number (nullptr if task is empty)

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-runtasktimer","title":"function runTaskTimer","text":"
          virtual std::shared_ptr< Task > endstone::Scheduler::runTaskTimer (\n    Plugin & plugin,\n    std::function< void()> task,\n    std::uint64_t delay,\n    std::uint64_t period\n) = 0\n

          Returns a task that will be executed repeatedly (and synchronously) until cancelled, starting after the specified number of server ticks.

          Parameters:

          • plugin the reference to the plugin scheduling task
          • task the task to be run
          • delay the ticks to wait before running the task
          • period the ticks to wait between runs

          Returns:

          a Task that contains the id number (nullptr if task is empty)

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-runtasktimerasync","title":"function runTaskTimerAsync","text":"

          Returns a task that will be executed repeatedly (and asynchronously) until cancelled, starting after the specified number of server ticks.

          virtual std::shared_ptr< Task > endstone::Scheduler::runTaskTimerAsync (\n    Plugin & plugin,\n    std::function< void()> task,\n    std::uint64_t delay,\n    std::uint64_t period\n) = 0\n

          Remark:

          Asynchronous tasks should never access any Endstone API

          Parameters:

          • plugin the reference to the plugin scheduling task
          • task the task to be run
          • delay the ticks to wait before running the task
          • period the ticks to wait between runs

          Returns:

          a Task that contains the id number (nullptr if task is empty)

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-scheduler","title":"function ~Scheduler","text":"
          virtual endstone::Scheduler::~Scheduler () = default\n

          The documentation for this class was generated from the following file include/endstone/scheduler/scheduler.h

          "},{"location":"reference/cpp/classendstone_1_1Score/","title":"Class endstone::Score","text":"

          ClassList > endstone > Score

          Represents a score for an objective on a scoreboard.

          • #include <endstone/scoreboard/score.h>
          "},{"location":"reference/cpp/classendstone_1_1Score/#public-functions","title":"Public Functions","text":"Type Name virtual ScoreEntry getEntry () const = 0Gets the entry being tracked by this Score . virtual Objective & getObjective () const = 0Gets the Objective being tracked by thisScore . virtual Scoreboard & getScoreboard () const = 0Gets the scoreboard for the associated objective. virtual Result< int > getValue () const = 0Gets the current score. virtual Result< bool > isScoreSet () const = 0Shows if this score has been set at any point in time. virtual Result< void > setValue (int score) = 0Sets the current score. virtual ~Score () = default"},{"location":"reference/cpp/classendstone_1_1Score/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Score/#function-getentry","title":"function getEntry","text":"

          Gets the entry being tracked by this Score .

          virtual ScoreEntry endstone::Score::getEntry () const = 0\n

          Returns:

          this Score's tracked entry

          "},{"location":"reference/cpp/classendstone_1_1Score/#function-getobjective","title":"function getObjective","text":"

          Gets the Objective being tracked by thisScore .

          virtual Objective & endstone::Score::getObjective () const = 0\n

          Returns:

          the owning objective's scoreboard

          "},{"location":"reference/cpp/classendstone_1_1Score/#function-getscoreboard","title":"function getScoreboard","text":"

          Gets the scoreboard for the associated objective.

          virtual Scoreboard & endstone::Score::getScoreboard () const = 0\n

          Returns:

          the owning objective's scoreboard

          "},{"location":"reference/cpp/classendstone_1_1Score/#function-getvalue","title":"function getValue","text":"

          Gets the current score.

          virtual Result< int > endstone::Score::getValue () const = 0\n

          Returns:

          the current score

          "},{"location":"reference/cpp/classendstone_1_1Score/#function-isscoreset","title":"function isScoreSet","text":"

          Shows if this score has been set at any point in time.

          virtual Result< bool > endstone::Score::isScoreSet () const = 0\n

          Returns:

          if this score has been set before

          "},{"location":"reference/cpp/classendstone_1_1Score/#function-setvalue","title":"function setValue","text":"

          Sets the current score.

          virtual Result< void > endstone::Score::setValue (\n    int score\n) = 0\n

          Parameters:

          • score New score
          "},{"location":"reference/cpp/classendstone_1_1Score/#function-score","title":"function ~Score","text":"
          virtual endstone::Score::~Score () = default\n

          The documentation for this class was generated from the following file include/endstone/scoreboard/score.h

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/","title":"Class endstone::Scoreboard","text":"

          ClassList > endstone > Scoreboard

          Represents a scoreboard.

          • #include <endstone/scoreboard/scoreboard.h>

          Inherits the following classes: std::enable_shared_from_this< Scoreboard >

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#public-functions","title":"Public Functions","text":"Type Name virtual Result< std::unique_ptr< Objective > > addObjective (std::string name, Criteria::Type criteria) = 0Registers an Objective on thisScoreboard . virtual Result< std::unique_ptr< Objective > > addObjective (std::string name, Criteria::Type criteria, std::string display_name) = 0Registers an Objective on thisScoreboard . virtual Result< std::unique_ptr< Objective > > addObjective (std::string name, Criteria::Type criteria, std::string display_name, RenderType render_type) = 0Registers an Objective on thisScoreboard . virtual void clearSlot (DisplaySlot slot) = 0Clears any objective in the specified slot. virtual std::vector< ScoreEntry > getEntries () const = 0Gets all entries tracked by this Scoreboard . virtual std::unique_ptr< Objective > getObjective (std::string name) const = 0Gets an Objective on thisScoreboard by name. virtual std::unique_ptr< Objective > getObjective (DisplaySlot slot) const = 0Gets the Objective currently displayed in a DisplaySlot on thisScoreboard . virtual std::vector< std::unique_ptr< Objective > > getObjectives () const = 0Gets all Objectives on this Scoreboard . virtual std::vector< std::unique_ptr< Objective > > getObjectivesByCriteria (Criteria::Type criteria) const = 0Gets all Objectives of a Criteria on theScoreboard . virtual std::vector< std::unique_ptr< Score > > getScores (ScoreEntry entry) const = 0Gets all scores for an entry on this Scoreboard . virtual void resetScores (ScoreEntry entry) = 0Removes all scores for an entry on this Scoreboard . virtual ~Scoreboard () = default"},{"location":"reference/cpp/classendstone_1_1Scoreboard/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-addobjective-13","title":"function addObjective [\u2153]","text":"

          Registers an Objective on thisScoreboard .

          virtual Result< std::unique_ptr< Objective > > endstone::Scoreboard::addObjective (\n    std::string name,\n    Criteria::Type criteria\n) = 0\n

          Parameters:

          • name Name of the Objective
          • criteria Criteria for the Objective

          Returns:

          A reference to the newly registered Objective.

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-addobjective-23","title":"function addObjective [\u2154]","text":"

          Registers an Objective on thisScoreboard .

          virtual Result< std::unique_ptr< Objective > > endstone::Scoreboard::addObjective (\n    std::string name,\n    Criteria::Type criteria,\n    std::string display_name\n) = 0\n

          Parameters:

          • name Name of the Objective
          • criteria Criteria type for the Objective
          • display_name Name displayed to players for the Objective.

          Returns:

          A reference to the newly registered Objective.

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-addobjective-33","title":"function addObjective [3/3]","text":"

          Registers an Objective on thisScoreboard .

          virtual Result< std::unique_ptr< Objective > > endstone::Scoreboard::addObjective (\n    std::string name,\n    Criteria::Type criteria,\n    std::string display_name,\n    RenderType render_type\n) = 0\n

          Parameters:

          • name Name of the Objective
          • criteria Criteria type for the Objective
          • display_name Name displayed to players for the Objective.
          • render_type Manner of rendering the Objective

          Returns:

          A reference to the newly registered Objective.

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-clearslot","title":"function clearSlot","text":"

          Clears any objective in the specified slot.

          virtual void endstone::Scoreboard::clearSlot (\n    DisplaySlot slot\n) = 0\n

          Parameters:

          • slot the slot to remove objectives
          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-getentries","title":"function getEntries","text":"

          Gets all entries tracked by this Scoreboard .

          virtual std::vector< ScoreEntry > endstone::Scoreboard::getEntries () const = 0\n

          Returns:

          A list of all tracked entries

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-getobjective-12","title":"function getObjective [\u00bd]","text":"

          Gets an Objective on thisScoreboard by name.

          virtual std::unique_ptr< Objective > endstone::Scoreboard::getObjective (\n    std::string name\n) const = 0\n

          Parameters:

          • name Name of the Objective

          Returns:

          the Objective or nullptr if it does not exist

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-getobjective-22","title":"function getObjective [2/2]","text":"

          Gets the Objective currently displayed in a DisplaySlot on thisScoreboard .

          virtual std::unique_ptr< Objective > endstone::Scoreboard::getObjective (\n    DisplaySlot slot\n) const = 0\n

          Parameters:

          • slot The DisplaySlot

          Returns:

          the Objective currently displayed or nullptr if nothing is displayed in that DisplaySlot

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-getobjectives","title":"function getObjectives","text":"

          Gets all Objectives on this Scoreboard .

          virtual std::vector< std::unique_ptr< Objective > > endstone::Scoreboard::getObjectives () const = 0\n

          Returns:

          A list of all Objectives on this Scoreboard

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-getobjectivesbycriteria","title":"function getObjectivesByCriteria","text":"

          Gets all Objectives of a Criteria on theScoreboard .

          virtual std::vector< std::unique_ptr< Objective > > endstone::Scoreboard::getObjectivesByCriteria (\n    Criteria::Type criteria\n) const = 0\n

          Parameters:

          • criteria Criteria type to search by

          Returns:

          A list of Objectives using the specified Criteria

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-getscores","title":"function getScores","text":"

          Gets all scores for an entry on this Scoreboard .

          virtual std::vector< std::unique_ptr< Score > > endstone::Scoreboard::getScores (\n    ScoreEntry entry\n) const = 0\n

          Parameters:

          • entry the entry whose scores are being retrieved

          Returns:

          a list of all scores tracked for the entry

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-resetscores","title":"function resetScores","text":"

          Removes all scores for an entry on this Scoreboard .

          virtual void endstone::Scoreboard::resetScores (\n    ScoreEntry entry\n) = 0\n

          Parameters:

          • entry the entry to drop all current scores for
          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-scoreboard","title":"function ~Scoreboard","text":"
          virtual endstone::Scoreboard::~Scoreboard () = default\n

          The documentation for this class was generated from the following file include/endstone/scoreboard/scoreboard.h

          "},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/","title":"Class endstone::ScriptMessageEvent","text":"

          ClassList > endstone > ScriptMessageEvent

          Called when a message is sent by /scriptevent command.

          • #include <endstone/event/server/script_message_event.h>

          Inherits the following classes: endstone::ServerEvent

          "},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ScriptMessageEvent\""},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#public-functions","title":"Public Functions","text":"Type Name ScriptMessageEvent (std::string message_id, std::string message, const CommandSender & sender) virtual std::string getEventName () override const const std::string & getMessage () const const std::string & getMessageId () const const CommandSender & getSender () const virtual bool isCancellable () override const"},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#public-functions-inherited-from-endstoneserverevent","title":"Public Functions inherited from endstone::ServerEvent","text":"

          See endstone::ServerEvent

          Type Name Event (bool async=false) Event (const Event &) = delete"},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ScriptMessageEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#function-scriptmessageevent","title":"function ScriptMessageEvent","text":"
          inline endstone::ScriptMessageEvent::ScriptMessageEvent (\n    std::string message_id,\n    std::string message,\n    const CommandSender & sender\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ScriptMessageEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#function-getmessage","title":"function getMessage","text":"
          inline const std::string & endstone::ScriptMessageEvent::getMessage () const\n

          Get the message to send.

          Returns:

          Message to send

          "},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#function-getmessageid","title":"function getMessageId","text":"
          inline const std::string & endstone::ScriptMessageEvent::getMessageId () const\n

          Get the message id to send.

          Returns:

          Message id to send

          "},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#function-getsender","title":"function getSender","text":"
          inline const CommandSender & endstone::ScriptMessageEvent::getSender () const\n

          Gets the command sender who initiated the command

          Returns:

          Command sender who initiated the command

          "},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ScriptMessageEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          The documentation for this class was generated from the following file include/endstone/event/server/script_message_event.h

          "},{"location":"reference/cpp/classendstone_1_1Server/","title":"Class endstone::Server","text":"

          ClassList > endstone > Server

          Represents a server implementation.

          • #include <endstone/server.h>
          "},{"location":"reference/cpp/classendstone_1_1Server/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string BroadcastChannelAdmin = = \"endstone.broadcast.admin\"Used for all administrative messages, such as an operator using a command. const std::string BroadcastChannelUser = = \"endstone.broadcast.user\"Used for all announcement messages, such as informing users that a player has joined."},{"location":"reference/cpp/classendstone_1_1Server/#public-functions","title":"Public Functions","text":"Type Name Server () = default Server (const Server &) = delete virtual void broadcast (const Message & message, const std::string & permission) const = 0Broadcasts the specified message to every user with the given permission name. virtual void broadcastMessage (const Message & message) const = 0Broadcasts the specified message to every user with permission endstone.broadcast.user. void broadcastMessage (const fmt::format_string< Args... > format, Args &&... args) const virtual Result< std::shared_ptr< BlockData > > createBlockData (std::string type) const = 0Creates a new BlockData instance for the specified block type, with all properties initialized to defaults. virtual Result< std::shared_ptr< BlockData > > createBlockData (std::string type, BlockStates block_states) const = 0Creates a new BlockData instance for the specified block type, with all properties initialized to defaults, except for those provided in data. virtual std::unique_ptr< BossBar > createBossBar (std::string title, BarColor color, BarStyle style) const = 0Creates a boss bar instance to display to players. The progress defaults to 1.0. virtual std::unique_ptr< BossBar > createBossBar (std::string title, BarColor color, BarStyle style, std::vector< BarFlag > flags) const = 0Creates a boss bar instance to display to players. The progress defaults to 1.0. virtual std::shared_ptr< Scoreboard > createScoreboard () = 0Creates a new Scoreboard to be tracked by the server. virtual bool dispatchCommand (CommandSender & sender, std::string command_line) const = 0Dispatches a command on this server, and executes it if found. virtual float getAverageMillisecondsPerTick () = 0Gets the average milliseconds per tick (MSPT). virtual float getAverageTickUsage () = 0Gets the average tick usage of the server. virtual float getAverageTicksPerSecond () = 0Gets the average ticks per second (TPS). virtual ConsoleCommandSender & getCommandSender () const = 0Gets a CommandSender for this server. virtual float getCurrentMillisecondsPerTick () = 0Gets the current milliseconds per tick (MSPT). virtual float getCurrentTickUsage () = 0Gets the current tick usage of the server. virtual float getCurrentTicksPerSecond () = 0Gets the current ticks per second (TPS). virtual Language & getLanguage () const = 0Gets the current language interface used by the server. virtual Level * getLevel () const = 0Gets the server level. virtual Logger & getLogger () const = 0Returns the primary logger associated with this server instance. virtual int getMaxPlayers () const = 0Get the maximum amount of players which can login to this server. virtual std::string getMinecraftVersion () const = 0Gets the Minecraft version that this server is running. virtual std::string getName () const = 0Gets the name of this server implementation. virtual bool getOnlineMode () const = 0Gets whether the Server is in online mode or not. virtual std::vector< Player * > getOnlinePlayers () const = 0Gets a list of all currently online players. virtual Player * getPlayer (endstone::UUID id) const = 0Gets the player with the given UUID . virtual Player * getPlayer (std::string name) const = 0Gets the player with the exact given name, case-insensitive. virtual PluginCommand * getPluginCommand (std::string name) const = 0Gets a PluginCommand with the given name or alias. virtual PluginManager & getPluginManager () const = 0Gets the plugin manager for interfacing with plugins. virtual Scheduler & getScheduler () const = 0Gets the scheduler for managing scheduled events. virtual Scoreboard * getScoreboard () const = 0Gets the primary Scoreboard controlled by the server. virtual std::chrono::system_clock::time_point getStartTime () = 0Gets the start time of the server. virtual std::string getVersion () const = 0Gets the version string of this server implementation. virtual bool isPrimaryThread () const = 0Checks the current thread against the expected primary server thread. Server & operator= (const Server &) = delete virtual void reload () = 0Reloads the server configuration, functions, scripts and plugins. virtual void reloadData () = 0Reload only the Minecraft data for the server. virtual Result< void > setMaxPlayers (int max_players) = 0Set the maximum amount of players allowed to be logged in at once. virtual void shutdown () = 0Shutdowns the server, stopping everything. virtual ~Server () = default"},{"location":"reference/cpp/classendstone_1_1Server/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Server/#variable-broadcastchanneladmin","title":"variable BroadcastChannelAdmin","text":"
          const std::string endstone::Server::BroadcastChannelAdmin;\n
          "},{"location":"reference/cpp/classendstone_1_1Server/#variable-broadcastchanneluser","title":"variable BroadcastChannelUser","text":"
          const std::string endstone::Server::BroadcastChannelUser;\n
          "},{"location":"reference/cpp/classendstone_1_1Server/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Server/#function-server-12","title":"function Server [\u00bd]","text":"
          endstone::Server::Server () = default\n
          "},{"location":"reference/cpp/classendstone_1_1Server/#function-server-22","title":"function Server [2/2]","text":"
          endstone::Server::Server (\n    const Server &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1Server/#function-broadcast","title":"function broadcast","text":"

          Broadcasts the specified message to every user with the given permission name.

          virtual void endstone::Server::broadcast (\n    const Message & message,\n    const std::string & permission\n) const = 0\n

          Parameters:

          • message message to broadcast
          • permission the required permission Permissibles must have to receive the broadcast
          "},{"location":"reference/cpp/classendstone_1_1Server/#function-broadcastmessage-12","title":"function broadcastMessage [\u00bd]","text":"

          Broadcasts the specified message to every user with permission endstone.broadcast.user.

          virtual void endstone::Server::broadcastMessage (\n    const Message & message\n) const = 0\n

          Parameters:

          • message the message
          "},{"location":"reference/cpp/classendstone_1_1Server/#function-broadcastmessage-22","title":"function broadcastMessage [2/2]","text":"
          template<typename... Args>\ninline void endstone::Server::broadcastMessage (\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Server/#function-createblockdata-12","title":"function createBlockData [\u00bd]","text":"

          Creates a new BlockData instance for the specified block type, with all properties initialized to defaults.

          virtual Result< std::shared_ptr< BlockData > > endstone::Server::createBlockData (\n    std::string type\n) const = 0\n

          Parameters:

          • type the block type

          Returns:

          new data instance

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-createblockdata-22","title":"function createBlockData [2/2]","text":"

          Creates a new BlockData instance for the specified block type, with all properties initialized to defaults, except for those provided in data.

          virtual Result< std::shared_ptr< BlockData > > endstone::Server::createBlockData (\n    std::string type,\n    BlockStates block_states\n) const = 0\n

          Parameters:

          • type the block type
          • block_states block states, for example {\"old_leaf_type\":\"birch\", \"persistent_bit\":true}

          Returns:

          new data instance

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-createbossbar-12","title":"function createBossBar [\u00bd]","text":"

          Creates a boss bar instance to display to players. The progress defaults to 1.0.

          virtual std::unique_ptr< BossBar > endstone::Server::createBossBar (\n    std::string title,\n    BarColor color,\n    BarStyle style\n) const = 0\n

          Parameters:

          • title the title of the boss bar
          • color the color of the boss bar
          • style the style of the boss bar

          Returns:

          the created boss bar

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-createbossbar-22","title":"function createBossBar [2/2]","text":"

          Creates a boss bar instance to display to players. The progress defaults to 1.0.

          virtual std::unique_ptr< BossBar > endstone::Server::createBossBar (\n    std::string title,\n    BarColor color,\n    BarStyle style,\n    std::vector< BarFlag > flags\n) const = 0\n

          Parameters:

          • title the title of the boss bar
          • color the color of the boss bar
          • style the style of the boss bar
          • flags a list of flags to set on the boss bar

          Returns:

          the created boss bar

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-createscoreboard","title":"function createScoreboard","text":"

          Creates a new Scoreboard to be tracked by the server.

          virtual std::shared_ptr< Scoreboard > endstone::Server::createScoreboard () = 0\n

          This will not be saved by the server and is not affected by the /scoreboard command.

          Returns:

          the newly created Scoreboard

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-dispatchcommand","title":"function dispatchCommand","text":"

          Dispatches a command on this server, and executes it if found.

          virtual bool endstone::Server::dispatchCommand (\n    CommandSender & sender,\n    std::string command_line\n) const = 0\n

          Parameters:

          • sender the apparent sender of the command
          • command_line the command + arguments.

          Returns:

          true if execution is successful, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getaveragemillisecondspertick","title":"function getAverageMillisecondsPerTick","text":"

          Gets the average milliseconds per tick (MSPT).

          virtual float endstone::Server::getAverageMillisecondsPerTick () = 0\n

          Returns:

          The average number of milliseconds per tick.

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getaveragetickusage","title":"function getAverageTickUsage","text":"

          Gets the average tick usage of the server.

          virtual float endstone::Server::getAverageTickUsage () = 0\n

          Returns:

          The average tick usage in percentage.

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getaveragetickspersecond","title":"function getAverageTicksPerSecond","text":"

          Gets the average ticks per second (TPS).

          virtual float endstone::Server::getAverageTicksPerSecond () = 0\n

          Returns:

          The average ticks per second

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getcommandsender","title":"function getCommandSender","text":"

          Gets a CommandSender for this server.

          virtual ConsoleCommandSender & endstone::Server::getCommandSender () const = 0\n

          Returns:

          a console command sender

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getcurrentmillisecondspertick","title":"function getCurrentMillisecondsPerTick","text":"

          Gets the current milliseconds per tick (MSPT).

          virtual float endstone::Server::getCurrentMillisecondsPerTick () = 0\n

          Returns:

          The average current of milliseconds per tick.

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getcurrenttickusage","title":"function getCurrentTickUsage","text":"

          Gets the current tick usage of the server.

          virtual float endstone::Server::getCurrentTickUsage () = 0\n

          Returns:

          The current tick usage in percentage.

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getcurrenttickspersecond","title":"function getCurrentTicksPerSecond","text":"

          Gets the current ticks per second (TPS).

          virtual float endstone::Server::getCurrentTicksPerSecond () = 0\n

          Returns:

          The current ticks per second

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getlanguage","title":"function getLanguage","text":"

          Gets the current language interface used by the server.

          virtual Language & endstone::Server::getLanguage () const = 0\n

          Returns:

          Language interface used by the server for translations.

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getlevel","title":"function getLevel","text":"

          Gets the server level.

          virtual Level * endstone::Server::getLevel () const = 0\n

          Returns:

          the server level

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getlogger","title":"function getLogger","text":"

          Returns the primary logger associated with this server instance.

          virtual Logger & endstone::Server::getLogger () const = 0\n

          Returns:

          Logger associated with this server

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getmaxplayers","title":"function getMaxPlayers","text":"

          Get the maximum amount of players which can login to this server.

          virtual int endstone::Server::getMaxPlayers () const = 0\n

          Returns:

          the amount of players this server allows

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getminecraftversion","title":"function getMinecraftVersion","text":"

          Gets the Minecraft version that this server is running.

          virtual std::string endstone::Server::getMinecraftVersion () const = 0\n

          Returns:

          version of Minecraft

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getname","title":"function getName","text":"

          Gets the name of this server implementation.

          virtual std::string endstone::Server::getName () const = 0\n

          Returns:

          name of this server implementation

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getonlinemode","title":"function getOnlineMode","text":"

          Gets whether the Server is in online mode or not.

          virtual bool endstone::Server::getOnlineMode () const = 0\n

          Returns:

          true if the server authenticates clients, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getonlineplayers","title":"function getOnlinePlayers","text":"

          Gets a list of all currently online players.

          virtual std::vector< Player * > endstone::Server::getOnlinePlayers () const = 0\n

          Returns:

          a list of currently online players.

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getplayer-12","title":"function getPlayer [\u00bd]","text":"

          Gets the player with the given UUID .

          virtual Player * endstone::Server::getPlayer (\n    endstone::UUID id\n) const = 0\n

          Parameters:

          • id UUID of the player to retrieve

          Returns:

          a player object if one was found, null otherwise

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getplayer-22","title":"function getPlayer [2/2]","text":"

          Gets the player with the exact given name, case-insensitive.

          virtual Player * endstone::Server::getPlayer (\n    std::string name\n) const = 0\n

          Parameters:

          • name Exact name of the player to retrieve

          Returns:

          a player object if one was found, null otherwise

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getplugincommand","title":"function getPluginCommand","text":"

          Gets a PluginCommand with the given name or alias.

          virtual PluginCommand * endstone::Server::getPluginCommand (\n    std::string name\n) const = 0\n

          Parameters:

          • name the name of the command to retrieve

          Returns:

          a plugin command if found, null otherwise

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getpluginmanager","title":"function getPluginManager","text":"

          Gets the plugin manager for interfacing with plugins.

          virtual PluginManager & endstone::Server::getPluginManager () const = 0\n

          Returns:

          a plugin manager for this Server instance

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getscheduler","title":"function getScheduler","text":"

          Gets the scheduler for managing scheduled events.

          virtual Scheduler & endstone::Server::getScheduler () const = 0\n

          Returns:

          a scheduling service for this server

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getscoreboard","title":"function getScoreboard","text":"

          Gets the primary Scoreboard controlled by the server.

          virtual Scoreboard * endstone::Server::getScoreboard () const = 0\n

          This Scoreboard is saved by the server, is affected by the /scoreboard command, and is the scoreboard shown by default to players. This will only exist after the level has been loaded.

          Returns:

          the default server scoreboard

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getstarttime","title":"function getStartTime","text":"

          Gets the start time of the server.

          virtual std::chrono::system_clock::time_point endstone::Server::getStartTime () = 0\n

          Returns:

          The start time of the server\u3002

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getversion","title":"function getVersion","text":"

          Gets the version string of this server implementation.

          virtual std::string endstone::Server::getVersion () const = 0\n

          Returns:

          version of this server implementation

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-isprimarythread","title":"function isPrimaryThread","text":"

          Checks the current thread against the expected primary server thread.

          virtual bool endstone::Server::isPrimaryThread () const = 0\n

          Returns:

          true if the current thread matches the expected primary thread, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-operator","title":"function operator=","text":"
          Server & endstone::Server::operator= (\n    const Server &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1Server/#function-reload","title":"function reload","text":"
          virtual void endstone::Server::reload () = 0\n
          "},{"location":"reference/cpp/classendstone_1_1Server/#function-reloaddata","title":"function reloadData","text":"

          Reload only the Minecraft data for the server.

          virtual void endstone::Server::reloadData () = 0\n

          This includes functions and script files from all behaviour packs.

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-setmaxplayers","title":"function setMaxPlayers","text":"

          Set the maximum amount of players allowed to be logged in at once.

          virtual Result< void > endstone::Server::setMaxPlayers (\n    int max_players\n) = 0\n

          Parameters:

          • max_players The maximum amount of concurrent players
          "},{"location":"reference/cpp/classendstone_1_1Server/#function-shutdown","title":"function shutdown","text":"
          virtual void endstone::Server::shutdown () = 0\n
          "},{"location":"reference/cpp/classendstone_1_1Server/#function-server","title":"function ~Server","text":"
          virtual endstone::Server::~Server () = default\n

          The documentation for this class was generated from the following file include/endstone/server.h

          "},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/","title":"Class endstone::ServerCommandEvent","text":"

          ClassList > endstone > ServerCommandEvent

          Called when the console runs a command, early in the process. More...

          • #include <endstone/event/server/server_command_event.h>

          Inherits the following classes: endstone::ServerEvent

          "},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ServerCommandEvent\""},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#public-functions","title":"Public Functions","text":"Type Name ServerCommandEvent (CommandSender & sender, std::string command) std::string getCommand () const virtual std::string getEventName () override const CommandSender & getSender () const virtual bool isCancellable () override const void setCommand (std::string message)"},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#public-functions-inherited-from-endstoneserverevent","title":"Public Functions inherited from endstone::ServerEvent","text":"

          See endstone::ServerEvent

          Type Name Event (bool async=false) Event (const Event &) = delete"},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#detailed-description","title":"Detailed Description","text":"

          You should not use this except for a few cases like logging commands, blocking commands on certain places, or applying modifiers.

          The command message contains a slash '/' at the start

          "},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ServerCommandEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#function-servercommandevent","title":"function ServerCommandEvent","text":"
          inline endstone::ServerCommandEvent::ServerCommandEvent (\n    CommandSender & sender,\n    std::string command\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#function-getcommand","title":"function getCommand","text":"
          inline std::string endstone::ServerCommandEvent::getCommand () const\n

          Gets the command that the server is attempting to execute from the console

          Returns:

          Command the server is attempting to execute

          "},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ServerCommandEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#function-getsender","title":"function getSender","text":"
          inline CommandSender & endstone::ServerCommandEvent::getSender () const\n

          Get the command sender.

          Returns:

          The sender

          "},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ServerCommandEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#function-setcommand","title":"function setCommand","text":"
          inline void endstone::ServerCommandEvent::setCommand (\n    std::string message\n) \n

          Sets the command that the server will execute

          Parameters:

          • message New message that the server will execute

          The documentation for this class was generated from the following file include/endstone/event/server/server_command_event.h

          "},{"location":"reference/cpp/classendstone_1_1ServerEvent/","title":"Class endstone::ServerEvent","text":"

          ClassList > endstone > ServerEvent

          Represents an Server-related event.

          • #include <endstone/event/server/server_event.h>

          Inherits the following classes: endstone::Event

          Inherited by the following classes: endstone::BroadcastMessageEvent, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::ScriptMessageEvent, endstone::ServerCommandEvent, endstone::ServerListPingEvent, endstone::ServerLoadEvent

          "},{"location":"reference/cpp/classendstone_1_1ServerEvent/#public-functions","title":"Public Functions","text":"Type Name Event (bool async=false) Event (const Event &) = delete"},{"location":"reference/cpp/classendstone_1_1ServerEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ServerEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ServerEvent/#function-event-12","title":"function Event [\u00bd]","text":"
          inline explicit endstone::ServerEvent::Event (\n    bool async=false\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ServerEvent/#function-event-22","title":"function Event [2/2]","text":"
          endstone::ServerEvent::Event (\n    const Event &\n) = delete\n

          The documentation for this class was generated from the following file include/endstone/event/server/server_event.h

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/","title":"Class endstone::ServerListPingEvent","text":"

          ClassList > endstone > ServerListPingEvent

          Called when a server ping is coming in.

          • #include <endstone/event/server/server_list_ping_event.h>

          Inherits the following classes: endstone::ServerEvent

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ServerListPingEvent\""},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#public-functions","title":"Public Functions","text":"Type Name ServerListPingEvent (std::string remote_host, int remote_port, std::string ping_response) bool deserialize () virtual std::string getEventName () override const GameMode getGameMode () const std::string getLevelName () const int getLocalPort () const int getLocalPortV6 () const int getMaxPlayers () const std::string getMinecraftVersionNetwork () const std::string getMotd () const int getNetworkProtocolVersion () const int getNumPlayers () const std::string getRemoteHost () const int getRemotePort () const std::string getServerGuid () const virtual bool isCancellable () override const std::string serialize () void setGameMode (GameMode game_mode) void setLevelName (std::string level_name) void setMaxPlayers (int max_players) void setMinecraftVersionNetwork (std::string minecraft_version_network) void setMotd (std::string motd) void setNumPlayers (int num_players)"},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#public-functions-inherited-from-endstoneserverevent","title":"Public Functions inherited from endstone::ServerEvent","text":"

          See endstone::ServerEvent

          Type Name Event (bool async=false) Event (const Event &) = delete"},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ServerListPingEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-serverlistpingevent","title":"function ServerListPingEvent","text":"
          inline endstone::ServerListPingEvent::ServerListPingEvent (\n    std::string remote_host,\n    int remote_port,\n    std::string ping_response\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-deserialize","title":"function deserialize","text":"
          bool endstone::ServerListPingEvent::deserialize () \n
          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ServerListPingEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getgamemode","title":"function getGameMode","text":"
          inline GameMode endstone::ServerListPingEvent::getGameMode () const\n

          Get the current game mode.

          Returns:

          the game mode

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getlevelname","title":"function getLevelName","text":"
          inline std::string endstone::ServerListPingEvent::getLevelName () const\n

          Get the level name.

          Returns:

          the level name

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getlocalport","title":"function getLocalPort","text":"
          inline int endstone::ServerListPingEvent::getLocalPort () const\n

          Get the local port of the server.

          Returns:

          The local port

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getlocalportv6","title":"function getLocalPortV6","text":"
          inline int endstone::ServerListPingEvent::getLocalPortV6 () const\n

          Get the local port of the server for IPv6 support

          Returns:

          The local port for IPv6

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getmaxplayers","title":"function getMaxPlayers","text":"
          inline int endstone::ServerListPingEvent::getMaxPlayers () const\n

          Get the maximum number of players allowed.

          Returns:

          the maximum number of players

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getminecraftversionnetwork","title":"function getMinecraftVersionNetwork","text":"
          inline std::string endstone::ServerListPingEvent::getMinecraftVersionNetwork () const\n

          Get the network version of Minecraft that is supported by this server

          Returns:

          the network version of Minecraft

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getmotd","title":"function getMotd","text":"
          inline std::string endstone::ServerListPingEvent::getMotd () const\n

          Get the message of the day message.

          Returns:

          the message of the day

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getnetworkprotocolversion","title":"function getNetworkProtocolVersion","text":"
          inline int endstone::ServerListPingEvent::getNetworkProtocolVersion () const\n

          Get the network protocol version of this server

          Returns:

          the network protocol version

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getnumplayers","title":"function getNumPlayers","text":"
          inline int endstone::ServerListPingEvent::getNumPlayers () const\n

          Get the number of players online

          Returns:

          the number of players

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getremotehost","title":"function getRemoteHost","text":"
          inline std::string endstone::ServerListPingEvent::getRemoteHost () const\n

          Get the host the ping is coming from.

          Returns:

          The host

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getremoteport","title":"function getRemotePort","text":"
          inline int endstone::ServerListPingEvent::getRemotePort () const\n

          Get the port the ping is coming from.

          Returns:

          The port

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getserverguid","title":"function getServerGuid","text":"
          inline std::string endstone::ServerListPingEvent::getServerGuid () const\n

          Get the unique identifier of the server.

          Returns:

          The server guid

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ServerListPingEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-serialize","title":"function serialize","text":"
          std::string endstone::ServerListPingEvent::serialize () \n
          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-setgamemode","title":"function setGameMode","text":"
          inline void endstone::ServerListPingEvent::setGameMode (\n    GameMode game_mode\n) \n

          Set the current game mode.

          Parameters:

          • game_mode the game mode
          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-setlevelname","title":"function setLevelName","text":"
          inline void endstone::ServerListPingEvent::setLevelName (\n    std::string level_name\n) \n

          Set the level name.

          Parameters:

          • level_name the level name
          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-setmaxplayers","title":"function setMaxPlayers","text":"
          inline void endstone::ServerListPingEvent::setMaxPlayers (\n    int max_players\n) \n

          Set the maximum number of players allowed.

          Parameters:

          • max_players the maximum number of players
          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-setminecraftversionnetwork","title":"function setMinecraftVersionNetwork","text":"
          inline void endstone::ServerListPingEvent::setMinecraftVersionNetwork (\n    std::string minecraft_version_network\n) \n

          Set the network version of Minecraft that is supported by this server

          Parameters:

          • minecraft_version_network the network version of Minecraft
          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-setmotd","title":"function setMotd","text":"
          inline void endstone::ServerListPingEvent::setMotd (\n    std::string motd\n) \n

          Change the message of the day message.

          Parameters:

          • motd the message of the day
          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-setnumplayers","title":"function setNumPlayers","text":"
          inline void endstone::ServerListPingEvent::setNumPlayers (\n    int num_players\n) \n

          Set the number of players online.

          Parameters:

          • num_players the number of players

          The documentation for this class was generated from the following file include/endstone/event/server/server_list_ping_event.h

          "},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/","title":"Class endstone::ServerLoadEvent","text":"

          ClassList > endstone > ServerLoadEvent

          Called when either the server startup or reload has completed.

          • #include <endstone/event/server/server_load_event.h>

          Inherits the following classes: endstone::ServerEvent

          "},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#public-types","title":"Public Types","text":"Type Name enum LoadType"},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ServerLoadEvent\""},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#public-functions","title":"Public Functions","text":"Type Name ServerLoadEvent (LoadType type) virtual std::string getEventName () override const LoadType getType () const virtual bool isCancellable () override const"},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#public-functions-inherited-from-endstoneserverevent","title":"Public Functions inherited from endstone::ServerEvent","text":"

          See endstone::ServerEvent

          Type Name Event (bool async=false) Event (const Event &) = delete"},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#enum-loadtype","title":"enum LoadType","text":"
          enum endstone::ServerLoadEvent::LoadType {\n    Startup,\n    Reload\n};\n
          "},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ServerLoadEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#function-serverloadevent","title":"function ServerLoadEvent","text":"
          inline explicit endstone::ServerLoadEvent::ServerLoadEvent (\n    LoadType type\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ServerLoadEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#function-gettype","title":"function getType","text":"
          inline LoadType endstone::ServerLoadEvent::getType () const\n
          "},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ServerLoadEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          The documentation for this class was generated from the following file include/endstone/event/server/server_load_event.h

          "},{"location":"reference/cpp/classendstone_1_1Skin/","title":"Class endstone::Skin","text":"

          ClassList > endstone > Skin

          Represents a player skin.

          • #include <endstone/skin.h>
          "},{"location":"reference/cpp/classendstone_1_1Skin/#classes","title":"Classes","text":"Type Name struct ImageData"},{"location":"reference/cpp/classendstone_1_1Skin/#public-functions","title":"Public Functions","text":"Type Name Skin () = default Skin (std::string skin_id, ImageData skin_data, std::optional< std::string > cape_id=std::nullopt, std::optional< ImageData > cape_data=std::nullopt) const std::optional< ImageData > & getCapeData () constGets the cape data. const std::optional< std::string > & getCapeId () constGets the cape id. const ImageData & getSkinData () constGets the skin data. const std::string & getSkinId () constGets the skin id."},{"location":"reference/cpp/classendstone_1_1Skin/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Skin/#function-skin-12","title":"function Skin [\u00bd]","text":"
          endstone::Skin::Skin () = default\n
          "},{"location":"reference/cpp/classendstone_1_1Skin/#function-skin-22","title":"function Skin [2/2]","text":"
          inline endstone::Skin::Skin (\n    std::string skin_id,\n    ImageData skin_data,\n    std::optional< std::string > cape_id=std::nullopt,\n    std::optional< ImageData > cape_data=std::nullopt\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Skin/#function-getcapedata","title":"function getCapeData","text":"

          Gets the cape data.

          inline const std::optional< ImageData > & endstone::Skin::getCapeData () const\n

          Returns:

          the cape data.

          "},{"location":"reference/cpp/classendstone_1_1Skin/#function-getcapeid","title":"function getCapeId","text":"

          Gets the cape id.

          inline const std::optional< std::string > & endstone::Skin::getCapeId () const\n

          Returns:

          the cape id.

          "},{"location":"reference/cpp/classendstone_1_1Skin/#function-getskindata","title":"function getSkinData","text":"

          Gets the skin data.

          inline const ImageData & endstone::Skin::getSkinData () const\n

          Returns:

          the skin data.

          "},{"location":"reference/cpp/classendstone_1_1Skin/#function-getskinid","title":"function getSkinId","text":"

          Gets the skin id.

          inline const std::string & endstone::Skin::getSkinId () const\n

          Returns:

          the skin id.

          The documentation for this class was generated from the following file include/endstone/skin.h

          "},{"location":"reference/cpp/structendstone_1_1Skin_1_1ImageData/","title":"Struct endstone::Skin::ImageData","text":"

          ClassList > endstone > Skin > ImageData

          "},{"location":"reference/cpp/structendstone_1_1Skin_1_1ImageData/#public-attributes","title":"Public Attributes","text":"Type Name std::string data int height int width"},{"location":"reference/cpp/structendstone_1_1Skin_1_1ImageData/#public-attributes-documentation","title":"Public Attributes Documentation","text":""},{"location":"reference/cpp/structendstone_1_1Skin_1_1ImageData/#variable-data","title":"variable data","text":"
          std::string endstone::Skin::ImageData::data;\n
          "},{"location":"reference/cpp/structendstone_1_1Skin_1_1ImageData/#variable-height","title":"variable height","text":"
          int endstone::Skin::ImageData::height;\n
          "},{"location":"reference/cpp/structendstone_1_1Skin_1_1ImageData/#variable-width","title":"variable width","text":"
          int endstone::Skin::ImageData::width;\n

          The documentation for this class was generated from the following file include/endstone/skin.h

          "},{"location":"reference/cpp/classendstone_1_1Slider/","title":"Class endstone::Slider","text":"

          ClassList > endstone > Slider

          Represents a slider with a label.

          • #include <endstone/form/controls/slider.h>
          "},{"location":"reference/cpp/classendstone_1_1Slider/#public-functions","title":"Public Functions","text":"Type Name Slider () = default Slider (Message label, float min, float max, float step, std::optional< float > default_value=std::nullopt) std::optional< float > getDefaultValue () constGets the default value of the slider. Message getLabel () constGets the label of the toggle. float getMax () constGets the maximum value of the slider. float getMin () constGets the minimum value of the slider. float getStep () constGets the step size of the slider. Slider & setDefaultValue (std::optional< float > default_value) Sets the default value of the slider. Slider & setLabel (Message label) Sets the label of the toggle. Slider & setMax (float max) Sets the maximum value of the slider. Slider & setMin (float min) Sets the minimum value of the slider. Slider & setStep (float step) Sets the step size of the slider."},{"location":"reference/cpp/classendstone_1_1Slider/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Slider/#function-slider-12","title":"function Slider [\u00bd]","text":"
          endstone::Slider::Slider () = default\n
          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-slider-22","title":"function Slider [2/2]","text":"
          inline explicit endstone::Slider::Slider (\n    Message label,\n    float min,\n    float max,\n    float step,\n    std::optional< float > default_value=std::nullopt\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-getdefaultvalue","title":"function getDefaultValue","text":"

          Gets the default value of the slider.

          inline std::optional< float > endstone::Slider::getDefaultValue () const\n

          Returns:

          The default value of the slider.

          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-getlabel","title":"function getLabel","text":"

          Gets the label of the toggle.

          inline Message endstone::Slider::getLabel () const\n

          Returns:

          The label of the toggle.

          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-getmax","title":"function getMax","text":"

          Gets the maximum value of the slider.

          inline float endstone::Slider::getMax () const\n

          Returns:

          The maximum value of the slider.

          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-getmin","title":"function getMin","text":"

          Gets the minimum value of the slider.

          inline float endstone::Slider::getMin () const\n

          Returns:

          The minimum value of the slider.

          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-getstep","title":"function getStep","text":"

          Gets the step size of the slider.

          inline float endstone::Slider::getStep () const\n

          Returns:

          The step size of the slider.

          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-setdefaultvalue","title":"function setDefaultValue","text":"

          Sets the default value of the slider.

          inline Slider & endstone::Slider::setDefaultValue (\n    std::optional< float > default_value\n) \n

          Parameters:

          • default_value The new default value for the slider.

          Returns:

          A reference to the current slider, for function chaining.

          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-setlabel","title":"function setLabel","text":"

          Sets the label of the toggle.

          inline Slider & endstone::Slider::setLabel (\n    Message label\n) \n

          Parameters:

          • label The new label for the toggle.

          Returns:

          A reference to the current toggle.

          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-setmax","title":"function setMax","text":"

          Sets the maximum value of the slider.

          inline Slider & endstone::Slider::setMax (\n    float max\n) \n

          Parameters:

          • max The new maximum value for the slider.

          Returns:

          A reference to the current slider, for function chaining.

          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-setmin","title":"function setMin","text":"

          Sets the minimum value of the slider.

          inline Slider & endstone::Slider::setMin (\n    float min\n) \n

          Parameters:

          • min The new minimum value for the slider.

          Returns:

          A reference to the current slider, for function chaining.

          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-setstep","title":"function setStep","text":"

          Sets the step size of the slider.

          inline Slider & endstone::Slider::setStep (\n    float step\n) \n

          Parameters:

          • step The new step size for the slider.

          Returns:

          A reference to the current slider, for function chaining.

          The documentation for this class was generated from the following file include/endstone/form/controls/slider.h

          "},{"location":"reference/cpp/classendstone_1_1SocketAddress/","title":"Class endstone::SocketAddress","text":"

          ClassList > endstone > SocketAddress

          Represents an IP Socket Address (hostname + port number).

          • #include <endstone/util/socket_address.h>
          "},{"location":"reference/cpp/classendstone_1_1SocketAddress/#public-functions","title":"Public Functions","text":"Type Name SocketAddress () = default SocketAddress (std::string hostname, std::uint32_t port) const std::string & getHostname () const std::uint32_t getPort () const"},{"location":"reference/cpp/classendstone_1_1SocketAddress/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1SocketAddress/#function-socketaddress-12","title":"function SocketAddress [\u00bd]","text":"
          endstone::SocketAddress::SocketAddress () = default\n
          "},{"location":"reference/cpp/classendstone_1_1SocketAddress/#function-socketaddress-22","title":"function SocketAddress [2/2]","text":"
          inline endstone::SocketAddress::SocketAddress (\n    std::string hostname,\n    std::uint32_t port\n) \n
          "},{"location":"reference/cpp/classendstone_1_1SocketAddress/#function-gethostname","title":"function getHostname","text":"
          inline const std::string & endstone::SocketAddress::getHostname () const\n

          Gets the hostname.

          Returns:

          The hostname of this socket address

          "},{"location":"reference/cpp/classendstone_1_1SocketAddress/#function-getport","title":"function getPort","text":"
          inline std::uint32_t endstone::SocketAddress::getPort () const\n

          Gets the port number.

          Returns:

          The port number of this socket address

          The documentation for this class was generated from the following file include/endstone/util/socket_address.h

          "},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/","title":"Class endstone::SpawnParticleEffectPacket","text":"

          ClassList > endstone > SpawnParticleEffectPacket

          Represents a packet for spawning a particle effect.

          • #include <endstone/network/spawn_particle_effect_packet.h>

          Inherits the following classes: endstone::Packet

          "},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#public-attributes","title":"Public Attributes","text":"Type Name std::int64_t actor_id = {-1} int dimension_id std::string effect_name std::optional< std::string > molang_variables_json Vector< float > position"},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#public-functions","title":"Public Functions","text":"Type Name virtual PacketType getType () override constGets the type of the packet."},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#public-functions-inherited-from-endstonepacket","title":"Public Functions inherited from endstone::Packet","text":"

          See endstone::Packet

          Type Name virtual PacketType getType () const = 0Gets the type of the packet. virtual ~Packet () = default"},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#public-attributes-documentation","title":"Public Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#variable-actor_id","title":"variable actor_id","text":"
          std::int64_t endstone::SpawnParticleEffectPacket::actor_id;\n
          "},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#variable-dimension_id","title":"variable dimension_id","text":"
          int endstone::SpawnParticleEffectPacket::dimension_id;\n
          "},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#variable-effect_name","title":"variable effect_name","text":"
          std::string endstone::SpawnParticleEffectPacket::effect_name;\n
          "},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#variable-molang_variables_json","title":"variable molang_variables_json","text":"
          std::optional<std::string> endstone::SpawnParticleEffectPacket::molang_variables_json;\n
          "},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#variable-position","title":"variable position","text":"
          Vector<float> endstone::SpawnParticleEffectPacket::position;\n
          "},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#function-gettype","title":"function getType","text":"

          Gets the type of the packet.

          inline virtual PacketType endstone::SpawnParticleEffectPacket::getType () override const\n

          Returns:

          The type of the packet.

          Implements endstone::Packet::getType

          The documentation for this class was generated from the following file include/endstone/network/spawn_particle_effect_packet.h

          "},{"location":"reference/cpp/classendstone_1_1StepSlider/","title":"Class endstone::StepSlider","text":"

          ClassList > endstone > StepSlider

          Represents a step slider with a set of predefined options.

          • #include <endstone/form/controls/step_slider.h>

          Inherits the following classes: endstone::Dropdown

          "},{"location":"reference/cpp/classendstone_1_1StepSlider/#public-functions","title":"Public Functions","text":"Type Name Dropdown () = default Dropdown (Message label, std::vector< std::string > options, std::optional< int > default_index=std::nullopt)"},{"location":"reference/cpp/classendstone_1_1StepSlider/#public-functions-inherited-from-endstonedropdown","title":"Public Functions inherited from endstone::Dropdown","text":"

          See endstone::Dropdown

          Type Name Dropdown () = default Dropdown (Message label, std::vector< std::string > options, std::optional< int > default_index=std::nullopt) Dropdown & addOption (const std::string & option) Adds a new option to the dropdown. std::optional< int > getDefaultIndex () constGets the default index of the dropdown. Message getLabel () constGets the label of the dropdown. std::vector< std::string > getOptions () constGets the options of the dropdown. Dropdown & setDefaultIndex (std::optional< int > default_index) Sets the default index of the dropdown. Dropdown & setLabel (Message label) Sets the label of the dropdown. Dropdown & setOptions (std::vector< std::string > options) Sets the options of the dropdown."},{"location":"reference/cpp/classendstone_1_1StepSlider/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1StepSlider/#function-dropdown-12","title":"function Dropdown [\u00bd]","text":"
          endstone::StepSlider::Dropdown () = default\n
          "},{"location":"reference/cpp/classendstone_1_1StepSlider/#function-dropdown-22","title":"function Dropdown [2/2]","text":"
          inline explicit endstone::StepSlider::Dropdown (\n    Message label,\n    std::vector< std::string > options,\n    std::optional< int > default_index=std::nullopt\n) \n

          The documentation for this class was generated from the following file include/endstone/form/controls/step_slider.h

          "},{"location":"reference/cpp/classendstone_1_1Task/","title":"Class endstone::Task","text":"

          ClassList > endstone > Task

          Represents a task being executed by the scheduler.

          • #include <endstone/scheduler/task.h>
          "},{"location":"reference/cpp/classendstone_1_1Task/#public-functions","title":"Public Functions","text":"Type Name virtual void cancel () = 0 virtual Plugin * getOwner () const = 0 virtual TaskId getTaskId () const = 0 virtual bool isCancelled () const = 0 virtual bool isSync () const = 0 virtual ~Task () = default"},{"location":"reference/cpp/classendstone_1_1Task/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Task/#function-cancel","title":"function cancel","text":"
          virtual void endstone::Task::cancel () = 0\n

          Attempts to cancel this task.

          "},{"location":"reference/cpp/classendstone_1_1Task/#function-getowner","title":"function getOwner","text":"
          virtual Plugin * endstone::Task::getOwner () const = 0\n

          Returns the Plugin that owns this task.

          Returns:

          The Plugin that owns the task

          "},{"location":"reference/cpp/classendstone_1_1Task/#function-gettaskid","title":"function getTaskId","text":"
          virtual TaskId endstone::Task::getTaskId () const = 0\n

          Returns the taskId for the task.

          Returns:

          Task id number

          "},{"location":"reference/cpp/classendstone_1_1Task/#function-iscancelled","title":"function isCancelled","text":"
          virtual bool endstone::Task::isCancelled () const = 0\n

          Returns true if this task has been cancelled.

          Returns:

          true if the task has been cancelled

          "},{"location":"reference/cpp/classendstone_1_1Task/#function-issync","title":"function isSync","text":"
          virtual bool endstone::Task::isSync () const = 0\n

          Returns true if the Task is a sync task.

          Returns:

          true if the task is run by server thread

          "},{"location":"reference/cpp/classendstone_1_1Task/#function-task","title":"function ~Task","text":"
          virtual endstone::Task::~Task () = default\n

          The documentation for this class was generated from the following file include/endstone/scheduler/task.h

          "},{"location":"reference/cpp/classendstone_1_1TextInput/","title":"Class endstone::TextInput","text":"

          ClassList > endstone > TextInput

          Represents a text input field.

          • #include <endstone/form/controls/text_input.h>
          "},{"location":"reference/cpp/classendstone_1_1TextInput/#public-functions","title":"Public Functions","text":"Type Name TextInput () = default TextInput (Message label, Message placeholder, std::optional< std::string > default_text=std::nullopt) std::optional< std::string > getDefaultValue () constGets the default text of the text input field. Message getLabel () constGets the label of the text input field. Message getPlaceholder () constGets the placeholder of the text input field. TextInput & setDefaultValue (std::optional< std::string > text) Sets the default text of the text input field. TextInput & setLabel (Message label) Sets the label of the text input field. TextInput & setPlaceholder (Message placeholder) Sets the placeholder of the text input field."},{"location":"reference/cpp/classendstone_1_1TextInput/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1TextInput/#function-textinput-12","title":"function TextInput [\u00bd]","text":"
          endstone::TextInput::TextInput () = default\n
          "},{"location":"reference/cpp/classendstone_1_1TextInput/#function-textinput-22","title":"function TextInput [2/2]","text":"
          inline explicit endstone::TextInput::TextInput (\n    Message label,\n    Message placeholder,\n    std::optional< std::string > default_text=std::nullopt\n) \n
          "},{"location":"reference/cpp/classendstone_1_1TextInput/#function-getdefaultvalue","title":"function getDefaultValue","text":"

          Gets the default text of the text input field.

          inline std::optional< std::string > endstone::TextInput::getDefaultValue () const\n

          Returns:

          The default text of the text input field.

          "},{"location":"reference/cpp/classendstone_1_1TextInput/#function-getlabel","title":"function getLabel","text":"

          Gets the label of the text input field.

          inline Message endstone::TextInput::getLabel () const\n

          Returns:

          The label of the text input field.

          "},{"location":"reference/cpp/classendstone_1_1TextInput/#function-getplaceholder","title":"function getPlaceholder","text":"

          Gets the placeholder of the text input field.

          inline Message endstone::TextInput::getPlaceholder () const\n

          Returns:

          The placeholder of the text input field.

          "},{"location":"reference/cpp/classendstone_1_1TextInput/#function-setdefaultvalue","title":"function setDefaultValue","text":"

          Sets the default text of the text input field.

          inline TextInput & endstone::TextInput::setDefaultValue (\n    std::optional< std::string > text\n) \n

          Parameters:

          • text The new default text for the text input field.

          Returns:

          A reference to the text input field itself.

          "},{"location":"reference/cpp/classendstone_1_1TextInput/#function-setlabel","title":"function setLabel","text":"

          Sets the label of the text input field.

          inline TextInput & endstone::TextInput::setLabel (\n    Message label\n) \n

          Parameters:

          • label The new label for the text input field.

          Returns:

          A reference to the text input field itself.

          "},{"location":"reference/cpp/classendstone_1_1TextInput/#function-setplaceholder","title":"function setPlaceholder","text":"

          Sets the placeholder of the text input field.

          inline TextInput & endstone::TextInput::setPlaceholder (\n    Message placeholder\n) \n

          Parameters:

          • placeholder The new placeholder for the text input field.

          Returns:

          A reference to the text input field itself.

          The documentation for this class was generated from the following file include/endstone/form/controls/text_input.h

          "},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/","title":"Class endstone::ThunderChangeEvent","text":"

          ClassList > endstone > ThunderChangeEvent

          Called when the thunder state in a world is changing.

          • #include <endstone/event/weather/thunder_change_event.h>

          Inherits the following classes: endstone::WeatherEvent

          "},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ThunderChangeEvent\""},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#public-functions","title":"Public Functions","text":"Type Name ThunderChangeEvent (Level & level, bool to) virtual std::string getEventName () override const virtual bool isCancellable () override const bool toThunderState () const ~ThunderChangeEvent () override"},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#public-functions-inherited-from-endstoneweatherevent","title":"Public Functions inherited from endstone::WeatherEvent","text":"

          See endstone::WeatherEvent

          Type Name WeatherEvent (Level & level) Level & getLevel () const ~WeatherEvent () override"},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ThunderChangeEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#function-thunderchangeevent","title":"function ThunderChangeEvent","text":"
          inline endstone::ThunderChangeEvent::ThunderChangeEvent (\n    Level & level,\n    bool to\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ThunderChangeEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ThunderChangeEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#function-tothunderstate","title":"function toThunderState","text":"
          inline bool endstone::ThunderChangeEvent::toThunderState () const\n

          Gets the state of thunder that the world is being set to

          Returns:

          true if the weather is being set to thundering, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#function-thunderchangeevent_1","title":"function ~ThunderChangeEvent","text":"
          endstone::ThunderChangeEvent::~ThunderChangeEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/weather/thunder_change_event.h

          "},{"location":"reference/cpp/classendstone_1_1Toggle/","title":"Class endstone::Toggle","text":"

          ClassList > endstone > Toggle

          Represents a toggle button with a label.

          • #include <endstone/form/controls/toggle.h>
          "},{"location":"reference/cpp/classendstone_1_1Toggle/#public-functions","title":"Public Functions","text":"Type Name Toggle () = default Toggle (Message label, bool default_value=false) bool getDefaultValue () constGets the default value of the toggle. Message getLabel () constGets the label of the toggle. Toggle & setDefaultValue (bool value) Sets the default value of the toggle. Toggle & setLabel (Message label) Sets the label of the toggle."},{"location":"reference/cpp/classendstone_1_1Toggle/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Toggle/#function-toggle-12","title":"function Toggle [\u00bd]","text":"
          endstone::Toggle::Toggle () = default\n
          "},{"location":"reference/cpp/classendstone_1_1Toggle/#function-toggle-22","title":"function Toggle [2/2]","text":"
          inline explicit endstone::Toggle::Toggle (\n    Message label,\n    bool default_value=false\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Toggle/#function-getdefaultvalue","title":"function getDefaultValue","text":"

          Gets the default value of the toggle.

          inline bool endstone::Toggle::getDefaultValue () const\n

          Returns:

          The default value of the toggle.

          "},{"location":"reference/cpp/classendstone_1_1Toggle/#function-getlabel","title":"function getLabel","text":"

          Gets the label of the toggle.

          inline Message endstone::Toggle::getLabel () const\n

          Returns:

          The label of the toggle.

          "},{"location":"reference/cpp/classendstone_1_1Toggle/#function-setdefaultvalue","title":"function setDefaultValue","text":"

          Sets the default value of the toggle.

          inline Toggle & endstone::Toggle::setDefaultValue (\n    bool value\n) \n

          Parameters:

          • value The new default value for the toggle.

          Returns:

          A reference to the current toggle.

          "},{"location":"reference/cpp/classendstone_1_1Toggle/#function-setlabel","title":"function setLabel","text":"

          Sets the label of the toggle.

          inline Toggle & endstone::Toggle::setLabel (\n    Message label\n) \n

          Parameters:

          • label The new label for the toggle.

          Returns:

          A reference to the current toggle.

          The documentation for this class was generated from the following file include/endstone/form/controls/toggle.h

          "},{"location":"reference/cpp/classendstone_1_1Translatable/","title":"Class endstone::Translatable","text":"

          ClassList > endstone > Translatable

          Represents an object with a text representation that can be translated by the Minecraft client.

          • #include <endstone/lang/translatable.h>
          "},{"location":"reference/cpp/classendstone_1_1Translatable/#public-functions","title":"Public Functions","text":"Type Name Translatable (std::string text, std::vector< std::string > params={}) bool empty () constCheck if the message to be translated is empty. const std::vector< std::string > & getParameters () constGet the translation parameters. const std::string & getText () constGet the text to be translated."},{"location":"reference/cpp/classendstone_1_1Translatable/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Translatable/#function-translatable","title":"function Translatable","text":"
          inline explicit endstone::Translatable::Translatable (\n    std::string text,\n    std::vector< std::string > params={}\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Translatable/#function-empty","title":"function empty","text":"

          Check if the message to be translated is empty.

          inline bool endstone::Translatable::empty () const\n

          Returns:

          true if the message to be translated is empty, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1Translatable/#function-getparameters","title":"function getParameters","text":"

          Get the translation parameters.

          inline const std::vector< std::string > & endstone::Translatable::getParameters () const\n

          Returns:

          the translation parameters

          "},{"location":"reference/cpp/classendstone_1_1Translatable/#function-gettext","title":"function getText","text":"

          Get the text to be translated.

          inline const std::string & endstone::Translatable::getText () const\n

          Returns:

          the text to be translated

          The documentation for this class was generated from the following file include/endstone/lang/translatable.h

          "},{"location":"reference/cpp/classendstone_1_1UUID/","title":"Class endstone::UUID","text":"

          ClassList > endstone > UUID

          Implementation of Universally Unique Identifier ( UUID )More...

          • #include <endstone/util/uuid.h>
          "},{"location":"reference/cpp/classendstone_1_1UUID/#public-attributes","title":"Public Attributes","text":"Type Name std::uint8_t data"},{"location":"reference/cpp/classendstone_1_1UUID/#public-functions","title":"Public Functions","text":"Type Name std::uint8_t * begin () noexcept const uint8_t * begin () noexcept const std::uint8_t * end () noexcept const uint8_t * end () noexcept const bool isNil () noexcept const std::string str () const void swap (UUID & rhs) noexcept int version () noexcept const"},{"location":"reference/cpp/classendstone_1_1UUID/#public-static-functions","title":"Public Static Functions","text":"Type Name constexpr std::size_t size () noexcept"},{"location":"reference/cpp/classendstone_1_1UUID/#detailed-description","title":"Detailed Description","text":"

          Adapted from https://github.com/boostorg/uuid/blob/develop/include/boost/uuid/uuid.hpp

          "},{"location":"reference/cpp/classendstone_1_1UUID/#public-attributes-documentation","title":"Public Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1UUID/#variable-data","title":"variable data","text":"
          std::uint8_t endstone::UUID::data[16];\n
          "},{"location":"reference/cpp/classendstone_1_1UUID/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1UUID/#function-begin-12","title":"function begin [\u00bd]","text":"
          inline std::uint8_t * endstone::UUID::begin () noexcept\n
          "},{"location":"reference/cpp/classendstone_1_1UUID/#function-begin-22","title":"function begin [2/2]","text":"
          inline const uint8_t * endstone::UUID::begin () noexcept const\n
          "},{"location":"reference/cpp/classendstone_1_1UUID/#function-end-12","title":"function end [\u00bd]","text":"
          inline std::uint8_t * endstone::UUID::end () noexcept\n
          "},{"location":"reference/cpp/classendstone_1_1UUID/#function-end-22","title":"function end [2/2]","text":"
          inline const uint8_t * endstone::UUID::end () noexcept const\n
          "},{"location":"reference/cpp/classendstone_1_1UUID/#function-isnil","title":"function isNil","text":"
          inline bool endstone::UUID::isNil () noexcept const\n
          "},{"location":"reference/cpp/classendstone_1_1UUID/#function-str","title":"function str","text":"
          inline std::string endstone::UUID::str () const\n
          "},{"location":"reference/cpp/classendstone_1_1UUID/#function-swap","title":"function swap","text":"
          inline void endstone::UUID::swap (\n    UUID & rhs\n) noexcept\n
          "},{"location":"reference/cpp/classendstone_1_1UUID/#function-version","title":"function version","text":"
          inline int endstone::UUID::version () noexcept const\n
          "},{"location":"reference/cpp/classendstone_1_1UUID/#public-static-functions-documentation","title":"Public Static Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1UUID/#function-size","title":"function size","text":"
          static inline constexpr std::size_t endstone::UUID::size () noexcept\n

          The documentation for this class was generated from the following file include/endstone/util/uuid.h

          "},{"location":"reference/cpp/classendstone_1_1Vector/","title":"Class endstone::Vector","text":"

          template <typename T>

          ClassList > endstone > Vector

          Represents a 3-dimensional vector.

          • #include <endstone/util/vector.h>
          "},{"location":"reference/cpp/classendstone_1_1Vector/#public-functions","title":"Public Functions","text":"Type Name constexpr Vector () constexpr Vector (T x, T y, T z) constexpr T distance (const Vector< T > & other) const constexpr T distanceSquared (const Vector< T > & other) const constexpr T getX () constGets the X component. constexpr T getY () constGets the Y component. constexpr T getZ () constGets the Z component. constexpr T length () constGets the magnitude of the vector, defined as sqrt(x2+y2+z^2). constexpr T lengthSquared () constGets the magnitude of the vector squared. constexpr Vector< T > operator* (const Vector< T > & other) const Vector< T > operator* (T scalar) const Vector< T > & operator*= (const Vector< T > & other) constexpr Vector< T > operator+ (const Vector< T > & other) const Vector< T > operator+ (T scalar) const Vector< T > & operator+= (const Vector< T > & other) constexpr Vector< T > operator- (const Vector< T > & other) const Vector< T > operator- (T scalar) const Vector< T > & operator-= (const Vector< T > & other) constexpr Vector< T > operator/ (const Vector< T > & other) const Vector< T > operator/ (T scalar) const Vector< T > & operator/= (const Vector< T > & other) constexpr bool operator== (const Vector< T > & other) const constexpr void setX (T x) Set the X component. constexpr void setY (T y) Set the Y component. constexpr void setZ (T z) Set the Z component."},{"location":"reference/cpp/classendstone_1_1Vector/#protected-attributes","title":"Protected Attributes","text":"Type Name T x_ T y_ T z_"},{"location":"reference/cpp/classendstone_1_1Vector/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Vector/#function-vector-12","title":"function Vector [\u00bd]","text":"
          inline constexpr endstone::Vector::Vector () \n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-vector-22","title":"function Vector [2/2]","text":"
          inline constexpr endstone::Vector::Vector (\n    T x,\n    T y,\n    T z\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-distance","title":"function distance","text":"
          inline constexpr T endstone::Vector::distance (\n    const Vector < T > & other\n) const\n

          Get the distance between this vector and another.

          Parameters:

          • other The other vector

          Returns:

          the distance

          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-distancesquared","title":"function distanceSquared","text":"
          inline constexpr T endstone::Vector::distanceSquared (\n    const Vector < T > & other\n) const\n

          Get the squared distance between this vector and another.

          Parameters:

          • other The other vector

          Returns:

          the distance

          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-getx","title":"function getX","text":"

          Gets the X component.

          inline constexpr T endstone::Vector::getX () const\n

          Returns:

          The X component.

          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-gety","title":"function getY","text":"

          Gets the Y component.

          inline constexpr T endstone::Vector::getY () const\n

          Returns:

          The Y component.

          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-getz","title":"function getZ","text":"

          Gets the Z component.

          inline constexpr T endstone::Vector::getZ () const\n

          Returns:

          The Z component.

          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-length","title":"function length","text":"

          Gets the magnitude of the vector, defined as sqrt(x2+y2+z^2).

          inline constexpr T endstone::Vector::length () const\n

          Returns:

          the magnitude

          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-lengthsquared","title":"function lengthSquared","text":"

          Gets the magnitude of the vector squared.

          inline constexpr T endstone::Vector::lengthSquared () const\n

          Returns:

          the magnitude

          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator","title":"function operator*","text":"
          inline constexpr Vector < T > endstone::Vector::operator* (\n    const Vector < T > & other\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator_1","title":"function operator*","text":"
          inline Vector < T > endstone::Vector::operator* (\n    T scalar\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator_2","title":"function operator*=","text":"
          inline Vector < T > & endstone::Vector::operator*= (\n    const Vector < T > & other\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator_3","title":"function operator+","text":"
          inline constexpr Vector < T > endstone::Vector::operator+ (\n    const Vector < T > & other\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator_4","title":"function operator+","text":"
          inline Vector < T > endstone::Vector::operator+ (\n    T scalar\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator_5","title":"function operator+=","text":"
          inline Vector < T > & endstone::Vector::operator+= (\n    const Vector < T > & other\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator-","title":"function operator-","text":"
          inline constexpr Vector < T > endstone::Vector::operator- (\n    const Vector < T > & other\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator-_1","title":"function operator-","text":"
          inline Vector < T > endstone::Vector::operator- (\n    T scalar\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator-_2","title":"function operator-=","text":"
          inline Vector < T > & endstone::Vector::operator-= (\n    const Vector < T > & other\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator_6","title":"function operator/","text":"
          inline constexpr Vector < T > endstone::Vector::operator/ (\n    const Vector < T > & other\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator_7","title":"function operator/","text":"
          inline Vector < T > endstone::Vector::operator/ (\n    T scalar\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator_8","title":"function operator/=","text":"
          inline Vector < T > & endstone::Vector::operator/= (\n    const Vector < T > & other\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator_9","title":"function operator==","text":"
          inline constexpr bool endstone::Vector::operator== (\n    const Vector < T > & other\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-setx","title":"function setX","text":"

          Set the X component.

          inline constexpr void endstone::Vector::setX (\n    T x\n) \n

          Parameters:

          • x The new X component.

          Returns:

          This vector.

          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-sety","title":"function setY","text":"

          Set the Y component.

          inline constexpr void endstone::Vector::setY (\n    T y\n) \n

          Parameters:

          • y The new Y component.

          Returns:

          This vector.

          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-setz","title":"function setZ","text":"

          Set the Z component.

          inline constexpr void endstone::Vector::setZ (\n    T z\n) \n

          Parameters:

          • z The new Z component.

          Returns:

          This vector.

          "},{"location":"reference/cpp/classendstone_1_1Vector/#protected-attributes-documentation","title":"Protected Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Vector/#variable-x_","title":"variable x_","text":"
          T endstone::Vector< T >::x_;\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#variable-y_","title":"variable y_","text":"
          T endstone::Vector< T >::y_;\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#variable-z_","title":"variable z_","text":"
          T endstone::Vector< T >::z_;\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#friends-documentation","title":"Friends Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Vector/#friend-operator","title":"friend operator*","text":"
          inline Vector < T > endstone::Vector::operator* (\n    T scalar,\n    const Vector < T > & v\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#friend-operator_1","title":"friend operator+","text":"
          inline Vector < T > endstone::Vector::operator+ (\n    T scalar,\n    const Vector < T > & v\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#friend-operator-","title":"friend operator-","text":"
          inline Vector < T > endstone::Vector::operator- (\n    T scalar,\n    const Vector < T > & v\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#friend-operator_2","title":"friend operator/","text":"
          inline Vector < T > endstone::Vector::operator/ (\n    T scalar,\n    const Vector < T > & v\n) \n

          The documentation for this class was generated from the following file include/endstone/util/vector.h

          "},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/","title":"Class endstone::WeatherChangeEvent","text":"

          ClassList > endstone > WeatherChangeEvent

          Called when the weather (rain) state in a world is changing.

          • #include <endstone/event/weather/weather_change_event.h>

          Inherits the following classes: endstone::WeatherEvent

          "},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"WeatherChangeEvent\""},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#public-functions","title":"Public Functions","text":"Type Name WeatherChangeEvent (Level & level, bool to) virtual std::string getEventName () override const virtual bool isCancellable () override const bool toWeatherState () const ~WeatherChangeEvent () override"},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#public-functions-inherited-from-endstoneweatherevent","title":"Public Functions inherited from endstone::WeatherEvent","text":"

          See endstone::WeatherEvent

          Type Name WeatherEvent (Level & level) Level & getLevel () const ~WeatherEvent () override"},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::WeatherChangeEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#function-weatherchangeevent","title":"function WeatherChangeEvent","text":"
          inline endstone::WeatherChangeEvent::WeatherChangeEvent (\n    Level & level,\n    bool to\n) \n
          "},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::WeatherChangeEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::WeatherChangeEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#function-toweatherstate","title":"function toWeatherState","text":"
          inline bool endstone::WeatherChangeEvent::toWeatherState () const\n

          Gets the state of weather that the world is being set to

          Returns:

          true if the weather is being set to raining, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#function-weatherchangeevent_1","title":"function ~WeatherChangeEvent","text":"
          endstone::WeatherChangeEvent::~WeatherChangeEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/weather/weather_change_event.h

          "},{"location":"reference/cpp/classendstone_1_1WeatherEvent/","title":"Class endstone::WeatherEvent","text":"

          ClassList > endstone > WeatherEvent

          Represents a Weather-related event.

          • #include <endstone/event/weather/weather_event.h>

          Inherits the following classes: endstone::Event

          Inherited by the following classes: endstone::ThunderChangeEvent, endstone::WeatherChangeEvent

          "},{"location":"reference/cpp/classendstone_1_1WeatherEvent/#public-functions","title":"Public Functions","text":"Type Name WeatherEvent (Level & level) Level & getLevel () const ~WeatherEvent () override"},{"location":"reference/cpp/classendstone_1_1WeatherEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1WeatherEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1WeatherEvent/#function-weatherevent","title":"function WeatherEvent","text":"
          inline explicit endstone::WeatherEvent::WeatherEvent (\n    Level & level\n) \n
          "},{"location":"reference/cpp/classendstone_1_1WeatherEvent/#function-getlevel","title":"function getLevel","text":"
          inline Level & endstone::WeatherEvent::getLevel () const\n

          Returns the Level where this event is occurring

          Returns:

          Level this event is occurring in

          "},{"location":"reference/cpp/classendstone_1_1WeatherEvent/#function-weatherevent_1","title":"function ~WeatherEvent","text":"
          endstone::WeatherEvent::~WeatherEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/weather/weather_event.h

          "},{"location":"reference/cpp/namespaceendstone_1_1detail/","title":"Namespace endstone::detail","text":"

          Namespace List > endstone > detail

          The documentation for this class was generated from the following file include/endstone/inventory/item_stack.h

          "},{"location":"reference/cpp/structendstone_1_1overloaded/","title":"Struct endstone::overloaded","text":"

          template <typename... Func>

          ClassList > endstone > overloaded

          Helper type for visitors. More...

          • #include <endstone/endstone.h>

          Inherits the following classes: endstone::Func

          "},{"location":"reference/cpp/structendstone_1_1overloaded/#detailed-description","title":"Detailed Description","text":"

          Template parameters:

          • Func Types of function objects.

          The documentation for this class was generated from the following file include/endstone/endstone.h

          "},{"location":"reference/cpp/namespacefmt/","title":"Namespace fmt","text":"

          Namespace List > fmt

          "},{"location":"reference/cpp/namespacefmt/#classes","title":"Classes","text":"Type Name struct formatter< endstone::Block > <> struct formatter< endstone::BlockData > <> struct formatter< endstone::BlockState > <> struct formatter< endstone::BlockStates > <> struct formatter< endstone::BlockStates::mapped_type > <> struct formatter< endstone::BlockStates::value_type > <> struct formatter< endstone::ItemStack > <>

          The documentation for this class was generated from the following file include/endstone/block/block.h

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1Block_01_4/","title":"Struct fmt::formatter< endstone::Block >","text":"

          template <>

          ClassList > fmt > formatter< endstone::Block >

          Inherits the following classes: formatter< string_view >

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1Block_01_4/#public-types","title":"Public Types","text":"Type Name typedef endstone::Block Type"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1Block_01_4/#public-functions","title":"Public Functions","text":"Type Name auto format (const Type & val, FormatContext & ctx) const"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1Block_01_4/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1Block_01_4/#typedef-type","title":"typedef Type","text":"
          using fmt::formatter< endstone::Block >::Type =  endstone::Block;\n
          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1Block_01_4/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1Block_01_4/#function-format","title":"function format","text":"
          template<typename FormatContext>\ninline auto fmt::formatter< endstone::Block >::format (\n    const Type & val,\n    FormatContext & ctx\n) const\n

          The documentation for this class was generated from the following file include/endstone/block/block.h

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockData_01_4/","title":"Struct fmt::formatter< endstone::BlockData >","text":"

          template <>

          ClassList > fmt > formatter< endstone::BlockData >

          Inherits the following classes: formatter< string_view >

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockData_01_4/#public-types","title":"Public Types","text":"Type Name typedef endstone::BlockData Type"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockData_01_4/#public-functions","title":"Public Functions","text":"Type Name auto format (const Type & val, FormatContext & ctx) const"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockData_01_4/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockData_01_4/#typedef-type","title":"typedef Type","text":"
          using fmt::formatter< endstone::BlockData >::Type =  endstone::BlockData;\n
          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockData_01_4/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockData_01_4/#function-format","title":"function format","text":"
          template<typename FormatContext>\ninline auto fmt::formatter< endstone::BlockData >::format (\n    const Type & val,\n    FormatContext & ctx\n) const\n

          The documentation for this class was generated from the following file include/endstone/block/block_data.h

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockState_01_4/","title":"Struct fmt::formatter< endstone::BlockState >","text":"

          template <>

          ClassList > fmt > formatter< endstone::BlockState >

          Inherits the following classes: formatter< string_view >

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockState_01_4/#public-types","title":"Public Types","text":"Type Name typedef endstone::BlockState Type"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockState_01_4/#public-functions","title":"Public Functions","text":"Type Name auto format (const Type & val, FormatContext & ctx) const"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockState_01_4/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockState_01_4/#typedef-type","title":"typedef Type","text":"
          using fmt::formatter< endstone::BlockState >::Type =  endstone::BlockState;\n
          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockState_01_4/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockState_01_4/#function-format","title":"function format","text":"
          template<typename FormatContext>\ninline auto fmt::formatter< endstone::BlockState >::format (\n    const Type & val,\n    FormatContext & ctx\n) const\n

          The documentation for this class was generated from the following file include/endstone/block/block_state.h

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_01_4/","title":"Struct fmt::formatter< endstone::BlockStates >","text":"

          template <>

          ClassList > fmt > formatter< endstone::BlockStates >

          Inherits the following classes: formatter< string_view >

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_01_4/#public-types","title":"Public Types","text":"Type Name typedef endstone::BlockStates Type"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_01_4/#public-functions","title":"Public Functions","text":"Type Name auto format (const Type & val, FormatContext & ctx) const"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_01_4/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_01_4/#typedef-type","title":"typedef Type","text":"
          using fmt::formatter< endstone::BlockStates >::Type =  endstone::BlockStates;\n
          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_01_4/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_01_4/#function-format","title":"function format","text":"
          template<typename FormatContext>\ninline auto fmt::formatter< endstone::BlockStates >::format (\n    const Type & val,\n    FormatContext & ctx\n) const\n

          The documentation for this class was generated from the following file include/endstone/block/block_data.h

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1mapped__type_01_4/","title":"Struct fmt::formatter< endstone::BlockStates::mapped_type >","text":"

          template <>

          ClassList > fmt > formatter< endstone::BlockStates::mapped_type >

          Inherits the following classes: formatter< string_view >

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1mapped__type_01_4/#public-types","title":"Public Types","text":"Type Name typedef endstone::BlockStates::mapped_type Type"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1mapped__type_01_4/#public-functions","title":"Public Functions","text":"Type Name auto format (const Type & val, FormatContext & ctx) const"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1mapped__type_01_4/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1mapped__type_01_4/#typedef-type","title":"typedef Type","text":"
          using fmt::formatter< endstone::BlockStates::mapped_type >::Type =  endstone::BlockStates::mapped_type;\n
          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1mapped__type_01_4/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1mapped__type_01_4/#function-format","title":"function format","text":"
          template<typename FormatContext>\ninline auto fmt::formatter< endstone::BlockStates::mapped_type >::format (\n    const Type & val,\n    FormatContext & ctx\n) const\n

          The documentation for this class was generated from the following file include/endstone/block/block_data.h

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1value__type_01_4/","title":"Struct fmt::formatter< endstone::BlockStates::value_type >","text":"

          template <>

          ClassList > fmt > formatter< endstone::BlockStates::value_type >

          Inherits the following classes: formatter< string_view >

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1value__type_01_4/#public-types","title":"Public Types","text":"Type Name typedef endstone::BlockStates::value_type Type"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1value__type_01_4/#public-functions","title":"Public Functions","text":"Type Name auto format (const Type & val, FormatContext & ctx) const"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1value__type_01_4/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1value__type_01_4/#typedef-type","title":"typedef Type","text":"
          using fmt::formatter< endstone::BlockStates::value_type >::Type =  endstone::BlockStates::value_type;\n
          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1value__type_01_4/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1value__type_01_4/#function-format","title":"function format","text":"
          template<typename FormatContext>\ninline auto fmt::formatter< endstone::BlockStates::value_type >::format (\n    const Type & val,\n    FormatContext & ctx\n) const\n

          The documentation for this class was generated from the following file include/endstone/block/block_data.h

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1ItemStack_01_4/","title":"Struct fmt::formatter< endstone::ItemStack >","text":"

          template <>

          ClassList > fmt > formatter< endstone::ItemStack >

          Inherits the following classes: formatter< string_view >

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1ItemStack_01_4/#public-types","title":"Public Types","text":"Type Name typedef endstone::ItemStack Type"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1ItemStack_01_4/#public-functions","title":"Public Functions","text":"Type Name auto format (const Type & val, FormatContext & ctx) const"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1ItemStack_01_4/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1ItemStack_01_4/#typedef-type","title":"typedef Type","text":"
          using fmt::formatter< endstone::ItemStack >::Type =  endstone::ItemStack;\n
          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1ItemStack_01_4/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1ItemStack_01_4/#function-format","title":"function format","text":"
          template<typename FormatContext>\ninline auto fmt::formatter< endstone::ItemStack >::format (\n    const Type & val,\n    FormatContext & ctx\n) const\n

          The documentation for this class was generated from the following file include/endstone/inventory/item_stack.h

          "},{"location":"reference/cpp/namespacestd/","title":"Namespace std","text":"

          Namespace List > std

          "},{"location":"reference/cpp/namespacestd/#classes","title":"Classes","text":"Type Name struct hash< endstone::UUID > <>

          The documentation for this class was generated from the following file include/endstone/util/uuid.h

          "},{"location":"reference/cpp/structstd_1_1hash_3_01endstone_1_1UUID_01_4/","title":"Struct std::hash< endstone::UUID >","text":"

          template <>

          ClassList > std > hash< endstone::UUID >

          "},{"location":"reference/cpp/structstd_1_1hash_3_01endstone_1_1UUID_01_4/#public-functions","title":"Public Functions","text":"Type Name std::size_t operator() (const endstone::UUID & value) noexcept const"},{"location":"reference/cpp/structstd_1_1hash_3_01endstone_1_1UUID_01_4/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/structstd_1_1hash_3_01endstone_1_1UUID_01_4/#function-operator","title":"function operator()","text":"
          inline std::size_t std::hash< endstone::UUID >::operator() (\n    const endstone::UUID & value\n) noexcept const\n

          The documentation for this class was generated from the following file include/endstone/util/uuid.h

          "},{"location":"reference/cpp/dir_d44c64559bbebec7f509842c48db8b23/","title":"Dir include","text":"

          FileList > include

          "},{"location":"reference/cpp/dir_d44c64559bbebec7f509842c48db8b23/#directories","title":"Directories","text":"Type Name dir endstone

          The documentation for this class was generated from the following file include/

          "},{"location":"reference/cpp/dir_6cf277b678674f97c7a2b6b3b2447b33/","title":"Dir include/endstone","text":"

          FileList > endstone

          "},{"location":"reference/cpp/dir_6cf277b678674f97c7a2b6b3b2447b33/#files","title":"Files","text":"Type Name file color_format.h file endstone.h file game_mode.h file logger.h file message.h file player.h file server.h file skin.h"},{"location":"reference/cpp/dir_6cf277b678674f97c7a2b6b3b2447b33/#directories","title":"Directories","text":"Type Name dir actor dir block dir boss dir command dir event dir form dir inventory dir lang dir level dir network dir permissions dir plugin dir scheduler dir scoreboard dir util

          The documentation for this class was generated from the following file include/endstone/

          "},{"location":"reference/cpp/color__format_8h/","title":"File color_format.h","text":"

          FileList > endstone > color_format.h

          Go to the source code of this file

          • #include <string>
          "},{"location":"reference/cpp/color__format_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/color__format_8h/#classes","title":"Classes","text":"Type Name struct ColorFormat All supported color and format codes.

          The documentation for this class was generated from the following file include/endstone/color_format.h

          "},{"location":"reference/cpp/color__format_8h_source/","title":"File color_format.h","text":"

          File List > endstone > color_format.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n\nnamespace endstone {\n\nstruct ColorFormat {\n    // Escape\n    inline static const std::string Escape = \"\u00a7\";\n\n    // Color code\n    inline static const std::string Black = Escape + '0';\n    inline static const std::string DarkBlue = Escape + '1';\n    inline static const std::string DarkGreen = Escape + '2';\n    inline static const std::string DarkAqua = Escape + '3';\n    inline static const std::string DarkRed = Escape + '4';\n    inline static const std::string DarkPurple = Escape + '5';\n    inline static const std::string Gold = Escape + '6';\n    inline static const std::string Gray = Escape + '7';\n    inline static const std::string DarkGray = Escape + '8';\n    inline static const std::string Blue = Escape + '9';\n    inline static const std::string Green = Escape + 'a';\n    inline static const std::string Aqua = Escape + 'b';\n    inline static const std::string Red = Escape + 'c';\n    inline static const std::string LightPurple = Escape + 'd';\n    inline static const std::string Yellow = Escape + 'e';\n    inline static const std::string White = Escape + 'f';\n    inline static const std::string MinecoinGold = Escape + 'g';\n    inline static const std::string MaterialQuartz = Escape + 'h';\n    inline static const std::string MaterialIron = Escape + 'i';\n    inline static const std::string MaterialNetherite = Escape + 'j';\n    inline static const std::string MaterialRedstone = Escape + 'm';\n    inline static const std::string MaterialCopper = Escape + 'n';\n    inline static const std::string MaterialGold = Escape + 'p';\n    inline static const std::string MaterialEmerald = Escape + 'q';\n    inline static const std::string MaterialDiamond = Escape + 's';\n    inline static const std::string MaterialLapis = Escape + 't';\n    inline static const std::string MaterialAmethyst = Escape + 'u';\n\n    // Format code\n    inline static const std::string Obfuscated = Escape + 'k';\n    inline static const std::string Bold = Escape + 'l';\n    inline static const std::string Italic = Escape + 'o';\n    inline static const std::string Reset = Escape + 'r';\n};  // namespace ColorFormat\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/endstone_8h/","title":"File endstone.h","text":"

          FileList > endstone > endstone.h

          Go to the source code of this file

          "},{"location":"reference/cpp/endstone_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/endstone_8h/#classes","title":"Classes","text":"Type Name struct overloaded <Func>Helper type for visitors."},{"location":"reference/cpp/endstone_8h/#macros","title":"Macros","text":"Type Name define ENDSTONE_API_VERSION ENDSTONE_TOSTRING(ENDSTONE_VERSION_MAJOR) \".\" ENDSTONE_TOSTRING(ENDSTONE_VERSION_MINOR) define ENDSTONE_EXPORT __attribute__((visibility(\"default\"))) define ENDSTONE_MAX_PLAYERS 200 define ENDSTONE_NOINLINE __attribute__((noinline)) inline define ENDSTONE_STRINGIFY (x) #x define ENDSTONE_TOSTRING (x) ENDSTONE_STRINGIFY(x) define ENDSTONE_VERSION_MAJOR 0 define ENDSTONE_VERSION_MINOR 5 define ENDSTONE_VERSION_PATCH 6"},{"location":"reference/cpp/endstone_8h/#macro-definition-documentation","title":"Macro Definition Documentation","text":""},{"location":"reference/cpp/endstone_8h/#define-endstone_api_version","title":"define ENDSTONE_API_VERSION","text":"
          #define ENDSTONE_API_VERSION ENDSTONE_TOSTRING(ENDSTONE_VERSION_MAJOR) \".\" ENDSTONE_TOSTRING(ENDSTONE_VERSION_MINOR)\n
          "},{"location":"reference/cpp/endstone_8h/#define-endstone_export","title":"define ENDSTONE_EXPORT","text":"
          #define ENDSTONE_EXPORT __attribute__((visibility(\"default\")))\n
          "},{"location":"reference/cpp/endstone_8h/#define-endstone_max_players","title":"define ENDSTONE_MAX_PLAYERS","text":"
          #define ENDSTONE_MAX_PLAYERS 200\n
          "},{"location":"reference/cpp/endstone_8h/#define-endstone_noinline","title":"define ENDSTONE_NOINLINE","text":"
          #define ENDSTONE_NOINLINE __attribute__((noinline)) inline\n
          "},{"location":"reference/cpp/endstone_8h/#define-endstone_stringify","title":"define ENDSTONE_STRINGIFY","text":"
          #define ENDSTONE_STRINGIFY (\n    x\n) #x\n
          "},{"location":"reference/cpp/endstone_8h/#define-endstone_tostring","title":"define ENDSTONE_TOSTRING","text":"
          #define ENDSTONE_TOSTRING (\n    x\n) ENDSTONE_STRINGIFY(x)\n
          "},{"location":"reference/cpp/endstone_8h/#define-endstone_version_major","title":"define ENDSTONE_VERSION_MAJOR","text":"
          #define ENDSTONE_VERSION_MAJOR 0\n
          "},{"location":"reference/cpp/endstone_8h/#define-endstone_version_minor","title":"define ENDSTONE_VERSION_MINOR","text":"
          #define ENDSTONE_VERSION_MINOR 5\n
          "},{"location":"reference/cpp/endstone_8h/#define-endstone_version_patch","title":"define ENDSTONE_VERSION_PATCH","text":"
          #define ENDSTONE_VERSION_PATCH 6\n

          The documentation for this class was generated from the following file include/endstone/endstone.h

          "},{"location":"reference/cpp/endstone_8h_source/","title":"File endstone.h","text":"

          File List > endstone > endstone.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#define ENDSTONE_STRINGIFY(x) #x\n#define ENDSTONE_TOSTRING(x)  ENDSTONE_STRINGIFY(x)\n\n#define ENDSTONE_VERSION_MAJOR 0\n#define ENDSTONE_VERSION_MINOR 5\n#define ENDSTONE_VERSION_PATCH 6\n#define ENDSTONE_API_VERSION   ENDSTONE_TOSTRING(ENDSTONE_VERSION_MAJOR) \".\" ENDSTONE_TOSTRING(ENDSTONE_VERSION_MINOR)\n\n#define ENDSTONE_MAX_PLAYERS 200\n\n#if defined(WIN32) || defined(_WIN32)\n#define ENDSTONE_EXPORT __declspec(dllexport)\n#else\n#define ENDSTONE_EXPORT __attribute__((visibility(\"default\")))\n#endif\n\n#if defined(_MSC_VER)\n#define ENDSTONE_NOINLINE __declspec(noinline) inline\n#else\n#define ENDSTONE_NOINLINE __attribute__((noinline)) inline\n#endif\n\n#ifdef _WIN32\n#define ENDSTONE_VARIANT_WIN32_LINUX(win32, linux) win32\n#elif __linux__\n#define ENDSTONE_VARIANT_WIN32_LINUX(win32, linux) linux\n#endif\n\nnamespace endstone {\ntemplate <typename... Func>\nstruct overloaded : Func... {\n  using Func::operator()...;\n};\n\ntemplate <typename... Func>\noverloaded(Func...) -> overloaded<Func...>;\n}  // namespace endstone\n
          "},{"location":"reference/cpp/game__mode_8h/","title":"File game_mode.h","text":"

          FileList > endstone > game_mode.h

          Go to the source code of this file

          "},{"location":"reference/cpp/game__mode_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/game_mode.h

          "},{"location":"reference/cpp/game__mode_8h_source/","title":"File game_mode.h","text":"

          File List > endstone > game_mode.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class GameMode {\n    Survival = 0,\n\n    Creative = 1,\n\n    Adventure = 2,\n\n    Spectator = 3,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_dd7779a583e02d88c9a89a2c881c3946/","title":"Dir include/endstone/actor","text":"

          FileList > actor

          "},{"location":"reference/cpp/dir_dd7779a583e02d88c9a89a2c881c3946/#files","title":"Files","text":"Type Name file actor.h file mob.h

          The documentation for this class was generated from the following file include/endstone/actor/

          "},{"location":"reference/cpp/actor_8h/","title":"File actor.h","text":"

          FileList > actor > actor.h

          Go to the source code of this file

          • #include \"endstone/command/command_sender.h\"
          • #include \"endstone/level/location.h\"
          • #include \"endstone/level/position.h\"
          "},{"location":"reference/cpp/actor_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/actor_8h/#classes","title":"Classes","text":"Type Name class Actor Represents a base actor in the level.

          The documentation for this class was generated from the following file include/endstone/actor/actor.h

          "},{"location":"reference/cpp/actor_8h_source/","title":"File actor.h","text":"

          File List > actor > actor.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/command/command_sender.h\"\n#include \"endstone/level/location.h\"\n#include \"endstone/level/position.h\"\n\nnamespace endstone {\n\nclass Actor : public CommandSender {\npublic:\n    // CommandSender\n    [[nodiscard]] Actor *asActor() const override\n    {\n        return const_cast<Actor *>(this);\n    }\n\n    [[nodiscard]] virtual std::uint64_t getRuntimeId() const = 0;\n\n    [[nodiscard]] virtual Location getLocation() const = 0;\n\n    [[nodiscard]] virtual Vector<float> getVelocity() const = 0;\n\n    [[nodiscard]] virtual bool isOnGround() const = 0;\n\n    [[nodiscard]] virtual bool isInWater() const = 0;\n\n    [[nodiscard]] virtual bool isInLava() const = 0;\n\n    [[nodiscard]] virtual Level &getLevel() const = 0;\n\n    [[nodiscard]] virtual Dimension &getDimension() const = 0;\n\n    virtual void setRotation(float yaw, float pitch) = 0;\n\n    virtual void teleport(Location location) = 0;\n\n    virtual void teleport(Actor &target) = 0;\n\n    [[nodiscard]] virtual std::int64_t getId() const = 0;\n\n    [[nodiscard]] virtual bool isDead() const = 0;\n\n    [[nodiscard]] virtual int getHealth() const = 0;\n\n    [[nodiscard]] virtual Result<void> setHealth(int health) const = 0;\n\n    [[nodiscard]] virtual int getMaxHealth() const = 0;\n\n    [[nodiscard]] virtual std::vector<std::string> getScoreboardTags() const = 0;\n\n    [[nodiscard]] virtual bool addScoreboardTag(std::string tag) const = 0;\n\n    [[nodiscard]] virtual bool removeScoreboardTag(std::string tag) const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/mob_8h/","title":"File mob.h","text":"

          FileList > actor > mob.h

          Go to the source code of this file

          • #include \"endstone/actor/actor.h\"
          "},{"location":"reference/cpp/mob_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/mob_8h/#classes","title":"Classes","text":"Type Name class Mob Represents a mobile entity (i.e. living entity), such as a monster or player.

          The documentation for this class was generated from the following file include/endstone/actor/mob.h

          "},{"location":"reference/cpp/mob_8h_source/","title":"File mob.h","text":"

          File List > actor > mob.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/actor/actor.h\"\n\nnamespace endstone {\nclass Mob : public Actor {\npublic:\n    [[nodiscard]] virtual bool isGliding() const = 0;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_faca67fc60a7463eb1bd30eabe023cf1/","title":"Dir include/endstone/block","text":"

          FileList > block

          "},{"location":"reference/cpp/dir_faca67fc60a7463eb1bd30eabe023cf1/#files","title":"Files","text":"Type Name file block.h file block_data.h file block_face.h file block_state.h

          The documentation for this class was generated from the following file include/endstone/block/

          "},{"location":"reference/cpp/block_8h/","title":"File block.h","text":"

          FileList > block > block.h

          Go to the source code of this file

          • #include <memory>
          • #include <string>
          • #include \"endstone/block/block_data.h\"
          • #include \"endstone/block/block_face.h\"
          • #include \"endstone/level/location.h\"
          • #include \"endstone/util/result.h\"
          "},{"location":"reference/cpp/block_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone namespace fmt"},{"location":"reference/cpp/block_8h/#classes","title":"Classes","text":"Type Name class Block Represents a block. struct formatter< endstone::Block > <>

          The documentation for this class was generated from the following file include/endstone/block/block.h

          "},{"location":"reference/cpp/block_8h_source/","title":"File block.h","text":"

          File List > block > block.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <memory>\n#include <string>\n\n#include \"endstone/block/block_data.h\"\n#include \"endstone/block/block_face.h\"\n#include \"endstone/level/location.h\"\n#include \"endstone/util/result.h\"\n\nnamespace endstone {\n\nclass BlockState;\n\nclass Dimension;\n\nclass Block {\npublic:\n    virtual ~Block() = default;\n\n    [[nodiscard]] virtual bool isValid() const = 0;\n\n    [[nodiscard]] virtual Result<std::string> getType() const = 0;\n\n    virtual Result<void> setType(std::string type) = 0;\n\n    virtual Result<void> setType(std::string type, bool apply_physics) = 0;\n\n    [[nodiscard]] virtual Result<std::shared_ptr<BlockData>> getData() const = 0;\n\n    virtual Result<void> setData(std::shared_ptr<BlockData> data) = 0;\n\n    virtual Result<void> setData(std::shared_ptr<BlockData> data, bool apply_physics) = 0;\n\n    virtual Result<std::unique_ptr<Block>> getRelative(int offset_x, int offset_y, int offset_z) = 0;\n\n    virtual Result<std::unique_ptr<Block>> getRelative(BlockFace face) = 0;\n\n    virtual Result<std::unique_ptr<Block>> getRelative(BlockFace face, int distance) = 0;\n\n    [[nodiscard]] virtual Dimension &getDimension() const = 0;\n\n    [[nodiscard]] virtual int getX() const = 0;\n\n    [[nodiscard]] virtual int getY() const = 0;\n\n    [[nodiscard]] virtual int getZ() const = 0;\n\n    [[nodiscard]] virtual Location getLocation() const = 0;\n\n    [[nodiscard]] virtual std::shared_ptr<BlockState> captureState() const = 0;\n};\n\n}  // namespace endstone\n\nnamespace fmt {\ntemplate <>\nstruct formatter<endstone::Block> : formatter<string_view> {\n    using Type = endstone::Block;\n\n    template <typename FormatContext>\n    auto format(const Type &val, FormatContext &ctx) const -> format_context::iterator\n    {\n        auto it = ctx.out();\n        it = format_to(it, \"Block(pos=BlockPos(x={}, y={}, z={}), type={}\", val.getX(), val.getY(), val.getZ(),\n                       val.getType().value_or(\"INVALID\"));\n        if (auto data = val.getData()) {\n            it = format_to(it, \", data={}\", *data.value());\n        }\n        else {\n            it = format_to(it, \", data=INVALID\");\n        }\n        it = format_to(it, \")\");\n        return it;\n    }\n};\n}  // namespace fmt\n
          "},{"location":"reference/cpp/block__data_8h/","title":"File block_data.h","text":"

          FileList > block > block_data.h

          Go to the source code of this file

          • #include <string>
          • #include <unordered_map>
          • #include <variant>
          • #include <fmt/format.h>
          • #include \"endstone/endstone.h\"
          "},{"location":"reference/cpp/block__data_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone namespace fmt"},{"location":"reference/cpp/block__data_8h/#classes","title":"Classes","text":"Type Name class BlockData Represents the data related to a live block. struct formatter< endstone::BlockData > <> struct formatter< endstone::BlockStates > <> struct formatter< endstone::BlockStates::mapped_type > <> struct formatter< endstone::BlockStates::value_type > <>

          The documentation for this class was generated from the following file include/endstone/block/block_data.h

          "},{"location":"reference/cpp/block__data_8h_source/","title":"File block_data.h","text":"

          File List > block > block_data.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <unordered_map>\n#include <variant>\n\n#include <fmt/format.h>\n\n#include \"endstone/endstone.h\"\n\nnamespace endstone {\n\nusing BlockStates = std::unordered_map<std::string, std::variant<bool, std::string, int>>;\n\nclass BlockData : public std::enable_shared_from_this<BlockData> {\npublic:\n    virtual ~BlockData() = default;\n\n    [[nodiscard]] virtual std::string getType() const = 0;\n\n    [[nodiscard]] virtual BlockStates getBlockStates() const = 0;\n};\n\n}  // namespace endstone\n\nnamespace fmt {\n\ntemplate <>\nstruct formatter<endstone::BlockStates::mapped_type> : formatter<string_view> {\n    using Type = endstone::BlockStates::mapped_type;\n\n    template <typename FormatContext>\n    auto format(const Type &val, FormatContext &ctx) const -> format_context::iterator\n    {\n        return std::visit(endstone::overloaded{\n                              [&ctx](const std::string &arg) { return format_to(ctx.out(), \"{:?}\", arg); },\n                              [&ctx](auto &&arg) { return format_to(ctx.out(), \"{}\", arg); },\n                          },\n                          val);\n    }\n};\n\ntemplate <>\nstruct formatter<endstone::BlockStates::value_type> : formatter<string_view> {\n    using Type = endstone::BlockStates::value_type;\n\n    template <typename FormatContext>\n    auto format(const Type &val, FormatContext &ctx) const -> format_context::iterator\n    {\n        return format_to(ctx.out(), \"{:?}={}\", val.first, val.second);\n    }\n};\n\ntemplate <>\nstruct formatter<endstone::BlockStates> : formatter<string_view> {\n    using Type = endstone::BlockStates;\n\n    template <typename FormatContext>\n    auto format(const Type &val, FormatContext &ctx) const -> format_context::iterator\n    {\n        return format_to(ctx.out(), \"[{}]\", join(val.begin(), val.end(), \",\"));\n    }\n};\n\ntemplate <>\nstruct formatter<endstone::BlockData> : formatter<string_view> {\n    using Type = endstone::BlockData;\n\n    template <typename FormatContext>\n    auto format(const Type &val, FormatContext &ctx) const -> format_context::iterator\n    {\n        return format_to(ctx.out(), \"BlockData(type={}, block_states={})\", val.getType(), val.getBlockStates());\n    }\n};\n}  // namespace fmt\n
          "},{"location":"reference/cpp/block__face_8h/","title":"File block_face.h","text":"

          FileList > block > block_face.h

          Go to the source code of this file

          "},{"location":"reference/cpp/block__face_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/block/block_face.h

          "},{"location":"reference/cpp/block__face_8h_source/","title":"File block_face.h","text":"

          File List > block > block_face.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class BlockFace {\n    Down,\n    Up,\n    North,\n    South,\n    West,\n    East,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/block__state_8h/","title":"File block_state.h","text":"

          FileList > block > block_state.h

          Go to the source code of this file

          • #include <fmt/format.h>
          • #include \"endstone/block/block.h\"
          • #include \"endstone/util/result.h\"
          "},{"location":"reference/cpp/block__state_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone namespace fmt"},{"location":"reference/cpp/block__state_8h/#classes","title":"Classes","text":"Type Name class BlockState Represents a captured state of a block, which will not update automatically. struct formatter< endstone::BlockState > <>

          The documentation for this class was generated from the following file include/endstone/block/block_state.h

          "},{"location":"reference/cpp/block__state_8h_source/","title":"File block_state.h","text":"

          File List > block > block_state.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <fmt/format.h>\n\n#include \"endstone/block/block.h\"\n#include \"endstone/util/result.h\"\n\nnamespace endstone {\n\nclass BlockState : public std::enable_shared_from_this<BlockState> {\npublic:\n    virtual ~BlockState() = default;\n\n    [[nodiscard]] virtual Result<std::unique_ptr<Block>> getBlock() const = 0;\n\n    [[nodiscard]] virtual std::string getType() const = 0;\n\n    virtual Result<void> setType(std::string type) = 0;\n\n    [[nodiscard]] virtual std::shared_ptr<BlockData> getData() const = 0;\n\n    virtual Result<void> setData(std::shared_ptr<BlockData> data) = 0;\n\n    [[nodiscard]] virtual Dimension &getDimension() const = 0;\n\n    [[nodiscard]] virtual int getX() const = 0;\n\n    [[nodiscard]] virtual int getY() const = 0;\n\n    [[nodiscard]] virtual int getZ() const = 0;\n\n    [[nodiscard]] virtual Location getLocation() const = 0;\n\n    virtual Result<bool> update() = 0;\n\n    virtual Result<bool> update(bool force) = 0;\n\n    virtual Result<bool> update(bool force, bool apply_physics) = 0;\n};\n}  // namespace endstone\n\nnamespace fmt {\ntemplate <>\nstruct formatter<endstone::BlockState> : formatter<string_view> {\n    using Type = endstone::BlockState;\n\n    template <typename FormatContext>\n    auto format(const Type &val, FormatContext &ctx) const -> format_context::iterator\n    {\n        return format_to(ctx.out(), \"BlockState(pos=BlockPos(x={}, y={}, z={}), type={}, data={})\", val.getX(),\n                         val.getY(), val.getZ(), val.getType(), *val.getData());\n    }\n};\n}  // namespace fmt\n
          "},{"location":"reference/cpp/dir_d0a7fd8d5b72659767e2a2651b1ff51c/","title":"Dir include/endstone/boss","text":"

          FileList > boss

          "},{"location":"reference/cpp/dir_d0a7fd8d5b72659767e2a2651b1ff51c/#files","title":"Files","text":"Type Name file bar_color.h file bar_flag.h file bar_style.h file boss_bar.h

          The documentation for this class was generated from the following file include/endstone/boss/

          "},{"location":"reference/cpp/bar__color_8h/","title":"File bar_color.h","text":"

          FileList > boss > bar_color.h

          Go to the source code of this file

          "},{"location":"reference/cpp/bar__color_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/boss/bar_color.h

          "},{"location":"reference/cpp/bar__color_8h_source/","title":"File bar_color.h","text":"

          File List > boss > bar_color.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class BarColor {\n    Pink = 0,\n    Blue = 1,\n    Red = 2,\n    Green = 3,\n    Yellow = 4,\n    Purple = 5,\n    RebeccaPurple = 6,\n    White = 7,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/bar__flag_8h/","title":"File bar_flag.h","text":"

          FileList > boss > bar_flag.h

          Go to the source code of this file

          "},{"location":"reference/cpp/bar__flag_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/boss/bar_flag.h

          "},{"location":"reference/cpp/bar__flag_8h_source/","title":"File bar_flag.h","text":"

          File List > boss > bar_flag.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class BarFlag {\n    DarkenSky,\n    Count,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/bar__style_8h/","title":"File bar_style.h","text":"

          FileList > boss > bar_style.h

          Go to the source code of this file

          "},{"location":"reference/cpp/bar__style_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/boss/bar_style.h

          "},{"location":"reference/cpp/bar__style_8h_source/","title":"File bar_style.h","text":"

          File List > boss > bar_style.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class BarStyle {\n    Solid,\n    Segmented6,\n    Segmented10,\n    Segmented12,\n    Segmented20,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/boss__bar_8h/","title":"File boss_bar.h","text":"

          FileList > boss > boss_bar.h

          Go to the source code of this file

          • #include <string>
          • #include <vector>
          • #include \"endstone/boss/bar_color.h\"
          • #include \"endstone/boss/bar_flag.h\"
          • #include \"endstone/boss/bar_style.h\"
          • #include \"endstone/util/result.h\"
          "},{"location":"reference/cpp/boss__bar_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/boss__bar_8h/#classes","title":"Classes","text":"Type Name class BossBar Represents a boss bar that is displayed to players.

          The documentation for this class was generated from the following file include/endstone/boss/boss_bar.h

          "},{"location":"reference/cpp/boss__bar_8h_source/","title":"File boss_bar.h","text":"

          File List > boss > boss_bar.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <vector>\n\n#include \"endstone/boss/bar_color.h\"\n#include \"endstone/boss/bar_flag.h\"\n#include \"endstone/boss/bar_style.h\"\n#include \"endstone/util/result.h\"\n\nnamespace endstone {\n\nclass Player;\n\nclass BossBar {\npublic:\n    virtual ~BossBar() = default;\n\n    [[nodiscard]] virtual std::string getTitle() const = 0;\n\n    virtual void setTitle(std::string title) = 0;\n\n    [[nodiscard]] virtual BarColor getColor() const = 0;\n\n    virtual void setColor(BarColor color) = 0;\n\n    [[nodiscard]] virtual BarStyle getStyle() const = 0;\n\n    virtual void setStyle(BarStyle style) = 0;\n\n    [[nodiscard]] virtual bool hasFlag(BarFlag flag) const = 0;\n\n    virtual void addFlag(BarFlag flag) = 0;\n\n    virtual void removeFlag(BarFlag flag) = 0;\n\n    [[nodiscard]] virtual float getProgress() const = 0;\n\n    virtual Result<void> setProgress(float progress) = 0;\n\n    [[nodiscard]] virtual bool isVisible() const = 0;\n\n    virtual void setVisible(bool visible) = 0;\n\n    virtual void addPlayer(Player &player) = 0;\n\n    virtual void removePlayer(Player &player) = 0;\n\n    virtual void removeAll() = 0;\n\n    [[nodiscard]] virtual std::vector<Player *> getPlayers() const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_5c7b2dbfabcd1115569d1e20a260545c/","title":"Dir include/endstone/command","text":"

          FileList > command

          "},{"location":"reference/cpp/dir_5c7b2dbfabcd1115569d1e20a260545c/#files","title":"Files","text":"Type Name file command.h file command_executor.h file command_map.h file command_sender.h file command_sender_wrapper.h file console_command_sender.h file plugin_command.h file proxied_command_sender.h

          The documentation for this class was generated from the following file include/endstone/command/

          "},{"location":"reference/cpp/command_8h/","title":"File command.h","text":"

          FileList > command > command.h

          Go to the source code of this file

          • #include <algorithm>
          • #include <optional>
          • #include <string>
          • #include <utility>
          • #include <vector>
          • #include \"endstone/command/command_map.h\"
          • #include \"endstone/command/command_sender.h\"
          "},{"location":"reference/cpp/command_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/command_8h/#classes","title":"Classes","text":"Type Name class Command Represents a Command , which executes various tasks upon user input.

          The documentation for this class was generated from the following file include/endstone/command/command.h

          "},{"location":"reference/cpp/command_8h_source/","title":"File command.h","text":"

          File List > command > command.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <algorithm>\n#include <optional>\n#include <string>\n#include <utility>\n#include <vector>\n\n#include \"endstone/command/command_map.h\"\n#include \"endstone/command/command_sender.h\"\n\nnamespace endstone {\n\nclass PluginCommand;\n\nclass Command {\npublic:\n    explicit Command(std::string name, std::string description = \"\", std::vector<std::string> usages = {},\n                     std::vector<std::string> aliases = {}, std::vector<std::string> permissions = {})\n    {\n        setName(std::move(name));\n        setDescription(std::move(description));\n        setUsages(std::move(usages));\n        setAliases(std::move(aliases));\n        setPermissions(std::move(permissions));\n    }\n\n    virtual ~Command() = default;\n\n    [[nodiscard]] virtual bool execute(CommandSender &sender, const std::vector<std::string> &args) const\n    {\n        return false;\n    }\n\n    [[nodiscard]] std::string getName() const\n    {\n        return name_;\n    }\n\n    void setName(std::string name)\n    {\n        if (!isRegistered()) {\n            std::transform(name.begin(), name.end(), name.begin(), [](unsigned char c) { return std::tolower(c); });\n            name_ = std::move(name);\n        }\n    }\n\n    [[nodiscard]] std::string getDescription() const\n    {\n        return description_;\n    }\n\n    void setDescription(std::string description)\n    {\n        if (!isRegistered()) {\n            description_ = std::move(description);\n        }\n    }\n\n    [[nodiscard]] std::vector<std::string> getAliases() const\n    {\n        return aliases_;\n    }\n\n    template <typename... Alias>\n    void setAliases(Alias... aliases)\n    {\n        if (!isRegistered()) {\n            std::vector<std::string> all_aliases = {aliases...};\n            aliases_.clear();\n            for (auto alias : all_aliases) {\n                std::transform(alias.begin(), alias.end(), alias.begin(),\n                               [](unsigned char c) { return std::tolower(c); });\n                aliases_.push_back(alias);\n            }\n        }\n    }\n\n    [[nodiscard]] std::vector<std::string> getUsages() const\n    {\n        return usages_;\n    }\n\n    template <typename... Usage>\n    void setUsages(Usage... usages)\n    {\n        if (!isRegistered()) {\n            std::vector<std::string> all_usages = {usages...};\n            if (all_usages.empty()) {\n                all_usages.push_back(\"/\" + getName());\n            }\n            usages_ = std::move(all_usages);\n        }\n    }\n\n    [[nodiscard]] std::vector<std::string> getPermissions() const\n    {\n        return permissions_;\n    }\n\n    template <typename... Permission>\n    void setPermissions(Permission... permissions)\n    {\n        permissions_ = std::move(std::vector<std::string>{permissions...});\n    }\n\n    [[nodiscard]] bool testPermission(const CommandSender &target) const\n    {\n        if (testPermissionSilently(target)) {\n            return true;\n        }\n\n        target.sendErrorMessage(Translatable(\"commands.generic.unknown\", {getName()}));\n        return false;\n    }\n\n    [[nodiscard]] bool testPermissionSilently(const CommandSender &target) const\n    {\n        if (permissions_.empty()) {\n            return true;\n        }\n\n        return std::any_of(permissions_.begin(), permissions_.end(),\n                           [&target](const auto &p) { return target.hasPermission(p); });\n    }\n\n    bool registerTo(CommandMap &command_map)\n    {\n        if (allowChangesFrom(command_map)) {\n            command_map_ = &command_map;\n            return true;\n        }\n\n        return false;\n    }\n\n    bool unregisterFrom(const CommandMap &command_map)\n    {\n        if (allowChangesFrom(command_map)) {\n            command_map_ = nullptr;\n            return true;\n        }\n\n        return false;\n    }\n\n    [[nodiscard]] bool isRegistered() const\n    {\n        return command_map_ != nullptr;\n    }\n\n    [[nodiscard]] virtual PluginCommand *asPluginCommand() const\n    {\n        return nullptr;\n    }\n\nprivate:\n    bool allowChangesFrom(const CommandMap &command_map) const\n    {\n        return (!isRegistered() || command_map_ == &command_map);\n    }\n\n    std::string name_;\n    std::string description_;\n    std::vector<std::string> aliases_;\n    std::vector<std::string> usages_;\n    std::vector<std::string> permissions_;\n    CommandMap *command_map_ = nullptr;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/command__executor_8h/","title":"File command_executor.h","text":"

          FileList > command > command_executor.h

          Go to the source code of this file

          • #include <map>
          • #include <string>
          • #include \"endstone/command/command.h\"
          • #include \"endstone/command/command_sender.h\"
          "},{"location":"reference/cpp/command__executor_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/command__executor_8h/#classes","title":"Classes","text":"Type Name class CommandExecutor Represents a class which contains a single method for executing commands.

          The documentation for this class was generated from the following file include/endstone/command/command_executor.h

          "},{"location":"reference/cpp/command__executor_8h_source/","title":"File command_executor.h","text":"

          File List > command > command_executor.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <map>\n#include <string>\n\n#include \"endstone/command/command.h\"\n#include \"endstone/command/command_sender.h\"\n\nnamespace endstone {\nclass CommandExecutor {\npublic:\n    virtual ~CommandExecutor() = default;\n\n    virtual bool onCommand(CommandSender &sender, const Command &command, const std::vector<std::string> &args)\n    {\n        return false;\n    }\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/command__map_8h/","title":"File command_map.h","text":"

          FileList > command > command_map.h

          Go to the source code of this file

          • #include <memory>
          • #include <string>
          • #include <vector>
          • #include \"endstone/command/command_sender.h\"
          "},{"location":"reference/cpp/command__map_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/command__map_8h/#classes","title":"Classes","text":"Type Name class CommandMap Represents a command map that manages all commands of the Server .

          The documentation for this class was generated from the following file include/endstone/command/command_map.h

          "},{"location":"reference/cpp/command__map_8h_source/","title":"File command_map.h","text":"

          File List > command > command_map.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <memory>\n#include <string>\n#include <vector>\n\n#include \"endstone/command/command_sender.h\"\n\nnamespace endstone {\n\nclass Command;\n\nclass CommandMap {\npublic:\n    CommandMap() = default;\n    CommandMap(const CommandMap &) = delete;\n    CommandMap &operator=(const CommandMap &) = delete;\n    CommandMap(CommandMap &&) = default;\n    CommandMap &operator=(CommandMap &&) = default;\n\n    virtual ~CommandMap() = default;\n\n    virtual bool registerCommand(std::shared_ptr<Command> command) = 0;\n\n    virtual bool dispatch(CommandSender &sender, std::string command_line) const = 0;\n\n    virtual void clearCommands() = 0;\n\n    [[nodiscard]] virtual Command *getCommand(std::string name) const = 0;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/command__sender_8h/","title":"File command_sender.h","text":"

          FileList > command > command_sender.h

          Go to the source code of this file

          • #include <string>
          • #include <fmt/format.h>
          • #include \"endstone/message.h\"
          • #include \"endstone/permissions/permissible.h\"
          "},{"location":"reference/cpp/command__sender_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/command__sender_8h/#classes","title":"Classes","text":"Type Name class CommandSender Represents a command sender.

          The documentation for this class was generated from the following file include/endstone/command/command_sender.h

          "},{"location":"reference/cpp/command__sender_8h_source/","title":"File command_sender.h","text":"

          File List > command > command_sender.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n\n#include <fmt/format.h>\n\n#include \"endstone/message.h\"\n#include \"endstone/permissions/permissible.h\"\n\nnamespace endstone {\n\nclass Actor;\nclass ConsoleCommandSender;\nclass Server;\nclass Player;\n\nclass CommandSender : public Permissible {\npublic:\n    // Permissible\n    [[nodiscard]] CommandSender *asCommandSender() const override\n    {\n        return const_cast<CommandSender *>(this);\n    }\n\n    [[nodiscard]] virtual ConsoleCommandSender *asConsole() const\n    {\n        return nullptr;\n    }\n\n    [[nodiscard]] virtual Actor *asActor() const\n    {\n        return nullptr;\n    }\n\n    [[nodiscard]] virtual Player *asPlayer() const\n    {\n        return nullptr;\n    }\n\n    virtual void sendMessage(const Message &message) const = 0;\n\n    template <typename... Args>\n    void sendMessage(const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        try {\n            sendMessage(fmt::format(format, std::forward<Args>(args)...));\n        }\n        catch (std::exception &e) {\n            sendErrorMessage(e.what());\n        }\n    }\n\n    virtual void sendErrorMessage(const Message &message) const = 0;\n\n    template <typename... Args>\n    void sendErrorMessage(const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        sendErrorMessage(fmt::format(format, std::forward<Args>(args)...));\n    }\n\n    [[nodiscard]] virtual Server &getServer() const = 0;\n\n    [[nodiscard]] virtual std::string getName() const = 0;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/command__sender__wrapper_8h/","title":"File command_sender_wrapper.h","text":"

          FileList > command > command_sender_wrapper.h

          Go to the source code of this file

          • #include \"endstone/command/command_sender.h\"
          "},{"location":"reference/cpp/command__sender__wrapper_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/command__sender__wrapper_8h/#classes","title":"Classes","text":"Type Name class CommandSenderWrapper Represents a wrapper that forwards commands to the wrapped CommandSender and captures its output.

          The documentation for this class was generated from the following file include/endstone/command/command_sender_wrapper.h

          "},{"location":"reference/cpp/command__sender__wrapper_8h_source/","title":"File command_sender_wrapper.h","text":"

          File List > command > command_sender_wrapper.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/command/command_sender.h\"\n\nnamespace endstone {\n\nclass CommandSenderWrapper final : public CommandSender {\npublic:\n    using Callback = std::function<void(const Message &)>;\n    explicit CommandSenderWrapper(CommandSender &sender, Callback on_message = {}, Callback on_error = {})\n        : sender_(sender), on_message_(std::move(on_message)), on_error_(std::move(on_error)){};\n\n    void sendMessage(const Message &message) const override\n    {\n        if (on_message_) {\n            on_message_(message);\n        }\n    }\n    void sendErrorMessage(const Message &message) const override\n    {\n        if (on_error_) {\n            on_error_(message);\n        }\n    }\n\n    [[nodiscard]] bool isOp() const override\n    {\n        return sender_.isOp();\n    }\n    void setOp(bool value) override\n    {\n        sender_.setOp(value);\n    }\n    [[nodiscard]] bool isPermissionSet(std::string name) const override\n    {\n        return sender_.isPermissionSet(name);\n    }\n    [[nodiscard]] bool isPermissionSet(const Permission &perm) const override\n    {\n        return sender_.isPermissionSet(perm);\n    }\n    [[nodiscard]] bool hasPermission(std::string name) const override\n    {\n        return sender_.hasPermission(name);\n    }\n    [[nodiscard]] bool hasPermission(const Permission &perm) const override\n    {\n        return sender_.hasPermission(perm);\n    }\n    Result<PermissionAttachment *> addAttachment(Plugin &plugin, const std::string &name, bool value) override\n    {\n        return sender_.addAttachment(plugin, name, value);\n    }\n    Result<PermissionAttachment *> addAttachment(Plugin &plugin) override\n    {\n        return sender_.addAttachment(plugin);\n    }\n    Result<void> removeAttachment(PermissionAttachment &attachment) override\n    {\n        return sender_.removeAttachment(attachment);\n    }\n    void recalculatePermissions() override\n    {\n        sender_.recalculatePermissions();\n    }\n    [[nodiscard]] std::unordered_set<PermissionAttachmentInfo *> getEffectivePermissions() const override\n    {\n        return sender_.getEffectivePermissions();\n    }\n    [[nodiscard]] CommandSender *asCommandSender() const override\n    {\n        return sender_.asCommandSender();\n    }\n    [[nodiscard]] ConsoleCommandSender *asConsole() const override\n    {\n        return sender_.asConsole();\n    }\n    [[nodiscard]] Actor *asActor() const override\n    {\n        return sender_.asActor();\n    }\n    [[nodiscard]] Player *asPlayer() const override\n    {\n        return sender_.asPlayer();\n    }\n    [[nodiscard]] Server &getServer() const override\n    {\n        return sender_.getServer();\n    }\n    [[nodiscard]] std::string getName() const override\n    {\n        return sender_.getName();\n    }\n\nprivate:\n    CommandSender &sender_;\n    Callback on_message_;\n    Callback on_error_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/console__command__sender_8h/","title":"File console_command_sender.h","text":"

          FileList > command > console_command_sender.h

          Go to the source code of this file

          • #include \"endstone/command/command_sender.h\"
          "},{"location":"reference/cpp/console__command__sender_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/console__command__sender_8h/#classes","title":"Classes","text":"Type Name class ConsoleCommandSender Represents a console command sender.

          The documentation for this class was generated from the following file include/endstone/command/console_command_sender.h

          "},{"location":"reference/cpp/console__command__sender_8h_source/","title":"File console_command_sender.h","text":"

          File List > command > console_command_sender.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/command/command_sender.h\"\n\nnamespace endstone {\n\nclass ConsoleCommandSender : public CommandSender {};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/plugin__command_8h/","title":"File plugin_command.h","text":"

          FileList > command > plugin_command.h

          Go to the source code of this file

          • #include \"endstone/command/command.h\"
          • #include \"endstone/command/command_executor.h\"
          • #include \"endstone/plugin/plugin.h\"
          "},{"location":"reference/cpp/plugin__command_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/plugin__command_8h/#classes","title":"Classes","text":"Type Name class PluginCommand Represents a Command belonging to aPlugin .

          The documentation for this class was generated from the following file include/endstone/command/plugin_command.h

          "},{"location":"reference/cpp/plugin__command_8h_source/","title":"File plugin_command.h","text":"

          File List > command > plugin_command.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/command/command.h\"\n#include \"endstone/command/command_executor.h\"\n#include \"endstone/plugin/plugin.h\"\n\nnamespace endstone {\n\nclass PluginCommand : public Command {\npublic:\n    PluginCommand(const Command &command, Plugin &owner) : Command(command), owner_(owner) {}\n\n    bool execute(CommandSender &sender, const std::vector<std::string> &args) const override\n    {\n        if (!owner_.isEnabled()) {\n            sender.sendMessage(\"Cannot execute command '{}' in plugin {}. Plugin is disabled.\", getName(),\n                               getPlugin().getDescription().getFullName());\n            return false;\n        }\n\n        if (!testPermission(sender)) {\n            return true;\n        }\n\n        try {\n            return getExecutor().onCommand(sender, *this, args);\n        }\n        catch (std::exception &e) {\n            getPlugin().getLogger().error(\"Unhandled exception executing command '{}' in plugin {}\", getName(),\n                                          owner_.getDescription().getFullName());\n            getPlugin().getLogger().error(e.what());\n            return false;\n        }\n    }\n\n    virtual void setExecutor(std::shared_ptr<CommandExecutor> executor)\n    {\n        executor_ = std::move(executor);\n    }\n\n    [[nodiscard]] virtual CommandExecutor &getExecutor() const\n    {\n        if (executor_) {\n            return *executor_;\n        }\n        return owner_;\n    }\n\n    [[maybe_unused]] [[nodiscard]] Plugin &getPlugin() const\n    {\n        return owner_;\n    }\n\n    [[nodiscard]] PluginCommand *asPluginCommand() const override\n    {\n        return const_cast<PluginCommand *>(this);\n    }\n\nprivate:\n    Plugin &owner_;\n    std::shared_ptr<CommandExecutor> executor_;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/proxied__command__sender_8h/","title":"File proxied_command_sender.h","text":"

          FileList > command > proxied_command_sender.h

          Go to the source code of this file

          • #include \"endstone/command/command_sender.h\"
          "},{"location":"reference/cpp/proxied__command__sender_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/proxied__command__sender_8h/#classes","title":"Classes","text":"Type Name class ProxiedCommandSender Interface for proxied command sender.

          The documentation for this class was generated from the following file include/endstone/command/proxied_command_sender.h

          "},{"location":"reference/cpp/proxied__command__sender_8h_source/","title":"File proxied_command_sender.h","text":"

          File List > command > proxied_command_sender.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/command/command_sender.h\"\n\nnamespace endstone {\n\nclass ProxiedCommandSender : public CommandSender {\npublic:\n    [[nodiscard]] virtual CommandSender &getCaller() const = 0;\n\n    [[nodiscard]] virtual CommandSender &getCallee() const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_f1d783c0ad83ee143d16e768ebca51c8/","title":"Dir include/endstone/event","text":"

          FileList > endstone > event

          "},{"location":"reference/cpp/dir_f1d783c0ad83ee143d16e768ebca51c8/#files","title":"Files","text":"Type Name file event.h file event_handler.h file event_priority.h file handler_list.h"},{"location":"reference/cpp/dir_f1d783c0ad83ee143d16e768ebca51c8/#directories","title":"Directories","text":"Type Name dir actor dir block dir player dir server dir weather

          The documentation for this class was generated from the following file include/endstone/event/

          "},{"location":"reference/cpp/event_8h/","title":"File event.h","text":"

          FileList > endstone > event > event.h

          Go to the source code of this file

          • #include <string>
          "},{"location":"reference/cpp/event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/event_8h/#classes","title":"Classes","text":"Type Name class Event Represents an event.

          The documentation for this class was generated from the following file include/endstone/event/event.h

          "},{"location":"reference/cpp/event_8h_source/","title":"File event.h","text":"

          File List > endstone > event > event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n\nnamespace endstone {\n\nclass Event {\npublic:\n    explicit Event(bool async = false) : async_(async){};\n    Event(const Event &) = delete;             // deleted copy constructor\n    Event &operator=(const Event &) = delete;  // deleted copy assignment operator\n\n    virtual ~Event() = default;\n\n    [[nodiscard]] virtual std::string getEventName() const = 0;\n\n    [[nodiscard]] virtual bool isCancellable() const = 0;\n\n    [[nodiscard]] bool isCancelled() const\n    {\n        if (!isCancellable()) {\n            return false;\n        }\n        return cancelled_;\n    };\n\n    void setCancelled(bool cancel)\n    {\n        if (isCancellable()) {\n            cancelled_ = cancel;\n        }\n    }\n\n    [[nodiscard]] bool isAsynchronous() const\n    {\n        return async_;\n    }\n\nprivate:\n    bool async_;\n    bool cancelled_{false};\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/event__handler_8h/","title":"File event_handler.h","text":"

          FileList > endstone > event > event_handler.h

          Go to the source code of this file

          • #include <functional>
          • #include <map>
          • #include <string>
          • #include <utility>
          • #include <vector>
          • #include \"endstone/event/event.h\"
          • #include \"endstone/event/event_priority.h\"
          • #include \"endstone/plugin/plugin.h\"
          "},{"location":"reference/cpp/event__handler_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/event__handler_8h/#classes","title":"Classes","text":"Type Name class EventHandler Represents a registered EventHandler which associates with aPlugin .

          The documentation for this class was generated from the following file include/endstone/event/event_handler.h

          "},{"location":"reference/cpp/event__handler_8h_source/","title":"File event_handler.h","text":"

          File List > endstone > event > event_handler.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <functional>\n#include <map>\n#include <string>\n#include <utility>\n#include <vector>\n\n#include \"endstone/event/event.h\"\n#include \"endstone/event/event_priority.h\"\n#include \"endstone/plugin/plugin.h\"\n\nnamespace endstone {\n\nclass EventHandler {\npublic:\n    EventHandler(std::string event, std::function<void(Event &)> executor, EventPriority priority, Plugin &plugin,\n                 bool ignore_cancelled)\n        : event_(std::move(event)), executor_(std::move(executor)), priority_(priority), plugin_(plugin),\n          ignore_cancelled_(ignore_cancelled)\n    {\n    }\n\n    [[nodiscard]] Plugin &getPlugin() const\n    {\n        return plugin_;\n    }\n    [[nodiscard]] EventPriority getPriority() const\n    {\n        return priority_;\n    }\n\n    [[nodiscard]] bool isIgnoreCancelled() const\n    {\n        return ignore_cancelled_;\n    }\n\n    void callEvent(Event &event)\n    {\n        if (event.getEventName() != event_) {\n            return;\n        }\n        if (event.isCancellable() && event.isCancelled() && isIgnoreCancelled()) {\n            return;\n        }\n        executor_(event);\n    };\n\n    [[nodiscard]] std::string getEventType() const\n    {\n        return event_;\n    }\n\nprivate:\n    std::string event_;\n    std::function<void(Event &)> executor_;\n    EventPriority priority_;\n    Plugin &plugin_;\n    bool ignore_cancelled_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/event__priority_8h/","title":"File event_priority.h","text":"

          FileList > endstone > event > event_priority.h

          Go to the source code of this file

          "},{"location":"reference/cpp/event__priority_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/event/event_priority.h

          "},{"location":"reference/cpp/event__priority_8h_source/","title":"File event_priority.h","text":"

          File List > endstone > event > event_priority.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class EventPriority {\n    Lowest = 0,\n    Low = 1,\n    Normal = 2,\n    High = 3,\n    Highest = 4,\n    Monitor = 5\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/handler__list_8h/","title":"File handler_list.h","text":"

          FileList > endstone > event > handler_list.h

          Go to the source code of this file

          • #include <map>
          • #include <mutex>
          • #include <string>
          • #include <utility>
          • #include <vector>
          • #include \"endstone/event/event_handler.h\"
          • #include \"endstone/event/event_priority.h\"
          "},{"location":"reference/cpp/handler__list_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/handler__list_8h/#classes","title":"Classes","text":"Type Name class HandlerList A list of event handlers. Should be instantiated on a per-event basis.

          The documentation for this class was generated from the following file include/endstone/event/handler_list.h

          "},{"location":"reference/cpp/handler__list_8h_source/","title":"File handler_list.h","text":"

          File List > endstone > event > handler_list.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <map>\n#include <mutex>\n#include <string>\n#include <utility>\n#include <vector>\n\n#include \"endstone/event/event_handler.h\"\n#include \"endstone/event/event_priority.h\"\n\nnamespace endstone {\n\nclass HandlerList {\npublic:\n    explicit HandlerList(std::string event) : event_(std::move(event)) {}\n\n    EventHandler *registerHandler(std::unique_ptr<EventHandler> handler)\n    {\n        if (handler->getEventType() != event_) {\n            return nullptr;\n        }\n\n        std::lock_guard lock(mtx_);\n        valid_ = false;\n        auto &vector =\n            handlers_.emplace(handler->getPriority(), std::vector<std::unique_ptr<EventHandler>>{}).first->second;\n        auto &it = vector.emplace_back(std::move(handler));\n        return it.get();\n    }\n\n    void unregister(const EventHandler &handler)\n    {\n        std::lock_guard lock(mtx_);\n        auto &vector =\n            handlers_.emplace(handler.getPriority(), std::vector<std::unique_ptr<EventHandler>>{}).first->second;\n        const auto it = std::find_if(vector.begin(), vector.end(),\n                                     [&](const std::unique_ptr<EventHandler> &h) { return h.get() == &handler; });\n        if (it != vector.end()) {\n            valid_ = false;\n            vector.erase(it);\n        }\n    }\n\n    void unregister(const Plugin &plugin)\n    {\n        std::lock_guard lock(mtx_);\n        for (auto &[priority, vector] : handlers_) {\n            vector.erase(\n                std::remove_if(vector.begin(), vector.end(),\n                               [&](const std::unique_ptr<EventHandler> &h) { return &h->getPlugin() == &plugin; }),\n                vector.end());\n            valid_ = false;\n        }\n    }\n\n    std::vector<EventHandler *> getHandlers() const\n    {\n        std::lock_guard lock(mtx_);\n        if (!valid_) {\n            bake();\n        }\n        return baked_handlers_;\n    }\n\nprotected:\n    void bake() const\n    {\n        if (valid_) {\n            return;\n        }\n\n        baked_handlers_.clear();\n        for (const auto &[priority, vector] : handlers_) {\n            for (const auto &handler : vector) {\n                baked_handlers_.push_back(handler.get());\n            }\n        }\n        valid_ = true;\n    }\n\nprivate:\n    mutable std::mutex mtx_;\n    std::map<EventPriority, std::vector<std::unique_ptr<EventHandler>>> handlers_;\n    mutable std::vector<EventHandler *> baked_handlers_;\n    mutable bool valid_{false};\n    std::string event_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_621c26b5fd4198aba66e7e31570ce44a/","title":"Dir include/endstone/event/actor","text":"

          FileList > actor

          "},{"location":"reference/cpp/dir_621c26b5fd4198aba66e7e31570ce44a/#files","title":"Files","text":"Type Name file actor_death_event.h file actor_event.h file actor_knockback_event.h file actor_remove_event.h file actor_spawn_event.h file actor_teleport_event.h

          The documentation for this class was generated from the following file include/endstone/event/actor/

          "},{"location":"reference/cpp/actor__death__event_8h/","title":"File actor_death_event.h","text":"

          FileList > actor > actor_death_event.h

          Go to the source code of this file

          • #include \"endstone/event/actor/actor_event.h\"
          "},{"location":"reference/cpp/actor__death__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/actor__death__event_8h/#classes","title":"Classes","text":"Type Name class ActorDeathEvent Called when an Actor dies.

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_death_event.h

          "},{"location":"reference/cpp/actor__death__event_8h_source/","title":"File actor_death_event.h","text":"

          File List > actor > actor_death_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/actor/actor_event.h\"\n\nnamespace endstone {\n\nclass ActorDeathEvent : public ActorEvent {\npublic:\n    explicit ActorDeathEvent(Actor &actor) : ActorEvent(actor) {}\n    ~ActorDeathEvent() override = default;\n\n    inline static const std::string NAME = \"ActorDeathEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return false;\n    }\n\n    // TODO(event): add drops and dropExp\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/actor__event_8h/","title":"File actor_event.h","text":"

          FileList > actor > actor_event.h

          Go to the source code of this file

          • #include \"endstone/actor/actor.h\"
          • #include \"endstone/event/event.h\"
          "},{"location":"reference/cpp/actor__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/actor__event_8h/#classes","title":"Classes","text":"Type Name class ActorEvent Represents an Actor-related event.

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_event.h

          "},{"location":"reference/cpp/actor__event_8h_source/","title":"File actor_event.h","text":"

          File List > actor > actor_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/actor/actor.h\"\n#include \"endstone/event/event.h\"\n\nnamespace endstone {\n\nclass ActorEvent : public Event {\npublic:\n    explicit ActorEvent(Actor &actor) : actor_(actor){};\n    ~ActorEvent() override = default;\n\n    [[nodiscard]] Actor &getActor() const\n    {\n        return actor_;\n    }\n\n    // TODO(event): add getActorType method\n\nprivate:\n    Actor &actor_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/actor__knockback__event_8h/","title":"File actor_knockback_event.h","text":"

          FileList > actor > actor_knockback_event.h

          Go to the source code of this file

          • #include \"endstone/actor/mob.h\"
          • #include \"endstone/event/actor/actor_event.h\"
          "},{"location":"reference/cpp/actor__knockback__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/actor__knockback__event_8h/#classes","title":"Classes","text":"Type Name class ActorKnockbackEvent Called when a living entity receives knockback.

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_knockback_event.h

          "},{"location":"reference/cpp/actor__knockback__event_8h_source/","title":"File actor_knockback_event.h","text":"

          File List > actor > actor_knockback_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/actor/mob.h\"\n#include \"endstone/event/actor/actor_event.h\"\n\nnamespace endstone {\n\nclass ActorKnockbackEvent : public ActorEvent {\npublic:\n    explicit ActorKnockbackEvent(Mob &mob, Actor *source, Vector<float> knockback)\n        : ActorEvent(mob), mob_(mob), source_(source), knockback_(knockback)\n    {\n    }\n    ~ActorKnockbackEvent() override = default;\n\n    inline static const std::string NAME = \"ActorKnockbackEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] Mob &getActor() const\n    {\n        return mob_;\n    }\n\n    [[nodiscard]] Actor *getSource() const\n    {\n        return source_;\n    }\n\n    [[nodiscard]] Vector<float> getKnockback() const\n    {\n        return knockback_;\n    }\n\n    void setKnockback(Vector<float> knockback)\n    {\n        knockback_ = knockback;\n    }\n\nprivate:\n    Mob &mob_;\n    Actor *source_;\n    Vector<float> raw_knockback_;\n    Vector<float> knockback_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/actor__remove__event_8h/","title":"File actor_remove_event.h","text":"

          FileList > actor > actor_remove_event.h

          Go to the source code of this file

          • #include \"endstone/event/actor/actor_event.h\"
          "},{"location":"reference/cpp/actor__remove__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/actor__remove__event_8h/#classes","title":"Classes","text":"Type Name class ActorRemoveEvent Called when an Actor is removed.

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_remove_event.h

          "},{"location":"reference/cpp/actor__remove__event_8h_source/","title":"File actor_remove_event.h","text":"

          File List > actor > actor_remove_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/actor/actor_event.h\"\n\nnamespace endstone {\n\nclass ActorRemoveEvent : public ActorEvent {\npublic:\n    explicit ActorRemoveEvent(Actor &actor) : ActorEvent(actor) {}\n    ~ActorRemoveEvent() override = default;\n\n    inline static const std::string NAME = \"ActorRemoveEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return false;\n    }\n\n    // TODO(event): add remove cause\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/actor__spawn__event_8h/","title":"File actor_spawn_event.h","text":"

          FileList > actor > actor_spawn_event.h

          Go to the source code of this file

          • #include \"endstone/event/actor/actor_event.h\"
          "},{"location":"reference/cpp/actor__spawn__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/actor__spawn__event_8h/#classes","title":"Classes","text":"Type Name class ActorSpawnEvent Called when an Actor is spawned into a world.

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_spawn_event.h

          "},{"location":"reference/cpp/actor__spawn__event_8h_source/","title":"File actor_spawn_event.h","text":"

          File List > actor > actor_spawn_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/actor/actor_event.h\"\n\nnamespace endstone {\n\nclass ActorSpawnEvent : public ActorEvent {\npublic:\n    explicit ActorSpawnEvent(Actor &actor) : ActorEvent(actor) {}\n    ~ActorSpawnEvent() override = default;\n\n    inline static const std::string NAME = \"ActorSpawnEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    // TODO(event): add spawn cause\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/actor__teleport__event_8h/","title":"File actor_teleport_event.h","text":"

          FileList > actor > actor_teleport_event.h

          Go to the source code of this file

          • #include \"endstone/event/actor/actor_event.h\"
          • #include \"endstone/level/location.h\"
          "},{"location":"reference/cpp/actor__teleport__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/actor__teleport__event_8h/#classes","title":"Classes","text":"Type Name class ActorTeleportEvent Called when a non-player entity is teleported from one location to another.

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_teleport_event.h

          "},{"location":"reference/cpp/actor__teleport__event_8h_source/","title":"File actor_teleport_event.h","text":"

          File List > actor > actor_teleport_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/actor/actor_event.h\"\n#include \"endstone/level/location.h\"\n\nnamespace endstone {\n\nclass ActorTeleportEvent : public ActorEvent {\npublic:\n    explicit ActorTeleportEvent(Actor &actor, Location from, Location to) : ActorEvent(actor), from_(from), to_(to) {}\n    ~ActorTeleportEvent() override = default;\n\n    inline static const std::string NAME = \"ActorTeleportEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] const Location &getFrom() const\n    {\n        return from_;\n    }\n\n    void setFrom(const Location &from)\n    {\n        from_ = from;\n    }\n\n    [[nodiscard]] const Location &getTo() const\n    {\n        return to_;\n    }\n\n    void setTo(const Location &to)\n    {\n        to_ = to;\n    }\n\nprivate:\n    Location from_;\n    Location to_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_992e9ad7dc69726476903ba283e33c71/","title":"Dir include/endstone/event/block","text":"

          FileList > block

          "},{"location":"reference/cpp/dir_992e9ad7dc69726476903ba283e33c71/#files","title":"Files","text":"Type Name file block_break_event.h file block_event.h file block_place_event.h

          The documentation for this class was generated from the following file include/endstone/event/block/

          "},{"location":"reference/cpp/block__break__event_8h/","title":"File block_break_event.h","text":"

          FileList > block > block_break_event.h

          Go to the source code of this file

          • #include \"endstone/event/block/block_event.h\"
          • #include \"endstone/player.h\"
          "},{"location":"reference/cpp/block__break__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/block__break__event_8h/#classes","title":"Classes","text":"Type Name class BlockBreakEvent Called when a block is broken by a player.

          The documentation for this class was generated from the following file include/endstone/event/block/block_break_event.h

          "},{"location":"reference/cpp/block__break__event_8h_source/","title":"File block_break_event.h","text":"

          File List > block > block_break_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/block/block_event.h\"\n#include \"endstone/player.h\"\n\nnamespace endstone {\n\nclass BlockBreakEvent : public BlockEvent {\npublic:\n    explicit BlockBreakEvent(Block &block, Player &player) : BlockEvent(block), player_(player) {}\n    ~BlockBreakEvent() override = default;\n\n    inline static const std::string NAME = \"BlockBreakEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] Player &getPlayer() const\n    {\n        return player_;\n    }\n\nprivate:\n    Player &player_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/block__event_8h/","title":"File block_event.h","text":"

          FileList > block > block_event.h

          Go to the source code of this file

          • #include \"endstone/block/block.h\"
          • #include \"endstone/event/event.h\"
          "},{"location":"reference/cpp/block__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/block__event_8h/#classes","title":"Classes","text":"Type Name class BlockEvent Represents an Block-related event.

          The documentation for this class was generated from the following file include/endstone/event/block/block_event.h

          "},{"location":"reference/cpp/block__event_8h_source/","title":"File block_event.h","text":"

          File List > block > block_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/block/block.h\"\n#include \"endstone/event/event.h\"\n\nnamespace endstone {\n\nclass BlockEvent : public Event {\npublic:\n    explicit BlockEvent(Block &block) : block_(block){};\n    ~BlockEvent() override = default;\n\n    [[nodiscard]] Block &getBlock() const\n    {\n        return block_;\n    }\n\nprivate:\n    Block &block_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/block__place__event_8h/","title":"File block_place_event.h","text":"

          FileList > block > block_place_event.h

          Go to the source code of this file

          • #include \"endstone/block/block_state.h\"
          • #include \"endstone/event/block/block_event.h\"
          • #include \"endstone/player.h\"
          "},{"location":"reference/cpp/block__place__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/block__place__event_8h/#classes","title":"Classes","text":"Type Name class BlockPlaceEvent Called when a block is placed by a player.

          The documentation for this class was generated from the following file include/endstone/event/block/block_place_event.h

          "},{"location":"reference/cpp/block__place__event_8h_source/","title":"File block_place_event.h","text":"

          File List > block > block_place_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/block/block_state.h\"\n#include \"endstone/event/block/block_event.h\"\n#include \"endstone/player.h\"\n\nnamespace endstone {\n\nclass BlockPlaceEvent : public BlockEvent {\npublic:\n    explicit BlockPlaceEvent(std::unique_ptr<BlockState> placed_block, Block &replaced_block, Block &placed_against,\n                             Player &player)\n        : BlockEvent(replaced_block), placed_block_(std::move(placed_block)), placed_against_(placed_against),\n          player_(player)\n    {\n    }\n    ~BlockPlaceEvent() override = default;\n\n    inline static const std::string NAME = \"BlockPlaceEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] Player &getPlayer() const\n    {\n        return player_;\n    }\n\n    [[nodiscard]] BlockState &getBlockPlacedState() const\n    {\n        return *placed_block_;\n    }\n\n    [[nodiscard]] Block &getBlockReplaced() const\n    {\n        return getBlock();\n    }\n\n    [[nodiscard]] Block &getBlockAgainst() const\n    {\n        return placed_against_;\n    }\n\nprivate:\n    std::unique_ptr<BlockState> placed_block_;\n    Block &placed_against_;\n    Player &player_;\n    // TODO(event): add ItemStack item\n    // TODO(event): add BlockState placedBlockState\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_7c05c37b25e9c9eccd9c63c2d313ba28/","title":"Dir include/endstone/event/player","text":"

          FileList > endstone > event > player

          "},{"location":"reference/cpp/dir_7c05c37b25e9c9eccd9c63c2d313ba28/#files","title":"Files","text":"Type Name file player_chat_event.h file player_command_event.h file player_death_event.h file player_event.h file player_interact_actor_event.h file player_interact_event.h file player_join_event.h file player_kick_event.h file player_login_event.h file player_quit_event.h file player_teleport_event.h

          The documentation for this class was generated from the following file include/endstone/event/player/

          "},{"location":"reference/cpp/player__chat__event_8h/","title":"File player_chat_event.h","text":"

          FileList > endstone > event > player > player_chat_event.h

          Go to the source code of this file

          • #include \"endstone/event/player/player_event.h\"
          "},{"location":"reference/cpp/player__chat__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__chat__event_8h/#classes","title":"Classes","text":"Type Name class PlayerChatEvent Called when a player sends a chat message.

          The documentation for this class was generated from the following file include/endstone/event/player/player_chat_event.h

          "},{"location":"reference/cpp/player__chat__event_8h_source/","title":"File player_chat_event.h","text":"

          File List > endstone > event > player > player_chat_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/player/player_event.h\"\n\nnamespace endstone {\n\nclass PlayerChatEvent : public PlayerEvent {\npublic:\n    explicit PlayerChatEvent(Player &player, std::string message) : PlayerEvent(player), message_(std::move(message)) {}\n    ~PlayerChatEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerChatEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] std::string getMessage() const\n    {\n        return message_;\n    }\n\n    void setMessage(std::string message)\n    {\n        message_ = std::move(message);\n    }\n\nprivate:\n    std::string message_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__command__event_8h/","title":"File player_command_event.h","text":"

          FileList > endstone > event > player > player_command_event.h

          Go to the source code of this file

          • #include \"endstone/event/player/player_event.h\"
          "},{"location":"reference/cpp/player__command__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__command__event_8h/#classes","title":"Classes","text":"Type Name class PlayerCommandEvent Called whenever a player runs a command.

          The documentation for this class was generated from the following file include/endstone/event/player/player_command_event.h

          "},{"location":"reference/cpp/player__command__event_8h_source/","title":"File player_command_event.h","text":"

          File List > endstone > event > player > player_command_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/player/player_event.h\"\n\nnamespace endstone {\n\nclass PlayerCommandEvent : public PlayerEvent {\npublic:\n    explicit PlayerCommandEvent(Player &player, std::string command) : PlayerEvent(player), command_(std::move(command))\n    {\n    }\n    ~PlayerCommandEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerCommandEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] std::string getCommand() const\n    {\n        return command_;\n    }\n\n    void setCommand(std::string command)\n    {\n        command_ = std::move(command);\n    }\n\nprivate:\n    std::string command_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__death__event_8h/","title":"File player_death_event.h","text":"

          FileList > endstone > event > player > player_death_event.h

          Go to the source code of this file

          • #include \"endstone/event/actor/actor_death_event.h\"
          • #include \"endstone/event/player/player_event.h\"
          "},{"location":"reference/cpp/player__death__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__death__event_8h/#classes","title":"Classes","text":"Type Name class PlayerDeathEvent Called when a Player dies.

          The documentation for this class was generated from the following file include/endstone/event/player/player_death_event.h

          "},{"location":"reference/cpp/player__death__event_8h_source/","title":"File player_death_event.h","text":"

          File List > endstone > event > player > player_death_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/actor/actor_death_event.h\"\n#include \"endstone/event/player/player_event.h\"\n\nnamespace endstone {\n\nclass PlayerDeathEvent : public ActorDeathEvent, public PlayerEvent {\npublic:\n    explicit PlayerDeathEvent(Player &player, std::string death_message)\n        : ActorDeathEvent(player), PlayerEvent(player), death_message_(std::move(death_message))\n    {\n    }\n    ~PlayerDeathEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerDeathEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return false;\n    }\n\n    [[nodiscard]] const std::string &getDeathMessage() const\n    {\n        return death_message_;\n    }\n\n    void setDeathMessage(const std::string &death_message)\n    {\n        death_message_ = death_message;\n    }\n\nprivate:\n    std::string death_message_;\n\n    // TODO(event): new exp, new level, new total exp, keep level, keep inventory\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__event_8h/","title":"File player_event.h","text":"

          FileList > endstone > event > player > player_event.h

          Go to the source code of this file

          • #include \"endstone/event/event.h\"
          • #include \"endstone/player.h\"
          "},{"location":"reference/cpp/player__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__event_8h/#classes","title":"Classes","text":"Type Name class PlayerEvent Represents a player related event.

          The documentation for this class was generated from the following file include/endstone/event/player/player_event.h

          "},{"location":"reference/cpp/player__event_8h_source/","title":"File player_event.h","text":"

          File List > endstone > event > player > player_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/event.h\"\n#include \"endstone/player.h\"\n\nnamespace endstone {\n\nclass PlayerEvent : public Event {\npublic:\n    explicit PlayerEvent(Player &player) : player_(player){};\n    ~PlayerEvent() override = default;\n\n    [[nodiscard]] Player &getPlayer() const\n    {\n        return player_;\n    }\n\nprivate:\n    Player &player_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__interact__actor__event_8h/","title":"File player_interact_actor_event.h","text":"

          FileList > endstone > event > player > player_interact_actor_event.h

          Go to the source code of this file

          • #include \"endstone/event/player/player_event.h\"
          "},{"location":"reference/cpp/player__interact__actor__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__interact__actor__event_8h/#classes","title":"Classes","text":"Type Name class PlayerInteractActorEvent Represents an event that is called when a player right-clicks an actor.

          The documentation for this class was generated from the following file include/endstone/event/player/player_interact_actor_event.h

          "},{"location":"reference/cpp/player__interact__actor__event_8h_source/","title":"File player_interact_actor_event.h","text":"

          File List > endstone > event > player > player_interact_actor_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/player/player_event.h\"\n\nnamespace endstone {\n\nclass PlayerInteractActorEvent : public PlayerEvent {\npublic:\n    explicit PlayerInteractActorEvent(Player &player, Actor &actor) : PlayerEvent(player), actor_(actor) {}\n    ~PlayerInteractActorEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerInteractActorEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] Actor &getActor() const\n    {\n        return actor_;\n    }\n\nprivate:\n    Actor &actor_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__interact__event_8h/","title":"File player_interact_event.h","text":"

          FileList > endstone > event > player > player_interact_event.h

          Go to the source code of this file

          • #include \"endstone/event/player/player_event.h\"
          • #include \"endstone/inventory/item_stack.h\"
          "},{"location":"reference/cpp/player__interact__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__interact__event_8h/#classes","title":"Classes","text":"Type Name class PlayerInteractEvent Represents an event that is called when a player right-clicks a block.

          The documentation for this class was generated from the following file include/endstone/event/player/player_interact_event.h

          "},{"location":"reference/cpp/player__interact__event_8h_source/","title":"File player_interact_event.h","text":"

          File List > endstone > event > player > player_interact_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/player/player_event.h\"\n#include \"endstone/inventory/item_stack.h\"\n\nnamespace endstone {\n\nclass PlayerInteractEvent : public PlayerEvent {\npublic:\n    PlayerInteractEvent(Player &player, std::unique_ptr<ItemStack> item, std::unique_ptr<Block> block_clicked,\n                        BlockFace block_face, const Vector<float> &clicked_position)\n        : PlayerEvent(player), item_(std::move(item)), block_clicked_(std::move(block_clicked)),\n          block_face_(block_face), clicked_position_(clicked_position)\n    {\n    }\n    ~PlayerInteractEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerInteractEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] bool hasItem() const\n    {\n        return item_ != nullptr;\n    }\n\n    [[nodiscard]] ItemStack *getItem() const\n    {\n        return item_.get();\n    }\n\n    [[nodiscard]] bool hasBlock() const\n    {\n        return block_clicked_ != nullptr;\n    }\n\n    [[nodiscard]] Block *getBlock() const\n    {\n        return block_clicked_.get();\n    }\n\n    [[nodiscard]] BlockFace getBlockFace() const\n    {\n        return block_face_;\n    }\n\n    [[nodiscard]] Vector<float> getClickedPosition() const\n    {\n        return clicked_position_;\n    }\n\nprivate:\n    std::unique_ptr<ItemStack> item_;\n    std::unique_ptr<Block> block_clicked_;\n    BlockFace block_face_;\n    Vector<float> clicked_position_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__join__event_8h/","title":"File player_join_event.h","text":"

          FileList > endstone > event > player > player_join_event.h

          Go to the source code of this file

          • #include \"endstone/event/player/player_event.h\"
          "},{"location":"reference/cpp/player__join__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__join__event_8h/#classes","title":"Classes","text":"Type Name class PlayerJoinEvent Called when a player joins a server.

          The documentation for this class was generated from the following file include/endstone/event/player/player_join_event.h

          "},{"location":"reference/cpp/player__join__event_8h_source/","title":"File player_join_event.h","text":"

          File List > endstone > event > player > player_join_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/player/player_event.h\"\n\nnamespace endstone {\n\nclass PlayerJoinEvent : public PlayerEvent {\npublic:\n    explicit PlayerJoinEvent(Player &player, std::string join_message)\n        : PlayerEvent(player), join_message_(std::move(join_message))\n    {\n    }\n    ~PlayerJoinEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerJoinEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return false;\n    }\n\n    [[nodiscard]] std::string getJoinMessage() const\n    {\n        return join_message_;\n    }\n\n    void setJoinMessage(std::string message)\n    {\n        join_message_ = std::move(message);\n    }\n\nprivate:\n    std::string join_message_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__kick__event_8h/","title":"File player_kick_event.h","text":"

          FileList > endstone > event > player > player_kick_event.h

          Go to the source code of this file

          • #include <string>
          • #include <utility>
          • #include \"endstone/event/player/player_event.h\"
          "},{"location":"reference/cpp/player__kick__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__kick__event_8h/#classes","title":"Classes","text":"Type Name class PlayerKickEvent Called when a player gets kicked from the server.

          The documentation for this class was generated from the following file include/endstone/event/player/player_kick_event.h

          "},{"location":"reference/cpp/player__kick__event_8h_source/","title":"File player_kick_event.h","text":"

          File List > endstone > event > player > player_kick_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <utility>\n\n#include \"endstone/event/player/player_event.h\"\n\nnamespace endstone {\n\nclass PlayerKickEvent : public PlayerEvent {\npublic:\n    explicit PlayerKickEvent(Player &player, std::string reason) : PlayerEvent(player), reason_(std::move(reason)) {}\n    ~PlayerKickEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerKickEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] std::string getReason() const\n    {\n        return reason_;\n    }\n\n    void setReason(std::string reason)\n    {\n        reason_ = std::move(reason);\n    }\n\nprivate:\n    std::string reason_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__login__event_8h/","title":"File player_login_event.h","text":"

          FileList > endstone > event > player > player_login_event.h

          Go to the source code of this file

          • #include \"endstone/event/player/player_event.h\"
          "},{"location":"reference/cpp/player__login__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__login__event_8h/#classes","title":"Classes","text":"Type Name class PlayerLoginEvent Called when a player attempts to login in.

          The documentation for this class was generated from the following file include/endstone/event/player/player_login_event.h

          "},{"location":"reference/cpp/player__login__event_8h_source/","title":"File player_login_event.h","text":"

          File List > endstone > event > player > player_login_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/player/player_event.h\"\n\nnamespace endstone {\n\nclass PlayerLoginEvent : public PlayerEvent {\npublic:\n    explicit PlayerLoginEvent(Player &player, std::string message = \"\")\n        : PlayerEvent(player), message_(std::move(message))\n    {\n    }\n    ~PlayerLoginEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerLoginEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] const std::string &getKickMessage() const\n    {\n        return message_;\n    }\n\n    void setKickMessage(const std::string &message)\n    {\n        message_ = message;\n    }\n\nprivate:\n    std::string message_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__quit__event_8h/","title":"File player_quit_event.h","text":"

          FileList > endstone > event > player > player_quit_event.h

          Go to the source code of this file

          • #include \"endstone/event/player/player_event.h\"
          "},{"location":"reference/cpp/player__quit__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__quit__event_8h/#classes","title":"Classes","text":"Type Name class PlayerQuitEvent Called when a player leaves a server.

          The documentation for this class was generated from the following file include/endstone/event/player/player_quit_event.h

          "},{"location":"reference/cpp/player__quit__event_8h_source/","title":"File player_quit_event.h","text":"

          File List > endstone > event > player > player_quit_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/player/player_event.h\"\n\nnamespace endstone {\n\nclass PlayerQuitEvent : public PlayerEvent {\npublic:\n    explicit PlayerQuitEvent(Player &player, std::string quit_message)\n        : PlayerEvent(player), quit_message_(std::move(quit_message))\n    {\n    }\n    ~PlayerQuitEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerQuitEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return false;\n    }\n\n    [[nodiscard]] std::string getQuitMessage() const\n    {\n        return quit_message_;\n    }\n\n    void setQuitMessage(std::string message)\n    {\n        quit_message_ = std::move(message);\n    }\n\nprivate:\n    std::string quit_message_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__teleport__event_8h/","title":"File player_teleport_event.h","text":"

          FileList > endstone > event > player > player_teleport_event.h

          Go to the source code of this file

          • #include \"endstone/event/player/player_event.h\"
          • #include \"endstone/level/location.h\"
          "},{"location":"reference/cpp/player__teleport__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__teleport__event_8h/#classes","title":"Classes","text":"Type Name class PlayerTeleportEvent Called when a player is teleported from one location to another.

          The documentation for this class was generated from the following file include/endstone/event/player/player_teleport_event.h

          "},{"location":"reference/cpp/player__teleport__event_8h_source/","title":"File player_teleport_event.h","text":"

          File List > endstone > event > player > player_teleport_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/player/player_event.h\"\n#include \"endstone/level/location.h\"\n\nnamespace endstone {\n\nclass PlayerTeleportEvent : public PlayerEvent {\npublic:\n    explicit PlayerTeleportEvent(Player &player, Location from, Location to) : PlayerEvent(player), from_(from), to_(to)\n    {\n    }\n    ~PlayerTeleportEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerTeleportEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] const Location &getFrom() const\n    {\n        return from_;\n    }\n\n    void setFrom(const Location &from)\n    {\n        from_ = from;\n    }\n\n    [[nodiscard]] const Location &getTo() const\n    {\n        return to_;\n    }\n\n    void setTo(const Location &to)\n    {\n        to_ = to;\n    }\n\nprivate:\n    Location from_;\n    Location to_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_77022909323d5ad872c4820a738a5429/","title":"Dir include/endstone/event/server","text":"

          FileList > endstone > event > server

          "},{"location":"reference/cpp/dir_77022909323d5ad872c4820a738a5429/#files","title":"Files","text":"Type Name file broadcast_message_event.h file plugin_disable_event.h file plugin_enable_event.h file script_message_event.h file server_command_event.h file server_event.h file server_list_ping_event.h file server_load_event.h

          The documentation for this class was generated from the following file include/endstone/event/server/

          "},{"location":"reference/cpp/broadcast__message__event_8h/","title":"File broadcast_message_event.h","text":"

          FileList > endstone > event > server > broadcast_message_event.h

          Go to the source code of this file

          • #include <string>
          • #include <utility>
          • #include \"endstone/command/command_sender.h\"
          • #include \"endstone/event/event.h\"
          • #include \"endstone/event/handler_list.h\"
          • #include \"endstone/event/server/server_event.h\"
          "},{"location":"reference/cpp/broadcast__message__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/broadcast__message__event_8h/#classes","title":"Classes","text":"Type Name class BroadcastMessageEvent Event triggered for server broadcast messages such as fromServer::broadcast .

          The documentation for this class was generated from the following file include/endstone/event/server/broadcast_message_event.h

          "},{"location":"reference/cpp/broadcast__message__event_8h_source/","title":"File broadcast_message_event.h","text":"

          File List > endstone > event > server > broadcast_message_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <utility>\n\n#include \"endstone/command/command_sender.h\"\n#include \"endstone/event/event.h\"\n#include \"endstone/event/handler_list.h\"\n#include \"endstone/event/server/server_event.h\"\n\nnamespace endstone {\n\nclass BroadcastMessageEvent : public ServerEvent {\npublic:\n    BroadcastMessageEvent(bool async, std::string message, std::unordered_set<const CommandSender *> recipients)\n        : ServerEvent(async), message_(std::move(message)), recipients_(std::move(recipients))\n    {\n    }\n\n    inline static const std::string NAME = \"BroadcastMessageEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] const std::string &getMessage() const\n    {\n        return message_;\n    }\n\n    void setMessage(std::string message)\n    {\n        message_ = std::move(message);\n    }\n\n    [[nodiscard]] const std::unordered_set<const CommandSender *> &getRecipients() const\n    {\n        return recipients_;\n    }\n\nprivate:\n    std::string message_;\n    std::unordered_set<const CommandSender *> recipients_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/plugin__disable__event_8h/","title":"File plugin_disable_event.h","text":"

          FileList > endstone > event > server > plugin_disable_event.h

          Go to the source code of this file

          • #include \"endstone/event/event.h\"
          • #include \"endstone/event/server/server_event.h\"
          • #include \"endstone/plugin/plugin.h\"
          "},{"location":"reference/cpp/plugin__disable__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/plugin__disable__event_8h/#classes","title":"Classes","text":"Type Name class PluginDisableEvent Called when a plugin is disabled.

          The documentation for this class was generated from the following file include/endstone/event/server/plugin_disable_event.h

          "},{"location":"reference/cpp/plugin__disable__event_8h_source/","title":"File plugin_disable_event.h","text":"

          File List > endstone > event > server > plugin_disable_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/event.h\"\n#include \"endstone/event/server/server_event.h\"\n#include \"endstone/plugin/plugin.h\"\n\nnamespace endstone {\n\nclass PluginDisableEvent : public ServerEvent {\npublic:\n    explicit PluginDisableEvent(Plugin &plugin) : plugin_(plugin) {}\n\n    [[nodiscard]] Plugin &getPlugin() const\n    {\n        return plugin_;\n    }\n\n    inline static const std::string NAME = \"PluginDisableEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return false;\n    }\n\nprivate:\n    Plugin &plugin_;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/plugin__enable__event_8h/","title":"File plugin_enable_event.h","text":"

          FileList > endstone > event > server > plugin_enable_event.h

          Go to the source code of this file

          • #include \"endstone/event/event.h\"
          • #include \"endstone/event/server/server_event.h\"
          • #include \"endstone/plugin/plugin.h\"
          "},{"location":"reference/cpp/plugin__enable__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/plugin__enable__event_8h/#classes","title":"Classes","text":"Type Name class PluginEnableEvent Called when a plugin is enabled.

          The documentation for this class was generated from the following file include/endstone/event/server/plugin_enable_event.h

          "},{"location":"reference/cpp/plugin__enable__event_8h_source/","title":"File plugin_enable_event.h","text":"

          File List > endstone > event > server > plugin_enable_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/event.h\"\n#include \"endstone/event/server/server_event.h\"\n#include \"endstone/plugin/plugin.h\"\n\nnamespace endstone {\n\nclass PluginEnableEvent : public ServerEvent {\npublic:\n    explicit PluginEnableEvent(Plugin &plugin) : plugin_(plugin) {}\n\n    [[nodiscard]] Plugin &getPlugin() const\n    {\n        return plugin_;\n    }\n\n    inline static const std::string NAME = \"PluginEnableEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return false;\n    }\n\nprivate:\n    Plugin &plugin_;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/script__message__event_8h/","title":"File script_message_event.h","text":"

          FileList > endstone > event > server > script_message_event.h

          Go to the source code of this file

          • #include \"endstone/event/server/server_event.h\"
          "},{"location":"reference/cpp/script__message__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/script__message__event_8h/#classes","title":"Classes","text":"Type Name class ScriptMessageEvent Called when a message is sent by /scriptevent command.

          The documentation for this class was generated from the following file include/endstone/event/server/script_message_event.h

          "},{"location":"reference/cpp/script__message__event_8h_source/","title":"File script_message_event.h","text":"

          File List > endstone > event > server > script_message_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/server/server_event.h\"\n\nnamespace endstone {\n\nclass ScriptMessageEvent : public ServerEvent {\npublic:\n    ScriptMessageEvent(std::string message_id, std::string message, const CommandSender &sender)\n        : ServerEvent(false), message_id_(std::move(message_id)), message_(std::move(message)), sender_(sender)\n    {\n    }\n\n    inline static const std::string NAME = \"ScriptMessageEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] const std::string &getMessageId() const\n    {\n        return message_id_;\n    }\n\n    [[nodiscard]] const std::string &getMessage() const\n    {\n        return message_;\n    }\n\n    [[nodiscard]] const CommandSender &getSender() const\n    {\n        return sender_;\n    }\n\nprivate:\n    std::string message_id_;\n    std::string message_;\n    const CommandSender &sender_;\n};\n\n};  // namespace endstone\n
          "},{"location":"reference/cpp/server__command__event_8h/","title":"File server_command_event.h","text":"

          FileList > endstone > event > server > server_command_event.h

          Go to the source code of this file

          • #include <string>
          • #include \"endstone/command/command_sender.h\"
          • #include \"endstone/event/event.h\"
          • #include \"endstone/event/handler_list.h\"
          • #include \"endstone/event/server/server_event.h\"
          "},{"location":"reference/cpp/server__command__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/server__command__event_8h/#classes","title":"Classes","text":"Type Name class ServerCommandEvent Called when the console runs a command, early in the process.

          The documentation for this class was generated from the following file include/endstone/event/server/server_command_event.h

          "},{"location":"reference/cpp/server__command__event_8h_source/","title":"File server_command_event.h","text":"

          File List > endstone > event > server > server_command_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n\n#include \"endstone/command/command_sender.h\"\n#include \"endstone/event/event.h\"\n#include \"endstone/event/handler_list.h\"\n#include \"endstone/event/server/server_event.h\"\n\nnamespace endstone {\n\nclass ServerCommandEvent : public ServerEvent {\npublic:\n    ServerCommandEvent(CommandSender &sender, std::string command) : sender_(sender), command_(std::move(command)) {}\n\n    inline static const std::string NAME = \"ServerCommandEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] std::string getCommand() const\n    {\n        return command_;\n    }\n\n    void setCommand(std::string message)\n    {\n        command_ = std::move(message);\n    }\n\n    [[nodiscard]] CommandSender &getSender() const\n    {\n        return sender_;\n    }\n\nprivate:\n    CommandSender &sender_;\n    std::string command_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/server__event_8h/","title":"File server_event.h","text":"

          FileList > endstone > event > server > server_event.h

          Go to the source code of this file

          • #include \"endstone/actor/actor.h\"
          • #include \"endstone/event/event.h\"
          "},{"location":"reference/cpp/server__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/server__event_8h/#classes","title":"Classes","text":"Type Name class ServerEvent Represents an Server-related event.

          The documentation for this class was generated from the following file include/endstone/event/server/server_event.h

          "},{"location":"reference/cpp/server__event_8h_source/","title":"File server_event.h","text":"

          File List > endstone > event > server > server_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/actor/actor.h\"\n#include \"endstone/event/event.h\"\n\nnamespace endstone {\n\nclass ServerEvent : public Event {\npublic:\n    using Event::Event;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/server__list__ping__event_8h/","title":"File server_list_ping_event.h","text":"

          FileList > endstone > event > server > server_list_ping_event.h

          Go to the source code of this file

          • #include <string>
          • #include <utility>
          • #include \"endstone/event/event.h\"
          • #include \"endstone/event/server/server_event.h\"
          • #include \"endstone/game_mode.h\"
          "},{"location":"reference/cpp/server__list__ping__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/server__list__ping__event_8h/#classes","title":"Classes","text":"Type Name class ServerListPingEvent Called when a server ping is coming in.

          The documentation for this class was generated from the following file include/endstone/event/server/server_list_ping_event.h

          "},{"location":"reference/cpp/server__list__ping__event_8h_source/","title":"File server_list_ping_event.h","text":"

          File List > endstone > event > server > server_list_ping_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <utility>\n\n#include \"endstone/event/event.h\"\n#include \"endstone/event/server/server_event.h\"\n#include \"endstone/game_mode.h\"\n\nnamespace endstone {\n\nclass ServerListPingEvent : public ServerEvent {\npublic:\n    ServerListPingEvent(std::string remote_host, int remote_port, std::string ping_response)\n        : ServerEvent(true), ping_response_(std::move(ping_response)), remote_host_(std::move(remote_host)),\n          remote_port_(remote_port)\n    {\n    }\n\n    [[nodiscard]] std::string getRemoteHost() const\n    {\n        return remote_host_;\n    }\n\n    [[nodiscard]] int getRemotePort() const\n    {\n        return remote_port_;\n    }\n\n    [[nodiscard]] std::string getServerGuid() const\n    {\n        return server_guid_;\n    }\n\n    [[nodiscard]] int getLocalPort() const\n    {\n        return local_port_;\n    }\n\n    [[nodiscard]] int getLocalPortV6() const\n    {\n        return local_port_v6_;\n    }\n\n    [[nodiscard]] std::string getMotd() const\n    {\n        return motd_;\n    }\n\n    void setMotd(std::string motd)\n    {\n        motd_ = std::move(motd);\n    }\n\n    [[nodiscard]] int getNetworkProtocolVersion() const\n    {\n        return network_protocol_version_;\n    }\n\n    [[nodiscard]] std::string getMinecraftVersionNetwork() const\n    {\n        return minecraft_version_network_;\n    }\n\n    void setMinecraftVersionNetwork(std::string minecraft_version_network)\n    {\n        minecraft_version_network_ = std::move(minecraft_version_network);\n    }\n\n    [[nodiscard]] int getNumPlayers() const\n    {\n        return num_players_;\n    }\n\n    void setNumPlayers(int num_players)\n    {\n        num_players_ = num_players;\n    }\n\n    [[nodiscard]] int getMaxPlayers() const\n    {\n        return max_players_;\n    }\n\n    void setMaxPlayers(int max_players)\n    {\n        max_players_ = max_players;\n    }\n\n    [[nodiscard]] std::string getLevelName() const\n    {\n        return level_name_;\n    }\n\n    void setLevelName(std::string level_name)\n    {\n        level_name_ = std::move(level_name);\n    }\n\n    [[nodiscard]] GameMode getGameMode() const\n    {\n        return game_mode_;\n    }\n\n    void setGameMode(GameMode game_mode)\n    {\n        game_mode_ = game_mode;\n    }\n\n    inline static const std::string NAME = \"ServerListPingEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return false;\n    }\n\n    bool deserialize();\n    std::string serialize();\n\nprivate:\n    std::string ping_response_;\n    std::string remote_host_;\n    int remote_port_;\n    std::string motd_;\n    int network_protocol_version_;\n    std::string minecraft_version_network_;\n    int num_players_;\n    int max_players_;\n    std::string server_guid_;\n    std::string level_name_;\n    GameMode game_mode_;\n    int local_port_;\n    int local_port_v6_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/server__load__event_8h/","title":"File server_load_event.h","text":"

          FileList > endstone > event > server > server_load_event.h

          Go to the source code of this file

          • #include <string>
          • #include \"endstone/command/command_sender.h\"
          • #include \"endstone/event/event.h\"
          • #include \"endstone/event/server/server_event.h\"
          "},{"location":"reference/cpp/server__load__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/server__load__event_8h/#classes","title":"Classes","text":"Type Name class ServerLoadEvent Called when either the server startup or reload has completed.

          The documentation for this class was generated from the following file include/endstone/event/server/server_load_event.h

          "},{"location":"reference/cpp/server__load__event_8h_source/","title":"File server_load_event.h","text":"

          File List > endstone > event > server > server_load_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n\n#include \"endstone/command/command_sender.h\"\n#include \"endstone/event/event.h\"\n#include \"endstone/event/server/server_event.h\"\n\nnamespace endstone {\n\nclass ServerLoadEvent : public ServerEvent {\npublic:\n    enum class LoadType {\n        Startup,\n        Reload\n    };\n\n    explicit ServerLoadEvent(LoadType type) : type_(type) {}\n\n    [[nodiscard]] LoadType getType() const\n    {\n        return type_;\n    }\n\n    inline static const std::string NAME = \"ServerLoadEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return false;\n    }\n\nprivate:\n    LoadType type_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_7fcf87d2683114df01ea446fea23c187/","title":"Dir include/endstone/event/weather","text":"

          FileList > endstone > event > weather

          "},{"location":"reference/cpp/dir_7fcf87d2683114df01ea446fea23c187/#files","title":"Files","text":"Type Name file thunder_change_event.h file weather_change_event.h file weather_event.h

          The documentation for this class was generated from the following file include/endstone/event/weather/

          "},{"location":"reference/cpp/thunder__change__event_8h/","title":"File thunder_change_event.h","text":"

          FileList > endstone > event > weather > thunder_change_event.h

          Go to the source code of this file

          • #include \"endstone/event/weather/weather_event.h\"
          "},{"location":"reference/cpp/thunder__change__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/thunder__change__event_8h/#classes","title":"Classes","text":"Type Name class ThunderChangeEvent Called when the thunder state in a world is changing.

          The documentation for this class was generated from the following file include/endstone/event/weather/thunder_change_event.h

          "},{"location":"reference/cpp/thunder__change__event_8h_source/","title":"File thunder_change_event.h","text":"

          File List > endstone > event > weather > thunder_change_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/weather/weather_event.h\"\n\nnamespace endstone {\n\nclass ThunderChangeEvent : public WeatherEvent {\npublic:\n    ThunderChangeEvent(Level &level, bool to) : WeatherEvent(level), to_(to) {}\n    ~ThunderChangeEvent() override = default;\n\n    [[nodiscard]] bool toThunderState() const\n    {\n        return to_;\n    }\n\n    inline static const std::string NAME = \"ThunderChangeEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\nprivate:\n    bool to_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/weather__change__event_8h/","title":"File weather_change_event.h","text":"

          FileList > endstone > event > weather > weather_change_event.h

          Go to the source code of this file

          • #include \"endstone/event/weather/weather_event.h\"
          "},{"location":"reference/cpp/weather__change__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/weather__change__event_8h/#classes","title":"Classes","text":"Type Name class WeatherChangeEvent Called when the weather (rain) state in a world is changing.

          The documentation for this class was generated from the following file include/endstone/event/weather/weather_change_event.h

          "},{"location":"reference/cpp/weather__change__event_8h_source/","title":"File weather_change_event.h","text":"

          File List > endstone > event > weather > weather_change_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/weather/weather_event.h\"\n\nnamespace endstone {\n\nclass WeatherChangeEvent : public WeatherEvent {\npublic:\n    WeatherChangeEvent(Level &level, bool to) : WeatherEvent(level), to_(to) {}\n    ~WeatherChangeEvent() override = default;\n\n    [[nodiscard]] bool toWeatherState() const\n    {\n        return to_;\n    }\n\n    inline static const std::string NAME = \"WeatherChangeEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\nprivate:\n    bool to_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/weather__event_8h/","title":"File weather_event.h","text":"

          FileList > endstone > event > weather > weather_event.h

          Go to the source code of this file

          • #include \"endstone/event/event.h\"
          • #include \"endstone/level/level.h\"
          "},{"location":"reference/cpp/weather__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/weather__event_8h/#classes","title":"Classes","text":"Type Name class WeatherEvent Represents a Weather-related event.

          The documentation for this class was generated from the following file include/endstone/event/weather/weather_event.h

          "},{"location":"reference/cpp/weather__event_8h_source/","title":"File weather_event.h","text":"

          File List > endstone > event > weather > weather_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/event.h\"\n#include \"endstone/level/level.h\"\n\nnamespace endstone {\n\nclass WeatherEvent : public Event {\npublic:\n    explicit WeatherEvent(Level &level) : level_(level){};\n    ~WeatherEvent() override = default;\n\n    [[nodiscard]] Level &getLevel() const\n    {\n        return level_;\n    }\n\nprivate:\n    Level &level_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_0fd3b458603af3963ebb9c312a9238ec/","title":"Dir include/endstone/form","text":"

          FileList > endstone > form

          "},{"location":"reference/cpp/dir_0fd3b458603af3963ebb9c312a9238ec/#files","title":"Files","text":"Type Name file action_form.h file form.h file message_form.h file modal_form.h"},{"location":"reference/cpp/dir_0fd3b458603af3963ebb9c312a9238ec/#directories","title":"Directories","text":"Type Name dir controls

          The documentation for this class was generated from the following file include/endstone/form/

          "},{"location":"reference/cpp/action__form_8h/","title":"File action_form.h","text":"

          FileList > endstone > form > action_form.h

          Go to the source code of this file

          • #include <optional>
          • #include <string>
          • #include \"endstone/form/form.h\"
          "},{"location":"reference/cpp/action__form_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/action__form_8h/#classes","title":"Classes","text":"Type Name class ActionForm Represents a form with buttons that let the player take action. class Button Represents a button with text and an optional icon.

          The documentation for this class was generated from the following file include/endstone/form/action_form.h

          "},{"location":"reference/cpp/action__form_8h_source/","title":"File action_form.h","text":"

          File List > endstone > form > action_form.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <optional>\n#include <string>\n\n#include \"endstone/form/form.h\"\n\nnamespace endstone {\n\nclass ActionForm : public Form<ActionForm> {\npublic:\n    class Button {\n    public:\n        using OnClickCallback = std::function<void(Player *)>;\n\n        Button() = default;\n        explicit Button(Message text, std::optional<std::string> icon = std::nullopt, OnClickCallback on_click = {})\n            : text_(std::move(text)), icon_(std::move(icon)), on_click_(std::move(on_click))\n        {\n        }\n\n        [[nodiscard]] Message getText() const\n        {\n            return text_;\n        }\n\n        Button &setText(Message text)\n        {\n            text_ = std::move(text);\n            return *this;\n        }\n\n        [[nodiscard]] std::optional<std::string> getIcon() const\n        {\n            return icon_;\n        }\n\n        Button &setIcon(std::string icon)\n        {\n            icon_ = std::move(icon);\n            return *this;\n        }\n\n        [[nodiscard]] OnClickCallback getOnClick() const\n        {\n            return on_click_;\n        }\n\n        Button &setOnClick(OnClickCallback on_click)\n        {\n            on_click_ = std::move(on_click);\n            return *this;\n        }\n\n    private:\n        Message text_;\n        std::optional<std::string> icon_;\n        OnClickCallback on_click_;\n    };\n\n    using OnSubmitCallback = std::function<void(Player *, int)>;\n\n    explicit ActionForm() = default;\n\n    [[nodiscard]] Message getContent() const\n    {\n        return content_;\n    }\n\n    ActionForm &setContent(Message text)\n    {\n        content_ = std::move(text);\n        return *this;\n    }\n\n    ActionForm &addButton(const Message &text, const std::optional<std::string> &icon = std::nullopt,\n                          Button::OnClickCallback on_click = {})\n    {\n        buttons_.emplace_back(text, icon, std::move(on_click));\n        return *this;\n    }\n\n    [[nodiscard]] const std::vector<Button> &getButtons() const\n    {\n        return buttons_;\n    }\n\n    ActionForm &setButtons(const std::vector<Button> &buttons)\n    {\n        buttons_ = buttons;\n        return *this;\n    }\n\n    [[nodiscard]] OnSubmitCallback getOnSubmit() const\n    {\n        return on_submit_;\n    }\n\n    ActionForm &setOnSubmit(OnSubmitCallback on_submit)\n    {\n        on_submit_ = std::move(on_submit);\n        return *this;\n    }\n\nprivate:\n    Message content_;\n    std::vector<Button> buttons_;\n    OnSubmitCallback on_submit_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/form_8h/","title":"File form.h","text":"

          FileList > endstone > form > form.h

          Go to the source code of this file

          • #include <functional>
          • #include \"endstone/message.h\"
          "},{"location":"reference/cpp/form_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/form_8h/#classes","title":"Classes","text":"Type Name class Form <typename T>Represents a generic form.

          The documentation for this class was generated from the following file include/endstone/form/form.h

          "},{"location":"reference/cpp/form_8h_source/","title":"File form.h","text":"

          File List > endstone > form > form.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <functional>\n\n#include \"endstone/message.h\"\n\nnamespace endstone {\n\nclass Player;\n\ntemplate <typename T>\nclass Form {\npublic:\n    using OnCloseCallback = std::function<void(Player *)>;\n    explicit Form() = default;\n\n    [[nodiscard]] Message getTitle() const\n    {\n        return title_;\n    }\n\n    T &setTitle(Message title)\n    {\n        title_ = std::move(title);\n        return *static_cast<T *>(this);\n    }\n\n    T &setOnClose(OnCloseCallback on_close)\n    {\n        on_close_ = std::move(on_close);\n        return *static_cast<T *>(this);\n    }\n\n    [[nodiscard]] OnCloseCallback getOnClose() const\n    {\n        return on_close_;\n    }\n\nprotected:\n    Message title_;\n    OnCloseCallback on_close_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_035306890ec6a3fa870e30b726ac5ffc/","title":"Dir include/endstone/form/controls","text":"

          FileList > controls

          "},{"location":"reference/cpp/dir_035306890ec6a3fa870e30b726ac5ffc/#files","title":"Files","text":"Type Name file dropdown.h file label.h file slider.h file step_slider.h file text_input.h file toggle.h

          The documentation for this class was generated from the following file include/endstone/form/controls/

          "},{"location":"reference/cpp/dropdown_8h/","title":"File dropdown.h","text":"

          FileList > controls > dropdown.h

          Go to the source code of this file

          • #include <optional>
          • #include <string>
          • #include <utility>
          • #include <vector>
          • #include \"endstone/message.h\"
          "},{"location":"reference/cpp/dropdown_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/dropdown_8h/#classes","title":"Classes","text":"Type Name class Dropdown Represents a dropdown with a set of predefined options.

          The documentation for this class was generated from the following file include/endstone/form/controls/dropdown.h

          "},{"location":"reference/cpp/dropdown_8h_source/","title":"File dropdown.h","text":"

          File List > controls > dropdown.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <optional>\n#include <string>\n#include <utility>\n#include <vector>\n\n#include \"endstone/message.h\"\n\nnamespace endstone {\n\nclass Dropdown {\npublic:\n    Dropdown() = default;\n    explicit Dropdown(Message label, std::vector<std::string> options, std::optional<int> default_index = std::nullopt)\n        : label_(std::move(label)), options_(std::move(options)), default_index_(default_index)\n    {\n    }\n\n    [[nodiscard]] Message getLabel() const\n    {\n        return label_;\n    }\n\n    Dropdown &setLabel(Message label)\n    {\n        label_ = std::move(label);\n        return *this;\n    }\n\n    Dropdown &addOption(const std::string &option)\n    {\n        options_.push_back(option);\n        return *this;\n    }\n\n    [[nodiscard]] std::vector<std::string> getOptions() const\n    {\n        return options_;\n    }\n\n    Dropdown &setOptions(std::vector<std::string> options)\n    {\n        options_ = std::move(options);\n        return *this;\n    }\n\n    [[nodiscard]] std::optional<int> getDefaultIndex() const\n    {\n        return default_index_;\n    }\n\n    Dropdown &setDefaultIndex(std::optional<int> default_index)\n    {\n        default_index_ = default_index;\n        return *this;\n    }\n\nprivate:\n    Message label_;\n    std::vector<std::string> options_;\n    std::optional<int> default_index_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/label_8h/","title":"File label.h","text":"

          FileList > controls > label.h

          Go to the source code of this file

          • #include <optional>
          • #include <string>
          • #include <utility>
          • #include \"endstone/message.h\"
          "},{"location":"reference/cpp/label_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/label_8h/#classes","title":"Classes","text":"Type Name class Label Represents a text label.

          The documentation for this class was generated from the following file include/endstone/form/controls/label.h

          "},{"location":"reference/cpp/label_8h_source/","title":"File label.h","text":"

          File List > controls > label.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <optional>\n#include <string>\n#include <utility>\n\n#include \"endstone/message.h\"\n\nnamespace endstone {\n\nclass Label {\npublic:\n    Label() = default;\n    explicit Label(Message text) : text_(std::move(text)) {}\n\n    [[nodiscard]] Message getText() const\n    {\n        return text_;\n    }\n\n    Label &setText(Message text)\n    {\n        text_ = std::move(text);\n        return *this;\n    }\n\nprivate:\n    Message text_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/slider_8h/","title":"File slider.h","text":"

          FileList > controls > slider.h

          Go to the source code of this file

          • #include <optional>
          • #include <string>
          • #include <utility>
          • #include \"endstone/message.h\"
          "},{"location":"reference/cpp/slider_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/slider_8h/#classes","title":"Classes","text":"Type Name class Slider Represents a slider with a label.

          The documentation for this class was generated from the following file include/endstone/form/controls/slider.h

          "},{"location":"reference/cpp/slider_8h_source/","title":"File slider.h","text":"

          File List > controls > slider.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <optional>\n#include <string>\n#include <utility>\n\n#include \"endstone/message.h\"\n\nnamespace endstone {\n\nclass Slider {\npublic:\n    Slider() = default;\n    explicit Slider(Message label, float min, float max, float step, std::optional<float> default_value = std::nullopt)\n        : label_(std::move(label)), min_(min), max_(max), step_(step), default_value_(default_value)\n    {\n    }\n\n    [[nodiscard]] Message getLabel() const\n    {\n        return label_;\n    }\n\n    Slider &setLabel(Message label)\n    {\n        label_ = std::move(label);\n        return *this;\n    }\n\n    [[nodiscard]] float getMin() const\n    {\n        return min_;\n    }\n\n    Slider &setMin(float min)\n    {\n        min_ = min;\n        return *this;\n    }\n\n    [[nodiscard]] float getMax() const\n    {\n        return max_;\n    }\n\n    Slider &setMax(float max)\n    {\n        max_ = max;\n        return *this;\n    }\n\n    [[nodiscard]] float getStep() const\n    {\n        return step_;\n    }\n\n    Slider &setStep(float step)\n    {\n        step_ = step;\n        return *this;\n    }\n\n    [[nodiscard]] std::optional<float> getDefaultValue() const\n    {\n        return default_value_;\n    }\n\n    Slider &setDefaultValue(std::optional<float> default_value)\n    {\n        default_value_ = default_value;\n        return *this;\n    }\n\nprivate:\n    Message label_;\n    float min_;\n    float max_;\n    float step_;\n    std::optional<float> default_value_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/step__slider_8h/","title":"File step_slider.h","text":"

          FileList > controls > step_slider.h

          Go to the source code of this file

          • #include \"endstone/form/controls/dropdown.h\"
          "},{"location":"reference/cpp/step__slider_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/step__slider_8h/#classes","title":"Classes","text":"Type Name class StepSlider Represents a step slider with a set of predefined options.

          The documentation for this class was generated from the following file include/endstone/form/controls/step_slider.h

          "},{"location":"reference/cpp/step__slider_8h_source/","title":"File step_slider.h","text":"

          File List > controls > step_slider.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/form/controls/dropdown.h\"\n\nnamespace endstone {\n\nclass StepSlider : public Dropdown {\npublic:\n    using Dropdown::Dropdown;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/text__input_8h/","title":"File text_input.h","text":"

          FileList > controls > text_input.h

          Go to the source code of this file

          • #include <optional>
          • #include <string>
          • #include <utility>
          • #include \"endstone/message.h\"
          "},{"location":"reference/cpp/text__input_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/text__input_8h/#classes","title":"Classes","text":"Type Name class TextInput Represents a text input field.

          The documentation for this class was generated from the following file include/endstone/form/controls/text_input.h

          "},{"location":"reference/cpp/text__input_8h_source/","title":"File text_input.h","text":"

          File List > controls > text_input.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <optional>\n#include <string>\n#include <utility>\n\n#include \"endstone/message.h\"\n\nnamespace endstone {\n\nclass TextInput {\npublic:\n    TextInput() = default;\n    explicit TextInput(Message label, Message placeholder, std::optional<std::string> default_text = std::nullopt)\n        : label_(std::move(label)), placeholder_(std::move(placeholder)), default_text_(std::move(default_text))\n    {\n    }\n\n    [[nodiscard]] Message getLabel() const\n    {\n        return label_;\n    }\n\n    TextInput &setLabel(Message label)\n    {\n        label_ = std::move(label);\n        return *this;\n    }\n\n    [[nodiscard]] Message getPlaceholder() const\n    {\n        return placeholder_;\n    }\n\n    TextInput &setPlaceholder(Message placeholder)\n    {\n        placeholder_ = std::move(placeholder);\n        return *this;\n    }\n\n    [[nodiscard]] std::optional<std::string> getDefaultValue() const\n    {\n        return default_text_;\n    }\n\n    TextInput &setDefaultValue(std::optional<std::string> text)\n    {\n        default_text_ = std::move(text);\n        return *this;\n    }\n\nprivate:\n    Message label_;\n    Message placeholder_;\n    std::optional<std::string> default_text_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/toggle_8h/","title":"File toggle.h","text":"

          FileList > controls > toggle.h

          Go to the source code of this file

          • #include <optional>
          • #include <string>
          • #include <utility>
          • #include \"endstone/message.h\"
          "},{"location":"reference/cpp/toggle_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/toggle_8h/#classes","title":"Classes","text":"Type Name class Toggle Represents a toggle button with a label.

          The documentation for this class was generated from the following file include/endstone/form/controls/toggle.h

          "},{"location":"reference/cpp/toggle_8h_source/","title":"File toggle.h","text":"

          File List > controls > toggle.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <optional>\n#include <string>\n#include <utility>\n\n#include \"endstone/message.h\"\n\nnamespace endstone {\n\nclass Toggle {\npublic:\n    Toggle() = default;\n    explicit Toggle(Message label, bool default_value = false) : label_(std::move(label)), default_value_(default_value)\n    {\n    }\n\n    [[nodiscard]] Message getLabel() const\n    {\n        return label_;\n    }\n\n    Toggle &setLabel(Message label)\n    {\n        label_ = std::move(label);\n        return *this;\n    }\n\n    [[nodiscard]] bool getDefaultValue() const\n    {\n        return default_value_;\n    }\n\n    Toggle &setDefaultValue(bool value)\n    {\n        default_value_ = value;\n        return *this;\n    }\n\nprivate:\n    Message label_;\n    bool default_value_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/message__form_8h/","title":"File message_form.h","text":"

          FileList > endstone > form > message_form.h

          Go to the source code of this file

          • #include <utility>
          • #include \"endstone/form/form.h\"
          "},{"location":"reference/cpp/message__form_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/message__form_8h/#classes","title":"Classes","text":"Type Name class MessageForm Represents a form with two buttons.

          The documentation for this class was generated from the following file include/endstone/form/message_form.h

          "},{"location":"reference/cpp/message__form_8h_source/","title":"File message_form.h","text":"

          File List > endstone > form > message_form.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <utility>\n\n#include \"endstone/form/form.h\"\n\nnamespace endstone {\n\nclass MessageForm : public Form<MessageForm> {\npublic:\n    using OnSubmitCallback = std::function<void(Player *, int)>;\n\n    [[nodiscard]] Message getContent() const\n    {\n        return content_;\n    }\n\n    MessageForm &setContent(Message text)\n    {\n        content_ = std::move(text);\n        return *this;\n    }\n\n    [[nodiscard]] Message getButton1() const\n    {\n        return button1_text_;\n    }\n\n    MessageForm &setButton1(Message text)\n    {\n        button1_text_ = std::move(text);\n        return *this;\n    }\n\n    [[nodiscard]] Message getButton2() const\n    {\n        return button2_text_;\n    }\n\n    MessageForm &setButton2(Message text)\n    {\n        button2_text_ = std::move(text);\n        return *this;\n    }\n\n    [[nodiscard]] OnSubmitCallback getOnSubmit() const\n    {\n        return on_submit_;\n    }\n\n    MessageForm &setOnSubmit(OnSubmitCallback on_submit)\n    {\n        on_submit_ = std::move(on_submit);\n        return *this;\n    }\n\nprivate:\n    Message content_;\n    Message button1_text_;\n    Message button2_text_;\n    OnSubmitCallback on_submit_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/modal__form_8h/","title":"File modal_form.h","text":"

          FileList > endstone > form > modal_form.h

          Go to the source code of this file

          • #include <optional>
          • #include <string>
          • #include <utility>
          • #include \"endstone/form/controls/dropdown.h\"
          • #include \"endstone/form/controls/label.h\"
          • #include \"endstone/form/controls/slider.h\"
          • #include \"endstone/form/controls/step_slider.h\"
          • #include \"endstone/form/controls/text_input.h\"
          • #include \"endstone/form/controls/toggle.h\"
          • #include \"endstone/form/form.h\"
          "},{"location":"reference/cpp/modal__form_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/modal__form_8h/#classes","title":"Classes","text":"Type Name class ModalForm Represents a modal form with controls.

          The documentation for this class was generated from the following file include/endstone/form/modal_form.h

          "},{"location":"reference/cpp/modal__form_8h_source/","title":"File modal_form.h","text":"

          File List > endstone > form > modal_form.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <optional>\n#include <string>\n#include <utility>\n\n#include \"endstone/form/controls/dropdown.h\"\n#include \"endstone/form/controls/label.h\"\n#include \"endstone/form/controls/slider.h\"\n#include \"endstone/form/controls/step_slider.h\"\n#include \"endstone/form/controls/text_input.h\"\n#include \"endstone/form/controls/toggle.h\"\n#include \"endstone/form/form.h\"\n\nnamespace endstone {\n\nclass ModalForm : public Form<ModalForm> {\npublic:\n    using Control = std::variant<Dropdown, Label, Slider, StepSlider, TextInput, Toggle>;\n    using OnSubmitCallback = std::function<void(Player *, std::string)>;\n\n    ModalForm &addControl(const Control &control)\n    {\n        controls_.push_back(control);\n        return *this;\n    }\n\n    [[nodiscard]] std::vector<Control> getControls() const\n    {\n        return controls_;\n    }\n\n    ModalForm &setControls(std::vector<Control> controls)\n    {\n        controls_ = std::move(controls);\n        return *this;\n    }\n\n    [[nodiscard]] std::optional<Message> getSubmitButton() const\n    {\n        return submit_button_text_;\n    }\n\n    ModalForm &setSubmitButton(std::optional<Message> text)\n    {\n        submit_button_text_ = std::move(text);\n        return *this;\n    }\n\n    [[nodiscard]] std::optional<std::string> getIcon() const\n    {\n        return icon_;\n    }\n\n    ModalForm &setIcon(std::optional<std::string> icon)\n    {\n        icon_ = std::move(icon);\n        return *this;\n    }\n\n    [[nodiscard]] OnSubmitCallback getOnSubmit() const\n    {\n        return on_submit_;\n    }\n\n    ModalForm &setOnSubmit(OnSubmitCallback on_submit)\n    {\n        on_submit_ = std::move(on_submit);\n        return *this;\n    }\n\nprivate:\n    std::vector<Control> controls_;\n    std::optional<Message> submit_button_text_;\n    std::optional<std::string> icon_;\n    OnSubmitCallback on_submit_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_d1e84b530b14f41e8b6f5ec1b5dee76c/","title":"Dir include/endstone/inventory","text":"

          FileList > endstone > inventory

          "},{"location":"reference/cpp/dir_d1e84b530b14f41e8b6f5ec1b5dee76c/#files","title":"Files","text":"Type Name file inventory.h file item_stack.h file player_inventory.h

          The documentation for this class was generated from the following file include/endstone/inventory/

          "},{"location":"reference/cpp/inventory_8h/","title":"File inventory.h","text":"

          FileList > endstone > inventory > inventory.h

          Go to the source code of this file

          • #include <memory>
          • #include <vector>
          • #include \"endstone/inventory/item_stack.h\"
          "},{"location":"reference/cpp/inventory_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/inventory_8h/#classes","title":"Classes","text":"Type Name class Inventory Interface to the various inventories.

          The documentation for this class was generated from the following file include/endstone/inventory/inventory.h

          "},{"location":"reference/cpp/inventory_8h_source/","title":"File inventory.h","text":"

          File List > endstone > inventory > inventory.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <memory>\n#include <vector>\n\n#include \"endstone/inventory/item_stack.h\"\n\nnamespace endstone {\nclass Inventory {\npublic:\n    virtual ~Inventory() = default;\n    [[nodiscard]] virtual int getSize() const = 0;\n\n    [[nodiscard]] virtual int getMaxStackSize() const = 0;\n\n    [[nodiscard]] virtual std::shared_ptr<ItemStack> getItem(int index) const = 0;\n\n    virtual void setItem(int index, std::shared_ptr<ItemStack> item) = 0;\n\n    virtual void addItem(ItemStack &item) = 0;\n\n    [[nodiscard]] virtual std::vector<std::shared_ptr<ItemStack>> getContents() const = 0;\n\n    [[nodiscard]] virtual int first(ItemStack &item) = 0;\n\n    [[nodiscard]] virtual bool isEmpty() const = 0;\n\n    virtual void clear() = 0;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/item__stack_8h/","title":"File item_stack.h","text":"

          FileList > endstone > inventory > item_stack.h

          Go to the source code of this file

          • #include <utility>
          • #include <fmt/format.h>
          • #include <memory>
          "},{"location":"reference/cpp/item__stack_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone namespace detail namespace fmt"},{"location":"reference/cpp/item__stack_8h/#classes","title":"Classes","text":"Type Name class ItemStack Represents a stack of items. struct formatter< endstone::ItemStack > <>

          The documentation for this class was generated from the following file include/endstone/inventory/item_stack.h

          "},{"location":"reference/cpp/item__stack_8h_source/","title":"File item_stack.h","text":"

          File List > endstone > inventory > item_stack.h

          Go to the documentation of this file

          #include <utility>\n\n#include <fmt/format.h>\n\n// Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <memory>\n\nnamespace endstone {\n\nnamespace detail {\nclass EndstoneItemStack;\n}\n\nclass ItemStack : public std::enable_shared_from_this<ItemStack> {\npublic:\n    ItemStack() = default;\n    explicit ItemStack(std::string type, int amount = 1) : type_(std::move(type)), amount_(amount) {}\n\n    virtual ~ItemStack() = default;\n\n    [[nodiscard]] virtual std::string getType() const\n    {\n        return type_;\n    }\n\n    virtual void setType(std::string type)\n    {\n        // TODO(item): clear item components when the type is changed\n        type_ = std::move(type);\n    }\n\n    [[nodiscard]] virtual int getAmount() const\n    {\n        return amount_;\n    }\n\n    virtual void setAmount(int amount)\n    {\n        amount_ = amount;\n    }\n\nprotected:\n    friend class detail::EndstoneItemStack;\n\n    virtual const detail::EndstoneItemStack *asEndstoneItemStack() const\n    {\n        return nullptr;\n    }\n\n    virtual detail::EndstoneItemStack *asEndstoneItemStack()\n    {\n        return nullptr;\n    }\n\nprivate:\n    std::string type_ = \"minecraft:air\";\n    int amount_ = 0;\n};\n\n}  // namespace endstone\n\nnamespace fmt {\ntemplate <>\nstruct formatter<endstone::ItemStack> : formatter<string_view> {\n    using Type = endstone::ItemStack;\n\n    template <typename FormatContext>\n    auto format(const Type &val, FormatContext &ctx) const -> format_context::iterator\n    {\n        return format_to(ctx.out(), \"ItemStack({} x {})\", val.getType(), val.getAmount());\n    }\n};\n}  // namespace fmt\n
          "},{"location":"reference/cpp/player__inventory_8h/","title":"File player_inventory.h","text":"

          FileList > endstone > inventory > player_inventory.h

          Go to the source code of this file

          • #include \"endstone/inventory/inventory.h\"
          "},{"location":"reference/cpp/player__inventory_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__inventory_8h/#classes","title":"Classes","text":"Type Name class PlayerInventory Interface to the inventory of a Player , including the four armor slots and any extra slots.

          The documentation for this class was generated from the following file include/endstone/inventory/player_inventory.h

          "},{"location":"reference/cpp/player__inventory_8h_source/","title":"File player_inventory.h","text":"

          File List > endstone > inventory > player_inventory.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/inventory/inventory.h\"\n\nnamespace endstone {\n\nclass PlayerInventory : public Inventory {};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_cd2600a5c389b96acc106cf97f774d1c/","title":"Dir include/endstone/lang","text":"

          FileList > endstone > lang

          "},{"location":"reference/cpp/dir_cd2600a5c389b96acc106cf97f774d1c/#files","title":"Files","text":"Type Name file language.h file translatable.h

          The documentation for this class was generated from the following file include/endstone/lang/

          "},{"location":"reference/cpp/language_8h/","title":"File language.h","text":"

          FileList > endstone > lang > language.h

          Go to the source code of this file

          • #include <string>
          • #include <vector>
          • #include \"endstone/lang/translatable.h\"
          "},{"location":"reference/cpp/language_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/language_8h/#classes","title":"Classes","text":"Type Name class Language Represents the interface for translating text into different languages.

          The documentation for this class was generated from the following file include/endstone/lang/language.h

          "},{"location":"reference/cpp/language_8h_source/","title":"File language.h","text":"

          File List > endstone > lang > language.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <vector>\n\n#include \"endstone/lang/translatable.h\"\n\nnamespace endstone {\n\nclass Language {\npublic:\n    virtual ~Language() = default;\n\n    [[nodiscard]] virtual std::string translate(std::string text) const = 0;\n\n    [[nodiscard]] virtual std::string translate(std::string text, std::string locale) const = 0;\n\n    [[nodiscard]] virtual std::string translate(std::string text, std::vector<std::string> params) const = 0;\n\n    [[nodiscard]] virtual std::string translate(std::string text, std::vector<std::string> params,\n                                                std::string locale) const = 0;\n\n    [[nodiscard]] virtual std::string translate(Translatable translatable) const = 0;\n\n    [[nodiscard]] virtual std::string translate(Translatable translatable, std::string locale) const = 0;\n\n    [[nodiscard]] virtual std::string getLocale() const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/translatable_8h/","title":"File translatable.h","text":"

          FileList > endstone > lang > translatable.h

          Go to the source code of this file

          • #include <string>
          • #include <utility>
          • #include <vector>
          "},{"location":"reference/cpp/translatable_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/translatable_8h/#classes","title":"Classes","text":"Type Name class Translatable Represents an object with a text representation that can be translated by the Minecraft client.

          The documentation for this class was generated from the following file include/endstone/lang/translatable.h

          "},{"location":"reference/cpp/translatable_8h_source/","title":"File translatable.h","text":"

          File List > endstone > lang > translatable.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <utility>\n#include <vector>\n\nnamespace endstone {\n\nclass Translatable {\npublic:\n    explicit Translatable(std::string text, std::vector<std::string> params = {})\n        : text_(std::move(text)), params_(std::move(params))\n    {\n    }\n\n    [[nodiscard]] const std::string &getText() const\n    {\n        return text_;\n    }\n\n    [[nodiscard]] const std::vector<std::string> &getParameters() const\n    {\n        return params_;\n    }\n\n    [[nodiscard]] bool empty() const\n    {\n        return text_.empty();\n    }\n\nprivate:\n    std::string text_;\n    std::vector<std::string> params_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_8e239ca1e5fd0d936d66a30330d3a329/","title":"Dir include/endstone/level","text":"

          FileList > endstone > level

          "},{"location":"reference/cpp/dir_8e239ca1e5fd0d936d66a30330d3a329/#files","title":"Files","text":"Type Name file dimension.h file level.h file location.h file position.h

          The documentation for this class was generated from the following file include/endstone/level/

          "},{"location":"reference/cpp/dimension_8h/","title":"File dimension.h","text":"

          FileList > endstone > level > dimension.h

          Go to the source code of this file

          • #include \"endstone/block/block.h\"
          • #include \"endstone/util/result.h\"
          "},{"location":"reference/cpp/dimension_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/dimension_8h/#classes","title":"Classes","text":"Type Name class Dimension Represents a dimension within a Level .

          The documentation for this class was generated from the following file include/endstone/level/dimension.h

          "},{"location":"reference/cpp/dimension_8h_source/","title":"File dimension.h","text":"

          File List > endstone > level > dimension.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/block/block.h\"\n#include \"endstone/util/result.h\"\n\nnamespace endstone {\n\nclass Dimension {\npublic:\n    enum class Type {\n        Overworld = 0,\n        Nether = 1,\n        TheEnd = 2,\n        Custom = 999\n    };\n\n    virtual ~Dimension() = default;\n\n    [[nodiscard]] virtual std::string getName() const = 0;\n\n    [[nodiscard]] virtual Type getType() const = 0;\n\n    [[nodiscard]] virtual Level &getLevel() const = 0;\n\n    virtual Result<std::unique_ptr<Block>> getBlockAt(int x, int y, int z) = 0;\n\n    virtual Result<std::unique_ptr<Block>> getBlockAt(Location location) = 0;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/level_8h/","title":"File level.h","text":"

          FileList > endstone > level > level.h

          Go to the source code of this file

          • #include <memory>
          • #include <string>
          • #include \"endstone/actor/actor.h\"
          "},{"location":"reference/cpp/level_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/level_8h/#classes","title":"Classes","text":"Type Name class Level Represents a level, which may contain actors, chunks and blocks.

          The documentation for this class was generated from the following file include/endstone/level/level.h

          "},{"location":"reference/cpp/level_8h_source/","title":"File level.h","text":"

          File List > endstone > level > level.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <memory>\n#include <string>\n\n#include \"endstone/actor/actor.h\"\n\nnamespace endstone {\n\nclass Level {\npublic:\n    virtual ~Level() = default;\n\n    [[nodiscard]] virtual std::string getName() const = 0;\n\n    [[nodiscard]] virtual std::vector<Actor *> getActors() const = 0;\n\n    [[nodiscard]] virtual int getTime() const = 0;\n\n    virtual void setTime(int time) = 0;\n\n    [[nodiscard]] virtual std::vector<Dimension *> getDimensions() const = 0;\n\n    [[nodiscard]] virtual Dimension *getDimension(std::string name) const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/location_8h/","title":"File location.h","text":"

          FileList > endstone > level > location.h

          Go to the source code of this file

          • #include <memory>
          • #include \"endstone/level/position.h\"
          • #include \"endstone/util/vector.h\"
          "},{"location":"reference/cpp/location_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/location_8h/#classes","title":"Classes","text":"Type Name class Location Represents a 3-dimensional location in a dimension within a level.

          The documentation for this class was generated from the following file include/endstone/level/location.h

          "},{"location":"reference/cpp/location_8h_source/","title":"File location.h","text":"

          File List > endstone > level > location.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <memory>\n\n#include \"endstone/level/position.h\"\n#include \"endstone/util/vector.h\"\n\nnamespace endstone {\n\nclass Location : public Position {\npublic:\n    Location(Dimension *dimension, int x, int y, int z, float pitch = 0.0, float yaw = 0.0)\n        : Location(dimension, static_cast<float>(x), static_cast<float>(y), static_cast<float>(z), pitch, yaw)\n    {\n    }\n\n    Location(Dimension *dimension, float x, float y, float z, float pitch = 0.0, float yaw = 0.0)\n        : Position(dimension, x, y, z), pitch_(pitch), yaw_(yaw)\n    {\n    }\n\n    [[nodiscard]] float getPitch() const\n    {\n        return pitch_;\n    }\n\n    void setPitch(float pitch)\n    {\n        pitch_ = pitch;\n    }\n\n    [[nodiscard]] float getYaw() const\n    {\n        return yaw_;\n    }\n\n    void setYaw(float yaw)\n    {\n        yaw_ = yaw;\n    }\n\nprivate:\n    float pitch_;  // Rotation around the right axis (around X axis).\n    float yaw_;    // Rotation around the up axis (around Y axis)\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/position_8h/","title":"File position.h","text":"

          FileList > endstone > level > position.h

          Go to the source code of this file

          • #include <memory>
          • #include <optional>
          • #include \"endstone/util/vector.h\"
          "},{"location":"reference/cpp/position_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/position_8h/#classes","title":"Classes","text":"Type Name class Position Represents a 3-dimensional position in a dimension within a level.

          The documentation for this class was generated from the following file include/endstone/level/position.h

          "},{"location":"reference/cpp/position_8h_source/","title":"File position.h","text":"

          File List > endstone > level > position.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <memory>\n#include <optional>\n\n#include \"endstone/util/vector.h\"\n\nnamespace endstone {\n\nclass Level;\nclass Dimension;\n\nclass Position : public Vector<float> {\npublic:\n    Position(Dimension *dimension, float x, float y, float z) : Vector(x, y, z), dimension_(dimension) {}\n\n    [[nodiscard]] Dimension *getDimension() const\n    {\n        return dimension_;\n    }\n\n    void setDimension(Dimension &dimension)\n    {\n        dimension_ = &dimension;\n    }\n\n    [[nodiscard]] int getBlockX() const\n    {\n        return static_cast<int>(std::floorf(x_));\n    }\n\n    [[nodiscard]] int getBlockY() const\n    {\n        return static_cast<int>(std::floorf(y_));\n    }\n\n    [[nodiscard]] int getBlockZ() const\n    {\n        return static_cast<int>(std::floorf(z_));\n    }\n\nprivate:\n    Dimension *dimension_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_5fb49eba5df98b849987b1937230be97/","title":"Dir include/endstone/network","text":"

          FileList > endstone > network

          "},{"location":"reference/cpp/dir_5fb49eba5df98b849987b1937230be97/#files","title":"Files","text":"Type Name file packet.h file packet_type.h file spawn_particle_effect_packet.h

          The documentation for this class was generated from the following file include/endstone/network/

          "},{"location":"reference/cpp/packet_8h/","title":"File packet.h","text":"

          FileList > endstone > network > packet.h

          Go to the source code of this file

          • #include \"endstone/network/packet_type.h\"
          "},{"location":"reference/cpp/packet_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/packet_8h/#classes","title":"Classes","text":"Type Name class Packet Represents a packet.

          The documentation for this class was generated from the following file include/endstone/network/packet.h

          "},{"location":"reference/cpp/packet_8h_source/","title":"File packet.h","text":"

          File List > endstone > network > packet.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/network/packet_type.h\"\n\nnamespace endstone {\n\nclass Packet {\npublic:\n    virtual ~Packet() = default;\n\n    [[nodiscard]] virtual PacketType getType() const = 0;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/packet__type_8h/","title":"File packet_type.h","text":"

          FileList > endstone > network > packet_type.h

          Go to the source code of this file

          "},{"location":"reference/cpp/packet__type_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/network/packet_type.h

          "},{"location":"reference/cpp/packet__type_8h_source/","title":"File packet_type.h","text":"

          File List > endstone > network > packet_type.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\nenum class PacketType {\n    SpawnParticleEffect = 118\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/spawn__particle__effect__packet_8h/","title":"File spawn_particle_effect_packet.h","text":"

          FileList > endstone > network > spawn_particle_effect_packet.h

          Go to the source code of this file

          • #include <cstdint>
          • #include <optional>
          • #include <string>
          • #include \"endstone/network/packet.h\"
          • #include \"endstone/network/packet_type.h\"
          • #include \"endstone/util/vector.h\"
          "},{"location":"reference/cpp/spawn__particle__effect__packet_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/spawn__particle__effect__packet_8h/#classes","title":"Classes","text":"Type Name class SpawnParticleEffectPacket Represents a packet for spawning a particle effect.

          The documentation for this class was generated from the following file include/endstone/network/spawn_particle_effect_packet.h

          "},{"location":"reference/cpp/spawn__particle__effect__packet_8h_source/","title":"File spawn_particle_effect_packet.h","text":"

          File List > endstone > network > spawn_particle_effect_packet.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <cstdint>\n#include <optional>\n#include <string>\n\n#include \"endstone/network/packet.h\"\n#include \"endstone/network/packet_type.h\"\n#include \"endstone/util/vector.h\"\n\nnamespace endstone {\n\nclass SpawnParticleEffectPacket final : public Packet {\npublic:\n    [[nodiscard]] PacketType getType() const override\n    {\n        return PacketType::SpawnParticleEffect;\n    }\n\n    int dimension_id;\n    std::int64_t actor_id{-1};\n    Vector<float> position;\n    std::string effect_name;\n    std::optional<std::string> molang_variables_json;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_33a21cc2f228e5ad6b7d1bc8d0d1e9bc/","title":"Dir include/endstone/permissions","text":"

          FileList > endstone > permissions

          "},{"location":"reference/cpp/dir_33a21cc2f228e5ad6b7d1bc8d0d1e9bc/#files","title":"Files","text":"Type Name file permissible.h file permission.h file permission_attachment.h file permission_attachment_info.h file permission_default.h

          The documentation for this class was generated from the following file include/endstone/permissions/

          "},{"location":"reference/cpp/permissible_8h/","title":"File permissible.h","text":"

          FileList > endstone > permissions > permissible.h

          Go to the source code of this file

          • #include <memory>
          • #include <string>
          • #include <unordered_set>
          • #include \"endstone/permissions/permission_attachment_info.h\"
          • #include \"endstone/util/result.h\"
          "},{"location":"reference/cpp/permissible_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/permissible_8h/#classes","title":"Classes","text":"Type Name class Permissible Represents an object that may become a server operator and can be assigned permissions.

          The documentation for this class was generated from the following file include/endstone/permissions/permissible.h

          "},{"location":"reference/cpp/permissible_8h_source/","title":"File permissible.h","text":"

          File List > endstone > permissions > permissible.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <memory>\n#include <string>\n#include <unordered_set>\n\n#include \"endstone/permissions/permission_attachment_info.h\"\n#include \"endstone/util/result.h\"\n\nnamespace endstone {\n\nclass CommandSender;\nclass Plugin;\nclass Permission;\nclass PermissionAttachment;\n\nclass Permissible {\npublic:\n    virtual ~Permissible() = default;\n\n    [[nodiscard]] virtual bool isOp() const = 0;\n\n    virtual void setOp(bool value) = 0;\n\n    [[nodiscard]] virtual bool isPermissionSet(std::string name) const = 0;\n\n    [[nodiscard]] virtual bool isPermissionSet(const Permission &perm) const = 0;\n\n    [[nodiscard]] virtual bool hasPermission(std::string name) const = 0;\n\n    [[nodiscard]] virtual bool hasPermission(const Permission &perm) const = 0;\n\n    virtual Result<PermissionAttachment *> addAttachment(Plugin &plugin, const std::string &name, bool value) = 0;\n\n    virtual Result<PermissionAttachment *> addAttachment(Plugin &plugin) = 0;\n\n    virtual Result<void> removeAttachment(PermissionAttachment &attachment) = 0;\n\n    virtual void recalculatePermissions() = 0;\n\n    [[nodiscard]] virtual std::unordered_set<PermissionAttachmentInfo *> getEffectivePermissions() const = 0;\n\n    [[nodiscard]] virtual CommandSender *asCommandSender() const = 0;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/permission_8h/","title":"File permission.h","text":"

          FileList > endstone > permissions > permission.h

          Go to the source code of this file

          • #include <algorithm>
          • #include <string>
          • #include <unordered_map>
          • #include <unordered_set>
          • #include <utility>
          • #include \"endstone/permissions/permissible.h\"
          • #include \"endstone/permissions/permission_default.h\"
          • #include \"endstone/plugin/plugin_manager.h\"
          "},{"location":"reference/cpp/permission_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/permission_8h/#classes","title":"Classes","text":"Type Name class Permission Represents a unique permission that may be attached to a Permissible .

          The documentation for this class was generated from the following file include/endstone/permissions/permission.h

          "},{"location":"reference/cpp/permission_8h_source/","title":"File permission.h","text":"

          File List > endstone > permissions > permission.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <algorithm>\n#include <string>\n#include <unordered_map>\n#include <unordered_set>\n#include <utility>\n\n#include \"endstone/permissions/permissible.h\"\n#include \"endstone/permissions/permission_default.h\"\n#include \"endstone/plugin/plugin_manager.h\"\n\nnamespace endstone {\n\nclass Permission {\npublic:\n    static const PermissionDefault DefaultPermission = PermissionDefault::Operator;\n\n    explicit Permission(std::string name, std::string description = \"\",\n                        PermissionDefault default_value = DefaultPermission,\n                        std::unordered_map<std::string, bool> children = {})\n    {\n        this->name_ = std::move(name);\n        this->description_ = std::move(description);\n        this->default_value_ = default_value;\n        this->children_ = std::move(children);\n    }\n\n    [[nodiscard]] std::string getName() const\n    {\n        return name_;\n    }\n\n    std::unordered_map<std::string, bool> &getChildren()\n    {\n        return children_;\n    }\n\n    [[nodiscard]] PermissionDefault getDefault() const\n    {\n        return default_value_;\n    }\n\n    void setDefault(PermissionDefault value)\n    {\n        default_value_ = value;\n        recalculatePermissibles();\n    }\n\n    [[nodiscard]] std::string getDescription() const\n    {\n        return description_;\n    }\n\n    void setDescription(std::string value)\n    {\n        description_ = std::move(value);\n    }\n\n    [[nodiscard]] std::unordered_set<Permissible *> getPermissibles() const\n    {\n        if (!plugin_manager_) {\n            return {};\n        }\n\n        return plugin_manager_->getPermissionSubscriptions(name_);\n    }\n\n    void recalculatePermissibles()\n    {\n        if (!plugin_manager_) {\n            return;\n        }\n\n        auto perms = getPermissibles();\n        plugin_manager_->recalculatePermissionDefaults(*this);\n\n        for (auto *p : perms) {\n            p->recalculatePermissions();\n        }\n    }\n\n    Permission *addParent(std::string name, bool value)\n    {\n        if (!plugin_manager_) {\n            return nullptr;\n        }\n\n        std::transform(name.begin(), name.end(), name.begin(), [](unsigned char c) { return std::tolower(c); });\n        auto *perm = plugin_manager_->getPermission(name);\n\n        if (!perm) {\n            perm = plugin_manager_->addPermission(std::make_unique<Permission>(name));\n        }\n\n        addParent(*perm, value);\n        return perm;\n    }\n\n    void addParent(Permission &perm, bool value) const\n    {\n        perm.getChildren()[getName()] = value;\n        perm.recalculatePermissibles();\n    }\n\n    void init(PluginManager &plugin_manager)\n    {\n        plugin_manager_ = &plugin_manager;\n    }\n\nprivate:\n    std::string name_;\n    std::unordered_map<std::string, bool> children_;\n    PermissionDefault default_value_ = DefaultPermission;\n    std::string description_;\n    PluginManager *plugin_manager_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/permission__attachment_8h/","title":"File permission_attachment.h","text":"

          FileList > endstone > permissions > permission_attachment.h

          Go to the source code of this file

          • #include <algorithm>
          • #include <functional>
          • #include <string>
          • #include <unordered_map>
          • #include <utility>
          • #include \"endstone/permissions/permissible.h\"
          • #include \"endstone/permissions/permission.h\"
          "},{"location":"reference/cpp/permission__attachment_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/permission__attachment_8h/#classes","title":"Classes","text":"Type Name class PermissionAttachment Holds information about a permission attachment on a Permissible object.

          The documentation for this class was generated from the following file include/endstone/permissions/permission_attachment.h

          "},{"location":"reference/cpp/permission__attachment_8h_source/","title":"File permission_attachment.h","text":"

          File List > endstone > permissions > permission_attachment.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <algorithm>\n#include <functional>\n#include <string>\n#include <unordered_map>\n#include <utility>\n\n#include \"endstone/permissions/permissible.h\"\n#include \"endstone/permissions/permission.h\"\n\nnamespace endstone {\n\nusing PermissionRemovedExecutor = std::function<void(const PermissionAttachment &)>;\n\nclass PermissionAttachment {\npublic:\n    PermissionAttachment(Plugin &plugin, Permissible &permissible) : permissible_(permissible), plugin_(plugin) {}\n\n    [[nodiscard]] Plugin &getPlugin() const\n    {\n        return plugin_;\n    }\n\n    void setRemovalCallback(PermissionRemovedExecutor ex)\n    {\n        removed_ = std::move(ex);\n    }\n\n    [[nodiscard]] PermissionRemovedExecutor getRemovalCallback() const\n    {\n        return removed_;\n    }\n\n    [[nodiscard]] Permissible &getPermissible() const\n    {\n        return permissible_;\n    }\n\n    [[nodiscard]] std::unordered_map<std::string, bool> getPermissions() const\n    {\n        return permissions_;\n    }\n\n    void setPermission(std::string name, bool value)\n    {\n        std::transform(name.begin(), name.end(), name.begin(), [](unsigned char c) { return std::tolower(c); });\n        permissions_[name] = value;\n        permissible_.recalculatePermissions();\n    }\n\n    void setPermission(Permission &perm, bool value)\n    {\n        setPermission(perm.getName(), value);\n    }\n\n    void unsetPermission(std::string name)\n    {\n        std::transform(name.begin(), name.end(), name.begin(), [](unsigned char c) { return std::tolower(c); });\n        permissions_.erase(name);\n        permissible_.recalculatePermissions();\n    }\n\n    void unsetPermission(Permission &perm)\n    {\n        unsetPermission(perm.getName());\n    }\n\n    bool remove()\n    {\n        return permissible_.removeAttachment(*this).has_value();\n    }\n\nprivate:\n    PermissionRemovedExecutor removed_;\n    std::unordered_map<std::string, bool> permissions_;\n    Permissible &permissible_;\n    Plugin &plugin_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/permission__attachment__info_8h/","title":"File permission_attachment_info.h","text":"

          FileList > endstone > permissions > permission_attachment_info.h

          Go to the source code of this file

          • #include <string>
          • #include <utility>
          "},{"location":"reference/cpp/permission__attachment__info_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/permission__attachment__info_8h/#classes","title":"Classes","text":"Type Name class PermissionAttachmentInfo Holds information on a permission and which PermissionAttachment provides it.

          The documentation for this class was generated from the following file include/endstone/permissions/permission_attachment_info.h

          "},{"location":"reference/cpp/permission__attachment__info_8h_source/","title":"File permission_attachment_info.h","text":"

          File List > endstone > permissions > permission_attachment_info.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <utility>\n\nnamespace endstone {\n\nclass Permissible;\nclass PermissionAttachment;\n\nclass PermissionAttachmentInfo {\n\npublic:\n    PermissionAttachmentInfo(Permissible &permissible, std::string permission, PermissionAttachment *attachment,\n                             bool value)\n        : permissible_(permissible), permission_(std::move(permission)), attachment_(attachment), value_(value)\n    {\n    }\n\n    [[nodiscard]] Permissible &getPermissible() const\n    {\n        return permissible_;\n    }\n\n    [[nodiscard]] std::string getPermission() const\n    {\n        return permission_;\n    }\n\n    [[nodiscard]] PermissionAttachment *getAttachment() const\n    {\n        return attachment_;\n    }\n\n    [[nodiscard]] bool getValue() const\n    {\n        return value_;\n    }\n\nprivate:\n    Permissible &permissible_;\n    std::string permission_;\n    PermissionAttachment *attachment_;\n    bool value_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/permission__default_8h/","title":"File permission_default.h","text":"

          FileList > endstone > permissions > permission_default.h

          Go to the source code of this file

          "},{"location":"reference/cpp/permission__default_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/permissions/permission_default.h

          "},{"location":"reference/cpp/permission__default_8h_source/","title":"File permission_default.h","text":"

          File List > endstone > permissions > permission_default.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class PermissionDefault {\n    True,\n    False,\n    Operator,\n    NotOperator,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_53ee43673b2467e53c4cb8c30a2e7d89/","title":"Dir include/endstone/plugin","text":"

          FileList > endstone > plugin

          "},{"location":"reference/cpp/dir_53ee43673b2467e53c4cb8c30a2e7d89/#files","title":"Files","text":"Type Name file plugin.h file plugin_description.h file plugin_load_order.h file plugin_loader.h file plugin_manager.h

          The documentation for this class was generated from the following file include/endstone/plugin/

          "},{"location":"reference/cpp/plugin_8h/","title":"File plugin.h","text":"

          FileList > endstone > plugin > plugin.h

          Go to the source code of this file

          • #include <algorithm>
          • #include <filesystem>
          • #include <memory>
          • #include <string>
          • #include <unordered_map>
          • #include <utility>
          • #include <vector>
          • #include \"endstone/command/command_executor.h\"
          • #include \"endstone/detail/plugin/plugin_description_builder.h\"
          • #include \"endstone/logger.h\"
          • #include \"endstone/permissions/permission.h\"
          • #include \"endstone/plugin/plugin_description.h\"
          • #include \"endstone/server.h\"
          "},{"location":"reference/cpp/plugin_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone namespace detail"},{"location":"reference/cpp/plugin_8h/#classes","title":"Classes","text":"Type Name class Plugin Represents a Plugin ."},{"location":"reference/cpp/plugin_8h/#macros","title":"Macros","text":"Type Name define ENDSTONE_PLUGIN (Name, Version, MainClass)"},{"location":"reference/cpp/plugin_8h/#macro-definition-documentation","title":"Macro Definition Documentation","text":""},{"location":"reference/cpp/plugin_8h/#define-endstone_plugin","title":"define ENDSTONE_PLUGIN","text":"
          #define ENDSTONE_PLUGIN (\n    Name,\n    Version,\n    MainClass\n) class PluginDescriptionBuilderImpl : public endstone::detail::PluginDescriptionBuilder { \\\n    public:                                                                                  \\\n        PluginDescriptionBuilderImpl();                                                      \\\n    };                                                                                       \\\n    static PluginDescriptionBuilderImpl builder;                                             \\\n    class EndstonePluginImpl : public MainClass {                                            \\\n    public:                                                                                  \\\n        EndstonePluginImpl() = default;                                                      \\\n        const endstone::PluginDescription &getDescription() const override                   \\\n        {                                                                                    \\\n            return description_;                                                             \\\n        }                                                                                    \\\n                                                                                             \\\n    private:                                                                                 \\ endstone::PluginDescription description_ = builder.build(Name, Version);             \\\n    };                                                                                       \\\n    extern \"C\" [[maybe_unused]] ENDSTONE_EXPORT endstone::Plugin *init_endstone_plugin()     \\\n    {                                                                                        \\\n        auto *p = new EndstonePluginImpl();                                                  \\\n        return p;                                                                            \\\n    }                                                                                        \\\n    PluginDescriptionBuilderImpl::PluginDescriptionBuilderImpl()\n

          The documentation for this class was generated from the following file include/endstone/plugin/plugin.h

          "},{"location":"reference/cpp/plugin_8h_source/","title":"File plugin.h","text":"

          File List > endstone > plugin > plugin.h

          Go to the documentation of this file

          // Copyright (c) 2023, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <algorithm>\n#include <filesystem>\n#include <memory>\n#include <string>\n#include <unordered_map>\n#include <utility>\n#include <vector>\n\n#include \"endstone/command/command_executor.h\"\n#include \"endstone/detail/plugin/plugin_description_builder.h\"\n#include \"endstone/logger.h\"\n#include \"endstone/permissions/permission.h\"\n#include \"endstone/plugin/plugin_description.h\"\n#include \"endstone/server.h\"\n\nnamespace endstone {\n\nclass PluginCommand;\nclass PluginLoader;\n\nnamespace detail {\nclass EndstonePluginManager;\n}\n\nclass Plugin : public CommandExecutor {\npublic:\n    Plugin() = default;\n    Plugin(const Plugin &) = delete;\n    Plugin &operator=(const Plugin &) = delete;\n\n    ~Plugin() override = default;\n\n    [[nodiscard]] virtual const PluginDescription &getDescription() const = 0;\n\n    virtual void onLoad() {}\n\n    virtual void onEnable() {}\n\n    virtual void onDisable() {}\n\n    [[nodiscard]] Logger &getLogger() const\n    {\n        return *logger_;\n    }\n\n    [[nodiscard]] bool isEnabled() const\n    {\n        return enabled_;\n    }\n\n    [[nodiscard]] PluginLoader &getPluginLoader() const\n    {\n        return *loader_;\n    }\n\n    [[nodiscard]] Server &getServer() const\n    {\n        return *server_;\n    }\n\n    [[nodiscard]] std::string getName() const\n    {\n        return getDescription().getName();\n    };\n\n    [[nodiscard]] PluginCommand *getCommand(std::string name) const\n    {\n        std::transform(name.begin(), name.end(), name.begin(), [](unsigned char c) { return std::tolower(c); });\n        return getServer().getPluginCommand(name);\n    }\n\n    [[nodiscard]] const std::filesystem::path &getDataFolder() const\n    {\n        return data_folder_;\n    }\n\n    template <typename EventType, typename T>\n    void registerEvent(void (T::*func)(EventType &), T &instance, EventPriority priority = EventPriority::Normal,\n                       bool ignore_cancelled = false)\n    {\n        auto result = getServer().getPluginManager().registerEvent(\n            EventType::NAME, [func, &instance](Event &e) { (instance.*func)(static_cast<EventType &>(e)); }, priority,\n            *this, ignore_cancelled);\n        if (!result) {\n            server_->getLogger().error(result.error());\n        }\n    }\n\n    template <typename EventType>\n    void registerEvent(std::function<void(EventType &)> func, EventPriority priority = EventPriority::Normal,\n                       bool ignore_cancelled = false)\n    {\n        auto result = getServer().getPluginManager().registerEvent(\n            EventType::NAME, [func](Event &e) { func(static_cast<EventType &>(e)); }, priority, *this,\n            ignore_cancelled);\n        if (!result) {\n            server_->getLogger().error(result.error());\n        }\n    }\n\nprotected:\n    friend class PluginLoader;\n    friend class detail::EndstonePluginManager;\n\n    void setEnabled(bool enabled)\n    {\n        if (enabled_ != enabled) {\n            enabled_ = enabled;\n\n            if (enabled_) {\n                onEnable();\n            }\n            else {\n                onDisable();\n            }\n        }\n    }\n\nprivate:\n    bool enabled_{false};\n    PluginLoader *loader_{nullptr};\n    Server *server_{nullptr};\n    Logger *logger_{nullptr};\n    std::filesystem::path data_folder_;\n};\n\n}  // namespace endstone\n\n#ifndef ENDSTONE_PLUGIN\n#define ENDSTONE_PLUGIN(Name, Version, MainClass)                                            \\\n    class PluginDescriptionBuilderImpl : public endstone::detail::PluginDescriptionBuilder { \\\n    public:                                                                                  \\\n        PluginDescriptionBuilderImpl();                                                      \\\n    };                                                                                       \\\n    static PluginDescriptionBuilderImpl builder;                                             \\\n    class EndstonePluginImpl : public MainClass {                                            \\\n    public:                                                                                  \\\n        EndstonePluginImpl() = default;                                                      \\\n        const endstone::PluginDescription &getDescription() const override                   \\\n        {                                                                                    \\\n            return description_;                                                             \\\n        }                                                                                    \\\n                                                                                             \\\n    private:                                                                                 \\\n        endstone::PluginDescription description_ = builder.build(Name, Version);             \\\n    };                                                                                       \\\n    extern \"C\" [[maybe_unused]] ENDSTONE_EXPORT endstone::Plugin *init_endstone_plugin()     \\\n    {                                                                                        \\\n        auto *p = new EndstonePluginImpl();                                                  \\\n        return p;                                                                            \\\n    }                                                                                        \\\n    PluginDescriptionBuilderImpl::PluginDescriptionBuilderImpl()\n#endif\n
          "},{"location":"reference/cpp/plugin__description_8h/","title":"File plugin_description.h","text":"

          FileList > endstone > plugin > plugin_description.h

          Go to the source code of this file

          • #include <string>
          • #include <utility>
          • #include <vector>
          • #include <fmt/format.h>
          • #include \"endstone/command/command.h\"
          • #include \"endstone/detail/plugin/plugin_description_builder.h\"
          • #include \"endstone/endstone.h\"
          • #include \"endstone/permissions/permission.h\"
          • #include \"endstone/plugin/plugin_load_order.h\"
          "},{"location":"reference/cpp/plugin__description_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/plugin__description_8h/#classes","title":"Classes","text":"Type Name class PluginDescription Represents the basic information about a plugin that the plugin loader needs to know.

          The documentation for this class was generated from the following file include/endstone/plugin/plugin_description.h

          "},{"location":"reference/cpp/plugin__description_8h_source/","title":"File plugin_description.h","text":"

          File List > endstone > plugin > plugin_description.h

          Go to the documentation of this file

          // Copyright (c) 2023, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <utility>\n#include <vector>\n\n#include <fmt/format.h>\n\n#include \"endstone/command/command.h\"\n#include \"endstone/detail/plugin/plugin_description_builder.h\"\n#include \"endstone/endstone.h\"\n#include \"endstone/permissions/permission.h\"\n#include \"endstone/plugin/plugin_load_order.h\"\n\nnamespace endstone {\n\nclass PluginDescription {\npublic:\n    PluginDescription(std::string name, std::string version, std::string description = \"\",\n                      PluginLoadOrder load = PluginLoadOrder::PostWorld, std::vector<std::string> authors = {},\n                      std::vector<std::string> contributors = {}, std::string website = \"\", std::string prefix = \"\",\n                      std::vector<std::string> provides = {}, std::vector<std::string> depend = {},\n                      std::vector<std::string> soft_depend = {}, std::vector<std::string> load_before = {},\n                      PermissionDefault default_permission = PermissionDefault::Operator,\n                      std::vector<Command> commands = {}, std::vector<Permission> permissions = {})\n        : description_(std::move(description)), load_(load), authors_(std::move(authors)),\n          contributors_(std::move(contributors)), website_(std::move(website)), prefix_(std::move(prefix)),\n          provides_(std::move(provides)), depend_(std::move(depend)), soft_depend_(std::move(soft_depend)),\n          load_before_(std::move(load_before)), default_permission_(default_permission), commands_(std::move(commands)),\n          permissions_(std::move(permissions))\n    {\n        name_ = std::move(name);\n        std::replace(name_.begin(), name_.end(), ' ', '_');\n        version_ = std::move(version);\n        full_name_ = fmt::format(\"{} v{}\", name_, version_);\n        api_version_ = ENDSTONE_API_VERSION;\n    }\n\n    [[nodiscard]] std::string getName() const\n    {\n        return name_;\n    }\n\n    [[nodiscard]] std::string getVersion() const\n    {\n        return version_;\n    }\n\n    [[nodiscard]] std::string getFullName() const\n    {\n        return full_name_;\n    }\n\n    [[nodiscard]] std::string getAPIVersion() const\n    {\n        return api_version_;\n    }\n\n    [[nodiscard]] std::string getDescription() const\n    {\n        return description_;\n    }\n\n    [[nodiscard]] PluginLoadOrder getLoad() const\n    {\n        return load_;\n    }\n\n    [[nodiscard]] std::vector<std::string> getAuthors() const\n    {\n        return authors_;\n    }\n\n    [[nodiscard]] std::vector<std::string> getContributors() const\n    {\n        return contributors_;\n    }\n\n    [[nodiscard]] std::string getWebsite() const\n    {\n        return website_;\n    }\n\n    [[nodiscard]] std::string getPrefix() const\n    {\n        return prefix_;\n    }\n\n    [[nodiscard]] std::vector<std::string> getProvides() const\n    {\n        return provides_;\n    }\n\n    [[nodiscard]] std::vector<std::string> getDepend() const\n    {\n        return depend_;\n    }\n\n    [[nodiscard]] std::vector<std::string> getSoftDepend() const\n    {\n        return soft_depend_;\n    }\n\n    [[nodiscard]] std::vector<std::string> getLoadBefore() const\n    {\n        return load_before_;\n    }\n\n    [[nodiscard]] PermissionDefault getDefaultPermission() const\n    {\n        return default_permission_;\n    }\n\n    [[nodiscard]] std::vector<Command> getCommands() const\n    {\n        return commands_;\n    }\n\n    [[nodiscard]] std::vector<Permission> getPermissions() const\n    {\n        return permissions_;\n    }\n\nprivate:\n    std::string name_;\n    std::string version_;\n    std::string full_name_;\n    std::string api_version_;\n    std::string description_;\n    PluginLoadOrder load_ = PluginLoadOrder::PostWorld;\n    std::vector<std::string> authors_;\n    std::vector<std::string> contributors_;\n    std::string website_;\n    std::string prefix_;\n    std::vector<std::string> provides_;\n    std::vector<std::string> depend_;\n    std::vector<std::string> soft_depend_;\n    std::vector<std::string> load_before_;\n    PermissionDefault default_permission_ = PermissionDefault::Operator;\n    std::vector<Command> commands_;\n    std::vector<Permission> permissions_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/plugin__load__order_8h/","title":"File plugin_load_order.h","text":"

          FileList > endstone > plugin > plugin_load_order.h

          Go to the source code of this file

          "},{"location":"reference/cpp/plugin__load__order_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/plugin/plugin_load_order.h

          "},{"location":"reference/cpp/plugin__load__order_8h_source/","title":"File plugin_load_order.h","text":"

          File List > endstone > plugin > plugin_load_order.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class PluginLoadOrder {\n    Startup,\n    PostWorld,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/plugin__loader_8h/","title":"File plugin_loader.h","text":"

          FileList > endstone > plugin > plugin_loader.h

          Go to the source code of this file

          • #include <cctype>
          • #include <filesystem>
          • #include <memory>
          • #include <string>
          • #include <utility>
          • #include <vector>
          • #include \"endstone/event/server/plugin_disable_event.h\"
          • #include \"endstone/event/server/plugin_enable_event.h\"
          • #include \"endstone/logger.h\"
          • #include \"endstone/plugin/plugin.h\"
          • #include \"endstone/server.h\"
          "},{"location":"reference/cpp/plugin__loader_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/plugin__loader_8h/#classes","title":"Classes","text":"Type Name class PluginLoader Represents a plugin loader, which handles direct access to specific types of plugins.

          The documentation for this class was generated from the following file include/endstone/plugin/plugin_loader.h

          "},{"location":"reference/cpp/plugin__loader_8h_source/","title":"File plugin_loader.h","text":"

          File List > endstone > plugin > plugin_loader.h

          Go to the documentation of this file

          // Copyright (c) 2023, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <cctype>\n#include <filesystem>\n#include <memory>\n#include <string>\n#include <utility>\n#include <vector>\n\n#include \"endstone/event/server/plugin_disable_event.h\"\n#include \"endstone/event/server/plugin_enable_event.h\"\n#include \"endstone/logger.h\"\n#include \"endstone/plugin/plugin.h\"\n#include \"endstone/server.h\"\n\nnamespace endstone {\n\nclass PluginLoader {\npublic:\n    explicit PluginLoader(Server &server) : server_(server) {}\n    PluginLoader(const PluginLoader &) = delete;\n    PluginLoader &operator=(const PluginLoader &) = delete;\n\n    virtual ~PluginLoader() = default;\n\n    [[nodiscard]] virtual std::vector<Plugin *> loadPlugins(const std::string &directory) = 0;\n\n    virtual void enablePlugin(Plugin &plugin) const\n    {\n        if (!plugin.isEnabled()) {\n            plugin.getLogger().info(\"Enabling {}\", plugin.getDescription().getFullName());\n            try {\n                plugin.setEnabled(true);\n            }\n            catch (std::exception &e) {\n                plugin.getLogger().error(\"Error occurred when enabling {}.\", plugin.getDescription().getFullName());\n                plugin.getLogger().error(e.what());\n                return;\n            }\n            PluginEnableEvent event(plugin);\n            server_.getPluginManager().callEvent(event);\n        }\n    }\n\n    virtual void disablePlugin(Plugin &plugin) const\n    {\n        if (plugin.isEnabled()) {\n            plugin.getLogger().info(\"Disabling {}\", plugin.getDescription().getFullName());\n            try {\n                plugin.setEnabled(false);\n            }\n            catch (std::exception &e) {\n                plugin.getLogger().error(\"Error occurred when disabling {}.\", plugin.getDescription().getFullName());\n                plugin.getLogger().error(e.what());\n                return;\n            }\n            PluginDisableEvent event(plugin);\n            server_.getPluginManager().callEvent(event);\n        }\n    }\n\n    [[nodiscard]] Server &getServer() const\n    {\n        return server_;\n    }\n\nprotected:\n    Server &server_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/plugin__manager_8h/","title":"File plugin_manager.h","text":"

          FileList > endstone > plugin > plugin_manager.h

          Go to the source code of this file

          • #include <functional>
          • #include <memory>
          • #include <string>
          • #include <vector>
          • #include \"endstone/event/event.h\"
          • #include \"endstone/event/event_priority.h\"
          "},{"location":"reference/cpp/plugin__manager_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/plugin__manager_8h/#classes","title":"Classes","text":"Type Name class PluginManager Represents a plugin manager that handles all plugins from the Server .

          The documentation for this class was generated from the following file include/endstone/plugin/plugin_manager.h

          "},{"location":"reference/cpp/plugin__manager_8h_source/","title":"File plugin_manager.h","text":"

          File List > endstone > plugin > plugin_manager.h

          Go to the documentation of this file

          // Copyright (c) 2023, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <functional>\n#include <memory>\n#include <string>\n#include <vector>\n\n#include \"endstone/event/event.h\"\n#include \"endstone/event/event_priority.h\"\n\nnamespace endstone {\n\nclass Permission;\nclass Permissible;\nclass Plugin;\nclass PluginLoader;\n\nclass PluginManager {\npublic:\n    PluginManager() = default;\n    PluginManager(PluginManager const &) = delete;\n    PluginManager &operator=(PluginManager const &) = delete;\n    virtual ~PluginManager() = default;\n\n    virtual void registerLoader(std::unique_ptr<PluginLoader> loader) = 0;\n\n    [[nodiscard]] virtual Plugin *getPlugin(const std::string &name) const = 0;\n\n    [[nodiscard]] virtual std::vector<Plugin *> getPlugins() const = 0;\n\n    [[nodiscard]] virtual bool isPluginEnabled(const std::string &name) const = 0;\n\n    [[nodiscard]] virtual bool isPluginEnabled(Plugin *plugin) const = 0;\n\n    [[nodiscard]] virtual std::vector<Plugin *> loadPlugins(const std::string &directory) = 0;\n\n    virtual void enablePlugin(Plugin &plugin) const = 0;\n\n    virtual void enablePlugins() const = 0;\n\n    virtual void disablePlugin(Plugin &plugin) = 0;\n\n    virtual void disablePlugins() = 0;\n\n    virtual void clearPlugins() = 0;\n\n    virtual void callEvent(Event &event) = 0;\n\n    virtual Result<void> registerEvent(std::string event, std::function<void(Event &)> executor, EventPriority priority,\n                                       Plugin &plugin, bool ignore_cancelled) = 0;\n\n    [[nodiscard]] virtual Permission *getPermission(std::string name) const = 0;\n\n    virtual Permission *addPermission(std::unique_ptr<Permission> perm) = 0;\n\n    virtual void removePermission(Permission &perm) = 0;\n\n    virtual void removePermission(std::string name) = 0;\n\n    [[nodiscard]] virtual std::unordered_set<Permission *> getDefaultPermissions(bool op) const = 0;\n\n    virtual void recalculatePermissionDefaults(Permission &perm) = 0;\n\n    virtual void subscribeToPermission(std::string permission, Permissible &permissible) = 0;\n\n    virtual void unsubscribeFromPermission(std::string permission, Permissible &permissible) = 0;\n\n    [[nodiscard]] virtual std::unordered_set<Permissible *> getPermissionSubscriptions(\n        std::string permission) const = 0;\n\n    virtual void subscribeToDefaultPerms(bool op, Permissible &permissible) = 0;\n\n    virtual void unsubscribeFromDefaultPerms(bool op, Permissible &permissible) = 0;\n\n    [[nodiscard]] virtual std::unordered_set<Permissible *> getDefaultPermSubscriptions(bool op) const = 0;\n\n    [[nodiscard]] virtual std::unordered_set<Permission *> getPermissions() const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_3a50fadda3c7cdc27c965a478a3f7d27/","title":"Dir include/endstone/scheduler","text":"

          FileList > endstone > scheduler

          "},{"location":"reference/cpp/dir_3a50fadda3c7cdc27c965a478a3f7d27/#files","title":"Files","text":"Type Name file scheduler.h file task.h

          The documentation for this class was generated from the following file include/endstone/scheduler/

          "},{"location":"reference/cpp/scheduler_8h/","title":"File scheduler.h","text":"

          FileList > endstone > scheduler > scheduler.h

          Go to the source code of this file

          • #include \"endstone/scheduler/task.h\"
          "},{"location":"reference/cpp/scheduler_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/scheduler_8h/#classes","title":"Classes","text":"Type Name class Scheduler Represents a scheduler that executes various tasks.

          The documentation for this class was generated from the following file include/endstone/scheduler/scheduler.h

          "},{"location":"reference/cpp/scheduler_8h_source/","title":"File scheduler.h","text":"

          File List > endstone > scheduler > scheduler.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/scheduler/task.h\"\n\nnamespace endstone {\n\nclass Scheduler {\npublic:\n    virtual ~Scheduler() = default;\n\n    virtual std::shared_ptr<Task> runTask(Plugin &plugin, std::function<void()> task) = 0;\n\n    virtual std::shared_ptr<Task> runTaskLater(Plugin &plugin, std::function<void()> task, std::uint64_t delay) = 0;\n\n    virtual std::shared_ptr<Task> runTaskTimer(Plugin &plugin, std::function<void()> task, std::uint64_t delay,\n                                               std::uint64_t period) = 0;\n\n    virtual std::shared_ptr<Task> runTaskAsync(Plugin &plugin, std::function<void()> task) = 0;\n\n    virtual std::shared_ptr<Task> runTaskLaterAsync(Plugin &plugin, std::function<void()> task, std::uint64_t delay) = 0;\n\n    virtual std::shared_ptr<Task> runTaskTimerAsync(Plugin &plugin, std::function<void()> task, std::uint64_t delay,\n                                               std::uint64_t period) = 0;\n\n    virtual void cancelTask(TaskId id) = 0;\n\n    virtual void cancelTasks(Plugin &plugin) = 0;\n\n    virtual bool isRunning(TaskId id) = 0;\n\n    virtual bool isQueued(TaskId id) = 0;\n\n    virtual std::vector<Task *> getPendingTasks() = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/task_8h/","title":"File task.h","text":"

          FileList > endstone > scheduler > task.h

          Go to the source code of this file

          • #include <cstdint>
          • #include \"endstone/plugin/plugin.h\"
          "},{"location":"reference/cpp/task_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/task_8h/#classes","title":"Classes","text":"Type Name class Task Represents a task being executed by the scheduler.

          The documentation for this class was generated from the following file include/endstone/scheduler/task.h

          "},{"location":"reference/cpp/task_8h_source/","title":"File task.h","text":"

          File List > endstone > scheduler > task.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <cstdint>\n\n#include \"endstone/plugin/plugin.h\"\n\nnamespace endstone {\n\nusing TaskId = std::uint32_t;\n\nclass Task {\npublic:\n    virtual ~Task() = default;\n\n    [[nodiscard]] virtual TaskId getTaskId() const = 0;\n\n    [[nodiscard]] virtual Plugin *getOwner() const = 0;\n\n    [[nodiscard]] virtual bool isSync() const = 0;\n\n    [[nodiscard]] virtual bool isCancelled() const = 0;\n\n    virtual void cancel() = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_19c52f9ea81a2cf7449c80dcee80d6f0/","title":"Dir include/endstone/scoreboard","text":"

          FileList > endstone > scoreboard

          "},{"location":"reference/cpp/dir_19c52f9ea81a2cf7449c80dcee80d6f0/#files","title":"Files","text":"Type Name file criteria.h file display_slot.h file objective.h file objective_sort_order.h file render_type.h file score.h file score_entry.h file scoreboard.h

          The documentation for this class was generated from the following file include/endstone/scoreboard/

          "},{"location":"reference/cpp/criteria_8h/","title":"File criteria.h","text":"

          FileList > endstone > scoreboard > criteria.h

          Go to the source code of this file

          • #include \"endstone/scoreboard/render_type.h\"
          "},{"location":"reference/cpp/criteria_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/criteria_8h/#classes","title":"Classes","text":"Type Name class Criteria Represents a scoreboard criteria.

          The documentation for this class was generated from the following file include/endstone/scoreboard/criteria.h

          "},{"location":"reference/cpp/criteria_8h_source/","title":"File criteria.h","text":"

          File List > endstone > scoreboard > criteria.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/scoreboard/render_type.h\"\n\nnamespace endstone {\n\nclass Criteria {\npublic:\n    enum class Type {\n        Dummy,\n    };\n\n    virtual ~Criteria() = default;\n\n    [[nodiscard]] virtual std::string getName() const = 0;\n\n    [[nodiscard]] virtual bool isReadOnly() const = 0;\n\n    [[nodiscard]] virtual RenderType getDefaultRenderType() const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/display__slot_8h/","title":"File display_slot.h","text":"

          FileList > endstone > scoreboard > display_slot.h

          Go to the source code of this file

          "},{"location":"reference/cpp/display__slot_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/scoreboard/display_slot.h

          "},{"location":"reference/cpp/display__slot_8h_source/","title":"File display_slot.h","text":"

          File List > endstone > scoreboard > display_slot.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class DisplaySlot {\n    BelowName,\n    PlayerList,\n    SideBar,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/objective_8h/","title":"File objective.h","text":"

          FileList > endstone > scoreboard > objective.h

          Go to the source code of this file

          • #include <string>
          • #include \"endstone/scoreboard/objective_sort_order.h\"
          • #include \"endstone/scoreboard/score.h\"
          • #include \"endstone/util/result.h\"
          "},{"location":"reference/cpp/objective_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/objective_8h/#classes","title":"Classes","text":"Type Name class Objective Represents an objective on a scoreboard that can show scores specific to entries.

          The documentation for this class was generated from the following file include/endstone/scoreboard/objective.h

          "},{"location":"reference/cpp/objective_8h_source/","title":"File objective.h","text":"

          File List > endstone > scoreboard > objective.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n\n#include \"endstone/scoreboard/objective_sort_order.h\"\n#include \"endstone/scoreboard/score.h\"\n#include \"endstone/util/result.h\"\n\nnamespace endstone {\n\nclass Scoreboard;\n\nclass Objective {\npublic:\n    virtual ~Objective() = default;\n\n    [[nodiscard]] virtual Result<std::string> getName() const = 0;\n\n    [[nodiscard]] virtual Result<std::string> getDisplayName() const = 0;\n\n    virtual Result<void> setDisplayName(std::string display_name) = 0;\n\n    [[nodiscard]] virtual Result<const Criteria *> getCriteria() const = 0;\n\n    [[nodiscard]] virtual Result<bool> isModifiable() const = 0;\n\n    [[nodiscard]] virtual Scoreboard &getScoreboard() const = 0;\n\n    [[nodiscard]] virtual Result<void> unregister() const = 0;\n\n    [[nodiscard]] virtual Result<bool> isDisplayed() const = 0;\n\n    [[nodiscard]] virtual Result<DisplaySlot> getDisplaySlot() const = 0;\n\n    [[nodiscard]] virtual Result<ObjectiveSortOrder> getSortOrder() const = 0;\n\n    virtual Result<void> setDisplay(std::optional<DisplaySlot> slot) = 0;\n\n    virtual Result<void> setDisplay(std::optional<DisplaySlot> slot, ObjectiveSortOrder order) = 0;\n\n    [[nodiscard]] virtual Result<RenderType> getRenderType() const = 0;\n\n    virtual Result<void> setRenderType(RenderType render_type) = 0;\n\n    [[nodiscard]] virtual Result<std::unique_ptr<Score>> getScore(ScoreEntry entry) const = 0;\n\n    virtual bool operator==(const Objective &other) const = 0;\n    virtual bool operator!=(const Objective &other) const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/objective__sort__order_8h/","title":"File objective_sort_order.h","text":"

          FileList > endstone > scoreboard > objective_sort_order.h

          Go to the source code of this file

          "},{"location":"reference/cpp/objective__sort__order_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/scoreboard/objective_sort_order.h

          "},{"location":"reference/cpp/objective__sort__order_8h_source/","title":"File objective_sort_order.h","text":"

          File List > endstone > scoreboard > objective_sort_order.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class ObjectiveSortOrder {\n    Ascending,\n    Descending,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/render__type_8h/","title":"File render_type.h","text":"

          FileList > endstone > scoreboard > render_type.h

          Go to the source code of this file

          "},{"location":"reference/cpp/render__type_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/scoreboard/render_type.h

          "},{"location":"reference/cpp/render__type_8h_source/","title":"File render_type.h","text":"

          File List > endstone > scoreboard > render_type.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class RenderType : std::uint8_t {\n    Integer,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/score_8h/","title":"File score.h","text":"

          FileList > endstone > scoreboard > score.h

          Go to the source code of this file

          • #include \"endstone/scoreboard/score_entry.h\"
          • #include \"endstone/util/result.h\"
          "},{"location":"reference/cpp/score_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/score_8h/#classes","title":"Classes","text":"Type Name class Score Represents a score for an objective on a scoreboard.

          The documentation for this class was generated from the following file include/endstone/scoreboard/score.h

          "},{"location":"reference/cpp/score_8h_source/","title":"File score.h","text":"

          File List > endstone > scoreboard > score.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/scoreboard/score_entry.h\"\n#include \"endstone/util/result.h\"\n\nnamespace endstone {\n\nclass Scoreboard;\nclass Objective;\n\nclass Score {\npublic:\n    virtual ~Score() = default;\n\n    [[nodiscard]] virtual ScoreEntry getEntry() const = 0;\n\n    [[nodiscard]] virtual Result<int> getValue() const = 0;\n\n    virtual Result<void> setValue(int score) = 0;\n\n    [[nodiscard]] virtual Result<bool> isScoreSet() const = 0;\n\n    [[nodiscard]] virtual Objective &getObjective() const = 0;\n\n    [[nodiscard]] virtual Scoreboard &getScoreboard() const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/score__entry_8h/","title":"File score_entry.h","text":"

          FileList > endstone > scoreboard > score_entry.h

          Go to the source code of this file

          • #include <string>
          • #include <variant>
          • #include <vector>
          "},{"location":"reference/cpp/score__entry_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/scoreboard/score_entry.h

          "},{"location":"reference/cpp/score__entry_8h_source/","title":"File score_entry.h","text":"

          File List > endstone > scoreboard > score_entry.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <variant>\n#include <vector>\n\nnamespace endstone {\n\nclass Player;\nclass Actor;\n\nusing ScoreEntry = std::variant<Player *, Actor *, std::string>;\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/scoreboard_8h/","title":"File scoreboard.h","text":"

          FileList > endstone > scoreboard > scoreboard.h

          Go to the source code of this file

          • #include <string>
          • #include \"endstone/scoreboard/criteria.h\"
          • #include \"endstone/scoreboard/display_slot.h\"
          • #include \"endstone/scoreboard/objective.h\"
          • #include \"endstone/scoreboard/score_entry.h\"
          • #include \"endstone/util/result.h\"
          "},{"location":"reference/cpp/scoreboard_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/scoreboard_8h/#classes","title":"Classes","text":"Type Name class Scoreboard Represents a scoreboard.

          The documentation for this class was generated from the following file include/endstone/scoreboard/scoreboard.h

          "},{"location":"reference/cpp/scoreboard_8h_source/","title":"File scoreboard.h","text":"

          File List > endstone > scoreboard > scoreboard.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n\n#include \"endstone/scoreboard/criteria.h\"\n#include \"endstone/scoreboard/display_slot.h\"\n#include \"endstone/scoreboard/objective.h\"\n#include \"endstone/scoreboard/score_entry.h\"\n#include \"endstone/util/result.h\"\n\nnamespace endstone {\n\nclass Scoreboard : public std::enable_shared_from_this<Scoreboard> {\npublic:\n    virtual ~Scoreboard() = default;\n\n    virtual Result<std::unique_ptr<Objective>> addObjective(std::string name, Criteria::Type criteria) = 0;\n\n    virtual Result<std::unique_ptr<Objective>> addObjective(std::string name, Criteria::Type criteria,\n                                                            std::string display_name) = 0;\n\n    virtual Result<std::unique_ptr<Objective>> addObjective(std::string name, Criteria::Type criteria,\n                                                            std::string display_name, RenderType render_type) = 0;\n\n    [[nodiscard]] virtual std::unique_ptr<Objective> getObjective(std::string name) const = 0;\n\n    [[nodiscard]] virtual std::unique_ptr<Objective> getObjective(DisplaySlot slot) const = 0;\n\n    [[nodiscard]] virtual std::vector<std::unique_ptr<Objective>> getObjectives() const = 0;\n\n    [[nodiscard]] virtual std::vector<std::unique_ptr<Objective>> getObjectivesByCriteria(\n        Criteria::Type criteria) const = 0;\n\n    [[nodiscard]] virtual std::vector<std::unique_ptr<Score>> getScores(ScoreEntry entry) const = 0;\n\n    virtual void resetScores(ScoreEntry entry) = 0;\n\n    [[nodiscard]] virtual std::vector<ScoreEntry> getEntries() const = 0;\n\n    virtual void clearSlot(DisplaySlot slot) = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_89b85071337bf933dea6c29b4c6a4410/","title":"Dir include/endstone/util","text":"

          FileList > endstone > util

          "},{"location":"reference/cpp/dir_89b85071337bf933dea6c29b4c6a4410/#files","title":"Files","text":"Type Name file error.h file result.h file socket_address.h file uuid.h file vector.h

          The documentation for this class was generated from the following file include/endstone/util/

          "},{"location":"reference/cpp/error_8h/","title":"File error.h","text":"

          FileList > endstone > util > error.h

          Go to the source code of this file

          • #include <string_view>
          "},{"location":"reference/cpp/error_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/error_8h/#classes","title":"Classes","text":"Type Name class Error Represents an error with a message and the stack trace.

          The documentation for this class was generated from the following file include/endstone/util/error.h

          "},{"location":"reference/cpp/error_8h_source/","title":"File error.h","text":"

          File List > endstone > util > error.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string_view>\n\nnamespace endstone {\n\nclass Error {\npublic:\n  Error(std::string_view message, std::string_view stack_trace) : message_(message), stack_trace_(stack_trace) {}\n\n  [[nodiscard]] std::string_view getMessage() const noexcept\n  {\n    return message_;\n  }\n\n  [[nodiscard]] std::string_view getStackTrace() const noexcept\n  {\n    return stack_trace_;\n  }\n\nprivate:\n  std::string message_;\n  std::string stack_trace_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/result_8h/","title":"File result.h","text":"

          FileList > endstone > util > result.h

          Go to the source code of this file

          • #include <nonstd/expected.hpp>
          • #include \"endstone/util/error.h\"
          "},{"location":"reference/cpp/result_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/util/result.h

          "},{"location":"reference/cpp/result_8h_source/","title":"File result.h","text":"

          File List > endstone > util > result.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <nonstd/expected.hpp>\n\n#include \"endstone/util/error.h\"\n\nnamespace endstone {\n\ntemplate <typename T>\nusing Result = nonstd::expected<T, Error>;\n\n} // namespace endstone\n
          "},{"location":"reference/cpp/socket__address_8h/","title":"File socket_address.h","text":"

          FileList > endstone > util > socket_address.h

          Go to the source code of this file

          • #include <cstdint>
          • #include <string>
          "},{"location":"reference/cpp/socket__address_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/socket__address_8h/#classes","title":"Classes","text":"Type Name class SocketAddress Represents an IP Socket Address (hostname + port number).

          The documentation for this class was generated from the following file include/endstone/util/socket_address.h

          "},{"location":"reference/cpp/socket__address_8h_source/","title":"File socket_address.h","text":"

          File List > endstone > util > socket_address.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n#include <cstdint>\n#include <string>\n\nnamespace endstone {\n\nclass SocketAddress {\npublic:\n    SocketAddress() = default;\n    SocketAddress(std::string hostname, std::uint32_t port) : hostname_(std::move(hostname)), port_(port) {}\n\n    [[nodiscard]] const std::string &getHostname() const\n    {\n        return hostname_;\n    }\n\n    [[nodiscard]] std::uint32_t getPort() const\n    {\n        return port_;\n    }\n\nprivate:\n    std::string hostname_;\n    std::uint32_t port_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/uuid_8h/","title":"File uuid.h","text":"

          FileList > endstone > util > uuid.h

          Go to the source code of this file

          • #include <algorithm>
          • #include <cstddef>
          • #include <cstdint>
          • #include <string>
          "},{"location":"reference/cpp/uuid_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone namespace std"},{"location":"reference/cpp/uuid_8h/#classes","title":"Classes","text":"Type Name class UUID Implementation of Universally Unique Identifier ( UUID ) struct hash< endstone::UUID > <>

          The documentation for this class was generated from the following file include/endstone/util/uuid.h

          "},{"location":"reference/cpp/uuid_8h_source/","title":"File uuid.h","text":"

          File List > endstone > util > uuid.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <algorithm>\n#include <cstddef>\n#include <cstdint>\n#include <string>\n\nnamespace endstone {\n\nclass UUID {\npublic:\n    std::uint8_t *begin() noexcept\n    {\n        return data;\n    }\n\n    [[nodiscard]] const uint8_t *begin() const noexcept\n    {\n        return data;\n    }\n\n    std::uint8_t *end() noexcept\n    {\n        return data + size();\n    }\n\n    [[nodiscard]] const uint8_t *end() const noexcept\n    {\n        return data + size();\n    }\n\n    [[nodiscard]] static constexpr std::size_t size() noexcept\n    {\n        return 16;\n    }\n\n    [[nodiscard]] bool isNil() const noexcept\n    {\n        return std::all_of(std::begin(data), std::end(data), [](const auto &val) { return val == 0U; });\n    }\n\n    [[nodiscard]] int version() const noexcept\n    {\n        // version is stored in octet 9 which is index 6, since indexes count backwards\n        uint8_t octet9 = data[6];\n        if ((octet9 & 0xF0) == 0x10) {\n            return 1;\n        }\n        if ((octet9 & 0xF0) == 0x20) {\n            return 2;\n        }\n        if ((octet9 & 0xF0) == 0x30) {\n            return 3;\n        }\n        if ((octet9 & 0xF0) == 0x40) {\n            return 4;\n        }\n        if ((octet9 & 0xF0) == 0x50) {\n            return 5;\n        }\n        return -1;\n    }\n\n    void swap(UUID &rhs) noexcept\n    {\n        UUID tmp = *this;\n        *this = rhs;\n        rhs = tmp;\n    }\n\n    [[nodiscard]] std::string str() const\n    {\n        std::string result;\n        result.reserve(36);\n\n        static const char *chars = \"0123456789abcdef\";\n\n        for (size_t i = 0; i < 16; ++i) {\n            result.push_back(chars[(data[i] >> 4) & 0x0F]);\n            result.push_back(chars[data[i] & 0x0F]);\n            if (i == 3 || i == 5 || i == 7 || i == 9) {\n                result.push_back('-');\n            }\n        }\n\n        return result;\n    }\n    std::uint8_t data[16];\n};\nstatic_assert(sizeof(endstone::UUID) == endstone::UUID::size());\n\ninline bool operator==(UUID const &lhs, UUID const &rhs) noexcept\n{\n    return memcmp(lhs.data, rhs.data, sizeof(lhs.data)) == 0;\n}\n\ninline bool operator<(UUID const &lhs, UUID const &rhs) noexcept\n{\n    return memcmp(lhs.data, rhs.data, sizeof(lhs.data)) < 0;\n}\n\ninline bool operator!=(UUID const &lhs, UUID const &rhs) noexcept\n{\n    return !(lhs == rhs);\n}\n\ninline bool operator>(UUID const &lhs, UUID const &rhs) noexcept\n{\n    return rhs < lhs;\n}\ninline bool operator<=(UUID const &lhs, UUID const &rhs) noexcept\n{\n    return !(rhs < lhs);\n}\n\ninline bool operator>=(UUID const &lhs, UUID const &rhs) noexcept\n{\n    return !(lhs < rhs);\n}\n\ninline void swap(UUID &lhs, UUID &rhs) noexcept\n{\n    lhs.swap(rhs);\n}\n\ninline std::size_t hash_value(UUID const &u) noexcept\n{\n    std::size_t seed = 0;\n    for (unsigned char i : u) {\n        seed ^= static_cast<std::size_t>(i) + 0x9e3779b9 + (seed << 6) + (seed >> 2);\n    }\n\n    return seed;\n}\n\n}  // namespace endstone\n\nnamespace std {\ntemplate <>\nstruct hash<endstone::UUID> {\n    std::size_t operator()(const endstone::UUID &value) const noexcept\n    {\n        return endstone::hash_value(value);\n    }\n};\n}  // namespace std\n
          "},{"location":"reference/cpp/vector_8h/","title":"File vector.h","text":"

          FileList > endstone > util > vector.h

          Go to the source code of this file

          • #include <cmath>
          "},{"location":"reference/cpp/vector_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/vector_8h/#classes","title":"Classes","text":"Type Name class Vector <typename T>Represents a 3-dimensional vector.

          The documentation for this class was generated from the following file include/endstone/util/vector.h

          "},{"location":"reference/cpp/vector_8h_source/","title":"File vector.h","text":"

          File List > endstone > util > vector.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <cmath>\n\nnamespace endstone {\n\ntemplate <typename T>\nclass Vector {\npublic:\n    constexpr Vector() : x_(0), y_(0), z_(0) {}\n    constexpr Vector(T x, T y, T z) : x_(x), y_(y), z_(z) {}\n\n    constexpr T getX() const\n    {\n        return x_;\n    }\n\n    constexpr void setX(T x)\n    {\n        x_ = x;\n    }\n\n    constexpr T getY() const\n    {\n        return y_;\n    }\n\n    constexpr void setY(T y)\n    {\n        y_ = y;\n    }\n\n    constexpr T getZ() const\n    {\n        return z_;\n    }\n\n    constexpr void setZ(T z)\n    {\n        z_ = z;\n    }\n\n    constexpr Vector<T> operator+(const Vector<T> &other) const\n    {\n        return Vector(x_ + other.x_, y_ + other.y_, z_ + other.z_);\n    }\n\n    constexpr Vector<T> operator-(const Vector<T> &other) const\n    {\n        return Vector(x_ - other.x_, y_ - other.y_, z_ - other.z_);\n    }\n\n    constexpr Vector<T> operator*(const Vector<T> &other) const\n    {\n        return Vector(x_ * other.x_, y_ * other.y_, z_ * other.z_);\n    }\n\n    constexpr Vector<T> operator/(const Vector<T> &other) const\n    {\n        return Vector(x_ / other.x_, y_ / other.y_, z_ / other.z_);\n    }\n\n    Vector<T> &operator+=(const Vector<T> &other)\n    {\n        x_ += other.x_;\n        y_ += other.y_;\n        z_ += other.z_;\n        return *this;\n    }\n\n    Vector<T> &operator-=(const Vector<T> &other)\n    {\n        x_ -= other.x_;\n        y_ -= other.y_;\n        z_ -= other.z_;\n        return *this;\n    }\n\n    Vector<T> &operator*=(const Vector<T> &other)\n    {\n        x_ *= other.x_;\n        y_ *= other.y_;\n        z_ *= other.z_;\n        return *this;\n    }\n\n    Vector<T> &operator/=(const Vector<T> &other)\n    {\n        x_ /= other.x_;\n        y_ /= other.y_;\n        z_ /= other.z_;\n        return *this;\n    }\n\n    Vector<T> operator+(T scalar) const\n    {\n        return Vector<T>(x_ + scalar, y_ + scalar, z_ + scalar);\n    }\n\n    Vector<T> operator-(T scalar) const\n    {\n        return Vector<T>(x_ - scalar, y_ - scalar, z_ - scalar);\n    }\n\n    Vector<T> operator*(T scalar) const\n    {\n        return Vector<T>(x_ * scalar, y_ * scalar, z_ * scalar);\n    }\n\n    Vector<T> operator/(T scalar) const\n    {\n        return Vector<T>(x_ / scalar, y_ / scalar, z_ / scalar);\n    }\n\n    friend Vector<T> operator+(T scalar, const Vector<T> &v)\n    {\n        return Vector<T>(scalar + v.x_, scalar + v.y_, scalar + v.z_);\n    }\n\n    friend Vector<T> operator-(T scalar, const Vector<T> &v)\n    {\n        return Vector<T>(scalar - v.x_, scalar - v.y_, scalar - v.z_);\n    }\n\n    friend Vector<T> operator*(T scalar, const Vector<T> &v)\n    {\n        return Vector<T>(scalar * v.x_, scalar * v.y_, scalar * v.z_);\n    }\n\n    friend Vector<T> operator/(T scalar, const Vector<T> &v)\n    {\n        return Vector<T>(scalar / v.x_, scalar / v.y_, scalar / v.z_);\n    }\n\n    constexpr bool operator==(const Vector<T> &other) const\n    {\n        return (x_ == other.x_) && (y_ == other.y_) && (z_ == other.z_);\n    }\n\n    [[nodiscard]] constexpr T length() const\n    {\n        return std::sqrt(lengthSquared());\n    }\n\n    [[nodiscard]] constexpr T lengthSquared() const\n    {\n        return (x_ * x_) + (y_ * y_) + (z_ * z_);\n    }\n\n    [[nodiscard]] constexpr T distance(const Vector<T> &other) const\n    {\n        return std::sqrt(distanceSquared(other));\n    }\n\n    [[nodiscard]] constexpr T distanceSquared(const Vector<T> &other) const\n    {\n        return ((x_ - other.x_) * (x_ - other.x_)) + ((y_ - other.y_) * (y_ - other.y_)) +\n               ((z_ - other.z_) * (z_ - other.z_));\n    }\n\nprotected:\n    T x_;\n    T y_;\n    T z_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/logger_8h/","title":"File logger.h","text":"

          FileList > endstone > logger.h

          Go to the source code of this file

          • #include <string>
          • #include <utility>
          • #include <fmt/format.h>
          • #include <fmt/std.h>
          • #include \"endstone/util/error.h\"
          "},{"location":"reference/cpp/logger_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/logger_8h/#classes","title":"Classes","text":"Type Name class Logger Logger class which can format and output varies levels of logs.

          The documentation for this class was generated from the following file include/endstone/logger.h

          "},{"location":"reference/cpp/logger_8h_source/","title":"File logger.h","text":"

          File List > endstone > logger.h

          Go to the documentation of this file

          // Copyright (c) 2023, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <utility>\n\n#include <fmt/format.h>\n#include <fmt/std.h>\n\n#include \"endstone/util/error.h\"\n\nnamespace endstone {\n\nclass Logger {\npublic:\n    enum Level : std::uint8_t {\n        Trace = 0,\n        Debug = 1,\n        Info = 2,\n        Warning = 3,\n        Error = 4,\n        Critical = 5,\n        Off = 6,\n    };\n\n    Logger() = default;\n\n    virtual ~Logger() = default;\n    virtual void setLevel(Level level) = 0;\n\n    [[nodiscard]] virtual bool isEnabledFor(Level level) const = 0;\n\n    [[nodiscard]] virtual std::string_view getName() const = 0;\n\n    virtual void log(Level level, const std::string &message) const = 0;\n\n    template <typename... Args>\n    void log(Level level, const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        try {\n            log(level, fmt::format(format, std::forward<Args>(args)...));\n        }\n        catch (std::exception &e) {\n            log(Error, e.what());\n        }\n    }\n\n    void trace(const std::string &message) const\n    {\n        log(Trace, message);\n    }\n\n    template <typename... Args>\n    void trace(const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        log(Trace, format, std::forward<Args>(args)...);\n    }\n\n    void debug(const std::string &message) const\n    {\n        log(Debug, message);\n    }\n\n    template <typename... Args>\n    void debug(const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        log(Debug, format, std::forward<Args>(args)...);\n    }\n\n    void info(const std::string &message) const\n    {\n        log(Info, message);\n    }\n\n    template <typename... Args>\n    void info(const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        log(Info, format, std::forward<Args>(args)...);\n    }\n\n    void warning(const std::string &message) const\n    {\n        log(Warning, message);\n    }\n\n    template <typename... Args>\n    void warning(const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        log(Warning, format, std::forward<Args>(args)...);\n    }\n\n    void error(const std::string &message) const\n    {\n        log(Error, message);\n    }\n\n    template <typename... Args>\n    void error(const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        log(Error, format, std::forward<Args>(args)...);\n    }\n\n    void error(const endstone::Error &error) const\n    {\n        log(Error, error.getMessage());\n        log(Error, error.getStackTrace());\n    }\n\n    void critical(const std::string &message) const\n    {\n        log(Critical, message);\n    }\n\n    template <typename... Args>\n    void critical(const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        log(Critical, format, std::forward<Args>(args)...);\n    }\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/message_8h/","title":"File message.h","text":"

          FileList > endstone > message.h

          Go to the source code of this file

          • #include <string>
          • #include <utility>
          • #include <variant>
          • #include \"endstone/lang/translatable.h\"
          "},{"location":"reference/cpp/message_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/message.h

          "},{"location":"reference/cpp/message_8h_source/","title":"File message.h","text":"

          File List > endstone > message.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <utility>\n#include <variant>\n\n#include \"endstone/lang/translatable.h\"\n\nnamespace endstone {\n\nusing Message = std::variant<std::string, Translatable>;\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player_8h/","title":"File player.h","text":"

          FileList > endstone > player.h

          Go to the source code of this file

          • #include <chrono>
          • #include <variant>
          • #include \"endstone/actor/mob.h\"
          • #include \"endstone/form/action_form.h\"
          • #include \"endstone/form/message_form.h\"
          • #include \"endstone/form/modal_form.h\"
          • #include \"endstone/game_mode.h\"
          • #include \"endstone/inventory/player_inventory.h\"
          • #include \"endstone/network/spawn_particle_effect_packet.h\"
          • #include \"endstone/scoreboard/scoreboard.h\"
          • #include \"endstone/skin.h\"
          • #include \"endstone/util/socket_address.h\"
          • #include \"endstone/util/uuid.h\"
          "},{"location":"reference/cpp/player_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player_8h/#classes","title":"Classes","text":"Type Name class Player Represents a player.

          The documentation for this class was generated from the following file include/endstone/player.h

          "},{"location":"reference/cpp/player_8h_source/","title":"File player.h","text":"

          File List > endstone > player.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <chrono>\n#include <variant>\n\n#include \"endstone/actor/mob.h\"\n#include \"endstone/form/action_form.h\"\n#include \"endstone/form/message_form.h\"\n#include \"endstone/form/modal_form.h\"\n#include \"endstone/game_mode.h\"\n#include \"endstone/inventory/player_inventory.h\"\n#include \"endstone/network/spawn_particle_effect_packet.h\"\n#include \"endstone/scoreboard/scoreboard.h\"\n#include \"endstone/skin.h\"\n#include \"endstone/util/socket_address.h\"\n#include \"endstone/util/uuid.h\"\n\nnamespace endstone {\n\nclass Player : public Mob {\nprotected:\n    using FormVariant = std::variant<MessageForm, ActionForm, ModalForm>;\n\npublic:\n    // CommandSender\n    [[nodiscard]] Player *asPlayer() const override\n    {\n        return const_cast<Player *>(this);\n    }\n\n    [[nodiscard]] virtual UUID getUniqueId() const = 0;\n\n    [[nodiscard]] virtual std::string getXuid() const = 0;\n\n    [[nodiscard]] virtual const SocketAddress &getAddress() const = 0;\n\n    virtual void sendPopup(std::string message) const = 0;\n\n    virtual void sendTip(std::string message) const = 0;\n\n    virtual void sendToast(std::string title, std::string content) const = 0;\n\n    virtual void kick(std::string message) const = 0;\n\n    virtual void giveExp(int amount) = 0;\n\n    virtual void giveExpLevels(int amount) = 0;\n\n    [[nodiscard]] virtual float getExpProgress() const = 0;\n\n    virtual Result<void> setExpProgress(float progress) = 0;\n\n    [[nodiscard]] virtual int getExpLevel() const = 0;\n\n    virtual Result<void> setExpLevel(int level) = 0;\n\n    [[nodiscard]] virtual int getTotalExp() const = 0;\n\n    [[nodiscard]] virtual bool getAllowFlight() const = 0;\n\n    virtual void setAllowFlight(bool flight) = 0;\n\n    [[nodiscard]] virtual bool isFlying() const = 0;\n\n    virtual Result<void> setFlying(bool value) = 0;\n\n    [[nodiscard]] virtual float getFlySpeed() const = 0;\n\n    virtual void setFlySpeed(float value) const = 0;\n\n    [[nodiscard]] virtual float getWalkSpeed() const = 0;\n\n    virtual void setWalkSpeed(float value) const = 0;\n\n    [[nodiscard]] virtual Scoreboard &getScoreboard() const = 0;\n\n    void virtual setScoreboard(Scoreboard &scoreboard) = 0;\n\n    virtual void sendTitle(std::string title, std::string subtitle) const = 0;\n\n    virtual void sendTitle(std::string title, std::string subtitle, int fade_in, int stay, int fade_out) const = 0;\n\n    virtual void resetTitle() const = 0;\n\n    virtual void spawnParticle(std::string name, Location location) const = 0;\n\n    virtual void spawnParticle(std::string name, float x, float y, float z) const = 0;\n\n    virtual void spawnParticle(std::string name, Location location,\n                               std::optional<std::string> molang_variables_json) const = 0;\n\n    virtual void spawnParticle(std::string name, float x, float y, float z,\n                               std::optional<std::string> molang_variables_json) const = 0;\n\n    [[nodiscard]] virtual std::chrono::milliseconds getPing() const = 0;\n\n    virtual void updateCommands() const = 0;\n\n    virtual bool performCommand(std::string command) const = 0;  // NOLINT(*-use-nodiscard)\n\n    [[nodiscard]] virtual GameMode getGameMode() const = 0;\n\n    virtual void setGameMode(GameMode mode) = 0;\n\n    [[nodiscard]] virtual PlayerInventory &getInventory() const = 0;\n\n    [[nodiscard]] virtual std::string getLocale() const = 0;\n\n    [[nodiscard]] virtual std::string getDeviceOS() const = 0;\n\n    [[nodiscard]] virtual std::string getDeviceId() const = 0;\n\n    [[nodiscard]] virtual std::string getGameVersion() const = 0;\n\n    [[nodiscard]] virtual const Skin &getSkin() const = 0;\n\n    virtual void transfer(std::string host, int port) const = 0;\n\n    virtual void sendForm(FormVariant form) = 0;\n\n    virtual void closeForm() = 0;\n\n    virtual void sendPacket(Packet &packet) const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/server_8h/","title":"File server.h","text":"

          FileList > endstone > server.h

          Go to the source code of this file

          • #include <chrono>
          • #include <memory>
          • #include <string>
          • #include <string_view>
          • #include <vector>
          • #include \"endstone/block/block_data.h\"
          • #include \"endstone/boss/boss_bar.h\"
          • #include \"endstone/lang/language.h\"
          • #include \"endstone/level/level.h\"
          • #include \"endstone/logger.h\"
          • #include \"endstone/player.h\"
          • #include \"endstone/scoreboard/scoreboard.h\"
          • #include \"endstone/util/result.h\"
          • #include \"endstone/util/uuid.h\"
          "},{"location":"reference/cpp/server_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/server_8h/#classes","title":"Classes","text":"Type Name class Server Represents a server implementation.

          The documentation for this class was generated from the following file include/endstone/server.h

          "},{"location":"reference/cpp/server_8h_source/","title":"File server.h","text":"

          File List > endstone > server.h

          Go to the documentation of this file

          // Copyright (c) 2023, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <chrono>\n#include <memory>\n#include <string>\n#include <string_view>\n#include <vector>\n\n#include \"endstone/block/block_data.h\"\n#include \"endstone/boss/boss_bar.h\"\n#include \"endstone/lang/language.h\"\n#include \"endstone/level/level.h\"\n#include \"endstone/logger.h\"\n#include \"endstone/player.h\"\n#include \"endstone/scoreboard/scoreboard.h\"\n#include \"endstone/util/result.h\"\n#include \"endstone/util/uuid.h\"\n\nnamespace endstone {\n\nclass ConsoleCommandSender;\nclass Scheduler;\nclass PluginCommand;\nclass PluginManager;\n\nclass Server {\npublic:\n    Server() = default;\n    Server(const Server &) = delete;\n    Server &operator=(const Server &) = delete;\n\n    virtual ~Server() = default;\n\n    [[nodiscard]] virtual std::string getName() const = 0;\n\n    [[nodiscard]] virtual std::string getVersion() const = 0;\n\n    [[nodiscard]] virtual std::string getMinecraftVersion() const = 0;\n\n    [[nodiscard]] virtual Logger &getLogger() const = 0;\n\n    [[nodiscard]] virtual Language &getLanguage() const = 0;\n\n    [[nodiscard]] virtual PluginManager &getPluginManager() const = 0;\n\n    [[nodiscard]] virtual PluginCommand *getPluginCommand(std::string name) const = 0;\n\n    [[nodiscard]] virtual ConsoleCommandSender &getCommandSender() const = 0;\n\n    [[nodiscard]] virtual bool dispatchCommand(CommandSender &sender, std::string command_line) const = 0;\n\n    [[nodiscard]] virtual Scheduler &getScheduler() const = 0;\n\n    [[nodiscard]] virtual Level *getLevel() const = 0;\n\n    [[nodiscard]] virtual std::vector<Player *> getOnlinePlayers() const = 0;\n\n    [[nodiscard]] virtual int getMaxPlayers() const = 0;\n\n    virtual Result<void> setMaxPlayers(int max_players) = 0;\n\n    [[nodiscard]] virtual Player *getPlayer(endstone::UUID id) const = 0;\n\n    [[nodiscard]] virtual bool getOnlineMode() const = 0;\n\n    [[nodiscard]] virtual Player *getPlayer(std::string name) const = 0;\n\n    virtual void shutdown() = 0;\n\n    virtual void reload() = 0;\n\n    virtual void reloadData() = 0;\n\n    virtual void broadcast(const Message &message, const std::string &permission) const = 0;\n\n    virtual void broadcastMessage(const Message &message) const = 0;\n\n    template <typename... Args>\n    void broadcastMessage(const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        try {\n            broadcastMessage(fmt::format(format, std::forward<Args>(args)...));\n        }\n        catch (std::exception &e) {\n            getLogger().log(Logger::Error, e.what());\n        }\n    }\n\n    [[nodiscard]] virtual bool isPrimaryThread() const = 0;\n\n    [[nodiscard]] virtual Scoreboard *getScoreboard() const = 0;\n\n    [[nodiscard]] virtual std::shared_ptr<Scoreboard> createScoreboard() = 0;\n\n    virtual float getCurrentMillisecondsPerTick() = 0;\n\n    virtual float getAverageMillisecondsPerTick() = 0;\n\n    virtual float getCurrentTicksPerSecond() = 0;\n    virtual float getAverageTicksPerSecond() = 0;\n\n    virtual float getCurrentTickUsage() = 0;\n\n    virtual float getAverageTickUsage() = 0;\n\n    [[nodiscard]] virtual std::unique_ptr<BossBar> createBossBar(std::string title, BarColor color,\n                                                                 BarStyle style) const = 0;\n\n    [[nodiscard]] virtual std::unique_ptr<BossBar> createBossBar(std::string title, BarColor color, BarStyle style,\n                                                                 std::vector<BarFlag> flags) const = 0;\n\n    [[nodiscard]] virtual Result<std::shared_ptr<BlockData>> createBlockData(std::string type) const = 0;\n\n    [[nodiscard]] virtual Result<std::shared_ptr<BlockData>> createBlockData(std::string type,\n                                                                             BlockStates block_states) const = 0;\n\n    [[nodiscard]] virtual std::chrono::system_clock::time_point getStartTime() = 0;\n\n    inline static const std::string BroadcastChannelAdmin = \"endstone.broadcast.admin\";\n\n    inline static const std::string BroadcastChannelUser = \"endstone.broadcast.user\";\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/skin_8h/","title":"File skin.h","text":"

          FileList > endstone > skin.h

          Go to the source code of this file

          • #include <optional>
          • #include <string>
          • #include <utility>
          "},{"location":"reference/cpp/skin_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/skin_8h/#classes","title":"Classes","text":"Type Name class Skin Represents a player skin. struct ImageData

          The documentation for this class was generated from the following file include/endstone/skin.h

          "},{"location":"reference/cpp/skin_8h_source/","title":"File skin.h","text":"

          File List > endstone > skin.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <optional>\n#include <string>\n#include <utility>\n\nnamespace endstone {\n\nclass Skin {\npublic:\n    struct ImageData {\n        int height;\n        int width;\n        std::string data;\n    };\n\n    Skin() = default;\n\n    Skin(std::string skin_id, ImageData skin_data, std::optional<std::string> cape_id = std::nullopt,\n         std::optional<ImageData> cape_data = std::nullopt)\n        : skin_id_(std::move(skin_id)), skin_data_(std::move(skin_data)), cape_id_(std::move(cape_id)),\n          cape_data_(std::move(cape_data))\n    {\n    }\n\n    [[nodiscard]] const std::string &getSkinId() const\n    {\n        return skin_id_;\n    }\n\n    [[nodiscard]] const ImageData &getSkinData() const\n    {\n        return skin_data_;\n    }\n\n    [[nodiscard]] const std::optional<std::string> &getCapeId() const\n    {\n        return cape_id_;\n    }\n\n    [[nodiscard]] const std::optional<ImageData> &getCapeData() const\n    {\n        return cape_data_;\n    }\n\nprivate:\n    std::string skin_id_;\n    ImageData skin_data_;\n    std::optional<std::string> cape_id_;\n    std::optional<ImageData> cape_data_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/namespaces/","title":"Namespace List","text":"

          Here is a list of all namespaces with brief descriptions:

          • namespace endstone
            • namespace detail
          • namespace fmt
          • namespace std
          "},{"location":"reference/cpp/classes/","title":"Class Index","text":""},{"location":"reference/cpp/classes/#a","title":"a","text":"
          • ActionForm (endstone)
          • Actor (endstone)
          • ActorDeathEvent (endstone)
          • ActorEvent (endstone)
          • ActorKnockbackEvent (endstone)
          • ActorRemoveEvent (endstone)
          • ActorSpawnEvent (endstone)
          • ActorTeleportEvent (endstone)
          "},{"location":"reference/cpp/classes/#b","title":"b","text":"
          • Block (endstone)
          • BlockBreakEvent (endstone)
          • BlockData (endstone)
          • BlockEvent (endstone)
          • BlockPlaceEvent (endstone)
          • BlockState (endstone)
          • BossBar (endstone)
          • BroadcastMessageEvent (endstone)
          • Button (endstone::ActionForm)
          "},{"location":"reference/cpp/classes/#c","title":"c","text":"
          • ColorFormat (endstone)
          • Command (endstone)
          • CommandExecutor (endstone)
          • CommandMap (endstone)
          • CommandSender (endstone)
          • CommandSenderWrapper (endstone)
          • ConsoleCommandSender (endstone)
          • Criteria (endstone)
          "},{"location":"reference/cpp/classes/#d","title":"d","text":"
          • Dimension (endstone)
          • Dropdown (endstone)
          "},{"location":"reference/cpp/classes/#e","title":"e","text":"
          • Error (endstone)
          • Event (endstone)
          • EventHandler (endstone)
          "},{"location":"reference/cpp/classes/#f","title":"f","text":"
          • Form (endstone)
          • formatter< endstone::Block > (fmt)
          • formatter< endstone::BlockData > (fmt)
          • formatter< endstone::BlockState > (fmt)
          • formatter< endstone::BlockStates > (fmt)
          • formatter< endstone::BlockStates::mapped_type > (fmt)
          • formatter< endstone::BlockStates::value_type > (fmt)
          • formatter< endstone::ItemStack > (fmt)
          "},{"location":"reference/cpp/classes/#h","title":"h","text":"
          • HandlerList (endstone)
          • hash< endstone::UUID > (std)
          "},{"location":"reference/cpp/classes/#i","title":"i","text":"
          • ImageData (endstone::Skin)
          • Inventory (endstone)
          • ItemStack (endstone)
          "},{"location":"reference/cpp/classes/#l","title":"l","text":"
          • Label (endstone)
          • Language (endstone)
          • Level (endstone)
          • Location (endstone)
          • Logger (endstone)
          "},{"location":"reference/cpp/classes/#m","title":"m","text":"
          • MessageForm (endstone)
          • Mob (endstone)
          • ModalForm (endstone)
          "},{"location":"reference/cpp/classes/#o","title":"o","text":"
          • Objective (endstone)
          • overloaded (endstone)
          "},{"location":"reference/cpp/classes/#p","title":"p","text":"
          • Packet (endstone)
          • Permissible (endstone)
          • Permission (endstone)
          • PermissionAttachment (endstone)
          • PermissionAttachmentInfo (endstone)
          • Player (endstone)
          • PlayerChatEvent (endstone)
          • PlayerCommandEvent (endstone)
          • PlayerDeathEvent (endstone)
          • PlayerEvent (endstone)
          • PlayerInteractActorEvent (endstone)
          • PlayerInteractEvent (endstone)
          • PlayerInventory (endstone)
          • PlayerJoinEvent (endstone)
          • PlayerKickEvent (endstone)
          • PlayerLoginEvent (endstone)
          • PlayerQuitEvent (endstone)
          • PlayerTeleportEvent (endstone)
          • Plugin (endstone)
          • PluginCommand (endstone)
          • PluginDescription (endstone)
          • PluginDisableEvent (endstone)
          • PluginEnableEvent (endstone)
          • PluginLoader (endstone)
          • PluginManager (endstone)
          • Position (endstone)
          • ProxiedCommandSender (endstone)
          "},{"location":"reference/cpp/classes/#s","title":"s","text":"
          • Scheduler (endstone)
          • Score (endstone)
          • Scoreboard (endstone)
          • ScriptMessageEvent (endstone)
          • Server (endstone)
          • ServerCommandEvent (endstone)
          • ServerEvent (endstone)
          • ServerListPingEvent (endstone)
          • ServerLoadEvent (endstone)
          • Skin (endstone)
          • Slider (endstone)
          • SocketAddress (endstone)
          • SpawnParticleEffectPacket (endstone)
          • StepSlider (endstone)
          "},{"location":"reference/cpp/classes/#t","title":"t","text":"
          • Task (endstone)
          • TextInput (endstone)
          • ThunderChangeEvent (endstone)
          • Toggle (endstone)
          • Translatable (endstone)
          "},{"location":"reference/cpp/classes/#u","title":"u","text":"
          • UUID (endstone)
          "},{"location":"reference/cpp/classes/#v","title":"v","text":"
          • Vector (endstone)
          "},{"location":"reference/cpp/classes/#w","title":"w","text":"
          • WeatherChangeEvent (endstone)
          • WeatherEvent (endstone)
          "},{"location":"reference/cpp/hierarchy/","title":"Class Hierarchy","text":"

          This inheritance list is sorted roughly, but not completely, alphabetically:

          • class endstone::Form Represents a generic form.
          • class endstone::ActionForm::Button Represents a button with text and an optional icon.
          • class endstone::Permissible Represents an object that may become a server operator and can be assigned permissions.
            • class endstone::CommandSender Represents a command sender.
              • class endstone::Actor Represents a base actor in the level.
                • class endstone::Mob Represents a mobile entity (i.e. living entity), such as a monster or player.
                  • class endstone::Player Represents a player.
              • class endstone::CommandSenderWrapper Represents a wrapper that forwards commands to the wrapped CommandSender and captures its output.
              • class endstone::ConsoleCommandSender Represents a console command sender.
              • class endstone::ProxiedCommandSender Interface for proxied command sender.
          • class endstone::Event Represents an event.
            • class endstone::ActorEvent Represents an Actor-related event.
              • class endstone::ActorDeathEvent Called when an Actor dies.
                • class endstone::PlayerDeathEvent Called when a Player dies.
              • class endstone::ActorKnockbackEvent Called when a living entity receives knockback.
              • class endstone::ActorRemoveEvent Called when an Actor is removed.
              • class endstone::ActorSpawnEvent Called when an Actor is spawned into a world.
              • class endstone::ActorTeleportEvent Called when a non-player entity is teleported from one location to another.
            • class endstone::BlockEvent Represents an Block-related event.
              • class endstone::BlockBreakEvent Called when a block is broken by a player.
              • class endstone::BlockPlaceEvent Called when a block is placed by a player.
            • class endstone::PlayerEvent Represents a player related event.
              • class endstone::PlayerChatEvent Called when a player sends a chat message.
              • class endstone::PlayerCommandEvent Called whenever a player runs a command.
              • class endstone::PlayerDeathEvent Called when a Player dies.
              • class endstone::PlayerInteractActorEvent Represents an event that is called when a player right-clicks an actor.
              • class endstone::PlayerInteractEvent Represents an event that is called when a player right-clicks a block.
              • class endstone::PlayerJoinEvent Called when a player joins a server.
              • class endstone::PlayerKickEvent Called when a player gets kicked from the server.
              • class endstone::PlayerLoginEvent Called when a player attempts to login in.
              • class endstone::PlayerQuitEvent Called when a player leaves a server.
              • class endstone::PlayerTeleportEvent Called when a player is teleported from one location to another.
            • class endstone::ServerEvent Represents an Server-related event.
              • class endstone::BroadcastMessageEvent Event triggered for server broadcast messages such as fromServer::broadcast .
              • class endstone::PluginDisableEvent Called when a plugin is disabled.
              • class endstone::PluginEnableEvent Called when a plugin is enabled.
              • class endstone::ScriptMessageEvent Called when a message is sent by /scriptevent command.
              • class endstone::ServerCommandEvent Called when the console runs a command, early in the process.
              • class endstone::ServerListPingEvent Called when a server ping is coming in.
              • class endstone::ServerLoadEvent Called when either the server startup or reload has completed.
            • class endstone::WeatherEvent Represents a Weather-related event.
              • class endstone::ThunderChangeEvent Called when the thunder state in a world is changing.
              • class endstone::WeatherChangeEvent Called when the weather (rain) state in a world is changing.
          • class endstone::Block Represents a block.
          • class endstone::BossBar Represents a boss bar that is displayed to players.
          • class endstone::Command Represents a Command , which executes various tasks upon user input.
            • class endstone::PluginCommand Represents a Command belonging to aPlugin .
          • class endstone::CommandExecutor Represents a class which contains a single method for executing commands.
            • class endstone::Plugin Represents a Plugin .
          • class endstone::CommandMap Represents a command map that manages all commands of the Server .
          • class endstone::Criteria Represents a scoreboard criteria.
          • class endstone::Dimension Represents a dimension within a Level .
          • class endstone::Dropdown Represents a dropdown with a set of predefined options.
            • class endstone::StepSlider Represents a step slider with a set of predefined options.
          • class endstone::Error Represents an error with a message and the stack trace.
          • class endstone::EventHandler Represents a registered EventHandler which associates with aPlugin .
          • class endstone::HandlerList A list of event handlers. Should be instantiated on a per-event basis.
          • class endstone::Inventory Interface to the various inventories.
            • class endstone::PlayerInventory Interface to the inventory of a Player , including the four armor slots and any extra slots.
          • class endstone::Label Represents a text label.
          • class endstone::Language Represents the interface for translating text into different languages.
          • class endstone::Level Represents a level, which may contain actors, chunks and blocks.
          • class endstone::Vector Represents a 3-dimensional vector.
          • class endstone::Logger Logger class which can format and output varies levels of logs.
          • class endstone::Objective Represents an objective on a scoreboard that can show scores specific to entries.
          • class endstone::Packet Represents a packet.
            • class endstone::SpawnParticleEffectPacket Represents a packet for spawning a particle effect.
          • class endstone::Permission Represents a unique permission that may be attached to a Permissible .
          • class endstone::PermissionAttachment Holds information about a permission attachment on a Permissible object.
          • class endstone::PermissionAttachmentInfo Holds information on a permission and which PermissionAttachment provides it.
          • class endstone::PluginDescription Represents the basic information about a plugin that the plugin loader needs to know.
          • class endstone::PluginLoader Represents a plugin loader, which handles direct access to specific types of plugins.
          • class endstone::PluginManager Represents a plugin manager that handles all plugins from the Server .
          • class endstone::Scheduler Represents a scheduler that executes various tasks.
          • class endstone::Score Represents a score for an objective on a scoreboard.
          • class endstone::Server Represents a server implementation.
          • class endstone::Skin Represents a player skin.
          • class endstone::Slider Represents a slider with a label.
          • class endstone::SocketAddress Represents an IP Socket Address (hostname + port number).
          • class endstone::Task Represents a task being executed by the scheduler.
          • class endstone::TextInput Represents a text input field.
          • class endstone::Toggle Represents a toggle button with a label.
          • class endstone::Translatable Represents an object with a text representation that can be translated by the Minecraft client.
          • class endstone::UUID Implementation of Universally Unique Identifier ( UUID )
          • struct endstone::ColorFormat All supported color and format codes.
          • struct endstone::Skin::ImageData
          • struct std::hash< endstone::UUID >
          • class std::enable_shared_from_this< BlockData >
            • class endstone::BlockData Represents the data related to a live block.
          • class std::enable_shared_from_this< BlockState >
            • class endstone::BlockState Represents a captured state of a block, which will not update automatically.
          • class std::enable_shared_from_this< ItemStack >
            • class endstone::ItemStack Represents a stack of items.
          • class std::enable_shared_from_this< Scoreboard >
            • class endstone::Scoreboard Represents a scoreboard.
          • class endstone::Func
            • struct endstone::overloaded Helper type for visitors.
          • class formatter< string_view >
            • struct fmt::formatter< endstone::Block >
            • struct fmt::formatter< endstone::BlockData >
            • struct fmt::formatter< endstone::BlockState >
            • struct fmt::formatter< endstone::BlockStates >
            • struct fmt::formatter< endstone::BlockStates::mapped_type >
            • struct fmt::formatter< endstone::BlockStates::value_type >
            • struct fmt::formatter< endstone::ItemStack >
          "},{"location":"reference/cpp/modules/","title":"Modules","text":"

          No modules found.

          "},{"location":"reference/cpp/pages/","title":"Related Pages","text":"

          Here is a list of all related documentation pages:

          "},{"location":"reference/cpp/class_members/","title":"Class Members","text":""},{"location":"reference/cpp/class_members/#a","title":"a","text":"
          • ActionForm (endstone::ActionForm)
          • addButton (endstone::ActionForm)
          • addScoreboardTag (endstone::Actor)
          • asActor (endstone::Actor, endstone::CommandSender, endstone::CommandSenderWrapper)
          • ActorDeathEvent (endstone::ActorDeathEvent)
          • ActorEvent (endstone::ActorEvent)
          • actor_ (endstone::ActorEvent, endstone::PlayerInteractActorEvent)
          • ActorKnockbackEvent (endstone::ActorKnockbackEvent)
          • ActorRemoveEvent (endstone::ActorRemoveEvent)
          • ActorSpawnEvent (endstone::ActorSpawnEvent)
          • ActorTeleportEvent (endstone::ActorTeleportEvent)
          • addFlag (endstone::BossBar)
          • addPlayer (endstone::BossBar)
          • Aqua (endstone::ColorFormat)
          • aliases_ (endstone::Command)
          • allowChangesFrom (endstone::Command)
          • asPluginCommand (endstone::Command, endstone::PluginCommand)
          • asCommandSender (endstone::CommandSender, endstone::CommandSenderWrapper, endstone::Permissible)
          • asConsole (endstone::CommandSender, endstone::CommandSenderWrapper)
          • asPlayer (endstone::CommandSender, endstone::CommandSenderWrapper, endstone::Player)
          • addAttachment (endstone::CommandSenderWrapper, endstone::Permissible)
          • addOption (endstone::Dropdown)
          • async_ (endstone::Event)
          • addItem (endstone::Inventory)
          • amount_ (endstone::ItemStack)
          • asEndstoneItemStack (endstone::ItemStack)
          • addControl (endstone::ModalForm)
          • addParent (endstone::Permission)
          • attachment_ (endstone::PermissionAttachmentInfo)
          • api_version_ (endstone::PluginDescription)
          • authors_ (endstone::PluginDescription)
          • addPermission (endstone::PluginManager)
          • addObjective (endstone::Scoreboard)
          • actor_id (endstone::SpawnParticleEffectPacket)
          "},{"location":"reference/cpp/class_members/#b","title":"b","text":"
          • buttons_ (endstone::ActionForm)
          • Button (endstone::ActionForm::Button)
          • BlockBreakEvent (endstone::BlockBreakEvent)
          • BlockEvent (endstone::BlockEvent)
          • block_ (endstone::BlockEvent)
          • BlockPlaceEvent (endstone::BlockPlaceEvent)
          • BroadcastMessageEvent (endstone::BroadcastMessageEvent)
          • Black (endstone::ColorFormat)
          • Blue (endstone::ColorFormat)
          • Bold (endstone::ColorFormat)
          • bake (endstone::HandlerList)
          • baked_handlers_ (endstone::HandlerList)
          • button1_text_ (endstone::MessageForm)
          • button2_text_ (endstone::MessageForm)
          • block_clicked_ (endstone::PlayerInteractEvent)
          • block_face_ (endstone::PlayerInteractEvent)
          • BroadcastChannelAdmin (endstone::Server)
          • BroadcastChannelUser (endstone::Server)
          • broadcast (endstone::Server)
          • broadcastMessage (endstone::Server)
          • begin (endstone::UUID)
          "},{"location":"reference/cpp/class_members/#c","title":"c","text":"
          • content_ (endstone::ActionForm, endstone::MessageForm)
          • captureState (endstone::Block)
          • Command (endstone::Command)
          • command_map_ (endstone::Command)
          • CommandMap (endstone::CommandMap)
          • clearCommands (endstone::CommandMap)
          • Callback (endstone::CommandSenderWrapper)
          • CommandSenderWrapper (endstone::CommandSenderWrapper)
          • cancelled_ (endstone::Event)
          • callEvent (endstone::EventHandler, endstone::PluginManager)
          • clear (endstone::Inventory)
          • critical (endstone::Logger)
          • Control (endstone::ModalForm)
          • controls_ (endstone::ModalForm)
          • children_ (endstone::Permission)
          • closeForm (endstone::Player)
          • command_ (endstone::PlayerCommandEvent, endstone::ServerCommandEvent)
          • clicked_position_ (endstone::PlayerInteractEvent)
          • commands_ (endstone::PluginDescription)
          • contributors_ (endstone::PluginDescription)
          • clearPlugins (endstone::PluginManager)
          • cancelTask (endstone::Scheduler)
          • cancelTasks (endstone::Scheduler)
          • clearSlot (endstone::Scoreboard)
          • createBlockData (endstone::Server)
          • createBossBar (endstone::Server)
          • createScoreboard (endstone::Server)
          • cape_data_ (endstone::Skin)
          • cape_id_ (endstone::Skin)
          • cancel (endstone::Task)
          "},{"location":"reference/cpp/class_members/#d","title":"d","text":"
          • DarkAqua (endstone::ColorFormat)
          • DarkBlue (endstone::ColorFormat)
          • DarkGray (endstone::ColorFormat)
          • DarkGreen (endstone::ColorFormat)
          • DarkPurple (endstone::ColorFormat)
          • DarkRed (endstone::ColorFormat)
          • description_ (endstone::Command, endstone::Permission, endstone::PluginDescription)
          • dispatch (endstone::CommandMap)
          • Dropdown (endstone::Dropdown, endstone::StepSlider)
          • default_index_ (endstone::Dropdown)
          • debug (endstone::Logger)
          • DefaultPermission (endstone::Permission)
          • default_value_ (endstone::Permission, endstone::Slider, endstone::Toggle)
          • death_message_ (endstone::PlayerDeathEvent)
          • data_folder_ (endstone::Plugin)
          • default_permission_ (endstone::PluginDescription)
          • depend_ (endstone::PluginDescription)
          • disablePlugin (endstone::PluginLoader, endstone::PluginManager)
          • disablePlugins (endstone::PluginManager)
          • dimension_ (endstone::Position)
          • dispatchCommand (endstone::Server)
          • deserialize (endstone::ServerListPingEvent)
          • data (endstone::Skin::ImageData, endstone::UUID)
          • dimension_id (endstone::SpawnParticleEffectPacket)
          • default_text_ (endstone::TextInput)
          • distance (endstone::Vector)
          • distanceSquared (endstone::Vector)
          "},{"location":"reference/cpp/class_members/#e","title":"e","text":"
          • Escape (endstone::ColorFormat)
          • execute (endstone::Command, endstone::PluginCommand)
          • Error (endstone::Error)
          • Event (endstone::Event, endstone::ServerEvent)
          • EventHandler (endstone::EventHandler)
          • event_ (endstone::EventHandler, endstone::HandlerList)
          • executor_ (endstone::EventHandler, endstone::PluginCommand)
          • error (endstone::Logger)
          • enabled_ (endstone::Plugin)
          • enablePlugin (endstone::PluginLoader, endstone::PluginManager)
          • enablePlugins (endstone::PluginManager)
          • effect_name (endstone::SpawnParticleEffectPacket)
          • empty (endstone::Translatable)
          • end (endstone::UUID)
          "},{"location":"reference/cpp/class_members/#f","title":"f","text":"
          • from_ (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • Form (endstone::Form)
          • first (endstone::Inventory)
          • FormVariant (endstone::Player)
          • full_name_ (endstone::PluginDescription)
          • format (fmt::formatter< endstone::Block >, fmt::formatter< endstone::BlockData >, fmt::formatter< endstone::BlockState >, fmt::formatter< endstone::BlockStates >, fmt::formatter< endstone::BlockStates::mapped_type >, fmt::formatter< endstone::BlockStates::value_type >, fmt::formatter< endstone::ItemStack >)
          "},{"location":"reference/cpp/class_members/#g","title":"g","text":"
          • getIcon (endstone::ActionForm::Button, endstone::ModalForm)
          • getOnClick (endstone::ActionForm::Button)
          • getText (endstone::ActionForm::Button, endstone::Label, endstone::Translatable)
          • getButtons (endstone::ActionForm)
          • getContent (endstone::ActionForm, endstone::MessageForm)
          • getOnSubmit (endstone::ActionForm, endstone::MessageForm, endstone::ModalForm)
          • getDimension (endstone::Actor, endstone::Block, endstone::BlockState, endstone::Level, endstone::Position)
          • getHealth (endstone::Actor)
          • getId (endstone::Actor)
          • getLevel (endstone::Actor, endstone::Dimension, endstone::Server, endstone::WeatherEvent)
          • getLocation (endstone::Actor, endstone::Block, endstone::BlockState)
          • getMaxHealth (endstone::Actor)
          • getRuntimeId (endstone::Actor)
          • getScoreboardTags (endstone::Actor)
          • getVelocity (endstone::Actor)
          • getEventName (endstone::ActorDeathEvent, endstone::ActorKnockbackEvent, endstone::ActorRemoveEvent, endstone::ActorSpawnEvent, endstone::ActorTeleportEvent, endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::BroadcastMessageEvent, endstone::Event, endstone::PlayerChatEvent, endstone::PlayerCommandEvent, endstone::PlayerDeathEvent, endstone::PlayerInteractActorEvent, endstone::PlayerInteractEvent, endstone::PlayerJoinEvent, endstone::PlayerKickEvent, endstone::PlayerLoginEvent, endstone::PlayerQuitEvent, endstone::PlayerTeleportEvent, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::ScriptMessageEvent, endstone::ServerCommandEvent, endstone::ServerListPingEvent, endstone::ServerLoadEvent, endstone::ThunderChangeEvent, endstone::WeatherChangeEvent)
          • getActor (endstone::ActorEvent, endstone::ActorKnockbackEvent, endstone::PlayerInteractActorEvent)
          • getKnockback (endstone::ActorKnockbackEvent)
          • getSource (endstone::ActorKnockbackEvent)
          • getFrom (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • getTo (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • getData (endstone::Block, endstone::BlockState)
          • getRelative (endstone::Block)
          • getType (endstone::Block, endstone::BlockData, endstone::BlockState, endstone::Dimension, endstone::ItemStack, endstone::Packet, endstone::ServerLoadEvent, endstone::SpawnParticleEffectPacket)
          • getX (endstone::Block, endstone::BlockState, endstone::Vector)
          • getY (endstone::Block, endstone::BlockState, endstone::Vector)
          • getZ (endstone::Block, endstone::BlockState, endstone::Vector)
          • getPlayer (endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::PlayerEvent, endstone::Server)
          • getBlockStates (endstone::BlockData)
          • getBlock (endstone::BlockEvent, endstone::BlockState, endstone::PlayerInteractEvent)
          • getBlockAgainst (endstone::BlockPlaceEvent)
          • getBlockPlacedState (endstone::BlockPlaceEvent)
          • getBlockReplaced (endstone::BlockPlaceEvent)
          • getColor (endstone::BossBar)
          • getPlayers (endstone::BossBar)
          • getProgress (endstone::BossBar)
          • getStyle (endstone::BossBar)
          • getTitle (endstone::BossBar, endstone::Form)
          • getMessage (endstone::BroadcastMessageEvent, endstone::Error, endstone::PlayerChatEvent, endstone::ScriptMessageEvent)
          • getRecipients (endstone::BroadcastMessageEvent)
          • Gold (endstone::ColorFormat)
          • Gray (endstone::ColorFormat)
          • Green (endstone::ColorFormat)
          • getAliases (endstone::Command)
          • getDescription (endstone::Command, endstone::Permission, endstone::Plugin, endstone::PluginDescription)
          • getName (endstone::Command, endstone::CommandSender, endstone::CommandSenderWrapper, endstone::Criteria, endstone::Dimension, endstone::Level, endstone::Logger, endstone::Objective, endstone::Permission, endstone::Plugin, endstone::PluginDescription, endstone::Server)
          • getPermissions (endstone::Command, endstone::PermissionAttachment, endstone::PluginDescription, endstone::PluginManager)
          • getUsages (endstone::Command)
          • getCommand (endstone::CommandMap, endstone::PlayerCommandEvent, endstone::Plugin, endstone::ServerCommandEvent)
          • getServer (endstone::CommandSender, endstone::CommandSenderWrapper, endstone::Plugin, endstone::PluginLoader)
          • getEffectivePermissions (endstone::CommandSenderWrapper, endstone::Permissible)
          • getDefaultRenderType (endstone::Criteria)
          • getBlockAt (endstone::Dimension)
          • getDefaultIndex (endstone::Dropdown)
          • getLabel (endstone::Dropdown, endstone::Slider, endstone::TextInput, endstone::Toggle)
          • getOptions (endstone::Dropdown)
          • getStackTrace (endstone::Error)
          • getEventType (endstone::EventHandler)
          • getPlugin (endstone::EventHandler, endstone::PermissionAttachment, endstone::PluginCommand, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::PluginManager)
          • getPriority (endstone::EventHandler)
          • getOnClose (endstone::Form)
          • getHandlers (endstone::HandlerList)
          • getContents (endstone::Inventory)
          • getItem (endstone::Inventory, endstone::PlayerInteractEvent)
          • getMaxStackSize (endstone::Inventory)
          • getSize (endstone::Inventory)
          • getAmount (endstone::ItemStack)
          • getLocale (endstone::Language, endstone::Player)
          • getActors (endstone::Level)
          • getDimensions (endstone::Level)
          • getTime (endstone::Level)
          • getPitch (endstone::Location)
          • getYaw (endstone::Location)
          • getButton1 (endstone::MessageForm)
          • getButton2 (endstone::MessageForm)
          • getControls (endstone::ModalForm)
          • getSubmitButton (endstone::ModalForm)
          • getCriteria (endstone::Objective)
          • getDisplayName (endstone::Objective)
          • getDisplaySlot (endstone::Objective)
          • getRenderType (endstone::Objective)
          • getScore (endstone::Objective)
          • getScoreboard (endstone::Objective, endstone::Player, endstone::Score, endstone::Server)
          • getSortOrder (endstone::Objective)
          • getChildren (endstone::Permission)
          • getDefault (endstone::Permission)
          • getPermissibles (endstone::Permission)
          • getPermissible (endstone::PermissionAttachment, endstone::PermissionAttachmentInfo)
          • getRemovalCallback (endstone::PermissionAttachment)
          • getAttachment (endstone::PermissionAttachmentInfo)
          • getPermission (endstone::PermissionAttachmentInfo, endstone::PluginManager)
          • getValue (endstone::PermissionAttachmentInfo, endstone::Score)
          • getAddress (endstone::Player)
          • getAllowFlight (endstone::Player)
          • getDeviceId (endstone::Player)
          • getDeviceOS (endstone::Player)
          • getExpLevel (endstone::Player)
          • getExpProgress (endstone::Player)
          • getFlySpeed (endstone::Player)
          • getGameMode (endstone::Player, endstone::ServerListPingEvent)
          • getGameVersion (endstone::Player)
          • getInventory (endstone::Player)
          • getPing (endstone::Player)
          • getSkin (endstone::Player)
          • getTotalExp (endstone::Player)
          • getUniqueId (endstone::Player)
          • getWalkSpeed (endstone::Player)
          • getXuid (endstone::Player)
          • giveExp (endstone::Player)
          • giveExpLevels (endstone::Player)
          • getDeathMessage (endstone::PlayerDeathEvent)
          • getBlockFace (endstone::PlayerInteractEvent)
          • getClickedPosition (endstone::PlayerInteractEvent)
          • getJoinMessage (endstone::PlayerJoinEvent)
          • getReason (endstone::PlayerKickEvent)
          • getKickMessage (endstone::PlayerLoginEvent)
          • getQuitMessage (endstone::PlayerQuitEvent)
          • getDataFolder (endstone::Plugin)
          • getLogger (endstone::Plugin, endstone::Server)
          • getPluginLoader (endstone::Plugin)
          • getExecutor (endstone::PluginCommand)
          • getAPIVersion (endstone::PluginDescription)
          • getAuthors (endstone::PluginDescription)
          • getCommands (endstone::PluginDescription)
          • getContributors (endstone::PluginDescription)
          • getDefaultPermission (endstone::PluginDescription)
          • getDepend (endstone::PluginDescription)
          • getFullName (endstone::PluginDescription)
          • getLoad (endstone::PluginDescription)
          • getLoadBefore (endstone::PluginDescription)
          • getPrefix (endstone::PluginDescription)
          • getProvides (endstone::PluginDescription)
          • getSoftDepend (endstone::PluginDescription)
          • getVersion (endstone::PluginDescription, endstone::Server)
          • getWebsite (endstone::PluginDescription)
          • getDefaultPermSubscriptions (endstone::PluginManager)
          • getDefaultPermissions (endstone::PluginManager)
          • getPermissionSubscriptions (endstone::PluginManager)
          • getPlugins (endstone::PluginManager)
          • getBlockX (endstone::Position)
          • getBlockY (endstone::Position)
          • getBlockZ (endstone::Position)
          • getCallee (endstone::ProxiedCommandSender)
          • getCaller (endstone::ProxiedCommandSender)
          • getPendingTasks (endstone::Scheduler)
          • getEntry (endstone::Score)
          • getObjective (endstone::Score, endstone::Scoreboard)
          • getEntries (endstone::Scoreboard)
          • getObjectives (endstone::Scoreboard)
          • getObjectivesByCriteria (endstone::Scoreboard)
          • getScores (endstone::Scoreboard)
          • getMessageId (endstone::ScriptMessageEvent)
          • getSender (endstone::ScriptMessageEvent, endstone::ServerCommandEvent)
          • getAverageMillisecondsPerTick (endstone::Server)
          • getAverageTickUsage (endstone::Server)
          • getAverageTicksPerSecond (endstone::Server)
          • getCommandSender (endstone::Server)
          • getCurrentMillisecondsPerTick (endstone::Server)
          • getCurrentTickUsage (endstone::Server)
          • getCurrentTicksPerSecond (endstone::Server)
          • getLanguage (endstone::Server)
          • getMaxPlayers (endstone::Server, endstone::ServerListPingEvent)
          • getMinecraftVersion (endstone::Server)
          • getOnlineMode (endstone::Server)
          • getOnlinePlayers (endstone::Server)
          • getPluginCommand (endstone::Server)
          • getPluginManager (endstone::Server)
          • getScheduler (endstone::Server)
          • getStartTime (endstone::Server)
          • game_mode_ (endstone::ServerListPingEvent)
          • getLevelName (endstone::ServerListPingEvent)
          • getLocalPort (endstone::ServerListPingEvent)
          • getLocalPortV6 (endstone::ServerListPingEvent)
          • getMinecraftVersionNetwork (endstone::ServerListPingEvent)
          • getMotd (endstone::ServerListPingEvent)
          • getNetworkProtocolVersion (endstone::ServerListPingEvent)
          • getNumPlayers (endstone::ServerListPingEvent)
          • getRemoteHost (endstone::ServerListPingEvent)
          • getRemotePort (endstone::ServerListPingEvent)
          • getServerGuid (endstone::ServerListPingEvent)
          • getCapeData (endstone::Skin)
          • getCapeId (endstone::Skin)
          • getSkinData (endstone::Skin)
          • getSkinId (endstone::Skin)
          • getDefaultValue (endstone::Slider, endstone::TextInput, endstone::Toggle)
          • getMax (endstone::Slider)
          • getMin (endstone::Slider)
          • getStep (endstone::Slider)
          • getHostname (endstone::SocketAddress)
          • getPort (endstone::SocketAddress)
          • getOwner (endstone::Task)
          • getTaskId (endstone::Task)
          • getPlaceholder (endstone::TextInput)
          • getParameters (endstone::Translatable)
          "},{"location":"reference/cpp/class_members/#h","title":"h","text":"
          • hasFlag (endstone::BossBar)
          • hasPermission (endstone::CommandSenderWrapper, endstone::Permissible)
          • HandlerList (endstone::HandlerList)
          • handlers_ (endstone::HandlerList)
          • hasBlock (endstone::PlayerInteractEvent)
          • hasItem (endstone::PlayerInteractEvent)
          • height (endstone::Skin::ImageData)
          • hostname_ (endstone::SocketAddress)
          "},{"location":"reference/cpp/class_members/#i","title":"i","text":"
          • icon_ (endstone::ActionForm::Button, endstone::ModalForm)
          • isDead (endstone::Actor)
          • isInLava (endstone::Actor)
          • isInWater (endstone::Actor)
          • isOnGround (endstone::Actor)
          • isCancellable (endstone::ActorDeathEvent, endstone::ActorKnockbackEvent, endstone::ActorRemoveEvent, endstone::ActorSpawnEvent, endstone::ActorTeleportEvent, endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::BroadcastMessageEvent, endstone::Event, endstone::PlayerChatEvent, endstone::PlayerCommandEvent, endstone::PlayerDeathEvent, endstone::PlayerInteractActorEvent, endstone::PlayerInteractEvent, endstone::PlayerJoinEvent, endstone::PlayerKickEvent, endstone::PlayerLoginEvent, endstone::PlayerQuitEvent, endstone::PlayerTeleportEvent, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::ScriptMessageEvent, endstone::ServerCommandEvent, endstone::ServerListPingEvent, endstone::ServerLoadEvent, endstone::ThunderChangeEvent, endstone::WeatherChangeEvent)
          • isValid (endstone::Block)
          • isVisible (endstone::BossBar)
          • Italic (endstone::ColorFormat)
          • isRegistered (endstone::Command)
          • isOp (endstone::CommandSenderWrapper, endstone::Permissible)
          • isPermissionSet (endstone::CommandSenderWrapper, endstone::Permissible)
          • isReadOnly (endstone::Criteria)
          • isAsynchronous (endstone::Event)
          • isCancelled (endstone::Event, endstone::Task)
          • ignore_cancelled_ (endstone::EventHandler)
          • isIgnoreCancelled (endstone::EventHandler)
          • isEmpty (endstone::Inventory)
          • ItemStack (endstone::ItemStack)
          • info (endstone::Logger)
          • isEnabledFor (endstone::Logger)
          • isGliding (endstone::Mob)
          • isDisplayed (endstone::Objective)
          • isModifiable (endstone::Objective)
          • init (endstone::Permission)
          • isFlying (endstone::Player)
          • item_ (endstone::PlayerInteractEvent)
          • isEnabled (endstone::Plugin)
          • isPluginEnabled (endstone::PluginManager)
          • isQueued (endstone::Scheduler)
          • isRunning (endstone::Scheduler)
          • isScoreSet (endstone::Score)
          • isPrimaryThread (endstone::Server)
          • isSync (endstone::Task)
          • isNil (endstone::UUID)
          "},{"location":"reference/cpp/class_members/#j","title":"j","text":"
          • join_message_ (endstone::PlayerJoinEvent)
          "},{"location":"reference/cpp/class_members/#k","title":"k","text":"
          • knockback_ (endstone::ActorKnockbackEvent)
          • kick (endstone::Player)
          "},{"location":"reference/cpp/class_members/#l","title":"l","text":"
          • LightPurple (endstone::ColorFormat)
          • label_ (endstone::Dropdown, endstone::Slider, endstone::TextInput, endstone::Toggle)
          • Label (endstone::Label)
          • Location (endstone::Location)
          • Level (endstone::Logger)
          • Logger (endstone::Logger)
          • log (endstone::Logger)
          • loader_ (endstone::Plugin)
          • logger_ (endstone::Plugin)
          • load_ (endstone::PluginDescription)
          • load_before_ (endstone::PluginDescription)
          • loadPlugins (endstone::PluginLoader, endstone::PluginManager)
          • level_name_ (endstone::ServerListPingEvent)
          • local_port_ (endstone::ServerListPingEvent)
          • local_port_v6_ (endstone::ServerListPingEvent)
          • LoadType (endstone::ServerLoadEvent)
          • length (endstone::Vector)
          • lengthSquared (endstone::Vector)
          • level_ (endstone::WeatherEvent)
          "},{"location":"reference/cpp/class_members/#m","title":"m","text":"
          • mob_ (endstone::ActorKnockbackEvent)
          • message_ (endstone::BroadcastMessageEvent, endstone::Error, endstone::PlayerChatEvent, endstone::PlayerLoginEvent, endstone::ScriptMessageEvent)
          • MaterialAmethyst (endstone::ColorFormat)
          • MaterialCopper (endstone::ColorFormat)
          • MaterialDiamond (endstone::ColorFormat)
          • MaterialEmerald (endstone::ColorFormat)
          • MaterialGold (endstone::ColorFormat)
          • MaterialIron (endstone::ColorFormat)
          • MaterialLapis (endstone::ColorFormat)
          • MaterialNetherite (endstone::ColorFormat)
          • MaterialQuartz (endstone::ColorFormat)
          • MaterialRedstone (endstone::ColorFormat)
          • MinecoinGold (endstone::ColorFormat)
          • mtx_ (endstone::HandlerList)
          • message_id_ (endstone::ScriptMessageEvent)
          • max_players_ (endstone::ServerListPingEvent)
          • minecraft_version_network_ (endstone::ServerListPingEvent)
          • motd_ (endstone::ServerListPingEvent)
          • max_ (endstone::Slider)
          • min_ (endstone::Slider)
          • molang_variables_json (endstone::SpawnParticleEffectPacket)
          "},{"location":"reference/cpp/class_members/#n","title":"n","text":"
          • NAME (endstone::ActorDeathEvent, endstone::ActorKnockbackEvent, endstone::ActorRemoveEvent, endstone::ActorSpawnEvent, endstone::ActorTeleportEvent, endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::BroadcastMessageEvent, endstone::PlayerChatEvent, endstone::PlayerCommandEvent, endstone::PlayerDeathEvent, endstone::PlayerInteractActorEvent, endstone::PlayerInteractEvent, endstone::PlayerJoinEvent, endstone::PlayerKickEvent, endstone::PlayerLoginEvent, endstone::PlayerQuitEvent, endstone::PlayerTeleportEvent, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::ScriptMessageEvent, endstone::ServerCommandEvent, endstone::ServerListPingEvent, endstone::ServerLoadEvent, endstone::ThunderChangeEvent, endstone::WeatherChangeEvent)
          • name_ (endstone::Command, endstone::Permission, endstone::PluginDescription)
          • network_protocol_version_ (endstone::ServerListPingEvent)
          • num_players_ (endstone::ServerListPingEvent)
          "},{"location":"reference/cpp/class_members/#o","title":"o","text":"
          • OnSubmitCallback (endstone::ActionForm, endstone::MessageForm, endstone::ModalForm)
          • OnClickCallback (endstone::ActionForm::Button)
          • on_click_ (endstone::ActionForm::Button)
          • on_submit_ (endstone::ActionForm, endstone::MessageForm, endstone::ModalForm)
          • Obfuscated (endstone::ColorFormat)
          • onCommand (endstone::CommandExecutor)
          • operator= (endstone::CommandMap, endstone::Event, endstone::Plugin, endstone::PluginLoader, endstone::PluginManager, endstone::Server)
          • on_error_ (endstone::CommandSenderWrapper)
          • on_message_ (endstone::CommandSenderWrapper)
          • options_ (endstone::Dropdown)
          • OnCloseCallback (endstone::Form)
          • on_close_ (endstone::Form)
          • operator!= (endstone::Objective)
          • operator== (endstone::Objective, endstone::Vector)
          • onDisable (endstone::Plugin)
          • onEnable (endstone::Plugin)
          • onLoad (endstone::Plugin)
          • owner_ (endstone::PluginCommand)
          • operator* (endstone::Vector)
          • operator*= (endstone::Vector)
          • operator+ (endstone::Vector)
          • operator+= (endstone::Vector)
          • operator- (endstone::Vector)
          • operator-= (endstone::Vector)
          • operator/ (endstone::Vector)
          • operator/= (endstone::Vector)
          • operator() (std::hash< endstone::UUID >)
          "},{"location":"reference/cpp/class_members/#p","title":"p","text":"
          • player_ (endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::PlayerEvent)
          • placed_against_ (endstone::BlockPlaceEvent)
          • placed_block_ (endstone::BlockPlaceEvent)
          • permissions_ (endstone::Command, endstone::PermissionAttachment, endstone::PluginDescription)
          • plugin_ (endstone::EventHandler, endstone::PermissionAttachment, endstone::PluginDisableEvent, endstone::PluginEnableEvent)
          • priority_ (endstone::EventHandler)
          • pitch_ (endstone::Location)
          • Permission (endstone::Permission)
          • plugin_manager_ (endstone::Permission)
          • PermissionAttachment (endstone::PermissionAttachment)
          • permissible_ (endstone::PermissionAttachment, endstone::PermissionAttachmentInfo)
          • PermissionAttachmentInfo (endstone::PermissionAttachmentInfo)
          • permission_ (endstone::PermissionAttachmentInfo)
          • performCommand (endstone::Player)
          • PlayerChatEvent (endstone::PlayerChatEvent)
          • PlayerCommandEvent (endstone::PlayerCommandEvent)
          • PlayerDeathEvent (endstone::PlayerDeathEvent)
          • PlayerEvent (endstone::PlayerEvent)
          • PlayerInteractActorEvent (endstone::PlayerInteractActorEvent)
          • PlayerInteractEvent (endstone::PlayerInteractEvent)
          • PlayerJoinEvent (endstone::PlayerJoinEvent)
          • PlayerKickEvent (endstone::PlayerKickEvent)
          • PlayerLoginEvent (endstone::PlayerLoginEvent)
          • PlayerQuitEvent (endstone::PlayerQuitEvent)
          • PlayerTeleportEvent (endstone::PlayerTeleportEvent)
          • Plugin (endstone::Plugin)
          • PluginCommand (endstone::PluginCommand)
          • PluginDescription (endstone::PluginDescription)
          • prefix_ (endstone::PluginDescription)
          • provides_ (endstone::PluginDescription)
          • PluginDisableEvent (endstone::PluginDisableEvent)
          • PluginEnableEvent (endstone::PluginEnableEvent)
          • PluginLoader (endstone::PluginLoader)
          • PluginManager (endstone::PluginManager)
          • Position (endstone::Position)
          • ping_response_ (endstone::ServerListPingEvent)
          • port_ (endstone::SocketAddress)
          • position (endstone::SpawnParticleEffectPacket)
          • placeholder_ (endstone::TextInput)
          • params_ (endstone::Translatable)
          "},{"location":"reference/cpp/class_members/#q","title":"q","text":"
          • quit_message_ (endstone::PlayerQuitEvent)
          "},{"location":"reference/cpp/class_members/#r","title":"r","text":"
          • removeScoreboardTag (endstone::Actor)
          • raw_knockback_ (endstone::ActorKnockbackEvent)
          • removeAll (endstone::BossBar)
          • removeFlag (endstone::BossBar)
          • removePlayer (endstone::BossBar)
          • recipients_ (endstone::BroadcastMessageEvent)
          • Red (endstone::ColorFormat)
          • Reset (endstone::ColorFormat)
          • registerTo (endstone::Command)
          • registerCommand (endstone::CommandMap)
          • recalculatePermissions (endstone::CommandSenderWrapper, endstone::Permissible)
          • removeAttachment (endstone::CommandSenderWrapper, endstone::Permissible)
          • registerHandler (endstone::HandlerList)
          • recalculatePermissibles (endstone::Permission)
          • remove (endstone::PermissionAttachment)
          • removed_ (endstone::PermissionAttachment)
          • resetTitle (endstone::Player)
          • reason_ (endstone::PlayerKickEvent)
          • registerEvent (endstone::Plugin, endstone::PluginManager)
          • recalculatePermissionDefaults (endstone::PluginManager)
          • registerLoader (endstone::PluginManager)
          • removePermission (endstone::PluginManager)
          • runTask (endstone::Scheduler)
          • runTaskAsync (endstone::Scheduler)
          • runTaskLater (endstone::Scheduler)
          • runTaskLaterAsync (endstone::Scheduler)
          • runTaskTimer (endstone::Scheduler)
          • runTaskTimerAsync (endstone::Scheduler)
          • resetScores (endstone::Scoreboard)
          • reload (endstone::Server)
          • reloadData (endstone::Server)
          • remote_host_ (endstone::ServerListPingEvent)
          • remote_port_ (endstone::ServerListPingEvent)
          "},{"location":"reference/cpp/class_members/#s","title":"s","text":"
          • setIcon (endstone::ActionForm::Button, endstone::ModalForm)
          • setOnClick (endstone::ActionForm::Button)
          • setText (endstone::ActionForm::Button, endstone::Label)
          • setButtons (endstone::ActionForm)
          • setContent (endstone::ActionForm, endstone::MessageForm)
          • setOnSubmit (endstone::ActionForm, endstone::MessageForm, endstone::ModalForm)
          • setHealth (endstone::Actor)
          • setRotation (endstone::Actor)
          • setKnockback (endstone::ActorKnockbackEvent)
          • source_ (endstone::ActorKnockbackEvent)
          • setFrom (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • setTo (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • setData (endstone::Block, endstone::BlockState)
          • setType (endstone::Block, endstone::BlockState, endstone::ItemStack)
          • setColor (endstone::BossBar)
          • setProgress (endstone::BossBar)
          • setStyle (endstone::BossBar)
          • setTitle (endstone::BossBar, endstone::Form)
          • setVisible (endstone::BossBar)
          • setMessage (endstone::BroadcastMessageEvent, endstone::PlayerChatEvent)
          • setAliases (endstone::Command)
          • setDescription (endstone::Command, endstone::Permission)
          • setName (endstone::Command)
          • setPermissions (endstone::Command)
          • setUsages (endstone::Command)
          • sendErrorMessage (endstone::CommandSender, endstone::CommandSenderWrapper)
          • sendMessage (endstone::CommandSender, endstone::CommandSenderWrapper)
          • sender_ (endstone::CommandSenderWrapper, endstone::ScriptMessageEvent, endstone::ServerCommandEvent)
          • setOp (endstone::CommandSenderWrapper, endstone::Permissible)
          • setDefaultIndex (endstone::Dropdown)
          • setLabel (endstone::Dropdown, endstone::Slider, endstone::TextInput, endstone::Toggle)
          • setOptions (endstone::Dropdown)
          • stack_trace_ (endstone::Error)
          • setCancelled (endstone::Event)
          • setOnClose (endstone::Form)
          • setItem (endstone::Inventory)
          • setAmount (endstone::ItemStack)
          • setTime (endstone::Level)
          • setPitch (endstone::Location)
          • setYaw (endstone::Location)
          • setLevel (endstone::Logger)
          • setButton1 (endstone::MessageForm)
          • setButton2 (endstone::MessageForm)
          • setControls (endstone::ModalForm)
          • setSubmitButton (endstone::ModalForm)
          • submit_button_text_ (endstone::ModalForm)
          • setDisplay (endstone::Objective)
          • setDisplayName (endstone::Objective)
          • setRenderType (endstone::Objective)
          • setDefault (endstone::Permission)
          • setPermission (endstone::PermissionAttachment)
          • setRemovalCallback (endstone::PermissionAttachment)
          • sendForm (endstone::Player)
          • sendPacket (endstone::Player)
          • sendPopup (endstone::Player)
          • sendTip (endstone::Player)
          • sendTitle (endstone::Player)
          • sendToast (endstone::Player)
          • setAllowFlight (endstone::Player)
          • setExpLevel (endstone::Player)
          • setExpProgress (endstone::Player)
          • setFlySpeed (endstone::Player)
          • setFlying (endstone::Player)
          • setGameMode (endstone::Player, endstone::ServerListPingEvent)
          • setScoreboard (endstone::Player)
          • setWalkSpeed (endstone::Player)
          • spawnParticle (endstone::Player)
          • setCommand (endstone::PlayerCommandEvent, endstone::ServerCommandEvent)
          • setDeathMessage (endstone::PlayerDeathEvent)
          • setJoinMessage (endstone::PlayerJoinEvent)
          • setReason (endstone::PlayerKickEvent)
          • setKickMessage (endstone::PlayerLoginEvent)
          • setQuitMessage (endstone::PlayerQuitEvent)
          • server_ (endstone::Plugin, endstone::PluginLoader)
          • setEnabled (endstone::Plugin)
          • setExecutor (endstone::PluginCommand)
          • soft_depend_ (endstone::PluginDescription)
          • subscribeToDefaultPerms (endstone::PluginManager)
          • subscribeToPermission (endstone::PluginManager)
          • setDimension (endstone::Position)
          • setValue (endstone::Score)
          • ScriptMessageEvent (endstone::ScriptMessageEvent)
          • Server (endstone::Server)
          • setMaxPlayers (endstone::Server, endstone::ServerListPingEvent)
          • shutdown (endstone::Server)
          • ServerCommandEvent (endstone::ServerCommandEvent)
          • ServerListPingEvent (endstone::ServerListPingEvent)
          • serialize (endstone::ServerListPingEvent)
          • server_guid_ (endstone::ServerListPingEvent)
          • setLevelName (endstone::ServerListPingEvent)
          • setMinecraftVersionNetwork (endstone::ServerListPingEvent)
          • setMotd (endstone::ServerListPingEvent)
          • setNumPlayers (endstone::ServerListPingEvent)
          • ServerLoadEvent (endstone::ServerLoadEvent)
          • Skin (endstone::Skin)
          • skin_data_ (endstone::Skin)
          • skin_id_ (endstone::Skin)
          • Slider (endstone::Slider)
          • setDefaultValue (endstone::Slider, endstone::TextInput, endstone::Toggle)
          • setMax (endstone::Slider)
          • setMin (endstone::Slider)
          • setStep (endstone::Slider)
          • step_ (endstone::Slider)
          • SocketAddress (endstone::SocketAddress)
          • setPlaceholder (endstone::TextInput)
          • size (endstone::UUID)
          • str (endstone::UUID)
          • swap (endstone::UUID)
          • setX (endstone::Vector)
          • setY (endstone::Vector)
          • setZ (endstone::Vector)
          "},{"location":"reference/cpp/class_members/#t","title":"t","text":"
          • text_ (endstone::ActionForm::Button, endstone::Label, endstone::Translatable)
          • teleport (endstone::Actor)
          • to_ (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent, endstone::ThunderChangeEvent, endstone::WeatherChangeEvent)
          • testPermission (endstone::Command)
          • testPermissionSilently (endstone::Command)
          • Type (endstone::Criteria, endstone::Dimension, fmt::formatter< endstone::Block >, fmt::formatter< endstone::BlockData >, fmt::formatter< endstone::BlockState >, fmt::formatter< endstone::BlockStates >, fmt::formatter< endstone::BlockStates::mapped_type >, fmt::formatter< endstone::BlockStates::value_type >, fmt::formatter< endstone::ItemStack >)
          • title_ (endstone::Form)
          • type_ (endstone::ItemStack, endstone::ServerLoadEvent)
          • translate (endstone::Language)
          • trace (endstone::Logger)
          • transfer (endstone::Player)
          • TextInput (endstone::TextInput)
          • ThunderChangeEvent (endstone::ThunderChangeEvent)
          • toThunderState (endstone::ThunderChangeEvent)
          • Toggle (endstone::Toggle)
          • Translatable (endstone::Translatable)
          • toWeatherState (endstone::WeatherChangeEvent)
          "},{"location":"reference/cpp/class_members/#u","title":"u","text":"
          • update (endstone::BlockState)
          • unregisterFrom (endstone::Command)
          • usages_ (endstone::Command)
          • unregister (endstone::HandlerList, endstone::Objective)
          • unsetPermission (endstone::PermissionAttachment)
          • updateCommands (endstone::Player)
          • unsubscribeFromDefaultPerms (endstone::PluginManager)
          • unsubscribeFromPermission (endstone::PluginManager)
          "},{"location":"reference/cpp/class_members/#v","title":"v","text":"
          • valid_ (endstone::HandlerList)
          • value_ (endstone::PermissionAttachmentInfo)
          • version_ (endstone::PluginDescription)
          • version (endstone::UUID)
          • Vector (endstone::Vector)
          "},{"location":"reference/cpp/class_members/#w","title":"w","text":"
          • White (endstone::ColorFormat)
          • warning (endstone::Logger)
          • website_ (endstone::PluginDescription)
          • width (endstone::Skin::ImageData)
          • WeatherChangeEvent (endstone::WeatherChangeEvent)
          • WeatherEvent (endstone::WeatherEvent)
          "},{"location":"reference/cpp/class_members/#x","title":"x","text":"
          • x_ (endstone::Vector)
          "},{"location":"reference/cpp/class_members/#y","title":"y","text":"
          • Yellow (endstone::ColorFormat)
          • yaw_ (endstone::Location)
          • y_ (endstone::Vector)
          "},{"location":"reference/cpp/class_members/#z","title":"z","text":"
          • z_ (endstone::Vector)
          "},{"location":"reference/cpp/class_members/#_1","title":"~","text":"
          • ~ActorDeathEvent (endstone::ActorDeathEvent)
          • ~ActorEvent (endstone::ActorEvent)
          • ~ActorKnockbackEvent (endstone::ActorKnockbackEvent)
          • ~ActorRemoveEvent (endstone::ActorRemoveEvent)
          • ~ActorSpawnEvent (endstone::ActorSpawnEvent)
          • ~ActorTeleportEvent (endstone::ActorTeleportEvent)
          • ~Block (endstone::Block)
          • ~BlockBreakEvent (endstone::BlockBreakEvent)
          • ~BlockData (endstone::BlockData)
          • ~BlockEvent (endstone::BlockEvent)
          • ~BlockPlaceEvent (endstone::BlockPlaceEvent)
          • ~BlockState (endstone::BlockState)
          • ~BossBar (endstone::BossBar)
          • ~Command (endstone::Command)
          • ~CommandExecutor (endstone::CommandExecutor)
          • ~CommandMap (endstone::CommandMap)
          • ~Criteria (endstone::Criteria)
          • ~Dimension (endstone::Dimension)
          • ~Event (endstone::Event)
          • ~Inventory (endstone::Inventory)
          • ~ItemStack (endstone::ItemStack)
          • ~Language (endstone::Language)
          • ~Level (endstone::Level)
          • ~Logger (endstone::Logger)
          • ~Objective (endstone::Objective)
          • ~Packet (endstone::Packet)
          • ~Permissible (endstone::Permissible)
          • ~PlayerChatEvent (endstone::PlayerChatEvent)
          • ~PlayerCommandEvent (endstone::PlayerCommandEvent)
          • ~PlayerDeathEvent (endstone::PlayerDeathEvent)
          • ~PlayerEvent (endstone::PlayerEvent)
          • ~PlayerInteractActorEvent (endstone::PlayerInteractActorEvent)
          • ~PlayerInteractEvent (endstone::PlayerInteractEvent)
          • ~PlayerJoinEvent (endstone::PlayerJoinEvent)
          • ~PlayerKickEvent (endstone::PlayerKickEvent)
          • ~PlayerLoginEvent (endstone::PlayerLoginEvent)
          • ~PlayerQuitEvent (endstone::PlayerQuitEvent)
          • ~PlayerTeleportEvent (endstone::PlayerTeleportEvent)
          • ~Plugin (endstone::Plugin)
          • ~PluginLoader (endstone::PluginLoader)
          • ~PluginManager (endstone::PluginManager)
          • ~Scheduler (endstone::Scheduler)
          • ~Score (endstone::Score)
          • ~Scoreboard (endstone::Scoreboard)
          • ~Server (endstone::Server)
          • ~Task (endstone::Task)
          • ~ThunderChangeEvent (endstone::ThunderChangeEvent)
          • ~WeatherChangeEvent (endstone::WeatherChangeEvent)
          • ~WeatherEvent (endstone::WeatherEvent)
          "},{"location":"reference/cpp/class_member_functions/","title":"Class Member Functions","text":""},{"location":"reference/cpp/class_member_functions/#a","title":"a","text":"
          • ActionForm (endstone::ActionForm)
          • addButton (endstone::ActionForm)
          • addScoreboardTag (endstone::Actor)
          • asActor (endstone::Actor, endstone::CommandSender, endstone::CommandSenderWrapper)
          • ActorDeathEvent (endstone::ActorDeathEvent)
          • ActorEvent (endstone::ActorEvent)
          • ActorKnockbackEvent (endstone::ActorKnockbackEvent)
          • ActorRemoveEvent (endstone::ActorRemoveEvent)
          • ActorSpawnEvent (endstone::ActorSpawnEvent)
          • ActorTeleportEvent (endstone::ActorTeleportEvent)
          • addFlag (endstone::BossBar)
          • addPlayer (endstone::BossBar)
          • allowChangesFrom (endstone::Command)
          • asPluginCommand (endstone::Command, endstone::PluginCommand)
          • asCommandSender (endstone::CommandSender, endstone::CommandSenderWrapper, endstone::Permissible)
          • asConsole (endstone::CommandSender, endstone::CommandSenderWrapper)
          • asPlayer (endstone::CommandSender, endstone::CommandSenderWrapper, endstone::Player)
          • addAttachment (endstone::CommandSenderWrapper, endstone::Permissible)
          • addOption (endstone::Dropdown)
          • addItem (endstone::Inventory)
          • asEndstoneItemStack (endstone::ItemStack)
          • addControl (endstone::ModalForm)
          • addParent (endstone::Permission)
          • addPermission (endstone::PluginManager)
          • addObjective (endstone::Scoreboard)
          "},{"location":"reference/cpp/class_member_functions/#b","title":"b","text":"
          • Button (endstone::ActionForm::Button)
          • BlockBreakEvent (endstone::BlockBreakEvent)
          • BlockEvent (endstone::BlockEvent)
          • BlockPlaceEvent (endstone::BlockPlaceEvent)
          • BroadcastMessageEvent (endstone::BroadcastMessageEvent)
          • bake (endstone::HandlerList)
          • broadcast (endstone::Server)
          • broadcastMessage (endstone::Server)
          • begin (endstone::UUID)
          "},{"location":"reference/cpp/class_member_functions/#c","title":"c","text":"
          • captureState (endstone::Block)
          • Command (endstone::Command)
          • CommandMap (endstone::CommandMap)
          • clearCommands (endstone::CommandMap)
          • CommandSenderWrapper (endstone::CommandSenderWrapper)
          • callEvent (endstone::EventHandler, endstone::PluginManager)
          • clear (endstone::Inventory)
          • critical (endstone::Logger)
          • closeForm (endstone::Player)
          • clearPlugins (endstone::PluginManager)
          • cancelTask (endstone::Scheduler)
          • cancelTasks (endstone::Scheduler)
          • clearSlot (endstone::Scoreboard)
          • createBlockData (endstone::Server)
          • createBossBar (endstone::Server)
          • createScoreboard (endstone::Server)
          • cancel (endstone::Task)
          "},{"location":"reference/cpp/class_member_functions/#d","title":"d","text":"
          • dispatch (endstone::CommandMap)
          • Dropdown (endstone::Dropdown, endstone::StepSlider)
          • debug (endstone::Logger)
          • disablePlugin (endstone::PluginLoader, endstone::PluginManager)
          • disablePlugins (endstone::PluginManager)
          • dispatchCommand (endstone::Server)
          • deserialize (endstone::ServerListPingEvent)
          • distance (endstone::Vector)
          • distanceSquared (endstone::Vector)
          "},{"location":"reference/cpp/class_member_functions/#e","title":"e","text":"
          • execute (endstone::Command, endstone::PluginCommand)
          • Error (endstone::Error)
          • Event (endstone::Event, endstone::ServerEvent)
          • EventHandler (endstone::EventHandler)
          • error (endstone::Logger)
          • enablePlugin (endstone::PluginLoader, endstone::PluginManager)
          • enablePlugins (endstone::PluginManager)
          • empty (endstone::Translatable)
          • end (endstone::UUID)
          "},{"location":"reference/cpp/class_member_functions/#f","title":"f","text":"
          • Form (endstone::Form)
          • first (endstone::Inventory)
          • format (fmt::formatter< endstone::Block >, fmt::formatter< endstone::BlockData >, fmt::formatter< endstone::BlockState >, fmt::formatter< endstone::BlockStates >, fmt::formatter< endstone::BlockStates::mapped_type >, fmt::formatter< endstone::BlockStates::value_type >, fmt::formatter< endstone::ItemStack >)
          "},{"location":"reference/cpp/class_member_functions/#g","title":"g","text":"
          • getIcon (endstone::ActionForm::Button, endstone::ModalForm)
          • getOnClick (endstone::ActionForm::Button)
          • getText (endstone::ActionForm::Button, endstone::Label, endstone::Translatable)
          • getButtons (endstone::ActionForm)
          • getContent (endstone::ActionForm, endstone::MessageForm)
          • getOnSubmit (endstone::ActionForm, endstone::MessageForm, endstone::ModalForm)
          • getDimension (endstone::Actor, endstone::Block, endstone::BlockState, endstone::Level, endstone::Position)
          • getHealth (endstone::Actor)
          • getId (endstone::Actor)
          • getLevel (endstone::Actor, endstone::Dimension, endstone::Server, endstone::WeatherEvent)
          • getLocation (endstone::Actor, endstone::Block, endstone::BlockState)
          • getMaxHealth (endstone::Actor)
          • getRuntimeId (endstone::Actor)
          • getScoreboardTags (endstone::Actor)
          • getVelocity (endstone::Actor)
          • getEventName (endstone::ActorDeathEvent, endstone::ActorKnockbackEvent, endstone::ActorRemoveEvent, endstone::ActorSpawnEvent, endstone::ActorTeleportEvent, endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::BroadcastMessageEvent, endstone::Event, endstone::PlayerChatEvent, endstone::PlayerCommandEvent, endstone::PlayerDeathEvent, endstone::PlayerInteractActorEvent, endstone::PlayerInteractEvent, endstone::PlayerJoinEvent, endstone::PlayerKickEvent, endstone::PlayerLoginEvent, endstone::PlayerQuitEvent, endstone::PlayerTeleportEvent, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::ScriptMessageEvent, endstone::ServerCommandEvent, endstone::ServerListPingEvent, endstone::ServerLoadEvent, endstone::ThunderChangeEvent, endstone::WeatherChangeEvent)
          • getActor (endstone::ActorEvent, endstone::ActorKnockbackEvent, endstone::PlayerInteractActorEvent)
          • getKnockback (endstone::ActorKnockbackEvent)
          • getSource (endstone::ActorKnockbackEvent)
          • getFrom (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • getTo (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • getData (endstone::Block, endstone::BlockState)
          • getRelative (endstone::Block)
          • getType (endstone::Block, endstone::BlockData, endstone::BlockState, endstone::Dimension, endstone::ItemStack, endstone::Packet, endstone::ServerLoadEvent, endstone::SpawnParticleEffectPacket)
          • getX (endstone::Block, endstone::BlockState, endstone::Vector)
          • getY (endstone::Block, endstone::BlockState, endstone::Vector)
          • getZ (endstone::Block, endstone::BlockState, endstone::Vector)
          • getPlayer (endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::PlayerEvent, endstone::Server)
          • getBlockStates (endstone::BlockData)
          • getBlock (endstone::BlockEvent, endstone::BlockState, endstone::PlayerInteractEvent)
          • getBlockAgainst (endstone::BlockPlaceEvent)
          • getBlockPlacedState (endstone::BlockPlaceEvent)
          • getBlockReplaced (endstone::BlockPlaceEvent)
          • getColor (endstone::BossBar)
          • getPlayers (endstone::BossBar)
          • getProgress (endstone::BossBar)
          • getStyle (endstone::BossBar)
          • getTitle (endstone::BossBar, endstone::Form)
          • getMessage (endstone::BroadcastMessageEvent, endstone::Error, endstone::PlayerChatEvent, endstone::ScriptMessageEvent)
          • getRecipients (endstone::BroadcastMessageEvent)
          • getAliases (endstone::Command)
          • getDescription (endstone::Command, endstone::Permission, endstone::Plugin, endstone::PluginDescription)
          • getName (endstone::Command, endstone::CommandSender, endstone::CommandSenderWrapper, endstone::Criteria, endstone::Dimension, endstone::Level, endstone::Logger, endstone::Objective, endstone::Permission, endstone::Plugin, endstone::PluginDescription, endstone::Server)
          • getPermissions (endstone::Command, endstone::PermissionAttachment, endstone::PluginDescription, endstone::PluginManager)
          • getUsages (endstone::Command)
          • getCommand (endstone::CommandMap, endstone::PlayerCommandEvent, endstone::Plugin, endstone::ServerCommandEvent)
          • getServer (endstone::CommandSender, endstone::CommandSenderWrapper, endstone::Plugin, endstone::PluginLoader)
          • getEffectivePermissions (endstone::CommandSenderWrapper, endstone::Permissible)
          • getDefaultRenderType (endstone::Criteria)
          • getBlockAt (endstone::Dimension)
          • getDefaultIndex (endstone::Dropdown)
          • getLabel (endstone::Dropdown, endstone::Slider, endstone::TextInput, endstone::Toggle)
          • getOptions (endstone::Dropdown)
          • getStackTrace (endstone::Error)
          • getEventType (endstone::EventHandler)
          • getPlugin (endstone::EventHandler, endstone::PermissionAttachment, endstone::PluginCommand, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::PluginManager)
          • getPriority (endstone::EventHandler)
          • getOnClose (endstone::Form)
          • getHandlers (endstone::HandlerList)
          • getContents (endstone::Inventory)
          • getItem (endstone::Inventory, endstone::PlayerInteractEvent)
          • getMaxStackSize (endstone::Inventory)
          • getSize (endstone::Inventory)
          • getAmount (endstone::ItemStack)
          • getLocale (endstone::Language, endstone::Player)
          • getActors (endstone::Level)
          • getDimensions (endstone::Level)
          • getTime (endstone::Level)
          • getPitch (endstone::Location)
          • getYaw (endstone::Location)
          • getButton1 (endstone::MessageForm)
          • getButton2 (endstone::MessageForm)
          • getControls (endstone::ModalForm)
          • getSubmitButton (endstone::ModalForm)
          • getCriteria (endstone::Objective)
          • getDisplayName (endstone::Objective)
          • getDisplaySlot (endstone::Objective)
          • getRenderType (endstone::Objective)
          • getScore (endstone::Objective)
          • getScoreboard (endstone::Objective, endstone::Player, endstone::Score, endstone::Server)
          • getSortOrder (endstone::Objective)
          • getChildren (endstone::Permission)
          • getDefault (endstone::Permission)
          • getPermissibles (endstone::Permission)
          • getPermissible (endstone::PermissionAttachment, endstone::PermissionAttachmentInfo)
          • getRemovalCallback (endstone::PermissionAttachment)
          • getAttachment (endstone::PermissionAttachmentInfo)
          • getPermission (endstone::PermissionAttachmentInfo, endstone::PluginManager)
          • getValue (endstone::PermissionAttachmentInfo, endstone::Score)
          • getAddress (endstone::Player)
          • getAllowFlight (endstone::Player)
          • getDeviceId (endstone::Player)
          • getDeviceOS (endstone::Player)
          • getExpLevel (endstone::Player)
          • getExpProgress (endstone::Player)
          • getFlySpeed (endstone::Player)
          • getGameMode (endstone::Player, endstone::ServerListPingEvent)
          • getGameVersion (endstone::Player)
          • getInventory (endstone::Player)
          • getPing (endstone::Player)
          • getSkin (endstone::Player)
          • getTotalExp (endstone::Player)
          • getUniqueId (endstone::Player)
          • getWalkSpeed (endstone::Player)
          • getXuid (endstone::Player)
          • giveExp (endstone::Player)
          • giveExpLevels (endstone::Player)
          • getDeathMessage (endstone::PlayerDeathEvent)
          • getBlockFace (endstone::PlayerInteractEvent)
          • getClickedPosition (endstone::PlayerInteractEvent)
          • getJoinMessage (endstone::PlayerJoinEvent)
          • getReason (endstone::PlayerKickEvent)
          • getKickMessage (endstone::PlayerLoginEvent)
          • getQuitMessage (endstone::PlayerQuitEvent)
          • getDataFolder (endstone::Plugin)
          • getLogger (endstone::Plugin, endstone::Server)
          • getPluginLoader (endstone::Plugin)
          • getExecutor (endstone::PluginCommand)
          • getAPIVersion (endstone::PluginDescription)
          • getAuthors (endstone::PluginDescription)
          • getCommands (endstone::PluginDescription)
          • getContributors (endstone::PluginDescription)
          • getDefaultPermission (endstone::PluginDescription)
          • getDepend (endstone::PluginDescription)
          • getFullName (endstone::PluginDescription)
          • getLoad (endstone::PluginDescription)
          • getLoadBefore (endstone::PluginDescription)
          • getPrefix (endstone::PluginDescription)
          • getProvides (endstone::PluginDescription)
          • getSoftDepend (endstone::PluginDescription)
          • getVersion (endstone::PluginDescription, endstone::Server)
          • getWebsite (endstone::PluginDescription)
          • getDefaultPermSubscriptions (endstone::PluginManager)
          • getDefaultPermissions (endstone::PluginManager)
          • getPermissionSubscriptions (endstone::PluginManager)
          • getPlugins (endstone::PluginManager)
          • getBlockX (endstone::Position)
          • getBlockY (endstone::Position)
          • getBlockZ (endstone::Position)
          • getCallee (endstone::ProxiedCommandSender)
          • getCaller (endstone::ProxiedCommandSender)
          • getPendingTasks (endstone::Scheduler)
          • getEntry (endstone::Score)
          • getObjective (endstone::Score, endstone::Scoreboard)
          • getEntries (endstone::Scoreboard)
          • getObjectives (endstone::Scoreboard)
          • getObjectivesByCriteria (endstone::Scoreboard)
          • getScores (endstone::Scoreboard)
          • getMessageId (endstone::ScriptMessageEvent)
          • getSender (endstone::ScriptMessageEvent, endstone::ServerCommandEvent)
          • getAverageMillisecondsPerTick (endstone::Server)
          • getAverageTickUsage (endstone::Server)
          • getAverageTicksPerSecond (endstone::Server)
          • getCommandSender (endstone::Server)
          • getCurrentMillisecondsPerTick (endstone::Server)
          • getCurrentTickUsage (endstone::Server)
          • getCurrentTicksPerSecond (endstone::Server)
          • getLanguage (endstone::Server)
          • getMaxPlayers (endstone::Server, endstone::ServerListPingEvent)
          • getMinecraftVersion (endstone::Server)
          • getOnlineMode (endstone::Server)
          • getOnlinePlayers (endstone::Server)
          • getPluginCommand (endstone::Server)
          • getPluginManager (endstone::Server)
          • getScheduler (endstone::Server)
          • getStartTime (endstone::Server)
          • getLevelName (endstone::ServerListPingEvent)
          • getLocalPort (endstone::ServerListPingEvent)
          • getLocalPortV6 (endstone::ServerListPingEvent)
          • getMinecraftVersionNetwork (endstone::ServerListPingEvent)
          • getMotd (endstone::ServerListPingEvent)
          • getNetworkProtocolVersion (endstone::ServerListPingEvent)
          • getNumPlayers (endstone::ServerListPingEvent)
          • getRemoteHost (endstone::ServerListPingEvent)
          • getRemotePort (endstone::ServerListPingEvent)
          • getServerGuid (endstone::ServerListPingEvent)
          • getCapeData (endstone::Skin)
          • getCapeId (endstone::Skin)
          • getSkinData (endstone::Skin)
          • getSkinId (endstone::Skin)
          • getDefaultValue (endstone::Slider, endstone::TextInput, endstone::Toggle)
          • getMax (endstone::Slider)
          • getMin (endstone::Slider)
          • getStep (endstone::Slider)
          • getHostname (endstone::SocketAddress)
          • getPort (endstone::SocketAddress)
          • getOwner (endstone::Task)
          • getTaskId (endstone::Task)
          • getPlaceholder (endstone::TextInput)
          • getParameters (endstone::Translatable)
          "},{"location":"reference/cpp/class_member_functions/#h","title":"h","text":"
          • hasFlag (endstone::BossBar)
          • hasPermission (endstone::CommandSenderWrapper, endstone::Permissible)
          • HandlerList (endstone::HandlerList)
          • hasBlock (endstone::PlayerInteractEvent)
          • hasItem (endstone::PlayerInteractEvent)
          "},{"location":"reference/cpp/class_member_functions/#i","title":"i","text":"
          • isDead (endstone::Actor)
          • isInLava (endstone::Actor)
          • isInWater (endstone::Actor)
          • isOnGround (endstone::Actor)
          • isCancellable (endstone::ActorDeathEvent, endstone::ActorKnockbackEvent, endstone::ActorRemoveEvent, endstone::ActorSpawnEvent, endstone::ActorTeleportEvent, endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::BroadcastMessageEvent, endstone::Event, endstone::PlayerChatEvent, endstone::PlayerCommandEvent, endstone::PlayerDeathEvent, endstone::PlayerInteractActorEvent, endstone::PlayerInteractEvent, endstone::PlayerJoinEvent, endstone::PlayerKickEvent, endstone::PlayerLoginEvent, endstone::PlayerQuitEvent, endstone::PlayerTeleportEvent, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::ScriptMessageEvent, endstone::ServerCommandEvent, endstone::ServerListPingEvent, endstone::ServerLoadEvent, endstone::ThunderChangeEvent, endstone::WeatherChangeEvent)
          • isValid (endstone::Block)
          • isVisible (endstone::BossBar)
          • isRegistered (endstone::Command)
          • isOp (endstone::CommandSenderWrapper, endstone::Permissible)
          • isPermissionSet (endstone::CommandSenderWrapper, endstone::Permissible)
          • isReadOnly (endstone::Criteria)
          • isAsynchronous (endstone::Event)
          • isCancelled (endstone::Event, endstone::Task)
          • isIgnoreCancelled (endstone::EventHandler)
          • isEmpty (endstone::Inventory)
          • ItemStack (endstone::ItemStack)
          • info (endstone::Logger)
          • isEnabledFor (endstone::Logger)
          • isGliding (endstone::Mob)
          • isDisplayed (endstone::Objective)
          • isModifiable (endstone::Objective)
          • init (endstone::Permission)
          • isFlying (endstone::Player)
          • isEnabled (endstone::Plugin)
          • isPluginEnabled (endstone::PluginManager)
          • isQueued (endstone::Scheduler)
          • isRunning (endstone::Scheduler)
          • isScoreSet (endstone::Score)
          • isPrimaryThread (endstone::Server)
          • isSync (endstone::Task)
          • isNil (endstone::UUID)
          "},{"location":"reference/cpp/class_member_functions/#k","title":"k","text":"
          • kick (endstone::Player)
          "},{"location":"reference/cpp/class_member_functions/#l","title":"l","text":"
          • Label (endstone::Label)
          • Location (endstone::Location)
          • Logger (endstone::Logger)
          • log (endstone::Logger)
          • loadPlugins (endstone::PluginLoader, endstone::PluginManager)
          • length (endstone::Vector)
          • lengthSquared (endstone::Vector)
          "},{"location":"reference/cpp/class_member_functions/#o","title":"o","text":"
          • onCommand (endstone::CommandExecutor)
          • operator= (endstone::CommandMap, endstone::Event, endstone::Plugin, endstone::PluginLoader, endstone::PluginManager, endstone::Server)
          • operator!= (endstone::Objective)
          • operator== (endstone::Objective, endstone::Vector)
          • onDisable (endstone::Plugin)
          • onEnable (endstone::Plugin)
          • onLoad (endstone::Plugin)
          • operator* (endstone::Vector)
          • operator*= (endstone::Vector)
          • operator+ (endstone::Vector)
          • operator+= (endstone::Vector)
          • operator- (endstone::Vector)
          • operator-= (endstone::Vector)
          • operator/ (endstone::Vector)
          • operator/= (endstone::Vector)
          • operator() (std::hash< endstone::UUID >)
          "},{"location":"reference/cpp/class_member_functions/#p","title":"p","text":"
          • Permission (endstone::Permission)
          • PermissionAttachment (endstone::PermissionAttachment)
          • PermissionAttachmentInfo (endstone::PermissionAttachmentInfo)
          • performCommand (endstone::Player)
          • PlayerChatEvent (endstone::PlayerChatEvent)
          • PlayerCommandEvent (endstone::PlayerCommandEvent)
          • PlayerDeathEvent (endstone::PlayerDeathEvent)
          • PlayerEvent (endstone::PlayerEvent)
          • PlayerInteractActorEvent (endstone::PlayerInteractActorEvent)
          • PlayerInteractEvent (endstone::PlayerInteractEvent)
          • PlayerJoinEvent (endstone::PlayerJoinEvent)
          • PlayerKickEvent (endstone::PlayerKickEvent)
          • PlayerLoginEvent (endstone::PlayerLoginEvent)
          • PlayerQuitEvent (endstone::PlayerQuitEvent)
          • PlayerTeleportEvent (endstone::PlayerTeleportEvent)
          • Plugin (endstone::Plugin)
          • PluginCommand (endstone::PluginCommand)
          • PluginDescription (endstone::PluginDescription)
          • PluginDisableEvent (endstone::PluginDisableEvent)
          • PluginEnableEvent (endstone::PluginEnableEvent)
          • PluginLoader (endstone::PluginLoader)
          • PluginManager (endstone::PluginManager)
          • Position (endstone::Position)
          "},{"location":"reference/cpp/class_member_functions/#r","title":"r","text":"
          • removeScoreboardTag (endstone::Actor)
          • removeAll (endstone::BossBar)
          • removeFlag (endstone::BossBar)
          • removePlayer (endstone::BossBar)
          • registerTo (endstone::Command)
          • registerCommand (endstone::CommandMap)
          • recalculatePermissions (endstone::CommandSenderWrapper, endstone::Permissible)
          • removeAttachment (endstone::CommandSenderWrapper, endstone::Permissible)
          • registerHandler (endstone::HandlerList)
          • recalculatePermissibles (endstone::Permission)
          • remove (endstone::PermissionAttachment)
          • resetTitle (endstone::Player)
          • registerEvent (endstone::Plugin, endstone::PluginManager)
          • recalculatePermissionDefaults (endstone::PluginManager)
          • registerLoader (endstone::PluginManager)
          • removePermission (endstone::PluginManager)
          • runTask (endstone::Scheduler)
          • runTaskAsync (endstone::Scheduler)
          • runTaskLater (endstone::Scheduler)
          • runTaskLaterAsync (endstone::Scheduler)
          • runTaskTimer (endstone::Scheduler)
          • runTaskTimerAsync (endstone::Scheduler)
          • resetScores (endstone::Scoreboard)
          • reload (endstone::Server)
          • reloadData (endstone::Server)
          "},{"location":"reference/cpp/class_member_functions/#s","title":"s","text":"
          • setIcon (endstone::ActionForm::Button, endstone::ModalForm)
          • setOnClick (endstone::ActionForm::Button)
          • setText (endstone::ActionForm::Button, endstone::Label)
          • setButtons (endstone::ActionForm)
          • setContent (endstone::ActionForm, endstone::MessageForm)
          • setOnSubmit (endstone::ActionForm, endstone::MessageForm, endstone::ModalForm)
          • setHealth (endstone::Actor)
          • setRotation (endstone::Actor)
          • setKnockback (endstone::ActorKnockbackEvent)
          • setFrom (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • setTo (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • setData (endstone::Block, endstone::BlockState)
          • setType (endstone::Block, endstone::BlockState, endstone::ItemStack)
          • setColor (endstone::BossBar)
          • setProgress (endstone::BossBar)
          • setStyle (endstone::BossBar)
          • setTitle (endstone::BossBar, endstone::Form)
          • setVisible (endstone::BossBar)
          • setMessage (endstone::BroadcastMessageEvent, endstone::PlayerChatEvent)
          • setAliases (endstone::Command)
          • setDescription (endstone::Command, endstone::Permission)
          • setName (endstone::Command)
          • setPermissions (endstone::Command)
          • setUsages (endstone::Command)
          • sendErrorMessage (endstone::CommandSender, endstone::CommandSenderWrapper)
          • sendMessage (endstone::CommandSender, endstone::CommandSenderWrapper)
          • setOp (endstone::CommandSenderWrapper, endstone::Permissible)
          • setDefaultIndex (endstone::Dropdown)
          • setLabel (endstone::Dropdown, endstone::Slider, endstone::TextInput, endstone::Toggle)
          • setOptions (endstone::Dropdown)
          • setCancelled (endstone::Event)
          • setOnClose (endstone::Form)
          • setItem (endstone::Inventory)
          • setAmount (endstone::ItemStack)
          • setTime (endstone::Level)
          • setPitch (endstone::Location)
          • setYaw (endstone::Location)
          • setLevel (endstone::Logger)
          • setButton1 (endstone::MessageForm)
          • setButton2 (endstone::MessageForm)
          • setControls (endstone::ModalForm)
          • setSubmitButton (endstone::ModalForm)
          • setDisplay (endstone::Objective)
          • setDisplayName (endstone::Objective)
          • setRenderType (endstone::Objective)
          • setDefault (endstone::Permission)
          • setPermission (endstone::PermissionAttachment)
          • setRemovalCallback (endstone::PermissionAttachment)
          • sendForm (endstone::Player)
          • sendPacket (endstone::Player)
          • sendPopup (endstone::Player)
          • sendTip (endstone::Player)
          • sendTitle (endstone::Player)
          • sendToast (endstone::Player)
          • setAllowFlight (endstone::Player)
          • setExpLevel (endstone::Player)
          • setExpProgress (endstone::Player)
          • setFlySpeed (endstone::Player)
          • setFlying (endstone::Player)
          • setGameMode (endstone::Player, endstone::ServerListPingEvent)
          • setScoreboard (endstone::Player)
          • setWalkSpeed (endstone::Player)
          • spawnParticle (endstone::Player)
          • setCommand (endstone::PlayerCommandEvent, endstone::ServerCommandEvent)
          • setDeathMessage (endstone::PlayerDeathEvent)
          • setJoinMessage (endstone::PlayerJoinEvent)
          • setReason (endstone::PlayerKickEvent)
          • setKickMessage (endstone::PlayerLoginEvent)
          • setQuitMessage (endstone::PlayerQuitEvent)
          • setEnabled (endstone::Plugin)
          • setExecutor (endstone::PluginCommand)
          • subscribeToDefaultPerms (endstone::PluginManager)
          • subscribeToPermission (endstone::PluginManager)
          • setDimension (endstone::Position)
          • setValue (endstone::Score)
          • ScriptMessageEvent (endstone::ScriptMessageEvent)
          • Server (endstone::Server)
          • setMaxPlayers (endstone::Server, endstone::ServerListPingEvent)
          • shutdown (endstone::Server)
          • ServerCommandEvent (endstone::ServerCommandEvent)
          • ServerListPingEvent (endstone::ServerListPingEvent)
          • serialize (endstone::ServerListPingEvent)
          • setLevelName (endstone::ServerListPingEvent)
          • setMinecraftVersionNetwork (endstone::ServerListPingEvent)
          • setMotd (endstone::ServerListPingEvent)
          • setNumPlayers (endstone::ServerListPingEvent)
          • ServerLoadEvent (endstone::ServerLoadEvent)
          • Skin (endstone::Skin)
          • Slider (endstone::Slider)
          • setDefaultValue (endstone::Slider, endstone::TextInput, endstone::Toggle)
          • setMax (endstone::Slider)
          • setMin (endstone::Slider)
          • setStep (endstone::Slider)
          • SocketAddress (endstone::SocketAddress)
          • setPlaceholder (endstone::TextInput)
          • size (endstone::UUID)
          • str (endstone::UUID)
          • swap (endstone::UUID)
          • setX (endstone::Vector)
          • setY (endstone::Vector)
          • setZ (endstone::Vector)
          "},{"location":"reference/cpp/class_member_functions/#t","title":"t","text":"
          • teleport (endstone::Actor)
          • testPermission (endstone::Command)
          • testPermissionSilently (endstone::Command)
          • translate (endstone::Language)
          • trace (endstone::Logger)
          • transfer (endstone::Player)
          • TextInput (endstone::TextInput)
          • ThunderChangeEvent (endstone::ThunderChangeEvent)
          • toThunderState (endstone::ThunderChangeEvent)
          • Toggle (endstone::Toggle)
          • Translatable (endstone::Translatable)
          • toWeatherState (endstone::WeatherChangeEvent)
          "},{"location":"reference/cpp/class_member_functions/#u","title":"u","text":"
          • update (endstone::BlockState)
          • unregisterFrom (endstone::Command)
          • unregister (endstone::HandlerList, endstone::Objective)
          • unsetPermission (endstone::PermissionAttachment)
          • updateCommands (endstone::Player)
          • unsubscribeFromDefaultPerms (endstone::PluginManager)
          • unsubscribeFromPermission (endstone::PluginManager)
          "},{"location":"reference/cpp/class_member_functions/#v","title":"v","text":"
          • version (endstone::UUID)
          • Vector (endstone::Vector)
          "},{"location":"reference/cpp/class_member_functions/#w","title":"w","text":"
          • warning (endstone::Logger)
          • WeatherChangeEvent (endstone::WeatherChangeEvent)
          • WeatherEvent (endstone::WeatherEvent)
          "},{"location":"reference/cpp/class_member_functions/#_1","title":"~","text":"
          • ~ActorDeathEvent (endstone::ActorDeathEvent)
          • ~ActorEvent (endstone::ActorEvent)
          • ~ActorKnockbackEvent (endstone::ActorKnockbackEvent)
          • ~ActorRemoveEvent (endstone::ActorRemoveEvent)
          • ~ActorSpawnEvent (endstone::ActorSpawnEvent)
          • ~ActorTeleportEvent (endstone::ActorTeleportEvent)
          • ~Block (endstone::Block)
          • ~BlockBreakEvent (endstone::BlockBreakEvent)
          • ~BlockData (endstone::BlockData)
          • ~BlockEvent (endstone::BlockEvent)
          • ~BlockPlaceEvent (endstone::BlockPlaceEvent)
          • ~BlockState (endstone::BlockState)
          • ~BossBar (endstone::BossBar)
          • ~Command (endstone::Command)
          • ~CommandExecutor (endstone::CommandExecutor)
          • ~CommandMap (endstone::CommandMap)
          • ~Criteria (endstone::Criteria)
          • ~Dimension (endstone::Dimension)
          • ~Event (endstone::Event)
          • ~Inventory (endstone::Inventory)
          • ~ItemStack (endstone::ItemStack)
          • ~Language (endstone::Language)
          • ~Level (endstone::Level)
          • ~Logger (endstone::Logger)
          • ~Objective (endstone::Objective)
          • ~Packet (endstone::Packet)
          • ~Permissible (endstone::Permissible)
          • ~PlayerChatEvent (endstone::PlayerChatEvent)
          • ~PlayerCommandEvent (endstone::PlayerCommandEvent)
          • ~PlayerDeathEvent (endstone::PlayerDeathEvent)
          • ~PlayerEvent (endstone::PlayerEvent)
          • ~PlayerInteractActorEvent (endstone::PlayerInteractActorEvent)
          • ~PlayerInteractEvent (endstone::PlayerInteractEvent)
          • ~PlayerJoinEvent (endstone::PlayerJoinEvent)
          • ~PlayerKickEvent (endstone::PlayerKickEvent)
          • ~PlayerLoginEvent (endstone::PlayerLoginEvent)
          • ~PlayerQuitEvent (endstone::PlayerQuitEvent)
          • ~PlayerTeleportEvent (endstone::PlayerTeleportEvent)
          • ~Plugin (endstone::Plugin)
          • ~PluginLoader (endstone::PluginLoader)
          • ~PluginManager (endstone::PluginManager)
          • ~Scheduler (endstone::Scheduler)
          • ~Score (endstone::Score)
          • ~Scoreboard (endstone::Scoreboard)
          • ~Server (endstone::Server)
          • ~Task (endstone::Task)
          • ~ThunderChangeEvent (endstone::ThunderChangeEvent)
          • ~WeatherChangeEvent (endstone::WeatherChangeEvent)
          • ~WeatherEvent (endstone::WeatherEvent)
          "},{"location":"reference/cpp/class_member_variables/","title":"Class Member Variables","text":""},{"location":"reference/cpp/class_member_variables/#a","title":"a","text":"
          • actor_ (endstone::ActorEvent, endstone::PlayerInteractActorEvent)
          • Aqua (endstone::ColorFormat)
          • aliases_ (endstone::Command)
          • async_ (endstone::Event)
          • amount_ (endstone::ItemStack)
          • attachment_ (endstone::PermissionAttachmentInfo)
          • api_version_ (endstone::PluginDescription)
          • authors_ (endstone::PluginDescription)
          • actor_id (endstone::SpawnParticleEffectPacket)
          "},{"location":"reference/cpp/class_member_variables/#b","title":"b","text":"
          • buttons_ (endstone::ActionForm)
          • block_ (endstone::BlockEvent)
          • Black (endstone::ColorFormat)
          • Blue (endstone::ColorFormat)
          • Bold (endstone::ColorFormat)
          • baked_handlers_ (endstone::HandlerList)
          • button1_text_ (endstone::MessageForm)
          • button2_text_ (endstone::MessageForm)
          • block_clicked_ (endstone::PlayerInteractEvent)
          • block_face_ (endstone::PlayerInteractEvent)
          • BroadcastChannelAdmin (endstone::Server)
          • BroadcastChannelUser (endstone::Server)
          "},{"location":"reference/cpp/class_member_variables/#c","title":"c","text":"
          • content_ (endstone::ActionForm, endstone::MessageForm)
          • command_map_ (endstone::Command)
          • cancelled_ (endstone::Event)
          • controls_ (endstone::ModalForm)
          • children_ (endstone::Permission)
          • command_ (endstone::PlayerCommandEvent, endstone::ServerCommandEvent)
          • clicked_position_ (endstone::PlayerInteractEvent)
          • commands_ (endstone::PluginDescription)
          • contributors_ (endstone::PluginDescription)
          • cape_data_ (endstone::Skin)
          • cape_id_ (endstone::Skin)
          "},{"location":"reference/cpp/class_member_variables/#d","title":"d","text":"
          • DarkAqua (endstone::ColorFormat)
          • DarkBlue (endstone::ColorFormat)
          • DarkGray (endstone::ColorFormat)
          • DarkGreen (endstone::ColorFormat)
          • DarkPurple (endstone::ColorFormat)
          • DarkRed (endstone::ColorFormat)
          • description_ (endstone::Command, endstone::Permission, endstone::PluginDescription)
          • default_index_ (endstone::Dropdown)
          • DefaultPermission (endstone::Permission)
          • default_value_ (endstone::Permission, endstone::Slider, endstone::Toggle)
          • death_message_ (endstone::PlayerDeathEvent)
          • data_folder_ (endstone::Plugin)
          • default_permission_ (endstone::PluginDescription)
          • depend_ (endstone::PluginDescription)
          • dimension_ (endstone::Position)
          • data (endstone::Skin::ImageData, endstone::UUID)
          • dimension_id (endstone::SpawnParticleEffectPacket)
          • default_text_ (endstone::TextInput)
          "},{"location":"reference/cpp/class_member_variables/#e","title":"e","text":"
          • Escape (endstone::ColorFormat)
          • event_ (endstone::EventHandler, endstone::HandlerList)
          • executor_ (endstone::EventHandler, endstone::PluginCommand)
          • enabled_ (endstone::Plugin)
          • effect_name (endstone::SpawnParticleEffectPacket)
          "},{"location":"reference/cpp/class_member_variables/#f","title":"f","text":"
          • from_ (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • full_name_ (endstone::PluginDescription)
          "},{"location":"reference/cpp/class_member_variables/#g","title":"g","text":"
          • Gold (endstone::ColorFormat)
          • Gray (endstone::ColorFormat)
          • Green (endstone::ColorFormat)
          • game_mode_ (endstone::ServerListPingEvent)
          "},{"location":"reference/cpp/class_member_variables/#h","title":"h","text":"
          • handlers_ (endstone::HandlerList)
          • height (endstone::Skin::ImageData)
          • hostname_ (endstone::SocketAddress)
          "},{"location":"reference/cpp/class_member_variables/#i","title":"i","text":"
          • icon_ (endstone::ActionForm::Button, endstone::ModalForm)
          • Italic (endstone::ColorFormat)
          • ignore_cancelled_ (endstone::EventHandler)
          • item_ (endstone::PlayerInteractEvent)
          "},{"location":"reference/cpp/class_member_variables/#j","title":"j","text":"
          • join_message_ (endstone::PlayerJoinEvent)
          "},{"location":"reference/cpp/class_member_variables/#k","title":"k","text":"
          • knockback_ (endstone::ActorKnockbackEvent)
          "},{"location":"reference/cpp/class_member_variables/#l","title":"l","text":"
          • LightPurple (endstone::ColorFormat)
          • label_ (endstone::Dropdown, endstone::Slider, endstone::TextInput, endstone::Toggle)
          • loader_ (endstone::Plugin)
          • logger_ (endstone::Plugin)
          • load_ (endstone::PluginDescription)
          • load_before_ (endstone::PluginDescription)
          • level_name_ (endstone::ServerListPingEvent)
          • local_port_ (endstone::ServerListPingEvent)
          • local_port_v6_ (endstone::ServerListPingEvent)
          • level_ (endstone::WeatherEvent)
          "},{"location":"reference/cpp/class_member_variables/#m","title":"m","text":"
          • mob_ (endstone::ActorKnockbackEvent)
          • message_ (endstone::BroadcastMessageEvent, endstone::Error, endstone::PlayerChatEvent, endstone::PlayerLoginEvent, endstone::ScriptMessageEvent)
          • MaterialAmethyst (endstone::ColorFormat)
          • MaterialCopper (endstone::ColorFormat)
          • MaterialDiamond (endstone::ColorFormat)
          • MaterialEmerald (endstone::ColorFormat)
          • MaterialGold (endstone::ColorFormat)
          • MaterialIron (endstone::ColorFormat)
          • MaterialLapis (endstone::ColorFormat)
          • MaterialNetherite (endstone::ColorFormat)
          • MaterialQuartz (endstone::ColorFormat)
          • MaterialRedstone (endstone::ColorFormat)
          • MinecoinGold (endstone::ColorFormat)
          • mtx_ (endstone::HandlerList)
          • message_id_ (endstone::ScriptMessageEvent)
          • max_players_ (endstone::ServerListPingEvent)
          • minecraft_version_network_ (endstone::ServerListPingEvent)
          • motd_ (endstone::ServerListPingEvent)
          • max_ (endstone::Slider)
          • min_ (endstone::Slider)
          • molang_variables_json (endstone::SpawnParticleEffectPacket)
          "},{"location":"reference/cpp/class_member_variables/#n","title":"n","text":"
          • NAME (endstone::ActorDeathEvent, endstone::ActorKnockbackEvent, endstone::ActorRemoveEvent, endstone::ActorSpawnEvent, endstone::ActorTeleportEvent, endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::BroadcastMessageEvent, endstone::PlayerChatEvent, endstone::PlayerCommandEvent, endstone::PlayerDeathEvent, endstone::PlayerInteractActorEvent, endstone::PlayerInteractEvent, endstone::PlayerJoinEvent, endstone::PlayerKickEvent, endstone::PlayerLoginEvent, endstone::PlayerQuitEvent, endstone::PlayerTeleportEvent, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::ScriptMessageEvent, endstone::ServerCommandEvent, endstone::ServerListPingEvent, endstone::ServerLoadEvent, endstone::ThunderChangeEvent, endstone::WeatherChangeEvent)
          • name_ (endstone::Command, endstone::Permission, endstone::PluginDescription)
          • network_protocol_version_ (endstone::ServerListPingEvent)
          • num_players_ (endstone::ServerListPingEvent)
          "},{"location":"reference/cpp/class_member_variables/#o","title":"o","text":"
          • on_click_ (endstone::ActionForm::Button)
          • on_submit_ (endstone::ActionForm, endstone::MessageForm, endstone::ModalForm)
          • Obfuscated (endstone::ColorFormat)
          • on_error_ (endstone::CommandSenderWrapper)
          • on_message_ (endstone::CommandSenderWrapper)
          • options_ (endstone::Dropdown)
          • on_close_ (endstone::Form)
          • owner_ (endstone::PluginCommand)
          "},{"location":"reference/cpp/class_member_variables/#p","title":"p","text":"
          • player_ (endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::PlayerEvent)
          • placed_against_ (endstone::BlockPlaceEvent)
          • placed_block_ (endstone::BlockPlaceEvent)
          • permissions_ (endstone::Command, endstone::PermissionAttachment, endstone::PluginDescription)
          • plugin_ (endstone::EventHandler, endstone::PermissionAttachment, endstone::PluginDisableEvent, endstone::PluginEnableEvent)
          • priority_ (endstone::EventHandler)
          • pitch_ (endstone::Location)
          • plugin_manager_ (endstone::Permission)
          • permissible_ (endstone::PermissionAttachment, endstone::PermissionAttachmentInfo)
          • permission_ (endstone::PermissionAttachmentInfo)
          • prefix_ (endstone::PluginDescription)
          • provides_ (endstone::PluginDescription)
          • ping_response_ (endstone::ServerListPingEvent)
          • port_ (endstone::SocketAddress)
          • position (endstone::SpawnParticleEffectPacket)
          • placeholder_ (endstone::TextInput)
          • params_ (endstone::Translatable)
          "},{"location":"reference/cpp/class_member_variables/#q","title":"q","text":"
          • quit_message_ (endstone::PlayerQuitEvent)
          "},{"location":"reference/cpp/class_member_variables/#r","title":"r","text":"
          • raw_knockback_ (endstone::ActorKnockbackEvent)
          • recipients_ (endstone::BroadcastMessageEvent)
          • Red (endstone::ColorFormat)
          • Reset (endstone::ColorFormat)
          • removed_ (endstone::PermissionAttachment)
          • reason_ (endstone::PlayerKickEvent)
          • remote_host_ (endstone::ServerListPingEvent)
          • remote_port_ (endstone::ServerListPingEvent)
          "},{"location":"reference/cpp/class_member_variables/#s","title":"s","text":"
          • source_ (endstone::ActorKnockbackEvent)
          • sender_ (endstone::CommandSenderWrapper, endstone::ScriptMessageEvent, endstone::ServerCommandEvent)
          • stack_trace_ (endstone::Error)
          • submit_button_text_ (endstone::ModalForm)
          • server_ (endstone::Plugin, endstone::PluginLoader)
          • soft_depend_ (endstone::PluginDescription)
          • server_guid_ (endstone::ServerListPingEvent)
          • skin_data_ (endstone::Skin)
          • skin_id_ (endstone::Skin)
          • step_ (endstone::Slider)
          "},{"location":"reference/cpp/class_member_variables/#t","title":"t","text":"
          • text_ (endstone::ActionForm::Button, endstone::Label, endstone::Translatable)
          • to_ (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent, endstone::ThunderChangeEvent, endstone::WeatherChangeEvent)
          • title_ (endstone::Form)
          • type_ (endstone::ItemStack, endstone::ServerLoadEvent)
          "},{"location":"reference/cpp/class_member_variables/#u","title":"u","text":"
          • usages_ (endstone::Command)
          "},{"location":"reference/cpp/class_member_variables/#v","title":"v","text":"
          • valid_ (endstone::HandlerList)
          • value_ (endstone::PermissionAttachmentInfo)
          • version_ (endstone::PluginDescription)
          "},{"location":"reference/cpp/class_member_variables/#w","title":"w","text":"
          • White (endstone::ColorFormat)
          • website_ (endstone::PluginDescription)
          • width (endstone::Skin::ImageData)
          "},{"location":"reference/cpp/class_member_variables/#x","title":"x","text":"
          • x_ (endstone::Vector)
          "},{"location":"reference/cpp/class_member_variables/#y","title":"y","text":"
          • Yellow (endstone::ColorFormat)
          • yaw_ (endstone::Location)
          • y_ (endstone::Vector)
          "},{"location":"reference/cpp/class_member_variables/#z","title":"z","text":"
          • z_ (endstone::Vector)
          "},{"location":"reference/cpp/class_member_typedefs/","title":"Class Member Typedefs","text":""},{"location":"reference/cpp/class_member_typedefs/#c","title":"c","text":"
          • Callback (endstone::CommandSenderWrapper)
          • Control (endstone::ModalForm)
          "},{"location":"reference/cpp/class_member_typedefs/#f","title":"f","text":"
          • FormVariant (endstone::Player)
          "},{"location":"reference/cpp/class_member_typedefs/#o","title":"o","text":"
          • OnSubmitCallback (endstone::ActionForm, endstone::MessageForm, endstone::ModalForm)
          • OnClickCallback (endstone::ActionForm::Button)
          • OnCloseCallback (endstone::Form)
          "},{"location":"reference/cpp/class_member_typedefs/#t","title":"t","text":"
          • Type (fmt::formatter< endstone::Block >, fmt::formatter< endstone::BlockData >, fmt::formatter< endstone::BlockState >, fmt::formatter< endstone::BlockStates >, fmt::formatter< endstone::BlockStates::mapped_type >, fmt::formatter< endstone::BlockStates::value_type >, fmt::formatter< endstone::ItemStack >)
          "},{"location":"reference/cpp/class_member_enums/","title":"Class Member Enums","text":""},{"location":"reference/cpp/class_member_enums/#l","title":"l","text":"
          • Level (endstone::Logger)
          • LoadType (endstone::ServerLoadEvent)
          "},{"location":"reference/cpp/class_member_enums/#t","title":"t","text":"
          • Type (endstone::Criteria, endstone::Dimension)
          "},{"location":"reference/cpp/namespace_members/","title":"Namespace Members","text":""},{"location":"reference/cpp/namespace_members/#b","title":"b","text":"
          • BarColor (endstone)
          • BarFlag (endstone)
          • BarStyle (endstone)
          • BlockFace (endstone)
          • BlockStates (endstone)
          "},{"location":"reference/cpp/namespace_members/#d","title":"d","text":"
          • DisplaySlot (endstone)
          "},{"location":"reference/cpp/namespace_members/#e","title":"e","text":"
          • EventPriority (endstone)
          "},{"location":"reference/cpp/namespace_members/#g","title":"g","text":"
          • GameMode (endstone)
          "},{"location":"reference/cpp/namespace_members/#h","title":"h","text":"
          • hash_value (endstone)
          "},{"location":"reference/cpp/namespace_members/#m","title":"m","text":"
          • Message (endstone)
          "},{"location":"reference/cpp/namespace_members/#o","title":"o","text":"
          • ObjectiveSortOrder (endstone)
          • operator!= (endstone)
          • operator< (endstone)
          • operator<= (endstone)
          • operator== (endstone)
          • operator> (endstone)
          • operator>= (endstone)
          • overloaded (endstone)
          "},{"location":"reference/cpp/namespace_members/#p","title":"p","text":"
          • PacketType (endstone)
          • PermissionDefault (endstone)
          • PermissionRemovedExecutor (endstone)
          • PluginLoadOrder (endstone)
          "},{"location":"reference/cpp/namespace_members/#r","title":"r","text":"
          • RenderType (endstone)
          • Result (endstone)
          "},{"location":"reference/cpp/namespace_members/#s","title":"s","text":"
          • ScoreEntry (endstone)
          • swap (endstone)
          "},{"location":"reference/cpp/namespace_members/#t","title":"t","text":"
          • TaskId (endstone)
          "},{"location":"reference/cpp/namespace_member_functions/","title":"Namespace Member Functions","text":""},{"location":"reference/cpp/namespace_member_functions/#h","title":"h","text":"
          • hash_value (endstone)
          "},{"location":"reference/cpp/namespace_member_functions/#o","title":"o","text":"
          • operator!= (endstone)
          • operator< (endstone)
          • operator<= (endstone)
          • operator== (endstone)
          • operator> (endstone)
          • operator>= (endstone)
          • overloaded (endstone)
          "},{"location":"reference/cpp/namespace_member_functions/#s","title":"s","text":"
          • swap (endstone)
          "},{"location":"reference/cpp/namespace_member_variables/","title":"Namespace Member Variables","text":"

          Nothing related to Namespace Member Variables found.

          "},{"location":"reference/cpp/namespace_member_typedefs/","title":"Namespace Member Typedefs","text":""},{"location":"reference/cpp/namespace_member_typedefs/#b","title":"b","text":"
          • BlockStates (endstone)
          "},{"location":"reference/cpp/namespace_member_typedefs/#m","title":"m","text":"
          • Message (endstone)
          "},{"location":"reference/cpp/namespace_member_typedefs/#p","title":"p","text":"
          • PermissionRemovedExecutor (endstone)
          "},{"location":"reference/cpp/namespace_member_typedefs/#r","title":"r","text":"
          • Result (endstone)
          "},{"location":"reference/cpp/namespace_member_typedefs/#s","title":"s","text":"
          • ScoreEntry (endstone)
          "},{"location":"reference/cpp/namespace_member_typedefs/#t","title":"t","text":"
          • TaskId (endstone)
          "},{"location":"reference/cpp/namespace_member_enums/","title":"Namespace Member Enums","text":""},{"location":"reference/cpp/namespace_member_enums/#b","title":"b","text":"
          • BarColor (endstone)
          • BarFlag (endstone)
          • BarStyle (endstone)
          • BlockFace (endstone)
          "},{"location":"reference/cpp/namespace_member_enums/#d","title":"d","text":"
          • DisplaySlot (endstone)
          "},{"location":"reference/cpp/namespace_member_enums/#e","title":"e","text":"
          • EventPriority (endstone)
          "},{"location":"reference/cpp/namespace_member_enums/#g","title":"g","text":"
          • GameMode (endstone)
          "},{"location":"reference/cpp/namespace_member_enums/#o","title":"o","text":"
          • ObjectiveSortOrder (endstone)
          "},{"location":"reference/cpp/namespace_member_enums/#p","title":"p","text":"
          • PacketType (endstone)
          • PermissionDefault (endstone)
          • PluginLoadOrder (endstone)
          "},{"location":"reference/cpp/namespace_member_enums/#r","title":"r","text":"
          • RenderType (endstone)
          "},{"location":"reference/cpp/functions/","title":"Functions","text":"

          Nothing related to Functions found.

          "},{"location":"reference/cpp/macros/","title":"Macros","text":""},{"location":"reference/cpp/macros/#e","title":"e","text":"
          • ENDSTONE_API_VERSION (endstone.h)
          • ENDSTONE_EXPORT (endstone.h)
          • ENDSTONE_MAX_PLAYERS (endstone.h)
          • ENDSTONE_NOINLINE (endstone.h)
          • ENDSTONE_STRINGIFY (endstone.h)
          • ENDSTONE_TOSTRING (endstone.h)
          • ENDSTONE_VERSION_MAJOR (endstone.h)
          • ENDSTONE_VERSION_MINOR (endstone.h)
          • ENDSTONE_VERSION_PATCH (endstone.h)
          • ENDSTONE_PLUGIN (plugin.h)
          "},{"location":"reference/cpp/variables/","title":"Variables","text":"

          Nothing related to Variables found.

          "},{"location":"reference/cpp/links/","title":"Links","text":"
          • Related Pages
          • Modules
          • Class List
          • Namespace ListNamespace List
          • Namespace Members
          • Namespace Member Functions
          • Namespace Member Variables
          • Namespace Member Typedefs
          • Namespace Member Enumerations
          • Class Index
          • Class Hierarchy
          • Class Members
          • Class Member Functions
          • Class Member Variables
          • Class Member Typedefs
          • Class Member Enumerations
          • Files
          • File Variables
          • File Functions
          • File Macros
          "}]} \ No newline at end of file +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Home","text":"

          Write you plugins in Python or C++ and enhance the Bedrock Dedicated Servers in minutes - add custom features and functionality, design innovative and bespoke player experiences.

          "},{"location":"#ready-to-start","title":"\ud83d\ude80 Ready to Start?","text":"
          • Install Endstone server

            Follow the comprehensive guide to install and configure your Endstone server.

            Getting Started

          • Write your first plugin

            Our step-by-step tutorial takes you from zero to hero as you create your first plugin.

            Tutorials

          "},{"location":"#looking-for-hosting-support","title":"\ud83c\udfae Looking for Hosting Support?","text":"

          Try Bisect Hosting and get 25% off with promo code endstone.

          "},{"location":"changelog/","title":"Changelog","text":"

          All notable changes to this project will be documented in this file.

          The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

          "},{"location":"changelog/#056-unreleased","title":"0.5.6 - Unreleased","text":"

          Compare with 0.5.5

          "},{"location":"changelog/#055-2024-10-26","title":"0.5.5 - 2024-10-26","text":"

          Compare with 0.5.4.1

          "},{"location":"changelog/#added","title":"Added","text":"
          • Added support for Minecraft v1.21.40 (Bundles of Bravery).
          • CommandSender will now be downcast to the correct derived type on the Python side.
          • Added the Objective::isDisplayed method to check if an objective is being displayed in any of the scoreboard slots.
          • Added Server::getOnlineMode to check if the server is running with authentication enabled.
          • Added Actor::getScoreboardTags to get the list of tags added to the actor.
          • Added Actor::addScoreboardTag and Actor::removeScoreboardTag to modify the actor's tags.
          • Added support for loading zipped resource packs. You can now put .zip and .mcpack resource packs under the resource_packs folder, and they will be loaded automatically when the server starts.
          • Added support for encrypted resource packs. You can put the keys in the .zip.key or .mcpack.key format next to the resource packs.
          • Added the ScriptMessageEvent, which will get called when a script message is sent using the /scriptevent command.
          • Added Server::getLanguage to translate a message into a specific locale.
          • Added Actor::getHealth, Actor::setHealth, and Actor::getMaxHealth for getting and setting actor health.
          • Added CommandSenderWrapper to capture the output of command execution for any command sender.
          • Added Player::spawnParticle to send a particle effect that is only visible to the player.
          "},{"location":"changelog/#changed","title":"Changed","text":"
          • Error messages from DevTools, when OpenGL is not available, are now suppressed.
          • The return type of several methods has been changed to endstone::Result to include error messages, which will automatically throw exceptions with the same messages on the Python side.
          "},{"location":"changelog/#fixed","title":"Fixed","text":"
          • Fixed a crash that occurred while handling server ping requests (#60).
          "},{"location":"changelog/#0541-2023-09-19","title":"0.5.4.1 - 2023-09-19","text":"

          Compare with 0.5.4

          "},{"location":"changelog/#fixed_1","title":"Fixed","text":"
          • Fixed a crash that could occur when the player uses emotes.
          "},{"location":"changelog/#054-2024-09-19","title":"0.5.4 - 2024-09-19","text":"

          Compare with 0.5.3

          "},{"location":"changelog/#added_1","title":"Added","text":"
          • Added support for Minecraft v1.21.30.
          • Added support for Python 3.13.
          • Added biome data to the DevTools by @CoolLoong.
          "},{"location":"changelog/#changed_1","title":"Changed","text":"
          • BREAKING CHANGE: Player::performCommand now executes the command as a Player to resolve #53. This means the command execution will now depend on the player's permissions as operator permissions are no longer granted. If you still want to have the player perform a command with elevated permissions, consider using Server::dispatchCommand to execute execute as {player_name} run {command}.
          "},{"location":"changelog/#fixed_2","title":"Fixed","text":"
          • Actor::isOnGround, Actor::isInWater, and Actor::isInLava now return the correct values.
          • Fixed a typo in the documentation by @thatgurkangurk.
          • Fixed the command parser logic for chained commands.
          • Fixed a server crash when spawning a simulated player due to the absence of an invalid network identifier.
          "},{"location":"changelog/#053-2024-09-12","title":"0.5.3 - 2024-09-12","text":"

          Compare with 0.5.2

          "},{"location":"changelog/#added_2","title":"Added","text":"
          • Added support for Minecraft v1.21.23.
          • Introduced the BlockData class, which encapsulates both the block type and a specific state from all possible block states.
          • Block types and block states can now be used as command arguments.
          • Added PlayerKnockbackEvent, triggered when a player receives knockback. Developers can modify the knockback that the player will receive.
          • Added PlayerKickEvent, triggered when a player is kicked from the server, allowing for customization of kick messages.
          • Introduced the BlockState class, representing a snapshot of a block at a specific point in time.
          • PlayerJoinEvent and PlayerQuitEvent now include getter and setter methods for customizing join/quit messages.
          • Integrated bStats metrics.
          "},{"location":"changelog/#changed_2","title":"Changed","text":"
          • BREAKING CHANGE: Renamed Server::getNewScoreboard to Server::createScoreboard for consistency with other methods like createBossbar and createBlockData.
          • Lifted the restriction on the /reload command for console use. It can now be executed in-game.
          "},{"location":"changelog/#fixed_3","title":"Fixed","text":"
          • Enforced the use of libc++ for C++ plugins on Linux to resolve symbol errors.
          • Player::setExpProgress now correctly sets experience progress without precision loss.
          • Fixed an issue where death messages were being sent to players twice.
          • Resolved a crash when calling ItemStack::getType on an item from PlayerInteractEvent when the player interacts with a block with bare hands.
          • PlayerInteractEvent::hasItem now correctly returns false if the player has no item in hand when interacting.
          "},{"location":"changelog/#052-2024-08-30","title":"0.5.2 - 2024-08-30","text":"

          Compare with 0.5.1

          "},{"location":"changelog/#added_3","title":"Added","text":"
          • Support for Minecraft v1.21.22.
          • Boss bar API.
          • Block::getRelative to get a block relative to a block face.
          • BlockBreakEvent triggered when a player breaks a block.
          • BlockPlaceEvent triggered when a player places a block against another block.
          • PlayerInteractEvent triggered when a player right-clicks a block.
          • PlayerInteractActorEvent triggered when a player interacts with an actor.
          • An auto installer script for installing Endstone on Linux (thanks to @legitbox).
          "},{"location":"changelog/#changed_3","title":"Changed","text":"
          • Check chunk states before getting the block in Dimension::getBlockAt.
          "},{"location":"changelog/#fixed_4","title":"Fixed","text":"
          • #38 - Plugins can now be properly loaded inside a virtual environment on Linux.
          "},{"location":"changelog/#051-2024-08-24","title":"0.5.1 - 2024-08-24","text":"

          Compare with 0.5.0

          "},{"location":"changelog/#added_4","title":"Added","text":"
          • Support for Minecraft v1.21.20.
          • Player::getScoreboard and Player::setScoreboard methods to allow each player to have their own scoreboard ( separate from the main shared scoreboard).
          • PlayerTeleportEvent, which is called when a player is teleported from one location to another.
          • Actor::teleport method to teleport an actor to a given location or actor.
          • The server can now be gracefully shut down when Ctrl + C is pressed.
          • /status command to show the uptime and performance of the server.
          • Basic network API to allow plugins to send custom packets. Currently, only SpawnParticleEffectPacket is supported.
          • /reload command to reload plugins in addition to addons.
          • Player::sendToast method to send a toast message to players.
          • Furnace-related item data to DevTools by @smartcmd.
          "},{"location":"changelog/#changed_4","title":"Changed","text":"
          • Player::isOp and Player::setOp methods are now consistent with the similar methods in the scripting API.
          • The fix for the warning message about empty packets is now redundant and has been removed.
          • BREAKING CHANGE: Server::getLevels has been replaced by Server::getLevel.
          • BREAKING CHANGE: Player::getDeviceId now returns a string object instead of a UUID object, as it is not guaranteed to be a UUID on all platforms.
          "},{"location":"changelog/#fixed_5","title":"Fixed","text":"
          • #29 - Commands will no longer be sent to a player who doesn't have
          • #32 - Creating an action form without an on_submit callback will no longer crashes the server
          • Plugin config files are now always read and written in UTF-8 encoding.
          • Added a missing parameter to ActionForm::addButton.
          • Action forms without any buttons can now be displayed correctly on the client side.
          • The Python executable can now be located in multiple possible locations on Linux.
          "},{"location":"changelog/#050-2024-07-29","title":"0.5.0 - 2024-07-29","text":"

          Compare with 0.4.10

          "},{"location":"changelog/#added_5","title":"Added","text":"
          • Support for Minecraft v1.21.3.
          • Actor::getId function to get an actor's unique id, persisting between server runs.
          • Actor::isDead function to check if an actor is marked for removal post-death.
          • ActorTeleport event that triggers when an entity teleports (e.g., Enderman, Wolf).
          • Mob::isGliding function to check if a living entity is gliding.
          • Player::sendTitle and Player::resetTitle functions for sending and resetting an on-screen title.
          • Player::transfer function to transfer a player to another server.
          • Player::getXuid to get the Xbox User ID (XUID) of the player.
          • Python: package metadata can now be used as a fallback for plugin metadata.
          • Python: isinstance function can now be used to check if a CommandSender is a Player or ConsoleCommandSender.
          • Experimental Scoreboard API.
          • Experimental Form API.
          "},{"location":"changelog/#changed_5","title":"Changed","text":"
          • Player class now inherits from the Mob class instead of Actor class.
          • BREAKING CHANGE: Plugin names should only contain lowercase letters, numbers, and underscores. Use the prefix property to display a different name for the plugin logger.
          • BREAKING CHANGE: The player.ping property now returns an int instead of datetime.timedelta.
          "},{"location":"changelog/#fixed_6","title":"Fixed","text":"
          • Fixed issue where Server::setMaxPlayers would crash due to a change in the internal struct in BDS.
          • Fixed issue that python executable cannot be located when running in a virtual environment.
          "},{"location":"changelog/#0410-2024-07-10","title":"0.4.10 - 2024-07-10","text":"

          Compare with 0.4.9

          "},{"location":"changelog/#added_6","title":"Added","text":"
          • Support for Minecraft v1.21.2.
          • Player::getSkin method to retrieve the current skin of a player.
          • Support for recipes with output items possessing NBT (Named Binary Tag) tags. These tags are now also included in the dumped data.
          "},{"location":"changelog/#fixed_7","title":"Fixed","text":"
          • Issue with shaped recipes. Recipes that have item tags as input (instead of item names) can now be dumped correctly.
          "},{"location":"changelog/#049-2024-07-05","title":"0.4.9 - 2024-07-05","text":"

          Compare with 0.4.8.1

          "},{"location":"changelog/#added_7","title":"Added","text":"
          • Support for Minecraft v1.21.1.
          • ActorDeathEvent and PlayerDeathEvent triggers when an actor or a player dies.
          • Player::giveExp and Player::giveExpLevels functionality for adding experience points/levels added.
          • Player::getAllowFlight and Player::setAllowFlight to check or grant the ability for players not in creative mode to fly.
          • Player::setFlying to toggle a player's flying status.
          • An overload of sendMessage to allow sending of translatable messages with parameters that will be localized on the client side.
          • Player::getExpProgress and Player::setExpProgress to get or set a player's progress towards the next level.
          • Player::getExpLevel and Player::setExpLevel to get or set a player's current experience level.
          • Player::getTotalExp to get the total amount of experiences a player has collected.
          • Player::getLocale to get the player's current locale.
          • Player::getDeviceId and Player::getDeviceOS to get information related to player's device.
          • A DevTools to help community projects get necessary data from BDS (currently only available on Windows). To open the DevTools, use command /devtools in the console.
          "},{"location":"changelog/#changed_6","title":"Changed","text":"
          • Permissible.op property in the python binding is renamed to Permissible.is_op.
          • Crash dumps will now print system and version info in addition to stacktraces.
          "},{"location":"changelog/#fixed_8","title":"Fixed","text":"
          • Suppressed warning message about empty UDP packets from the output.
          "},{"location":"changelog/#0481-2024-06-15","title":"0.4.8.1 - 2024-06-15","text":"

          Compare with 0.4.7

          "},{"location":"changelog/#added_8","title":"Added","text":"
          • Support Minecraft v1.21 (Tricky Trials)
          "},{"location":"changelog/#fixed_9","title":"Fixed","text":"
          • Player::getPing now returns correct value instead of -1 on Linux.
          • Player::isFlying now works correctly in all conditions.
          • Calling python binding of Server::getPlayer with uuid no longer crashes.
          • Fixed a regression in vanilla command permissions.
          • Permission attachment now works as expected.
          "},{"location":"changelog/#047-2024-06-13","title":"0.4.7 - 2024-06-13","text":"

          Compare with 0.4.6

          "},{"location":"changelog/#added_9","title":"Added","text":"
          • Player::performCommand allows a player to execute a given command. During the command execution, the player is temporarily granted the operator permission.
          • Level::getDimension and Level::getDimensions for getting dimensions within a specific level.
          • Actor::getDimension for getting the dimension that an actor resides in.
          • Player::getGameMode and Player::setGameMode for getting and setting a player's game mode.
          • Plugin configuration for Python plugins.
          • Added more struct info by @Duckos-Mods in #11.
          • World seed will no longer be sent to the client when client-side-chunk-generation-enabled is disabled in server.properties.
          • Command permissions are now checked before its parsing.
          • Server::dispatchCommand allows one to dispatch a command on the server.
          • Server::getMaxPlayers and Server::setMaxPlayers for getting and setting the maximum amount of players allowed to be logged in.
          • Server::getPlayer now also accepts a string argument to get a player by name instead of UUID.
          "},{"location":"changelog/#changed_7","title":"Changed","text":"
          • Changed logging level look-up from using a hashmap to using a switch by @Duckos-Mods in #12
          • Endstone no longer requires the presence of debug symbols at runtime.
          "},{"location":"changelog/#fixed_10","title":"Fixed","text":"
          • Actor::getVelocity now returns the correct velocity when the actor rides a vehicle.
          • Python plugin loader now works correctly with Python 3.9.
          "},{"location":"changelog/#046-2024-05-15","title":"0.4.6 - 2024-05-15","text":"

          Compare with 0.4.5

          "},{"location":"changelog/#fixed_11","title":"Fixed","text":"
          • Improved the detection of Python executable.
          "},{"location":"changelog/#045-2024-05-14","title":"0.4.5 - 2024-05-14","text":"

          Compare with 0.4.3

          "},{"location":"changelog/#added_10","title":"Added","text":"
          • Bootstrap now protects specific files from overwriting during update.
          • Python plugin loader now loads all *.whl plugins under the plguins folder and their dependencies during server start up.
          "},{"location":"changelog/#fixed_12","title":"Fixed","text":"
          • Scheduler now works on Linux.
          "},{"location":"changelog/#043-2024-05-13","title":"0.4.3 - 2024-05-13","text":"

          Compare with 0.4.2

          "},{"location":"changelog/#added_11","title":"Added","text":"
          • Server::getOnlinePlayers for getting all online players.
          • Player::kick for kicking a specific player with a custom message.
          • Player::getPing for getting the average latency of a connected player.
          • Actor::getLocation and Actor::getVelocity for getting the location and velocity of an actor respectively.
          • Actor::getLevel for getting the Level that an actor resides in.
          "},{"location":"changelog/#changed_8","title":"Changed","text":"
          • Level is no longer created for each Dimension in a Minecraft world. Instead, one Level now manages multiple Dimensions.
          • Player::getAddress now returns a SocketAddress instead of std::string. Player::getPort was removed, use SocketAddress::getPort instead.
          • Executable endstone now accepts --server-folder instead of --install-folder, and --no-confirm instead of --install.
          • Endstone server will now ask the user whether to update the Bedrock Dedicated Server if an older version is found.
          "},{"location":"changelog/#042-2024-04-30","title":"0.4.2 - 2024-04-30","text":"

          Compare with 0.4.1

          "},{"location":"changelog/#added_12","title":"Added","text":"
          • Level::getDimension for getting the dimension of a specific level.
          • Player::getAddress and Player::getPort for getting the socket address and port of a specific player, respectively.
          • Logs are now written to logs/latest.log with rotations.
          • Basic scheduler implementation, currently supporting only synchronized task execution.
          • PlayerLoginEvent is called when a player attempts to log in.
          "},{"location":"changelog/#changed_9","title":"Changed","text":"
          • Support for Minecraft v1.20.81 (Bedrock)
          "},{"location":"changelog/#fixed_13","title":"Fixed","text":"
          • Server no longer crashes when the weather is changed on Linux.
          "},{"location":"changelog/#041-2024-04-24","title":"0.4.1 - 2024-04-24","text":"

          Compare with 0.4.0

          This release focuses on supporting game version v1.20.80, which adds several new features. Additionally, we add a few useful functions to Player and Server.

          "},{"location":"changelog/#added_13","title":"Added","text":"
          • Commands executed by players are now logged to the console.
          • Message of /say command will be logged to the console.
          • PlayerCommandEvent is called when a player attempts to execute a command.
          • Server::broadcastMessage for broadcasting messages to all players.
          • BroadcastMessageEvent is called when a message is broadcast by the server.
          "},{"location":"changelog/#changed_10","title":"Changed","text":"
          • Support for Minecraft v1.20.80 - Armored Paws (Bedrock)
          "},{"location":"changelog/#fixed_14","title":"Fixed","text":"
          • Player permissions are recalculated when the op status is changed.
          • Incorrect UUID for Players corrected.
          "},{"location":"changelog/#040-2024-04-20","title":"0.4.0 - 2024-04-20","text":"

          Compare with 0.3.0

          In this release, we added an event system and several basic interfaces for game objects like Level, Actor and Player.

          "},{"location":"changelog/#added_14","title":"Added","text":"
          • Event system that allows plugins to listen for specific events.
          • ServerLoadEvent is called when a server is started up.
          • Plugin::registerEventHandler for registering an event handler in C++ plugins.
          • Decorator @event_handler for registering an event handler in Python plugins.
          • PluginEnableEvent and PluginDisableEvent are called when a plugin is enabled or disabled.
          • ServerPingListEvent can be listened to for customizing how the server appears in the client list.
          • ServerCommandEvent is called when the server executes a command.
          • WeatherChangeEvent and ThunderChangeEvent are called when the weather or thunder status changes in a level.
          • Basic interface endstone::Level for a level/world.
          • Basic interface endstone::Actor for entities/actors.
          • Basic interface endstone::Player for players.
          • Server::getPlayer for getting a player instance by UUID.
          • Player::sendPopup and Player::sendTip for sending popup and tip messages.
          • Stack traces are now printed to the console when an unrecoverable error occurs.
          • PlayerJoinEvent and PlayerQuitEvent are called when a player joins and leaves the server.
          • ActorSpawnEvent is called when an actor is spawned in the level.
          • ActorRemoveEvent is called when an actor is removed from the level.
          • PlayerChatEvent is called when a player sends a message.
          "},{"location":"changelog/#changed_11","title":"Changed","text":"
          • Singletons are now managed using entt::locator.
          • Macro ENDSTONE_PLUGIN is improved to simplify the definition of plugin metadata.
          • ColorFormat and GameMode have been moved from endstone.util to endstone in the Python package.
          • Wheels are now built and released with RelWithDebInfo configuration to enable stack trace printing.
          • Support for Minecraft v1.20.73 (Bedrock)
          "},{"location":"changelog/#fixed_15","title":"Fixed","text":"
          • Server no longer crashes when /listd command is executed.
          "},{"location":"changelog/#030-2024-03-21","title":"0.3.0 - 2024-03-21","text":"

          Compare with 0.2.0

          This is the second release of Endstone with a focus on the permission system and improving the plugin loading mechanisms.

          "},{"location":"changelog/#added_15","title":"Added","text":"
          • Basic permission systems.
          • Enforced Plugin API version checks for C++ and Python plugins to ensure ABI/API compatibility.
          • Commands are now defined within the plugin metadata which will be automatically registered when the associated plugin is enabled.
          • PluginDescription properties are extended to support website, load_order, depend, soft_depend, load_before, and provides.
          "},{"location":"changelog/#changed_12","title":"Changed","text":"
          • Improved ENDSTONE_PLUGIN macro to further simplify the definition of plugin metadata.
          • Plugin names and websites are now displayed when using /version [plugin: PluginName].
          • Support for Minecraft v1.20.72 (Bedrock)
          "},{"location":"changelog/#fixed_16","title":"Fixed","text":"
          • C++ plugin loader now respects the prefix property of a plugin.
          "},{"location":"changelog/#020-2024-03-19","title":"0.2.0 - 2024-03-19","text":"

          Hello World! This is the first release of Endstone.

          "},{"location":"changelog/#added_16","title":"Added","text":"
          • Basic plugin loader for C++ and Python plugins.
          • Basic command system that allows plugins to register custom commands.
          "},{"location":"getting-started/contributing/","title":"Contributing","text":"

          \ud83d\udc4d\ud83c\udf89 First off, thanks for taking the time to contribute! \ud83c\udf89\ud83d\udc4d

          "},{"location":"getting-started/contributing/#where-to-start","title":"Where to start?","text":"

          If you are looking for a good issue to start with, please check the following:

          • good first issue - issues that should be pretty simple to implement,
          • help wanted - issues that typically are a bit more involved than beginner issues,
          • high priority - things to fix ASAP but often of higher complexity.
          "},{"location":"getting-started/contributing/#source","title":"Source","text":"

          To build from source on your local machine, please follow the instructions below:

          "},{"location":"getting-started/contributing/#clone-the-repository","title":"Clone the repository","text":"
          git clone https://github.com/EndstoneMC/endstone.git\ncd endstone\n
          "},{"location":"getting-started/contributing/#install-the-package-manager-conan","title":"Install the package manager (conan)","text":"

          The dependencies needed for the development of Endstone are provided Conan Package Manager (>=2.0). The install the package manager, run the following commands in your Python environment.

          pip install conan\nconan detect profile\n
          "},{"location":"getting-started/contributing/#install-dependencies","title":"Install dependencies","text":"

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

          conan export third_party/funchook --version 1.1.3\n

          Then, run the following commands:

          Command Prompt Powershell Linux
          conan install . --build=missing -s compiler.cppstd=17 -s build_type=RelWithDebInfo -c tools.cmake.cmaketoolchain:generator=Ninja\n
          conan install . --build=missing -s compiler.cppstd=17 -s build_type=RelWithDebInfo -c tools.cmake.cmaketoolchain:generator=Ninja -c tools.env.virtualenv:powershell=True\n
          conan install . --build=missing -s compiler.cppstd=17 -s compiler.libcxx=libc++ -s build_type=RelWithDebInfo -c tools.cmake.cmaketoolchain:generator=Ninja\n

          Now, activate the build virtual environment create by conan.

          Command Prompt Powershell Linux
          .\\build\\RelWithDebInfo\\generators\\conanbuild.bat\n
          .\\build\\RelWithDebInfo\\generators\\conanbuild.ps1\n
          source ./build/RelWithDebInfo/generators/conanbuild.sh\n

          Run cmake and check the version:

          $ cmake --version\ncmake version 3.22.6\n
          "},{"location":"getting-started/contributing/#build-with-cmake","title":"Build with CMake","text":"
          cmake --preset conan-relwithdebinfo\ncmake --build --preset conan-relwithdebinfo\n
          "},{"location":"getting-started/contributing/#install","title":"Install","text":"

          To install Endstone from your local sources, you will need to activate the build environment and then run:

          pip install -U .\n
          "},{"location":"getting-started/contributing/#documentation","title":"Documentation","text":"

          We are building our documentation using Material for MkDocs. The easiest way to install all the required dependencies is with pip:

          pip install -r docs/requirements.txt\n

          After that, you can either:

          • Start a live server to preview the documentation as you write, or
          mkdocs serve\n
          • Build the documentation
          mkdocs build\n
          "},{"location":"getting-started/installation/","title":"Getting started","text":"

          Endstone offers a powerful plugin API for Bedrock Dedicated Servers, the official server software for Minecraft: Bedrock Edition. If you're familiar with Python, you can install Endstone with pip, the Python package manager. If not, we recommend using docker.

          "},{"location":"getting-started/installation/#installation","title":"Installation","text":""},{"location":"getting-started/installation/#environment","title":"Environment optional","text":"

          We recommend using a virtual environment, which is an isolated Python runtime. If you are in a virtual environment, any packages that you install or upgrade will be local to the environment. If you run into problems, you can just delete and recreate the environment. It's trivial to set up:

          • Create a new virtual environment with:

            python3 -m venv venv\n
          • Activate the environment with:

            Windows Linux
            . venv/Scripts/activate\n
            . venv/bin/activate\n

            Your terminal should now print (venv) before the prompt, which is how you know that you are inside the virtual environment that you just created.

          • Exit the environment with:

            deactivate\n
          "},{"location":"getting-started/installation/#with-pip","title":"with pip recommended","text":"

          Endstone is published as a Python package and can be installed with pip, ideally by using the virtual environment from the last step. Open up a terminal and install Endstone with:

          Latest
          pip install endstone\n
          "},{"location":"getting-started/installation/#with-docker","title":"with docker","text":"

          The official Docker image is a great way to get the Endstone server up and running in a few minutes. Open up a terminal and pull the image with:

          Latest
          docker pull endstone/endstone\n
          "},{"location":"getting-started/project-structure/","title":"Project Structure","text":"

          This chapter provides a high-level overview of the project to make it easier to navigate, build, and use.

          "},{"location":"getting-started/project-structure/#cmake-projects-and-dependencies","title":"CMake Projects and Dependencies","text":"

          The GitHub repository contains the following CMake projects:

          • Endstone API (include/endstone)

            • This is the header-only API layer that developers use to create plugins.
            • It provides a standardized set of methods and abstractions to interact with Minecraft, ensuring plugins work across different Minecraft versions with minimal adjustments.
            • It abstracts Minecraft internals, allowing plugins to interact with the game in a version-agnostic way without directly interfacing with Mojang's code.
          • Endstone Python Bindings (src/endstone_python)

            • This is the Python binding of the Endstone API.
            • It allows developers to create plugins in Python by translating API calls from Python to the underlying C++ calls.
          • Endstone Core (src/endstone_core)

            • This is the implementation of the Endstone API. It sits between the API and the game itself.
            • It provides the actual behavior for API methods by interacting directly with the Bedrock Dedicated Server (BDS), translating abstracted API calls from plugins into specific BDS internal calls.
          • Endstone Runtime (src/endstone_runtime)

            • This includes hooks that are applied to the executable binary of the Bedrock Dedicated Server to modify or extend functionality, providing bug fixes and features that are not possible through the API alone.
            • These hooks are necessary because the original software is compiled into binary, and updates to Minecraft frequently break compatibility with existing code.
          • Endstone DevTools (src/endstone_devtools)

            • This provides a Graphical User Interface (GUI) that allows advanced users to dump useful data from the vanilla software for other purposes, such as third-party server software.
            • It is currently enabled only on Windows and requires OpenGL functionality to be available on the system.
          "},{"location":"getting-started/project-structure/#python-project","title":"Python Project","text":"

          Endstone is released as a Python package on PyPI, which encapsulates several utilities written in pure Python, in addition to the compiled libraries of the CMake projects and the Python bindings of the Endstone API. These Python codes are located under the python/src folder, and unit tests are located under python/tests.

          "},{"location":"getting-started/start-your-server/","title":"Start your server","text":"

          After you've installed Endstone, you can bootstrap your server using the endstone executable. Go to the directory where you want your server to be located and enter:

          endstone\n

          Alternatively, if you're running Endstone from within Docker, use:

          Linux / Powershell Command Prompt
          docker run --rm -it -v ${PWD}:/home/endstone -p 19132:19132/udp endstone/endstone\n
          docker run --rm -it -v \"%cd%\":/home/endstone -p 19132:19132/udp endstone/endstone\n

          You should see this in your console:

          Tip

          The first time you run the bootstrap, it will need to download the Bedrock Dedicated Server from the official mirror. Press Y and Enter to continue.

          "},{"location":"reference/","title":"Reference","text":"

          In the course of your plugin development, you may choose between the Python API and C++ API. If you are seeking a quick start and prefer a more flexible language, the Python API documentation can be your starting point. However, if you need to implement more performance-driven, highly optimized code, you may want to delve into the C++ API documentation.

          • Python API

            Craft your plugins using the Python API for a quick start.

            Learn more

          • C++ API

            Write your plugins using the C++ API for maximum performance.

            Learn more

          "},{"location":"reference/python/actor/","title":"Actor","text":""},{"location":"reference/python/actor/#endstone.actor","title":"endstone.actor","text":"

          Classes:

          Name Description Actor

          Represents a base actor in the level.

          Mob

          Represents a mobile entity (i.e. living entity), such as a monster or player.

          "},{"location":"reference/python/actor/#endstone.actor.Actor","title":"Actor","text":"

          Bases: CommandSender

          Represents a base actor in the level.

          Methods:

          Name Description add_scoreboard_tag

          Adds a tag to this actor.

          remove_scoreboard_tag

          Removes a given tag from this actor.

          set_rotation

          Sets the actor's rotation.

          teleport

          Attributes:

          Name Type Description dimension Dimension

          Gets the current Dimension this actor resides in.

          health int

          Gets or sets the entity's health from 0 to its max possible value, where 0 is dead.

          id int

          Returns a unique id for this actor.

          is_dead bool

          Returns true if this actor has been marked for removal.

          is_in_lava bool

          Returns true if the actor is in lava.

          is_in_water bool

          Returns true if the actor is in water.

          is_on_ground bool

          Returns true if the actor is supported by a block, i.e. on ground.

          level Level

          Gets the current Level this actor resides in.

          location Location

          Gets the actor's current position.

          max_health int

          Gets the maximum health this entity has.

          runtime_id int

          Returns the runtime id for this actor.

          scoreboard_tags list[str]

          Returns a list of scoreboard tags for this actor.

          velocity Vector

          Gets this actor's current velocity.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.dimension","title":"dimension property","text":"
          dimension: Dimension\n

          Gets the current Dimension this actor resides in.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.health","title":"health property writable","text":"
          health: int\n

          Gets or sets the entity's health from 0 to its max possible value, where 0 is dead.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.id","title":"id property","text":"
          id: int\n

          Returns a unique id for this actor.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.is_dead","title":"is_dead property","text":"
          is_dead: bool\n

          Returns true if this actor has been marked for removal.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.is_in_lava","title":"is_in_lava property","text":"
          is_in_lava: bool\n

          Returns true if the actor is in lava.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.is_in_water","title":"is_in_water property","text":"
          is_in_water: bool\n

          Returns true if the actor is in water.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.is_on_ground","title":"is_on_ground property","text":"
          is_on_ground: bool\n

          Returns true if the actor is supported by a block, i.e. on ground.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.level","title":"level property","text":"
          level: Level\n

          Gets the current Level this actor resides in.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.location","title":"location property","text":"
          location: Location\n

          Gets the actor's current position.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.max_health","title":"max_health property","text":"
          max_health: int\n

          Gets the maximum health this entity has.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.runtime_id","title":"runtime_id property","text":"
          runtime_id: int\n

          Returns the runtime id for this actor.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.scoreboard_tags","title":"scoreboard_tags property","text":"
          scoreboard_tags: list[str]\n

          Returns a list of scoreboard tags for this actor.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.velocity","title":"velocity property","text":"
          velocity: Vector\n

          Gets this actor's current velocity.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.add_scoreboard_tag","title":"add_scoreboard_tag","text":"
          add_scoreboard_tag(tag: str) -> bool\n

          Adds a tag to this actor.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.remove_scoreboard_tag","title":"remove_scoreboard_tag","text":"
          remove_scoreboard_tag(tag: str) -> bool\n

          Removes a given tag from this actor.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.set_rotation","title":"set_rotation","text":"
          set_rotation(yaw: float, pitch: float) -> None\n

          Sets the actor's rotation.

          "},{"location":"reference/python/actor/#endstone.actor.Actor.teleport","title":"teleport","text":"
          teleport(location: Location) -> None\n

          Teleports this actor to the given location.

          teleport(target: Actor) -> None\n

          Teleports this actor to the target Actor.

          "},{"location":"reference/python/actor/#endstone.actor.Mob","title":"Mob","text":"

          Bases: Actor

          Represents a mobile entity (i.e. living entity), such as a monster or player.

          Attributes:

          Name Type Description is_gliding bool

          Checks to see if an actor is gliding, such as using an Elytra.

          "},{"location":"reference/python/actor/#endstone.actor.Mob.is_gliding","title":"is_gliding property","text":"
          is_gliding: bool\n

          Checks to see if an actor is gliding, such as using an Elytra.

          "},{"location":"reference/python/block/","title":"Block","text":""},{"location":"reference/python/block/#endstone.block","title":"endstone.block","text":"

          Classes:

          Name Description Block

          Represents a block.

          BlockData

          Represents the data related to a live block

          BlockFace BlockState

          Represents a captured state of a block, which will not update automatically.

          "},{"location":"reference/python/block/#endstone.block.Block","title":"Block","text":"

          Represents a block.

          Methods:

          Name Description capture_state

          Captures the current state of this block. The returned object will never be updated, and you are not guaranteed that (for example) a sign is still a sign after you capture its state.

          get_relative set_data

          Sets the complete data for this block

          set_type

          Sets the type of this block

          Attributes:

          Name Type Description data BlockData

          Gets or sets the complete data for this block

          dimension Dimension

          Gets the dimension which contains this Block

          location Location

          Gets the Location of the block

          type str

          Gets or sets the type of the block.

          x int

          Gets the x-coordinate of this block

          y int

          Gets the y-coordinate of this block

          z int

          Gets the z-coordinate of this block

          "},{"location":"reference/python/block/#endstone.block.Block.data","title":"data property writable","text":"
          data: BlockData\n

          Gets or sets the complete data for this block

          "},{"location":"reference/python/block/#endstone.block.Block.dimension","title":"dimension property","text":"
          dimension: Dimension\n

          Gets the dimension which contains this Block

          "},{"location":"reference/python/block/#endstone.block.Block.location","title":"location property","text":"
          location: Location\n

          Gets the Location of the block

          "},{"location":"reference/python/block/#endstone.block.Block.type","title":"type property writable","text":"
          type: str\n

          Gets or sets the type of the block.

          "},{"location":"reference/python/block/#endstone.block.Block.x","title":"x property","text":"
          x: int\n

          Gets the x-coordinate of this block

          "},{"location":"reference/python/block/#endstone.block.Block.y","title":"y property","text":"
          y: int\n

          Gets the y-coordinate of this block

          "},{"location":"reference/python/block/#endstone.block.Block.z","title":"z property","text":"
          z: int\n

          Gets the z-coordinate of this block

          "},{"location":"reference/python/block/#endstone.block.Block.capture_state","title":"capture_state","text":"
          capture_state() -> BlockState\n

          Captures the current state of this block. The returned object will never be updated, and you are not guaranteed that (for example) a sign is still a sign after you capture its state.

          "},{"location":"reference/python/block/#endstone.block.Block.get_relative","title":"get_relative","text":"
          get_relative(\n    offset_x: int, offset_y: int, offset_z: int\n) -> Block\n

          Gets the block at the given offsets

          get_relative(face: BlockFace, distance: int = 1) -> Block\n

          Gets the block at the given distance of the given face

          "},{"location":"reference/python/block/#endstone.block.Block.set_data","title":"set_data","text":"
          set_data(\n    data: BlockData, apply_physics: bool = True\n) -> None\n

          Sets the complete data for this block

          "},{"location":"reference/python/block/#endstone.block.Block.set_type","title":"set_type","text":"
          set_type(type: str, apply_physics: bool = True) -> None\n

          Sets the type of this block

          "},{"location":"reference/python/block/#endstone.block.BlockData","title":"BlockData","text":"

          Represents the data related to a live block

          Attributes:

          Name Type Description block_states dict[str, bool | str | int]

          Gets the block states for this block.

          type str

          Get the block type represented by this block data.

          "},{"location":"reference/python/block/#endstone.block.BlockData.block_states","title":"block_states property","text":"
          block_states: dict[str, bool | str | int]\n

          Gets the block states for this block.

          "},{"location":"reference/python/block/#endstone.block.BlockData.type","title":"type property","text":"
          type: str\n

          Get the block type represented by this block data.

          "},{"location":"reference/python/block/#endstone.block.BlockFace","title":"BlockFace","text":"
          BlockFace(value: int)\n

          Attributes:

          Name Type Description DOWN BlockFace EAST BlockFace NORTH BlockFace SOUTH BlockFace UP BlockFace WEST BlockFace name str value int"},{"location":"reference/python/block/#endstone.block.BlockFace.DOWN","title":"DOWN class-attribute","text":"
          DOWN: BlockFace\n
          "},{"location":"reference/python/block/#endstone.block.BlockFace.EAST","title":"EAST class-attribute","text":"
          EAST: BlockFace\n
          "},{"location":"reference/python/block/#endstone.block.BlockFace.NORTH","title":"NORTH class-attribute","text":"
          NORTH: BlockFace\n
          "},{"location":"reference/python/block/#endstone.block.BlockFace.SOUTH","title":"SOUTH class-attribute","text":"
          SOUTH: BlockFace\n
          "},{"location":"reference/python/block/#endstone.block.BlockFace.UP","title":"UP class-attribute","text":"
          UP: BlockFace\n
          "},{"location":"reference/python/block/#endstone.block.BlockFace.WEST","title":"WEST class-attribute","text":"
          WEST: BlockFace\n
          "},{"location":"reference/python/block/#endstone.block.BlockFace.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/block/#endstone.block.BlockFace.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/block/#endstone.block.BlockState","title":"BlockState","text":"

          Represents a captured state of a block, which will not update automatically.

          Methods:

          Name Description update

          Attempts to update the block represented by this state.

          Attributes:

          Name Type Description block Block

          Gets the block represented by this block state.

          data BlockData

          Gets or sets the data for this block state.

          dimension Dimension

          Gets the dimension which contains the block represented by this block state.

          location Location

          Gets the location of this block state.

          type str

          Gets or sets the type of this block state.

          x int

          Gets the x-coordinate of this block state.

          y int

          Gets the y-coordinate of this block state.

          z int

          Gets the z-coordinate of this block state.

          "},{"location":"reference/python/block/#endstone.block.BlockState.block","title":"block property","text":"
          block: Block\n

          Gets the block represented by this block state.

          "},{"location":"reference/python/block/#endstone.block.BlockState.data","title":"data property writable","text":"
          data: BlockData\n

          Gets or sets the data for this block state.

          "},{"location":"reference/python/block/#endstone.block.BlockState.dimension","title":"dimension property","text":"
          dimension: Dimension\n

          Gets the dimension which contains the block represented by this block state.

          "},{"location":"reference/python/block/#endstone.block.BlockState.location","title":"location property","text":"
          location: Location\n

          Gets the location of this block state.

          "},{"location":"reference/python/block/#endstone.block.BlockState.type","title":"type property writable","text":"
          type: str\n

          Gets or sets the type of this block state.

          "},{"location":"reference/python/block/#endstone.block.BlockState.x","title":"x property","text":"
          x: int\n

          Gets the x-coordinate of this block state.

          "},{"location":"reference/python/block/#endstone.block.BlockState.y","title":"y property","text":"
          y: int\n

          Gets the y-coordinate of this block state.

          "},{"location":"reference/python/block/#endstone.block.BlockState.z","title":"z property","text":"
          z: int\n

          Gets the z-coordinate of this block state.

          "},{"location":"reference/python/block/#endstone.block.BlockState.update","title":"update","text":"
          update(\n    force: bool = False, apply_physics: bool = True\n) -> bool\n

          Attempts to update the block represented by this state.

          "},{"location":"reference/python/boss/","title":"Boss","text":""},{"location":"reference/python/boss/#endstone.boss","title":"endstone.boss","text":"

          Classes:

          Name Description BarColor BarFlag BarStyle BossBar

          Represents a boss bar that is displayed to players.

          "},{"location":"reference/python/boss/#endstone.boss.BarColor","title":"BarColor","text":"
          BarColor(value: int)\n

          Attributes:

          Name Type Description BLUE BarColor GREEN BarColor PINK BarColor PURPLE BarColor REBECCA_PURPLE BarColor RED BarColor WHITE BarColor YELLOW BarColor name str value int"},{"location":"reference/python/boss/#endstone.boss.BarColor.BLUE","title":"BLUE class-attribute","text":"
          BLUE: BarColor\n
          "},{"location":"reference/python/boss/#endstone.boss.BarColor.GREEN","title":"GREEN class-attribute","text":"
          GREEN: BarColor\n
          "},{"location":"reference/python/boss/#endstone.boss.BarColor.PINK","title":"PINK class-attribute","text":"
          PINK: BarColor\n
          "},{"location":"reference/python/boss/#endstone.boss.BarColor.PURPLE","title":"PURPLE class-attribute","text":"
          PURPLE: BarColor\n
          "},{"location":"reference/python/boss/#endstone.boss.BarColor.REBECCA_PURPLE","title":"REBECCA_PURPLE class-attribute","text":"
          REBECCA_PURPLE: BarColor\n
          "},{"location":"reference/python/boss/#endstone.boss.BarColor.RED","title":"RED class-attribute","text":"
          RED: BarColor\n
          "},{"location":"reference/python/boss/#endstone.boss.BarColor.WHITE","title":"WHITE class-attribute","text":"
          WHITE: BarColor\n
          "},{"location":"reference/python/boss/#endstone.boss.BarColor.YELLOW","title":"YELLOW class-attribute","text":"
          YELLOW: BarColor\n
          "},{"location":"reference/python/boss/#endstone.boss.BarColor.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/boss/#endstone.boss.BarColor.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/boss/#endstone.boss.BarFlag","title":"BarFlag","text":"
          BarFlag(value: int)\n

          Attributes:

          Name Type Description DARKEN_SKY BarFlag name str value int"},{"location":"reference/python/boss/#endstone.boss.BarFlag.DARKEN_SKY","title":"DARKEN_SKY class-attribute","text":"
          DARKEN_SKY: BarFlag\n
          "},{"location":"reference/python/boss/#endstone.boss.BarFlag.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/boss/#endstone.boss.BarFlag.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/boss/#endstone.boss.BarStyle","title":"BarStyle","text":"
          BarStyle(value: int)\n

          Attributes:

          Name Type Description SEGMENTED_10 BarStyle SEGMENTED_12 BarStyle SEGMENTED_20 BarStyle SEGMENTED_6 BarStyle SOLID BarStyle name str value int"},{"location":"reference/python/boss/#endstone.boss.BarStyle.SEGMENTED_10","title":"SEGMENTED_10 class-attribute","text":"
          SEGMENTED_10: BarStyle\n
          "},{"location":"reference/python/boss/#endstone.boss.BarStyle.SEGMENTED_12","title":"SEGMENTED_12 class-attribute","text":"
          SEGMENTED_12: BarStyle\n
          "},{"location":"reference/python/boss/#endstone.boss.BarStyle.SEGMENTED_20","title":"SEGMENTED_20 class-attribute","text":"
          SEGMENTED_20: BarStyle\n
          "},{"location":"reference/python/boss/#endstone.boss.BarStyle.SEGMENTED_6","title":"SEGMENTED_6 class-attribute","text":"
          SEGMENTED_6: BarStyle\n
          "},{"location":"reference/python/boss/#endstone.boss.BarStyle.SOLID","title":"SOLID class-attribute","text":"
          SOLID: BarStyle\n
          "},{"location":"reference/python/boss/#endstone.boss.BarStyle.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/boss/#endstone.boss.BarStyle.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/boss/#endstone.boss.BossBar","title":"BossBar","text":"

          Represents a boss bar that is displayed to players.

          Methods:

          Name Description add_flag

          Adds an optional flag to this boss bar.

          add_player

          Adds the player to this boss bar causing it to display on their screen.

          has_flag

          Checks whether this boss bar has the passed flag set.

          remove_all

          Removes all players from this boss bar.

          remove_flag

          Removes an existing flag on this boss bar.

          remove_player

          Removes the player from this boss bar causing it to be removed from their screen.

          Attributes:

          Name Type Description color BarColor

          The color of this boss bar.

          players list[Player]

          Returns all players viewing this boss bar.

          progress float

          The progress of the bar between 0.0 and 1.0.

          style BarStyle

          The style of this boss bar.

          title str

          The title of this boss bar.

          visible bool

          If the boss bar is displayed to attached players.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.color","title":"color property writable","text":"
          color: BarColor\n

          The color of this boss bar.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.players","title":"players property","text":"
          players: list[Player]\n

          Returns all players viewing this boss bar.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.progress","title":"progress property writable","text":"
          progress: float\n

          The progress of the bar between 0.0 and 1.0.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.style","title":"style property writable","text":"
          style: BarStyle\n

          The style of this boss bar.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.title","title":"title property writable","text":"
          title: str\n

          The title of this boss bar.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.visible","title":"visible property writable","text":"
          visible: bool\n

          If the boss bar is displayed to attached players.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.add_flag","title":"add_flag","text":"
          add_flag(flag: BarFlag) -> None\n

          Adds an optional flag to this boss bar.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.add_player","title":"add_player","text":"
          add_player(player: Player) -> None\n

          Adds the player to this boss bar causing it to display on their screen.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.has_flag","title":"has_flag","text":"
          has_flag(flag: BarFlag) -> bool\n

          Checks whether this boss bar has the passed flag set.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.remove_all","title":"remove_all","text":"
          remove_all() -> None\n

          Removes all players from this boss bar.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.remove_flag","title":"remove_flag","text":"
          remove_flag(flag: BarFlag) -> None\n

          Removes an existing flag on this boss bar.

          "},{"location":"reference/python/boss/#endstone.boss.BossBar.remove_player","title":"remove_player","text":"
          remove_player(player: Player) -> None\n

          Removes the player from this boss bar causing it to be removed from their screen.

          "},{"location":"reference/python/command/","title":"Command","text":""},{"location":"reference/python/command/#endstone.command","title":"endstone.command","text":"

          Classes:

          Name Description Command

          Represents a Command, which executes various tasks upon user input

          CommandExecutor

          Represents a class which contains a single method for executing commands

          CommandSender

          Represents a command sender.

          CommandSenderWrapper

          Represents a wrapper that forwards commands to the wrapped CommandSender and captures its output

          ConsoleCommandSender

          Represents a console command sender.

          "},{"location":"reference/python/command/#endstone.command.Command","title":"Command","text":"
          Command(\n    name: str,\n    description: str | None = None,\n    usages: list[str] | None = None,\n    aliases: list[str] | None = None,\n    permissions: list[str] | None = None,\n    *args,\n    **kwargs\n)\n

          Represents a Command, which executes various tasks upon user input

          Methods:

          Name Description execute

          Executes the command, returning its success

          test_permission

          Tests the given CommandSender to see if they can perform this command.

          test_permission_silently

          Tests the given CommandSender to see if they can perform this command. No error is sent to the sender.

          Attributes:

          Name Type Description aliases list[str]

          List of aliases of this command

          description str

          Brief description of this command

          name str

          Name of this command.

          permissions list[str]

          The permissions required by users to be able to perform this command

          registered bool

          Returns the current registered state of this command

          usages list[str]

          List of usages of this command

          "},{"location":"reference/python/command/#endstone.command.Command.aliases","title":"aliases property writable","text":"
          aliases: list[str]\n

          List of aliases of this command

          "},{"location":"reference/python/command/#endstone.command.Command.description","title":"description property writable","text":"
          description: str\n

          Brief description of this command

          "},{"location":"reference/python/command/#endstone.command.Command.name","title":"name property writable","text":"
          name: str\n

          Name of this command.

          "},{"location":"reference/python/command/#endstone.command.Command.permissions","title":"permissions property writable","text":"
          permissions: list[str]\n

          The permissions required by users to be able to perform this command

          "},{"location":"reference/python/command/#endstone.command.Command.registered","title":"registered property","text":"
          registered: bool\n

          Returns the current registered state of this command

          "},{"location":"reference/python/command/#endstone.command.Command.usages","title":"usages property writable","text":"
          usages: list[str]\n

          List of usages of this command

          "},{"location":"reference/python/command/#endstone.command.Command.execute","title":"execute","text":"
          execute(sender: CommandSender, args: list[str]) -> bool\n

          Executes the command, returning its success

          "},{"location":"reference/python/command/#endstone.command.Command.test_permission","title":"test_permission","text":"
          test_permission(target: CommandSender) -> bool\n

          Tests the given CommandSender to see if they can perform this command.

          "},{"location":"reference/python/command/#endstone.command.Command.test_permission_silently","title":"test_permission_silently","text":"
          test_permission_silently(target: CommandSender) -> bool\n

          Tests the given CommandSender to see if they can perform this command. No error is sent to the sender.

          "},{"location":"reference/python/command/#endstone.command.CommandExecutor","title":"CommandExecutor","text":"
          CommandExecutor()\n

          Represents a class which contains a single method for executing commands

          Methods:

          Name Description on_command

          Executes the given command, returning its success.

          "},{"location":"reference/python/command/#endstone.command.CommandExecutor.on_command","title":"on_command","text":"
          on_command(\n    sender: CommandSender, command: Command, args: list[str]\n) -> bool\n

          Executes the given command, returning its success.

          "},{"location":"reference/python/command/#endstone.command.CommandSender","title":"CommandSender","text":"

          Bases: Permissible

          Represents a command sender.

          Methods:

          Name Description send_error_message

          Sends this sender an error message

          send_message

          Sends this sender a message

          Attributes:

          Name Type Description name str

          Gets the name of this command sender

          server Server

          Returns the server instance that this command is running on

          "},{"location":"reference/python/command/#endstone.command.CommandSender.name","title":"name property","text":"
          name: str\n

          Gets the name of this command sender

          "},{"location":"reference/python/command/#endstone.command.CommandSender.server","title":"server property","text":"
          server: Server\n

          Returns the server instance that this command is running on

          "},{"location":"reference/python/command/#endstone.command.CommandSender.send_error_message","title":"send_error_message","text":"
          send_error_message(message: str | Translatable) -> None\n

          Sends this sender an error message

          "},{"location":"reference/python/command/#endstone.command.CommandSender.send_message","title":"send_message","text":"
          send_message(message: str | Translatable) -> None\n

          Sends this sender a message

          "},{"location":"reference/python/command/#endstone.command.CommandSenderWrapper","title":"CommandSenderWrapper","text":"
          CommandSenderWrapper(\n    sender: CommandSender,\n    on_message: Callable[[str | Translatable], None] = None,\n    on_error: Callable[[str | Translatable], None] = None,\n)\n

          Bases: CommandSender

          Represents a wrapper that forwards commands to the wrapped CommandSender and captures its output

          "},{"location":"reference/python/command/#endstone.command.ConsoleCommandSender","title":"ConsoleCommandSender","text":"

          Bases: CommandSender

          Represents a console command sender.

          "},{"location":"reference/python/event/","title":"Event","text":""},{"location":"reference/python/event/#endstone.event","title":"endstone.event","text":"

          Classes:

          Name Description ActorDeathEvent

          Called when an Actor dies.

          ActorEvent

          Represents an Actor-related event.

          ActorKnockbackEvent

          Called when a living entity receives knockback.

          ActorRemoveEvent

          Called when an Actor is removed.

          ActorSpawnEvent

          Called when an Actor is spawned into a world.

          ActorTeleportEvent

          Called when a non-player entity is teleported from one location to another.

          BlockBreakEvent

          Called when a block is broken by a player.

          BlockEvent

          Represents an Block-related event

          BlockPlaceEvent

          Called when a block is placed by a player.

          BroadcastMessageEvent

          Event triggered for server broadcast messages such as from Server.broadcast

          Event

          Represents an event.

          EventPriority

          Listeners are called in following order: LOWEST -> LOW -> NORMAL -> HIGH -> HIGHEST -> MONITOR

          PlayerChatEvent

          Called when a player sends a chat message.

          PlayerCommandEvent

          Called whenever a player runs a command.

          PlayerDeathEvent

          Called when a player dies

          PlayerEvent

          Represents a player related event

          PlayerInteractActorEvent

          Represents an event that is called when a player right-clicks an actor.

          PlayerInteractEvent

          Represents an event that is called when a player right-clicks a block.

          PlayerJoinEvent

          Called when a player joins a server

          PlayerKickEvent

          Called when a player gets kicked from the server

          PlayerLoginEvent

          Called when a player attempts to login in.

          PlayerQuitEvent

          Called when a player leaves a server.

          PlayerTeleportEvent

          Called when a player is teleported from one location to another.

          PluginDisableEvent

          Called when a plugin is disabled.

          PluginEnableEvent

          Called when a plugin is enabled.

          ScriptMessageEvent

          Called when a message is sent by /scriptevent command

          ServerCommandEvent

          Called when the console runs a command, early in the process.

          ServerListPingEvent

          Called when a server ping is coming in.

          ServerLoadEvent

          Called when either the server startup or reload has completed.

          ThunderChangeEvent

          Called when the thunder state in a world is changing.

          WeatherChangeEvent

          Called when the weather (rain) state in a world is changing.

          Functions:

          Name Description event_handler"},{"location":"reference/python/event/#endstone.event.ActorDeathEvent","title":"ActorDeathEvent","text":"

          Bases: ActorEvent

          Called when an Actor dies.

          "},{"location":"reference/python/event/#endstone.event.ActorEvent","title":"ActorEvent","text":"

          Bases: Event

          Represents an Actor-related event.

          Attributes:

          Name Type Description actor Actor

          Returns the Actor involved in this event

          "},{"location":"reference/python/event/#endstone.event.ActorEvent.actor","title":"actor property","text":"
          actor: Actor\n

          Returns the Actor involved in this event

          "},{"location":"reference/python/event/#endstone.event.ActorKnockbackEvent","title":"ActorKnockbackEvent","text":"

          Bases: ActorEvent

          Called when a living entity receives knockback.

          Attributes:

          Name Type Description actor Mob

          Returns the Mob involved in this event

          knockback Vector

          Gets or sets the knockback that will be applied to the entity.

          source Actor

          Get the source actor that has caused knockback to the defender, if exists.

          "},{"location":"reference/python/event/#endstone.event.ActorKnockbackEvent.actor","title":"actor property","text":"
          actor: Mob\n

          Returns the Mob involved in this event

          "},{"location":"reference/python/event/#endstone.event.ActorKnockbackEvent.knockback","title":"knockback property writable","text":"
          knockback: Vector\n

          Gets or sets the knockback that will be applied to the entity.

          "},{"location":"reference/python/event/#endstone.event.ActorKnockbackEvent.source","title":"source property","text":"
          source: Actor\n

          Get the source actor that has caused knockback to the defender, if exists.

          "},{"location":"reference/python/event/#endstone.event.ActorRemoveEvent","title":"ActorRemoveEvent","text":"

          Bases: ActorEvent

          Called when an Actor is removed.

          "},{"location":"reference/python/event/#endstone.event.ActorSpawnEvent","title":"ActorSpawnEvent","text":"

          Bases: ActorEvent

          Called when an Actor is spawned into a world.

          "},{"location":"reference/python/event/#endstone.event.ActorTeleportEvent","title":"ActorTeleportEvent","text":"

          Bases: ActorEvent

          Called when a non-player entity is teleported from one location to another.

          Attributes:

          Name Type Description from_location Location

          Gets or sets the location that this actor moved from.

          to_location Location

          Gets or sets the location that this actor moved to.

          "},{"location":"reference/python/event/#endstone.event.ActorTeleportEvent.from_location","title":"from_location property writable","text":"
          from_location: Location\n

          Gets or sets the location that this actor moved from.

          "},{"location":"reference/python/event/#endstone.event.ActorTeleportEvent.to_location","title":"to_location property writable","text":"
          to_location: Location\n

          Gets or sets the location that this actor moved to.

          "},{"location":"reference/python/event/#endstone.event.BlockBreakEvent","title":"BlockBreakEvent","text":"

          Bases: BlockEvent

          Called when a block is broken by a player.

          Attributes:

          Name Type Description player Player

          Gets the Player that is breaking the block involved in this event.

          "},{"location":"reference/python/event/#endstone.event.BlockBreakEvent.player","title":"player property","text":"
          player: Player\n

          Gets the Player that is breaking the block involved in this event.

          "},{"location":"reference/python/event/#endstone.event.BlockEvent","title":"BlockEvent","text":"

          Bases: Event

          Represents an Block-related event

          Attributes:

          Name Type Description block Block

          Gets the block involved in this event.

          "},{"location":"reference/python/event/#endstone.event.BlockEvent.block","title":"block property","text":"
          block: Block\n

          Gets the block involved in this event.

          "},{"location":"reference/python/event/#endstone.event.BlockPlaceEvent","title":"BlockPlaceEvent","text":"

          Bases: BlockEvent

          Called when a block is placed by a player.

          Attributes:

          Name Type Description block_against Block

          Gets the block that this block was placed against

          block_placed_state BlockState

          Gets the BlockState for the block which was placed.

          block_replaced Block

          Gets the block which was replaced.

          player Player

          Gets the player who placed the block involved in this event.

          "},{"location":"reference/python/event/#endstone.event.BlockPlaceEvent.block_against","title":"block_against property","text":"
          block_against: Block\n

          Gets the block that this block was placed against

          "},{"location":"reference/python/event/#endstone.event.BlockPlaceEvent.block_placed_state","title":"block_placed_state property","text":"
          block_placed_state: BlockState\n

          Gets the BlockState for the block which was placed.

          "},{"location":"reference/python/event/#endstone.event.BlockPlaceEvent.block_replaced","title":"block_replaced property","text":"
          block_replaced: Block\n

          Gets the block which was replaced.

          "},{"location":"reference/python/event/#endstone.event.BlockPlaceEvent.player","title":"player property","text":"
          player: Player\n

          Gets the player who placed the block involved in this event.

          "},{"location":"reference/python/event/#endstone.event.BroadcastMessageEvent","title":"BroadcastMessageEvent","text":"

          Bases: Event

          Event triggered for server broadcast messages such as from Server.broadcast

          Attributes:

          Name Type Description message str

          Gets or sets the message to broadcast.

          recipients set[CommandSender]

          Gets a set of recipients that this broadcast message will be displayed to.

          "},{"location":"reference/python/event/#endstone.event.BroadcastMessageEvent.message","title":"message property writable","text":"
          message: str\n

          Gets or sets the message to broadcast.

          "},{"location":"reference/python/event/#endstone.event.BroadcastMessageEvent.recipients","title":"recipients property","text":"
          recipients: set[CommandSender]\n

          Gets a set of recipients that this broadcast message will be displayed to.

          "},{"location":"reference/python/event/#endstone.event.Event","title":"Event","text":"

          Represents an event.

          Attributes:

          Name Type Description asynchronous bool

          Whether the event fires asynchronously.

          cancellable bool

          Whether the event can be cancelled by a plugin or the server.

          cancelled bool

          Gets or sets the cancellation state of this event. A cancelled event will not be executed in the server, but will still pass to other plugins

          event_name str

          Gets a user-friendly identifier for this event.

          "},{"location":"reference/python/event/#endstone.event.Event.asynchronous","title":"asynchronous property","text":"
          asynchronous: bool\n

          Whether the event fires asynchronously.

          "},{"location":"reference/python/event/#endstone.event.Event.cancellable","title":"cancellable property","text":"
          cancellable: bool\n

          Whether the event can be cancelled by a plugin or the server.

          "},{"location":"reference/python/event/#endstone.event.Event.cancelled","title":"cancelled property writable","text":"
          cancelled: bool\n

          Gets or sets the cancellation state of this event. A cancelled event will not be executed in the server, but will still pass to other plugins

          "},{"location":"reference/python/event/#endstone.event.Event.event_name","title":"event_name property","text":"
          event_name: str\n

          Gets a user-friendly identifier for this event.

          "},{"location":"reference/python/event/#endstone.event.EventPriority","title":"EventPriority","text":"
          EventPriority(value: int)\n

          Listeners are called in following order: LOWEST -> LOW -> NORMAL -> HIGH -> HIGHEST -> MONITOR

          Attributes:

          Name Type Description HIGH EventPriority HIGHEST EventPriority LOW EventPriority LOWEST EventPriority MONITOR EventPriority NORMAL EventPriority name str value int"},{"location":"reference/python/event/#endstone.event.EventPriority.HIGH","title":"HIGH class-attribute","text":"
          HIGH: EventPriority\n
          "},{"location":"reference/python/event/#endstone.event.EventPriority.HIGHEST","title":"HIGHEST class-attribute","text":"
          HIGHEST: EventPriority\n
          "},{"location":"reference/python/event/#endstone.event.EventPriority.LOW","title":"LOW class-attribute","text":"
          LOW: EventPriority\n
          "},{"location":"reference/python/event/#endstone.event.EventPriority.LOWEST","title":"LOWEST class-attribute","text":"
          LOWEST: EventPriority\n
          "},{"location":"reference/python/event/#endstone.event.EventPriority.MONITOR","title":"MONITOR class-attribute","text":"
          MONITOR: EventPriority\n
          "},{"location":"reference/python/event/#endstone.event.EventPriority.NORMAL","title":"NORMAL class-attribute","text":"
          NORMAL: EventPriority\n
          "},{"location":"reference/python/event/#endstone.event.EventPriority.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/event/#endstone.event.EventPriority.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/event/#endstone.event.PlayerChatEvent","title":"PlayerChatEvent","text":"

          Bases: PlayerEvent

          Called when a player sends a chat message.

          Attributes:

          Name Type Description message str

          Gets or sets the message that the player will send.

          "},{"location":"reference/python/event/#endstone.event.PlayerChatEvent.message","title":"message property writable","text":"
          message: str\n

          Gets or sets the message that the player will send.

          "},{"location":"reference/python/event/#endstone.event.PlayerCommandEvent","title":"PlayerCommandEvent","text":"

          Bases: PlayerEvent

          Called whenever a player runs a command.

          Attributes:

          Name Type Description command str

          Gets or sets the command that the player will send.

          "},{"location":"reference/python/event/#endstone.event.PlayerCommandEvent.command","title":"command property writable","text":"
          command: str\n

          Gets or sets the command that the player will send.

          "},{"location":"reference/python/event/#endstone.event.PlayerDeathEvent","title":"PlayerDeathEvent","text":"

          Bases: ActorDeathEvent, PlayerEvent

          Called when a player dies

          Attributes:

          Name Type Description death_message str

          Gets or sets the death message that will appear to everyone on the server.

          "},{"location":"reference/python/event/#endstone.event.PlayerDeathEvent.death_message","title":"death_message property writable","text":"
          death_message: str\n

          Gets or sets the death message that will appear to everyone on the server.

          "},{"location":"reference/python/event/#endstone.event.PlayerEvent","title":"PlayerEvent","text":"

          Bases: Event

          Represents a player related event

          Attributes:

          Name Type Description player Player

          Returns the player involved in this event.

          "},{"location":"reference/python/event/#endstone.event.PlayerEvent.player","title":"player property","text":"
          player: Player\n

          Returns the player involved in this event.

          "},{"location":"reference/python/event/#endstone.event.PlayerInteractActorEvent","title":"PlayerInteractActorEvent","text":"

          Bases: PlayerEvent

          Represents an event that is called when a player right-clicks an actor.

          Attributes:

          Name Type Description actor Actor

          Gets the actor that was right-clicked by the player.

          "},{"location":"reference/python/event/#endstone.event.PlayerInteractActorEvent.actor","title":"actor property","text":"
          actor: Actor\n

          Gets the actor that was right-clicked by the player.

          "},{"location":"reference/python/event/#endstone.event.PlayerInteractEvent","title":"PlayerInteractEvent","text":"

          Bases: PlayerEvent

          Represents an event that is called when a player right-clicks a block.

          Attributes:

          Name Type Description block Block

          Returns the clicked block

          block_face BlockFace

          Returns the face of the block that was clicked

          clicked_position Vector

          Gets the exact position on the block the player interacted with.

          has_block bool

          Check if this event involved a block

          has_item bool

          Check if this event involved an item

          item ItemStack

          Returns the item in hand represented by this event

          "},{"location":"reference/python/event/#endstone.event.PlayerInteractEvent.block","title":"block property","text":"
          block: Block\n

          Returns the clicked block

          "},{"location":"reference/python/event/#endstone.event.PlayerInteractEvent.block_face","title":"block_face property","text":"
          block_face: BlockFace\n

          Returns the face of the block that was clicked

          "},{"location":"reference/python/event/#endstone.event.PlayerInteractEvent.clicked_position","title":"clicked_position property","text":"
          clicked_position: Vector\n

          Gets the exact position on the block the player interacted with.

          "},{"location":"reference/python/event/#endstone.event.PlayerInteractEvent.has_block","title":"has_block property","text":"
          has_block: bool\n

          Check if this event involved a block

          "},{"location":"reference/python/event/#endstone.event.PlayerInteractEvent.has_item","title":"has_item property","text":"
          has_item: bool\n

          Check if this event involved an item

          "},{"location":"reference/python/event/#endstone.event.PlayerInteractEvent.item","title":"item property","text":"
          item: ItemStack\n

          Returns the item in hand represented by this event

          "},{"location":"reference/python/event/#endstone.event.PlayerJoinEvent","title":"PlayerJoinEvent","text":"

          Bases: PlayerEvent

          Called when a player joins a server

          Attributes:

          Name Type Description join_message str

          Gets or sets the join message to send to all online players.

          "},{"location":"reference/python/event/#endstone.event.PlayerJoinEvent.join_message","title":"join_message property writable","text":"
          join_message: str\n

          Gets or sets the join message to send to all online players.

          "},{"location":"reference/python/event/#endstone.event.PlayerKickEvent","title":"PlayerKickEvent","text":"

          Bases: PlayerEvent

          Called when a player gets kicked from the server

          Attributes:

          Name Type Description reason str

          Gets or sets the reason why the player is getting kicked

          "},{"location":"reference/python/event/#endstone.event.PlayerKickEvent.reason","title":"reason property writable","text":"
          reason: str\n

          Gets or sets the reason why the player is getting kicked

          "},{"location":"reference/python/event/#endstone.event.PlayerLoginEvent","title":"PlayerLoginEvent","text":"

          Bases: PlayerEvent

          Called when a player attempts to login in.

          Attributes:

          Name Type Description kick_message str

          Gets or sets kick message to display if event is cancelled

          "},{"location":"reference/python/event/#endstone.event.PlayerLoginEvent.kick_message","title":"kick_message property writable","text":"
          kick_message: str\n

          Gets or sets kick message to display if event is cancelled

          "},{"location":"reference/python/event/#endstone.event.PlayerQuitEvent","title":"PlayerQuitEvent","text":"

          Bases: PlayerEvent

          Called when a player leaves a server.

          Attributes:

          Name Type Description quit_message str

          Gets or sets the quit message to send to all online players.

          "},{"location":"reference/python/event/#endstone.event.PlayerQuitEvent.quit_message","title":"quit_message property writable","text":"
          quit_message: str\n

          Gets or sets the quit message to send to all online players.

          "},{"location":"reference/python/event/#endstone.event.PlayerTeleportEvent","title":"PlayerTeleportEvent","text":"

          Bases: PlayerEvent

          Called when a player is teleported from one location to another.

          Attributes:

          Name Type Description from_location Location

          Gets or sets the location that this player moved from.

          to_location Location

          Gets or sets the location that this player moved to.

          "},{"location":"reference/python/event/#endstone.event.PlayerTeleportEvent.from_location","title":"from_location property writable","text":"
          from_location: Location\n

          Gets or sets the location that this player moved from.

          "},{"location":"reference/python/event/#endstone.event.PlayerTeleportEvent.to_location","title":"to_location property writable","text":"
          to_location: Location\n

          Gets or sets the location that this player moved to.

          "},{"location":"reference/python/event/#endstone.event.PluginDisableEvent","title":"PluginDisableEvent","text":"

          Bases: Event

          Called when a plugin is disabled.

          Attributes:

          Name Type Description plugin Plugin"},{"location":"reference/python/event/#endstone.event.PluginDisableEvent.plugin","title":"plugin property","text":"
          plugin: Plugin\n
          "},{"location":"reference/python/event/#endstone.event.PluginEnableEvent","title":"PluginEnableEvent","text":"

          Bases: Event

          Called when a plugin is enabled.

          Attributes:

          Name Type Description plugin Plugin"},{"location":"reference/python/event/#endstone.event.PluginEnableEvent.plugin","title":"plugin property","text":"
          plugin: Plugin\n
          "},{"location":"reference/python/event/#endstone.event.ScriptMessageEvent","title":"ScriptMessageEvent","text":"

          Bases: Event

          Called when a message is sent by /scriptevent command

          Attributes:

          Name Type Description message str

          Get the message to send.

          message_id str

          Get the message id to send.

          sender CommandSender

          Gets the command sender who initiated the command.

          "},{"location":"reference/python/event/#endstone.event.ScriptMessageEvent.message","title":"message property","text":"
          message: str\n

          Get the message to send.

          "},{"location":"reference/python/event/#endstone.event.ScriptMessageEvent.message_id","title":"message_id property","text":"
          message_id: str\n

          Get the message id to send.

          "},{"location":"reference/python/event/#endstone.event.ScriptMessageEvent.sender","title":"sender property","text":"
          sender: CommandSender\n

          Gets the command sender who initiated the command.

          "},{"location":"reference/python/event/#endstone.event.ServerCommandEvent","title":"ServerCommandEvent","text":"

          Bases: Event

          Called when the console runs a command, early in the process.

          Attributes:

          Name Type Description command str

          Gets or sets the command that the server will execute

          sender CommandSender

          Get the command sender.

          "},{"location":"reference/python/event/#endstone.event.ServerCommandEvent.command","title":"command property writable","text":"
          command: str\n

          Gets or sets the command that the server will execute

          "},{"location":"reference/python/event/#endstone.event.ServerCommandEvent.sender","title":"sender property","text":"
          sender: CommandSender\n

          Get the command sender.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent","title":"ServerListPingEvent","text":"

          Bases: Event

          Called when a server ping is coming in.

          Attributes:

          Name Type Description game_mode GameMode

          Gets or sets the current game mode.

          level_name str

          Gets or sets the level name.

          local_port int

          Get the local port of the server.

          local_port_v6 int

          Get the local port of the server for IPv6 support

          max_players int

          Gets or sets the maximum number of players allowed.

          minecraft_version_network str

          Gets or sets the network version of Minecraft that is supported by this server

          motd str

          Gets or sets the message of the day message.

          network_protocol_version int

          Get the network protocol version of this server

          num_players int

          Gets or sets the number of players online.

          remote_host str

          Get the host the ping is coming from.

          remote_port int

          Get the port the ping is coming from.

          server_guid str

          Get the unique identifier of the server.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.game_mode","title":"game_mode property writable","text":"
          game_mode: GameMode\n

          Gets or sets the current game mode.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.level_name","title":"level_name property writable","text":"
          level_name: str\n

          Gets or sets the level name.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.local_port","title":"local_port property","text":"
          local_port: int\n

          Get the local port of the server.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.local_port_v6","title":"local_port_v6 property","text":"
          local_port_v6: int\n

          Get the local port of the server for IPv6 support

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.max_players","title":"max_players property writable","text":"
          max_players: int\n

          Gets or sets the maximum number of players allowed.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.minecraft_version_network","title":"minecraft_version_network property writable","text":"
          minecraft_version_network: str\n

          Gets or sets the network version of Minecraft that is supported by this server

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.motd","title":"motd property writable","text":"
          motd: str\n

          Gets or sets the message of the day message.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.network_protocol_version","title":"network_protocol_version property","text":"
          network_protocol_version: int\n

          Get the network protocol version of this server

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.num_players","title":"num_players property writable","text":"
          num_players: int\n

          Gets or sets the number of players online.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.remote_host","title":"remote_host property","text":"
          remote_host: str\n

          Get the host the ping is coming from.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.remote_port","title":"remote_port property","text":"
          remote_port: int\n

          Get the port the ping is coming from.

          "},{"location":"reference/python/event/#endstone.event.ServerListPingEvent.server_guid","title":"server_guid property","text":"
          server_guid: str\n

          Get the unique identifier of the server.

          "},{"location":"reference/python/event/#endstone.event.ServerLoadEvent","title":"ServerLoadEvent","text":"

          Bases: Event

          Called when either the server startup or reload has completed.

          Classes:

          Name Description LoadType

          Attributes:

          Name Type Description STARTUP LoadType type LoadType"},{"location":"reference/python/event/#endstone.event.ServerLoadEvent.STARTUP","title":"STARTUP class-attribute","text":"
          STARTUP: LoadType\n
          "},{"location":"reference/python/event/#endstone.event.ServerLoadEvent.type","title":"type property","text":"
          type: LoadType\n
          "},{"location":"reference/python/event/#endstone.event.ServerLoadEvent.LoadType","title":"LoadType","text":"
          LoadType(value: int)\n

          Attributes:

          Name Type Description STARTUP LoadType name str value int"},{"location":"reference/python/event/#endstone.event.ServerLoadEvent.LoadType.STARTUP","title":"STARTUP class-attribute","text":"
          STARTUP: LoadType\n
          "},{"location":"reference/python/event/#endstone.event.ServerLoadEvent.LoadType.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/event/#endstone.event.ServerLoadEvent.LoadType.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/event/#endstone.event.ThunderChangeEvent","title":"ThunderChangeEvent","text":"

          Bases: Event

          Called when the thunder state in a world is changing.

          Attributes:

          Name Type Description level Level

          Returns the Level where this event is occurring

          to_thunder_state bool

          Gets the state of thunder that the world is being set to

          "},{"location":"reference/python/event/#endstone.event.ThunderChangeEvent.level","title":"level property","text":"
          level: Level\n

          Returns the Level where this event is occurring

          "},{"location":"reference/python/event/#endstone.event.ThunderChangeEvent.to_thunder_state","title":"to_thunder_state property","text":"
          to_thunder_state: bool\n

          Gets the state of thunder that the world is being set to

          "},{"location":"reference/python/event/#endstone.event.WeatherChangeEvent","title":"WeatherChangeEvent","text":"

          Bases: Event

          Called when the weather (rain) state in a world is changing.

          Attributes:

          Name Type Description level Level

          Returns the Level where this event is occurring

          to_weather_state bool

          Gets the state of weather that the world is being set to

          "},{"location":"reference/python/event/#endstone.event.WeatherChangeEvent.level","title":"level property","text":"
          level: Level\n

          Returns the Level where this event is occurring

          "},{"location":"reference/python/event/#endstone.event.WeatherChangeEvent.to_weather_state","title":"to_weather_state property","text":"
          to_weather_state: bool\n

          Gets the state of weather that the world is being set to

          "},{"location":"reference/python/event/#endstone.event.event_handler","title":"event_handler","text":"
          event_handler(\n    func=None,\n    *,\n    priority: EventPriority = NORMAL,\n    ignore_cancelled: bool = False\n)\n
          "},{"location":"reference/python/form/","title":"Form","text":""},{"location":"reference/python/form/#endstone.form","title":"endstone.form","text":"

          Classes:

          Name Description ActionForm

          Represents a form with buttons that let the player take action.

          Dropdown

          Represents a dropdown with a set of predefined options.

          Label

          Represents a text label.

          MessageForm

          Represents a form with two buttons.

          ModalForm

          Represents a modal form with controls.

          Slider

          Represents a slider with a label.

          StepSlider

          Represents a step slider with a set of predefined options.

          TextInput

          Represents a text input field.

          Toggle

          Represents a toggle button with a label.

          "},{"location":"reference/python/form/#endstone.form.ActionForm","title":"ActionForm","text":"
          ActionForm(\n    title: str | Translatable = \"\",\n    content: str | Translatable = \"\",\n    buttons: list[Button] | None = None,\n    on_submit: Callable[[Player, int], None] = None,\n    on_close: Callable[[Player], None] = None,\n)\n

          Represents a form with buttons that let the player take action.

          Classes:

          Name Description Button

          Represents a button with text and an optional icon.

          Methods:

          Name Description add_button

          Adds a button to the form.

          Attributes:

          Name Type Description buttons list[Button]

          Gets or sets the buttons of the action form.

          content str | Translatable

          Gets or sets the content of the form.

          on_close Callable[[Player], None]

          Gets or sets the on close callback.

          on_submit Callable[[Player, int], None]

          Gets or sets the on submit callback.

          title str | Translatable

          Gets or sets the title of the form.

          "},{"location":"reference/python/form/#endstone.form.ActionForm.buttons","title":"buttons property writable","text":"
          buttons: list[Button]\n

          Gets or sets the buttons of the action form.

          "},{"location":"reference/python/form/#endstone.form.ActionForm.content","title":"content property writable","text":"
          content: str | Translatable\n

          Gets or sets the content of the form.

          "},{"location":"reference/python/form/#endstone.form.ActionForm.on_close","title":"on_close property writable","text":"
          on_close: Callable[[Player], None]\n

          Gets or sets the on close callback.

          "},{"location":"reference/python/form/#endstone.form.ActionForm.on_submit","title":"on_submit property writable","text":"
          on_submit: Callable[[Player, int], None]\n

          Gets or sets the on submit callback.

          "},{"location":"reference/python/form/#endstone.form.ActionForm.title","title":"title property writable","text":"
          title: str | Translatable\n

          Gets or sets the title of the form.

          "},{"location":"reference/python/form/#endstone.form.ActionForm.Button","title":"Button","text":"
          Button(\n    text: str | Translatable = \"\",\n    icon: str | None = None,\n    on_click: Callable[[Player], None] = None,\n)\n

          Represents a button with text and an optional icon.

          Attributes:

          Name Type Description icon str | None

          Gets or sets the icon path or URL of the button

          on_click Callable[[Player], None]

          Gets or sets the on click callback.

          text str | Translatable

          Gets or sets the text of the button

          "},{"location":"reference/python/form/#endstone.form.ActionForm.Button.icon","title":"icon property writable","text":"
          icon: str | None\n

          Gets or sets the icon path or URL of the button

          "},{"location":"reference/python/form/#endstone.form.ActionForm.Button.on_click","title":"on_click property writable","text":"
          on_click: Callable[[Player], None]\n

          Gets or sets the on click callback.

          "},{"location":"reference/python/form/#endstone.form.ActionForm.Button.text","title":"text property writable","text":"
          text: str | Translatable\n

          Gets or sets the text of the button

          "},{"location":"reference/python/form/#endstone.form.ActionForm.add_button","title":"add_button","text":"
          add_button(\n    text: str | Translatable,\n    icon: str | None = None,\n    on_click: Callable[[Player], None] = None,\n) -> ActionForm\n

          Adds a button to the form.

          "},{"location":"reference/python/form/#endstone.form.Dropdown","title":"Dropdown","text":"
          Dropdown(\n    label: str | Translatable = \"\",\n    options: list[str] | None = None,\n    default_index: int | None = None,\n)\n

          Represents a dropdown with a set of predefined options.

          Methods:

          Name Description add_option

          Adds a new option to the dropdown.

          Attributes:

          Name Type Description default_index int | None

          Gets or sets the optional default index of the dropdown.

          label str | Translatable

          Gets or sets the label of the dropdown.

          options list[str]

          Gets or sets the options of the dropdown.

          "},{"location":"reference/python/form/#endstone.form.Dropdown.default_index","title":"default_index property writable","text":"
          default_index: int | None\n

          Gets or sets the optional default index of the dropdown.

          "},{"location":"reference/python/form/#endstone.form.Dropdown.label","title":"label property writable","text":"
          label: str | Translatable\n

          Gets or sets the label of the dropdown.

          "},{"location":"reference/python/form/#endstone.form.Dropdown.options","title":"options property writable","text":"
          options: list[str]\n

          Gets or sets the options of the dropdown.

          "},{"location":"reference/python/form/#endstone.form.Dropdown.add_option","title":"add_option","text":"
          add_option(option: str) -> Dropdown\n

          Adds a new option to the dropdown.

          "},{"location":"reference/python/form/#endstone.form.Label","title":"Label","text":"
          Label(text: str | Translatable = '')\n

          Represents a text label.

          Attributes:

          Name Type Description text str | Translatable

          Gets or sets the text of the label.

          "},{"location":"reference/python/form/#endstone.form.Label.text","title":"text property writable","text":"
          text: str | Translatable\n

          Gets or sets the text of the label.

          "},{"location":"reference/python/form/#endstone.form.MessageForm","title":"MessageForm","text":"
          MessageForm(\n    title: str | Translatable = \"\",\n    content: str | Translatable = \"\",\n    button1: str | Translatable = \"\",\n    button2: str | Translatable = \"\",\n    on_submit: Callable[[Player, int], None] = None,\n    on_close: Callable[[Player], None] = None,\n)\n

          Represents a form with two buttons.

          Attributes:

          Name Type Description button1 str | Translatable

          Gets or sets the text of button1.

          button2 str | Translatable

          Gets or sets the text of button2.

          content str | Translatable

          Gets or sets the content of the form.

          on_close Callable[[Player], None]

          Gets or sets the on close callback.

          on_submit Callable[[Player, int], None]

          Gets or sets the on submit callback.

          title str | Translatable

          Gets or sets the title of the form.

          "},{"location":"reference/python/form/#endstone.form.MessageForm.button1","title":"button1 property writable","text":"
          button1: str | Translatable\n

          Gets or sets the text of button1.

          "},{"location":"reference/python/form/#endstone.form.MessageForm.button2","title":"button2 property writable","text":"
          button2: str | Translatable\n

          Gets or sets the text of button2.

          "},{"location":"reference/python/form/#endstone.form.MessageForm.content","title":"content property writable","text":"
          content: str | Translatable\n

          Gets or sets the content of the form.

          "},{"location":"reference/python/form/#endstone.form.MessageForm.on_close","title":"on_close property writable","text":"
          on_close: Callable[[Player], None]\n

          Gets or sets the on close callback.

          "},{"location":"reference/python/form/#endstone.form.MessageForm.on_submit","title":"on_submit property writable","text":"
          on_submit: Callable[[Player, int], None]\n

          Gets or sets the on submit callback.

          "},{"location":"reference/python/form/#endstone.form.MessageForm.title","title":"title property writable","text":"
          title: str | Translatable\n

          Gets or sets the title of the form.

          "},{"location":"reference/python/form/#endstone.form.ModalForm","title":"ModalForm","text":"
          ModalForm(\n    title: str | Translatable = \"\",\n    controls: (\n        list[\n            Dropdown\n            | Label\n            | Slider\n            | StepSlider\n            | TextInput\n            | Toggle\n        ]\n        | None\n    ) = None,\n    submit_button: str | Translatable | None = None,\n    icon: str | None = None,\n    on_submit: Callable[[Player, str], None] = None,\n    on_close: Callable[[Player], None] = None,\n)\n

          Represents a modal form with controls.

          Methods:

          Name Description add_control

          Adds a control to the form.

          Attributes:

          Name Type Description controls list[Dropdown | Label | Slider | StepSlider | TextInput | Toggle]

          Gets or sets the controls of the modal form.

          icon str | None

          Gets or sets the icon of the form.

          on_close Callable[[Player], None]

          Gets or sets the on close callback.

          on_submit Callable[[Player, str], None]

          Gets or sets the on submit callback.

          submit_button str | Translatable | None

          Gets or sets the submit button message of the form.

          title str | Translatable

          Gets or sets the title of the form.

          "},{"location":"reference/python/form/#endstone.form.ModalForm.controls","title":"controls property writable","text":"
          controls: list[\n    Dropdown\n    | Label\n    | Slider\n    | StepSlider\n    | TextInput\n    | Toggle\n]\n

          Gets or sets the controls of the modal form.

          "},{"location":"reference/python/form/#endstone.form.ModalForm.icon","title":"icon property writable","text":"
          icon: str | None\n

          Gets or sets the icon of the form.

          "},{"location":"reference/python/form/#endstone.form.ModalForm.on_close","title":"on_close property writable","text":"
          on_close: Callable[[Player], None]\n

          Gets or sets the on close callback.

          "},{"location":"reference/python/form/#endstone.form.ModalForm.on_submit","title":"on_submit property writable","text":"
          on_submit: Callable[[Player, str], None]\n

          Gets or sets the on submit callback.

          "},{"location":"reference/python/form/#endstone.form.ModalForm.submit_button","title":"submit_button property writable","text":"
          submit_button: str | Translatable | None\n

          Gets or sets the submit button message of the form.

          "},{"location":"reference/python/form/#endstone.form.ModalForm.title","title":"title property writable","text":"
          title: str | Translatable\n

          Gets or sets the title of the form.

          "},{"location":"reference/python/form/#endstone.form.ModalForm.add_control","title":"add_control","text":"
          add_control(\n    control: (\n        Dropdown\n        | Label\n        | Slider\n        | StepSlider\n        | TextInput\n        | Toggle\n    ),\n) -> ModalForm\n

          Adds a control to the form.

          "},{"location":"reference/python/form/#endstone.form.Slider","title":"Slider","text":"
          Slider(\n    label: str | Translatable = \"\",\n    min: float = 0,\n    max: float = 100,\n    step: float = 20,\n    default_value: float | None = None,\n)\n

          Represents a slider with a label.

          Attributes:

          Name Type Description default_value float | None

          Gets or sets the optional default value of the slider.

          label str | Translatable

          Gets or sets the label of the slider.

          max float

          Gets or sets the maximum value of the slider.

          min float

          Gets or sets the minimum value of the slider.

          step float

          Gets or sets the step size of the slider.

          "},{"location":"reference/python/form/#endstone.form.Slider.default_value","title":"default_value property writable","text":"
          default_value: float | None\n

          Gets or sets the optional default value of the slider.

          "},{"location":"reference/python/form/#endstone.form.Slider.label","title":"label property writable","text":"
          label: str | Translatable\n

          Gets or sets the label of the slider.

          "},{"location":"reference/python/form/#endstone.form.Slider.max","title":"max property writable","text":"
          max: float\n

          Gets or sets the maximum value of the slider.

          "},{"location":"reference/python/form/#endstone.form.Slider.min","title":"min property writable","text":"
          min: float\n

          Gets or sets the minimum value of the slider.

          "},{"location":"reference/python/form/#endstone.form.Slider.step","title":"step property writable","text":"
          step: float\n

          Gets or sets the step size of the slider.

          "},{"location":"reference/python/form/#endstone.form.StepSlider","title":"StepSlider","text":"
          StepSlider(\n    label: str | Translatable = \"\",\n    options: list[str] | None = None,\n    default_index: int | None = None,\n)\n

          Represents a step slider with a set of predefined options.

          Methods:

          Name Description add_option

          Adds a new option to the step slider.

          Attributes:

          Name Type Description default_index int | None

          Gets or sets the optional default index of the step slider.

          label str | Translatable

          Gets or sets the label of the step slider.

          options list[str]

          Gets or sets the options of the step slider.

          "},{"location":"reference/python/form/#endstone.form.StepSlider.default_index","title":"default_index property writable","text":"
          default_index: int | None\n

          Gets or sets the optional default index of the step slider.

          "},{"location":"reference/python/form/#endstone.form.StepSlider.label","title":"label property writable","text":"
          label: str | Translatable\n

          Gets or sets the label of the step slider.

          "},{"location":"reference/python/form/#endstone.form.StepSlider.options","title":"options property writable","text":"
          options: list[str]\n

          Gets or sets the options of the step slider.

          "},{"location":"reference/python/form/#endstone.form.StepSlider.add_option","title":"add_option","text":"
          add_option(option: str) -> Dropdown\n

          Adds a new option to the step slider.

          "},{"location":"reference/python/form/#endstone.form.TextInput","title":"TextInput","text":"
          TextInput(\n    label: str | Translatable = \"\",\n    placeholder: str | Translatable = \"\",\n    default_value: str | None = None,\n)\n

          Represents a text input field.

          Attributes:

          Name Type Description default_value str | None

          Gets or sets the optional default text of the text input field.

          label str | Translatable

          Gets or sets the label of the text input field.

          placeholder str | Translatable

          Gets or sets the placeholder of the text input field.

          "},{"location":"reference/python/form/#endstone.form.TextInput.default_value","title":"default_value property writable","text":"
          default_value: str | None\n

          Gets or sets the optional default text of the text input field.

          "},{"location":"reference/python/form/#endstone.form.TextInput.label","title":"label property writable","text":"
          label: str | Translatable\n

          Gets or sets the label of the text input field.

          "},{"location":"reference/python/form/#endstone.form.TextInput.placeholder","title":"placeholder property writable","text":"
          placeholder: str | Translatable\n

          Gets or sets the placeholder of the text input field.

          "},{"location":"reference/python/form/#endstone.form.Toggle","title":"Toggle","text":"
          Toggle(\n    label: str | Translatable = \"\",\n    default_value: bool = False,\n)\n

          Represents a toggle button with a label.

          Attributes:

          Name Type Description default_value bool

          Gets or sets the value of the toggle.

          label str | Translatable

          Gets or sets the label of the toggle.

          "},{"location":"reference/python/form/#endstone.form.Toggle.default_value","title":"default_value property writable","text":"
          default_value: bool\n

          Gets or sets the value of the toggle.

          "},{"location":"reference/python/form/#endstone.form.Toggle.label","title":"label property writable","text":"
          label: str | Translatable\n

          Gets or sets the label of the toggle.

          "},{"location":"reference/python/inventory/","title":"Inventory","text":""},{"location":"reference/python/inventory/#endstone.inventory","title":"endstone.inventory","text":"

          Classes:

          Name Description Inventory

          Interface to the various inventories.

          ItemStack

          Represents a stack of items.

          PlayerInventory

          Interface to the inventory of a Player, including the four armor slots and any extra slots.

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory","title":"Inventory","text":"

          Interface to the various inventories.

          Methods:

          Name Description add_item

          Stores the given ItemStacks in the inventory. This will try to fill existing stacks and empty slots as well as it can.

          clear

          Clears out the whole Inventory.

          first

          Returns the first slot in the inventory containing an ItemStack with the given stack.

          get_item

          Returns the ItemStack found in the slot at the given index

          set_item

          Stores the ItemStack at the given index of the inventory.

          Attributes:

          Name Type Description contents list[ItemStack]

          Returns all ItemStacks from the inventory

          is_empty bool

          Check whether this inventory is empty. An inventory is considered to be empty if there are no ItemStacks in any slot of this inventory.

          max_stack_size int

          Returns the maximum stack size for an ItemStack in this inventory.

          size int

          Returns the size of the inventory

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory.contents","title":"contents property","text":"
          contents: list[ItemStack]\n

          Returns all ItemStacks from the inventory

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory.is_empty","title":"is_empty property","text":"
          is_empty: bool\n

          Check whether this inventory is empty. An inventory is considered to be empty if there are no ItemStacks in any slot of this inventory.

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory.max_stack_size","title":"max_stack_size property","text":"
          max_stack_size: int\n

          Returns the maximum stack size for an ItemStack in this inventory.

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory.size","title":"size property","text":"
          size: int\n

          Returns the size of the inventory

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory.add_item","title":"add_item","text":"
          add_item(item: ItemStack) -> None\n

          Stores the given ItemStacks in the inventory. This will try to fill existing stacks and empty slots as well as it can.

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory.clear","title":"clear","text":"
          clear() -> None\n

          Clears out the whole Inventory.

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory.first","title":"first","text":"
          first(item: ItemStack) -> int\n

          Returns the first slot in the inventory containing an ItemStack with the given stack.

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory.get_item","title":"get_item","text":"
          get_item(index: int) -> ItemStack\n

          Returns the ItemStack found in the slot at the given index

          "},{"location":"reference/python/inventory/#endstone.inventory.Inventory.set_item","title":"set_item","text":"
          set_item(index: int, item: ItemStack | None) -> None\n

          Stores the ItemStack at the given index of the inventory.

          "},{"location":"reference/python/inventory/#endstone.inventory.ItemStack","title":"ItemStack","text":"
          ItemStack(type: str = 'minecraft:air', amount: int = 1)\n

          Represents a stack of items.

          Attributes:

          Name Type Description amount int

          Gets or sets the amount of items in this stack.

          type str

          Gets or sets the type of this item.

          "},{"location":"reference/python/inventory/#endstone.inventory.ItemStack.amount","title":"amount property writable","text":"
          amount: int\n

          Gets or sets the amount of items in this stack.

          "},{"location":"reference/python/inventory/#endstone.inventory.ItemStack.type","title":"type property writable","text":"
          type: str\n

          Gets or sets the type of this item.

          "},{"location":"reference/python/inventory/#endstone.inventory.PlayerInventory","title":"PlayerInventory","text":"

          Bases: Inventory

          Interface to the inventory of a Player, including the four armor slots and any extra slots.

          "},{"location":"reference/python/lang/","title":"Language","text":""},{"location":"reference/python/lang/#endstone.lang","title":"endstone.lang","text":"

          Classes:

          Name Description Language

          Represents the interface for translating text into different languages.

          Translatable

          Represents an object with a text representation that can be translated by the Minecraft client.

          "},{"location":"reference/python/lang/#endstone.lang.Language","title":"Language","text":"

          Represents the interface for translating text into different languages.

          Methods:

          Name Description translate

          Attributes:

          Name Type Description locale str

          Gets the current locale.

          "},{"location":"reference/python/lang/#endstone.lang.Language.locale","title":"locale property","text":"
          locale: str\n

          Gets the current locale.

          "},{"location":"reference/python/lang/#endstone.lang.Language.translate","title":"translate","text":"
          translate(\n    text: str,\n    params: list[str] | None = None,\n    locale: str | None = None,\n) -> str\n

          Translates a given text using a set of parameters for a specific locale.

          translate(\n    translatable: Translatable, locale: str | None = None\n) -> str\n

          Translates a Translatable object into a specific locale.

          "},{"location":"reference/python/lang/#endstone.lang.Translatable","title":"Translatable","text":"
          Translatable(text: str, params: list[str] | None = None)\n

          Represents an object with a text representation that can be translated by the Minecraft client.

          Attributes:

          Name Type Description params list[str]

          Get the translation parameters.

          text str

          Get the text to be translated.

          "},{"location":"reference/python/lang/#endstone.lang.Translatable.params","title":"params property","text":"
          params: list[str]\n

          Get the translation parameters.

          "},{"location":"reference/python/lang/#endstone.lang.Translatable.text","title":"text property","text":"
          text: str\n

          Get the text to be translated.

          "},{"location":"reference/python/level/","title":"Level","text":""},{"location":"reference/python/level/#endstone.level","title":"endstone.level","text":"

          Classes:

          Name Description Dimension

          Represents a dimension within a Level.

          Level Location

          Represents a 3-dimensional location in a dimension within a level.

          Position

          Represents a 3-dimensional position in a dimension within a level.

          "},{"location":"reference/python/level/#endstone.level.Dimension","title":"Dimension","text":"

          Represents a dimension within a Level.

          Classes:

          Name Description Type

          Represents various dimension types.

          Methods:

          Name Description get_block_at

          Attributes:

          Name Type Description CUSTOM Type NETHER Type OVERWORLD Type THE_END Type level Level

          Gets the level to which this dimension belongs

          name str

          Gets the name of this dimension

          type Type

          Gets the type of this dimension

          "},{"location":"reference/python/level/#endstone.level.Dimension.CUSTOM","title":"CUSTOM class-attribute","text":"
          CUSTOM: Type\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.NETHER","title":"NETHER class-attribute","text":"
          NETHER: Type\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.OVERWORLD","title":"OVERWORLD class-attribute","text":"
          OVERWORLD: Type\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.THE_END","title":"THE_END class-attribute","text":"
          THE_END: Type\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.level","title":"level property","text":"
          level: Level\n

          Gets the level to which this dimension belongs

          "},{"location":"reference/python/level/#endstone.level.Dimension.name","title":"name property","text":"
          name: str\n

          Gets the name of this dimension

          "},{"location":"reference/python/level/#endstone.level.Dimension.type","title":"type property","text":"
          type: Type\n

          Gets the type of this dimension

          "},{"location":"reference/python/level/#endstone.level.Dimension.Type","title":"Type","text":"
          Type(value: int)\n

          Represents various dimension types.

          Attributes:

          Name Type Description CUSTOM Type NETHER Type OVERWORLD Type THE_END Type name str value int"},{"location":"reference/python/level/#endstone.level.Dimension.Type.CUSTOM","title":"CUSTOM class-attribute","text":"
          CUSTOM: Type\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.Type.NETHER","title":"NETHER class-attribute","text":"
          NETHER: Type\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.Type.OVERWORLD","title":"OVERWORLD class-attribute","text":"
          OVERWORLD: Type\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.Type.THE_END","title":"THE_END class-attribute","text":"
          THE_END: Type\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.Type.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.Type.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/level/#endstone.level.Dimension.get_block_at","title":"get_block_at","text":"
          get_block_at(location: Location) -> Block\n

          Gets the Block at the given Location

          get_block_at(x: int, y: int, z: int) -> Block\n

          Gets the Block at the given coordinates

          "},{"location":"reference/python/level/#endstone.level.Level","title":"Level","text":"

          Methods:

          Name Description get_dimension

          Gets the dimension with the given name.

          Attributes:

          Name Type Description actors list[Actor]

          Get a list of all actors in this level

          dimensions list[Dimension]

          Gets a list of all dimensions within this level.

          name str

          Gets the unique name of this level

          time int

          Gets and sets the relative in-game time on the server

          "},{"location":"reference/python/level/#endstone.level.Level.actors","title":"actors property","text":"
          actors: list[Actor]\n

          Get a list of all actors in this level

          "},{"location":"reference/python/level/#endstone.level.Level.dimensions","title":"dimensions property","text":"
          dimensions: list[Dimension]\n

          Gets a list of all dimensions within this level.

          "},{"location":"reference/python/level/#endstone.level.Level.name","title":"name property","text":"
          name: str\n

          Gets the unique name of this level

          "},{"location":"reference/python/level/#endstone.level.Level.time","title":"time property writable","text":"
          time: int\n

          Gets and sets the relative in-game time on the server

          "},{"location":"reference/python/level/#endstone.level.Level.get_dimension","title":"get_dimension","text":"
          get_dimension(name: str) -> Dimension\n

          Gets the dimension with the given name.

          "},{"location":"reference/python/level/#endstone.level.Location","title":"Location","text":"
          Location(\n    dimension: Dimension,\n    x: float,\n    y: float,\n    z: float,\n    pitch: float = 0.0,\n    yaw: float = 0.0,\n)\n

          Bases: Position

          Represents a 3-dimensional location in a dimension within a level.

          Attributes:

          Name Type Description pitch float

          The pitch of this location, measured in degrees.

          yaw float

          The yaw of this location, measured in degrees.

          "},{"location":"reference/python/level/#endstone.level.Location.pitch","title":"pitch property writable","text":"
          pitch: float\n

          The pitch of this location, measured in degrees.

          "},{"location":"reference/python/level/#endstone.level.Location.yaw","title":"yaw property writable","text":"
          yaw: float\n

          The yaw of this location, measured in degrees.

          "},{"location":"reference/python/level/#endstone.level.Position","title":"Position","text":"
          Position(\n    dimension: Dimension, x: float, y: float, z: float\n)\n

          Bases: Vector

          Represents a 3-dimensional position in a dimension within a level.

          Attributes:

          Name Type Description block_x int

          Gets the floored value of the X component, indicating the block that this location is contained with.

          block_y int

          Gets the floored value of the Y component, indicating the block that this location is contained with.

          block_z int

          Gets the floored value of the Z component, indicating the block that this location is contained with.

          dimension Dimension

          The Dimension that contains this position

          "},{"location":"reference/python/level/#endstone.level.Position.block_x","title":"block_x property","text":"
          block_x: int\n

          Gets the floored value of the X component, indicating the block that this location is contained with.

          "},{"location":"reference/python/level/#endstone.level.Position.block_y","title":"block_y property","text":"
          block_y: int\n

          Gets the floored value of the Y component, indicating the block that this location is contained with.

          "},{"location":"reference/python/level/#endstone.level.Position.block_z","title":"block_z property","text":"
          block_z: int\n

          Gets the floored value of the Z component, indicating the block that this location is contained with.

          "},{"location":"reference/python/level/#endstone.level.Position.dimension","title":"dimension property writable","text":"
          dimension: Dimension\n

          The Dimension that contains this position

          "},{"location":"reference/python/misc/","title":"Miscellaneous","text":""},{"location":"reference/python/misc/#endstone.ColorFormat","title":"endstone.ColorFormat","text":"

          All supported color and format codes.

          Attributes:

          Name Type Description AQUA str BLACK str BLUE str BOLD str DARK_AQUA str DARK_BLUE str DARK_GRAY str DARK_GREEN str DARK_PURPLE str DARK_RED str GOLD str GRAY str GREEN str ITALIC str LIGHT_PURPLE str MATERIAL_AMETHYST str MATERIAL_COPPER str MATERIAL_DIAMOND str MATERIAL_EMERALD str MATERIAL_GOLD str MATERIAL_IRON str MATERIAL_LAPIS str MATERIAL_NETHERITE str MATERIAL_QUARTZ str MATERIAL_REDSTONE str MINECOIN_GOLD str OBFUSCATED str RED str RESET str WHITE str YELLOW str"},{"location":"reference/python/misc/#endstone.ColorFormat.AQUA","title":"AQUA class-attribute","text":"
          AQUA: str = '\u00a7b'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.BLACK","title":"BLACK class-attribute","text":"
          BLACK: str = '\u00a70'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.BLUE","title":"BLUE class-attribute","text":"
          BLUE: str = '\u00a79'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.BOLD","title":"BOLD class-attribute","text":"
          BOLD: str = '\u00a7l'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.DARK_AQUA","title":"DARK_AQUA class-attribute","text":"
          DARK_AQUA: str = '\u00a73'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.DARK_BLUE","title":"DARK_BLUE class-attribute","text":"
          DARK_BLUE: str = '\u00a71'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.DARK_GRAY","title":"DARK_GRAY class-attribute","text":"
          DARK_GRAY: str = '\u00a78'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.DARK_GREEN","title":"DARK_GREEN class-attribute","text":"
          DARK_GREEN: str = '\u00a72'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.DARK_PURPLE","title":"DARK_PURPLE class-attribute","text":"
          DARK_PURPLE: str = '\u00a75'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.DARK_RED","title":"DARK_RED class-attribute","text":"
          DARK_RED: str = '\u00a74'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.GOLD","title":"GOLD class-attribute","text":"
          GOLD: str = '\u00a76'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.GRAY","title":"GRAY class-attribute","text":"
          GRAY: str = '\u00a77'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.GREEN","title":"GREEN class-attribute","text":"
          GREEN: str = '\u00a7a'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.ITALIC","title":"ITALIC class-attribute","text":"
          ITALIC: str = '\u00a7o'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.LIGHT_PURPLE","title":"LIGHT_PURPLE class-attribute","text":"
          LIGHT_PURPLE: str = '\u00a7d'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_AMETHYST","title":"MATERIAL_AMETHYST class-attribute","text":"
          MATERIAL_AMETHYST: str = '\u00a7u'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_COPPER","title":"MATERIAL_COPPER class-attribute","text":"
          MATERIAL_COPPER: str = '\u00a7n'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_DIAMOND","title":"MATERIAL_DIAMOND class-attribute","text":"
          MATERIAL_DIAMOND: str = '\u00a7s'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_EMERALD","title":"MATERIAL_EMERALD class-attribute","text":"
          MATERIAL_EMERALD: str = '\u00a7q'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_GOLD","title":"MATERIAL_GOLD class-attribute","text":"
          MATERIAL_GOLD: str = '\u00a7p'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_IRON","title":"MATERIAL_IRON class-attribute","text":"
          MATERIAL_IRON: str = '\u00a7i'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_LAPIS","title":"MATERIAL_LAPIS class-attribute","text":"
          MATERIAL_LAPIS: str = '\u00a7t'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_NETHERITE","title":"MATERIAL_NETHERITE class-attribute","text":"
          MATERIAL_NETHERITE: str = '\u00a7j'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_QUARTZ","title":"MATERIAL_QUARTZ class-attribute","text":"
          MATERIAL_QUARTZ: str = '\u00a7h'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MATERIAL_REDSTONE","title":"MATERIAL_REDSTONE class-attribute","text":"
          MATERIAL_REDSTONE: str = '\u00a7m'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.MINECOIN_GOLD","title":"MINECOIN_GOLD class-attribute","text":"
          MINECOIN_GOLD: str = '\u00a7g'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.OBFUSCATED","title":"OBFUSCATED class-attribute","text":"
          OBFUSCATED: str = '\u00a7k'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.RED","title":"RED class-attribute","text":"
          RED: str = '\u00a7c'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.RESET","title":"RESET class-attribute","text":"
          RESET: str = '\u00a7r'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.WHITE","title":"WHITE class-attribute","text":"
          WHITE: str = '\u00a7f'\n
          "},{"location":"reference/python/misc/#endstone.ColorFormat.YELLOW","title":"YELLOW class-attribute","text":"
          YELLOW: str = '\u00a7e'\n
          "},{"location":"reference/python/misc/#endstone.GameMode","title":"endstone.GameMode","text":"
          GameMode(value: int)\n

          Represents the various type of game modes that Players may have.

          Attributes:

          Name Type Description ADVENTURE GameMode CREATIVE GameMode SPECTATOR GameMode SURVIVAL GameMode name str value int"},{"location":"reference/python/misc/#endstone.GameMode.ADVENTURE","title":"ADVENTURE class-attribute","text":"
          ADVENTURE: GameMode\n
          "},{"location":"reference/python/misc/#endstone.GameMode.CREATIVE","title":"CREATIVE class-attribute","text":"
          CREATIVE: GameMode\n
          "},{"location":"reference/python/misc/#endstone.GameMode.SPECTATOR","title":"SPECTATOR class-attribute","text":"
          SPECTATOR: GameMode\n
          "},{"location":"reference/python/misc/#endstone.GameMode.SURVIVAL","title":"SURVIVAL class-attribute","text":"
          SURVIVAL: GameMode\n
          "},{"location":"reference/python/misc/#endstone.GameMode.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/misc/#endstone.GameMode.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/misc/#endstone.Logger","title":"endstone.Logger","text":"

          Logger class which can format and output varies levels of logs.

          Classes:

          Name Description Level

          Specifies the log level.

          Methods:

          Name Description critical

          Log a message at the CRITICAL level.

          debug

          Log a message at the DEBUG level.

          error

          Log a message at the ERROR level.

          info

          Log a message at the INFO level.

          is_enabled_for

          Check if the Logger instance is enabled for the given log Level.

          set_level

          Set the logging level for this Logger instance.

          trace

          Log a message at the TRACE level.

          warning

          Log a message at the WARNING level.

          Attributes:

          Name Type Description CRITICAL Level DEBUG Level ERROR Level INFO Level TRACE Level WARNING Level name str

          Get the name of this Logger instance.

          "},{"location":"reference/python/misc/#endstone.Logger.CRITICAL","title":"CRITICAL class-attribute","text":"
          CRITICAL: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.DEBUG","title":"DEBUG class-attribute","text":"
          DEBUG: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.ERROR","title":"ERROR class-attribute","text":"
          ERROR: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.INFO","title":"INFO class-attribute","text":"
          INFO: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.TRACE","title":"TRACE class-attribute","text":"
          TRACE: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.WARNING","title":"WARNING class-attribute","text":"
          WARNING: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.name","title":"name property","text":"
          name: str\n

          Get the name of this Logger instance.

          "},{"location":"reference/python/misc/#endstone.Logger.Level","title":"Level","text":"
          Level(value: int)\n

          Specifies the log level.

          Attributes:

          Name Type Description CRITICAL Level DEBUG Level ERROR Level INFO Level TRACE Level WARNING Level name str value int"},{"location":"reference/python/misc/#endstone.Logger.Level.CRITICAL","title":"CRITICAL class-attribute","text":"
          CRITICAL: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.Level.DEBUG","title":"DEBUG class-attribute","text":"
          DEBUG: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.Level.ERROR","title":"ERROR class-attribute","text":"
          ERROR: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.Level.INFO","title":"INFO class-attribute","text":"
          INFO: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.Level.TRACE","title":"TRACE class-attribute","text":"
          TRACE: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.Level.WARNING","title":"WARNING class-attribute","text":"
          WARNING: Level\n
          "},{"location":"reference/python/misc/#endstone.Logger.Level.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/misc/#endstone.Logger.Level.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/misc/#endstone.Logger.critical","title":"critical","text":"
          critical(message: str) -> None\n

          Log a message at the CRITICAL level.

          "},{"location":"reference/python/misc/#endstone.Logger.debug","title":"debug","text":"
          debug(message: str) -> None\n

          Log a message at the DEBUG level.

          "},{"location":"reference/python/misc/#endstone.Logger.error","title":"error","text":"
          error(message: str) -> None\n

          Log a message at the ERROR level.

          "},{"location":"reference/python/misc/#endstone.Logger.info","title":"info","text":"
          info(message: str) -> None\n

          Log a message at the INFO level.

          "},{"location":"reference/python/misc/#endstone.Logger.is_enabled_for","title":"is_enabled_for","text":"
          is_enabled_for(level: Level) -> bool\n

          Check if the Logger instance is enabled for the given log Level.

          "},{"location":"reference/python/misc/#endstone.Logger.set_level","title":"set_level","text":"
          set_level(level: Level) -> None\n

          Set the logging level for this Logger instance.

          "},{"location":"reference/python/misc/#endstone.Logger.trace","title":"trace","text":"
          trace(message: str) -> None\n

          Log a message at the TRACE level.

          "},{"location":"reference/python/misc/#endstone.Logger.warning","title":"warning","text":"
          warning(message: str) -> None\n

          Log a message at the WARNING level.

          "},{"location":"reference/python/misc/#endstone.Skin","title":"endstone.Skin","text":"
          Skin(\n    skin_id: str,\n    skin_data: ndarray[uint8],\n    cape_id: str | None = None,\n    cape_data: ndarray[uint8] | None = None,\n)\n

          Attributes:

          Name Type Description cape_data ndarray[uint8] | None

          Get the Cape data.

          cape_id str | None

          Get the Cape ID.

          skin_data ndarray[uint8]

          Get the Skin data.

          skin_id str

          Get the Skin ID.

          "},{"location":"reference/python/misc/#endstone.Skin.cape_data","title":"cape_data property","text":"
          cape_data: ndarray[uint8] | None\n

          Get the Cape data.

          "},{"location":"reference/python/misc/#endstone.Skin.cape_id","title":"cape_id property","text":"
          cape_id: str | None\n

          Get the Cape ID.

          "},{"location":"reference/python/misc/#endstone.Skin.skin_data","title":"skin_data property","text":"
          skin_data: ndarray[uint8]\n

          Get the Skin data.

          "},{"location":"reference/python/misc/#endstone.Skin.skin_id","title":"skin_id property","text":"
          skin_id: str\n

          Get the Skin ID.

          "},{"location":"reference/python/misc/#endstone.util","title":"endstone.util","text":"

          Classes:

          Name Description SocketAddress

          Represents an IP Socket Address (hostname + port number).

          Vector

          Represents a 3-dimensional vector.

          "},{"location":"reference/python/misc/#endstone.util.SocketAddress","title":"SocketAddress","text":"
          SocketAddress()\n

          Represents an IP Socket Address (hostname + port number).

          Attributes:

          Name Type Description hostname str

          Gets the hostname.

          port int

          Gets the port number.

          "},{"location":"reference/python/misc/#endstone.util.SocketAddress.hostname","title":"hostname property","text":"
          hostname: str\n

          Gets the hostname.

          "},{"location":"reference/python/misc/#endstone.util.SocketAddress.port","title":"port property","text":"
          port: int\n

          Gets the port number.

          "},{"location":"reference/python/misc/#endstone.util.Vector","title":"Vector","text":"
          Vector()\n

          Represents a 3-dimensional vector.

          Methods:

          Name Description distance

          The distance between this Vector and another

          distance_squared

          The squared distance between this Vector and another

          Attributes:

          Name Type Description length float

          The magnitude of the Vector

          length_squared float

          The squared magnitude of the Vector

          x float

          The X component of the vector

          y float

          The Y component of the vector

          z float

          The Z component of the vector

          "},{"location":"reference/python/misc/#endstone.util.Vector.length","title":"length property","text":"
          length: float\n

          The magnitude of the Vector

          "},{"location":"reference/python/misc/#endstone.util.Vector.length_squared","title":"length_squared property","text":"
          length_squared: float\n

          The squared magnitude of the Vector

          "},{"location":"reference/python/misc/#endstone.util.Vector.x","title":"x property writable","text":"
          x: float\n

          The X component of the vector

          "},{"location":"reference/python/misc/#endstone.util.Vector.y","title":"y property writable","text":"
          y: float\n

          The Y component of the vector

          "},{"location":"reference/python/misc/#endstone.util.Vector.z","title":"z property writable","text":"
          z: float\n

          The Z component of the vector

          "},{"location":"reference/python/misc/#endstone.util.Vector.distance","title":"distance","text":"
          distance(other: Vector) -> float\n

          The distance between this Vector and another

          "},{"location":"reference/python/misc/#endstone.util.Vector.distance_squared","title":"distance_squared","text":"
          distance_squared(other: Vector) -> float\n

          The squared distance between this Vector and another

          "},{"location":"reference/python/network/","title":"Network","text":""},{"location":"reference/python/network/#endstone.network","title":"endstone.network","text":"

          Classes:

          Name Description Packet

          Represents a packet.

          PacketType

          Represents the types of packets.

          SpawnParticleEffectPacket

          Represents a packet for spawning a particle effect.

          "},{"location":"reference/python/network/#endstone.network.Packet","title":"Packet","text":"

          Represents a packet.

          Attributes:

          Name Type Description type PacketType

          Gets the type of the packet.

          "},{"location":"reference/python/network/#endstone.network.Packet.type","title":"type property","text":"
          type: PacketType\n

          Gets the type of the packet.

          "},{"location":"reference/python/network/#endstone.network.PacketType","title":"PacketType","text":"
          PacketType(value: int)\n

          Represents the types of packets.

          Attributes:

          Name Type Description SPAWN_PARTICLE_EFFECT PacketType name str value int"},{"location":"reference/python/network/#endstone.network.PacketType.SPAWN_PARTICLE_EFFECT","title":"SPAWN_PARTICLE_EFFECT class-attribute","text":"
          SPAWN_PARTICLE_EFFECT: PacketType\n
          "},{"location":"reference/python/network/#endstone.network.PacketType.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/network/#endstone.network.PacketType.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/network/#endstone.network.SpawnParticleEffectPacket","title":"SpawnParticleEffectPacket","text":"
          SpawnParticleEffectPacket()\n

          Bases: Packet

          Represents a packet for spawning a particle effect.

          Attributes:

          Name Type Description actor_id int dimension_id int effect_name str molang_variables_json str | None position Vector"},{"location":"reference/python/network/#endstone.network.SpawnParticleEffectPacket.actor_id","title":"actor_id instance-attribute","text":"
          actor_id: int\n
          "},{"location":"reference/python/network/#endstone.network.SpawnParticleEffectPacket.dimension_id","title":"dimension_id instance-attribute","text":"
          dimension_id: int\n
          "},{"location":"reference/python/network/#endstone.network.SpawnParticleEffectPacket.effect_name","title":"effect_name instance-attribute","text":"
          effect_name: str\n
          "},{"location":"reference/python/network/#endstone.network.SpawnParticleEffectPacket.molang_variables_json","title":"molang_variables_json instance-attribute","text":"
          molang_variables_json: str | None\n
          "},{"location":"reference/python/network/#endstone.network.SpawnParticleEffectPacket.position","title":"position instance-attribute","text":"
          position: Vector\n
          "},{"location":"reference/python/permissions/","title":"Permissions","text":""},{"location":"reference/python/permissions/#endstone.permissions","title":"endstone.permissions","text":"

          Classes:

          Name Description Permissible

          Represents an object that may become a server operator and can be assigned permissions.

          Permission

          Represents a unique permission that may be attached to a Permissible

          PermissionAttachment

          Holds information about a permission attachment on a Permissible object

          PermissionAttachmentInfo

          Holds information on a permission and which PermissionAttachment provides it

          PermissionDefault

          Represents the possible default values for permissions

          "},{"location":"reference/python/permissions/#endstone.permissions.Permissible","title":"Permissible","text":"

          Represents an object that may become a server operator and can be assigned permissions.

          Methods:

          Name Description add_attachment has_permission is_permission_set recalculate_permissions

          Recalculates the permissions.

          remove_attachment

          Removes a given PermissionAttachment.

          Attributes:

          Name Type Description effective_permissions set[PermissionAttachmentInfo]

          Gets effective permissions.

          is_op bool

          The operator status of this object

          "},{"location":"reference/python/permissions/#endstone.permissions.Permissible.effective_permissions","title":"effective_permissions property","text":"
          effective_permissions: set[PermissionAttachmentInfo]\n

          Gets effective permissions.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permissible.is_op","title":"is_op property writable","text":"
          is_op: bool\n

          The operator status of this object

          "},{"location":"reference/python/permissions/#endstone.permissions.Permissible.add_attachment","title":"add_attachment","text":"
          add_attachment(\n    plugin: Plugin, name: str, value: bool\n) -> PermissionAttachment\n

          Adds a new PermissionAttachment.

          add_attachment(plugin: Plugin) -> PermissionAttachment\n

          Adds a new PermissionAttachment.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permissible.has_permission","title":"has_permission","text":"
          has_permission(name: str) -> bool\n

          Checks if a permissions is available by name.

          has_permission(perm: Permission) -> bool\n

          Checks if a permissions is available by permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permissible.is_permission_set","title":"is_permission_set","text":"
          is_permission_set(name: str) -> bool\n

          Checks if a permissions is set by name.

          is_permission_set(perm: Permission) -> bool\n

          Checks if a permissions is set by permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permissible.recalculate_permissions","title":"recalculate_permissions","text":"
          recalculate_permissions() -> None\n

          Recalculates the permissions.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permissible.remove_attachment","title":"remove_attachment","text":"
          remove_attachment(attachment: PermissionAttachment) -> None\n

          Removes a given PermissionAttachment.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permission","title":"Permission","text":"
          Permission(\n    name: str,\n    description: str | None = None,\n    default: PermissionDefault | None = None,\n    children: dict[str, bool] | None = None,\n    *args,\n    **kwargs\n)\n

          Represents a unique permission that may be attached to a Permissible

          Methods:

          Name Description add_parent recalculate_permissibles

          Recalculates all Permissibles that contain this permission.

          Attributes:

          Name Type Description children dict[str, bool]

          Gets the children of this permission.

          default PermissionDefault

          The default value of this permission.

          description str

          The brief description of this permission

          name str

          Gets the unique fully qualified name of this Permission.

          permissibles set[Permissible]

          Gets a set containing every Permissible that has this permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permission.children","title":"children property","text":"
          children: dict[str, bool]\n

          Gets the children of this permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permission.default","title":"default property writable","text":"
          default: PermissionDefault\n

          The default value of this permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permission.description","title":"description property writable","text":"
          description: str\n

          The brief description of this permission

          "},{"location":"reference/python/permissions/#endstone.permissions.Permission.name","title":"name property","text":"
          name: str\n

          Gets the unique fully qualified name of this Permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permission.permissibles","title":"permissibles property","text":"
          permissibles: set[Permissible]\n

          Gets a set containing every Permissible that has this permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permission.add_parent","title":"add_parent","text":"
          add_parent(name: str, value: bool) -> Permission\n

          Adds this permission to the specified parent permission.

          add_parent(perm: Permission, value: bool) -> None\n

          Adds this permission to the specified parent permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.Permission.recalculate_permissibles","title":"recalculate_permissibles","text":"
          recalculate_permissibles() -> None\n

          Recalculates all Permissibles that contain this permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachment","title":"PermissionAttachment","text":"
          PermissionAttachment(\n    plugin: Plugin, permissible: Permissible\n)\n

          Holds information about a permission attachment on a Permissible object

          Methods:

          Name Description remove

          Removes this attachment from its registered Permissible.

          set_permission unset_permission

          Attributes:

          Name Type Description permissible Permissible

          Gets the Permissible that this is attached to.

          permissions dict[str, bool]

          Gets a copy of all set permissions and values contained within this attachment.

          plugin Plugin

          Gets the plugin responsible for this attachment.

          removal_callback Callable[[PermissionAttachment], None]

          The callback to be called when this attachment is removed.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachment.permissible","title":"permissible property","text":"
          permissible: Permissible\n

          Gets the Permissible that this is attached to.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachment.permissions","title":"permissions property","text":"
          permissions: dict[str, bool]\n

          Gets a copy of all set permissions and values contained within this attachment.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachment.plugin","title":"plugin property","text":"
          plugin: Plugin\n

          Gets the plugin responsible for this attachment.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachment.removal_callback","title":"removal_callback property writable","text":"
          removal_callback: Callable[[PermissionAttachment], None]\n

          The callback to be called when this attachment is removed.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachment.remove","title":"remove","text":"
          remove() -> bool\n

          Removes this attachment from its registered Permissible.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachment.set_permission","title":"set_permission","text":"
          set_permission(name: str, value: bool) -> None\n

          Sets a permission to the given value, by its fully qualified name.

          set_permission(perm: Permission, value: bool) -> None\n

          Sets a permission to the given value.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachment.unset_permission","title":"unset_permission","text":"
          unset_permission(name: str) -> None\n

          Removes the specified permission from this attachment by name.

          unset_permission(perm: Permission) -> None\n

          Removes the specified permission from this attachment.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachmentInfo","title":"PermissionAttachmentInfo","text":"
          PermissionAttachmentInfo(\n    permissible: Permissible,\n    permission: str,\n    attachment: PermissionAttachment,\n    value: bool,\n)\n

          Holds information on a permission and which PermissionAttachment provides it

          Attributes:

          Name Type Description attachment PermissionAttachment

          Gets the attachment providing this permission.

          permissible Permissible

          Get the permissible this is attached to

          permission str

          Gets the permission being set

          value bool

          Gets the value of this permission

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachmentInfo.attachment","title":"attachment property","text":"
          attachment: PermissionAttachment\n

          Gets the attachment providing this permission.

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachmentInfo.permissible","title":"permissible property","text":"
          permissible: Permissible\n

          Get the permissible this is attached to

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachmentInfo.permission","title":"permission property","text":"
          permission: str\n

          Gets the permission being set

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionAttachmentInfo.value","title":"value property","text":"
          value: bool\n

          Gets the value of this permission

          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionDefault","title":"PermissionDefault","text":"
          PermissionDefault(value: int)\n

          Represents the possible default values for permissions

          Attributes:

          Name Type Description FALSE PermissionDefault NOT_OP PermissionDefault NOT_OPERATOR PermissionDefault OP PermissionDefault OPERATOR PermissionDefault TRUE PermissionDefault name str value int"},{"location":"reference/python/permissions/#endstone.permissions.PermissionDefault.FALSE","title":"FALSE class-attribute","text":"
          FALSE: PermissionDefault\n
          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionDefault.NOT_OP","title":"NOT_OP class-attribute","text":"
          NOT_OP: PermissionDefault\n
          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionDefault.NOT_OPERATOR","title":"NOT_OPERATOR class-attribute","text":"
          NOT_OPERATOR: PermissionDefault\n
          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionDefault.OP","title":"OP class-attribute","text":"
          OP: PermissionDefault\n
          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionDefault.OPERATOR","title":"OPERATOR class-attribute","text":"
          OPERATOR: PermissionDefault\n
          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionDefault.TRUE","title":"TRUE class-attribute","text":"
          TRUE: PermissionDefault\n
          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionDefault.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/permissions/#endstone.permissions.PermissionDefault.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/player/","title":"Player","text":""},{"location":"reference/python/player/#endstone.Player","title":"endstone.Player","text":"

          Bases: Mob

          Represents a player.

          Methods:

          Name Description close_form

          Closes the forms that are currently open for the player.

          give_exp

          Gives the player the amount of experience specified.

          give_exp_levels

          Gives the player the amount of experience levels specified.

          kick

          Kicks player with custom kick message.

          perform_command

          Makes the player perform the given command.

          reset_title

          Resets the title displayed to the player. This will clear the displayed title / subtitle and reset timings to their default values.

          send_form

          Sends a form to the player.

          send_packet

          Sends a packet to the player.

          send_popup

          Sends this player a popup message

          send_tip

          Sends this player a tip message

          send_title

          Sends a title and a subtitle message to the player. If they are empty strings, the display will be updated as such.

          send_toast

          Sends this player a toast notification.

          spawn_particle transfer

          Transfers the player to another server.

          update_commands

          Send the list of commands to the client.

          Attributes:

          Name Type Description address SocketAddress

          Gets the socket address of this player

          allow_flight bool

          If the Player is allowed to fly via jump key double-tap.

          device_id str

          Get the player's current device id.

          device_os str

          Get the player's current device's operation system (OS).

          exp_level int

          Gets or sets the players current experience level.

          exp_progress float

          Gets or sets the players current experience progress towards the next level.

          fly_speed float

          Gets or sets the current allowed speed that a client can fly.

          game_mode GameMode

          The player's current game mode.

          game_version str

          Get the player's current game version.

          inventory PlayerInventory

          Get the player's inventory.

          is_flying bool

          If the player is currently flying or not.

          locale str

          Get the player's current locale.

          ping int

          Gets the player's average ping in milliseconds.

          scoreboard Scoreboard

          Gets or sets the player's visible Scoreboard.

          skin Skin

          Get the player's skin.

          total_exp int

          Gets the players total experience points.

          unique_id UUID

          Returns the UUID of this player

          walk_speed float

          Gets or sets the current allowed speed that a client can walk.

          xuid str

          Returns the Xbox User ID (XUID) of this player

          "},{"location":"reference/python/player/#endstone.Player.address","title":"address property","text":"
          address: SocketAddress\n

          Gets the socket address of this player

          "},{"location":"reference/python/player/#endstone.Player.allow_flight","title":"allow_flight property writable","text":"
          allow_flight: bool\n

          If the Player is allowed to fly via jump key double-tap.

          "},{"location":"reference/python/player/#endstone.Player.device_id","title":"device_id property","text":"
          device_id: str\n

          Get the player's current device id.

          "},{"location":"reference/python/player/#endstone.Player.device_os","title":"device_os property","text":"
          device_os: str\n

          Get the player's current device's operation system (OS).

          "},{"location":"reference/python/player/#endstone.Player.exp_level","title":"exp_level property writable","text":"
          exp_level: int\n

          Gets or sets the players current experience level.

          "},{"location":"reference/python/player/#endstone.Player.exp_progress","title":"exp_progress property writable","text":"
          exp_progress: float\n

          Gets or sets the players current experience progress towards the next level.

          "},{"location":"reference/python/player/#endstone.Player.fly_speed","title":"fly_speed property writable","text":"
          fly_speed: float\n

          Gets or sets the current allowed speed that a client can fly.

          "},{"location":"reference/python/player/#endstone.Player.game_mode","title":"game_mode property writable","text":"
          game_mode: GameMode\n

          The player's current game mode.

          "},{"location":"reference/python/player/#endstone.Player.game_version","title":"game_version property","text":"
          game_version: str\n

          Get the player's current game version.

          "},{"location":"reference/python/player/#endstone.Player.inventory","title":"inventory property","text":"
          inventory: PlayerInventory\n

          Get the player's inventory.

          "},{"location":"reference/python/player/#endstone.Player.is_flying","title":"is_flying property writable","text":"
          is_flying: bool\n

          If the player is currently flying or not.

          "},{"location":"reference/python/player/#endstone.Player.locale","title":"locale property","text":"
          locale: str\n

          Get the player's current locale.

          "},{"location":"reference/python/player/#endstone.Player.ping","title":"ping property","text":"
          ping: int\n

          Gets the player's average ping in milliseconds.

          "},{"location":"reference/python/player/#endstone.Player.scoreboard","title":"scoreboard property writable","text":"
          scoreboard: Scoreboard\n

          Gets or sets the player's visible Scoreboard.

          "},{"location":"reference/python/player/#endstone.Player.skin","title":"skin property","text":"
          skin: Skin\n

          Get the player's skin.

          "},{"location":"reference/python/player/#endstone.Player.total_exp","title":"total_exp property","text":"
          total_exp: int\n

          Gets the players total experience points.

          "},{"location":"reference/python/player/#endstone.Player.unique_id","title":"unique_id property","text":"
          unique_id: UUID\n

          Returns the UUID of this player

          "},{"location":"reference/python/player/#endstone.Player.walk_speed","title":"walk_speed property writable","text":"
          walk_speed: float\n

          Gets or sets the current allowed speed that a client can walk.

          "},{"location":"reference/python/player/#endstone.Player.xuid","title":"xuid property","text":"
          xuid: str\n

          Returns the Xbox User ID (XUID) of this player

          "},{"location":"reference/python/player/#endstone.Player.close_form","title":"close_form","text":"
          close_form() -> None\n

          Closes the forms that are currently open for the player.

          "},{"location":"reference/python/player/#endstone.Player.give_exp","title":"give_exp","text":"
          give_exp(amount: int) -> None\n

          Gives the player the amount of experience specified.

          "},{"location":"reference/python/player/#endstone.Player.give_exp_levels","title":"give_exp_levels","text":"
          give_exp_levels(amount: int) -> None\n

          Gives the player the amount of experience levels specified.

          "},{"location":"reference/python/player/#endstone.Player.kick","title":"kick","text":"
          kick(message: str) -> None\n

          Kicks player with custom kick message.

          "},{"location":"reference/python/player/#endstone.Player.perform_command","title":"perform_command","text":"
          perform_command(command: str) -> bool\n

          Makes the player perform the given command.

          "},{"location":"reference/python/player/#endstone.Player.reset_title","title":"reset_title","text":"
          reset_title() -> None\n

          Resets the title displayed to the player. This will clear the displayed title / subtitle and reset timings to their default values.

          "},{"location":"reference/python/player/#endstone.Player.send_form","title":"send_form","text":"
          send_form(\n    form: MessageForm | ActionForm | ModalForm,\n) -> None\n

          Sends a form to the player.

          "},{"location":"reference/python/player/#endstone.Player.send_packet","title":"send_packet","text":"
          send_packet(packet: Packet) -> None\n

          Sends a packet to the player.

          "},{"location":"reference/python/player/#endstone.Player.send_popup","title":"send_popup","text":"
          send_popup(message: str) -> None\n

          Sends this player a popup message

          "},{"location":"reference/python/player/#endstone.Player.send_tip","title":"send_tip","text":"
          send_tip(message: str) -> None\n

          Sends this player a tip message

          "},{"location":"reference/python/player/#endstone.Player.send_title","title":"send_title","text":"
          send_title(\n    title: str,\n    subtitle: str,\n    fade_in: int = 10,\n    stay: int = 70,\n    fade_out: int = 20,\n) -> None\n

          Sends a title and a subtitle message to the player. If they are empty strings, the display will be updated as such.

          "},{"location":"reference/python/player/#endstone.Player.send_toast","title":"send_toast","text":"
          send_toast(title: str, content: str) -> None\n

          Sends this player a toast notification.

          "},{"location":"reference/python/player/#endstone.Player.spawn_particle","title":"spawn_particle","text":"
          spawn_particle(\n    name: str,\n    location: Location,\n    molang_variables_json: str | None = None,\n) -> None\n

          Spawns the particle at the target location.

          spawn_particle(\n    name: str,\n    x: float,\n    y: float,\n    z: float,\n    molang_variables_json: str | None = None,\n) -> None\n

          Spawns the particle at the target location.

          "},{"location":"reference/python/player/#endstone.Player.transfer","title":"transfer","text":"
          transfer(host: str, port: int = 19132) -> None\n

          Transfers the player to another server.

          "},{"location":"reference/python/player/#endstone.Player.update_commands","title":"update_commands","text":"
          update_commands() -> None\n

          Send the list of commands to the client.

          "},{"location":"reference/python/plugin/","title":"Plugin","text":""},{"location":"reference/python/plugin/#endstone.plugin","title":"endstone.plugin","text":"

          Modules:

          Name Description endstone_python

          Classes:

          Name Description Plugin PluginCommand

          Represents a Command belonging to a Plugin

          PluginDescription

          Represents the basic information about a plugin that the plugin loader needs to know.

          PluginLoadOrder

          Represents the order in which a plugin should be initialized and enabled.

          PluginLoader

          Represents a plugin loader, which handles direct access to specific types of plugins

          PluginManager

          Represents a plugin manager that handles all plugins from the Server

          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin","title":"Plugin","text":"
          Plugin()\n

          Bases: Plugin

          Methods:

          Name Description register_events reload_config save_config save_default_config save_resources

          Attributes:

          Name Type Description api_version authors commands config dict contributors default_permission depend description load load_before name permissions prefix provides soft_depend version website"},{"location":"reference/python/plugin/#endstone.plugin.Plugin.api_version","title":"api_version class-attribute instance-attribute","text":"
          api_version = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.authors","title":"authors class-attribute instance-attribute","text":"
          authors = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.commands","title":"commands class-attribute instance-attribute","text":"
          commands = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.config","title":"config property","text":"
          config: dict\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.contributors","title":"contributors class-attribute instance-attribute","text":"
          contributors = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.default_permission","title":"default_permission class-attribute instance-attribute","text":"
          default_permission = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.depend","title":"depend class-attribute instance-attribute","text":"
          depend = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.description","title":"description class-attribute instance-attribute","text":"
          description = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.load","title":"load class-attribute instance-attribute","text":"
          load = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.load_before","title":"load_before class-attribute instance-attribute","text":"
          load_before = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.name","title":"name class-attribute instance-attribute","text":"
          name = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.permissions","title":"permissions class-attribute instance-attribute","text":"
          permissions = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.prefix","title":"prefix class-attribute instance-attribute","text":"
          prefix = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.provides","title":"provides class-attribute instance-attribute","text":"
          provides = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.soft_depend","title":"soft_depend class-attribute instance-attribute","text":"
          soft_depend = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.version","title":"version class-attribute instance-attribute","text":"
          version = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.website","title":"website class-attribute instance-attribute","text":"
          website = None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.register_events","title":"register_events","text":"
          register_events(listener: object) -> None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.reload_config","title":"reload_config","text":"
          reload_config() -> dict\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.save_config","title":"save_config","text":"
          save_config() -> None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.save_default_config","title":"save_default_config","text":"
          save_default_config() -> None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.Plugin.save_resources","title":"save_resources","text":"
          save_resources(path: str, replace: bool = False) -> None\n
          "},{"location":"reference/python/plugin/#endstone.plugin.PluginCommand","title":"PluginCommand","text":"
          PluginCommand(\n    name: str,\n    description: str | None = None,\n    usages: list[str] | None = None,\n    aliases: list[str] | None = None,\n    permissions: list[str] | None = None,\n    *args,\n    **kwargs\n)\n

          Bases: Command

          Represents a Command belonging to a Plugin

          Attributes:

          Name Type Description executor CommandExecutor

          The CommandExecutor to run when parsing this command

          plugin Plugin

          The owner of this PluginCommand

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginCommand.executor","title":"executor property writable","text":"
          executor: CommandExecutor\n

          The CommandExecutor to run when parsing this command

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginCommand.plugin","title":"plugin property","text":"
          plugin: Plugin\n

          The owner of this PluginCommand

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription","title":"PluginDescription","text":"
          PluginDescription(\n    name: str,\n    version: str,\n    description: str | None = None,\n    load: PluginLoadOrder | None = None,\n    authors: list[str] | None = None,\n    contributors: list[str] | None = None,\n    website: str | None = None,\n    prefix: str | None = None,\n    provides: list[str] | None = None,\n    depend: list[str] | None = None,\n    soft_depend: list[str] | None = None,\n    load_before: list[str] | None = None,\n    default_permission: PermissionDefault | None = None,\n    commands: list[Command] | None = None,\n    permissions: list[Permission] | None = None,\n    *args,\n    **kwargs\n)\n

          Represents the basic information about a plugin that the plugin loader needs to know.

          Attributes:

          Name Type Description api_version str

          Gives the API version which this plugin is designed to support.

          authors list[str]

          Gives the list of authors for the plugin.

          commands list[Command]

          Gives the list of commands the plugin will register at runtime.

          contributors list[str]

          Gives the list of contributors for the plugin.

          default_permission PermissionDefault

          Gives the default value of permissions registered for the plugin.

          depend list[str]

          Gives a list of other plugins that the plugin requires.

          description str

          Gives a human-friendly description of the functionality the plugin provides.

          full_name str

          Returns the name of a plugin, including the version.

          load PluginLoadOrder

          Gives the phase of server startup that the plugin should be loaded.

          load_before list[str]

          Gets the list of plugins that should consider this plugin a soft-dependency.

          name str

          Gives the name of the plugin. This name is a unique identifier for plugins.

          permissions list[Permission]

          Gives the list of permissions the plugin will register at runtime, immediately proceeding enabling.

          prefix str

          Gives the token to prefix plugin-specific logging messages with.

          provides list[str]

          Gives the list of other plugin APIs which this plugin provides. These are usable for other plugins to depend on.

          soft_depend list[str]

          Gives a list of other plugins that the plugin requires for full functionality.

          version str

          Gives the version of the plugin.

          website str

          Gives the plugin's or plugin's author's website.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.api_version","title":"api_version property","text":"
          api_version: str\n

          Gives the API version which this plugin is designed to support.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.authors","title":"authors property","text":"
          authors: list[str]\n

          Gives the list of authors for the plugin.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.commands","title":"commands property","text":"
          commands: list[Command]\n

          Gives the list of commands the plugin will register at runtime.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.contributors","title":"contributors property","text":"
          contributors: list[str]\n

          Gives the list of contributors for the plugin.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.default_permission","title":"default_permission property","text":"
          default_permission: PermissionDefault\n

          Gives the default value of permissions registered for the plugin.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.depend","title":"depend property","text":"
          depend: list[str]\n

          Gives a list of other plugins that the plugin requires.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.description","title":"description property","text":"
          description: str\n

          Gives a human-friendly description of the functionality the plugin provides.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.full_name","title":"full_name property","text":"
          full_name: str\n

          Returns the name of a plugin, including the version.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.load","title":"load property","text":"
          load: PluginLoadOrder\n

          Gives the phase of server startup that the plugin should be loaded.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.load_before","title":"load_before property","text":"
          load_before: list[str]\n

          Gets the list of plugins that should consider this plugin a soft-dependency.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.name","title":"name property","text":"
          name: str\n

          Gives the name of the plugin. This name is a unique identifier for plugins.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.permissions","title":"permissions property","text":"
          permissions: list[Permission]\n

          Gives the list of permissions the plugin will register at runtime, immediately proceeding enabling.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.prefix","title":"prefix property","text":"
          prefix: str\n

          Gives the token to prefix plugin-specific logging messages with.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.provides","title":"provides property","text":"
          provides: list[str]\n

          Gives the list of other plugin APIs which this plugin provides. These are usable for other plugins to depend on.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.soft_depend","title":"soft_depend property","text":"
          soft_depend: list[str]\n

          Gives a list of other plugins that the plugin requires for full functionality.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.version","title":"version property","text":"
          version: str\n

          Gives the version of the plugin.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginDescription.website","title":"website property","text":"
          website: str\n

          Gives the plugin's or plugin's author's website.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginLoadOrder","title":"PluginLoadOrder","text":"
          PluginLoadOrder(value: int)\n

          Represents the order in which a plugin should be initialized and enabled.

          Attributes:

          Name Type Description POSTWORLD PluginLoadOrder STARTUP PluginLoadOrder name str value int"},{"location":"reference/python/plugin/#endstone.plugin.PluginLoadOrder.POSTWORLD","title":"POSTWORLD class-attribute","text":"
          POSTWORLD: PluginLoadOrder\n
          "},{"location":"reference/python/plugin/#endstone.plugin.PluginLoadOrder.STARTUP","title":"STARTUP class-attribute","text":"
          STARTUP: PluginLoadOrder\n
          "},{"location":"reference/python/plugin/#endstone.plugin.PluginLoadOrder.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/plugin/#endstone.plugin.PluginLoadOrder.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/plugin/#endstone.plugin.PluginLoader","title":"PluginLoader","text":"
          PluginLoader(server: Server)\n

          Represents a plugin loader, which handles direct access to specific types of plugins

          Methods:

          Name Description disable_plugin

          Disables the specified plugin

          enable_plugin

          Enables the specified plugin

          load_plugins

          Loads the plugin contained within the specified directory

          Attributes:

          Name Type Description server Server

          Retrieves the Server object associated with the PluginLoader.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginLoader.server","title":"server property","text":"
          server: Server\n

          Retrieves the Server object associated with the PluginLoader.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginLoader.disable_plugin","title":"disable_plugin","text":"
          disable_plugin(plugin: Plugin) -> None\n

          Disables the specified plugin

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginLoader.enable_plugin","title":"enable_plugin","text":"
          enable_plugin(plugin: Plugin) -> None\n

          Enables the specified plugin

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginLoader.load_plugins","title":"load_plugins","text":"
          load_plugins(directory: str) -> list[Plugin]\n

          Loads the plugin contained within the specified directory

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager","title":"PluginManager","text":"

          Represents a plugin manager that handles all plugins from the Server

          Methods:

          Name Description call_event

          Calls an event which will be passed to plugins.

          clear_plugins

          Disables and removes all plugins

          disable_plugin

          Disables the specified plugin

          disable_plugins

          Disables all the loaded plugins

          enable_plugin

          Enables the specified plugin

          enable_plugins

          Enable all the loaded plugins

          get_default_perm_subscriptions

          Gets a set containing all subscribed Permissibles to the given default list, by op status.

          get_default_permissions

          Gets the default permissions for the given op status.

          get_permission

          Gets a Permission from its fully qualified name.

          get_permission_subscriptions

          Gets a set containing all subscribed Permissibles to the given permission.

          get_plugin

          Checks if the given plugin is loaded and returns it when applicable.

          is_plugin_enabled load_plugins

          Loads the plugin contained within the specified directory

          recalculate_permission_defaults

          Recalculates the defaults for the given Permission.

          register_event

          Registers the given event

          remove_permission subscribe_to_default_perms

          Subscribes to the given Default permissions by operator status.

          subscribe_to_permission

          Subscribes the given Permissible for information about the requested Permission.

          unsubscribe_from_default_perms

          Unsubscribes from the given Default permissions by operator status.

          unsubscribe_from_permission

          Unsubscribes the given Permissible for information about the requested Permission.

          Attributes:

          Name Type Description permissions set[Permission]

          Gets a set of all registered permissions.

          plugins list[Plugin]

          Gets a list of all currently loaded plugins

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.permissions","title":"permissions property","text":"
          permissions: set[Permission]\n

          Gets a set of all registered permissions.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.plugins","title":"plugins property","text":"
          plugins: list[Plugin]\n

          Gets a list of all currently loaded plugins

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.call_event","title":"call_event","text":"
          call_event(event: Event) -> None\n

          Calls an event which will be passed to plugins.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.clear_plugins","title":"clear_plugins","text":"
          clear_plugins() -> None\n

          Disables and removes all plugins

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.disable_plugin","title":"disable_plugin","text":"
          disable_plugin(plugin: Plugin) -> None\n

          Disables the specified plugin

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.disable_plugins","title":"disable_plugins","text":"
          disable_plugins() -> None\n

          Disables all the loaded plugins

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.enable_plugin","title":"enable_plugin","text":"
          enable_plugin(plugin: Plugin) -> None\n

          Enables the specified plugin

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.enable_plugins","title":"enable_plugins","text":"
          enable_plugins() -> None\n

          Enable all the loaded plugins

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.get_default_perm_subscriptions","title":"get_default_perm_subscriptions","text":"
          get_default_perm_subscriptions(\n    op: bool,\n) -> set[Permissible]\n

          Gets a set containing all subscribed Permissibles to the given default list, by op status.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.get_default_permissions","title":"get_default_permissions","text":"
          get_default_permissions(op: bool) -> set[Permission]\n

          Gets the default permissions for the given op status.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.get_permission","title":"get_permission","text":"
          get_permission(name: str) -> Permission\n

          Gets a Permission from its fully qualified name.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.get_permission_subscriptions","title":"get_permission_subscriptions","text":"
          get_permission_subscriptions(\n    permission: str,\n) -> set[Permissible]\n

          Gets a set containing all subscribed Permissibles to the given permission.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.get_plugin","title":"get_plugin","text":"
          get_plugin(name: str) -> Plugin\n

          Checks if the given plugin is loaded and returns it when applicable.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.is_plugin_enabled","title":"is_plugin_enabled","text":"
          is_plugin_enabled(plugin: str) -> bool\n

          Checks if the given plugin is enabled or not

          is_plugin_enabled(plugin: Plugin) -> bool\n

          Checks if the given plugin is enabled or not

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.load_plugins","title":"load_plugins","text":"
          load_plugins(directory: str) -> list[Plugin]\n

          Loads the plugin contained within the specified directory

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.recalculate_permission_defaults","title":"recalculate_permission_defaults","text":"
          recalculate_permission_defaults(perm: Permission) -> None\n

          Recalculates the defaults for the given Permission.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.register_event","title":"register_event","text":"
          register_event(\n    name: str,\n    executor: Callable[[Event], None],\n    priority: EventPriority,\n    plugin: Plugin,\n    ignore_cancelled: bool,\n) -> None\n

          Registers the given event

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.remove_permission","title":"remove_permission","text":"
          remove_permission(perm: Permission) -> None\n

          Removes a Permission registration from this plugin manager by permission object.

          remove_permission(name: str) -> None\n

          Removes a Permission registration from this plugin manager by name.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.subscribe_to_default_perms","title":"subscribe_to_default_perms","text":"
          subscribe_to_default_perms(\n    op: bool, permissible: Permissible\n) -> None\n

          Subscribes to the given Default permissions by operator status.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.subscribe_to_permission","title":"subscribe_to_permission","text":"
          subscribe_to_permission(\n    permission: str, permissible: Permissible\n) -> None\n

          Subscribes the given Permissible for information about the requested Permission.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.unsubscribe_from_default_perms","title":"unsubscribe_from_default_perms","text":"
          unsubscribe_from_default_perms(\n    op: bool, permissible: Permissible\n) -> None\n

          Unsubscribes from the given Default permissions by operator status.

          "},{"location":"reference/python/plugin/#endstone.plugin.PluginManager.unsubscribe_from_permission","title":"unsubscribe_from_permission","text":"
          unsubscribe_from_permission(\n    permission: str, permissible: Permissible\n) -> None\n

          Unsubscribes the given Permissible for information about the requested Permission.

          "},{"location":"reference/python/scheduler/","title":"Scheduler","text":""},{"location":"reference/python/scheduler/#endstone.scheduler","title":"endstone.scheduler","text":"

          Classes:

          Name Description Scheduler

          Represents a scheduler that executes various tasks

          Task

          Represents a task being executed by the scheduler

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Scheduler","title":"Scheduler","text":"

          Represents a scheduler that executes various tasks

          Methods:

          Name Description cancel_task

          Removes task from scheduler.

          cancel_tasks

          Removes all tasks associated with a particular plugin from the scheduler.

          get_pending_tasks

          Returns a vector of all pending tasks.

          is_queued

          Check if the task queued to be run later.

          is_running

          Check if the task currently running.

          run_task

          Returns a task that will be executed synchronously

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Scheduler.cancel_task","title":"cancel_task","text":"
          cancel_task(id: int) -> None\n

          Removes task from scheduler.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Scheduler.cancel_tasks","title":"cancel_tasks","text":"
          cancel_tasks(plugin: Plugin) -> None\n

          Removes all tasks associated with a particular plugin from the scheduler.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Scheduler.get_pending_tasks","title":"get_pending_tasks","text":"
          get_pending_tasks() -> list[Task]\n

          Returns a vector of all pending tasks.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Scheduler.is_queued","title":"is_queued","text":"
          is_queued(id: int) -> bool\n

          Check if the task queued to be run later.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Scheduler.is_running","title":"is_running","text":"
          is_running(id: int) -> bool\n

          Check if the task currently running.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Scheduler.run_task","title":"run_task","text":"
          run_task(\n    plugin: Plugin,\n    task: Callable[[], None],\n    delay: int = 0,\n    period: int = 0,\n) -> Task\n

          Returns a task that will be executed synchronously

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Task","title":"Task","text":"

          Represents a task being executed by the scheduler

          Methods:

          Name Description cancel

          Attempts to cancel this task.

          Attributes:

          Name Type Description is_cancelled bool

          Returns true if the task has been cancelled.

          is_sync bool

          Returns true if the task is run by server thread.

          owner Plugin

          Returns the Plugin that owns the task.

          task_id int

          Returns the task id.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Task.is_cancelled","title":"is_cancelled property","text":"
          is_cancelled: bool\n

          Returns true if the task has been cancelled.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Task.is_sync","title":"is_sync property","text":"
          is_sync: bool\n

          Returns true if the task is run by server thread.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Task.owner","title":"owner property","text":"
          owner: Plugin\n

          Returns the Plugin that owns the task.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Task.task_id","title":"task_id property","text":"
          task_id: int\n

          Returns the task id.

          "},{"location":"reference/python/scheduler/#endstone.scheduler.Task.cancel","title":"cancel","text":"
          cancel() -> None\n

          Attempts to cancel this task.

          "},{"location":"reference/python/scoreboard/","title":"Scoreboard","text":""},{"location":"reference/python/scoreboard/#endstone.scoreboard","title":"endstone.scoreboard","text":"

          Classes:

          Name Description Criteria

          Represents a scoreboard criteria.

          DisplaySlot

          Locations for displaying objectives to the player

          Objective

          Represents an objective on a scoreboard that can show scores specific to entries.

          ObjectiveSortOrder

          Represents the sort order of objectives on a DisplaySlot.

          Score

          Represents a score for an objective on a scoreboard.

          Scoreboard

          Represents a scoreboard

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Criteria","title":"Criteria","text":"

          Represents a scoreboard criteria.

          Classes:

          Name Description Type

          Represents a scoreboard criteria.

          Attributes:

          Name Type Description DUMMY Type default_render_type RenderType is_read_only bool name str"},{"location":"reference/python/scoreboard/#endstone.scoreboard.Criteria.DUMMY","title":"DUMMY class-attribute","text":"
          DUMMY: Type\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Criteria.default_render_type","title":"default_render_type property","text":"
          default_render_type: RenderType\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Criteria.is_read_only","title":"is_read_only property","text":"
          is_read_only: bool\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Criteria.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Criteria.Type","title":"Type","text":"
          Type(value: int)\n

          Represents a scoreboard criteria.

          Attributes:

          Name Type Description DUMMY Type name str value int"},{"location":"reference/python/scoreboard/#endstone.scoreboard.Criteria.Type.DUMMY","title":"DUMMY class-attribute","text":"
          DUMMY: Type\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Criteria.Type.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Criteria.Type.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.DisplaySlot","title":"DisplaySlot","text":"
          DisplaySlot(value: int)\n

          Locations for displaying objectives to the player

          Attributes:

          Name Type Description BELOW_NAME DisplaySlot PLAYER_LIST DisplaySlot SIDE_BAR DisplaySlot name str value int"},{"location":"reference/python/scoreboard/#endstone.scoreboard.DisplaySlot.BELOW_NAME","title":"BELOW_NAME class-attribute","text":"
          BELOW_NAME: DisplaySlot\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.DisplaySlot.PLAYER_LIST","title":"PLAYER_LIST class-attribute","text":"
          PLAYER_LIST: DisplaySlot\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.DisplaySlot.SIDE_BAR","title":"SIDE_BAR class-attribute","text":"
          SIDE_BAR: DisplaySlot\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.DisplaySlot.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.DisplaySlot.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective","title":"Objective","text":"

          Represents an objective on a scoreboard that can show scores specific to entries.

          Methods:

          Name Description get_score

          Gets an entry's Score for this objective

          set_display

          Sets the display slot and sort order for this objective. This will remove it from any other display slot.

          unregister

          Unregisters this objective from the associated Scoreboard.

          Attributes:

          Name Type Description criteria Criteria

          Gets the criteria this objective tracks

          display_name str

          Gets or sets the name displayed to players for this objective

          display_slot DisplaySlot | None

          Gets the display slot this objective is displayed at

          is_displayed bool

          Gets if the objective is currently displayed in a slot.

          is_modifiable bool

          Gets if the objective's scores can be modified directly by a plugin

          name str

          Gets the name of this Objective

          render_type RenderType

          Gets and sets the manner in which this objective will be rendered.

          scoreboard Scoreboard

          Gets the scoreboard to which this objective is attached

          sort_order ObjectiveSortOrder | None

          Gets and sets the sort order for this objective

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.criteria","title":"criteria property","text":"
          criteria: Criteria\n

          Gets the criteria this objective tracks

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.display_name","title":"display_name property writable","text":"
          display_name: str\n

          Gets or sets the name displayed to players for this objective

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.display_slot","title":"display_slot property","text":"
          display_slot: DisplaySlot | None\n

          Gets the display slot this objective is displayed at

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.is_displayed","title":"is_displayed property","text":"
          is_displayed: bool\n

          Gets if the objective is currently displayed in a slot.

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.is_modifiable","title":"is_modifiable property","text":"
          is_modifiable: bool\n

          Gets if the objective's scores can be modified directly by a plugin

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.name","title":"name property","text":"
          name: str\n

          Gets the name of this Objective

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.render_type","title":"render_type property writable","text":"
          render_type: RenderType\n

          Gets and sets the manner in which this objective will be rendered.

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.scoreboard","title":"scoreboard property","text":"
          scoreboard: Scoreboard\n

          Gets the scoreboard to which this objective is attached

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.sort_order","title":"sort_order property","text":"
          sort_order: ObjectiveSortOrder | None\n

          Gets and sets the sort order for this objective

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.get_score","title":"get_score","text":"
          get_score(entry: Player | Actor | str) -> Score\n

          Gets an entry's Score for this objective

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.set_display","title":"set_display","text":"
          set_display(\n    slot: DisplaySlot | None,\n    order: ObjectiveSortOrder | None = None,\n) -> None\n

          Sets the display slot and sort order for this objective. This will remove it from any other display slot.

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Objective.unregister","title":"unregister","text":"
          unregister() -> None\n

          Unregisters this objective from the associated Scoreboard.

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.ObjectiveSortOrder","title":"ObjectiveSortOrder","text":"
          ObjectiveSortOrder(value: int)\n

          Represents the sort order of objectives on a DisplaySlot.

          Attributes:

          Name Type Description ASCENDING ObjectiveSortOrder DESCENDING ObjectiveSortOrder name str value int"},{"location":"reference/python/scoreboard/#endstone.scoreboard.ObjectiveSortOrder.ASCENDING","title":"ASCENDING class-attribute","text":"
          ASCENDING: ObjectiveSortOrder\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.ObjectiveSortOrder.DESCENDING","title":"DESCENDING class-attribute","text":"
          DESCENDING: ObjectiveSortOrder\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.ObjectiveSortOrder.name","title":"name property","text":"
          name: str\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.ObjectiveSortOrder.value","title":"value property","text":"
          value: int\n
          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Score","title":"Score","text":"

          Represents a score for an objective on a scoreboard.

          Attributes:

          Name Type Description entry Player | Actor | str

          Gets the entry being tracked by this Score

          is_score_set bool

          Shows if this score has been set at any point in time.

          objective Objective

          Gets the Objective being tracked by this Score.

          scoreboard Scoreboard

          Gets the scoreboard for the associated objective.

          value int

          Gets or sets the current score.

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Score.entry","title":"entry property","text":"
          entry: Player | Actor | str\n

          Gets the entry being tracked by this Score

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Score.is_score_set","title":"is_score_set property","text":"
          is_score_set: bool\n

          Shows if this score has been set at any point in time.

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Score.objective","title":"objective property","text":"
          objective: Objective\n

          Gets the Objective being tracked by this Score.

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Score.scoreboard","title":"scoreboard property","text":"
          scoreboard: Scoreboard\n

          Gets the scoreboard for the associated objective.

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Score.value","title":"value property writable","text":"
          value: int\n

          Gets or sets the current score.

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Scoreboard","title":"Scoreboard","text":"

          Represents a scoreboard

          Methods:

          Name Description add_objective

          Registers an Objective on this Scoreboard with a name displayed to players

          clear_slot

          Clears any objective in the specified slot

          get_objective get_objectives_by_criteria

          Gets all Objectives of a Criteria on the Scoreboard

          get_scores

          Gets all scores for an entry on this Scoreboard

          reset_scores

          Removes all scores for an entry on this Scoreboard

          Attributes:

          Name Type Description entries list[Player | Actor | str]

          Gets all entries tracked by this Scoreboard

          objectives list[Objective]

          Gets all Objectives on this Scoreboard

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Scoreboard.entries","title":"entries property","text":"
          entries: list[Player | Actor | str]\n

          Gets all entries tracked by this Scoreboard

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Scoreboard.objectives","title":"objectives property","text":"
          objectives: list[Objective]\n

          Gets all Objectives on this Scoreboard

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Scoreboard.add_objective","title":"add_objective","text":"
          add_objective(\n    name: str,\n    criteria: Type,\n    display_name: str | None = None,\n    render_type: RenderType = INTEGER,\n) -> Objective\n

          Registers an Objective on this Scoreboard with a name displayed to players

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Scoreboard.clear_slot","title":"clear_slot","text":"
          clear_slot(slot: DisplaySlot) -> None\n

          Clears any objective in the specified slot

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Scoreboard.get_objective","title":"get_objective","text":"
          get_objective(name: str) -> Objective\n

          Gets an Objective on this Scoreboard by name

          get_objective(slot: DisplaySlot) -> Objective\n

          Gets the Objective currently displayed in a DisplaySlot on this Scoreboard

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Scoreboard.get_objectives_by_criteria","title":"get_objectives_by_criteria","text":"
          get_objectives_by_criteria(\n    criteria: Type,\n) -> list[Objective]\n

          Gets all Objectives of a Criteria on the Scoreboard

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Scoreboard.get_scores","title":"get_scores","text":"
          get_scores(entry: Player | Actor | str) -> list[Score]\n

          Gets all scores for an entry on this Scoreboard

          "},{"location":"reference/python/scoreboard/#endstone.scoreboard.Scoreboard.reset_scores","title":"reset_scores","text":"
          reset_scores(entry: Player | Actor | str) -> None\n

          Removes all scores for an entry on this Scoreboard

          "},{"location":"reference/python/server/","title":"Server","text":""},{"location":"reference/python/server/#endstone.Server","title":"endstone.Server","text":"

          Represents a server implementation.

          Methods:

          Name Description broadcast

          Broadcasts the specified message to every user with the given permission name.

          broadcast_message

          Broadcasts the specified message to every user with permission endstone.broadcast.user

          create_block_data

          Creates a new BlockData instance for the specified block type, with all properties initialized to defaults, except for those provided.

          create_boss_bar

          Creates a boss bar instance to display to players. The progress defaults to 1.0.

          create_scoreboard

          Creates a new Scoreboard to be tracked by the server.

          dispatch_command

          Dispatches a command on this server, and executes it if found.

          get_player get_plugin_command

          Gets a PluginCommand with the given name or alias.

          reload

          Reloads the server configuration, functions, scripts and plugins.

          reload_data

          Reload only the Minecraft data for the server.

          shutdown

          Shutdowns the server, stopping everything.

          Attributes:

          Name Type Description average_mspt float

          Gets the average milliseconds per tick (MSPT).

          average_tick_usage float

          Gets the average tick usage of the server.

          average_tps float

          Gets the average ticks per second (TPS).

          command_sender ConsoleCommandSender

          Gets a CommandSender for this server.

          current_mspt float

          Gets the current milliseconds per tick (MSPT).

          current_tick_usage float

          Gets the current tick usage of the server.

          current_tps float

          Gets the current ticks per second (TPS).

          language Language

          Gets the current language interface used by the server.

          level Level

          Gets the server level.

          logger Logger

          Returns the primary logger associated with this server instance.

          max_players int

          The maximum amount of players which can login to this server.

          minecraft_version str

          Gets the Minecraft version that this server is running.

          name str

          Gets the name of this server implementation.

          online_mode bool

          Gets whether the Server is in online mode or not.

          online_players list[Player]

          Gets a list of all currently online players.

          plugin_manager PluginManager

          Gets the plugin manager for interfacing with plugins.

          scheduler Scheduler

          Gets the scheduler for managing scheduled events.

          scoreboard Scoreboard

          Gets the primary Scoreboard controlled by the server.

          start_time datetime

          Gets the start time of the server.

          version str

          Gets the version of this server implementation.

          "},{"location":"reference/python/server/#endstone.Server.average_mspt","title":"average_mspt property","text":"
          average_mspt: float\n

          Gets the average milliseconds per tick (MSPT).

          "},{"location":"reference/python/server/#endstone.Server.average_tick_usage","title":"average_tick_usage property","text":"
          average_tick_usage: float\n

          Gets the average tick usage of the server.

          "},{"location":"reference/python/server/#endstone.Server.average_tps","title":"average_tps property","text":"
          average_tps: float\n

          Gets the average ticks per second (TPS).

          "},{"location":"reference/python/server/#endstone.Server.command_sender","title":"command_sender property","text":"
          command_sender: ConsoleCommandSender\n

          Gets a CommandSender for this server.

          "},{"location":"reference/python/server/#endstone.Server.current_mspt","title":"current_mspt property","text":"
          current_mspt: float\n

          Gets the current milliseconds per tick (MSPT).

          "},{"location":"reference/python/server/#endstone.Server.current_tick_usage","title":"current_tick_usage property","text":"
          current_tick_usage: float\n

          Gets the current tick usage of the server.

          "},{"location":"reference/python/server/#endstone.Server.current_tps","title":"current_tps property","text":"
          current_tps: float\n

          Gets the current ticks per second (TPS).

          "},{"location":"reference/python/server/#endstone.Server.language","title":"language property","text":"
          language: Language\n

          Gets the current language interface used by the server.

          "},{"location":"reference/python/server/#endstone.Server.level","title":"level property","text":"
          level: Level\n

          Gets the server level.

          "},{"location":"reference/python/server/#endstone.Server.logger","title":"logger property","text":"
          logger: Logger\n

          Returns the primary logger associated with this server instance.

          "},{"location":"reference/python/server/#endstone.Server.max_players","title":"max_players property writable","text":"
          max_players: int\n

          The maximum amount of players which can login to this server.

          "},{"location":"reference/python/server/#endstone.Server.minecraft_version","title":"minecraft_version property","text":"
          minecraft_version: str\n

          Gets the Minecraft version that this server is running.

          "},{"location":"reference/python/server/#endstone.Server.name","title":"name property","text":"
          name: str\n

          Gets the name of this server implementation.

          "},{"location":"reference/python/server/#endstone.Server.online_mode","title":"online_mode property","text":"
          online_mode: bool\n

          Gets whether the Server is in online mode or not.

          "},{"location":"reference/python/server/#endstone.Server.online_players","title":"online_players property","text":"
          online_players: list[Player]\n

          Gets a list of all currently online players.

          "},{"location":"reference/python/server/#endstone.Server.plugin_manager","title":"plugin_manager property","text":"
          plugin_manager: PluginManager\n

          Gets the plugin manager for interfacing with plugins.

          "},{"location":"reference/python/server/#endstone.Server.scheduler","title":"scheduler property","text":"
          scheduler: Scheduler\n

          Gets the scheduler for managing scheduled events.

          "},{"location":"reference/python/server/#endstone.Server.scoreboard","title":"scoreboard property","text":"
          scoreboard: Scoreboard\n

          Gets the primary Scoreboard controlled by the server.

          "},{"location":"reference/python/server/#endstone.Server.start_time","title":"start_time property","text":"
          start_time: datetime\n

          Gets the start time of the server.

          "},{"location":"reference/python/server/#endstone.Server.version","title":"version property","text":"
          version: str\n

          Gets the version of this server implementation.

          "},{"location":"reference/python/server/#endstone.Server.broadcast","title":"broadcast","text":"
          broadcast(\n    message: str | Translatable, permission: str\n) -> None\n

          Broadcasts the specified message to every user with the given permission name.

          "},{"location":"reference/python/server/#endstone.Server.broadcast_message","title":"broadcast_message","text":"
          broadcast_message(message: str | Translatable) -> None\n

          Broadcasts the specified message to every user with permission endstone.broadcast.user

          "},{"location":"reference/python/server/#endstone.Server.create_block_data","title":"create_block_data","text":"
          create_block_data(\n    type: str,\n    block_states: dict[str, bool | str | int] | None = None,\n) -> BlockData\n

          Creates a new BlockData instance for the specified block type, with all properties initialized to defaults, except for those provided.

          "},{"location":"reference/python/server/#endstone.Server.create_boss_bar","title":"create_boss_bar","text":"
          create_boss_bar(\n    title: str,\n    color: BarColor,\n    style: BarStyle,\n    flags: list[BarFlag] | None = None,\n) -> BossBar\n

          Creates a boss bar instance to display to players. The progress defaults to 1.0.

          "},{"location":"reference/python/server/#endstone.Server.create_scoreboard","title":"create_scoreboard","text":"
          create_scoreboard() -> Scoreboard\n

          Creates a new Scoreboard to be tracked by the server.

          "},{"location":"reference/python/server/#endstone.Server.dispatch_command","title":"dispatch_command","text":"
          dispatch_command(\n    sender: CommandSender, command_line: str\n) -> bool\n

          Dispatches a command on this server, and executes it if found.

          "},{"location":"reference/python/server/#endstone.Server.get_player","title":"get_player","text":"
          get_player(name: str) -> Player\n

          Gets the player with the exact given name, case insensitive.

          get_player(unique_id: UUID) -> Player\n

          Gets the player with the given UUID.

          "},{"location":"reference/python/server/#endstone.Server.get_plugin_command","title":"get_plugin_command","text":"
          get_plugin_command(name: str) -> PluginCommand\n

          Gets a PluginCommand with the given name or alias.

          "},{"location":"reference/python/server/#endstone.Server.reload","title":"reload","text":"
          reload() -> None\n

          Reloads the server configuration, functions, scripts and plugins.

          "},{"location":"reference/python/server/#endstone.Server.reload_data","title":"reload_data","text":"
          reload_data() -> None\n

          Reload only the Minecraft data for the server.

          "},{"location":"reference/python/server/#endstone.Server.shutdown","title":"shutdown","text":"
          shutdown() -> None\n

          Shutdowns the server, stopping everything.

          "},{"location":"tutorials/create-your-first-plugin/","title":"Create your first plugin","text":""},{"location":"tutorials/create-your-first-plugin/#prerequisites","title":"Prerequisites","text":"Python C++

          To develop your first plugin with the Python API, you will have to install the following prerequisites:

          • JetBrains PyCharm
          • Python (>= 3.9)
          • endstone Python package

          To develop your first plugin with the C++ API, you will have to install the following prerequisites:

          • JetBrains CLion
          • CMake (>= 3.15)
          • C++ Compiler
            • Windows: Visual Studio 2017 or newer
            • Linux: LLVM Toolchain 5 or newer with Clang and libc++
          "},{"location":"tutorials/create-your-first-plugin/#create-a-new-project","title":"Create a new project","text":"Python C++

          When you start up PyCharm, you will see this welcome screen:

          Click on New Project

          Let's say you want to name your plugin MyPlugin. In Endstone plugin development, we follow the following naming convention:

          1. Use lower-case-with-dash for project name
          2. Prefix your project name with endstone-

          Hence, you should put endstone-my-plugin in the Name field.

          Then, in the Interpreter type, select Custom environment. Select Select existing, and set the path to where you previously installed endstone as stated in the prerequisites.

          Finally, click on Create. The PyCharm workspace will pop up and you will see this.

          Tip

          Endstone server requires its plugins to be installed in the same Python environment. A virtual environment is strongly recommended.

          When you start up CLion, you will see this welcome screen:

          Click on New Project

          In the side bar, select C++ Library. Select C++ 17 for Language standard. Select shared for Library type. Click on Create. The CLion workspace will pop up and you will see this.

          "},{"location":"tutorials/create-your-first-plugin/#check-your-dependencies","title":"Check your dependencies","text":"

          In the last step, you selected the existing interpreter where endstone package is installed. For now, that's the only dependency we need for a simple plugin. To check its installation, click on the icon on the side bar to open the terminal and type:

          pip show endstone\n

          You show see something like this:

          Name: endstone\nVersion: 0.4.2\nSummary: Endstone offers a plugin API for Bedrock Dedicated Servers, supporting both Python and C++.\nHome-page:\nAuthor:\nAuthor-email: Vincent Wu <magicdroidx@gmail.com>\nLicense: Apache License\n

          "},{"location":"tutorials/create-your-first-plugin/#create-pyprojecttoml","title":"Create pyproject.toml","text":"

          Modern Python packages can contain a pyproject.toml file, first introduced in PEP 518. This file contains build system requirements and information, which are used by pip to build the package.

          Now, right click on the project folder and select New > File to create a pyproject.toml.

          Copy the following content and paste into the file. pyproject.toml

          [build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"endstone-my-plugin\"\nversion = \"0.1.0\"\ndescription = \"My first Python plugin for Endstone servers!\"\n

          Notice

          The name field should always be the project name. It must start with endstone- which is enforced by the plugin loader. The name should also use lower-case-with-dash style.

          "},{"location":"tutorials/create-your-first-plugin/#file-structure","title":"File structure","text":"

          From the project view in the side bar, you will notice that CLion created a few files for us.

          • .clang-format: The configuration file for ClangFormat
          • CMakeLists.txt: The manifest file for CMake build system
          • library.cpp: Source file
          • library.h: Header file

          Delete library.cpp and library.h as we don't need them. You can keep the .clang-format and CMakeLists.txt.

          "},{"location":"tutorials/create-your-first-plugin/#update-cmakeliststxt","title":"Update CMakeLists.txt","text":"

          Now, open the CMakeLists.txt in the side bar and delete all the existing content. Then, copy and paste the following into your CMakeLists.txt.

          CMakeLists.txt
          cmake_minimum_required(VERSION 3.15)\n\nproject(my_plugin CXX)\n\nset(CMAKE_CXX_STANDARD 17)\nset(CMAKE_CXX_STANDARD_REQUIRED ON)\n\ninclude(FetchContent)\nFetchContent_Declare(\n    endstone\n    GIT_REPOSITORY https://github.com/EndstoneMC/endstone.git\n    GIT_TAG main #(1)!\n)\nFetchContent_MakeAvailable(endstone)\n
          1. This will use the latest development version of Endstone. Consider use a release tag (e.g. v0.4.0) instead of main.
          "},{"location":"tutorials/create-your-first-plugin/#create-the-main-plugin-class","title":"Create the main plugin class","text":"Python C++

          Now, right click on the project folder and select New > Directory to create a src directory.

          Right click on the src directory you just created and select Mark Directory as > Sources Root. You will notice the colour of the icon changes to blue.

          Right click again on the src directory and select New > Python Package to create a package for our plugin. Since my project name is endstone-my-plugin, I will name the package endstone_my_plugin.

          You should have something similar to this:

          Tip

          For Python packages, it is a common practice to use lower-case-with-dash for project name and lower_case_with_underscore for the package name. See PEP 8 for the style guide for Python.

          Right click on the package you just created and select New > Python File to create a my_plugin.py. Create a class named MyPlugin which extends the Plugin class from endstone.plugin.

          src/endstone_my_plugin/my_plugin.py
          from endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    pass\n

          Then, open the __init__.py under the same folder and import the MyPlugin class from the Python file and add it to the __all__ variable.

          src/endstone_my_plugin/__init__.py
          from endstone_my_plugin.my_plugin import MyPlugin\n\n__all__ = [\"MyPlugin\"]\n

          Now, create two files: src/my_plugin.cpp and include/my_plugin.h.

          Open CMakeLists.txt and add a new target.

          CMakeLists.txt
          cmake_minimum_required(VERSION 3.15)\n\nproject(my_plugin CXX)\n\nset(CMAKE_CXX_STANDARD 17)\nset(CMAKE_CXX_STANDARD_REQUIRED ON)\n\ninclude(FetchContent)\nFetchContent_Declare(\n    endstone\n    GIT_REPOSITORY https://github.com/EndstoneMC/endstone.git\n    GIT_TAG main\n)\nFetchContent_MakeAvailable(endstone)\n\nendstone_add_plugin(${PROJECT_NAME} src/my_plugin.cpp)\n

          You should have something similar to this:

          Open include/my_plugin.h and add a new class MyPlugin which extends the endstone::Plugin class.

          include/my_plugin.h
          #include <endstone/plugin/plugin.h>\n\nclass MyPlugin : public endstone::Plugin {};\n

          Then, in src/my_plugin.cpp, include the header file.

          src/my_plugin.cpp
          #include \"my_plugin.h\"\n
          "},{"location":"tutorials/create-your-first-plugin/#add-methods","title":"Add methods","text":"Python C++

          Now we want to override a few methods from the base class:

          • on_load: this will be called when the plugin is loaded by the server
          • on_enable: this will be called when the plugin is enabled
          • on_disable: this will be called when the plugin is disabled (e.g. during server shutdown)

          You can use the logger to log a message when the plugin is loaded, enabled and disabled like below:

          src/endstone_my_plugin/my_plugin.py
          from endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    def on_load(self) -> None:\n        self.logger.info(\"on_load is called!\")\n\n    def on_enable(self) -> None:\n        self.logger.info(\"on_enable is called!\")\n\n    def on_disable(self) -> None:\n        self.logger.info(\"on_disable is called!\")\n

          Now we want to override a few methods from the base class:

          • onLoad: this will be called when the plugin is loaded by the server
          • onEnable: this will be called when the plugin is enabled
          • onDisable: this will be called when the plugin is disabled (e.g. during server shutdown)

          You can use the logger to log a message when the plugin is loaded, enabled and disabled like below:

          include/my_plugin.h
          #include <endstone/plugin/plugin.h>\n\nclass MyPlugin : public endstone::Plugin {\npublic:\n    void onLoad() override\n    {\n        getLogger().info(\"onLoad is called\");\n    }\n\n    void onEnable() override\n    {\n        getLogger().info(\"onEnable is called\");\n    }\n\n    void onDisable() override\n    {\n        getLogger().info(\"onDisable is called\");\n    }\n};\n
          "},{"location":"tutorials/create-your-first-plugin/#configure-plugin-metadata","title":"Configure plugin metadata","text":"Python C++

          Now, the plugin is almost finished. Let's tell the server about our compatible API version.

          src/endstone_my_plugin/my_plugin.py
          from endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    api_version = \"0.4\"\n\n    def on_load(self) -> None:\n        self.logger.info(\"on_load is called!\")\n\n    def on_enable(self) -> None:\n        self.logger.info(\"on_enable is called!\")\n\n    def on_disable(self) -> None:\n        self.logger.info(\"on_disable is called!\")\n

          Lastly, to have the plugin discoverable by the server, you must specify an entry point in pyproject.toml.

          pyproject.toml
          [build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"endstone-my-plugin\"\nversion = \"0.1.0\"\ndescription = \"My first Python plugin for Endstone servers!\"\n\n[project.entry-points.\"endstone\"]\nmy-plugin = \"endstone_my_plugin:MyPlugin\"\n

          Notice

          For the entry point, the name must be the name of your project without the endstone- prefix. For example, our project name is endstone-my-plugin so the entry point's name should be my-plugin. The value is simply {module}:{class}.

          Now, the plugin is almost finished. Let's tell the server about our name, version, main class and the description.

          src/my_plugin.cpp
          #include \"my_plugin.h\"\n\nENDSTONE_PLUGIN(/*(1)!*/\"my_plugin\", /*(2)!*/\"0.1.0\", /*(3)!*/MyPlugin)\n{\n    description = \"My first C++ plugin for Endstone servers\";\n}\n
          1. This is the plugin name!
          2. This is the plugin version!
          3. This is the main class of the plugin!

          Notice

          For plugin name, it must contains only lowercase letters, numbers and underscores.

          "},{"location":"tutorials/install-your-plugin/","title":"Install your plugin","text":"

          Before installing your first plugin, you will need to build it.

          Python C++

          Click on the icon on the side bar to open the terminal and type:

          pip install pipx\npipx run build --wheel\n

          You should see something like this in your console:

          Then, copy the built wheel package endstone_my_plugin.whl under the dist folder to the plugins folder path/to/bedrock_server/plugins.

          Now, start your server again. You should see your plugin has been successfully loaded.

          Congratulations! You've made your first plugin for Endstone servers!

          Click on the menu icon on the top bar and select Build > Build Project to build your plugin.

          Then, copy the built shared library endstone_my_plugin.dll to the plugins folder path/to/bedrock_server/plugins.

          Now, start your server again. You should see your plugin has been successfully loaded.

          Congratulations! You've made your first plugin for Endstone servers!

          "},{"location":"tutorials/install-your-plugin/#development-mode-aka-editable-installs","title":"Development Mode (a.k.a Editable Installs)","text":"

          When creating a plugin, developers usually want to implement and test changes iteratively, before cutting a release and preparing a distribution archive. In normal circumstances this can be quite cumbersome and require the developers to continuously re-build and re-install the plugin.

          But we've got you! Endstone also allows developers to load the code under development directly from the project folder without having to copy the whl files to the plugins folder.

          To do so, you will need the activate the virtual environment. Please make sure Endstone is also installed inside the environment.

          Windows Linux
          . venv/Scripts/activate\n
          . venv/bin/activate\n

          You can now enter this \u201cdevelopment mode\u201d by performing an editable installation inside the virtual environment, using pip\u2019s -e/--editable flag, as shown below:

          (venv)
          pip install --editable .\n

          Now, if you change the source code on the disk, you can simply run the /reload command in Endstone and you change will be effective immediately.

          When you\u2019re done with a given development task, you can simply uninstall your package (as you would normally do with pip uninstall <package name>).

          "},{"location":"tutorials/publish-your-plugin/","title":"Publish your plugin","text":"

          Let's say you have finished all the work on the new release of your project, written the release notes, increased the version number, tagged the release and are ready to publish.

          "},{"location":"tutorials/publish-your-plugin/#install-twine","title":"Install twine","text":"

          You will need to install Twine if you haven't done so. Twine is a utility for publishing Python packages to PyPI and other repositories.

          pip install twine\n
          "},{"location":"tutorials/publish-your-plugin/#build-your-package","title":"Build your package","text":"

          Build your package is as simple as one line of command.

          pipx run build\n

          This will build the package in an isolated environment, generating a source-distribution and wheel in the dist/ directory.

          "},{"location":"tutorials/publish-your-plugin/#upload-to-testpypi","title":"Upload to TestPyPI","text":"

          Unlike PyPI, which is the actual index of all python packages, TestPyPI is a separate instance of the Python Package Index. It's a good place to try distribution tools and processes without affecting the real index.

          Because TestPyPI has a separate database from the live PyPI, you\u2019ll need a separate user account specifically for TestPyPI. Go to https://test.pypi.org/account/register/ to register your account.

          Once done, you can upload your distributions to TestPyPI using twine by specifying the --repository/-r flag:

          twine upload -r testpypi dist/*\n

          Twine will prompt for your API token or username and password.

          Tip

          For security reasons it is strongly recommended to create an API token instead of using your username and password when uploading a package to PyPI. If you haven\u2019t done so, create an API token on both PyPI and the TestPyPI. You will also be asked to choose the scope of this token, for now you can just leave the token unrestricted.

          "},{"location":"tutorials/publish-your-plugin/#upload-to-pypi","title":"Upload to PyPI","text":"

          Now if things looks right, you can upload to the actual Python Package Index - PyPI:

          twine upload -r pypi dist/*\n
          "},{"location":"tutorials/publish-your-plugin/#publish-using-github-actions-cicd-workflows","title":"Publish using GitHub Actions CI/CD workflows","text":"

          GitHub Actions CI/CD allows you to run a series of commands whenever an event occurs on the GitHub platform. This can be a great choice if you want your plugin be published to PyPI automatically whenever you created a release.

          For more information, please follow the instructions here.

          "},{"location":"tutorials/publish-your-plugin/#and-thats-it","title":"And that's it!","text":"

          Congratulations! If everything goes well, you should soon be able to see your plugin on https://pypi.org/project/<package name>.

          "},{"location":"tutorials/register-commands/","title":"Register commands","text":"

          In this section, we'll walk you through creating a simple command. By the end of this section, you'll have a basic understanding of how to define and register commands with Endstone.

          "},{"location":"tutorials/register-commands/#create-a-command","title":"Create a command","text":"

          Let's start with a simple command /hello that greets the command sender.

          Python C++ src/endstone_my_plugin/my_plugin.py
          from endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    api_version = \"0.4\"\n\n    commands = {\n        \"hello\": {\n            \"description\": \"Greet the command sender.\",\n            \"usages\": [\"/hello\"],\n        }\n    }\n\n    # ...\n
          src/my_plugin.cpp
          #include \"my_plugin.h\"\n\nENDSTONE_PLUGIN(\"my_plugin\", \"0.1.0\", MyPlugin)\n{\n    description = \"My first C++ plugin for Endstone servers\";\n\n    command(\"hello\")\n        .description(\"Greet the command sender.\")\n        .usages(\"/hello\");\n}\n

          And it's just as simple as that! You've just created a new command with description and usages.

          "},{"location":"tutorials/register-commands/#add-permissions","title":"Add permissions","text":"

          By the default, all the commands in endstone requires the operator permission to execute for security reasons. Since we are creating a simple command here, we might want to change its permission for everyone to use.

          Let's make the following changes to our code.

          Python C++ src/endstone_my_plugin/my_plugin.py
          from endstone.command import Command, CommandSender\nfrom endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    api_version = \"0.4\"\n\n    commands = {\n        \"hello\": {\n            \"description\": \"Greet the command sender.\",\n            \"usages\": [\"/hello\"],\n            \"permissions\": [\"my_plugin.command.hello\"],\n        }\n    }\n\n    permissions = {\n        \"my_plugin.command.hello\": {\n            \"description\": \"Allow users to use the /hello command.\",\n            \"default\": True, #(1)!\n        }\n    }\n\n    # ...\n
          1. See tips

          Tip

          The default field sets the permission level required for executing the command. Possible values are:

          • True: everyone can execute this command
          • False: on one can execute this command, unless explicitly granted the permission.
          • \"op\": only operators can execute this command
          • \"not_op\": only non-operators can execute this command
          src/my_plugin.cpp
          #include \"my_plugin.h\"\n\nENDSTONE_PLUGIN(\"my_plugin\", \"0.1.0\", MyPlugin)\n{\n    description = \"My first C++ plugin for Endstone servers\";\n\n    command(\"hello\")\n        .description(\"Greet the command sender.\")\n        .usages(\"/hello\")\n        .permissions(\"my_plugin.command.hello\");\n\n    permission(\"my_plugin.command.hello\")\n        .description(\"Allow users to use the /hello command.\")\n        .default_(endstone::PermissionDefault::True); /*(1)!*/\n}\n
          1. See tips

          Tip

          The default_ method sets the permission level required for executing the command. Possible values are:

          • endstone::PermissionDefault::True: everyone can execute this command
          • endstone::PermissionDefault::False: on one can execute this command, unless explicitly granted the permission.
          • endstone::PermissionDefault::Operator: only operators can execute this command
          • endstone::PermissionDefault::NotOperator: only non-operators can execute this command
          "},{"location":"tutorials/register-commands/#handle-the-commands","title":"Handle the commands","text":"

          Now, the next step is to handle the commands we just created. Let's say we want to send a \"Hello, World!\" greeting message to whoever execute this command. It's just a few more lines away from that.

          Python C++ src/endstone_my_plugin/my_plugin.py
          from endstone.command import Command, CommandSender\nfrom endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    api_version = \"0.4\"\n\n    commands = {\n        \"hello\": {\n            \"description\": \"Greet the command sender.\",\n            \"usages\": [\"/hello\"],\n            \"permissions\": [\"my_plugin.command.hello\"],\n        }\n    }\n\n    permissions = {\n        \"my_plugin.command.hello\": {\n            \"description\": \"Allow users to use the /hello command.\",\n            \"default\": True,\n        }\n    }\n\n    def on_command(self, sender: CommandSender, command: Command, args: list[str]) -> bool:\n        if command.name == \"hello\":\n            sender.send_message(\"Hello World!\")\n\n        return True\n\n    # ...\n
          include/my_plugin.h
          #include <endstone/plugin/plugin.h>\n\nclass MyPlugin : public endstone::Plugin {\npublic:\n    bool onCommand(endstone::CommandSender &sender, const endstone::Command &command, const std::vector<std::string> &args) override\n    {\n        if (command.getName() == \"hello\") \n        {\n            sender.sendMessage(\"Hello World!\");\n        }\n        return true;\n    }\n\n    // ...\n};\n

          Now, install your plugin and restart your server. Join the game and type /help hello. You should see the usage information, which indicates that our command has been successfully added to the game!

          Now, type /hello, and you should receive the message \"Hello World!\".

          "},{"location":"tutorials/register-commands/#add-parameters-to-commands","title":"Add parameters to commands","text":"

          Now, let's say we want to send a custom message to greet the sender instead of \"Hello World!\". We can add a parameter to the command that accepts a message.

          In Endstone, there are two basic kinds of parameters:

          Kind Description Syntax Mandatory This parameter must be provided <name: type> Optional This parameter is optional and can be omitted [name: type]

          Let's change our code to add an optional parameter msg with message type. Based on the table above, the syntax should be [msg: message]. Let's add it to our code.

          Python C++ src/endstone_my_plugin/my_plugin.py
          from endstone.command import Command, CommandSender\nfrom endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    api_version = \"0.4\"\n\n    commands = {\n        \"hello\": {\n            \"description\": \"Greet the command sender.\",\n            \"usages\": [\"/hello [msg: message]\"],\n            \"permissions\": [\"my_plugin.command.hello\"],\n        }\n    }\n\n    permissions = {\n        \"my_plugin.command.hello\": {\n            \"description\": \"Allow users to use the /hello command.\",\n            \"default\": True,\n        }\n    }\n\n    def on_command(self, sender: CommandSender, command: Command, args: list[str]) -> bool:\n        if command.name == \"hello\":\n            if len(args) == 0: #(1)!\n                sender.send_message(\"Hello World!\")\n            else:\n                sender.send_message(args[0])\n\n        return True\n\n    # ...\n
          1. Here, we checked if the optional parameter is provided.
          src/my_plugin.cpp
          #include \"my_plugin.h\"\n\nENDSTONE_PLUGIN(\"my_plugin\", \"0.1.0\", MyPlugin)\n{\n    description = \"My first C++ plugin for Endstone servers\";\n\n    command(\"hello\")\n        .description(\"Greet the command sender.\")\n        .usages(\"/hello [msg: message]\")\n        .permissions(\"my_plugin.command.hello\");\n\n    permission(\"my_plugin.command.hello\")\n        .description(\"Allow users to use the /hello command.\")\n        .default_(endstone::PermissionDefault::True);\n}\n
          include/my_plugin.h
          #include <endstone/plugin/plugin.h>\n\nclass MyPlugin : public endstone::Plugin {\npublic:\n    bool onCommand(endstone::CommandSender &sender, const endstone::Command &command, const std::vector<std::string> &args) override\n    {\n        if (command.getName() == \"hello\") \n        {\n            if (args.empty()) {\n                sender.sendMessage(\"Hello World!\");\n            }\n            else {\n                sender.sendMessage(args[0]);\n            }\n        }\n        return true;\n    }\n\n    // ...\n};\n

          And it's done! Now when the users use /hello This is my message!, \"This is my message!\" will be shown to them instead of \"Hello World!\".

          Tip

          To make the parameter mandatory, change the parameter from [msg: message] to <msg: message>

          "},{"location":"tutorials/register-commands/#built-in-types","title":"Built-in types","text":"

          In the section above, we added a parameter with type message which is a built-in type supported by Endstone. Here is a full list of all built-in types currently supported.

          Type Alias Description Possible Value int Represents an integer 10 float Represents a floating point number 3.14 bool Represents a boolean true target actor, entity, player Represents a target selector @e, @r, PlayerName str string Represents a string, terminated by space Hello block_pos vec3i Represents a 3-Dimensionalinteger position 1 2 3 pos vec3, vec3f Represents a 3-Dimensional float position 1.0 2.0 3.0 message Represents a message with everything until end of line Hello World! json Represents a JSON string {\"key\": \"value\"} block Represents a block type wood block_states Represents the block states [\"wood_type\"=\"birch\",\"stripped_bit\"=true]"},{"location":"tutorials/register-commands/#user-defined-enum-types","title":"User-defined enum types","text":"

          Enum Types can be used to represent a set of predefined string constants. This behavior is similar to how literal types function in modern programming languages such as Node.js and Python. Enum types provide a way to define a \"type\" comprised of a set of named constants, referred to as the enumeration, or in short, \"enum\".

          Endstone allows developer to add their own enums. The basic syntax follows the pattern:

          • Mandatory: (value1|value2|value3)<name: EnumType>
          • Optional: (value1|value2|value3)[name: EnumType]

          Here, all possible values, separated by the pipeline operator |, are scoped inside the parentheses (), followed by the parameter kind, name and type.

          Example

          An example of using enum types in command usages is: /home (add|list|del)<action: HomeAction>

          In this example, the parameter is named action and has a user-defined enum type HomeAction. When using the command, the user must select one of the specified action from the set: add, list, or del.

          "},{"location":"tutorials/register-event-listeners/","title":"Register event listeners","text":"

          Endstone provides a powerful event system that allows plugins to listen to various events that happen in the server. Let's walk you through registering a simple event listener.

          "},{"location":"tutorials/register-event-listeners/#add-event-handlers","title":"Add event handlers","text":"

          Let's say your plugin want to listen to when a player joins the server and send a message to inform everyone on the server.

          Python C++ src/endstone_my_plugin/my_plugin.py
          from endstone import ColorFormat\nfrom endstone.event import event_handler, PlayerJoinEvent\nfrom endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    api_version = \"0.4\"\n\n    # ...\n\n    def on_enable(self) -> None:\n        self.logger.info(\"on_enable is called!\")\n\n    @event_handler\n    def on_player_join(self, event: PlayerJoinEvent):\n        self.server.broadcast_message(ColorFormat.YELLOW + f\"{event.player.name} has joined the server\")\n
          include/my_plugin.h
          #include <endstone/color_format.h>\n#include <endstone/event/player/player_join_event.h>\n#include <endstone/plugin/plugin.h>\n\nclass MyPlugin : public endstone::Plugin {\npublic:\n    // ...\n\n    void onEnable() override\n    {\n        getLogger().info(\"onEnable is called\");\n    }\n\n    void onPlayerJoin(endstone::PlayerJoinEvent& event)\n    {\n        getServer().broadcastMessage(ColorFormat::Yellow + \"{} has joined the server\", event.getPlayer().getName());\n    }\n};\n
          "},{"location":"tutorials/register-event-listeners/#register-listeners","title":"Register listeners","text":"

          Now, we need to register our event handlers to the Endstone event system.

          Python C++ src/endstone_my_plugin/my_plugin.py
          from endstone import ColorFormat\nfrom endstone.event import event_handler, PlayerJoinEvent\nfrom endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    api_version = \"0.4\"\n\n    # ...\n\n    def on_enable(self) -> None:\n        self.logger.info(\"on_enable is called!\")\n        self.register_events(self)\n\n    @event_handler\n    def on_player_join(self, event: PlayerJoinEvent):\n        self.server.broadcast_message(ColorFormat.YELLOW + f\"{event.player.name} has joined the server\")\n

          By calling self.register_events, Endstone will look into the object that is passed in as the argument and register all handlers with a @event_handler decorator to the event system.

          include/my_plugin.h
          #include <endstone/color_format.h>\n#include <endstone/event/player/player_join_event.h>\n#include <endstone/plugin/plugin.h>\n\nclass MyPlugin : public endstone::Plugin {\npublic:\n    // ...\n\n    void onEnable() override\n    {\n        getLogger().info(\"onEnable is called\");\n        registerEvent(&MyPlugin::onPlayerJoin, *this);\n    }\n\n    void onPlayerJoin(endstone::PlayerJoinEvent& event)\n    {\n        getServer().broadcastMessage(ColorFormat::Yellow + \"{} has joined the server\", event.getPlayer().getName());\n    }\n};\n

          And that's it! Your plugin should now listen to and handle events when player joins. Remember, you can add as many methods as you want to listen to any event.

          "},{"location":"tutorials/schedule-tasks/","title":"Schedule tasks","text":"

          Endstone provides a task scheduling system that allows plugins to schedule tasks for future execution, possibly at regular intervals. In this tutorial, we'll guide you on scheduling a straightforward task.

          Here, we want an on-screen popup displaying \"Hi!\" to appear for every online player at a 1-second interval.

          Python C++ src/endstone_my_plugin/my_plugin.py
          from endstone.plugin import Plugin\n\nclass MyPlugin(Plugin):\n    api_version = \"0.4\"\n\n    # ...\n\n    def on_enable(self) -> None:\n        self.logger.info(\"on_enable is called!\")\n        self.server.scheduler.run_task(self, self.say_hi, delay=0, period=20)\n\n    def say_hi(self) -> None:\n        for player in self.server.online_players:\n            player.send_popup(\"Hi!\")\n
          include/my_plugin.h
          #include <endstone/plugin/plugin.h>\n\nclass MyPlugin : public endstone::Plugin {\npublic:\n    // ...\n\n    void onEnable() override\n    {\n        getLogger().info(\"onEnable is called\");\n        getServer().getScheduler().runTaskTimer([&]() { sayHi(); }, 0, 20);\n    }\n\n    void sayHi()\n    {\n        for (auto& player : getServer().getOnlinePlayers())\n        {\n            player->sendPopup(\"Hi\");\n        }\n    }\n};\n

          And that's it! The server will now send a \"Hi\" message to all players online at an interval of 20 ticks or approximately every second.

          "},{"location":"tutorials/use-color-codes/","title":"Use color codes","text":"

          Color codes are used to customize the color and formatting of text in the game, such as on signs, in chat, in titles, in forms and more. These color codes are represented by the section sign (\u00a7) followed by a character. Each character represents a different color or formatting option. Endstone wants to make it easy to use them, that is why an easy to use api is provided.

          "},{"location":"tutorials/use-color-codes/#usage","title":"Usage","text":"Python C++

          This code shows how easy it is to use colored text in endstone:

          from endstone import ColorFormat\n\nmy_beautiful_text = f\"This is {ColorFormat.YELLOW}yellow, {ColorFormat.AQUA}aqua and {ColorFormat.GOLD}gold{ColorFormat.RESET}.\"\n

          Pythons f-strings are awesome.

          Tip

          Don't forget to end the colored text with ColorFormat.RESET, it ends all extra color format options and resets them.

          This code shows how easy it is to use colored text in endstone:

          #include <endstone/color_format.h>\n\nauto my_beautiful_text = \"This is \" + endstone::ColorFormat::DarkGreen + \"dark green.\" + endstone::ColorFormat::Reset;\n

          Tip

          Don't forget to end the colored text with endstone::ColorFormat::Reset, it ends all extra color format options and resets them.

          "},{"location":"tutorials/use-color-codes/#all-color-and-format-codes","title":"All color and format codes","text":"Code Name \u00a70 black \u00a71 dark_blue \u00a72 dark_green \u00a73 dark_aqua \u00a74 dark_red \u00a75 dark_purple \u00a76 gold \u00a77 gray \u00a78 dark_gray \u00a79 blue \u00a7a green \u00a7b aqua \u00a7c red \u00a7d light_purple \u00a7e yellow \u00a7f white \u00a7g minecoin_gold \u00a7h material_quartz \u00a7i material_iron \u00a7j material_netherite \u00a7k obfuscated \u00a7l bold \u00a7m material_redstone \u00a7n material_copper \u00a7o italic \u00a7p material_gold \u00a7q material_emerald \u00a7r reset \u00a7s material_diamond \u00a7t material_lapis \u00a7u material_amethyst"},{"location":"reference/cpp/annotated/","title":"Class List","text":"

          Here are the classes, structs, unions and interfaces with brief descriptions:

          • namespace endstone
            • class ActionForm Represents a form with buttons that let the player take action.
              • class Button Represents a button with text and an optional icon.
            • class Actor Represents a base actor in the level.
            • class ActorDeathEvent Called when an Actor dies.
            • class ActorEvent Represents an Actor-related event.
            • class ActorKnockbackEvent Called when a living entity receives knockback.
            • class ActorRemoveEvent Called when an Actor is removed.
            • class ActorSpawnEvent Called when an Actor is spawned into a world.
            • class ActorTeleportEvent Called when a non-player entity is teleported from one location to another.
            • class BanList A class that represents a ban list, containing bans of some target type.
            • class Block Represents a block.
            • class BlockBreakEvent Called when a block is broken by a player.
            • class BlockData Represents the data related to a live block.
            • class BlockEvent Represents an Block-related event.
            • class BlockPlaceEvent Called when a block is placed by a player.
            • class BlockState Represents a captured state of a block, which will not update automatically.
            • class BossBar Represents a boss bar that is displayed to players.
            • class BroadcastMessageEvent Event triggered for server broadcast messages such as fromServer::broadcast .
            • struct ColorFormat All supported color and format codes.
            • class Command Represents a Command , which executes various tasks upon user input.
            • class CommandExecutor Represents a class which contains a single method for executing commands.
            • class CommandMap Represents a command map that manages all commands of the Server .
            • class CommandSender Represents a command sender.
            • class CommandSenderWrapper Represents a wrapper that forwards commands to the wrapped CommandSender and captures its output.
            • class ConsoleCommandSender Represents a console command sender.
            • class Criteria Represents a scoreboard criteria.
            • class Dimension Represents a dimension within a Level .
            • class Dropdown Represents a dropdown with a set of predefined options.
            • class Error Represents an error with a message and the stack trace.
            • class Event Represents an event.
            • class EventHandler Represents a registered EventHandler which associates with aPlugin .
            • class Form Represents a generic form.
            • class HandlerList A list of event handlers. Should be instantiated on a per-event basis.
            • class Inventory Interface to the various inventories.
            • class ItemStack Represents a stack of items.
            • class Label Represents a text label.
            • class Language Represents the interface for translating text into different languages.
            • class Level Represents a level, which may contain actors, chunks and blocks.
            • class Location Represents a 3-dimensional location in a dimension within a level.
            • class Logger Logger class which can format and output varies levels of logs.
            • class MessageForm Represents a form with two buttons.
            • class Mob Represents a mobile entity (i.e. living entity), such as a monster or player.
            • class ModalForm Represents a modal form with controls.
            • class Objective Represents an objective on a scoreboard that can show scores specific to entries.
            • class Packet Represents a packet.
            • class Permissible Represents an object that may become a server operator and can be assigned permissions.
            • class Permission Represents a unique permission that may be attached to a Permissible .
            • class PermissionAttachment Holds information about a permission attachment on a Permissible object.
            • class PermissionAttachmentInfo Holds information on a permission and which PermissionAttachment provides it.
            • class Player Represents a player.
            • class PlayerChatEvent Called when a player sends a chat message.
            • class PlayerCommandEvent Called whenever a player runs a command.
            • class PlayerDeathEvent Called when a Player dies.
            • class PlayerEvent Represents a player related event.
            • class PlayerInteractActorEvent Represents an event that is called when a player right-clicks an actor.
            • class PlayerInteractEvent Represents an event that is called when a player right-clicks a block.
            • class PlayerInventory Interface to the inventory of a Player , including the four armor slots and any extra slots.
            • class PlayerJoinEvent Called when a player joins a server.
            • class PlayerKickEvent Called when a player gets kicked from the server.
            • class PlayerLoginEvent Called when a player attempts to login in.
            • class PlayerQuitEvent Called when a player leaves a server.
            • class PlayerTeleportEvent Called when a player is teleported from one location to another.
            • class Plugin Represents a Plugin .
            • class PluginCommand Represents a Command belonging to aPlugin .
            • class PluginDescription Represents the basic information about a plugin that the plugin loader needs to know.
            • class PluginDisableEvent Called when a plugin is disabled.
            • class PluginEnableEvent Called when a plugin is enabled.
            • class PluginLoader Represents a plugin loader, which handles direct access to specific types of plugins.
            • class PluginManager Represents a plugin manager that handles all plugins from the Server .
            • class Position Represents a 3-dimensional position in a dimension within a level.
            • class ProxiedCommandSender Interface for proxied command sender.
            • class Scheduler Represents a scheduler that executes various tasks.
            • class Score Represents a score for an objective on a scoreboard.
            • class Scoreboard Represents a scoreboard.
            • class ScriptMessageEvent Called when a message is sent by /scriptevent command.
            • class Server Represents a server implementation.
            • class ServerCommandEvent Called when the console runs a command, early in the process.
            • class ServerEvent Represents an Server-related event.
            • class ServerListPingEvent Called when a server ping is coming in.
            • class ServerLoadEvent Called when either the server startup or reload has completed.
            • class Skin Represents a player skin.
              • struct ImageData
            • class Slider Represents a slider with a label.
            • class SocketAddress Represents an IP Socket Address (hostname + port number).
            • class SpawnParticleEffectPacket Represents a packet for spawning a particle effect.
            • class StepSlider Represents a step slider with a set of predefined options.
            • class Task Represents a task being executed by the scheduler.
            • class TextInput Represents a text input field.
            • class ThunderChangeEvent Called when the thunder state in a world is changing.
            • class Toggle Represents a toggle button with a label.
            • class Translatable Represents an object with a text representation that can be translated by the Minecraft client.
            • class UUID Implementation of Universally Unique Identifier ( UUID )
            • class Vector Represents a 3-dimensional vector.
            • class WeatherChangeEvent Called when the weather (rain) state in a world is changing.
            • class WeatherEvent Represents a Weather-related event.
            • namespace detail
            • struct overloaded Helper type for visitors.
          • namespace fmt
            • struct formatter< endstone::Block >
            • struct formatter< endstone::BlockData >
            • struct formatter< endstone::BlockState >
            • struct formatter< endstone::BlockStates >
            • struct formatter< endstone::BlockStates::mapped_type >
            • struct formatter< endstone::BlockStates::value_type >
            • struct formatter< endstone::ItemStack >
          • namespace std
            • struct hash< endstone::UUID >
          "},{"location":"reference/cpp/files/","title":"File List","text":"

          Here is a list of all files with brief descriptions:

          • dir include
            • dir endstone
              • file color_format.h
              • file endstone.h
              • file game_mode.h
              • dir actor
                • file actor.h
                • file mob.h
              • dir ban
                • file ban_list.h
              • dir block
                • file block.h
                • file block_data.h
                • file block_face.h
                • file block_state.h
              • dir boss
                • file bar_color.h
                • file bar_flag.h
                • file bar_style.h
                • file boss_bar.h
              • dir command
                • file command.h
                • file command_executor.h
                • file command_map.h
                • file command_sender.h
                • file command_sender_wrapper.h
                • file console_command_sender.h
                • file plugin_command.h
                • file proxied_command_sender.h
              • dir event
                • file event.h
                • file event_handler.h
                • file event_priority.h
                • file handler_list.h
                • dir actor
                  • file actor_death_event.h
                  • file actor_event.h
                  • file actor_knockback_event.h
                  • file actor_remove_event.h
                  • file actor_spawn_event.h
                  • file actor_teleport_event.h
                • dir block
                  • file block_break_event.h
                  • file block_event.h
                  • file block_place_event.h
                • dir player
                  • file player_chat_event.h
                  • file player_command_event.h
                  • file player_death_event.h
                  • file player_event.h
                  • file player_interact_actor_event.h
                  • file player_interact_event.h
                  • file player_join_event.h
                  • file player_kick_event.h
                  • file player_login_event.h
                  • file player_quit_event.h
                  • file player_teleport_event.h
                • dir server
                  • file broadcast_message_event.h
                  • file plugin_disable_event.h
                  • file plugin_enable_event.h
                  • file script_message_event.h
                  • file server_command_event.h
                  • file server_event.h
                  • file server_list_ping_event.h
                  • file server_load_event.h
                • dir weather
                  • file thunder_change_event.h
                  • file weather_change_event.h
                  • file weather_event.h
              • dir form
                • file action_form.h
                • file form.h
                • dir controls
                  • file dropdown.h
                  • file label.h
                  • file slider.h
                  • file step_slider.h
                  • file text_input.h
                  • file toggle.h
                • file message_form.h
                • file modal_form.h
              • dir inventory
                • file inventory.h
                • file item_stack.h
                • file player_inventory.h
              • dir lang
                • file language.h
                • file translatable.h
              • dir level
                • file dimension.h
                • file level.h
                • file location.h
                • file position.h
              • dir network
                • file packet.h
                • file packet_type.h
                • file spawn_particle_effect_packet.h
              • dir permissions
                • file permissible.h
                • file permission.h
                • file permission_attachment.h
                • file permission_attachment_info.h
                • file permission_default.h
              • dir plugin
                • file plugin.h
                • file plugin_description.h
                • file plugin_load_order.h
                • file plugin_loader.h
                • file plugin_manager.h
              • dir scheduler
                • file scheduler.h
                • file task.h
              • dir scoreboard
                • file criteria.h
                • file display_slot.h
                • file objective.h
                • file objective_sort_order.h
                • file render_type.h
                • file score.h
                • file score_entry.h
                • file scoreboard.h
              • dir util
                • file error.h
                • file result.h
                • file socket_address.h
                • file uuid.h
                • file vector.h
              • file logger.h
              • file message.h
              • file player.h
              • file server.h
              • file skin.h
          "},{"location":"reference/cpp/namespaceendstone/","title":"Namespace endstone","text":"

          Namespace List > endstone

          "},{"location":"reference/cpp/namespaceendstone/#namespaces","title":"Namespaces","text":"Type Name namespace detail"},{"location":"reference/cpp/namespaceendstone/#classes","title":"Classes","text":"Type Name class ActionForm Represents a form with buttons that let the player take action. class Actor Represents a base actor in the level. class ActorDeathEvent Called when an Actor dies. class ActorEvent Represents an Actor-related event. class ActorKnockbackEvent Called when a living entity receives knockback. class ActorRemoveEvent Called when an Actor is removed. class ActorSpawnEvent Called when an Actor is spawned into a world. class ActorTeleportEvent Called when a non-player entity is teleported from one location to another. class BanList <typename T>A class that represents a ban list, containing bans of some target type. class Block Represents a block. class BlockBreakEvent Called when a block is broken by a player. class BlockData Represents the data related to a live block. class BlockEvent Represents an Block-related event. class BlockPlaceEvent Called when a block is placed by a player. class BlockState Represents a captured state of a block, which will not update automatically. class BossBar Represents a boss bar that is displayed to players. class BroadcastMessageEvent Event triggered for server broadcast messages such as fromServer::broadcast . struct ColorFormat All supported color and format codes. class Command Represents a Command , which executes various tasks upon user input. class CommandExecutor Represents a class which contains a single method for executing commands. class CommandMap Represents a command map that manages all commands of the Server . class CommandSender Represents a command sender. class CommandSenderWrapper Represents a wrapper that forwards commands to the wrapped CommandSender and captures its output. class ConsoleCommandSender Represents a console command sender. class Criteria Represents a scoreboard criteria. class Dimension Represents a dimension within a Level . class Dropdown Represents a dropdown with a set of predefined options. class Error Represents an error with a message and the stack trace. class Event Represents an event. class EventHandler Represents a registered EventHandler which associates with aPlugin . class Form <typename T>Represents a generic form. class HandlerList A list of event handlers. Should be instantiated on a per-event basis. class Inventory Interface to the various inventories. class ItemStack Represents a stack of items. class Label Represents a text label. class Language Represents the interface for translating text into different languages. class Level Represents a level, which may contain actors, chunks and blocks. class Location Represents a 3-dimensional location in a dimension within a level. class Logger Logger class which can format and output varies levels of logs. class MessageForm Represents a form with two buttons. class Mob Represents a mobile entity (i.e. living entity), such as a monster or player. class ModalForm Represents a modal form with controls. class Objective Represents an objective on a scoreboard that can show scores specific to entries. class Packet Represents a packet. class Permissible Represents an object that may become a server operator and can be assigned permissions. class Permission Represents a unique permission that may be attached to a Permissible . class PermissionAttachment Holds information about a permission attachment on a Permissible object. class PermissionAttachmentInfo Holds information on a permission and which PermissionAttachment provides it. class Player Represents a player. class PlayerChatEvent Called when a player sends a chat message. class PlayerCommandEvent Called whenever a player runs a command. class PlayerDeathEvent Called when a Player dies. class PlayerEvent Represents a player related event. class PlayerInteractActorEvent Represents an event that is called when a player right-clicks an actor. class PlayerInteractEvent Represents an event that is called when a player right-clicks a block. class PlayerInventory Interface to the inventory of a Player , including the four armor slots and any extra slots. class PlayerJoinEvent Called when a player joins a server. class PlayerKickEvent Called when a player gets kicked from the server. class PlayerLoginEvent Called when a player attempts to login in. class PlayerQuitEvent Called when a player leaves a server. class PlayerTeleportEvent Called when a player is teleported from one location to another. class Plugin Represents a Plugin . class PluginCommand Represents a Command belonging to aPlugin . class PluginDescription Represents the basic information about a plugin that the plugin loader needs to know. class PluginDisableEvent Called when a plugin is disabled. class PluginEnableEvent Called when a plugin is enabled. class PluginLoader Represents a plugin loader, which handles direct access to specific types of plugins. class PluginManager Represents a plugin manager that handles all plugins from the Server . class Position Represents a 3-dimensional position in a dimension within a level. class ProxiedCommandSender Interface for proxied command sender. class Scheduler Represents a scheduler that executes various tasks. class Score Represents a score for an objective on a scoreboard. class Scoreboard Represents a scoreboard. class ScriptMessageEvent Called when a message is sent by /scriptevent command. class Server Represents a server implementation. class ServerCommandEvent Called when the console runs a command, early in the process. class ServerEvent Represents an Server-related event. class ServerListPingEvent Called when a server ping is coming in. class ServerLoadEvent Called when either the server startup or reload has completed. class Skin Represents a player skin. class Slider Represents a slider with a label. class SocketAddress Represents an IP Socket Address (hostname + port number). class SpawnParticleEffectPacket Represents a packet for spawning a particle effect. class StepSlider Represents a step slider with a set of predefined options. class Task Represents a task being executed by the scheduler. class TextInput Represents a text input field. class ThunderChangeEvent Called when the thunder state in a world is changing. class Toggle Represents a toggle button with a label. class Translatable Represents an object with a text representation that can be translated by the Minecraft client. class UUID Implementation of Universally Unique Identifier ( UUID ) class Vector <typename T>Represents a 3-dimensional vector. class WeatherChangeEvent Called when the weather (rain) state in a world is changing. class WeatherEvent Represents a Weather-related event. struct overloaded <Func>Helper type for visitors."},{"location":"reference/cpp/namespaceendstone/#public-types","title":"Public Types","text":"Type Name enum BarColor enum BarFlag enum BarStyle enum BlockFace typedef std::unordered_map< std::string, std::variant< bool, std::string, int > > BlockStates enum DisplaySlot Locations for displaying objectives to the player. enum EventPriority Represents an event's priority in execution. enum GameMode Represents the various type of game modes that Players may have. typedef std::variant< std::string, Translatable > Message enum ObjectiveSortOrder Represents the sort order of objectives on a DisplaySlot. enum PacketType Represents the types of packets. enum PermissionDefault Represents the possible default values for permissions. typedef std::function< void(const PermissionAttachment &)> PermissionRemovedExecutor enum PluginLoadOrder Represents the order in which a plugin should be initialized and enabled. enum std::uint8_t RenderType Controls the way in which an Objective is rendered on the client side. typedef nonstd::expected< T, Error > Result typedef std::variant< Player *, Actor *, std::string > ScoreEntry typedef std::uint32_t TaskId"},{"location":"reference/cpp/namespaceendstone/#public-functions","title":"Public Functions","text":"Type Name std::size_t hash_value (UUID const & u) noexcept bool operator!= (UUID const & lhs, UUID const & rhs) noexcept bool operator< (UUID const & lhs, UUID const & rhs) noexcept bool operator<= (UUID const & lhs, UUID const & rhs) noexcept bool operator== (UUID const & lhs, UUID const & rhs) noexcept bool operator> (UUID const & lhs, UUID const & rhs) noexcept bool operator>= (UUID const & lhs, UUID const & rhs) noexcept overloaded (Func...) Deduction guide. void swap (UUID & lhs, UUID & rhs) noexcept"},{"location":"reference/cpp/namespaceendstone/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/namespaceendstone/#enum-barcolor","title":"enum BarColor","text":"
          enum endstone::BarColor {\n    Pink = 0,\n    Blue = 1,\n    Red = 2,\n    Green = 3,\n    Yellow = 4,\n    Purple = 5,\n    RebeccaPurple = 6,\n    White = 7\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-barflag","title":"enum BarFlag","text":"
          enum endstone::BarFlag {\n    DarkenSky,\n    Count\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-barstyle","title":"enum BarStyle","text":"
          enum endstone::BarStyle {\n    Solid,\n    Segmented6,\n    Segmented10,\n    Segmented12,\n    Segmented20\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-blockface","title":"enum BlockFace","text":"
          enum endstone::BlockFace {\n    Down,\n    Up,\n    North,\n    South,\n    West,\n    East\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#typedef-blockstates","title":"typedef BlockStates","text":"
          using endstone::BlockStates = typedef std::unordered_map<std::string, std::variant<bool, std::string, int> >;\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-displayslot","title":"enum DisplaySlot","text":"
          enum endstone::DisplaySlot {\n    BelowName,\n    PlayerList,\n    SideBar\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-eventpriority","title":"enum EventPriority","text":"

          Represents an event's priority in execution.

          enum endstone::EventPriority {\n    Lowest = 0,\n    Low = 1,\n    Normal = 2,\n    High = 3,\n    Highest = 4,\n    Monitor = 5\n};\n

          Listeners with lower priority are called first will listeners with higher priority are called last. Listeners are called in following order: LOWEST -> LOW -> NORMAL -> HIGH -> HIGHEST -> MONITOR

          "},{"location":"reference/cpp/namespaceendstone/#enum-gamemode","title":"enum GameMode","text":"
          enum endstone::GameMode {\n    Survival = 0,\n    Creative = 1,\n    Adventure = 2,\n    Spectator = 3\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#typedef-message","title":"typedef Message","text":"
          using endstone::Message = typedef std::variant<std::string, Translatable>;\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-objectivesortorder","title":"enum ObjectiveSortOrder","text":"
          enum endstone::ObjectiveSortOrder {\n    Ascending,\n    Descending\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-packettype","title":"enum PacketType","text":"
          enum endstone::PacketType {\n    SpawnParticleEffect = 118\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-permissiondefault","title":"enum PermissionDefault","text":"
          enum endstone::PermissionDefault {\n    True,\n    False,\n    Operator,\n    NotOperator\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#typedef-permissionremovedexecutor","title":"typedef PermissionRemovedExecutor","text":"
          using endstone::PermissionRemovedExecutor = typedef std::function<void(const PermissionAttachment &)>;\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-pluginloadorder","title":"enum PluginLoadOrder","text":"
          enum endstone::PluginLoadOrder {\n    Startup,\n    PostWorld\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#enum-rendertype","title":"enum RenderType","text":"
          enum endstone::RenderType {\n    Integer\n};\n
          "},{"location":"reference/cpp/namespaceendstone/#typedef-result","title":"typedef Result","text":"
          using endstone::Result = typedef nonstd::expected<T, Error>;\n
          "},{"location":"reference/cpp/namespaceendstone/#typedef-scoreentry","title":"typedef ScoreEntry","text":"
          using endstone::ScoreEntry = typedef std::variant<Player *, Actor *, std::string>;\n

          An entry for a score.

          "},{"location":"reference/cpp/namespaceendstone/#typedef-taskid","title":"typedef TaskId","text":"
          using endstone::TaskId = typedef std::uint32_t;\n
          "},{"location":"reference/cpp/namespaceendstone/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/namespaceendstone/#function-hash_value","title":"function hash_value","text":"
          inline std::size_t endstone::hash_value (\n    UUID const & u\n) noexcept\n
          "},{"location":"reference/cpp/namespaceendstone/#function-operator","title":"function operator!=","text":"
          inline bool endstone::operator!= (\n    UUID const & lhs,\n    UUID const & rhs\n) noexcept\n
          "},{"location":"reference/cpp/namespaceendstone/#function-operator_1","title":"function operator<","text":"
          inline bool endstone::operator< (\n    UUID const & lhs,\n    UUID const & rhs\n) noexcept\n
          "},{"location":"reference/cpp/namespaceendstone/#function-operator_2","title":"function operator<=","text":"
          inline bool endstone::operator<= (\n    UUID const & lhs,\n    UUID const & rhs\n) noexcept\n
          "},{"location":"reference/cpp/namespaceendstone/#function-operator_3","title":"function operator==","text":"
          inline bool endstone::operator== (\n    UUID const & lhs,\n    UUID const & rhs\n) noexcept\n
          "},{"location":"reference/cpp/namespaceendstone/#function-operator_4","title":"function operator>","text":"
          inline bool endstone::operator> (\n    UUID const & lhs,\n    UUID const & rhs\n) noexcept\n
          "},{"location":"reference/cpp/namespaceendstone/#function-operator_5","title":"function operator>=","text":"
          inline bool endstone::operator>= (\n    UUID const & lhs,\n    UUID const & rhs\n) noexcept\n
          "},{"location":"reference/cpp/namespaceendstone/#function-overloaded","title":"function overloaded","text":"

          Deduction guide.

          template<typename... Func>\nendstone::overloaded (\n    Func...\n) \n

          Template parameters:

          • Func Types of function objects.
          "},{"location":"reference/cpp/namespaceendstone/#function-swap","title":"function swap","text":"
          inline void endstone::swap (\n    UUID & lhs,\n    UUID & rhs\n) noexcept\n

          The documentation for this class was generated from the following file include/endstone/actor/actor.h

          "},{"location":"reference/cpp/classendstone_1_1ActionForm/","title":"Class endstone::ActionForm","text":"

          ClassList > endstone > ActionForm

          Represents a form with buttons that let the player take action.

          • #include <endstone/form/action_form.h>

          Inherits the following classes: endstone::Form

          "},{"location":"reference/cpp/classendstone_1_1ActionForm/#classes","title":"Classes","text":"Type Name class Button Represents a button with text and an optional icon."},{"location":"reference/cpp/classendstone_1_1ActionForm/#public-types","title":"Public Types","text":"Type Name typedef std::function< void(Player *, int)> OnSubmitCallback"},{"location":"reference/cpp/classendstone_1_1ActionForm/#public-types-inherited-from-endstoneform","title":"Public Types inherited from endstone::Form","text":"

          See endstone::Form

          Type Name typedef std::function< void(Player *)> OnCloseCallback"},{"location":"reference/cpp/classendstone_1_1ActionForm/#public-functions","title":"Public Functions","text":"Type Name ActionForm () = default ActionForm & addButton (const Message & text, const std::optional< std::string > & icon=std::nullopt, Button::OnClickCallback on_click={}) Adds a button to the form. const std::vector< Button > & getButtons () constGet the buttons of the action form. Message getContent () constGet the content of the form. OnSubmitCallback getOnSubmit () constGets the on submit callback of the form. ActionForm & setButtons (const std::vector< Button > & buttons) Set the buttons of the action form. ActionForm & setContent (Message text) Set the content of the form. ActionForm & setOnSubmit (OnSubmitCallback on_submit) Sets the on submit callback of the form."},{"location":"reference/cpp/classendstone_1_1ActionForm/#public-functions-inherited-from-endstoneform","title":"Public Functions inherited from endstone::Form","text":"

          See endstone::Form

          Type Name Form () = default OnCloseCallback getOnClose () constGets the on close callback of the form. Message getTitle () constGets the title of the form. T & setOnClose (OnCloseCallback on_close) Sets the on close callback of the form. T & setTitle (Message title) Sets the title of the form."},{"location":"reference/cpp/classendstone_1_1ActionForm/#protected-attributes-inherited-from-endstoneform","title":"Protected Attributes inherited from endstone::Form","text":"

          See endstone::Form

          Type Name OnCloseCallback on_close_ Message title_"},{"location":"reference/cpp/classendstone_1_1ActionForm/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActionForm/#typedef-onsubmitcallback","title":"typedef OnSubmitCallback","text":"
          using endstone::ActionForm::OnSubmitCallback =  std::function<void(Player *, int)>;\n
          "},{"location":"reference/cpp/classendstone_1_1ActionForm/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActionForm/#function-actionform","title":"function ActionForm","text":"
          explicit endstone::ActionForm::ActionForm () = default\n
          "},{"location":"reference/cpp/classendstone_1_1ActionForm/#function-addbutton","title":"function addButton","text":"

          Adds a button to the form.

          inline ActionForm & endstone::ActionForm::addButton (\n    const Message & text,\n    const std::optional< std::string > & icon=std::nullopt,\n    Button::OnClickCallback on_click={}\n) \n

          Parameters:

          • text The text of the button
          • icon The path or URL to the icon image
          • on_click The on click callback of the button

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm/#function-getbuttons","title":"function getButtons","text":"

          Get the buttons of the action form.

          inline const std::vector< Button > & endstone::ActionForm::getButtons () const\n

          Returns:

          A list of buttons in the action form.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm/#function-getcontent","title":"function getContent","text":"

          Get the content of the form.

          inline Message endstone::ActionForm::getContent () const\n

          Returns:

          The content of the form.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm/#function-getonsubmit","title":"function getOnSubmit","text":"

          Gets the on submit callback of the form.

          inline OnSubmitCallback endstone::ActionForm::getOnSubmit () const\n

          Returns:

          The on submit callback of the form.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm/#function-setbuttons","title":"function setButtons","text":"

          Set the buttons of the action form.

          inline ActionForm & endstone::ActionForm::setButtons (\n    const std::vector< Button > & buttons\n) \n

          Parameters:

          • buttons The list of buttons to set.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm/#function-setcontent","title":"function setContent","text":"

          Set the content of the form.

          inline ActionForm & endstone::ActionForm::setContent (\n    Message text\n) \n

          Parameters:

          • text The text to set as the content.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm/#function-setonsubmit","title":"function setOnSubmit","text":"

          Sets the on submit callback of the form.

          inline ActionForm & endstone::ActionForm::setOnSubmit (\n    OnSubmitCallback on_submit\n) \n

          Parameters:

          • on_submit The callback to be set.

          Returns:

          A reference to the current form.

          The documentation for this class was generated from the following file include/endstone/form/action_form.h

          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/","title":"Class endstone::ActionForm::Button","text":"

          ClassList > endstone > ActionForm > Button

          Represents a button with text and an optional icon.

          • #include <endstone/form/action_form.h>
          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#public-types","title":"Public Types","text":"Type Name typedef std::function< void(Player *)> OnClickCallback"},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#public-functions","title":"Public Functions","text":"Type Name Button () = default Button (Message text, std::optional< std::string > icon=std::nullopt, OnClickCallback on_click={}) std::optional< std::string > getIcon () constGet the icon of the button. OnClickCallback getOnClick () constGets the on click callback of the button. Message getText () constGets the text of the button. Button & setIcon (std::string icon) Sets the icon for the button. Button & setOnClick (OnClickCallback on_click) Sets the on click callback of the button. Button & setText (Message text) Sets the text of the button."},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#typedef-onclickcallback","title":"typedef OnClickCallback","text":"
          using endstone::ActionForm::Button::OnClickCallback =  std::function<void(Player *)>;\n
          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#function-button-12","title":"function Button [\u00bd]","text":"
          endstone::ActionForm::Button::Button () = default\n
          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#function-button-22","title":"function Button [2/2]","text":"
          inline explicit endstone::ActionForm::Button::Button (\n    Message text,\n    std::optional< std::string > icon=std::nullopt,\n    OnClickCallback on_click={}\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#function-geticon","title":"function getIcon","text":"

          Get the icon of the button.

          inline std::optional< std::string > endstone::ActionForm::Button::getIcon () const\n

          Returns:

          The path or URL to the icon file

          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#function-getonclick","title":"function getOnClick","text":"

          Gets the on click callback of the button.

          inline OnClickCallback endstone::ActionForm::Button::getOnClick () const\n

          Returns:

          The on click callback of the button.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#function-gettext","title":"function getText","text":"

          Gets the text of the button.

          inline Message endstone::ActionForm::Button::getText () const\n

          Returns:

          The text.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#function-seticon","title":"function setIcon","text":"

          Sets the icon for the button.

          inline Button & endstone::ActionForm::Button::setIcon (\n    std::string icon\n) \n

          Parameters:

          • icon The path or URL to the icon file.

          Returns:

          A reference to the current button.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#function-setonclick","title":"function setOnClick","text":"

          Sets the on click callback of the button.

          inline Button & endstone::ActionForm::Button::setOnClick (\n    OnClickCallback on_click\n) \n

          Parameters:

          • on_click The callback to be set.

          Returns:

          A reference to the current button.

          "},{"location":"reference/cpp/classendstone_1_1ActionForm_1_1Button/#function-settext","title":"function setText","text":"

          Sets the text of the button.

          inline Button & endstone::ActionForm::Button::setText (\n    Message text\n) \n

          Parameters:

          • text The new text for the button.

          Returns:

          A reference to the current button.

          The documentation for this class was generated from the following file include/endstone/form/action_form.h

          "},{"location":"reference/cpp/classendstone_1_1Actor/","title":"Class endstone::Actor","text":"

          ClassList > endstone > Actor

          Represents a base actor in the level.

          • #include <endstone/actor/actor.h>

          Inherits the following classes: endstone::CommandSender

          Inherited by the following classes: endstone::Mob

          "},{"location":"reference/cpp/classendstone_1_1Actor/#public-functions","title":"Public Functions","text":"Type Name virtual bool addScoreboardTag (std::string tag) const = 0Adds a tag to this actor. virtual Actor * asActor () override constGets a CommandSender asActor . virtual Dimension & getDimension () const = 0 virtual int getHealth () const = 0Gets the entity's health from 0 to its max possible value, where 0 is dead. virtual std::int64_t getId () const = 0Returns a unique id for this actor. virtual Level & getLevel () const = 0 virtual Location getLocation () const = 0 virtual int getMaxHealth () const = 0Gets the maximum health this entity has. virtual std::uint64_t getRuntimeId () const = 0 virtual std::vector< std::string > getScoreboardTags () const = 0Returns a list of scoreboard tags for this actor. virtual Vector< float > getVelocity () const = 0 virtual bool isDead () const = 0Returns true if this actor has been marked for removal. virtual bool isInLava () const = 0 virtual bool isInWater () const = 0 virtual bool isOnGround () const = 0 virtual bool removeScoreboardTag (std::string tag) const = 0Removes a given tag from this actor. virtual Result< void > setHealth (int health) const = 0 virtual void setRotation (float yaw, float pitch) = 0 virtual void teleport (Location location) = 0 virtual void teleport (Actor & target) = 0"},{"location":"reference/cpp/classendstone_1_1Actor/#public-functions-inherited-from-endstonecommandsender","title":"Public Functions inherited from endstone::CommandSender","text":"

          See endstone::CommandSender

          Type Name virtual Actor * asActor () constGets a CommandSender asActor . virtual CommandSender * asCommandSender () override constCasts a Permissible asCommandSender . virtual ConsoleCommandSender * asConsole () constGets a CommandSender as Console. virtual Player * asPlayer () constGets a CommandSender asPlayer . virtual std::string getName () const = 0Gets the name of this command sender. virtual Server & getServer () const = 0Returns the server instance that this command is running on. virtual void sendErrorMessage (const Message & message) const = 0Sends this sender a error message. void sendErrorMessage (const fmt::format_string< Args... > format, Args &&... args) const virtual void sendMessage (const Message & message) const = 0Sends this sender a message. void sendMessage (const fmt::format_string< Args... > format, Args &&... args) const"},{"location":"reference/cpp/classendstone_1_1Actor/#public-functions-inherited-from-endstonepermissible","title":"Public Functions inherited from endstone::Permissible","text":"

          See endstone::Permissible

          Type Name virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin, const std::string & name, bool value) = 0 virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin) = 0 virtual CommandSender * asCommandSender () const = 0Casts a Permissible asCommandSender . virtual std::unordered_set< PermissionAttachmentInfo * > getEffectivePermissions () const = 0 virtual bool hasPermission (std::string name) const = 0 virtual bool hasPermission (const Permission & perm) const = 0 virtual bool isOp () const = 0Checks if this object is a server operator. virtual bool isPermissionSet (std::string name) const = 0 virtual bool isPermissionSet (const Permission & perm) const = 0 virtual void recalculatePermissions () = 0 virtual Result< void > removeAttachment (PermissionAttachment & attachment) = 0 virtual void setOp (bool value) = 0Sets the operator status of this object. virtual ~Permissible () = default"},{"location":"reference/cpp/classendstone_1_1Actor/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Actor/#function-addscoreboardtag","title":"function addScoreboardTag","text":"

          Adds a tag to this actor.

          virtual bool endstone::Actor::addScoreboardTag (\n    std::string tag\n) const = 0\n

          Parameters:

          • tag the tag to add

          Returns:

          true if the tag was successfully added, false if the tag already exists.

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-asactor","title":"function asActor","text":"

          Gets a CommandSender asActor .

          inline virtual Actor * endstone::Actor::asActor () override const\n

          Returns:

          Player, nullptr if not an Actor

          Implements endstone::CommandSender::asActor

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-getdimension","title":"function getDimension","text":"
          virtual Dimension & endstone::Actor::getDimension () const = 0\n

          Gets the current Dimension this actor resides in

          Returns:

          The current Dimension this actor resides in

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-gethealth","title":"function getHealth","text":"

          Gets the entity's health from 0 to its max possible value, where 0 is dead.

          virtual int endstone::Actor::getHealth () const = 0\n

          Returns:

          Health represented from 0 to max

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-getid","title":"function getId","text":"

          Returns a unique id for this actor.

          virtual std::int64_t endstone::Actor::getId () const = 0\n

          Returns:

          Actor id

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-getlevel","title":"function getLevel","text":"
          virtual Level & endstone::Actor::getLevel () const = 0\n

          Gets the current Level this actor resides in

          Returns:

          The current Level this actor resides in

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-getlocation","title":"function getLocation","text":"
          virtual Location endstone::Actor::getLocation () const = 0\n

          Gets the actor's current position

          Returns:

          a new copy of Location containing the position of this actor

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-getmaxhealth","title":"function getMaxHealth","text":"

          Gets the maximum health this entity has.

          virtual int endstone::Actor::getMaxHealth () const = 0\n

          Returns:

          Maximum health

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-getruntimeid","title":"function getRuntimeId","text":"
          virtual std::uint64_t endstone::Actor::getRuntimeId () const = 0\n

          Returns the runtime id for this actor

          Returns:

          Runtime id for this actor

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-getscoreboardtags","title":"function getScoreboardTags","text":"

          Returns a list of scoreboard tags for this actor.

          virtual std::vector< std::string > endstone::Actor::getScoreboardTags () const = 0\n

          Returns:

          a list of scoreboard tags for this actor

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-getvelocity","title":"function getVelocity","text":"
          virtual Vector < float > endstone::Actor::getVelocity () const = 0\n

          Gets this actor's current velocity

          Returns:

          Current traveling velocity of this actor

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-isdead","title":"function isDead","text":"

          Returns true if this actor has been marked for removal.

          virtual bool endstone::Actor::isDead () const = 0\n

          Returns:

          True if it is dead.

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-isinlava","title":"function isInLava","text":"
          virtual bool endstone::Actor::isInLava () const = 0\n

          Returns true if the actor is in lava.

          Returns:

          True if the actor is in lava.

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-isinwater","title":"function isInWater","text":"
          virtual bool endstone::Actor::isInWater () const = 0\n

          Returns true if the actor is in water.

          Returns:

          True if the actor is in water.

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-isonground","title":"function isOnGround","text":"
          virtual bool endstone::Actor::isOnGround () const = 0\n

          Returns true if the actor is supported by a block.

          Returns:

          True if actor is on ground.

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-removescoreboardtag","title":"function removeScoreboardTag","text":"

          Removes a given tag from this actor.

          virtual bool endstone::Actor::removeScoreboardTag (\n    std::string tag\n) const = 0\n

          Parameters:

          • tag the tag to remove

          Returns:

          true if the tag was successfully removed, false if the tag does not exist.

          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-sethealth","title":"function setHealth","text":"
          virtual Result< void > endstone::Actor::setHealth (\n    int health\n) const = 0\n

          Sets the entity's health from 0 to its possible value, where 0 is dead.

          Parameters:

          • health New health represented from 0 to max
          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-setrotation","title":"function setRotation","text":"
          virtual void endstone::Actor::setRotation (\n    float yaw,\n    float pitch\n) = 0\n

          Returns:

          Sets the actor's rotation.

          Note that if the actor is affected by AI, it may override this rotation.

          Parameters:

          • yaw Rotation around the up axis (Y axis)
          • pitch Rotation around the right axis (X axis)
          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-teleport-12","title":"function teleport [\u00bd]","text":"
          virtual void endstone::Actor::teleport (\n    Location location\n) = 0\n

          Returns:

          Teleports this actor to the given location.

          Parameters:

          • location New location to teleport this actor to
          "},{"location":"reference/cpp/classendstone_1_1Actor/#function-teleport-22","title":"function teleport [2/2]","text":"
          virtual void endstone::Actor::teleport (\n    Actor & target\n) = 0\n

          Teleports this actor to the target Actor.

          Parameters:

          • target Actor to teleport this actor to

          The documentation for this class was generated from the following file include/endstone/actor/actor.h

          "},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/","title":"Class endstone::ActorDeathEvent","text":"

          ClassList > endstone > ActorDeathEvent

          Called when an Actor dies.

          • #include <endstone/event/actor/actor_death_event.h>

          Inherits the following classes: endstone::ActorEvent

          Inherited by the following classes: endstone::PlayerDeathEvent

          "},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ActorDeathEvent\""},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#public-functions","title":"Public Functions","text":"Type Name ActorDeathEvent (Actor & actor) virtual std::string getEventName () override const virtual bool isCancellable () override const ~ActorDeathEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#public-functions-inherited-from-endstoneactorevent","title":"Public Functions inherited from endstone::ActorEvent","text":"

          See endstone::ActorEvent

          Type Name ActorEvent (Actor & actor) Actor & getActor () constReturns the Actor involved in this event. ~ActorEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ActorDeathEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#function-actordeathevent","title":"function ActorDeathEvent","text":"
          inline explicit endstone::ActorDeathEvent::ActorDeathEvent (\n    Actor & actor\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ActorDeathEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ActorDeathEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1ActorDeathEvent/#function-actordeathevent_1","title":"function ~ActorDeathEvent","text":"
          endstone::ActorDeathEvent::~ActorDeathEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_death_event.h

          "},{"location":"reference/cpp/classendstone_1_1ActorEvent/","title":"Class endstone::ActorEvent","text":"

          ClassList > endstone > ActorEvent

          Represents an Actor-related event.

          • #include <endstone/event/actor/actor_event.h>

          Inherits the following classes: endstone::Event

          Inherited by the following classes: endstone::ActorDeathEvent, endstone::ActorKnockbackEvent, endstone::ActorRemoveEvent, endstone::ActorSpawnEvent, endstone::ActorTeleportEvent

          "},{"location":"reference/cpp/classendstone_1_1ActorEvent/#public-functions","title":"Public Functions","text":"Type Name ActorEvent (Actor & actor) Actor & getActor () constReturns the Actor involved in this event. ~ActorEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ActorEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorEvent/#function-actorevent","title":"function ActorEvent","text":"
          inline explicit endstone::ActorEvent::ActorEvent (\n    Actor & actor\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ActorEvent/#function-getactor","title":"function getActor","text":"

          Returns the Actor involved in this event.

          inline Actor & endstone::ActorEvent::getActor () const\n

          Returns:

          Actor which is involved in this event

          "},{"location":"reference/cpp/classendstone_1_1ActorEvent/#function-actorevent_1","title":"function ~ActorEvent","text":"
          endstone::ActorEvent::~ActorEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_event.h

          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/","title":"Class endstone::ActorKnockbackEvent","text":"

          ClassList > endstone > ActorKnockbackEvent

          Called when a living entity receives knockback.

          • #include <endstone/event/actor/actor_knockback_event.h>

          Inherits the following classes: endstone::ActorEvent

          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ActorKnockbackEvent\""},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#public-functions","title":"Public Functions","text":"Type Name ActorKnockbackEvent (Mob & mob, Actor * source, Vector< float > knockback) Mob & getActor () constReturns the Mob involved in this event. virtual std::string getEventName () override const Vector< float > getKnockback () const Actor * getSource () constGet the source actor that has caused knockback to the defender, if exists. virtual bool isCancellable () override const void setKnockback (Vector< float > knockback) Sets the knockback that will be applied to the entity. ~ActorKnockbackEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#public-functions-inherited-from-endstoneactorevent","title":"Public Functions inherited from endstone::ActorEvent","text":"

          See endstone::ActorEvent

          Type Name ActorEvent (Actor & actor) Actor & getActor () constReturns the Actor involved in this event. ~ActorEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ActorKnockbackEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#function-actorknockbackevent","title":"function ActorKnockbackEvent","text":"
          inline explicit endstone::ActorKnockbackEvent::ActorKnockbackEvent (\n    Mob & mob,\n    Actor * source,\n    Vector < float > knockback\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#function-getactor","title":"function getActor","text":"

          Returns the Mob involved in this event.

          inline Mob & endstone::ActorKnockbackEvent::getActor () const\n

          Returns:

          Mob which is involved in this event

          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ActorKnockbackEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#function-getknockback","title":"function getKnockback","text":"
          inline Vector < float > endstone::ActorKnockbackEvent::getKnockback () const\n

          Gets the knockback that will be applied to the entity.

          Note: this method returns a copy, changes must be applied with setKnockback(Vector)

          Returns:

          the knockback

          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#function-getsource","title":"function getSource","text":"

          Get the source actor that has caused knockback to the defender, if exists.

          inline Actor * endstone::ActorKnockbackEvent::getSource () const\n

          Returns:

          actor that caused knockback, or nullptr if the knockback is not caused by an actor.

          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ActorKnockbackEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#function-setknockback","title":"function setKnockback","text":"

          Sets the knockback that will be applied to the entity.

          inline void endstone::ActorKnockbackEvent::setKnockback (\n    Vector < float > knockback\n) \n

          Parameters:

          • knockback the knockback to apply
          "},{"location":"reference/cpp/classendstone_1_1ActorKnockbackEvent/#function-actorknockbackevent_1","title":"function ~ActorKnockbackEvent","text":"
          endstone::ActorKnockbackEvent::~ActorKnockbackEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_knockback_event.h

          "},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/","title":"Class endstone::ActorRemoveEvent","text":"

          ClassList > endstone > ActorRemoveEvent

          Called when an Actor is removed.More...

          • #include <endstone/event/actor/actor_remove_event.h>

          Inherits the following classes: endstone::ActorEvent

          "},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ActorRemoveEvent\""},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#public-functions","title":"Public Functions","text":"Type Name ActorRemoveEvent (Actor & actor) virtual std::string getEventName () override const virtual bool isCancellable () override const ~ActorRemoveEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#public-functions-inherited-from-endstoneactorevent","title":"Public Functions inherited from endstone::ActorEvent","text":"

          See endstone::ActorEvent

          Type Name ActorEvent (Actor & actor) Actor & getActor () constReturns the Actor involved in this event. ~ActorEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#detailed-description","title":"Detailed Description","text":"

          This event should only be used for monitoring. Modifying the actor during or after this event leads to undefined behaviours. This event will not be called for Players.

          "},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ActorRemoveEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#function-actorremoveevent","title":"function ActorRemoveEvent","text":"
          inline explicit endstone::ActorRemoveEvent::ActorRemoveEvent (\n    Actor & actor\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ActorRemoveEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ActorRemoveEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1ActorRemoveEvent/#function-actorremoveevent_1","title":"function ~ActorRemoveEvent","text":"
          endstone::ActorRemoveEvent::~ActorRemoveEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_remove_event.h

          "},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/","title":"Class endstone::ActorSpawnEvent","text":"

          ClassList > endstone > ActorSpawnEvent

          Called when an Actor is spawned into a world.More...

          • #include <endstone/event/actor/actor_spawn_event.h>

          Inherits the following classes: endstone::ActorEvent

          "},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ActorSpawnEvent\""},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#public-functions","title":"Public Functions","text":"Type Name ActorSpawnEvent (Actor & actor) virtual std::string getEventName () override const virtual bool isCancellable () override const ~ActorSpawnEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#public-functions-inherited-from-endstoneactorevent","title":"Public Functions inherited from endstone::ActorEvent","text":"

          See endstone::ActorEvent

          Type Name ActorEvent (Actor & actor) Actor & getActor () constReturns the Actor involved in this event. ~ActorEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#detailed-description","title":"Detailed Description","text":"

          If an Actor Spawn event is cancelled, the actor will not spawn.

          "},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ActorSpawnEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#function-actorspawnevent","title":"function ActorSpawnEvent","text":"
          inline explicit endstone::ActorSpawnEvent::ActorSpawnEvent (\n    Actor & actor\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ActorSpawnEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ActorSpawnEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1ActorSpawnEvent/#function-actorspawnevent_1","title":"function ~ActorSpawnEvent","text":"
          endstone::ActorSpawnEvent::~ActorSpawnEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_spawn_event.h

          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/","title":"Class endstone::ActorTeleportEvent","text":"

          ClassList > endstone > ActorTeleportEvent

          Called when a non-player entity is teleported from one location to another. More...

          • #include <endstone/event/actor/actor_teleport_event.h>

          Inherits the following classes: endstone::ActorEvent

          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ActorTeleportEvent\""},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#public-functions","title":"Public Functions","text":"Type Name ActorTeleportEvent (Actor & actor, Location from, Location to) virtual std::string getEventName () override const const Location & getFrom () constGets the location that this actor moved from. const Location & getTo () constGets the location that this actor moved to. virtual bool isCancellable () override const void setFrom (const Location & from) Sets the location that this actor moved from. void setTo (const Location & to) Sets the location that this actor moved to. ~ActorTeleportEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#public-functions-inherited-from-endstoneactorevent","title":"Public Functions inherited from endstone::ActorEvent","text":"

          See endstone::ActorEvent

          Type Name ActorEvent (Actor & actor) Actor & getActor () constReturns the Actor involved in this event. ~ActorEvent () override"},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#detailed-description","title":"Detailed Description","text":"

          This may be as a result of natural causes (Enderman, Shulker), pathfinding (Wolf), or commands (/teleport).

          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ActorTeleportEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#function-actorteleportevent","title":"function ActorTeleportEvent","text":"
          inline explicit endstone::ActorTeleportEvent::ActorTeleportEvent (\n    Actor & actor,\n    Location from,\n    Location to\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ActorTeleportEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#function-getfrom","title":"function getFrom","text":"

          Gets the location that this actor moved from.

          inline const Location & endstone::ActorTeleportEvent::getFrom () const\n

          Returns:

          Location this actor moved from

          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#function-getto","title":"function getTo","text":"

          Gets the location that this actor moved to.

          inline const Location & endstone::ActorTeleportEvent::getTo () const\n

          Returns:

          Location this actor moved to

          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ActorTeleportEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#function-setfrom","title":"function setFrom","text":"

          Sets the location that this actor moved from.

          inline void endstone::ActorTeleportEvent::setFrom (\n    const Location & from\n) \n

          Parameters:

          • from New location this actor moved from
          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#function-setto","title":"function setTo","text":"

          Sets the location that this actor moved to.

          inline void endstone::ActorTeleportEvent::setTo (\n    const Location & to\n) \n

          Parameters:

          • to New Location this actor moved to
          "},{"location":"reference/cpp/classendstone_1_1ActorTeleportEvent/#function-actorteleportevent_1","title":"function ~ActorTeleportEvent","text":"
          endstone::ActorTeleportEvent::~ActorTeleportEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_teleport_event.h

          "},{"location":"reference/cpp/classendstone_1_1BanList/","title":"Class endstone::BanList","text":"

          template <typename T>

          ClassList > endstone > BanList

          A class that represents a ban list, containing bans of some target type. More...

          • #include <endstone/ban/ban_list.h>
          "},{"location":"reference/cpp/classendstone_1_1BanList/#public-functions","title":"Public Functions","text":"Type Name virtual BanEntry< T > & addBan (T target, std::optional< std::string > reason, std::optional< std::chrono::system_clock::time_point > expires, std::optional< std::string > source) = 0Adds a ban to this list. If a previous ban exists, this will update the previous entry. virtual BanEntry< T > & addBan (T target, std::optional< std::string > reason, std::optional< std::chrono::seconds > duration, std::optional< std::string > source) = 0Adds a ban to this list. If a previous ban exists, this will update the previous entry. virtual BanEntry< T > * getBanEntry (T target) const = 0Gets a BanEntry by the target. virtual std::vector< BanEntry< T > * > getEntries () const = 0Gets a vector containing pointers to every BanEntry in this list. virtual bool isBanned (T target) const = 0Checks if a BanEntry exists for the target, indicating an active ban status. virtual void removeBan (T target) = 0Removes the specified target from this list, therefore indicating a \"not banned\" status. virtual ~BanList () = default"},{"location":"reference/cpp/classendstone_1_1BanList/#detailed-description","title":"Detailed Description","text":"

          Template parameters:

          • T The ban target type
          "},{"location":"reference/cpp/classendstone_1_1BanList/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BanList/#function-addban-12","title":"function addBan [\u00bd]","text":"

          Adds a ban to this list. If a previous ban exists, this will update the previous entry.

          virtual BanEntry< T > & endstone::BanList::addBan (\n    T target,\n    std::optional< std::string > reason,\n    std::optional< std::chrono::system_clock::time_point > expires,\n    std::optional< std::string > source\n) = 0\n

          Parameters:

          • target The target of the ban
          • reason The reason for the ban, std::nullopt indicates implementation default
          • expires The date for the ban's expiration (unban), or std::nullopt to imply forever
          • source The source of the ban, std::nullopt indicates implementation default

          Returns:

          BanEntry<T>& The entry for the newly created ban, or the entry for the (updated) previous ban

          "},{"location":"reference/cpp/classendstone_1_1BanList/#function-addban-22","title":"function addBan [2/2]","text":"

          Adds a ban to this list. If a previous ban exists, this will update the previous entry.

          virtual BanEntry< T > & endstone::BanList::addBan (\n    T target,\n    std::optional< std::string > reason,\n    std::optional< std::chrono::seconds > duration,\n    std::optional< std::string > source\n) = 0\n

          Parameters:

          • target The target of the ban
          • reason The reason for the ban, std::nullopt indicates implementation default
          • duration The duration of the ban, or std::nullopt to imply forever
          • source The source of the ban, std::nullopt indicates implementation default

          Returns:

          BanEntry<T>& The entry for the newly created ban, or the entry for the (updated) previous ban

          "},{"location":"reference/cpp/classendstone_1_1BanList/#function-getbanentry","title":"function getBanEntry","text":"

          Gets a BanEntry by the target.

          virtual BanEntry< T > * endstone::BanList::getBanEntry (\n    T target\n) const = 0\n

          Parameters:

          • target The entry parameter to search for

          Returns:

          BanEntry<T>* The corresponding entry, or nullptr if none found

          "},{"location":"reference/cpp/classendstone_1_1BanList/#function-getentries","title":"function getEntries","text":"

          Gets a vector containing pointers to every BanEntry in this list.

          virtual std::vector< BanEntry< T > * > endstone::BanList::getEntries () const = 0\n

          Returns:

          std::vector<BanEntry<T>*> A vector containing pointers to every entry tracked by this list

          "},{"location":"reference/cpp/classendstone_1_1BanList/#function-isbanned","title":"function isBanned","text":"

          Checks if a BanEntry exists for the target, indicating an active ban status.

          virtual bool endstone::BanList::isBanned (\n    T target\n) const = 0\n

          Parameters:

          • target The target to find

          Returns:

          true If a BanEntry exists for the target, indicating an active ban status

          Returns:

          false Otherwise

          "},{"location":"reference/cpp/classendstone_1_1BanList/#function-removeban","title":"function removeBan","text":"

          Removes the specified target from this list, therefore indicating a \"not banned\" status.

          virtual void endstone::BanList::removeBan (\n    T target\n) = 0\n

          Parameters:

          • target The target to remove from this list
          "},{"location":"reference/cpp/classendstone_1_1BanList/#function-banlist","title":"function ~BanList","text":"
          virtual endstone::BanList::~BanList () = default\n

          The documentation for this class was generated from the following file include/endstone/ban/ban_list.h

          "},{"location":"reference/cpp/classendstone_1_1Block/","title":"Class endstone::Block","text":"

          ClassList > endstone > Block

          Represents a block. More...

          • #include <endstone/block/block.h>
          "},{"location":"reference/cpp/classendstone_1_1Block/#public-functions","title":"Public Functions","text":"Type Name virtual std::shared_ptr< BlockState > captureState () const = 0 virtual Result< std::shared_ptr< BlockData > > getData () const = 0Gets the complete block data for this block. virtual Dimension & getDimension () const = 0Gets the dimension which contains this Block . virtual Location getLocation () const = 0Gets the Location of the block. virtual Result< std::unique_ptr< Block > > getRelative (int offset_x, int offset_y, int offset_z) = 0Gets the block at the given offsets. virtual Result< std::unique_ptr< Block > > getRelative (BlockFace face) = 0Gets the block at the given face. virtual Result< std::unique_ptr< Block > > getRelative (BlockFace face, int distance) = 0Gets the block at the given distance of the given face. virtual Result< std::string > getType () const = 0Get the type of the block. virtual int getX () const = 0Gets the x-coordinate of this block. virtual int getY () const = 0Gets the y-coordinate of this block. virtual int getZ () const = 0Gets the z-coordinate of this block. virtual bool isValid () const = 0Checks if the block is valid. virtual Result< void > setData (std::shared_ptr< BlockData > data) = 0Sets the complete data for this block. virtual Result< void > setData (std::shared_ptr< BlockData > data, bool apply_physics) = 0Sets the complete data for this block. virtual Result< void > setType (std::string type) = 0Sets the type of this block. virtual Result< void > setType (std::string type, bool apply_physics) = 0Sets the type of this block. virtual ~Block () = default"},{"location":"reference/cpp/classendstone_1_1Block/#detailed-description","title":"Detailed Description","text":"

          This is a live object, and only one Block may exist for any given location in a dimension.

          "},{"location":"reference/cpp/classendstone_1_1Block/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Block/#function-capturestate","title":"function captureState","text":"
          virtual std::shared_ptr< BlockState > endstone::Block::captureState () const = 0\n

          Captures the current state of this block.

          The returned object will never be updated, and you are not guaranteed that (for example) a sign is still a sign after you capture its state.

          Returns:

          BlockState with the current state of this block.

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-getdata","title":"function getData","text":"

          Gets the complete block data for this block.

          virtual Result< std::shared_ptr< BlockData > > endstone::Block::getData () const = 0\n

          Returns:

          block specific data

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-getdimension","title":"function getDimension","text":"

          Gets the dimension which contains this Block .

          virtual Dimension & endstone::Block::getDimension () const = 0\n

          Returns:

          Dimension containing this block

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-getlocation","title":"function getLocation","text":"

          Gets the Location of the block.

          virtual Location endstone::Block::getLocation () const = 0\n

          Returns:

          Location of block

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-getrelative-13","title":"function getRelative [\u2153]","text":"

          Gets the block at the given offsets.

          virtual Result< std::unique_ptr< Block > > endstone::Block::getRelative (\n    int offset_x,\n    int offset_y,\n    int offset_z\n) = 0\n

          Parameters:

          • offset_x X-coordinate offset
          • offset_y Y-coordinate offset
          • offset_z Z-coordinate offset

          Returns:

          Block at the given offsets

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-getrelative-23","title":"function getRelative [\u2154]","text":"

          Gets the block at the given face.

          virtual Result< std::unique_ptr< Block > > endstone::Block::getRelative (\n    BlockFace face\n) = 0\n

          This method is equal to getRelative(face, 1)

          Parameters:

          • face Face of this block to return

          Returns:

          Block at the given face

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-getrelative-33","title":"function getRelative [3/3]","text":"

          Gets the block at the given distance of the given face.

          virtual Result< std::unique_ptr< Block > > endstone::Block::getRelative (\n    BlockFace face,\n    int distance\n) = 0\n

          Parameters:

          • face Face of this block to return
          • distance Distance to get the block at

          Returns:

          Block at the given face

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-gettype","title":"function getType","text":"

          Get the type of the block.

          virtual Result< std::string > endstone::Block::getType () const = 0\n

          This method returns the type of the block as a string, for example, minecraft:acacia_stairs.

          Returns:

          The type of the block.

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-getx","title":"function getX","text":"

          Gets the x-coordinate of this block.

          virtual int endstone::Block::getX () const = 0\n

          Returns:

          x-coordinate

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-gety","title":"function getY","text":"

          Gets the y-coordinate of this block.

          virtual int endstone::Block::getY () const = 0\n

          Returns:

          x-coordinate

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-getz","title":"function getZ","text":"

          Gets the z-coordinate of this block.

          virtual int endstone::Block::getZ () const = 0\n

          Returns:

          x-coordinate

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-isvalid","title":"function isValid","text":"

          Checks if the block is valid.

          virtual bool endstone::Block::isValid () const = 0\n

          This method verifies the validity of the block. A block is considered valid if and only if the chunk containing this block is loaded and ticking. If the chunk is not loaded or not in the ticking state, this method will return false.

          Returns:

          true if the block is valid (i.e., the containing chunk is loaded and ticking), otherwise false.

          "},{"location":"reference/cpp/classendstone_1_1Block/#function-setdata-12","title":"function setData [\u00bd]","text":"

          Sets the complete data for this block.

          virtual Result< void > endstone::Block::setData (\n    std::shared_ptr< BlockData > data\n) = 0\n

          Parameters:

          • data new block specific data
          "},{"location":"reference/cpp/classendstone_1_1Block/#function-setdata-22","title":"function setData [2/2]","text":"

          Sets the complete data for this block.

          virtual Result< void > endstone::Block::setData (\n    std::shared_ptr< BlockData > data,\n    bool apply_physics\n) = 0\n

          Parameters:

          • data new block specific data
          • apply_physics False to cancel physics on the changed block.
          "},{"location":"reference/cpp/classendstone_1_1Block/#function-settype-12","title":"function setType [\u00bd]","text":"

          Sets the type of this block.

          virtual Result< void > endstone::Block::setType (\n    std::string type\n) = 0\n

          Parameters:

          • type Material to change this block to
          "},{"location":"reference/cpp/classendstone_1_1Block/#function-settype-22","title":"function setType [2/2]","text":"

          Sets the type of this block.

          virtual Result< void > endstone::Block::setType (\n    std::string type,\n    bool apply_physics\n) = 0\n

          Parameters:

          • type Material to change this block to
          • apply_physics False to cancel physics on the changed block.
          "},{"location":"reference/cpp/classendstone_1_1Block/#function-block","title":"function ~Block","text":"
          virtual endstone::Block::~Block () = default\n

          The documentation for this class was generated from the following file include/endstone/block/block.h

          "},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/","title":"Class endstone::BlockBreakEvent","text":"

          ClassList > endstone > BlockBreakEvent

          Called when a block is broken by a player. More...

          • #include <endstone/event/block/block_break_event.h>

          Inherits the following classes: endstone::BlockEvent

          "},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"BlockBreakEvent\""},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#public-functions","title":"Public Functions","text":"Type Name BlockBreakEvent (Block & block, Player & player) virtual std::string getEventName () override const Player & getPlayer () constGets the Player that is breaking the block involved in this event. virtual bool isCancellable () override const ~BlockBreakEvent () override"},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#public-functions-inherited-from-endstoneblockevent","title":"Public Functions inherited from endstone::BlockEvent","text":"

          See endstone::BlockEvent

          Type Name BlockEvent (Block & block) Block & getBlock () constGets the block involved in this event. ~BlockEvent () override"},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#detailed-description","title":"Detailed Description","text":"

          If a BlockBreakEvent is cancelled, the block will not break and experience will not drop.

          "},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::BlockBreakEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#function-blockbreakevent","title":"function BlockBreakEvent","text":"
          inline explicit endstone::BlockBreakEvent::BlockBreakEvent (\n    Block & block,\n    Player & player\n) \n
          "},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::BlockBreakEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#function-getplayer","title":"function getPlayer","text":"

          Gets the Player that is breaking the block involved in this event.

          inline Player & endstone::BlockBreakEvent::getPlayer () const\n

          Returns:

          The Player that is breaking the block involved in this event

          "},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::BlockBreakEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1BlockBreakEvent/#function-blockbreakevent_1","title":"function ~BlockBreakEvent","text":"
          endstone::BlockBreakEvent::~BlockBreakEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/block/block_break_event.h

          "},{"location":"reference/cpp/classendstone_1_1BlockData/","title":"Class endstone::BlockData","text":"

          ClassList > endstone > BlockData

          Represents the data related to a live block.

          • #include <endstone/block/block_data.h>

          Inherits the following classes: std::enable_shared_from_this< BlockData >

          "},{"location":"reference/cpp/classendstone_1_1BlockData/#public-functions","title":"Public Functions","text":"Type Name virtual BlockStates getBlockStates () const = 0Gets the block states, which when passed into a method such as Server::createBlockData(type, block_states) will unambiguously recreate this instance. virtual std::string getType () const = 0Get the block type represented by this block data. virtual ~BlockData () = default"},{"location":"reference/cpp/classendstone_1_1BlockData/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BlockData/#function-getblockstates","title":"function getBlockStates","text":"

          Gets the block states, which when passed into a method such as Server::createBlockData(type, block_states) will unambiguously recreate this instance.

          virtual BlockStates endstone::BlockData::getBlockStates () const = 0\n

          Returns:

          the block states for this block

          "},{"location":"reference/cpp/classendstone_1_1BlockData/#function-gettype","title":"function getType","text":"

          Get the block type represented by this block data.

          virtual std::string endstone::BlockData::getType () const = 0\n

          Returns:

          the block type

          "},{"location":"reference/cpp/classendstone_1_1BlockData/#function-blockdata","title":"function ~BlockData","text":"
          virtual endstone::BlockData::~BlockData () = default\n

          The documentation for this class was generated from the following file include/endstone/block/block_data.h

          "},{"location":"reference/cpp/classendstone_1_1BlockEvent/","title":"Class endstone::BlockEvent","text":"

          ClassList > endstone > BlockEvent

          Represents an Block-related event.

          • #include <endstone/event/block/block_event.h>

          Inherits the following classes: endstone::Event

          Inherited by the following classes: endstone::BlockBreakEvent, endstone::BlockPlaceEvent

          "},{"location":"reference/cpp/classendstone_1_1BlockEvent/#public-functions","title":"Public Functions","text":"Type Name BlockEvent (Block & block) Block & getBlock () constGets the block involved in this event. ~BlockEvent () override"},{"location":"reference/cpp/classendstone_1_1BlockEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1BlockEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BlockEvent/#function-blockevent","title":"function BlockEvent","text":"
          inline explicit endstone::BlockEvent::BlockEvent (\n    Block & block\n) \n
          "},{"location":"reference/cpp/classendstone_1_1BlockEvent/#function-getblock","title":"function getBlock","text":"

          Gets the block involved in this event.

          inline Block & endstone::BlockEvent::getBlock () const\n

          Returns:

          The Block which block is involved in this event

          "},{"location":"reference/cpp/classendstone_1_1BlockEvent/#function-blockevent_1","title":"function ~BlockEvent","text":"
          endstone::BlockEvent::~BlockEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/block/block_event.h

          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/","title":"Class endstone::BlockPlaceEvent","text":"

          ClassList > endstone > BlockPlaceEvent

          Called when a block is placed by a player. More...

          • #include <endstone/event/block/block_place_event.h>

          Inherits the following classes: endstone::BlockEvent

          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"BlockPlaceEvent\""},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#public-functions","title":"Public Functions","text":"Type Name BlockPlaceEvent (std::unique_ptr< BlockState > placed_block, Block & replaced_block, Block & placed_against, Player & player) Block & getBlockAgainst () constGets the block that this block was placed against. BlockState & getBlockPlacedState () constGets the BlockState for the block which was placed. Block & getBlockReplaced () constGets the block which was replaced. virtual std::string getEventName () override const Player & getPlayer () constGets the player who placed the block involved in this event. virtual bool isCancellable () override const ~BlockPlaceEvent () override"},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#public-functions-inherited-from-endstoneblockevent","title":"Public Functions inherited from endstone::BlockEvent","text":"

          See endstone::BlockEvent

          Type Name BlockEvent (Block & block) Block & getBlock () constGets the block involved in this event. ~BlockEvent () override"},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#detailed-description","title":"Detailed Description","text":"

          If a BlockPlaceEvent is cancelled, the block will not be placed.

          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::BlockPlaceEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#function-blockplaceevent","title":"function BlockPlaceEvent","text":"
          inline explicit endstone::BlockPlaceEvent::BlockPlaceEvent (\n    std::unique_ptr< BlockState > placed_block,\n    Block & replaced_block,\n    Block & placed_against,\n    Player & player\n) \n
          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#function-getblockagainst","title":"function getBlockAgainst","text":"

          Gets the block that this block was placed against.

          inline Block & endstone::BlockPlaceEvent::getBlockAgainst () const\n

          Returns:

          Block the block that the new block was placed against

          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#function-getblockplacedstate","title":"function getBlockPlacedState","text":"

          Gets the BlockState for the block which was placed.

          inline BlockState & endstone::BlockPlaceEvent::getBlockPlacedState () const\n

          Returns:

          The BlockState for the block which was placed.

          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#function-getblockreplaced","title":"function getBlockReplaced","text":"

          Gets the block which was replaced.

          inline Block & endstone::BlockPlaceEvent::getBlockReplaced () const\n

          Returns:

          The Block which was replaced.

          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::BlockPlaceEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#function-getplayer","title":"function getPlayer","text":"

          Gets the player who placed the block involved in this event.

          inline Player & endstone::BlockPlaceEvent::getPlayer () const\n

          Returns:

          The Player who placed the block involved in this event

          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::BlockPlaceEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1BlockPlaceEvent/#function-blockplaceevent_1","title":"function ~BlockPlaceEvent","text":"
          endstone::BlockPlaceEvent::~BlockPlaceEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/block/block_place_event.h

          "},{"location":"reference/cpp/classendstone_1_1BlockState/","title":"Class endstone::BlockState","text":"

          ClassList > endstone > BlockState

          Represents a captured state of a block, which will not update automatically. More...

          • #include <endstone/block/block_state.h>

          Inherits the following classes: std::enable_shared_from_this< BlockState >

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#public-functions","title":"Public Functions","text":"Type Name virtual Result< std::unique_ptr< Block > > getBlock () const = 0Gets the block represented by this block state. virtual std::shared_ptr< BlockData > getData () const = 0Gets the data for this block state. virtual Dimension & getDimension () const = 0Gets the dimension which contains the block represented by this block state. virtual Location getLocation () const = 0Gets the location of this block state. virtual std::string getType () const = 0Gets the type of this block state. virtual int getX () const = 0Gets the x-coordinate of this block state. virtual int getY () const = 0Gets the y-coordinate of this block state. virtual int getZ () const = 0Gets the z-coordinate of this block state. virtual Result< void > setData (std::shared_ptr< BlockData > data) = 0Sets the data for this block state. virtual Result< void > setType (std::string type) = 0Sets the type of this block state. virtual Result< bool > update () = 0Attempts to update the block represented by this state, setting it to yhe new values as defined by this state. virtual Result< bool > update (bool force) = 0Attempts to update the block represented by this state, setting it to the new values as defined by this state. virtual Result< bool > update (bool force, bool apply_physics) = 0Attempts to update the block represented by this state, setting it to the new values as defined by this state. virtual ~BlockState () = default"},{"location":"reference/cpp/classendstone_1_1BlockState/#detailed-description","title":"Detailed Description","text":"

          Unlike Block, which only one object can exist per coordinate, BlockState can exist multiple times for any given Block. Note that another plugin may change the state of the block, and you will not know, or they may change the block to another type entirely, causing your BlockState to become invalid.

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BlockState/#function-getblock","title":"function getBlock","text":"

          Gets the block represented by this block state.

          virtual Result< std::unique_ptr< Block > > endstone::BlockState::getBlock () const = 0\n

          Returns:

          the block represented by this block state

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-getdata","title":"function getData","text":"

          Gets the data for this block state.

          virtual std::shared_ptr< BlockData > endstone::BlockState::getData () const = 0\n

          Returns:

          block specific data

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-getdimension","title":"function getDimension","text":"

          Gets the dimension which contains the block represented by this block state.

          virtual Dimension & endstone::BlockState::getDimension () const = 0\n

          Returns:

          the dimension containing the block represented by this block state

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-getlocation","title":"function getLocation","text":"

          Gets the location of this block state.

          virtual Location endstone::BlockState::getLocation () const = 0\n

          Returns:

          the location

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-gettype","title":"function getType","text":"

          Gets the type of this block state.

          virtual std::string endstone::BlockState::getType () const = 0\n

          Returns:

          block type

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-getx","title":"function getX","text":"

          Gets the x-coordinate of this block state.

          virtual int endstone::BlockState::getX () const = 0\n

          Returns:

          x-coordinate

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-gety","title":"function getY","text":"

          Gets the y-coordinate of this block state.

          virtual int endstone::BlockState::getY () const = 0\n

          Returns:

          y-coordinate

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-getz","title":"function getZ","text":"

          Gets the z-coordinate of this block state.

          virtual int endstone::BlockState::getZ () const = 0\n

          Returns:

          z-coordinate

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-setdata","title":"function setData","text":"

          Sets the data for this block state.

          virtual Result< void > endstone::BlockState::setData (\n    std::shared_ptr< BlockData > data\n) = 0\n

          Parameters:

          • data New block specific data
          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-settype","title":"function setType","text":"

          Sets the type of this block state.

          virtual Result< void > endstone::BlockState::setType (\n    std::string type\n) = 0\n

          Parameters:

          • type Block type to change this block state to
          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-update-13","title":"function update [\u2153]","text":"

          Attempts to update the block represented by this state, setting it to yhe new values as defined by this state.

          virtual Result< bool > endstone::BlockState::update () = 0\n

          This has the same effect as calling update(false). That is to say, this will not modify the state of a block if it is no longer the same type as it was when this state was taken. It will return false in this eventuality.

          Returns:

          true if the update was successful, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-update-23","title":"function update [\u2154]","text":"

          Attempts to update the block represented by this state, setting it to the new values as defined by this state.

          virtual Result< bool > endstone::BlockState::update (\n    bool force\n) = 0\n

          This has the same effect as calling update(force, true). That is to say, this will trigger a physics update to surrounding blocks.

          Parameters:

          • force true to forcefully set the state

          Returns:

          true if the update was successful, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-update-33","title":"function update [3/3]","text":"

          Attempts to update the block represented by this state, setting it to the new values as defined by this state.

          virtual Result< bool > endstone::BlockState::update (\n    bool force,\n    bool apply_physics\n) = 0\n

          Unless force is true, this will not modify the state of a block if it is no longer the same type as it was when this state was taken. It will return false in this eventuality.

          If force is true, it will set the type of the block to match the new state, set the state data and then return true.

          If apply_physics is true, it will trigger a physics update on surrounding blocks which could cause them to update or disappear.

          Parameters:

          • force true to forcefully set the state
          • apply_physics false to cancel updating physics on surrounding blocks

          Returns:

          true if the update was successful, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1BlockState/#function-blockstate","title":"function ~BlockState","text":"
          virtual endstone::BlockState::~BlockState () = default\n

          The documentation for this class was generated from the following file include/endstone/block/block_state.h

          "},{"location":"reference/cpp/classendstone_1_1BossBar/","title":"Class endstone::BossBar","text":"

          ClassList > endstone > BossBar

          Represents a boss bar that is displayed to players.

          • #include <endstone/boss/boss_bar.h>
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#public-functions","title":"Public Functions","text":"Type Name virtual void addFlag (BarFlag flag) = 0Add an optional flag to this boss bar. virtual void addPlayer (Player & player) = 0Adds the player to this boss bar causing it to display on their screen. virtual BarColor getColor () const = 0Returns the color of this boss bar. virtual std::vector< Player * > getPlayers () const = 0Returns all players viewing this boss bar. virtual float getProgress () const = 0Returns the progress of the bar between 0.0 and 1.0. virtual BarStyle getStyle () const = 0Returns the style of this boss bar. virtual std::string getTitle () const = 0Returns the title of this boss bar. virtual bool hasFlag (BarFlag flag) const = 0Returns whether this boss bar has the passed flag set. virtual bool isVisible () const = 0Return if the boss bar is displayed to attached players. virtual void removeAll () = 0Removes all players from this boss bar. virtual void removeFlag (BarFlag flag) = 0Remove an existing flag on this boss bar. virtual void removePlayer (Player & player) = 0Removes the player from this boss bar causing it to be removed from their screen. virtual void setColor (BarColor color) = 0Sets the color of this boss bar. virtual Result< void > setProgress (float progress) = 0Sets the progress of the bar. Values should be between 0.0 (empty) and 1.0 (full) virtual void setStyle (BarStyle style) = 0Sets the bar style of this boss bar. virtual void setTitle (std::string title) = 0Sets the title of this boss bar. virtual void setVisible (bool visible) = 0Set if the boss bar is displayed to attached players. virtual ~BossBar () = default"},{"location":"reference/cpp/classendstone_1_1BossBar/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BossBar/#function-addflag","title":"function addFlag","text":"

          Add an optional flag to this boss bar.

          virtual void endstone::BossBar::addFlag (\n    BarFlag flag\n) = 0\n

          Parameters:

          • flag an optional flag to set on the boss bar.
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-addplayer","title":"function addPlayer","text":"

          Adds the player to this boss bar causing it to display on their screen.

          virtual void endstone::BossBar::addPlayer (\n    Player & player\n) = 0\n

          Parameters:

          • player the player to add
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-getcolor","title":"function getColor","text":"

          Returns the color of this boss bar.

          virtual BarColor endstone::BossBar::getColor () const = 0\n

          Returns:

          the color of the bar

          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-getplayers","title":"function getPlayers","text":"

          Returns all players viewing this boss bar.

          virtual std::vector< Player * > endstone::BossBar::getPlayers () const = 0\n

          Returns:

          a list of players

          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-getprogress","title":"function getProgress","text":"

          Returns the progress of the bar between 0.0 and 1.0.

          virtual float endstone::BossBar::getProgress () const = 0\n

          Returns:

          the progress of the bar

          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-getstyle","title":"function getStyle","text":"

          Returns the style of this boss bar.

          virtual BarStyle endstone::BossBar::getStyle () const = 0\n

          Returns:

          the style of the bar.

          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-gettitle","title":"function getTitle","text":"

          Returns the title of this boss bar.

          virtual std::string endstone::BossBar::getTitle () const = 0\n

          Returns:

          the title of the bar

          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-hasflag","title":"function hasFlag","text":"

          Returns whether this boss bar has the passed flag set.

          virtual bool endstone::BossBar::hasFlag (\n    BarFlag flag\n) const = 0\n

          Parameters:

          • flag the flag to check.

          Returns:

          whether it has the flag.

          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-isvisible","title":"function isVisible","text":"

          Return if the boss bar is displayed to attached players.

          virtual bool endstone::BossBar::isVisible () const = 0\n

          Returns:

          visible status

          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-removeall","title":"function removeAll","text":"
          virtual void endstone::BossBar::removeAll () = 0\n
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-removeflag","title":"function removeFlag","text":"

          Remove an existing flag on this boss bar.

          virtual void endstone::BossBar::removeFlag (\n    BarFlag flag\n) = 0\n

          Parameters:

          • flag the existing flag to remove.
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-removeplayer","title":"function removePlayer","text":"

          Removes the player from this boss bar causing it to be removed from their screen.

          virtual void endstone::BossBar::removePlayer (\n    Player & player\n) = 0\n

          Parameters:

          • player the player to remove
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-setcolor","title":"function setColor","text":"

          Sets the color of this boss bar.

          virtual void endstone::BossBar::setColor (\n    BarColor color\n) = 0\n

          Parameters:

          • color the color of the bar
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-setprogress","title":"function setProgress","text":"

          Sets the progress of the bar. Values should be between 0.0 (empty) and 1.0 (full)

          virtual Result< void > endstone::BossBar::setProgress (\n    float progress\n) = 0\n

          Parameters:

          • progress the progress of the bar
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-setstyle","title":"function setStyle","text":"

          Sets the bar style of this boss bar.

          virtual void endstone::BossBar::setStyle (\n    BarStyle style\n) = 0\n

          Parameters:

          • style the style of the bar.
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-settitle","title":"function setTitle","text":"

          Sets the title of this boss bar.

          virtual void endstone::BossBar::setTitle (\n    std::string title\n) = 0\n

          Parameters:

          • title the title of the bar
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-setvisible","title":"function setVisible","text":"

          Set if the boss bar is displayed to attached players.

          virtual void endstone::BossBar::setVisible (\n    bool visible\n) = 0\n

          Parameters:

          • visible visible status
          "},{"location":"reference/cpp/classendstone_1_1BossBar/#function-bossbar","title":"function ~BossBar","text":"
          virtual endstone::BossBar::~BossBar () = default\n

          The documentation for this class was generated from the following file include/endstone/boss/boss_bar.h

          "},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/","title":"Class endstone::BroadcastMessageEvent","text":"

          ClassList > endstone > BroadcastMessageEvent

          Event triggered for server broadcast messages such as fromServer::broadcast .More...

          • #include <endstone/event/server/broadcast_message_event.h>

          Inherits the following classes: endstone::ServerEvent

          "},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"BroadcastMessageEvent\""},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#public-functions","title":"Public Functions","text":"Type Name BroadcastMessageEvent (bool async, std::string message, std::unordered_set< const CommandSender * > recipients) virtual std::string getEventName () override const const std::string & getMessage () const const std::unordered_set< const CommandSender * > & getRecipients () const virtual bool isCancellable () override const void setMessage (std::string message)"},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#public-functions-inherited-from-endstoneserverevent","title":"Public Functions inherited from endstone::ServerEvent","text":"

          See endstone::ServerEvent

          Type Name Event (bool async=false) Event (const Event &) = delete"},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#detailed-description","title":"Detailed Description","text":"

          This event should be async if fired from an async thread.

          "},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::BroadcastMessageEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#function-broadcastmessageevent","title":"function BroadcastMessageEvent","text":"
          inline endstone::BroadcastMessageEvent::BroadcastMessageEvent (\n    bool async,\n    std::string message,\n    std::unordered_set< const CommandSender * > recipients\n) \n
          "},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::BroadcastMessageEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#function-getmessage","title":"function getMessage","text":"
          inline const std::string & endstone::BroadcastMessageEvent::getMessage () const\n

          Get the message to broadcast.

          Returns:

          Message to broadcast

          "},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#function-getrecipients","title":"function getRecipients","text":"
          inline const std::unordered_set< const CommandSender * > & endstone::BroadcastMessageEvent::getRecipients () const\n

          Gets a set of recipients that this broadcast message will be displayed to.

          Returns:

          All CommandSenders who will see this broadcast message

          "},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::BroadcastMessageEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1BroadcastMessageEvent/#function-setmessage","title":"function setMessage","text":"
          inline void endstone::BroadcastMessageEvent::setMessage (\n    std::string message\n) \n

          Set the message to broadcast.

          Parameters:

          • message New message to broadcast

          The documentation for this class was generated from the following file include/endstone/event/server/broadcast_message_event.h

          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/","title":"Struct endstone::ColorFormat","text":"

          ClassList > endstone > ColorFormat

          All supported color and format codes.

          • #include <endstone/color_format.h>
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string Aqua = = Escape + 'b' const std::string Black = = Escape + '0' const std::string Blue = = Escape + '9' const std::string Bold = = Escape + 'l' const std::string DarkAqua = = Escape + '3' const std::string DarkBlue = = Escape + '1' const std::string DarkGray = = Escape + '8' const std::string DarkGreen = = Escape + '2' const std::string DarkPurple = = Escape + '5' const std::string DarkRed = = Escape + '4' const std::string Escape = = \"\u00a7\" const std::string Gold = = Escape + '6' const std::string Gray = = Escape + '7' const std::string Green = = Escape + 'a' const std::string Italic = = Escape + 'o' const std::string LightPurple = = Escape + 'd' const std::string MaterialAmethyst = = Escape + 'u' const std::string MaterialCopper = = Escape + 'n' const std::string MaterialDiamond = = Escape + 's' const std::string MaterialEmerald = = Escape + 'q' const std::string MaterialGold = = Escape + 'p' const std::string MaterialIron = = Escape + 'i' const std::string MaterialLapis = = Escape + 't' const std::string MaterialNetherite = = Escape + 'j' const std::string MaterialQuartz = = Escape + 'h' const std::string MaterialRedstone = = Escape + 'm' const std::string MinecoinGold = = Escape + 'g' const std::string Obfuscated = = Escape + 'k' const std::string Red = = Escape + 'c' const std::string Reset = = Escape + 'r' const std::string White = = Escape + 'f' const std::string Yellow = = Escape + 'e'"},{"location":"reference/cpp/structendstone_1_1ColorFormat/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-aqua","title":"variable Aqua","text":"
          const std::string endstone::ColorFormat::Aqua;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-black","title":"variable Black","text":"
          const std::string endstone::ColorFormat::Black;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-blue","title":"variable Blue","text":"
          const std::string endstone::ColorFormat::Blue;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-bold","title":"variable Bold","text":"
          const std::string endstone::ColorFormat::Bold;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-darkaqua","title":"variable DarkAqua","text":"
          const std::string endstone::ColorFormat::DarkAqua;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-darkblue","title":"variable DarkBlue","text":"
          const std::string endstone::ColorFormat::DarkBlue;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-darkgray","title":"variable DarkGray","text":"
          const std::string endstone::ColorFormat::DarkGray;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-darkgreen","title":"variable DarkGreen","text":"
          const std::string endstone::ColorFormat::DarkGreen;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-darkpurple","title":"variable DarkPurple","text":"
          const std::string endstone::ColorFormat::DarkPurple;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-darkred","title":"variable DarkRed","text":"
          const std::string endstone::ColorFormat::DarkRed;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-escape","title":"variable Escape","text":"
          const std::string endstone::ColorFormat::Escape;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-gold","title":"variable Gold","text":"
          const std::string endstone::ColorFormat::Gold;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-gray","title":"variable Gray","text":"
          const std::string endstone::ColorFormat::Gray;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-green","title":"variable Green","text":"
          const std::string endstone::ColorFormat::Green;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-italic","title":"variable Italic","text":"
          const std::string endstone::ColorFormat::Italic;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-lightpurple","title":"variable LightPurple","text":"
          const std::string endstone::ColorFormat::LightPurple;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materialamethyst","title":"variable MaterialAmethyst","text":"
          const std::string endstone::ColorFormat::MaterialAmethyst;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materialcopper","title":"variable MaterialCopper","text":"
          const std::string endstone::ColorFormat::MaterialCopper;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materialdiamond","title":"variable MaterialDiamond","text":"
          const std::string endstone::ColorFormat::MaterialDiamond;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materialemerald","title":"variable MaterialEmerald","text":"
          const std::string endstone::ColorFormat::MaterialEmerald;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materialgold","title":"variable MaterialGold","text":"
          const std::string endstone::ColorFormat::MaterialGold;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materialiron","title":"variable MaterialIron","text":"
          const std::string endstone::ColorFormat::MaterialIron;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materiallapis","title":"variable MaterialLapis","text":"
          const std::string endstone::ColorFormat::MaterialLapis;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materialnetherite","title":"variable MaterialNetherite","text":"
          const std::string endstone::ColorFormat::MaterialNetherite;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materialquartz","title":"variable MaterialQuartz","text":"
          const std::string endstone::ColorFormat::MaterialQuartz;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-materialredstone","title":"variable MaterialRedstone","text":"
          const std::string endstone::ColorFormat::MaterialRedstone;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-minecoingold","title":"variable MinecoinGold","text":"
          const std::string endstone::ColorFormat::MinecoinGold;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-obfuscated","title":"variable Obfuscated","text":"
          const std::string endstone::ColorFormat::Obfuscated;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-red","title":"variable Red","text":"
          const std::string endstone::ColorFormat::Red;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-reset","title":"variable Reset","text":"
          const std::string endstone::ColorFormat::Reset;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-white","title":"variable White","text":"
          const std::string endstone::ColorFormat::White;\n
          "},{"location":"reference/cpp/structendstone_1_1ColorFormat/#variable-yellow","title":"variable Yellow","text":"
          const std::string endstone::ColorFormat::Yellow;\n

          The documentation for this class was generated from the following file include/endstone/color_format.h

          "},{"location":"reference/cpp/classendstone_1_1Command/","title":"Class endstone::Command","text":"

          ClassList > endstone > Command

          Represents a Command , which executes various tasks upon user input.

          • #include <endstone/command/command.h>

          Inherited by the following classes: endstone::PluginCommand

          "},{"location":"reference/cpp/classendstone_1_1Command/#public-functions","title":"Public Functions","text":"Type Name Command (std::string name, std::string description=\"\", std::vector< std::string > usages={}, std::vector< std::string > aliases={}, std::vector< std::string > permissions={}) virtual PluginCommand * asPluginCommand () const virtual bool execute (CommandSender & sender, const std::vector< std::string > & args) const std::vector< std::string > getAliases () const std::string getDescription () const std::string getName () const std::vector< std::string > getPermissions () const std::vector< std::string > getUsages () const bool isRegistered () const bool registerTo (CommandMap & command_map) void setAliases (Alias... aliases) void setDescription (std::string description) void setName (std::string name) void setPermissions (Permission... permissions) void setUsages (Usage... usages) bool testPermission (const CommandSender & target) const bool testPermissionSilently (const CommandSender & target) const bool unregisterFrom (const CommandMap & command_map) virtual ~Command () = default"},{"location":"reference/cpp/classendstone_1_1Command/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Command/#function-command","title":"function Command","text":"
          inline explicit endstone::Command::Command (\n    std::string name,\n    std::string description=\"\",\n    std::vector< std::string > usages={},\n    std::vector< std::string > aliases={},\n    std::vector< std::string > permissions={}\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Command/#function-asplugincommand","title":"function asPluginCommand","text":"
          inline virtual PluginCommand * endstone::Command::asPluginCommand () const\n
          "},{"location":"reference/cpp/classendstone_1_1Command/#function-execute","title":"function execute","text":"
          inline virtual bool endstone::Command::execute (\n    CommandSender & sender,\n    const std::vector< std::string > & args\n) const\n

          Executes the command, returning its success

          Parameters:

          • sender Source of the command
          • args Arguments passed to the command

          Returns:

          true if the execution was successful, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-getaliases","title":"function getAliases","text":"
          inline std::vector< std::string > endstone::Command::getAliases () const\n

          Returns a list of aliases of this command

          Returns:

          List of aliases

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-getdescription","title":"function getDescription","text":"
          inline std::string endstone::Command::getDescription () const\n

          Gets a brief description of this command

          Returns:

          Description of this command

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-getname","title":"function getName","text":"
          inline std::string endstone::Command::getName () const\n

          Returns the name of this command

          Returns:

          Name of this command

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-getpermissions","title":"function getPermissions","text":"
          inline std::vector< std::string > endstone::Command::getPermissions () const\n

          Gets the permissions required by users to be able to perform this command

          Returns:

          List of permission names, or empty if none

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-getusages","title":"function getUsages","text":"
          inline std::vector< std::string > endstone::Command::getUsages () const\n

          Returns a list of usages of this command

          Returns:

          List of usages

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-isregistered","title":"function isRegistered","text":"
          inline bool endstone::Command::isRegistered () const\n

          Returns the current registered state of this command

          Returns:

          true if this command is currently registered false otherwise

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-registerto","title":"function registerTo","text":"
          inline bool endstone::Command::registerTo (\n    CommandMap & command_map\n) \n

          Registers this command to a CommandMap.

          Parameters:

          • command_map the CommandMap to register to

          Returns:

          true if the registration was successful, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-setaliases","title":"function setAliases","text":"
          template<typename... Alias>\ninline void endstone::Command::setAliases (\n    Alias... aliases\n) \n

          Sets the list of aliases to request on registration for this command.

          Parameters:

          • aliases aliases to register to this command
          "},{"location":"reference/cpp/classendstone_1_1Command/#function-setdescription","title":"function setDescription","text":"
          inline void endstone::Command::setDescription (\n    std::string description\n) \n

          Sets a brief description of this command.

          Parameters:

          • description new command description
          "},{"location":"reference/cpp/classendstone_1_1Command/#function-setname","title":"function setName","text":"
          inline void endstone::Command::setName (\n    std::string name\n) \n

          Sets the name of this command.

          May only be used before registering the command.

          Parameters:

          • name New command name
          "},{"location":"reference/cpp/classendstone_1_1Command/#function-setpermissions","title":"function setPermissions","text":"
          template<typename... Permission>\ninline void endstone::Command::setPermissions (\n    Permission... permissions\n) \n

          Sets the permissions required by users to be able to perform this command

          Parameters:

          • permissions List of permission names
          "},{"location":"reference/cpp/classendstone_1_1Command/#function-setusages","title":"function setUsages","text":"
          template<typename... Usage>\ninline void endstone::Command::setUsages (\n    Usage... usages\n) \n

          Sets the usages of this command

          Parameters:

          • usages List of usages
          "},{"location":"reference/cpp/classendstone_1_1Command/#function-testpermission","title":"function testPermission","text":"
          inline bool endstone::Command::testPermission (\n    const CommandSender & target\n) const\n

          Tests the given CommandSender to see if they can perform this command. If they do not have permission, they will be informed that they cannot do this.

          Parameters:

          • target User to test

          Returns:

          true if they can use it, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-testpermissionsilently","title":"function testPermissionSilently","text":"
          inline bool endstone::Command::testPermissionSilently (\n    const CommandSender & target\n) const\n

          Tests the given CommandSender to see if they can perform this command. No error is sent to the sender.

          Parameters:

          • target User to test

          Returns:

          true if they can use it, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-unregisterfrom","title":"function unregisterFrom","text":"
          inline bool endstone::Command::unregisterFrom (\n    const CommandMap & command_map\n) \n

          Unregisters this command from a CommandMap

          Parameters:

          • command_map the CommandMap to unregister from

          Returns:

          true if the unregistration was successful, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1Command/#function-command_1","title":"function ~Command","text":"
          virtual endstone::Command::~Command () = default\n

          The documentation for this class was generated from the following file include/endstone/command/command.h

          "},{"location":"reference/cpp/classendstone_1_1CommandExecutor/","title":"Class endstone::CommandExecutor","text":"

          ClassList > endstone > CommandExecutor

          Represents a class which contains a single method for executing commands.

          • #include <endstone/command/command_executor.h>

          Inherited by the following classes: endstone::Plugin

          "},{"location":"reference/cpp/classendstone_1_1CommandExecutor/#public-functions","title":"Public Functions","text":"Type Name virtual bool onCommand (CommandSender & sender, const Command & command, const std::vector< std::string > & args) virtual ~CommandExecutor () = default"},{"location":"reference/cpp/classendstone_1_1CommandExecutor/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1CommandExecutor/#function-oncommand","title":"function onCommand","text":"
          inline virtual bool endstone::CommandExecutor::onCommand (\n    CommandSender & sender,\n    const Command & command,\n    const std::vector< std::string > & args\n) \n

          Executes the given command, returning its success.

          Parameters:

          • sender Source of the command
          • command Command which was executed
          • args Passed command arguments

          Returns:

          true if the execution is successful, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1CommandExecutor/#function-commandexecutor","title":"function ~CommandExecutor","text":"
          virtual endstone::CommandExecutor::~CommandExecutor () = default\n

          The documentation for this class was generated from the following file include/endstone/command/command_executor.h

          "},{"location":"reference/cpp/classendstone_1_1CommandMap/","title":"Class endstone::CommandMap","text":"

          ClassList > endstone > CommandMap

          Represents a command map that manages all commands of the Server .

          • #include <endstone/command/command_map.h>
          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#public-functions","title":"Public Functions","text":"Type Name CommandMap () = default CommandMap (const CommandMap &) = delete CommandMap (CommandMap &&) = default virtual void clearCommands () = 0 virtual bool dispatch (CommandSender & sender, std::string command_line) const = 0Looks for the requested command and executes it if found. virtual Command * getCommand (std::string name) const = 0 CommandMap & operator= (const CommandMap &) = delete CommandMap & operator= (CommandMap &&) = default virtual bool registerCommand (std::shared_ptr< Command > command) = 0 virtual ~CommandMap () = default"},{"location":"reference/cpp/classendstone_1_1CommandMap/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-commandmap-13","title":"function CommandMap [\u2153]","text":"
          endstone::CommandMap::CommandMap () = default\n
          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-commandmap-23","title":"function CommandMap [\u2154]","text":"
          endstone::CommandMap::CommandMap (\n    const CommandMap &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-commandmap-33","title":"function CommandMap [3/3]","text":"
          endstone::CommandMap::CommandMap (\n    CommandMap &&\n) = default\n
          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-clearcommands","title":"function clearCommands","text":"
          virtual void endstone::CommandMap::clearCommands () = 0\n

          Clears all registered commands.

          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-dispatch","title":"function dispatch","text":"

          Looks for the requested command and executes it if found.

          virtual bool endstone::CommandMap::dispatch (\n    CommandSender & sender,\n    std::string command_line\n) const = 0\n

          Parameters:

          • sender The command's sender
          • command_line command + arguments. Example: \"/test abc 123\"

          Returns:

          true if execution is successful, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-getcommand","title":"function getCommand","text":"
          virtual Command * endstone::CommandMap::getCommand (\n    std::string name\n) const = 0\n

          Gets the command registered to the specified name

          Parameters:

          • name Name of the command to retrieve

          Returns:

          Command with the specified name or nullptr if a command with that label doesn't exist

          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-operator","title":"function operator=","text":"
          CommandMap & endstone::CommandMap::operator= (\n    const CommandMap &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-operator_1","title":"function operator=","text":"
          CommandMap & endstone::CommandMap::operator= (\n    CommandMap &&\n) = default\n
          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-registercommand","title":"function registerCommand","text":"
          virtual bool endstone::CommandMap::registerCommand (\n    std::shared_ptr< Command > command\n) = 0\n

          Registers a command.

          Parameters:

          • command the command to register

          Returns:

          true on success, false if a command with the same name is already registered

          "},{"location":"reference/cpp/classendstone_1_1CommandMap/#function-commandmap","title":"function ~CommandMap","text":"
          virtual endstone::CommandMap::~CommandMap () = default\n

          The documentation for this class was generated from the following file include/endstone/command/command_map.h

          "},{"location":"reference/cpp/classendstone_1_1CommandSender/","title":"Class endstone::CommandSender","text":"

          ClassList > endstone > CommandSender

          Represents a command sender.

          • #include <endstone/command/command_sender.h>

          Inherits the following classes: endstone::Permissible

          Inherited by the following classes: endstone::Actor, endstone::CommandSenderWrapper, endstone::ConsoleCommandSender, endstone::ProxiedCommandSender

          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#public-functions","title":"Public Functions","text":"Type Name virtual Actor * asActor () constGets a CommandSender asActor . virtual CommandSender * asCommandSender () override constCasts a Permissible asCommandSender . virtual ConsoleCommandSender * asConsole () constGets a CommandSender as Console. virtual Player * asPlayer () constGets a CommandSender asPlayer . virtual std::string getName () const = 0Gets the name of this command sender. virtual Server & getServer () const = 0Returns the server instance that this command is running on. virtual void sendErrorMessage (const Message & message) const = 0Sends this sender a error message. void sendErrorMessage (const fmt::format_string< Args... > format, Args &&... args) const virtual void sendMessage (const Message & message) const = 0Sends this sender a message. void sendMessage (const fmt::format_string< Args... > format, Args &&... args) const"},{"location":"reference/cpp/classendstone_1_1CommandSender/#public-functions-inherited-from-endstonepermissible","title":"Public Functions inherited from endstone::Permissible","text":"

          See endstone::Permissible

          Type Name virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin, const std::string & name, bool value) = 0 virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin) = 0 virtual CommandSender * asCommandSender () const = 0Casts a Permissible asCommandSender . virtual std::unordered_set< PermissionAttachmentInfo * > getEffectivePermissions () const = 0 virtual bool hasPermission (std::string name) const = 0 virtual bool hasPermission (const Permission & perm) const = 0 virtual bool isOp () const = 0Checks if this object is a server operator. virtual bool isPermissionSet (std::string name) const = 0 virtual bool isPermissionSet (const Permission & perm) const = 0 virtual void recalculatePermissions () = 0 virtual Result< void > removeAttachment (PermissionAttachment & attachment) = 0 virtual void setOp (bool value) = 0Sets the operator status of this object. virtual ~Permissible () = default"},{"location":"reference/cpp/classendstone_1_1CommandSender/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-asactor","title":"function asActor","text":"

          Gets a CommandSender asActor .

          inline virtual Actor * endstone::CommandSender::asActor () const\n

          Returns:

          Player, nullptr if not an Actor

          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-ascommandsender","title":"function asCommandSender","text":"

          Casts a Permissible asCommandSender .

          inline virtual CommandSender * endstone::CommandSender::asCommandSender () override const\n

          Returns:

          CommandSender, nullptr if not a CommandSender

          Implements endstone::Permissible::asCommandSender

          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-asconsole","title":"function asConsole","text":"

          Gets a CommandSender as Console.

          inline virtual ConsoleCommandSender * endstone::CommandSender::asConsole () const\n

          Returns:

          CommandSender, nullptr if not a Console

          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-asplayer","title":"function asPlayer","text":"

          Gets a CommandSender asPlayer .

          inline virtual Player * endstone::CommandSender::asPlayer () const\n

          Returns:

          Player, nullptr if not a Player

          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-getname","title":"function getName","text":"

          Gets the name of this command sender.

          virtual std::string endstone::CommandSender::getName () const = 0\n

          Returns:

          Name of the sender

          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-getserver","title":"function getServer","text":"

          Returns the server instance that this command is running on.

          virtual Server & endstone::CommandSender::getServer () const = 0\n

          Returns:

          Server instance

          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-senderrormessage-12","title":"function sendErrorMessage [\u00bd]","text":"

          Sends this sender a error message.

          virtual void endstone::CommandSender::sendErrorMessage (\n    const Message & message\n) const = 0\n

          Parameters:

          • message Error message to be displayed
          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-senderrormessage-22","title":"function sendErrorMessage [2/2]","text":"
          template<typename... Args>\ninline void endstone::CommandSender::sendErrorMessage (\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-sendmessage-12","title":"function sendMessage [\u00bd]","text":"

          Sends this sender a message.

          virtual void endstone::CommandSender::sendMessage (\n    const Message & message\n) const = 0\n

          Parameters:

          • message Message to be displayed
          "},{"location":"reference/cpp/classendstone_1_1CommandSender/#function-sendmessage-22","title":"function sendMessage [2/2]","text":"
          template<typename... Args>\ninline void endstone::CommandSender::sendMessage (\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n

          The documentation for this class was generated from the following file include/endstone/command/command_sender.h

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/","title":"Class endstone::CommandSenderWrapper","text":"

          ClassList > endstone > CommandSenderWrapper

          Represents a wrapper that forwards commands to the wrapped CommandSender and captures its output.

          • #include <endstone/command/command_sender_wrapper.h>

          Inherits the following classes: endstone::CommandSender

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#public-types","title":"Public Types","text":"Type Name typedef std::function< void(const Message &)> Callback"},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#public-functions","title":"Public Functions","text":"Type Name CommandSenderWrapper (CommandSender & sender, Callback on_message={}, Callback on_error={}) virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin, const std::string & name, bool value) override virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin) override virtual Actor * asActor () override constGets a CommandSender asActor . virtual CommandSender * asCommandSender () override constCasts a Permissible asCommandSender . virtual ConsoleCommandSender * asConsole () override constGets a CommandSender as Console. virtual Player * asPlayer () override constGets a CommandSender asPlayer . virtual std::unordered_set< PermissionAttachmentInfo * > getEffectivePermissions () override const virtual std::string getName () override constGets the name of this command sender. virtual Server & getServer () override constReturns the server instance that this command is running on. virtual bool hasPermission (std::string name) override const virtual bool hasPermission (const Permission & perm) override const virtual bool isOp () override constChecks if this object is a server operator. virtual bool isPermissionSet (std::string name) override const virtual bool isPermissionSet (const Permission & perm) override const virtual void recalculatePermissions () override virtual Result< void > removeAttachment (PermissionAttachment & attachment) override virtual void sendErrorMessage (const Message & message) override constSends this sender a error message. virtual void sendMessage (const Message & message) override constSends this sender a message. virtual void setOp (bool value) overrideSets the operator status of this object."},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#public-functions-inherited-from-endstonecommandsender","title":"Public Functions inherited from endstone::CommandSender","text":"

          See endstone::CommandSender

          Type Name virtual Actor * asActor () constGets a CommandSender asActor . virtual CommandSender * asCommandSender () override constCasts a Permissible asCommandSender . virtual ConsoleCommandSender * asConsole () constGets a CommandSender as Console. virtual Player * asPlayer () constGets a CommandSender asPlayer . virtual std::string getName () const = 0Gets the name of this command sender. virtual Server & getServer () const = 0Returns the server instance that this command is running on. virtual void sendErrorMessage (const Message & message) const = 0Sends this sender a error message. void sendErrorMessage (const fmt::format_string< Args... > format, Args &&... args) const virtual void sendMessage (const Message & message) const = 0Sends this sender a message. void sendMessage (const fmt::format_string< Args... > format, Args &&... args) const"},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#public-functions-inherited-from-endstonepermissible","title":"Public Functions inherited from endstone::Permissible","text":"

          See endstone::Permissible

          Type Name virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin, const std::string & name, bool value) = 0 virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin) = 0 virtual CommandSender * asCommandSender () const = 0Casts a Permissible asCommandSender . virtual std::unordered_set< PermissionAttachmentInfo * > getEffectivePermissions () const = 0 virtual bool hasPermission (std::string name) const = 0 virtual bool hasPermission (const Permission & perm) const = 0 virtual bool isOp () const = 0Checks if this object is a server operator. virtual bool isPermissionSet (std::string name) const = 0 virtual bool isPermissionSet (const Permission & perm) const = 0 virtual void recalculatePermissions () = 0 virtual Result< void > removeAttachment (PermissionAttachment & attachment) = 0 virtual void setOp (bool value) = 0Sets the operator status of this object. virtual ~Permissible () = default"},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#typedef-callback","title":"typedef Callback","text":"
          using endstone::CommandSenderWrapper::Callback =  std::function<void(const Message &)>;\n
          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-commandsenderwrapper","title":"function CommandSenderWrapper","text":"
          inline explicit endstone::CommandSenderWrapper::CommandSenderWrapper (\n    CommandSender & sender,\n    Callback on_message={},\n    Callback on_error={}\n) \n
          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-addattachment-12","title":"function addAttachment [\u00bd]","text":"
          inline virtual Result< PermissionAttachment * > endstone::CommandSenderWrapper::addAttachment (\n    Plugin & plugin,\n    const std::string & name,\n    bool value\n) override\n

          Adds a new PermissionAttachment with a single permission by name and value

          Parameters:

          • plugin Plugin responsible for this attachment, may not be null or disabled
          • name Name of the permission to attach
          • value Value of the permission

          Returns:

          The PermissionAttachment that was just created

          Implements endstone::Permissible::addAttachment

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-addattachment-22","title":"function addAttachment [2/2]","text":"
          inline virtual Result< PermissionAttachment * > endstone::CommandSenderWrapper::addAttachment (\n    Plugin & plugin\n) override\n

          Adds a new empty PermissionAttachment to this object

          Parameters:

          • plugin Plugin responsible for this attachment, may not be null or disabled

          Returns:

          The PermissionAttachment that was just created

          Implements endstone::Permissible::addAttachment

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-asactor","title":"function asActor","text":"

          Gets a CommandSender asActor .

          inline virtual Actor * endstone::CommandSenderWrapper::asActor () override const\n

          Returns:

          Player, nullptr if not an Actor

          Implements endstone::CommandSender::asActor

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-ascommandsender","title":"function asCommandSender","text":"

          Casts a Permissible asCommandSender .

          inline virtual CommandSender * endstone::CommandSenderWrapper::asCommandSender () override const\n

          Returns:

          CommandSender, nullptr if not a CommandSender

          Implements endstone::CommandSender::asCommandSender

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-asconsole","title":"function asConsole","text":"

          Gets a CommandSender as Console.

          inline virtual ConsoleCommandSender * endstone::CommandSenderWrapper::asConsole () override const\n

          Returns:

          CommandSender, nullptr if not a Console

          Implements endstone::CommandSender::asConsole

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-asplayer","title":"function asPlayer","text":"

          Gets a CommandSender asPlayer .

          inline virtual Player * endstone::CommandSenderWrapper::asPlayer () override const\n

          Returns:

          Player, nullptr if not a Player

          Implements endstone::CommandSender::asPlayer

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-geteffectivepermissions","title":"function getEffectivePermissions","text":"
          inline virtual std::unordered_set< PermissionAttachmentInfo * > endstone::CommandSenderWrapper::getEffectivePermissions () override const\n

          Gets a set containing all the permissions currently in effect by this object

          Returns:

          Set of currently effective permissions

          Implements endstone::Permissible::getEffectivePermissions

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-getname","title":"function getName","text":"

          Gets the name of this command sender.

          inline virtual std::string endstone::CommandSenderWrapper::getName () override const\n

          Returns:

          Name of the sender

          Implements endstone::CommandSender::getName

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-getserver","title":"function getServer","text":"

          Returns the server instance that this command is running on.

          inline virtual Server & endstone::CommandSenderWrapper::getServer () override const\n

          Returns:

          Server instance

          Implements endstone::CommandSender::getServer

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-haspermission-12","title":"function hasPermission [\u00bd]","text":"
          inline virtual bool endstone::CommandSenderWrapper::hasPermission (\n    std::string name\n) override const\n

          Gets the value of the specified permission, if set. If a permission override is not set on this object, the default value of the permission will be returned.

          Parameters:

          • name Name of the permission

          Returns:

          Value of the permission

          Implements endstone::Permissible::hasPermission

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-haspermission-22","title":"function hasPermission [2/2]","text":"
          inline virtual bool endstone::CommandSenderWrapper::hasPermission (\n    const Permission & perm\n) override const\n

          Gets the value of the specified permission, if set. If a permission override is not set on this object, the default value of the permission will be returned.

          Parameters:

          • perm Permission to get

          Returns:

          Value of the permission

          Implements endstone::Permissible::hasPermission

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-isop","title":"function isOp","text":"

          Checks if this object is a server operator.

          inline virtual bool endstone::CommandSenderWrapper::isOp () override const\n

          Returns:

          true if this is an operator, otherwise false

          Implements endstone::Permissible::isOp

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-ispermissionset-12","title":"function isPermissionSet [\u00bd]","text":"
          inline virtual bool endstone::CommandSenderWrapper::isPermissionSet (\n    std::string name\n) override const\n

          Checks if this object contains an override for the specified permission, by fully qualified name

          Parameters:

          • name Name of the permission

          Returns:

          true if the permission is set, otherwise false

          Implements endstone::Permissible::isPermissionSet

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-ispermissionset-22","title":"function isPermissionSet [2/2]","text":"
          inline virtual bool endstone::CommandSenderWrapper::isPermissionSet (\n    const Permission & perm\n) override const\n

          Checks if this object contains an override for the specified Permission

          Parameters:

          • perm Permission to check

          Returns:

          true if the permission is set, otherwise false

          Implements endstone::Permissible::isPermissionSet

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-recalculatepermissions","title":"function recalculatePermissions","text":"
          inline virtual void endstone::CommandSenderWrapper::recalculatePermissions () override\n

          Recalculates the permissions for this object, if the attachments have changed values. This should very rarely need to be called from a plugin.

          Implements endstone::Permissible::recalculatePermissions

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-removeattachment","title":"function removeAttachment","text":"
          inline virtual Result< void > endstone::CommandSenderWrapper::removeAttachment (\n    PermissionAttachment & attachment\n) override\n

          Removes the given PermissionAttachment from this object

          Parameters:

          • attachment Attachment to remove

          Returns:

          true if the specified attachment was removed successfully, false when it isn't part of this object

          Implements endstone::Permissible::removeAttachment

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-senderrormessage","title":"function sendErrorMessage","text":"

          Sends this sender a error message.

          inline virtual void endstone::CommandSenderWrapper::sendErrorMessage (\n    const Message & message\n) override const\n

          Parameters:

          • message Error message to be displayed

          Implements endstone::CommandSender::sendErrorMessage

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-sendmessage","title":"function sendMessage","text":"

          Sends this sender a message.

          inline virtual void endstone::CommandSenderWrapper::sendMessage (\n    const Message & message\n) override const\n

          Parameters:

          • message Message to be displayed

          Implements endstone::CommandSender::sendMessage

          "},{"location":"reference/cpp/classendstone_1_1CommandSenderWrapper/#function-setop","title":"function setOp","text":"

          Sets the operator status of this object.

          inline virtual void endstone::CommandSenderWrapper::setOp (\n    bool value\n) override\n

          Parameters:

          • value New operator value

          Implements endstone::Permissible::setOp

          The documentation for this class was generated from the following file include/endstone/command/command_sender_wrapper.h

          "},{"location":"reference/cpp/classendstone_1_1ConsoleCommandSender/","title":"Class endstone::ConsoleCommandSender","text":"

          ClassList > endstone > ConsoleCommandSender

          Represents a console command sender.

          • #include <endstone/command/console_command_sender.h>

          Inherits the following classes: endstone::CommandSender

          "},{"location":"reference/cpp/classendstone_1_1ConsoleCommandSender/#public-functions-inherited-from-endstonecommandsender","title":"Public Functions inherited from endstone::CommandSender","text":"

          See endstone::CommandSender

          Type Name virtual Actor * asActor () constGets a CommandSender asActor . virtual CommandSender * asCommandSender () override constCasts a Permissible asCommandSender . virtual ConsoleCommandSender * asConsole () constGets a CommandSender as Console. virtual Player * asPlayer () constGets a CommandSender asPlayer . virtual std::string getName () const = 0Gets the name of this command sender. virtual Server & getServer () const = 0Returns the server instance that this command is running on. virtual void sendErrorMessage (const Message & message) const = 0Sends this sender a error message. void sendErrorMessage (const fmt::format_string< Args... > format, Args &&... args) const virtual void sendMessage (const Message & message) const = 0Sends this sender a message. void sendMessage (const fmt::format_string< Args... > format, Args &&... args) const"},{"location":"reference/cpp/classendstone_1_1ConsoleCommandSender/#public-functions-inherited-from-endstonepermissible","title":"Public Functions inherited from endstone::Permissible","text":"

          See endstone::Permissible

          Type Name virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin, const std::string & name, bool value) = 0 virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin) = 0 virtual CommandSender * asCommandSender () const = 0Casts a Permissible asCommandSender . virtual std::unordered_set< PermissionAttachmentInfo * > getEffectivePermissions () const = 0 virtual bool hasPermission (std::string name) const = 0 virtual bool hasPermission (const Permission & perm) const = 0 virtual bool isOp () const = 0Checks if this object is a server operator. virtual bool isPermissionSet (std::string name) const = 0 virtual bool isPermissionSet (const Permission & perm) const = 0 virtual void recalculatePermissions () = 0 virtual Result< void > removeAttachment (PermissionAttachment & attachment) = 0 virtual void setOp (bool value) = 0Sets the operator status of this object. virtual ~Permissible () = default

          The documentation for this class was generated from the following file include/endstone/command/console_command_sender.h

          "},{"location":"reference/cpp/classendstone_1_1Criteria/","title":"Class endstone::Criteria","text":"

          ClassList > endstone > Criteria

          Represents a scoreboard criteria.

          • #include <endstone/scoreboard/criteria.h>
          "},{"location":"reference/cpp/classendstone_1_1Criteria/#public-types","title":"Public Types","text":"Type Name enum Type"},{"location":"reference/cpp/classendstone_1_1Criteria/#public-functions","title":"Public Functions","text":"Type Name virtual RenderType getDefaultRenderType () const = 0 virtual std::string getName () const = 0Get the name of this criteria (its unique id). virtual bool isReadOnly () const = 0Get whether or not this criteria is read only. If read only, scoreboards with this criteria cannot have their scores changed. virtual ~Criteria () = default"},{"location":"reference/cpp/classendstone_1_1Criteria/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Criteria/#enum-type","title":"enum Type","text":"
          enum endstone::Criteria::Type {\n    Dummy\n};\n
          "},{"location":"reference/cpp/classendstone_1_1Criteria/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Criteria/#function-getdefaultrendertype","title":"function getDefaultRenderType","text":"
          virtual RenderType endstone::Criteria::getDefaultRenderType () const = 0\n

          Get the RenderType used by default for this criteria.

          Returns:

          the default render type

          "},{"location":"reference/cpp/classendstone_1_1Criteria/#function-getname","title":"function getName","text":"

          Get the name of this criteria (its unique id).

          virtual std::string endstone::Criteria::getName () const = 0\n

          Returns:

          the name

          "},{"location":"reference/cpp/classendstone_1_1Criteria/#function-isreadonly","title":"function isReadOnly","text":"

          Get whether or not this criteria is read only. If read only, scoreboards with this criteria cannot have their scores changed.

          virtual bool endstone::Criteria::isReadOnly () const = 0\n

          Returns:

          true if read only, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1Criteria/#function-criteria","title":"function ~Criteria","text":"
          virtual endstone::Criteria::~Criteria () = default\n

          The documentation for this class was generated from the following file include/endstone/scoreboard/criteria.h

          "},{"location":"reference/cpp/classendstone_1_1Dimension/","title":"Class endstone::Dimension","text":"

          ClassList > endstone > Dimension

          Represents a dimension within a Level .

          • #include <endstone/level/dimension.h>
          "},{"location":"reference/cpp/classendstone_1_1Dimension/#public-types","title":"Public Types","text":"Type Name enum Type Represents various dimension types."},{"location":"reference/cpp/classendstone_1_1Dimension/#public-functions","title":"Public Functions","text":"Type Name virtual Result< std::unique_ptr< Block > > getBlockAt (int x, int y, int z) = 0Gets the Block at the given coordinates. virtual Result< std::unique_ptr< Block > > getBlockAt (Location location) = 0Gets the Block at the givenLocation . virtual Level & getLevel () const = 0Gets the level to which this dimension belongs. virtual std::string getName () const = 0Gets the name of this dimension. virtual Type getType () const = 0Gets the type of this dimension. virtual ~Dimension () = default"},{"location":"reference/cpp/classendstone_1_1Dimension/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Dimension/#enum-type","title":"enum Type","text":"
          enum endstone::Dimension::Type {\n    Overworld = 0,\n    Nether = 1,\n    TheEnd = 2,\n    Custom = 999\n};\n
          "},{"location":"reference/cpp/classendstone_1_1Dimension/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Dimension/#function-getblockat-12","title":"function getBlockAt [\u00bd]","text":"

          Gets the Block at the given coordinates.

          virtual Result< std::unique_ptr< Block > > endstone::Dimension::getBlockAt (\n    int x,\n    int y,\n    int z\n) = 0\n

          Parameters:

          • x X-coordinate of the block
          • y Y-coordinate of the block
          • z Z-coordinate of the block

          Returns:

          Block at the given coordinates

          "},{"location":"reference/cpp/classendstone_1_1Dimension/#function-getblockat-22","title":"function getBlockAt [2/2]","text":"

          Gets the Block at the givenLocation .

          virtual Result< std::unique_ptr< Block > > endstone::Dimension::getBlockAt (\n    Location location\n) = 0\n

          Parameters:

          • location Location of the block

          Returns:

          Block at the given coordinates

          "},{"location":"reference/cpp/classendstone_1_1Dimension/#function-getlevel","title":"function getLevel","text":"

          Gets the level to which this dimension belongs.

          virtual Level & endstone::Dimension::getLevel () const = 0\n

          Returns:

          Level containing this dimension.

          "},{"location":"reference/cpp/classendstone_1_1Dimension/#function-getname","title":"function getName","text":"

          Gets the name of this dimension.

          virtual std::string endstone::Dimension::getName () const = 0\n

          Returns:

          Name of this dimension

          "},{"location":"reference/cpp/classendstone_1_1Dimension/#function-gettype","title":"function getType","text":"

          Gets the type of this dimension.

          virtual Type endstone::Dimension::getType () const = 0\n

          Returns:

          Type of this dimension

          "},{"location":"reference/cpp/classendstone_1_1Dimension/#function-dimension","title":"function ~Dimension","text":"
          virtual endstone::Dimension::~Dimension () = default\n

          The documentation for this class was generated from the following file include/endstone/level/dimension.h

          "},{"location":"reference/cpp/classendstone_1_1Dropdown/","title":"Class endstone::Dropdown","text":"

          ClassList > endstone > Dropdown

          Represents a dropdown with a set of predefined options.

          • #include <endstone/form/controls/dropdown.h>

          Inherited by the following classes: endstone::StepSlider

          "},{"location":"reference/cpp/classendstone_1_1Dropdown/#public-functions","title":"Public Functions","text":"Type Name Dropdown () = default Dropdown (Message label, std::vector< std::string > options, std::optional< int > default_index=std::nullopt) Dropdown & addOption (const std::string & option) Adds a new option to the dropdown. std::optional< int > getDefaultIndex () constGets the default index of the dropdown. Message getLabel () constGets the label of the dropdown. std::vector< std::string > getOptions () constGets the options of the dropdown. Dropdown & setDefaultIndex (std::optional< int > default_index) Sets the default index of the dropdown. Dropdown & setLabel (Message label) Sets the label of the dropdown. Dropdown & setOptions (std::vector< std::string > options) Sets the options of the dropdown."},{"location":"reference/cpp/classendstone_1_1Dropdown/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Dropdown/#function-dropdown-12","title":"function Dropdown [\u00bd]","text":"
          endstone::Dropdown::Dropdown () = default\n
          "},{"location":"reference/cpp/classendstone_1_1Dropdown/#function-dropdown-22","title":"function Dropdown [2/2]","text":"
          inline explicit endstone::Dropdown::Dropdown (\n    Message label,\n    std::vector< std::string > options,\n    std::optional< int > default_index=std::nullopt\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Dropdown/#function-addoption","title":"function addOption","text":"

          Adds a new option to the dropdown.

          inline Dropdown & endstone::Dropdown::addOption (\n    const std::string & option\n) \n

          Parameters:

          • option The new option for the dropdown.

          Returns:

          A reference to the dropdown itself.

          "},{"location":"reference/cpp/classendstone_1_1Dropdown/#function-getdefaultindex","title":"function getDefaultIndex","text":"

          Gets the default index of the dropdown.

          inline std::optional< int > endstone::Dropdown::getDefaultIndex () const\n

          Returns:

          The default index of the dropdown.

          "},{"location":"reference/cpp/classendstone_1_1Dropdown/#function-getlabel","title":"function getLabel","text":"

          Gets the label of the dropdown.

          inline Message endstone::Dropdown::getLabel () const\n

          Returns:

          The label of the dropdown.

          "},{"location":"reference/cpp/classendstone_1_1Dropdown/#function-getoptions","title":"function getOptions","text":"

          Gets the options of the dropdown.

          inline std::vector< std::string > endstone::Dropdown::getOptions () const\n

          Returns:

          The options of the dropdown.

          "},{"location":"reference/cpp/classendstone_1_1Dropdown/#function-setdefaultindex","title":"function setDefaultIndex","text":"

          Sets the default index of the dropdown.

          inline Dropdown & endstone::Dropdown::setDefaultIndex (\n    std::optional< int > default_index\n) \n

          Parameters:

          • default_index The new default index for the dropdown.

          Returns:

          A reference to the dropdown itself.

          "},{"location":"reference/cpp/classendstone_1_1Dropdown/#function-setlabel","title":"function setLabel","text":"

          Sets the label of the dropdown.

          inline Dropdown & endstone::Dropdown::setLabel (\n    Message label\n) \n

          Parameters:

          • label The new label for the dropdown.

          Returns:

          A reference to the dropdown itself.

          "},{"location":"reference/cpp/classendstone_1_1Dropdown/#function-setoptions","title":"function setOptions","text":"

          Sets the options of the dropdown.

          inline Dropdown & endstone::Dropdown::setOptions (\n    std::vector< std::string > options\n) \n

          Parameters:

          • options The new options for the dropdown.

          Returns:

          A reference to the dropdown itself.

          The documentation for this class was generated from the following file include/endstone/form/controls/dropdown.h

          "},{"location":"reference/cpp/classendstone_1_1Error/","title":"Class endstone::Error","text":"

          ClassList > endstone > Error

          Represents an error with a message and the stack trace.

          • #include <endstone/util/error.h>
          "},{"location":"reference/cpp/classendstone_1_1Error/#public-functions","title":"Public Functions","text":"Type Name Error (std::string_view message, std::string_view stack_trace) std::string_view getMessage () noexcept constReturns the error message. std::string_view getStackTrace () noexcept constReturns the stack trace associated with the error."},{"location":"reference/cpp/classendstone_1_1Error/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Error/#function-error","title":"function Error","text":"
          inline endstone::Error::Error (\n    std::string_view message,\n    std::string_view stack_trace\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Error/#function-getmessage","title":"function getMessage","text":"

          Returns the error message.

          inline std::string_view endstone::Error::getMessage () noexcept const\n

          Returns:

          The error message.

          "},{"location":"reference/cpp/classendstone_1_1Error/#function-getstacktrace","title":"function getStackTrace","text":"

          Returns the stack trace associated with the error.

          inline std::string_view endstone::Error::getStackTrace () noexcept const\n

          Returns:

          The stack trace associated with the error.

          The documentation for this class was generated from the following file include/endstone/util/error.h

          "},{"location":"reference/cpp/classendstone_1_1Event/","title":"Class endstone::Event","text":"

          ClassList > endstone > Event

          Represents an event.

          • #include <endstone/event/event.h>

          Inherited by the following classes: endstone::ActorEvent, endstone::BlockEvent, endstone::PlayerEvent, endstone::ServerEvent, endstone::WeatherEvent

          "},{"location":"reference/cpp/classendstone_1_1Event/#public-functions","title":"Public Functions","text":"Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1Event/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Event/#function-event-12","title":"function Event [\u00bd]","text":"
          inline explicit endstone::Event::Event (\n    bool async=false\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Event/#function-event-22","title":"function Event [2/2]","text":"
          endstone::Event::Event (\n    const Event &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1Event/#function-geteventname","title":"function getEventName","text":"
          virtual std::string endstone::Event::getEventName () const = 0\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          "},{"location":"reference/cpp/classendstone_1_1Event/#function-isasynchronous","title":"function isAsynchronous","text":"
          inline bool endstone::Event::isAsynchronous () const\n

          Any custom event that should not by synchronized with other events must use the specific constructor.

          Returns:

          false by default, true if the event fires asynchronously

          "},{"location":"reference/cpp/classendstone_1_1Event/#function-iscancellable","title":"function isCancellable","text":"
          virtual bool endstone::Event::isCancellable () const = 0\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          "},{"location":"reference/cpp/classendstone_1_1Event/#function-iscancelled","title":"function isCancelled","text":"
          inline bool endstone::Event::isCancelled () const\n

          Gets the cancellation state of this event. A cancelled event will not be executed in the server, but will still pass to other plugins

          Returns:

          true if this event is cancelled

          "},{"location":"reference/cpp/classendstone_1_1Event/#function-operator","title":"function operator=","text":"
          Event & endstone::Event::operator= (\n    const Event &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1Event/#function-setcancelled","title":"function setCancelled","text":"
          inline void endstone::Event::setCancelled (\n    bool cancel\n) \n

          Sets the cancellation state of this event. A cancelled event will not be executed in the server, but will still pass to other plugins.

          Parameters:

          • cancel true if you wish to cancel this event
          "},{"location":"reference/cpp/classendstone_1_1Event/#function-event","title":"function ~Event","text":"
          virtual endstone::Event::~Event () = default\n

          The documentation for this class was generated from the following file include/endstone/event/event.h

          "},{"location":"reference/cpp/classendstone_1_1EventHandler/","title":"Class endstone::EventHandler","text":"

          ClassList > endstone > EventHandler

          Represents a registered EventHandler which associates with aPlugin .

          • #include <endstone/event/event_handler.h>
          "},{"location":"reference/cpp/classendstone_1_1EventHandler/#public-functions","title":"Public Functions","text":"Type Name EventHandler (std::string event, std::function< void(Event &)> executor, EventPriority priority, Plugin & plugin, bool ignore_cancelled) void callEvent (Event & event) std::string getEventType () const Plugin & getPlugin () const EventPriority getPriority () const bool isIgnoreCancelled () const"},{"location":"reference/cpp/classendstone_1_1EventHandler/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1EventHandler/#function-eventhandler","title":"function EventHandler","text":"
          inline endstone::EventHandler::EventHandler (\n    std::string event,\n    std::function< void( Event &)> executor,\n    EventPriority priority,\n    Plugin & plugin,\n    bool ignore_cancelled\n) \n
          "},{"location":"reference/cpp/classendstone_1_1EventHandler/#function-callevent","title":"function callEvent","text":"
          inline void endstone::EventHandler::callEvent (\n    Event & event\n) \n

          Calls the event executor

          Parameters:

          • event The event
          "},{"location":"reference/cpp/classendstone_1_1EventHandler/#function-geteventtype","title":"function getEventType","text":"
          inline std::string endstone::EventHandler::getEventType () const\n

          Gets the event type for this registration

          Returns:

          Registered event type

          "},{"location":"reference/cpp/classendstone_1_1EventHandler/#function-getplugin","title":"function getPlugin","text":"
          inline Plugin & endstone::EventHandler::getPlugin () const\n

          Gets the plugin for this registration

          Returns:

          Registered Plugin

          "},{"location":"reference/cpp/classendstone_1_1EventHandler/#function-getpriority","title":"function getPriority","text":"
          inline EventPriority endstone::EventHandler::getPriority () const\n

          Gets the priority for this registration

          Returns:

          Registered Priority

          "},{"location":"reference/cpp/classendstone_1_1EventHandler/#function-isignorecancelled","title":"function isIgnoreCancelled","text":"
          inline bool endstone::EventHandler::isIgnoreCancelled () const\n

          Whether this listener accepts cancelled events

          Returns:

          True when ignoring cancelled events

          The documentation for this class was generated from the following file include/endstone/event/event_handler.h

          "},{"location":"reference/cpp/classendstone_1_1Form/","title":"Class endstone::Form","text":"

          template <typename T>

          ClassList > endstone > Form

          Represents a generic form. More...

          • #include <endstone/form/form.h>
          "},{"location":"reference/cpp/classendstone_1_1Form/#public-types","title":"Public Types","text":"Type Name typedef std::function< void(Player *)> OnCloseCallback"},{"location":"reference/cpp/classendstone_1_1Form/#public-functions","title":"Public Functions","text":"Type Name Form () = default OnCloseCallback getOnClose () constGets the on close callback of the form. Message getTitle () constGets the title of the form. T & setOnClose (OnCloseCallback on_close) Sets the on close callback of the form. T & setTitle (Message title) Sets the title of the form."},{"location":"reference/cpp/classendstone_1_1Form/#protected-attributes","title":"Protected Attributes","text":"Type Name OnCloseCallback on_close_ Message title_"},{"location":"reference/cpp/classendstone_1_1Form/#detailed-description","title":"Detailed Description","text":"

          The Form class provides a base abstraction for different types of forms. It supports three types of forms: Action, Message, and Modal. Each form has a title, which can be a string or a translatable object.

          "},{"location":"reference/cpp/classendstone_1_1Form/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Form/#typedef-onclosecallback","title":"typedef OnCloseCallback","text":"
          using endstone::Form< T >::OnCloseCallback =  std::function<void(Player *)>;\n
          "},{"location":"reference/cpp/classendstone_1_1Form/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Form/#function-form","title":"function Form","text":"
          explicit endstone::Form::Form () = default\n
          "},{"location":"reference/cpp/classendstone_1_1Form/#function-getonclose","title":"function getOnClose","text":"

          Gets the on close callback of the form.

          inline OnCloseCallback endstone::Form::getOnClose () const\n

          Returns:

          The on close callback of the form.

          "},{"location":"reference/cpp/classendstone_1_1Form/#function-gettitle","title":"function getTitle","text":"

          Gets the title of the form.

          inline Message endstone::Form::getTitle () const\n

          Returns:

          The title of the form.

          "},{"location":"reference/cpp/classendstone_1_1Form/#function-setonclose","title":"function setOnClose","text":"

          Sets the on close callback of the form.

          inline T & endstone::Form::setOnClose (\n    OnCloseCallback on_close\n) \n

          Parameters:

          • on_close The callback to be set.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1Form/#function-settitle","title":"function setTitle","text":"

          Sets the title of the form.

          inline T & endstone::Form::setTitle (\n    Message title\n) \n

          Parameters:

          • title The title of the form to be set.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1Form/#protected-attributes-documentation","title":"Protected Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Form/#variable-on_close_","title":"variable on_close_","text":"
          OnCloseCallback endstone::Form< T >::on_close_;\n
          "},{"location":"reference/cpp/classendstone_1_1Form/#variable-title_","title":"variable title_","text":"
          Message endstone::Form< T >::title_;\n

          The documentation for this class was generated from the following file include/endstone/form/form.h

          "},{"location":"reference/cpp/classendstone_1_1HandlerList/","title":"Class endstone::HandlerList","text":"

          ClassList > endstone > HandlerList

          A list of event handlers. Should be instantiated on a per-event basis.

          • #include <endstone/event/handler_list.h>
          "},{"location":"reference/cpp/classendstone_1_1HandlerList/#public-functions","title":"Public Functions","text":"Type Name HandlerList (std::string event) std::vector< EventHandler * > getHandlers () const EventHandler * registerHandler (std::unique_ptr< EventHandler > handler) void unregister (const EventHandler & handler) void unregister (const Plugin & plugin)"},{"location":"reference/cpp/classendstone_1_1HandlerList/#protected-functions","title":"Protected Functions","text":"Type Name void bake () const"},{"location":"reference/cpp/classendstone_1_1HandlerList/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1HandlerList/#function-handlerlist","title":"function HandlerList","text":"
          inline explicit endstone::HandlerList::HandlerList (\n    std::string event\n) \n
          "},{"location":"reference/cpp/classendstone_1_1HandlerList/#function-gethandlers","title":"function getHandlers","text":"
          inline std::vector< EventHandler * > endstone::HandlerList::getHandlers () const\n

          Get the baked registered handlers associated with this handler list

          Returns:

          the array of registered handlers

          "},{"location":"reference/cpp/classendstone_1_1HandlerList/#function-registerhandler","title":"function registerHandler","text":"
          inline EventHandler * endstone::HandlerList::registerHandler (\n    std::unique_ptr< EventHandler > handler\n) \n

          Register a new handler

          Parameters:

          • handler Event handler to register

          Returns:

          the pointer to the registered handler

          "},{"location":"reference/cpp/classendstone_1_1HandlerList/#function-unregister-12","title":"function unregister [\u00bd]","text":"
          inline void endstone::HandlerList::unregister (\n    const EventHandler & handler\n) \n

          Remove a handler from a specific order slot

          Parameters:

          • handler Event handler to remove
          "},{"location":"reference/cpp/classendstone_1_1HandlerList/#function-unregister-22","title":"function unregister [2/2]","text":"
          inline void endstone::HandlerList::unregister (\n    const Plugin & plugin\n) \n

          Remove a specific plugin's handlers from this handler

          Parameters:

          • plugin Plugin to remove
          "},{"location":"reference/cpp/classendstone_1_1HandlerList/#protected-functions-documentation","title":"Protected Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1HandlerList/#function-bake","title":"function bake","text":"
          inline void endstone::HandlerList::bake () const\n

          The documentation for this class was generated from the following file include/endstone/event/handler_list.h

          "},{"location":"reference/cpp/classendstone_1_1Inventory/","title":"Class endstone::Inventory","text":"

          ClassList > endstone > Inventory

          Interface to the various inventories.

          • #include <endstone/inventory/inventory.h>

          Inherited by the following classes: endstone::PlayerInventory

          "},{"location":"reference/cpp/classendstone_1_1Inventory/#public-functions","title":"Public Functions","text":"Type Name virtual void addItem (ItemStack & item) = 0Stores the given ItemStacks in the inventory. This will try to fill existing stacks and empty slots as well as it can. virtual void clear () = 0Clears out the whole Inventory . virtual int first (ItemStack & item) = 0Returns the first slot in the inventory containing an ItemStack with the given stack. virtual std::vector< std::shared_ptr< ItemStack > > getContents () const = 0Returns all ItemStacks from the inventory. virtual std::shared_ptr< ItemStack > getItem (int index) const = 0Returns the ItemStack found in the slot at the given index. virtual int getMaxStackSize () const = 0Returns the maximum stack size for an ItemStack in this inventory. virtual int getSize () const = 0Returns the size of the inventory. virtual bool isEmpty () const = 0Check whether this inventory is empty. An inventory is considered to be empty if there are no ItemStacks in any slot of this inventory. virtual void setItem (int index, std::shared_ptr< ItemStack > item) = 0Stores the ItemStack at the given index of the inventory. virtual ~Inventory () = default"},{"location":"reference/cpp/classendstone_1_1Inventory/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Inventory/#function-additem","title":"function addItem","text":"

          Stores the given ItemStacks in the inventory. This will try to fill existing stacks and empty slots as well as it can.

          virtual void endstone::Inventory::addItem (\n    ItemStack & item\n) = 0\n

          Parameters:

          • item The ItemStack to add
          "},{"location":"reference/cpp/classendstone_1_1Inventory/#function-clear","title":"function clear","text":"
          virtual void endstone::Inventory::clear () = 0\n
          "},{"location":"reference/cpp/classendstone_1_1Inventory/#function-first","title":"function first","text":"

          Returns the first slot in the inventory containing an ItemStack with the given stack.

          virtual int endstone::Inventory::first (\n    ItemStack & item\n) = 0\n

          Parameters:

          • item The ItemStack to match against

          Returns:

          The slot index of the given ItemStack or -1 if not found

          "},{"location":"reference/cpp/classendstone_1_1Inventory/#function-getcontents","title":"function getContents","text":"

          Returns all ItemStacks from the inventory.

          virtual std::vector< std::shared_ptr< ItemStack > > endstone::Inventory::getContents () const = 0\n

          Returns:

          An array of ItemStacks from the inventory. Individual items may be null.

          "},{"location":"reference/cpp/classendstone_1_1Inventory/#function-getitem","title":"function getItem","text":"

          Returns the ItemStack found in the slot at the given index.

          virtual std::shared_ptr< ItemStack > endstone::Inventory::getItem (\n    int index\n) const = 0\n

          Parameters:

          • index The index of the Slot's ItemStack to return

          Returns:

          The ItemStack in the slot

          "},{"location":"reference/cpp/classendstone_1_1Inventory/#function-getmaxstacksize","title":"function getMaxStackSize","text":"

          Returns the maximum stack size for an ItemStack in this inventory.

          virtual int endstone::Inventory::getMaxStackSize () const = 0\n

          Returns:

          The maximum size for an ItemStack in this inventory.

          "},{"location":"reference/cpp/classendstone_1_1Inventory/#function-getsize","title":"function getSize","text":"

          Returns the size of the inventory.

          virtual int endstone::Inventory::getSize () const = 0\n

          Returns:

          The size of the inventory

          "},{"location":"reference/cpp/classendstone_1_1Inventory/#function-isempty","title":"function isEmpty","text":"

          Check whether this inventory is empty. An inventory is considered to be empty if there are no ItemStacks in any slot of this inventory.

          virtual bool endstone::Inventory::isEmpty () const = 0\n

          Returns:

          true if empty, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1Inventory/#function-setitem","title":"function setItem","text":"

          Stores the ItemStack at the given index of the inventory.

          virtual void endstone::Inventory::setItem (\n    int index,\n    std::shared_ptr< ItemStack > item\n) = 0\n

          Parameters:

          • index The index where to put the ItemStack
          • item The ItemStack to set
          "},{"location":"reference/cpp/classendstone_1_1Inventory/#function-inventory","title":"function ~Inventory","text":"
          virtual endstone::Inventory::~Inventory () = default\n

          The documentation for this class was generated from the following file include/endstone/inventory/inventory.h

          "},{"location":"reference/cpp/classendstone_1_1ItemStack/","title":"Class endstone::ItemStack","text":"

          ClassList > endstone > ItemStack

          Represents a stack of items.

          • #include <endstone/inventory/item_stack.h>

          Inherits the following classes: std::enable_shared_from_this< ItemStack >

          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#public-functions","title":"Public Functions","text":"Type Name ItemStack () = default ItemStack (std::string type, int amount=1) virtual int getAmount () constGets the amount of items in this stack. virtual std::string getType () constGets the type of this item. virtual void setAmount (int amount) Sets the amount of items in this stack. virtual void setType (std::string type) Sets the type of this item. virtual ~ItemStack () = default"},{"location":"reference/cpp/classendstone_1_1ItemStack/#protected-functions","title":"Protected Functions","text":"Type Name virtual const detail::EndstoneItemStack * asEndstoneItemStack () const virtual detail::EndstoneItemStack * asEndstoneItemStack ()"},{"location":"reference/cpp/classendstone_1_1ItemStack/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ItemStack/#function-itemstack-12","title":"function ItemStack [\u00bd]","text":"
          endstone::ItemStack::ItemStack () = default\n
          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#function-itemstack-22","title":"function ItemStack [2/2]","text":"
          inline explicit endstone::ItemStack::ItemStack (\n    std::string type,\n    int amount=1\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#function-getamount","title":"function getAmount","text":"

          Gets the amount of items in this stack.

          inline virtual int endstone::ItemStack::getAmount () const\n

          Returns:

          Amount of items in this stack

          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#function-gettype","title":"function getType","text":"

          Gets the type of this item.

          inline virtual std::string endstone::ItemStack::getType () const\n

          Returns:

          Type of the items in this stack

          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#function-setamount","title":"function setAmount","text":"

          Sets the amount of items in this stack.

          inline virtual void endstone::ItemStack::setAmount (\n    int amount\n) \n

          Parameters:

          • amount New amount of items in this stack
          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#function-settype","title":"function setType","text":"

          Sets the type of this item.

          inline virtual void endstone::ItemStack::setType (\n    std::string type\n) \n

          Parameters:

          • type New type to set the items in this stack to
          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#function-itemstack","title":"function ~ItemStack","text":"
          virtual endstone::ItemStack::~ItemStack () = default\n
          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#protected-functions-documentation","title":"Protected Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ItemStack/#function-asendstoneitemstack-12","title":"function asEndstoneItemStack [\u00bd]","text":"
          inline virtual const detail::EndstoneItemStack * endstone::ItemStack::asEndstoneItemStack () const\n
          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#function-asendstoneitemstack-22","title":"function asEndstoneItemStack [2/2]","text":"
          inline virtual detail::EndstoneItemStack * endstone::ItemStack::asEndstoneItemStack () \n
          "},{"location":"reference/cpp/classendstone_1_1ItemStack/#friends-documentation","title":"Friends Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ItemStack/#friend-endstoneitemstack","title":"friend EndstoneItemStack","text":"
          class endstone::ItemStack::EndstoneItemStack (\n    detail::EndstoneItemStack\n) \n

          The documentation for this class was generated from the following file include/endstone/inventory/item_stack.h

          "},{"location":"reference/cpp/classendstone_1_1Label/","title":"Class endstone::Label","text":"

          ClassList > endstone > Label

          Represents a text label.

          • #include <endstone/form/controls/label.h>
          "},{"location":"reference/cpp/classendstone_1_1Label/#public-functions","title":"Public Functions","text":"Type Name Label () = default Label (Message text) Message getText () constGets the text of the label. Label & setText (Message text) Sets the text of the label."},{"location":"reference/cpp/classendstone_1_1Label/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Label/#function-label-12","title":"function Label [\u00bd]","text":"
          endstone::Label::Label () = default\n
          "},{"location":"reference/cpp/classendstone_1_1Label/#function-label-22","title":"function Label [2/2]","text":"
          inline explicit endstone::Label::Label (\n    Message text\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Label/#function-gettext","title":"function getText","text":"

          Gets the text of the label.

          inline Message endstone::Label::getText () const\n

          Returns:

          The text of the label.

          "},{"location":"reference/cpp/classendstone_1_1Label/#function-settext","title":"function setText","text":"

          Sets the text of the label.

          inline Label & endstone::Label::setText (\n    Message text\n) \n

          Parameters:

          • text The new text for the label.

          Returns:

          A reference to the current label.

          The documentation for this class was generated from the following file include/endstone/form/controls/label.h

          "},{"location":"reference/cpp/classendstone_1_1Language/","title":"Class endstone::Language","text":"

          ClassList > endstone > Language

          Represents the interface for translating text into different languages.

          • #include <endstone/lang/language.h>
          "},{"location":"reference/cpp/classendstone_1_1Language/#public-functions","title":"Public Functions","text":"Type Name virtual std::string getLocale () const = 0Gets the current locale. virtual std::string translate (std::string text) const = 0Translates a given text into the current locale. virtual std::string translate (std::string text, std::string locale) const = 0Translates a given text into a specific locale. virtual std::string translate (std::string text, std::vector< std::string > params) const = 0Translates a given text using a set of parameters for the current locale. virtual std::string translate (std::string text, std::vector< std::string > params, std::string locale) const = 0Translates a given text using a set of parameters for a specific locale. virtual std::string translate (Translatable translatable) const = 0Translates a Translatable object into the current locale. virtual std::string translate (Translatable translatable, std::string locale) const = 0Translates a Translatable object into a specific locale. virtual ~Language () = default"},{"location":"reference/cpp/classendstone_1_1Language/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Language/#function-getlocale","title":"function getLocale","text":"

          Gets the current locale.

          virtual std::string endstone::Language::getLocale () const = 0\n

          Returns:

          A string representing the current locale (e.g., \"en_US\").

          "},{"location":"reference/cpp/classendstone_1_1Language/#function-translate-16","title":"function translate [\u2159]","text":"

          Translates a given text into the current locale.

          virtual std::string endstone::Language::translate (\n    std::string text\n) const = 0\n

          Parameters:

          • text The text to be translated.

          Returns:

          The translated text in the current locale.

          "},{"location":"reference/cpp/classendstone_1_1Language/#function-translate-26","title":"function translate [2/6]","text":"

          Translates a given text into a specific locale.

          virtual std::string endstone::Language::translate (\n    std::string text,\n    std::string locale\n) const = 0\n

          Parameters:

          • text The text to be translated.
          • locale The locale identifier for the desired translation (e.g., \"en_US\").

          Returns:

          The translated text in the specified locale.

          "},{"location":"reference/cpp/classendstone_1_1Language/#function-translate-36","title":"function translate [3/6]","text":"

          Translates a given text using a set of parameters for the current locale.

          virtual std::string endstone::Language::translate (\n    std::string text,\n    std::vector< std::string > params\n) const = 0\n

          Parameters:

          • text The text to be translated.
          • params A list of parameters to be used in the translation.

          Returns:

          The translated text in the current locale, with parameters applied.

          "},{"location":"reference/cpp/classendstone_1_1Language/#function-translate-46","title":"function translate [4/6]","text":"

          Translates a given text using a set of parameters for a specific locale.

          virtual std::string endstone::Language::translate (\n    std::string text,\n    std::vector< std::string > params,\n    std::string locale\n) const = 0\n

          Parameters:

          • text The text to be translated.
          • params A list of parameters to be used in the translation.
          • locale The locale identifier for the desired translation (e.g., \"en_US\").

          Returns:

          The translated text in the specified locale, with parameters applied.

          "},{"location":"reference/cpp/classendstone_1_1Language/#function-translate-56","title":"function translate [\u215a]","text":"

          Translates a Translatable object into the current locale.

          virtual std::string endstone::Language::translate (\n    Translatable translatable\n) const = 0\n

          Parameters:

          • translatable A Translatable object containing text and parameters.

          Returns:

          The translated text in the current locale.

          "},{"location":"reference/cpp/classendstone_1_1Language/#function-translate-66","title":"function translate [6/6]","text":"

          Translates a Translatable object into a specific locale.

          virtual std::string endstone::Language::translate (\n    Translatable translatable,\n    std::string locale\n) const = 0\n

          Parameters:

          • translatable A Translatable object containing text and parameters.
          • locale The locale identifier for the desired translation (e.g., \"en_US\").

          Returns:

          The translated text in the specified locale.

          "},{"location":"reference/cpp/classendstone_1_1Language/#function-language","title":"function ~Language","text":"
          virtual endstone::Language::~Language () = default\n

          The documentation for this class was generated from the following file include/endstone/lang/language.h

          "},{"location":"reference/cpp/classendstone_1_1Level/","title":"Class endstone::Level","text":"

          ClassList > endstone > Level

          Represents a level, which may contain actors, chunks and blocks.

          • #include <endstone/level/level.h>
          "},{"location":"reference/cpp/classendstone_1_1Level/#public-functions","title":"Public Functions","text":"Type Name virtual std::vector< Actor * > getActors () const = 0Get a list of all actors in this level. virtual Dimension * getDimension (std::string name) const = 0Gets the dimension with the given name. virtual std::vector< Dimension * > getDimensions () const = 0Gets a list of all dimensions within this level. virtual std::string getName () const = 0Gets the unique name of this level. virtual int getTime () const = 0Gets the relative in-game time of this level. virtual void setTime (int time) = 0Sets the relative in-game time on the server. virtual ~Level () = default"},{"location":"reference/cpp/classendstone_1_1Level/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Level/#function-getactors","title":"function getActors","text":"

          Get a list of all actors in this level.

          virtual std::vector< Actor * > endstone::Level::getActors () const = 0\n

          Returns:

          A List of all actors currently residing in this level

          "},{"location":"reference/cpp/classendstone_1_1Level/#function-getdimension","title":"function getDimension","text":"

          Gets the dimension with the given name.

          virtual Dimension * endstone::Level::getDimension (\n    std::string name\n) const = 0\n

          Parameters:

          • name the name of the dimension to retrieve

          Returns:

          The Dimension with the given name, or nullptr if none exists

          "},{"location":"reference/cpp/classendstone_1_1Level/#function-getdimensions","title":"function getDimensions","text":"

          Gets a list of all dimensions within this level.

          virtual std::vector< Dimension * > endstone::Level::getDimensions () const = 0\n

          Returns:

          a list of dimensions

          "},{"location":"reference/cpp/classendstone_1_1Level/#function-getname","title":"function getName","text":"

          Gets the unique name of this level.

          virtual std::string endstone::Level::getName () const = 0\n

          Returns:

          Name of this level

          "},{"location":"reference/cpp/classendstone_1_1Level/#function-gettime","title":"function getTime","text":"

          Gets the relative in-game time of this level.

          virtual int endstone::Level::getTime () const = 0\n

          Returns:

          The current relative time

          "},{"location":"reference/cpp/classendstone_1_1Level/#function-settime","title":"function setTime","text":"

          Sets the relative in-game time on the server.

          virtual void endstone::Level::setTime (\n    int time\n) = 0\n

          Parameters:

          • time The new relative time to set the in-game time to
          "},{"location":"reference/cpp/classendstone_1_1Level/#function-level","title":"function ~Level","text":"
          virtual endstone::Level::~Level () = default\n

          The documentation for this class was generated from the following file include/endstone/level/level.h

          "},{"location":"reference/cpp/classendstone_1_1Location/","title":"Class endstone::Location","text":"

          ClassList > endstone > Location

          Represents a 3-dimensional location in a dimension within a level.

          • #include <endstone/level/location.h>

          Inherits the following classes: endstone::Position

          "},{"location":"reference/cpp/classendstone_1_1Location/#public-functions","title":"Public Functions","text":"Type Name Location (Dimension * dimension, int x, int y, int z, float pitch=0.0, float yaw=0.0) Location (Dimension * dimension, float x, float y, float z, float pitch=0.0, float yaw=0.0) float getPitch () const float getYaw () const void setPitch (float pitch) void setYaw (float yaw)"},{"location":"reference/cpp/classendstone_1_1Location/#public-functions-inherited-from-endstoneposition","title":"Public Functions inherited from endstone::Position","text":"

          See endstone::Position

          Type Name Position (Dimension * dimension, float x, float y, float z) int getBlockX () constGets the floored value of the X component, indicating the block that this location is contained with. int getBlockY () constGets the floored value of the Y component, indicating the block that this location is contained with. int getBlockZ () constGets the floored value of the Z component, indicating the block that this location is contained with. Dimension * getDimension () const void setDimension (Dimension & dimension)"},{"location":"reference/cpp/classendstone_1_1Location/#public-functions-inherited-from-endstonevector","title":"Public Functions inherited from endstone::Vector","text":"

          See endstone::Vector

          Type Name constexpr Vector () constexpr Vector (T x, T y, T z) constexpr T distance (const Vector< T > & other) const constexpr T distanceSquared (const Vector< T > & other) const constexpr T getX () constGets the X component. constexpr T getY () constGets the Y component. constexpr T getZ () constGets the Z component. constexpr T length () constGets the magnitude of the vector, defined as sqrt(x2+y2+z^2). constexpr T lengthSquared () constGets the magnitude of the vector squared. constexpr Vector< T > operator* (const Vector< T > & other) const Vector< T > operator* (T scalar) const Vector< T > & operator*= (const Vector< T > & other) constexpr Vector< T > operator+ (const Vector< T > & other) const Vector< T > operator+ (T scalar) const Vector< T > & operator+= (const Vector< T > & other) constexpr Vector< T > operator- (const Vector< T > & other) const Vector< T > operator- (T scalar) const Vector< T > & operator-= (const Vector< T > & other) constexpr Vector< T > operator/ (const Vector< T > & other) const Vector< T > operator/ (T scalar) const Vector< T > & operator/= (const Vector< T > & other) constexpr bool operator== (const Vector< T > & other) const constexpr void setX (T x) Set the X component. constexpr void setY (T y) Set the Y component. constexpr void setZ (T z) Set the Z component."},{"location":"reference/cpp/classendstone_1_1Location/#protected-attributes-inherited-from-endstonevector","title":"Protected Attributes inherited from endstone::Vector","text":"

          See endstone::Vector

          Type Name T x_ T y_ T z_"},{"location":"reference/cpp/classendstone_1_1Location/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Location/#function-location-12","title":"function Location [\u00bd]","text":"
          inline endstone::Location::Location (\n    Dimension * dimension,\n    int x,\n    int y,\n    int z,\n    float pitch=0.0,\n    float yaw=0.0\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Location/#function-location-22","title":"function Location [2/2]","text":"
          inline endstone::Location::Location (\n    Dimension * dimension,\n    float x,\n    float y,\n    float z,\n    float pitch=0.0,\n    float yaw=0.0\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Location/#function-getpitch","title":"function getPitch","text":"
          inline float endstone::Location::getPitch () const\n

          Gets the pitch of this location, measured in degrees.

          Returns:

          the incline's pitch

          "},{"location":"reference/cpp/classendstone_1_1Location/#function-getyaw","title":"function getYaw","text":"
          inline float endstone::Location::getYaw () const\n

          Gets the yaw of this location, measured in degrees.

          Returns:

          the rotation's yaw

          "},{"location":"reference/cpp/classendstone_1_1Location/#function-setpitch","title":"function setPitch","text":"
          inline void endstone::Location::setPitch (\n    float pitch\n) \n

          Sets the pitch of this location, measured in degrees. * A pitch of 0 represents level forward facing. * A pitch of 90 represents downward facing, or negative y direction. * A pitch of -90 represents upward facing, or positive y direction.

          Increasing pitch values the equivalent of looking down.

          Parameters:

          • pitch new incline's pitch
          "},{"location":"reference/cpp/classendstone_1_1Location/#function-setyaw","title":"function setYaw","text":"
          inline void endstone::Location::setYaw (\n    float yaw\n) \n

          Sets the yaw of this location, measured in degrees. * A yaw of 0 or 360 represents the positive z direction. * A yaw of 180 represents the negative z direction. * A yaw of 90 represents the negative x direction. * A yaw of 270 represents the positive x direction.

          Increasing yaw values are the equivalent of turning to your right-facing, increasing the scale of the next respective axis, and decreasing the scale of the previous axis.

          Parameters:

          • yaw new rotation's yaw

          The documentation for this class was generated from the following file include/endstone/level/location.h

          "},{"location":"reference/cpp/classendstone_1_1Logger/","title":"Class endstone::Logger","text":"

          ClassList > endstone > Logger

          Logger class which can format and output varies levels of logs.

          • #include <endstone/logger.h>
          "},{"location":"reference/cpp/classendstone_1_1Logger/#public-types","title":"Public Types","text":"Type Name enum std::uint8_t Level Specifies the log level."},{"location":"reference/cpp/classendstone_1_1Logger/#public-functions","title":"Public Functions","text":"Type Name Logger () = default void critical (const std::string & message) const void critical (const fmt::format_string< Args... > format, Args &&... args) const void debug (const std::string & message) const void debug (const fmt::format_string< Args... > format, Args &&... args) const void error (const std::string & message) const void error (const fmt::format_string< Args... > format, Args &&... args) const void error (const endstone::Error & error) const virtual std::string_view getName () const = 0Get the name of this Logger instance. void info (const std::string & message) const void info (const fmt::format_string< Args... > format, Args &&... args) const virtual bool isEnabledFor (Level level) const = 0Check if the Logger instance is enabled for the given logLevel . virtual void log (Level level, const std::string & message) const = 0Log a message at the given level. void log (Level level, const fmt::format_string< Args... > format, Args &&... args) const virtual void setLevel (Level level) = 0Set the logging level for this Logger instance. void trace (const std::string & message) const void trace (const fmt::format_string< Args... > format, Args &&... args) const void warning (const std::string & message) const void warning (const fmt::format_string< Args... > format, Args &&... args) const virtual ~Logger () = default"},{"location":"reference/cpp/classendstone_1_1Logger/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Logger/#enum-level","title":"enum Level","text":"
          enum endstone::Logger::Level {\n    Trace = 0,\n    Debug = 1,\n    Info = 2,\n    Warning = 3,\n    Error = 4,\n    Critical = 5,\n    Off = 6\n};\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Logger/#function-logger","title":"function Logger","text":"
          endstone::Logger::Logger () = default\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-critical-12","title":"function critical [\u00bd]","text":"
          inline void endstone::Logger::critical (\n    const std::string & message\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-critical-22","title":"function critical [2/2]","text":"
          template<typename... Args>\ninline void endstone::Logger::critical (\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-debug-12","title":"function debug [\u00bd]","text":"
          inline void endstone::Logger::debug (\n    const std::string & message\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-debug-22","title":"function debug [2/2]","text":"
          template<typename... Args>\ninline void endstone::Logger::debug (\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-error-13","title":"function error [\u2153]","text":"
          inline void endstone::Logger::error (\n    const std::string & message\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-error-23","title":"function error [\u2154]","text":"
          template<typename... Args>\ninline void endstone::Logger::error (\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-error-33","title":"function error [3/3]","text":"
          inline void endstone::Logger::error (\n    const endstone::Error & error\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-getname","title":"function getName","text":"

          Get the name of this Logger instance.

          virtual std::string_view endstone::Logger::getName () const = 0\n

          Returns:

          The name of this Logger instance.

          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-info-12","title":"function info [\u00bd]","text":"
          inline void endstone::Logger::info (\n    const std::string & message\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-info-22","title":"function info [2/2]","text":"
          template<typename... Args>\ninline void endstone::Logger::info (\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-isenabledfor","title":"function isEnabledFor","text":"

          Check if the Logger instance is enabled for the given logLevel .

          virtual bool endstone::Logger::isEnabledFor (\n    Level level\n) const = 0\n

          Parameters:

          • level The log level to check

          Returns:

          true if the logger is enabled for the Level, false otherwise.

          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-log-12","title":"function log [\u00bd]","text":"

          Log a message at the given level.

          virtual void endstone::Logger::log (\n    Level level,\n    const std::string & message\n) const = 0\n

          Parameters:

          • level The level at which the message should be logged.
          • message The message to log.
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-log-22","title":"function log [2/2]","text":"
          template<typename... Args>\ninline void endstone::Logger::log (\n    Level level,\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-setlevel","title":"function setLevel","text":"

          Set the logging level for this Logger instance.

          virtual void endstone::Logger::setLevel (\n    Level level\n) = 0\n

          Parameters:

          • level The desired log level
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-trace-12","title":"function trace [\u00bd]","text":"
          inline void endstone::Logger::trace (\n    const std::string & message\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-trace-22","title":"function trace [2/2]","text":"
          template<typename... Args>\ninline void endstone::Logger::trace (\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-warning-12","title":"function warning [\u00bd]","text":"
          inline void endstone::Logger::warning (\n    const std::string & message\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-warning-22","title":"function warning [2/2]","text":"
          template<typename... Args>\ninline void endstone::Logger::warning (\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Logger/#function-logger_1","title":"function ~Logger","text":"
          virtual endstone::Logger::~Logger () = default\n

          The documentation for this class was generated from the following file include/endstone/logger.h

          "},{"location":"reference/cpp/classendstone_1_1MessageForm/","title":"Class endstone::MessageForm","text":"

          ClassList > endstone > MessageForm

          Represents a form with two buttons.

          • #include <endstone/form/message_form.h>

          Inherits the following classes: endstone::Form

          "},{"location":"reference/cpp/classendstone_1_1MessageForm/#public-types","title":"Public Types","text":"Type Name typedef std::function< void(Player *, int)> OnSubmitCallback"},{"location":"reference/cpp/classendstone_1_1MessageForm/#public-types-inherited-from-endstoneform","title":"Public Types inherited from endstone::Form","text":"

          See endstone::Form

          Type Name typedef std::function< void(Player *)> OnCloseCallback"},{"location":"reference/cpp/classendstone_1_1MessageForm/#public-functions","title":"Public Functions","text":"Type Name Message getButton1 () constGet the text of button1. Message getButton2 () constGet the text of button2. Message getContent () constGet the content of the form. OnSubmitCallback getOnSubmit () constGets the on submit callback of the form. MessageForm & setButton1 (Message text) Set the text of button1. MessageForm & setButton2 (Message text) Set the text of button2. MessageForm & setContent (Message text) Set the content of the form. MessageForm & setOnSubmit (OnSubmitCallback on_submit) Sets the on submit callback of the form."},{"location":"reference/cpp/classendstone_1_1MessageForm/#public-functions-inherited-from-endstoneform","title":"Public Functions inherited from endstone::Form","text":"

          See endstone::Form

          Type Name Form () = default OnCloseCallback getOnClose () constGets the on close callback of the form. Message getTitle () constGets the title of the form. T & setOnClose (OnCloseCallback on_close) Sets the on close callback of the form. T & setTitle (Message title) Sets the title of the form."},{"location":"reference/cpp/classendstone_1_1MessageForm/#protected-attributes-inherited-from-endstoneform","title":"Protected Attributes inherited from endstone::Form","text":"

          See endstone::Form

          Type Name OnCloseCallback on_close_ Message title_"},{"location":"reference/cpp/classendstone_1_1MessageForm/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1MessageForm/#typedef-onsubmitcallback","title":"typedef OnSubmitCallback","text":"
          using endstone::MessageForm::OnSubmitCallback =  std::function<void(Player *, int)>;\n
          "},{"location":"reference/cpp/classendstone_1_1MessageForm/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1MessageForm/#function-getbutton1","title":"function getButton1","text":"

          Get the text of button1.

          inline Message endstone::MessageForm::getButton1 () const\n

          Returns:

          The text of button1.

          "},{"location":"reference/cpp/classendstone_1_1MessageForm/#function-getbutton2","title":"function getButton2","text":"

          Get the text of button2.

          inline Message endstone::MessageForm::getButton2 () const\n

          Returns:

          The text of button2.

          "},{"location":"reference/cpp/classendstone_1_1MessageForm/#function-getcontent","title":"function getContent","text":"

          Get the content of the form.

          inline Message endstone::MessageForm::getContent () const\n

          Returns:

          The content of the form.

          "},{"location":"reference/cpp/classendstone_1_1MessageForm/#function-getonsubmit","title":"function getOnSubmit","text":"

          Gets the on submit callback of the form.

          inline OnSubmitCallback endstone::MessageForm::getOnSubmit () const\n

          Returns:

          The on submit callback of the form.

          "},{"location":"reference/cpp/classendstone_1_1MessageForm/#function-setbutton1","title":"function setButton1","text":"

          Set the text of button1.

          inline MessageForm & endstone::MessageForm::setButton1 (\n    Message text\n) \n

          Parameters:

          • text The text to set as the button1 text.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1MessageForm/#function-setbutton2","title":"function setButton2","text":"

          Set the text of button2.

          inline MessageForm & endstone::MessageForm::setButton2 (\n    Message text\n) \n

          Parameters:

          • text The text to set as the button2 text.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1MessageForm/#function-setcontent","title":"function setContent","text":"

          Set the content of the form.

          inline MessageForm & endstone::MessageForm::setContent (\n    Message text\n) \n

          Parameters:

          • text The text to set as the content.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1MessageForm/#function-setonsubmit","title":"function setOnSubmit","text":"

          Sets the on submit callback of the form.

          inline MessageForm & endstone::MessageForm::setOnSubmit (\n    OnSubmitCallback on_submit\n) \n

          Parameters:

          • on_submit The callback to be set.

          Returns:

          A reference to the current form.

          The documentation for this class was generated from the following file include/endstone/form/message_form.h

          "},{"location":"reference/cpp/classendstone_1_1Mob/","title":"Class endstone::Mob","text":"

          ClassList > endstone > Mob

          Represents a mobile entity (i.e. living entity), such as a monster or player.

          • #include <endstone/actor/mob.h>

          Inherits the following classes: endstone::Actor

          Inherited by the following classes: endstone::Player

          "},{"location":"reference/cpp/classendstone_1_1Mob/#public-functions","title":"Public Functions","text":"Type Name virtual bool isGliding () const = 0Checks to see if an actor is gliding, such as using an Elytra."},{"location":"reference/cpp/classendstone_1_1Mob/#public-functions-inherited-from-endstoneactor","title":"Public Functions inherited from endstone::Actor","text":"

          See endstone::Actor

          Type Name virtual bool addScoreboardTag (std::string tag) const = 0Adds a tag to this actor. virtual Actor * asActor () override constGets a CommandSender asActor . virtual Dimension & getDimension () const = 0 virtual int getHealth () const = 0Gets the entity's health from 0 to its max possible value, where 0 is dead. virtual std::int64_t getId () const = 0Returns a unique id for this actor. virtual Level & getLevel () const = 0 virtual Location getLocation () const = 0 virtual int getMaxHealth () const = 0Gets the maximum health this entity has. virtual std::uint64_t getRuntimeId () const = 0 virtual std::vector< std::string > getScoreboardTags () const = 0Returns a list of scoreboard tags for this actor. virtual Vector< float > getVelocity () const = 0 virtual bool isDead () const = 0Returns true if this actor has been marked for removal. virtual bool isInLava () const = 0 virtual bool isInWater () const = 0 virtual bool isOnGround () const = 0 virtual bool removeScoreboardTag (std::string tag) const = 0Removes a given tag from this actor. virtual Result< void > setHealth (int health) const = 0 virtual void setRotation (float yaw, float pitch) = 0 virtual void teleport (Location location) = 0 virtual void teleport (Actor & target) = 0"},{"location":"reference/cpp/classendstone_1_1Mob/#public-functions-inherited-from-endstonecommandsender","title":"Public Functions inherited from endstone::CommandSender","text":"

          See endstone::CommandSender

          Type Name virtual Actor * asActor () constGets a CommandSender asActor . virtual CommandSender * asCommandSender () override constCasts a Permissible asCommandSender . virtual ConsoleCommandSender * asConsole () constGets a CommandSender as Console. virtual Player * asPlayer () constGets a CommandSender asPlayer . virtual std::string getName () const = 0Gets the name of this command sender. virtual Server & getServer () const = 0Returns the server instance that this command is running on. virtual void sendErrorMessage (const Message & message) const = 0Sends this sender a error message. void sendErrorMessage (const fmt::format_string< Args... > format, Args &&... args) const virtual void sendMessage (const Message & message) const = 0Sends this sender a message. void sendMessage (const fmt::format_string< Args... > format, Args &&... args) const"},{"location":"reference/cpp/classendstone_1_1Mob/#public-functions-inherited-from-endstonepermissible","title":"Public Functions inherited from endstone::Permissible","text":"

          See endstone::Permissible

          Type Name virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin, const std::string & name, bool value) = 0 virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin) = 0 virtual CommandSender * asCommandSender () const = 0Casts a Permissible asCommandSender . virtual std::unordered_set< PermissionAttachmentInfo * > getEffectivePermissions () const = 0 virtual bool hasPermission (std::string name) const = 0 virtual bool hasPermission (const Permission & perm) const = 0 virtual bool isOp () const = 0Checks if this object is a server operator. virtual bool isPermissionSet (std::string name) const = 0 virtual bool isPermissionSet (const Permission & perm) const = 0 virtual void recalculatePermissions () = 0 virtual Result< void > removeAttachment (PermissionAttachment & attachment) = 0 virtual void setOp (bool value) = 0Sets the operator status of this object. virtual ~Permissible () = default"},{"location":"reference/cpp/classendstone_1_1Mob/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Mob/#function-isgliding","title":"function isGliding","text":"

          Checks to see if an actor is gliding, such as using an Elytra.

          virtual bool endstone::Mob::isGliding () const = 0\n

          Returns:

          True if this actor is gliding.

          The documentation for this class was generated from the following file include/endstone/actor/mob.h

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/","title":"Class endstone::ModalForm","text":"

          ClassList > endstone > ModalForm

          Represents a modal form with controls.

          • #include <endstone/form/modal_form.h>

          Inherits the following classes: endstone::Form

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#public-types","title":"Public Types","text":"Type Name typedef std::variant< Dropdown, Label, Slider, StepSlider, TextInput, Toggle > Control typedef std::function< void(Player *, std::string)> OnSubmitCallback"},{"location":"reference/cpp/classendstone_1_1ModalForm/#public-types-inherited-from-endstoneform","title":"Public Types inherited from endstone::Form","text":"

          See endstone::Form

          Type Name typedef std::function< void(Player *)> OnCloseCallback"},{"location":"reference/cpp/classendstone_1_1ModalForm/#public-functions","title":"Public Functions","text":"Type Name ModalForm & addControl (const Control & control) Adds a control to the form. std::vector< Control > getControls () constGets the controls of the modal form. std::optional< std::string > getIcon () constGet the icon of the form. OnSubmitCallback getOnSubmit () constGets the on submit callback of the form. std::optional< Message > getSubmitButton () constGets the submit button text of the form. ModalForm & setControls (std::vector< Control > controls) Sets the controls of the modal form. ModalForm & setIcon (std::optional< std::string > icon) Sets the icon of the form. ModalForm & setOnSubmit (OnSubmitCallback on_submit) Sets the on submit callback of the form. ModalForm & setSubmitButton (std::optional< Message > text) Sets the submit button text of the form."},{"location":"reference/cpp/classendstone_1_1ModalForm/#public-functions-inherited-from-endstoneform","title":"Public Functions inherited from endstone::Form","text":"

          See endstone::Form

          Type Name Form () = default OnCloseCallback getOnClose () constGets the on close callback of the form. Message getTitle () constGets the title of the form. T & setOnClose (OnCloseCallback on_close) Sets the on close callback of the form. T & setTitle (Message title) Sets the title of the form."},{"location":"reference/cpp/classendstone_1_1ModalForm/#protected-attributes-inherited-from-endstoneform","title":"Protected Attributes inherited from endstone::Form","text":"

          See endstone::Form

          Type Name OnCloseCallback on_close_ Message title_"},{"location":"reference/cpp/classendstone_1_1ModalForm/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ModalForm/#typedef-control","title":"typedef Control","text":"
          using endstone::ModalForm::Control =  std::variant<Dropdown, Label, Slider, StepSlider, TextInput, Toggle>;\n
          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#typedef-onsubmitcallback","title":"typedef OnSubmitCallback","text":"
          using endstone::ModalForm::OnSubmitCallback =  std::function<void(Player *, std::string)>;\n
          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ModalForm/#function-addcontrol","title":"function addControl","text":"

          Adds a control to the form.

          inline ModalForm & endstone::ModalForm::addControl (\n    const Control & control\n) \n

          Parameters:

          • control The control to add to the form.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#function-getcontrols","title":"function getControls","text":"

          Gets the controls of the modal form.

          inline std::vector< Control > endstone::ModalForm::getControls () const\n

          Returns:

          A list of controls in the modal form.

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#function-geticon","title":"function getIcon","text":"

          Get the icon of the form.

          inline std::optional< std::string > endstone::ModalForm::getIcon () const\n

          Returns:

          The path or URL to the icon file

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#function-getonsubmit","title":"function getOnSubmit","text":"

          Gets the on submit callback of the form.

          inline OnSubmitCallback endstone::ModalForm::getOnSubmit () const\n

          Returns:

          The on submit callback of the form.

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#function-getsubmitbutton","title":"function getSubmitButton","text":"

          Gets the submit button text of the form.

          inline std::optional< Message > endstone::ModalForm::getSubmitButton () const\n

          Returns:

          The submit button text of the form.

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#function-setcontrols","title":"function setControls","text":"

          Sets the controls of the modal form.

          inline ModalForm & endstone::ModalForm::setControls (\n    std::vector< Control > controls\n) \n

          Parameters:

          • controls The list of controls to set.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#function-seticon","title":"function setIcon","text":"

          Sets the icon of the form.

          inline ModalForm & endstone::ModalForm::setIcon (\n    std::optional< std::string > icon\n) \n

          Parameters:

          • icon The path or URL to the icon file.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#function-setonsubmit","title":"function setOnSubmit","text":"

          Sets the on submit callback of the form.

          inline ModalForm & endstone::ModalForm::setOnSubmit (\n    OnSubmitCallback on_submit\n) \n

          Parameters:

          • on_submit The callback to be set.

          Returns:

          A reference to the current form.

          "},{"location":"reference/cpp/classendstone_1_1ModalForm/#function-setsubmitbutton","title":"function setSubmitButton","text":"

          Sets the submit button text of the form.

          inline ModalForm & endstone::ModalForm::setSubmitButton (\n    std::optional< Message > text\n) \n

          Parameters:

          • text The submit button text to set.

          Returns:

          A reference to the current form.

          The documentation for this class was generated from the following file include/endstone/form/modal_form.h

          "},{"location":"reference/cpp/classendstone_1_1Objective/","title":"Class endstone::Objective","text":"

          ClassList > endstone > Objective

          Represents an objective on a scoreboard that can show scores specific to entries.

          • #include <endstone/scoreboard/objective.h>
          "},{"location":"reference/cpp/classendstone_1_1Objective/#public-functions","title":"Public Functions","text":"Type Name virtual Result< const Criteria * > getCriteria () const = 0Gets the criteria this objective tracks. virtual Result< std::string > getDisplayName () const = 0Gets the name displayed to players for this objective. virtual Result< DisplaySlot > getDisplaySlot () const = 0Gets the display slot this objective is displayed at. virtual Result< std::string > getName () const = 0Gets the name of this Objective . virtual Result< RenderType > getRenderType () const = 0 virtual Result< std::unique_ptr< Score > > getScore (ScoreEntry entry) const = 0Gets an entry's Score for this objective. virtual Scoreboard & getScoreboard () const = 0Gets the scoreboard to which this objective is attached. virtual Result< ObjectiveSortOrder > getSortOrder () const = 0Gets the sort order for this objective. virtual Result< bool > isDisplayed () const = 0Gets if the objective is currently displayed in a slot. virtual Result< bool > isModifiable () const = 0Gets if the objective's scores can be modified directly by a plugin. virtual bool operator!= (const Objective & other) const = 0 virtual bool operator== (const Objective & other) const = 0 virtual Result< void > setDisplay (std::optional< DisplaySlot > slot) = 0Sets the display slot for this objective. This will remove it from any other display slot. virtual Result< void > setDisplay (std::optional< DisplaySlot > slot, ObjectiveSortOrder order) = 0Sets the display slot and sort order for this objective. This will remove it from any other display slot. virtual Result< void > setDisplayName (std::string display_name) = 0Sets the name displayed to players for this objective. virtual Result< void > setRenderType (RenderType render_type) = 0Sets manner in which this objective will be rendered. virtual Result< void > unregister () const = 0Unregisters this objective from the associated Scoreboard . virtual ~Objective () = default"},{"location":"reference/cpp/classendstone_1_1Objective/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Objective/#function-getcriteria","title":"function getCriteria","text":"

          Gets the criteria this objective tracks.

          virtual Result< const Criteria * > endstone::Objective::getCriteria () const = 0\n

          Returns:

          this objective's criteria.

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-getdisplayname","title":"function getDisplayName","text":"

          Gets the name displayed to players for this objective.

          virtual Result< std::string > endstone::Objective::getDisplayName () const = 0\n

          Returns:

          this objective's display name

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-getdisplayslot","title":"function getDisplaySlot","text":"

          Gets the display slot this objective is displayed at.

          virtual Result< DisplaySlot > endstone::Objective::getDisplaySlot () const = 0\n

          Returns:

          the display slot for this objective

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-getname","title":"function getName","text":"

          Gets the name of this Objective .

          virtual Result< std::string > endstone::Objective::getName () const = 0\n

          Returns:

          this objective's name

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-getrendertype","title":"function getRenderType","text":"
          virtual Result< RenderType > endstone::Objective::getRenderType () const = 0\n

          Gets manner in which this objective will be rendered.

          Returns:

          the render type

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-getscore","title":"function getScore","text":"

          Gets an entry's Score for this objective.

          virtual Result< std::unique_ptr< Score > > endstone::Objective::getScore (\n    ScoreEntry entry\n) const = 0\n

          Parameters:

          • entry Entry for the Score

          Returns:

          Score tracking the Objective and entry specified

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-getscoreboard","title":"function getScoreboard","text":"

          Gets the scoreboard to which this objective is attached.

          virtual Scoreboard & endstone::Objective::getScoreboard () const = 0\n

          Returns:

          Owning scoreboard

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-getsortorder","title":"function getSortOrder","text":"

          Gets the sort order for this objective.

          virtual Result< ObjectiveSortOrder > endstone::Objective::getSortOrder () const = 0\n

          Returns:

          The sort order for this objective.

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-isdisplayed","title":"function isDisplayed","text":"

          Gets if the objective is currently displayed in a slot.

          virtual Result< bool > endstone::Objective::isDisplayed () const = 0\n

          Returns:

          true if the objective is displayed

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-ismodifiable","title":"function isModifiable","text":"

          Gets if the objective's scores can be modified directly by a plugin.

          virtual Result< bool > endstone::Objective::isModifiable () const = 0\n

          Returns:

          true if scores are modifiable

          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-operator","title":"function operator!=","text":"
          virtual bool endstone::Objective::operator!= (\n    const Objective & other\n) const = 0\n
          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-operator_1","title":"function operator==","text":"
          virtual bool endstone::Objective::operator== (\n    const Objective & other\n) const = 0\n
          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-setdisplay-12","title":"function setDisplay [\u00bd]","text":"

          Sets the display slot for this objective. This will remove it from any other display slot.

          virtual Result< void > endstone::Objective::setDisplay (\n    std::optional< DisplaySlot > slot\n) = 0\n

          Parameters:

          • slot The display slot where this objective should be displayed.
          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-setdisplay-22","title":"function setDisplay [2/2]","text":"

          Sets the display slot and sort order for this objective. This will remove it from any other display slot.

          virtual Result< void > endstone::Objective::setDisplay (\n    std::optional< DisplaySlot > slot,\n    ObjectiveSortOrder order\n) = 0\n

          Parameters:

          • slot The display slot where this objective should be displayed.
          • order The sort order for this objective in the display slot.
          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-setdisplayname","title":"function setDisplayName","text":"

          Sets the name displayed to players for this objective.

          virtual Result< void > endstone::Objective::setDisplayName (\n    std::string display_name\n) = 0\n

          Parameters:

          • display_name Display name to set
          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-setrendertype","title":"function setRenderType","text":"

          Sets manner in which this objective will be rendered.

          virtual Result< void > endstone::Objective::setRenderType (\n    RenderType render_type\n) = 0\n

          Parameters:

          • render_type new render type
          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-unregister","title":"function unregister","text":"
          virtual Result< void > endstone::Objective::unregister () const = 0\n
          "},{"location":"reference/cpp/classendstone_1_1Objective/#function-objective","title":"function ~Objective","text":"
          virtual endstone::Objective::~Objective () = default\n

          The documentation for this class was generated from the following file include/endstone/scoreboard/objective.h

          "},{"location":"reference/cpp/classendstone_1_1Packet/","title":"Class endstone::Packet","text":"

          ClassList > endstone > Packet

          Represents a packet.

          • #include <endstone/network/packet.h>

          Inherited by the following classes: endstone::SpawnParticleEffectPacket

          "},{"location":"reference/cpp/classendstone_1_1Packet/#public-functions","title":"Public Functions","text":"Type Name virtual PacketType getType () const = 0Gets the type of the packet. virtual ~Packet () = default"},{"location":"reference/cpp/classendstone_1_1Packet/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Packet/#function-gettype","title":"function getType","text":"

          Gets the type of the packet.

          virtual PacketType endstone::Packet::getType () const = 0\n

          Returns:

          The type of the packet.

          "},{"location":"reference/cpp/classendstone_1_1Packet/#function-packet","title":"function ~Packet","text":"
          virtual endstone::Packet::~Packet () = default\n

          The documentation for this class was generated from the following file include/endstone/network/packet.h

          "},{"location":"reference/cpp/classendstone_1_1Permissible/","title":"Class endstone::Permissible","text":"

          ClassList > endstone > Permissible

          Represents an object that may become a server operator and can be assigned permissions.

          • #include <endstone/permissions/permissible.h>

          Inherited by the following classes: endstone::CommandSender

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#public-functions","title":"Public Functions","text":"Type Name virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin, const std::string & name, bool value) = 0 virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin) = 0 virtual CommandSender * asCommandSender () const = 0Casts a Permissible asCommandSender . virtual std::unordered_set< PermissionAttachmentInfo * > getEffectivePermissions () const = 0 virtual bool hasPermission (std::string name) const = 0 virtual bool hasPermission (const Permission & perm) const = 0 virtual bool isOp () const = 0Checks if this object is a server operator. virtual bool isPermissionSet (std::string name) const = 0 virtual bool isPermissionSet (const Permission & perm) const = 0 virtual void recalculatePermissions () = 0 virtual Result< void > removeAttachment (PermissionAttachment & attachment) = 0 virtual void setOp (bool value) = 0Sets the operator status of this object. virtual ~Permissible () = default"},{"location":"reference/cpp/classendstone_1_1Permissible/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Permissible/#function-addattachment-12","title":"function addAttachment [\u00bd]","text":"
          virtual Result< PermissionAttachment * > endstone::Permissible::addAttachment (\n    Plugin & plugin,\n    const std::string & name,\n    bool value\n) = 0\n

          Adds a new PermissionAttachment with a single permission by name and value

          Parameters:

          • plugin Plugin responsible for this attachment, may not be null or disabled
          • name Name of the permission to attach
          • value Value of the permission

          Returns:

          The PermissionAttachment that was just created

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-addattachment-22","title":"function addAttachment [2/2]","text":"
          virtual Result< PermissionAttachment * > endstone::Permissible::addAttachment (\n    Plugin & plugin\n) = 0\n

          Adds a new empty PermissionAttachment to this object

          Parameters:

          • plugin Plugin responsible for this attachment, may not be null or disabled

          Returns:

          The PermissionAttachment that was just created

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-ascommandsender","title":"function asCommandSender","text":"

          Casts a Permissible asCommandSender .

          virtual CommandSender * endstone::Permissible::asCommandSender () const = 0\n

          Returns:

          CommandSender, nullptr if not a CommandSender

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-geteffectivepermissions","title":"function getEffectivePermissions","text":"
          virtual std::unordered_set< PermissionAttachmentInfo * > endstone::Permissible::getEffectivePermissions () const = 0\n

          Gets a set containing all the permissions currently in effect by this object

          Returns:

          Set of currently effective permissions

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-haspermission-12","title":"function hasPermission [\u00bd]","text":"
          virtual bool endstone::Permissible::hasPermission (\n    std::string name\n) const = 0\n

          Gets the value of the specified permission, if set. If a permission override is not set on this object, the default value of the permission will be returned.

          Parameters:

          • name Name of the permission

          Returns:

          Value of the permission

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-haspermission-22","title":"function hasPermission [2/2]","text":"
          virtual bool endstone::Permissible::hasPermission (\n    const Permission & perm\n) const = 0\n

          Gets the value of the specified permission, if set. If a permission override is not set on this object, the default value of the permission will be returned.

          Parameters:

          • perm Permission to get

          Returns:

          Value of the permission

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-isop","title":"function isOp","text":"

          Checks if this object is a server operator.

          virtual bool endstone::Permissible::isOp () const = 0\n

          Returns:

          true if this is an operator, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-ispermissionset-12","title":"function isPermissionSet [\u00bd]","text":"
          virtual bool endstone::Permissible::isPermissionSet (\n    std::string name\n) const = 0\n

          Checks if this object contains an override for the specified permission, by fully qualified name

          Parameters:

          • name Name of the permission

          Returns:

          true if the permission is set, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-ispermissionset-22","title":"function isPermissionSet [2/2]","text":"
          virtual bool endstone::Permissible::isPermissionSet (\n    const Permission & perm\n) const = 0\n

          Checks if this object contains an override for the specified Permission

          Parameters:

          • perm Permission to check

          Returns:

          true if the permission is set, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-recalculatepermissions","title":"function recalculatePermissions","text":"
          virtual void endstone::Permissible::recalculatePermissions () = 0\n

          Recalculates the permissions for this object, if the attachments have changed values. This should very rarely need to be called from a plugin.

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-removeattachment","title":"function removeAttachment","text":"
          virtual Result< void > endstone::Permissible::removeAttachment (\n    PermissionAttachment & attachment\n) = 0\n

          Removes the given PermissionAttachment from this object

          Parameters:

          • attachment Attachment to remove

          Returns:

          true if the specified attachment was removed successfully, false when it isn't part of this object

          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-setop","title":"function setOp","text":"

          Sets the operator status of this object.

          virtual void endstone::Permissible::setOp (\n    bool value\n) = 0\n

          Parameters:

          • value New operator value
          "},{"location":"reference/cpp/classendstone_1_1Permissible/#function-permissible","title":"function ~Permissible","text":"
          virtual endstone::Permissible::~Permissible () = default\n

          The documentation for this class was generated from the following file include/endstone/permissions/permissible.h

          "},{"location":"reference/cpp/classendstone_1_1Permission/","title":"Class endstone::Permission","text":"

          ClassList > endstone > Permission

          Represents a unique permission that may be attached to a Permissible .

          • #include <endstone/permissions/permission.h>
          "},{"location":"reference/cpp/classendstone_1_1Permission/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const PermissionDefault DefaultPermission = = PermissionDefault::Operator"},{"location":"reference/cpp/classendstone_1_1Permission/#public-functions","title":"Public Functions","text":"Type Name Permission (std::string name, std::string description=\"\", PermissionDefault default_value=DefaultPermission, std::unordered_map< std::string, bool > children={}) Permission * addParent (std::string name, bool value) void addParent (Permission & perm, bool value) const std::unordered_map< std::string, bool > & getChildren () PermissionDefault getDefault () const std::string getDescription () const std::string getName () const std::unordered_set< Permissible * > getPermissibles () const void init (PluginManager & plugin_manager) void recalculatePermissibles () void setDefault (PermissionDefault value) void setDescription (std::string value)"},{"location":"reference/cpp/classendstone_1_1Permission/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Permission/#variable-defaultpermission","title":"variable DefaultPermission","text":"
          const PermissionDefault endstone::Permission::DefaultPermission;\n
          "},{"location":"reference/cpp/classendstone_1_1Permission/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Permission/#function-permission","title":"function Permission","text":"
          inline explicit endstone::Permission::Permission (\n    std::string name,\n    std::string description=\"\",\n    PermissionDefault default_value=DefaultPermission,\n    std::unordered_map< std::string, bool > children={}\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-addparent-12","title":"function addParent [\u00bd]","text":"
          inline Permission * endstone::Permission::addParent (\n    std::string name,\n    bool value\n) \n

          Adds this permission to the specified parent permission.

          If the parent permission does not exist, it will be created and registered.

          Parameters:

          • name Name of the parent permission
          • value The value to set this permission to

          Returns:

          Parent permission it created or loaded

          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-addparent-22","title":"function addParent [2/2]","text":"
          inline void endstone::Permission::addParent (\n    Permission & perm,\n    bool value\n) const\n

          Adds this permission to the specified parent permission.

          Parameters:

          • perm Parent permission to register with
          • value The value to set this permission to
          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-getchildren","title":"function getChildren","text":"
          inline std::unordered_map< std::string, bool > & endstone::Permission::getChildren () \n

          Gets the children of this permission. If you change this map in any form, you must call recalculatePermissibles() to recalculate all Permissibles

          Returns:

          Permission children

          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-getdefault","title":"function getDefault","text":"
          inline PermissionDefault endstone::Permission::getDefault () const\n

          Gets the default value of this permission.

          Returns:

          Default value of this permission.

          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-getdescription","title":"function getDescription","text":"
          inline std::string endstone::Permission::getDescription () const\n

          Gets a brief description of this permission, may be empty

          Returns:

          Brief description of this permission

          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-getname","title":"function getName","text":"
          inline std::string endstone::Permission::getName () const\n

          Returns the unique fully qualified name of this Permission

          Returns:

          Fully qualified name

          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-getpermissibles","title":"function getPermissibles","text":"
          inline std::unordered_set< Permissible * > endstone::Permission::getPermissibles () const\n

          Gets a set containing every Permissible that has this permission. This set cannot be modified.

          Returns:

          Set containing permissibles with this permission

          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-init","title":"function init","text":"
          inline void endstone::Permission::init (\n    PluginManager & plugin_manager\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-recalculatepermissibles","title":"function recalculatePermissibles","text":"
          inline void endstone::Permission::recalculatePermissibles () \n

          Recalculates all Permissibles that contain this permission.

          This should be called after modifying the children, and is automatically called after modifying the default value

          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-setdefault","title":"function setDefault","text":"
          inline void endstone::Permission::setDefault (\n    PermissionDefault value\n) \n

          Sets the default value of this permission.

          This will not be saved to disk, and is a temporary operation until the server reloads permissions. Changing this default will cause all Permissibles that contain this permission to recalculate their permissions

          Parameters:

          • value The new default to set
          "},{"location":"reference/cpp/classendstone_1_1Permission/#function-setdescription","title":"function setDescription","text":"
          inline void endstone::Permission::setDescription (\n    std::string value\n) \n

          Sets the description of this permission.

          This will not be saved to disk, and is a temporary operation until the server reloads permissions.

          Parameters:

          • value The new description to set

          The documentation for this class was generated from the following file include/endstone/permissions/permission.h

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/","title":"Class endstone::PermissionAttachment","text":"

          ClassList > endstone > PermissionAttachment

          Holds information about a permission attachment on a Permissible object.

          • #include <endstone/permissions/permission_attachment.h>
          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#public-functions","title":"Public Functions","text":"Type Name PermissionAttachment (Plugin & plugin, Permissible & permissible) Permissible & getPermissible () const std::unordered_map< std::string, bool > getPermissions () const Plugin & getPlugin () const PermissionRemovedExecutor getRemovalCallback () const bool remove () void setPermission (std::string name, bool value) void setPermission (Permission & perm, bool value) void setRemovalCallback (PermissionRemovedExecutor ex) void unsetPermission (std::string name) void unsetPermission (Permission & perm)"},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-permissionattachment","title":"function PermissionAttachment","text":"
          inline endstone::PermissionAttachment::PermissionAttachment (\n    Plugin & plugin,\n    Permissible & permissible\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-getpermissible","title":"function getPermissible","text":"
          inline Permissible & endstone::PermissionAttachment::getPermissible () const\n

          Gets the Permissible that this is attached to

          Returns:

          Permissible containing this attachment

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-getpermissions","title":"function getPermissions","text":"
          inline std::unordered_map< std::string, bool > endstone::PermissionAttachment::getPermissions () const\n

          Gets a copy of all set permissions and values contained within this attachment. This map may be modified but will not affect the attachment, as it is a copy.

          Returns:

          Copy of all permissions and values expressed by this attachment

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-getplugin","title":"function getPlugin","text":"
          inline Plugin & endstone::PermissionAttachment::getPlugin () const\n

          Gets the plugin responsible for this attachment

          Returns:

          Plugin responsible for this permission attachment

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-getremovalcallback","title":"function getRemovalCallback","text":"
          inline PermissionRemovedExecutor endstone::PermissionAttachment::getRemovalCallback () const\n

          Gets the class that was previously set to be called when this attachment was removed from a Permissible. May be empty.

          Returns:

          Executor to be called when this is removed

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-remove","title":"function remove","text":"
          inline bool endstone::PermissionAttachment::remove () \n

          Removes this attachment from its registered Permissible

          Returns:

          true if the permissible was removed successfully, false if it did not exist

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-setpermission-12","title":"function setPermission [\u00bd]","text":"
          inline void endstone::PermissionAttachment::setPermission (\n    std::string name,\n    bool value\n) \n

          Sets a permission to the given value, by its fully qualified name

          Parameters:

          • name Name of the permission
          • value New value of the permission
          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-setpermission-22","title":"function setPermission [2/2]","text":"
          inline void endstone::PermissionAttachment::setPermission (\n    Permission & perm,\n    bool value\n) \n

          Sets a permission to the given value

          Parameters:

          • perm Permission to set
          • value New value of the permission
          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-setremovalcallback","title":"function setRemovalCallback","text":"
          inline void endstone::PermissionAttachment::setRemovalCallback (\n    PermissionRemovedExecutor ex\n) \n

          Sets an executor to be called for when this attachment is removed from a Permissible. May be empty.

          Parameters:

          • ex Executor to be called when this is removed
          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-unsetpermission-12","title":"function unsetPermission [\u00bd]","text":"
          inline void endstone::PermissionAttachment::unsetPermission (\n    std::string name\n) \n

          Removes the specified permission from this attachment. If the permission does not exist in this attachment, nothing will happen.

          Parameters:

          • name Name of the permission to remove
          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachment/#function-unsetpermission-22","title":"function unsetPermission [2/2]","text":"
          inline void endstone::PermissionAttachment::unsetPermission (\n    Permission & perm\n) \n

          Removes the specified permission from this attachment. If the permission does not exist in this attachment, nothing will happen.

          Parameters:

          • perm Permission to remove

          The documentation for this class was generated from the following file include/endstone/permissions/permission_attachment.h

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachmentInfo/","title":"Class endstone::PermissionAttachmentInfo","text":"

          ClassList > endstone > PermissionAttachmentInfo

          Holds information on a permission and which PermissionAttachment provides it.

          • #include <endstone/permissions/permission_attachment_info.h>
          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachmentInfo/#public-functions","title":"Public Functions","text":"Type Name PermissionAttachmentInfo (Permissible & permissible, std::string permission, PermissionAttachment * attachment, bool value) PermissionAttachment * getAttachment () const Permissible & getPermissible () const std::string getPermission () const bool getValue () const"},{"location":"reference/cpp/classendstone_1_1PermissionAttachmentInfo/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PermissionAttachmentInfo/#function-permissionattachmentinfo","title":"function PermissionAttachmentInfo","text":"
          inline endstone::PermissionAttachmentInfo::PermissionAttachmentInfo (\n    Permissible & permissible,\n    std::string permission,\n    PermissionAttachment * attachment,\n    bool value\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachmentInfo/#function-getattachment","title":"function getAttachment","text":"
          inline PermissionAttachment * endstone::PermissionAttachmentInfo::getAttachment () const\n

          Gets the attachment providing this permission. This may be null for default permissions (usually parent permissions).

          Returns:

          Attachment

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachmentInfo/#function-getpermissible","title":"function getPermissible","text":"
          inline Permissible & endstone::PermissionAttachmentInfo::getPermissible () const\n

          Gets the permissible this is attached to

          Returns:

          Permissible this permission is for

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachmentInfo/#function-getpermission","title":"function getPermission","text":"
          inline std::string endstone::PermissionAttachmentInfo::getPermission () const\n

          Gets the permission being set

          Returns:

          Name of the permission

          "},{"location":"reference/cpp/classendstone_1_1PermissionAttachmentInfo/#function-getvalue","title":"function getValue","text":"
          inline bool endstone::PermissionAttachmentInfo::getValue () const\n

          Gets the value of this permission

          Returns:

          Value of the permission

          The documentation for this class was generated from the following file include/endstone/permissions/permission_attachment_info.h

          "},{"location":"reference/cpp/classendstone_1_1Player/","title":"Class endstone::Player","text":"

          ClassList > endstone > Player

          Represents a player.

          • #include <endstone/player.h>

          Inherits the following classes: endstone::Mob

          "},{"location":"reference/cpp/classendstone_1_1Player/#public-functions","title":"Public Functions","text":"Type Name virtual Player * asPlayer () override constGets a CommandSender asPlayer . virtual void closeForm () = 0Closes the forms that are currently open for the player. virtual const SocketAddress & getAddress () const = 0Gets the socket address of this player. virtual bool getAllowFlight () const = 0Determines if the Player is allowed to fly via jump key double-tap. virtual std::string getDeviceId () const = 0Gets the player's current device id. virtual std::string getDeviceOS () const = 0Gets the player's current device's operation system (OS). virtual int getExpLevel () const = 0Gets the players current experience level. virtual float getExpProgress () const = 0Gets the players current experience progress towards the next level. virtual float getFlySpeed () const = 0Gets the current allowed speed that a client can fly. virtual GameMode getGameMode () const = 0Gets this player's current GameMode. virtual std::string getGameVersion () const = 0Gets the player's current game version. virtual PlayerInventory & getInventory () const = 0Get the player's inventory. virtual std::string getLocale () const = 0Gets the player's current locale. virtual std::chrono::milliseconds getPing () const = 0Gets the player's average ping. virtual Scoreboard & getScoreboard () const = 0Gets the Scoreboard displayed to this player. virtual const Skin & getSkin () const = 0Gets the player's skin. virtual int getTotalExp () const = 0Gets the players total experience points. virtual UUID getUniqueId () const = 0Returns the UUID of this player. virtual float getWalkSpeed () const = 0Gets the current allowed speed that a client can walk. virtual std::string getXuid () const = 0Returns the Xbox User ID (XUID) of this player. virtual void giveExp (int amount) = 0Gives the player the amount of experience specified. virtual void giveExpLevels (int amount) = 0Gives the player the amount of experience levels specified. virtual bool isFlying () const = 0Checks to see if this player is currently flying or not. virtual void kick (std::string message) const = 0Kicks player with custom kick message. virtual bool performCommand (std::string command) const = 0Makes the player perform the given command. virtual void resetTitle () const = 0Resets the title displayed to the player. This will clear the displayed title / subtitle and reset timings to their default values. virtual void sendForm (FormVariant form) = 0Sends a form to the player. virtual void sendPacket (Packet & packet) const = 0Sends a packet to the player. virtual void sendPopup (std::string message) const = 0Sends this player a popup message. virtual void sendTip (std::string message) const = 0Sends this player a tip message. virtual void sendTitle (std::string title, std::string subtitle) const = 0Sends a title and a subtitle message to the player. If they are empty strings, the display will be updated as such. The titles will be displayed with the default timings. virtual void sendTitle (std::string title, std::string subtitle, int fade_in, int stay, int fade_out) const = 0Sends a title and a subtitle message to the player. If they are empty strings, the display will be updated as such. virtual void sendToast (std::string title, std::string content) const = 0Sends this player a toast notification. virtual void setAllowFlight (bool flight) = 0Sets if the Player is allowed to fly via jump key double-tap. virtual Result< void > setExpLevel (int level) = 0Sets the players current experience level. virtual Result< void > setExpProgress (float progress) = 0Sets the players current experience progress towards the next level. virtual void setFlySpeed (float value) const = 0 virtual Result< void > setFlying (bool value) = 0Makes this player start or stop flying. virtual void setGameMode (GameMode mode) = 0Sets this player's current GameMode. virtual void setScoreboard (Scoreboard & scoreboard) = 0 virtual void setWalkSpeed (float value) const = 0 virtual void spawnParticle (std::string name, Location location) const = 0Spawns the particle at the target location. virtual void spawnParticle (std::string name, float x, float y, float z) const = 0Spawns the particle at the target location. virtual void spawnParticle (std::string name, Location location, std::optional< std::string > molang_variables_json) const = 0Spawns the particle at the target location. virtual void spawnParticle (std::string name, float x, float y, float z, std::optional< std::string > molang_variables_json) const = 0Spawns the particle at the target location. virtual void transfer (std::string host, int port) const = 0Transfers the player to another server. virtual void updateCommands () const = 0Send the list of commands to the client."},{"location":"reference/cpp/classendstone_1_1Player/#public-functions-inherited-from-endstonemob","title":"Public Functions inherited from endstone::Mob","text":"

          See endstone::Mob

          Type Name virtual bool isGliding () const = 0Checks to see if an actor is gliding, such as using an Elytra."},{"location":"reference/cpp/classendstone_1_1Player/#public-functions-inherited-from-endstoneactor","title":"Public Functions inherited from endstone::Actor","text":"

          See endstone::Actor

          Type Name virtual bool addScoreboardTag (std::string tag) const = 0Adds a tag to this actor. virtual Actor * asActor () override constGets a CommandSender asActor . virtual Dimension & getDimension () const = 0 virtual int getHealth () const = 0Gets the entity's health from 0 to its max possible value, where 0 is dead. virtual std::int64_t getId () const = 0Returns a unique id for this actor. virtual Level & getLevel () const = 0 virtual Location getLocation () const = 0 virtual int getMaxHealth () const = 0Gets the maximum health this entity has. virtual std::uint64_t getRuntimeId () const = 0 virtual std::vector< std::string > getScoreboardTags () const = 0Returns a list of scoreboard tags for this actor. virtual Vector< float > getVelocity () const = 0 virtual bool isDead () const = 0Returns true if this actor has been marked for removal. virtual bool isInLava () const = 0 virtual bool isInWater () const = 0 virtual bool isOnGround () const = 0 virtual bool removeScoreboardTag (std::string tag) const = 0Removes a given tag from this actor. virtual Result< void > setHealth (int health) const = 0 virtual void setRotation (float yaw, float pitch) = 0 virtual void teleport (Location location) = 0 virtual void teleport (Actor & target) = 0"},{"location":"reference/cpp/classendstone_1_1Player/#public-functions-inherited-from-endstonecommandsender","title":"Public Functions inherited from endstone::CommandSender","text":"

          See endstone::CommandSender

          Type Name virtual Actor * asActor () constGets a CommandSender asActor . virtual CommandSender * asCommandSender () override constCasts a Permissible asCommandSender . virtual ConsoleCommandSender * asConsole () constGets a CommandSender as Console. virtual Player * asPlayer () constGets a CommandSender asPlayer . virtual std::string getName () const = 0Gets the name of this command sender. virtual Server & getServer () const = 0Returns the server instance that this command is running on. virtual void sendErrorMessage (const Message & message) const = 0Sends this sender a error message. void sendErrorMessage (const fmt::format_string< Args... > format, Args &&... args) const virtual void sendMessage (const Message & message) const = 0Sends this sender a message. void sendMessage (const fmt::format_string< Args... > format, Args &&... args) const"},{"location":"reference/cpp/classendstone_1_1Player/#public-functions-inherited-from-endstonepermissible","title":"Public Functions inherited from endstone::Permissible","text":"

          See endstone::Permissible

          Type Name virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin, const std::string & name, bool value) = 0 virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin) = 0 virtual CommandSender * asCommandSender () const = 0Casts a Permissible asCommandSender . virtual std::unordered_set< PermissionAttachmentInfo * > getEffectivePermissions () const = 0 virtual bool hasPermission (std::string name) const = 0 virtual bool hasPermission (const Permission & perm) const = 0 virtual bool isOp () const = 0Checks if this object is a server operator. virtual bool isPermissionSet (std::string name) const = 0 virtual bool isPermissionSet (const Permission & perm) const = 0 virtual void recalculatePermissions () = 0 virtual Result< void > removeAttachment (PermissionAttachment & attachment) = 0 virtual void setOp (bool value) = 0Sets the operator status of this object. virtual ~Permissible () = default"},{"location":"reference/cpp/classendstone_1_1Player/#protected-types","title":"Protected Types","text":"Type Name typedef std::variant< MessageForm, ActionForm, ModalForm > FormVariant"},{"location":"reference/cpp/classendstone_1_1Player/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Player/#function-asplayer","title":"function asPlayer","text":"

          Gets a CommandSender asPlayer .

          inline virtual Player * endstone::Player::asPlayer () override const\n

          Returns:

          Player, nullptr if not a Player

          Implements endstone::CommandSender::asPlayer

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-closeform","title":"function closeForm","text":"
          virtual void endstone::Player::closeForm () = 0\n
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getaddress","title":"function getAddress","text":"

          Gets the socket address of this player.

          virtual const SocketAddress & endstone::Player::getAddress () const = 0\n

          Returns:

          the player's socket address

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getallowflight","title":"function getAllowFlight","text":"

          Determines if the Player is allowed to fly via jump key double-tap.

          virtual bool endstone::Player::getAllowFlight () const = 0\n

          Returns:

          True if the player is allowed to fly.

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getdeviceid","title":"function getDeviceId","text":"

          Gets the player's current device id.

          virtual std::string endstone::Player::getDeviceId () const = 0\n

          Returns:

          the player's device id

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getdeviceos","title":"function getDeviceOS","text":"

          Gets the player's current device's operation system (OS).

          virtual std::string endstone::Player::getDeviceOS () const = 0\n

          Returns:

          the player's device OS

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getexplevel","title":"function getExpLevel","text":"

          Gets the players current experience level.

          virtual int endstone::Player::getExpLevel () const = 0\n

          Returns:

          Current experience level

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getexpprogress","title":"function getExpProgress","text":"

          Gets the players current experience progress towards the next level.

          virtual float endstone::Player::getExpProgress () const = 0\n

          This is a percentage value. 0.0 is \"no progress\" and 1.0 is \"next level\".

          Returns:

          Current experience points

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getflyspeed","title":"function getFlySpeed","text":"

          Gets the current allowed speed that a client can fly.

          virtual float endstone::Player::getFlySpeed () const = 0\n

          Returns:

          The current allowed speed, default is 0.05.

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getgamemode","title":"function getGameMode","text":"

          Gets this player's current GameMode.

          virtual GameMode endstone::Player::getGameMode () const = 0\n

          Returns:

          Current game mode

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getgameversion","title":"function getGameVersion","text":"

          Gets the player's current game version.

          virtual std::string endstone::Player::getGameVersion () const = 0\n

          Returns:

          the player's game version

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getinventory","title":"function getInventory","text":"

          Get the player's inventory.

          virtual PlayerInventory & endstone::Player::getInventory () const = 0\n

          Returns:

          The inventory of the player, this also contains the armor slots.

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getlocale","title":"function getLocale","text":"

          Gets the player's current locale.

          virtual std::string endstone::Player::getLocale () const = 0\n

          Returns:

          the player's locale

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getping","title":"function getPing","text":"

          Gets the player's average ping.

          virtual std::chrono::milliseconds endstone::Player::getPing () const = 0\n

          Returns:

          player ping

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getscoreboard","title":"function getScoreboard","text":"

          Gets the Scoreboard displayed to this player.

          virtual Scoreboard & endstone::Player::getScoreboard () const = 0\n

          Returns:

          The current scoreboard seen by this player

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getskin","title":"function getSkin","text":"

          Gets the player's skin.

          virtual const Skin & endstone::Player::getSkin () const = 0\n

          Returns:

          the player's skin

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-gettotalexp","title":"function getTotalExp","text":"

          Gets the players total experience points.

          virtual int endstone::Player::getTotalExp () const = 0\n

          This refers to the total amount of experience the player has collected over time and is not currently displayed to the client.

          Returns:

          Current total experience points

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getuniqueid","title":"function getUniqueId","text":"

          Returns the UUID of this player.

          virtual UUID endstone::Player::getUniqueId () const = 0\n

          Returns:

          Player UUID

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getwalkspeed","title":"function getWalkSpeed","text":"

          Gets the current allowed speed that a client can walk.

          virtual float endstone::Player::getWalkSpeed () const = 0\n

          Returns:

          The current allowed speed, default is 0.10.

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-getxuid","title":"function getXuid","text":"

          Returns the Xbox User ID (XUID) of this player.

          virtual std::string endstone::Player::getXuid () const = 0\n

          Returns:

          Player XUID

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-giveexp","title":"function giveExp","text":"

          Gives the player the amount of experience specified.

          virtual void endstone::Player::giveExp (\n    int amount\n) = 0\n

          Parameters:

          • amount Exp amount to give
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-giveexplevels","title":"function giveExpLevels","text":"

          Gives the player the amount of experience levels specified.

          virtual void endstone::Player::giveExpLevels (\n    int amount\n) = 0\n

          Parameters:

          • amount amount of experience levels to give or take
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-isflying","title":"function isFlying","text":"

          Checks to see if this player is currently flying or not.

          virtual bool endstone::Player::isFlying () const = 0\n

          Returns:

          True if the player is flying, else false.

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-kick","title":"function kick","text":"

          Kicks player with custom kick message.

          virtual void endstone::Player::kick (\n    std::string message\n) const = 0\n

          Parameters:

          • message kick message
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-performcommand","title":"function performCommand","text":"

          Makes the player perform the given command.

          virtual bool endstone::Player::performCommand (\n    std::string command\n) const = 0\n

          Parameters:

          • command Command to perform

          Returns:

          true if the command was successful, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1Player/#function-resettitle","title":"function resetTitle","text":"
          virtual void endstone::Player::resetTitle () const = 0\n
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-sendform","title":"function sendForm","text":"

          Sends a form to the player.

          virtual void endstone::Player::sendForm (\n    FormVariant form\n) = 0\n

          Parameters:

          • form The form to send
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-sendpacket","title":"function sendPacket","text":"

          Sends a packet to the player.

          virtual void endstone::Player::sendPacket (\n    Packet & packet\n) const = 0\n

          Parameters:

          • packet The packet to be sent.
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-sendpopup","title":"function sendPopup","text":"

          Sends this player a popup message.

          virtual void endstone::Player::sendPopup (\n    std::string message\n) const = 0\n

          Parameters:

          • message Message to be displayed
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-sendtip","title":"function sendTip","text":"

          Sends this player a tip message.

          virtual void endstone::Player::sendTip (\n    std::string message\n) const = 0\n

          Parameters:

          • message Message to be displayed
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-sendtitle-12","title":"function sendTitle [\u00bd]","text":"

          Sends a title and a subtitle message to the player. If they are empty strings, the display will be updated as such. The titles will be displayed with the default timings.

          virtual void endstone::Player::sendTitle (\n    std::string title,\n    std::string subtitle\n) const = 0\n

          Parameters:

          • title Title text
          • subtitle Subtitle text
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-sendtitle-22","title":"function sendTitle [2/2]","text":"

          Sends a title and a subtitle message to the player. If they are empty strings, the display will be updated as such.

          virtual void endstone::Player::sendTitle (\n    std::string title,\n    std::string subtitle,\n    int fade_in,\n    int stay,\n    int fade_out\n) const = 0\n

          Parameters:

          • title Title text
          • subtitle Subtitle text
          • fade_in time in ticks for titles to fade in. Defaults to 10.
          • stay time in ticks for titles to stay. Defaults to 70.
          • fade_out time in ticks for titles to fade out. Defaults to 20.
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-sendtoast","title":"function sendToast","text":"

          Sends this player a toast notification.

          virtual void endstone::Player::sendToast (\n    std::string title,\n    std::string content\n) const = 0\n

          Parameters:

          • title The title of the toast notification.
          • content The content of the toast notification.
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-setallowflight","title":"function setAllowFlight","text":"

          Sets if the Player is allowed to fly via jump key double-tap.

          virtual void endstone::Player::setAllowFlight (\n    bool flight\n) = 0\n

          Parameters:

          • flight If flight should be allowed.
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-setexplevel","title":"function setExpLevel","text":"

          Sets the players current experience level.

          virtual Result< void > endstone::Player::setExpLevel (\n    int level\n) = 0\n

          Parameters:

          • level New experience level
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-setexpprogress","title":"function setExpProgress","text":"

          Sets the players current experience progress towards the next level.

          virtual Result< void > endstone::Player::setExpProgress (\n    float progress\n) = 0\n

          This is a percentage value. 0.0 is \"no progress\" and 1.0 is \"next level\".

          Parameters:

          • progress New experience progress
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-setflyspeed","title":"function setFlySpeed","text":"
          virtual void endstone::Player::setFlySpeed (\n    float value\n) const = 0\n

          Sets the speed at which a client will fly.

          Parameters:

          • value The new speed.
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-setflying","title":"function setFlying","text":"

          Makes this player start or stop flying.

          virtual Result< void > endstone::Player::setFlying (\n    bool value\n) = 0\n

          Parameters:

          • value True to fly.
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-setgamemode","title":"function setGameMode","text":"

          Sets this player's current GameMode.

          virtual void endstone::Player::setGameMode (\n    GameMode mode\n) = 0\n

          Parameters:

          • mode New game mode
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-setscoreboard","title":"function setScoreboard","text":"
          virtual void endstone::Player::setScoreboard (\n    Scoreboard & scoreboard\n) = 0\n

          @breif Sets the player's visible Scoreboard.

          Parameters:

          • scoreboard New Scoreboard for the player
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-setwalkspeed","title":"function setWalkSpeed","text":"
          virtual void endstone::Player::setWalkSpeed (\n    float value\n) const = 0\n

          Sets the speed at which a client will walk.

          Parameters:

          • value The new speed.
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-spawnparticle-14","title":"function spawnParticle [\u00bc]","text":"

          Spawns the particle at the target location.

          virtual void endstone::Player::spawnParticle (\n    std::string name,\n    Location location\n) const = 0\n

          Parameters:

          • name the name of the particle effect to spawn
          • location the location to spawn at
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-spawnparticle-24","title":"function spawnParticle [2/4]","text":"

          Spawns the particle at the target location.

          virtual void endstone::Player::spawnParticle (\n    std::string name,\n    float x,\n    float y,\n    float z\n) const = 0\n

          Parameters:

          • name the name of the particle effect to spawn
          • x the position on the x axis to spawn at
          • y the position on the y axis to spawn at
          • z the position on the z axis to spawn at
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-spawnparticle-34","title":"function spawnParticle [\u00be]","text":"

          Spawns the particle at the target location.

          virtual void endstone::Player::spawnParticle (\n    std::string name,\n    Location location,\n    std::optional< std::string > molang_variables_json\n) const = 0\n

          Parameters:

          • name the name of the particle effect to spawn
          • location the location to spawn at
          • molang_variables_json the customizable molang variables that can be adjusted for this particle, in json
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-spawnparticle-44","title":"function spawnParticle [4/4]","text":"

          Spawns the particle at the target location.

          virtual void endstone::Player::spawnParticle (\n    std::string name,\n    float x,\n    float y,\n    float z,\n    std::optional< std::string > molang_variables_json\n) const = 0\n

          Parameters:

          • name the name of the particle effect to spawn
          • x the position on the x axis to spawn at
          • y the position on the y axis to spawn at
          • z the position on the z axis to spawn at
          • molang_variables_json the customizable molang variables that can be adjusted for this particle, in json
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-transfer","title":"function transfer","text":"

          Transfers the player to another server.

          virtual void endstone::Player::transfer (\n    std::string host,\n    int port\n) const = 0\n

          Parameters:

          • host Server address to transfer the player to.
          • port Server port to transfer the player to
          "},{"location":"reference/cpp/classendstone_1_1Player/#function-updatecommands","title":"function updateCommands","text":"

          Send the list of commands to the client.

          virtual void endstone::Player::updateCommands () const = 0\n

          Generally useful to ensure the client has a complete list of commands after permission changes are done.

          "},{"location":"reference/cpp/classendstone_1_1Player/#protected-types-documentation","title":"Protected Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Player/#typedef-formvariant","title":"typedef FormVariant","text":"
          using endstone::Player::FormVariant =  std::variant<MessageForm, ActionForm, ModalForm>;\n

          The documentation for this class was generated from the following file include/endstone/player.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/","title":"Class endstone::PlayerChatEvent","text":"

          ClassList > endstone > PlayerChatEvent

          Called when a player sends a chat message.

          • #include <endstone/event/player/player_chat_event.h>

          Inherits the following classes: endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerChatEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerChatEvent (Player & player, std::string message) virtual std::string getEventName () override const std::string getMessage () const virtual bool isCancellable () override const void setMessage (std::string message) ~PlayerChatEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerChatEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#function-playerchatevent","title":"function PlayerChatEvent","text":"
          inline explicit endstone::PlayerChatEvent::PlayerChatEvent (\n    Player & player,\n    std::string message\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerChatEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#function-getmessage","title":"function getMessage","text":"
          inline std::string endstone::PlayerChatEvent::getMessage () const\n

          Gets the message that the player is attempting to send.

          Returns:

          Message the player is attempting to send

          "},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerChatEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#function-setmessage","title":"function setMessage","text":"
          inline void endstone::PlayerChatEvent::setMessage (\n    std::string message\n) \n

          Sets the message that the player will send.

          Parameters:

          • message New message that the player will send
          "},{"location":"reference/cpp/classendstone_1_1PlayerChatEvent/#function-playerchatevent_1","title":"function ~PlayerChatEvent","text":"
          endstone::PlayerChatEvent::~PlayerChatEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_chat_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/","title":"Class endstone::PlayerCommandEvent","text":"

          ClassList > endstone > PlayerCommandEvent

          Called whenever a player runs a command.

          • #include <endstone/event/player/player_command_event.h>

          Inherits the following classes: endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerCommandEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerCommandEvent (Player & player, std::string command) std::string getCommand () const virtual std::string getEventName () override const virtual bool isCancellable () override const void setCommand (std::string command) ~PlayerCommandEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerCommandEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#function-playercommandevent","title":"function PlayerCommandEvent","text":"
          inline explicit endstone::PlayerCommandEvent::PlayerCommandEvent (\n    Player & player,\n    std::string command\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#function-getcommand","title":"function getCommand","text":"
          inline std::string endstone::PlayerCommandEvent::getCommand () const\n

          Gets the command that the player is attempting to send.

          Returns:

          Command the player is attempting to send

          "},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerCommandEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerCommandEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#function-setcommand","title":"function setCommand","text":"
          inline void endstone::PlayerCommandEvent::setCommand (\n    std::string command\n) \n

          Sets the command that the player will send.

          Parameters:

          • command New command that the player will send
          "},{"location":"reference/cpp/classendstone_1_1PlayerCommandEvent/#function-playercommandevent_1","title":"function ~PlayerCommandEvent","text":"
          endstone::PlayerCommandEvent::~PlayerCommandEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_command_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/","title":"Class endstone::PlayerDeathEvent","text":"

          ClassList > endstone > PlayerDeathEvent

          Called when a Player dies.

          • #include <endstone/event/player/player_death_event.h>

          Inherits the following classes: endstone::ActorDeathEvent, endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerDeathEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-static-attributes-inherited-from-endstoneactordeathevent","title":"Public Static Attributes inherited from endstone::ActorDeathEvent","text":"

          See endstone::ActorDeathEvent

          Type Name const std::string NAME = = \"ActorDeathEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerDeathEvent (Player & player, std::string death_message) const std::string & getDeathMessage () constGet the death message that will appear to everyone on the server. virtual std::string getEventName () override const virtual bool isCancellable () override const void setDeathMessage (const std::string & death_message) Set the death message that will appear to everyone on the server. ~PlayerDeathEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-functions-inherited-from-endstoneactordeathevent","title":"Public Functions inherited from endstone::ActorDeathEvent","text":"

          See endstone::ActorDeathEvent

          Type Name ActorDeathEvent (Actor & actor) virtual std::string getEventName () override const virtual bool isCancellable () override const ~ActorDeathEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-functions-inherited-from-endstoneactorevent","title":"Public Functions inherited from endstone::ActorEvent","text":"

          See endstone::ActorEvent

          Type Name ActorEvent (Actor & actor) Actor & getActor () constReturns the Actor involved in this event. ~ActorEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-functions-inherited-from-endstoneevent_1","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerDeathEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#function-playerdeathevent","title":"function PlayerDeathEvent","text":"
          inline explicit endstone::PlayerDeathEvent::PlayerDeathEvent (\n    Player & player,\n    std::string death_message\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#function-getdeathmessage","title":"function getDeathMessage","text":"

          Get the death message that will appear to everyone on the server.

          inline const std::string & endstone::PlayerDeathEvent::getDeathMessage () const\n

          Returns:

          Message to appear to other players on the server.

          "},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerDeathEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::ActorDeathEvent::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerDeathEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::ActorDeathEvent::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#function-setdeathmessage","title":"function setDeathMessage","text":"

          Set the death message that will appear to everyone on the server.

          inline void endstone::PlayerDeathEvent::setDeathMessage (\n    const std::string & death_message\n) \n

          Parameters:

          • death_message Message to appear to other players on the server.
          "},{"location":"reference/cpp/classendstone_1_1PlayerDeathEvent/#function-playerdeathevent_1","title":"function ~PlayerDeathEvent","text":"
          endstone::PlayerDeathEvent::~PlayerDeathEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_death_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerEvent/","title":"Class endstone::PlayerEvent","text":"

          ClassList > endstone > PlayerEvent

          Represents a player related event.

          • #include <endstone/event/player/player_event.h>

          Inherits the following classes: endstone::Event

          Inherited by the following classes: endstone::PlayerChatEvent, endstone::PlayerCommandEvent, endstone::PlayerDeathEvent, endstone::PlayerInteractActorEvent, endstone::PlayerInteractEvent, endstone::PlayerJoinEvent, endstone::PlayerKickEvent, endstone::PlayerLoginEvent, endstone::PlayerQuitEvent, endstone::PlayerTeleportEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerEvent/#function-playerevent","title":"function PlayerEvent","text":"
          inline explicit endstone::PlayerEvent::PlayerEvent (\n    Player & player\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerEvent/#function-getplayer","title":"function getPlayer","text":"
          inline Player & endstone::PlayerEvent::getPlayer () const\n

          Returns the player involved in this event

          Returns:

          Player who is involved in this event

          "},{"location":"reference/cpp/classendstone_1_1PlayerEvent/#function-playerevent_1","title":"function ~PlayerEvent","text":"
          endstone::PlayerEvent::~PlayerEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/","title":"Class endstone::PlayerInteractActorEvent","text":"

          ClassList > endstone > PlayerInteractActorEvent

          Represents an event that is called when a player right-clicks an actor.

          • #include <endstone/event/player/player_interact_actor_event.h>

          Inherits the following classes: endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerInteractActorEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerInteractActorEvent (Player & player, Actor & actor) Actor & getActor () constGets the actor that was right-clicked by the player. virtual std::string getEventName () override const virtual bool isCancellable () override const ~PlayerInteractActorEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerInteractActorEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#function-playerinteractactorevent","title":"function PlayerInteractActorEvent","text":"
          inline explicit endstone::PlayerInteractActorEvent::PlayerInteractActorEvent (\n    Player & player,\n    Actor & actor\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#function-getactor","title":"function getActor","text":"

          Gets the actor that was right-clicked by the player.

          inline Actor & endstone::PlayerInteractActorEvent::getActor () const\n

          Returns:

          actor right-clicked by player

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerInteractActorEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerInteractActorEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractActorEvent/#function-playerinteractactorevent_1","title":"function ~PlayerInteractActorEvent","text":"
          endstone::PlayerInteractActorEvent::~PlayerInteractActorEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_interact_actor_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/","title":"Class endstone::PlayerInteractEvent","text":"

          ClassList > endstone > PlayerInteractEvent

          Represents an event that is called when a player right-clicks a block.

          • #include <endstone/event/player/player_interact_event.h>

          Inherits the following classes: endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerInteractEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerInteractEvent (Player & player, std::unique_ptr< ItemStack > item, std::unique_ptr< Block > block_clicked, BlockFace block_face, const Vector< float > & clicked_position) Block * getBlock () constReturns the clicked block. BlockFace getBlockFace () constReturns the face of the block that was clicked. Vector< float > getClickedPosition () constGets the exact position on the block the player interacted with. virtual std::string getEventName () override const ItemStack * getItem () constReturns the item in hand represented by this event. bool hasBlock () constCheck if this event involved a block. bool hasItem () constCheck if this event involved an item. virtual bool isCancellable () override const ~PlayerInteractEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerInteractEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-playerinteractevent","title":"function PlayerInteractEvent","text":"
          inline endstone::PlayerInteractEvent::PlayerInteractEvent (\n    Player & player,\n    std::unique_ptr< ItemStack > item,\n    std::unique_ptr< Block > block_clicked,\n    BlockFace block_face,\n    const Vector < float > & clicked_position\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-getblock","title":"function getBlock","text":"

          Returns the clicked block.

          inline Block * endstone::PlayerInteractEvent::getBlock () const\n

          Returns:

          Block returns the block clicked with this item.

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-getblockface","title":"function getBlockFace","text":"

          Returns the face of the block that was clicked.

          inline BlockFace endstone::PlayerInteractEvent::getBlockFace () const\n

          Returns:

          BlockFace returns the face of the block that was clicked

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-getclickedposition","title":"function getClickedPosition","text":"

          Gets the exact position on the block the player interacted with.

          inline Vector < float > endstone::PlayerInteractEvent::getClickedPosition () const\n

          All vector components are between 0.0 and 1.0 inclusive.

          Returns:

          the clicked position.

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerInteractEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-getitem","title":"function getItem","text":"

          Returns the item in hand represented by this event.

          inline ItemStack * endstone::PlayerInteractEvent::getItem () const\n

          Returns:

          ItemStack the item used

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-hasblock","title":"function hasBlock","text":"

          Check if this event involved a block.

          inline bool endstone::PlayerInteractEvent::hasBlock () const\n

          Returns:

          boolean true if it did

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-hasitem","title":"function hasItem","text":"

          Check if this event involved an item.

          inline bool endstone::PlayerInteractEvent::hasItem () const\n

          Returns:

          boolean true if it did

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerInteractEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerInteractEvent/#function-playerinteractevent_1","title":"function ~PlayerInteractEvent","text":"
          endstone::PlayerInteractEvent::~PlayerInteractEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_interact_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerInventory/","title":"Class endstone::PlayerInventory","text":"

          ClassList > endstone > PlayerInventory

          Interface to the inventory of a Player , including the four armor slots and any extra slots.

          • #include <endstone/inventory/player_inventory.h>

          Inherits the following classes: endstone::Inventory

          "},{"location":"reference/cpp/classendstone_1_1PlayerInventory/#public-functions-inherited-from-endstoneinventory","title":"Public Functions inherited from endstone::Inventory","text":"

          See endstone::Inventory

          Type Name virtual void addItem (ItemStack & item) = 0Stores the given ItemStacks in the inventory. This will try to fill existing stacks and empty slots as well as it can. virtual void clear () = 0Clears out the whole Inventory . virtual int first (ItemStack & item) = 0Returns the first slot in the inventory containing an ItemStack with the given stack. virtual std::vector< std::shared_ptr< ItemStack > > getContents () const = 0Returns all ItemStacks from the inventory. virtual std::shared_ptr< ItemStack > getItem (int index) const = 0Returns the ItemStack found in the slot at the given index. virtual int getMaxStackSize () const = 0Returns the maximum stack size for an ItemStack in this inventory. virtual int getSize () const = 0Returns the size of the inventory. virtual bool isEmpty () const = 0Check whether this inventory is empty. An inventory is considered to be empty if there are no ItemStacks in any slot of this inventory. virtual void setItem (int index, std::shared_ptr< ItemStack > item) = 0Stores the ItemStack at the given index of the inventory. virtual ~Inventory () = default

          The documentation for this class was generated from the following file include/endstone/inventory/player_inventory.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/","title":"Class endstone::PlayerJoinEvent","text":"

          ClassList > endstone > PlayerJoinEvent

          Called when a player joins a server.

          • #include <endstone/event/player/player_join_event.h>

          Inherits the following classes: endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerJoinEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerJoinEvent (Player & player, std::string join_message) virtual std::string getEventName () override const std::string getJoinMessage () constGets the join message to send to all online players. virtual bool isCancellable () override const void setJoinMessage (std::string message) Sets the join message to send to all online players. ~PlayerJoinEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerJoinEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#function-playerjoinevent","title":"function PlayerJoinEvent","text":"
          inline explicit endstone::PlayerJoinEvent::PlayerJoinEvent (\n    Player & player,\n    std::string join_message\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerJoinEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#function-getjoinmessage","title":"function getJoinMessage","text":"

          Gets the join message to send to all online players.

          inline std::string endstone::PlayerJoinEvent::getJoinMessage () const\n

          Returns:

          Message to appear to other players on the server.

          "},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerJoinEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#function-setjoinmessage","title":"function setJoinMessage","text":"

          Sets the join message to send to all online players.

          inline void endstone::PlayerJoinEvent::setJoinMessage (\n    std::string message\n) \n

          Parameters:

          • message Message to appear to other players on the server.
          "},{"location":"reference/cpp/classendstone_1_1PlayerJoinEvent/#function-playerjoinevent_1","title":"function ~PlayerJoinEvent","text":"
          endstone::PlayerJoinEvent::~PlayerJoinEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_join_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/","title":"Class endstone::PlayerKickEvent","text":"

          ClassList > endstone > PlayerKickEvent

          Called when a player gets kicked from the server.

          • #include <endstone/event/player/player_kick_event.h>

          Inherits the following classes: endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerKickEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerKickEvent (Player & player, std::string reason) virtual std::string getEventName () override const std::string getReason () constGets the reason why the player is getting kicked. virtual bool isCancellable () override const void setReason (std::string reason) Sets the reason why the player is getting kicked. ~PlayerKickEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerKickEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#function-playerkickevent","title":"function PlayerKickEvent","text":"
          inline explicit endstone::PlayerKickEvent::PlayerKickEvent (\n    Player & player,\n    std::string reason\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerKickEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#function-getreason","title":"function getReason","text":"

          Gets the reason why the player is getting kicked.

          inline std::string endstone::PlayerKickEvent::getReason () const\n

          Returns:

          string kick reason

          "},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerKickEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#function-setreason","title":"function setReason","text":"

          Sets the reason why the player is getting kicked.

          inline void endstone::PlayerKickEvent::setReason (\n    std::string reason\n) \n

          Parameters:

          • reason kick reason
          "},{"location":"reference/cpp/classendstone_1_1PlayerKickEvent/#function-playerkickevent_1","title":"function ~PlayerKickEvent","text":"
          endstone::PlayerKickEvent::~PlayerKickEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_kick_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/","title":"Class endstone::PlayerLoginEvent","text":"

          ClassList > endstone > PlayerLoginEvent

          Called when a player attempts to login in.

          • #include <endstone/event/player/player_login_event.h>

          Inherits the following classes: endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerLoginEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerLoginEvent (Player & player, std::string message=\"\") virtual std::string getEventName () override const const std::string & getKickMessage () const virtual bool isCancellable () override const void setKickMessage (const std::string & message) ~PlayerLoginEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerLoginEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#function-playerloginevent","title":"function PlayerLoginEvent","text":"
          inline explicit endstone::PlayerLoginEvent::PlayerLoginEvent (\n    Player & player,\n    std::string message=\"\"\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerLoginEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#function-getkickmessage","title":"function getKickMessage","text":"
          inline const std::string & endstone::PlayerLoginEvent::getKickMessage () const\n

          Gets the current kick message that will be used if event is cancelled

          Returns:

          Current kick message

          "},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerLoginEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#function-setkickmessage","title":"function setKickMessage","text":"
          inline void endstone::PlayerLoginEvent::setKickMessage (\n    const std::string & message\n) \n

          Sets the kick message to display if event is cancelled

          Parameters:

          • message New kick message
          "},{"location":"reference/cpp/classendstone_1_1PlayerLoginEvent/#function-playerloginevent_1","title":"function ~PlayerLoginEvent","text":"
          endstone::PlayerLoginEvent::~PlayerLoginEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_login_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/","title":"Class endstone::PlayerQuitEvent","text":"

          ClassList > endstone > PlayerQuitEvent

          Called when a player leaves a server.

          • #include <endstone/event/player/player_quit_event.h>

          Inherits the following classes: endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerQuitEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerQuitEvent (Player & player, std::string quit_message) virtual std::string getEventName () override const std::string getQuitMessage () constGets the quit message to send to all online players. virtual bool isCancellable () override const void setQuitMessage (std::string message) Sets the quit message to send to all online players. ~PlayerQuitEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerQuitEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#function-playerquitevent","title":"function PlayerQuitEvent","text":"
          inline explicit endstone::PlayerQuitEvent::PlayerQuitEvent (\n    Player & player,\n    std::string quit_message\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerQuitEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#function-getquitmessage","title":"function getQuitMessage","text":"

          Gets the quit message to send to all online players.

          inline std::string endstone::PlayerQuitEvent::getQuitMessage () const\n

          Returns:

          Message to appear to other players on the server.

          "},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerQuitEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#function-setquitmessage","title":"function setQuitMessage","text":"

          Sets the quit message to send to all online players.

          inline void endstone::PlayerQuitEvent::setQuitMessage (\n    std::string message\n) \n

          Parameters:

          • message Message to appear to other players on the server.
          "},{"location":"reference/cpp/classendstone_1_1PlayerQuitEvent/#function-playerquitevent_1","title":"function ~PlayerQuitEvent","text":"
          endstone::PlayerQuitEvent::~PlayerQuitEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_quit_event.h

          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/","title":"Class endstone::PlayerTeleportEvent","text":"

          ClassList > endstone > PlayerTeleportEvent

          Called when a player is teleported from one location to another.

          • #include <endstone/event/player/player_teleport_event.h>

          Inherits the following classes: endstone::PlayerEvent

          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PlayerTeleportEvent\""},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#public-functions","title":"Public Functions","text":"Type Name PlayerTeleportEvent (Player & player, Location from, Location to) virtual std::string getEventName () override const const Location & getFrom () constGets the location that this player moved from. const Location & getTo () constGets the location that this player moved to. virtual bool isCancellable () override const void setFrom (const Location & from) Sets the location that this player moved from. void setTo (const Location & to) Sets the location that this player moved to. ~PlayerTeleportEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#public-functions-inherited-from-endstoneplayerevent","title":"Public Functions inherited from endstone::PlayerEvent","text":"

          See endstone::PlayerEvent

          Type Name PlayerEvent (Player & player) Player & getPlayer () const ~PlayerEvent () override"},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PlayerTeleportEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#function-playerteleportevent","title":"function PlayerTeleportEvent","text":"
          inline explicit endstone::PlayerTeleportEvent::PlayerTeleportEvent (\n    Player & player,\n    Location from,\n    Location to\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PlayerTeleportEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#function-getfrom","title":"function getFrom","text":"

          Gets the location that this player moved from.

          inline const Location & endstone::PlayerTeleportEvent::getFrom () const\n

          Returns:

          Location this player moved from

          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#function-getto","title":"function getTo","text":"

          Gets the location that this player moved to.

          inline const Location & endstone::PlayerTeleportEvent::getTo () const\n

          Returns:

          Location this player moved to

          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PlayerTeleportEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#function-setfrom","title":"function setFrom","text":"

          Sets the location that this player moved from.

          inline void endstone::PlayerTeleportEvent::setFrom (\n    const Location & from\n) \n

          Parameters:

          • from New location this player moved from
          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#function-setto","title":"function setTo","text":"

          Sets the location that this player moved to.

          inline void endstone::PlayerTeleportEvent::setTo (\n    const Location & to\n) \n

          Parameters:

          • to New Location this player moved to
          "},{"location":"reference/cpp/classendstone_1_1PlayerTeleportEvent/#function-playerteleportevent_1","title":"function ~PlayerTeleportEvent","text":"
          endstone::PlayerTeleportEvent::~PlayerTeleportEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/player/player_teleport_event.h

          "},{"location":"reference/cpp/classendstone_1_1Plugin/","title":"Class endstone::Plugin","text":"

          ClassList > endstone > Plugin

          Represents a Plugin .

          • #include <endstone/plugin/plugin.h>

          Inherits the following classes: endstone::CommandExecutor

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#public-functions","title":"Public Functions","text":"Type Name Plugin () = default Plugin (const Plugin &) = delete PluginCommand * getCommand (std::string name) constGets the command with the given name, specific to this plugin. const std::filesystem::path & getDataFolder () constReturns the folder that the plugin data's files are located in. The folder may not yet exist. virtual const PluginDescription & getDescription () const = 0Returns the details of this plugin. Logger & getLogger () constReturns the plugin logger associated with this server's logger. The returned logger automatically tags all log messages with the plugin's name. std::string getName () constReturns the name of the plugin. PluginLoader & getPluginLoader () constGets the associated PluginLoader responsible for this plugin. Server & getServer () constReturns the Server instance currently running this plugin. bool isEnabled () constReturns a value indicating whether this plugin is currently enabled. virtual void onDisable () Called when this plugin is disabled. virtual void onEnable () Called when this plugin is enabled. virtual void onLoad () Called after a plugin is loaded but before it has been enabled. Plugin & operator= (const Plugin &) = delete void registerEvent (void(T::*)(EventType &) func, T & instance, EventPriority priority=EventPriority::Normal, bool ignore_cancelled=false) void registerEvent (std::function< void(EventType &)> func, EventPriority priority=EventPriority::Normal, bool ignore_cancelled=false) ~Plugin () override"},{"location":"reference/cpp/classendstone_1_1Plugin/#public-functions-inherited-from-endstonecommandexecutor","title":"Public Functions inherited from endstone::CommandExecutor","text":"

          See endstone::CommandExecutor

          Type Name virtual bool onCommand (CommandSender & sender, const Command & command, const std::vector< std::string > & args) virtual ~CommandExecutor () = default"},{"location":"reference/cpp/classendstone_1_1Plugin/#protected-functions","title":"Protected Functions","text":"Type Name void setEnabled (bool enabled)"},{"location":"reference/cpp/classendstone_1_1Plugin/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Plugin/#function-plugin-12","title":"function Plugin [\u00bd]","text":"
          endstone::Plugin::Plugin () = default\n
          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-plugin-22","title":"function Plugin [2/2]","text":"
          endstone::Plugin::Plugin (\n    const Plugin &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-getcommand","title":"function getCommand","text":"

          Gets the command with the given name, specific to this plugin.

          inline PluginCommand * endstone::Plugin::getCommand (\n    std::string name\n) const\n

          Parameters:

          • name name or alias of the command

          Returns:

          the plugin command if found, otherwise null

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-getdatafolder","title":"function getDataFolder","text":"

          Returns the folder that the plugin data's files are located in. The folder may not yet exist.

          inline const std::filesystem::path & endstone::Plugin::getDataFolder () const\n

          Returns:

          The folder

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-getdescription","title":"function getDescription","text":"

          Returns the details of this plugin.

          virtual const PluginDescription & endstone::Plugin::getDescription () const = 0\n

          Returns:

          Details of this plugin

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-getlogger","title":"function getLogger","text":"

          Returns the plugin logger associated with this server's logger. The returned logger automatically tags all log messages with the plugin's name.

          inline Logger & endstone::Plugin::getLogger () const\n

          Returns:

          Logger associated with this plugin

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-getname","title":"function getName","text":"

          Returns the name of the plugin.

          inline std::string endstone::Plugin::getName () const\n

          This should return the bare name of the plugin and should be used for comparison.

          Returns:

          name of the plugin

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-getpluginloader","title":"function getPluginLoader","text":"

          Gets the associated PluginLoader responsible for this plugin.

          inline PluginLoader & endstone::Plugin::getPluginLoader () const\n

          Returns:

          PluginLoader that controls this plugin

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-getserver","title":"function getServer","text":"

          Returns the Server instance currently running this plugin.

          inline Server & endstone::Plugin::getServer () const\n

          Returns:

          Server running this plugin

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-isenabled","title":"function isEnabled","text":"

          Returns a value indicating whether this plugin is currently enabled.

          inline bool endstone::Plugin::isEnabled () const\n

          Returns:

          true if this plugin is enabled, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-ondisable","title":"function onDisable","text":"
          inline virtual void endstone::Plugin::onDisable () \n
          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-onenable","title":"function onEnable","text":"
          inline virtual void endstone::Plugin::onEnable () \n
          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-onload","title":"function onLoad","text":"

          Called after a plugin is loaded but before it has been enabled.

          inline virtual void endstone::Plugin::onLoad () \n

          When multiple plugins are loaded, the onLoad() for all plugins is called before any onEnable() is called.

          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-operator","title":"function operator=","text":"
          Plugin & endstone::Plugin::operator= (\n    const Plugin &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-registerevent-12","title":"function registerEvent [\u00bd]","text":"
          template<typename EventType, typename T>\ninline void endstone::Plugin::registerEvent (\n    void(T::*)(EventType &) func,\n    T & instance,\n    EventPriority priority=EventPriority::Normal,\n    bool ignore_cancelled=false\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-registerevent-22","title":"function registerEvent [2/2]","text":"
          template<typename EventType>\ninline void endstone::Plugin::registerEvent (\n    std::function< void(EventType &)> func,\n    EventPriority priority=EventPriority::Normal,\n    bool ignore_cancelled=false\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Plugin/#function-plugin","title":"function ~Plugin","text":"
          endstone::Plugin::~Plugin () override\n
          "},{"location":"reference/cpp/classendstone_1_1Plugin/#protected-functions-documentation","title":"Protected Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Plugin/#function-setenabled","title":"function setEnabled","text":"
          inline void endstone::Plugin::setEnabled (\n    bool enabled\n) \n

          Sets the enabled state of this plugin

          Parameters:

          • enabled true if enabled, otherwise false
          "},{"location":"reference/cpp/classendstone_1_1Plugin/#friends-documentation","title":"Friends Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Plugin/#friend-endstonepluginmanager","title":"friend EndstonePluginManager","text":"
          class endstone::Plugin::EndstonePluginManager (\n    detail::EndstonePluginManager\n) \n

          The documentation for this class was generated from the following file include/endstone/plugin/plugin.h

          "},{"location":"reference/cpp/classendstone_1_1PluginCommand/","title":"Class endstone::PluginCommand","text":"

          ClassList > endstone > PluginCommand

          Represents a Command belonging to aPlugin .

          • #include <endstone/command/plugin_command.h>

          Inherits the following classes: endstone::Command

          "},{"location":"reference/cpp/classendstone_1_1PluginCommand/#public-functions","title":"Public Functions","text":"Type Name PluginCommand (const Command & command, Plugin & owner) virtual PluginCommand * asPluginCommand () override const virtual bool execute (CommandSender & sender, const std::vector< std::string > & args) override const virtual CommandExecutor & getExecutor () const Plugin & getPlugin () const virtual void setExecutor (std::shared_ptr< CommandExecutor > executor)"},{"location":"reference/cpp/classendstone_1_1PluginCommand/#public-functions-inherited-from-endstonecommand","title":"Public Functions inherited from endstone::Command","text":"

          See endstone::Command

          Type Name Command (std::string name, std::string description=\"\", std::vector< std::string > usages={}, std::vector< std::string > aliases={}, std::vector< std::string > permissions={}) virtual PluginCommand * asPluginCommand () const virtual bool execute (CommandSender & sender, const std::vector< std::string > & args) const std::vector< std::string > getAliases () const std::string getDescription () const std::string getName () const std::vector< std::string > getPermissions () const std::vector< std::string > getUsages () const bool isRegistered () const bool registerTo (CommandMap & command_map) void setAliases (Alias... aliases) void setDescription (std::string description) void setName (std::string name) void setPermissions (Permission... permissions) void setUsages (Usage... usages) bool testPermission (const CommandSender & target) const bool testPermissionSilently (const CommandSender & target) const bool unregisterFrom (const CommandMap & command_map) virtual ~Command () = default"},{"location":"reference/cpp/classendstone_1_1PluginCommand/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PluginCommand/#function-plugincommand","title":"function PluginCommand","text":"
          inline endstone::PluginCommand::PluginCommand (\n    const Command & command,\n    Plugin & owner\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PluginCommand/#function-asplugincommand","title":"function asPluginCommand","text":"
          inline virtual PluginCommand * endstone::PluginCommand::asPluginCommand () override const\n

          Implements endstone::Command::asPluginCommand

          "},{"location":"reference/cpp/classendstone_1_1PluginCommand/#function-execute","title":"function execute","text":"
          inline virtual bool endstone::PluginCommand::execute (\n    CommandSender & sender,\n    const std::vector< std::string > & args\n) override const\n

          Executes the command, returning its success

          Parameters:

          • sender Source of the command
          • args Arguments passed to the command

          Returns:

          true if the execution was successful, otherwise false

          Implements endstone::Command::execute

          "},{"location":"reference/cpp/classendstone_1_1PluginCommand/#function-getexecutor","title":"function getExecutor","text":"
          inline virtual CommandExecutor & endstone::PluginCommand::getExecutor () const\n

          Gets the CommandExecutor associated with this command

          Returns:

          CommandExecutor object linked to this command

          "},{"location":"reference/cpp/classendstone_1_1PluginCommand/#function-getplugin","title":"function getPlugin","text":"
          inline Plugin & endstone::PluginCommand::getPlugin () const\n

          Gets the owner of this PluginCommand

          Returns:

          Plugin that owns this command

          "},{"location":"reference/cpp/classendstone_1_1PluginCommand/#function-setexecutor","title":"function setExecutor","text":"
          inline virtual void endstone::PluginCommand::setExecutor (\n    std::shared_ptr< CommandExecutor > executor\n) \n

          Sets the CommandExecutor to run when parsing this command

          Parameters:

          • executor New executor to run

          The documentation for this class was generated from the following file include/endstone/command/plugin_command.h

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/","title":"Class endstone::PluginDescription","text":"

          ClassList > endstone > PluginDescription

          Represents the basic information about a plugin that the plugin loader needs to know.

          • #include <endstone/plugin/plugin_description.h>
          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#public-functions","title":"Public Functions","text":"Type Name PluginDescription (std::string name, std::string version, std::string description=\"\", PluginLoadOrder load=PluginLoadOrder::PostWorld, std::vector< std::string > authors={}, std::vector< std::string > contributors={}, std::string website=\"\", std::string prefix=\"\", std::vector< std::string > provides={}, std::vector< std::string > depend={}, std::vector< std::string > soft_depend={}, std::vector< std::string > load_before={}, PermissionDefault default_permission=PermissionDefault::Operator, std::vector< Command > commands={}, std::vector< Permission > permissions={}) std::string getAPIVersion () const std::vector< std::string > getAuthors () const std::vector< Command > getCommands () const std::vector< std::string > getContributors () const PermissionDefault getDefaultPermission () const std::vector< std::string > getDepend () const std::string getDescription () const std::string getFullName () const PluginLoadOrder getLoad () const std::vector< std::string > getLoadBefore () const std::string getName () const std::vector< Permission > getPermissions () const std::string getPrefix () const std::vector< std::string > getProvides () const std::vector< std::string > getSoftDepend () const std::string getVersion () const std::string getWebsite () const"},{"location":"reference/cpp/classendstone_1_1PluginDescription/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-plugindescription","title":"function PluginDescription","text":"
          inline endstone::PluginDescription::PluginDescription (\n    std::string name,\n    std::string version,\n    std::string description=\"\",\n    PluginLoadOrder load=PluginLoadOrder::PostWorld,\n    std::vector< std::string > authors={},\n    std::vector< std::string > contributors={},\n    std::string website=\"\",\n    std::string prefix=\"\",\n    std::vector< std::string > provides={},\n    std::vector< std::string > depend={},\n    std::vector< std::string > soft_depend={},\n    std::vector< std::string > load_before={},\n    PermissionDefault default_permission=PermissionDefault::Operator,\n    std::vector< Command > commands={},\n    std::vector< Permission > permissions={}\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getapiversion","title":"function getAPIVersion","text":"
          inline std::string endstone::PluginDescription::getAPIVersion () const\n

          Gives the API version which this plugin is designed to support.

          Returns:

          the API version supported by the plugin

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getauthors","title":"function getAuthors","text":"
          inline std::vector< std::string > endstone::PluginDescription::getAuthors () const\n

          Gives the list of authors for the plugin.

          Returns:

          an immutable list of the plugin's authors

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getcommands","title":"function getCommands","text":"
          inline std::vector< Command > endstone::PluginDescription::getCommands () const\n

          Gives the list of commands the plugin will register at runtime.

          Returns:

          the commands this plugin will register

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getcontributors","title":"function getContributors","text":"
          inline std::vector< std::string > endstone::PluginDescription::getContributors () const\n

          Gives the list of contributors for the plugin.

          Returns:

          an immutable list of the plugin's contributions

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getdefaultpermission","title":"function getDefaultPermission","text":"
          inline PermissionDefault endstone::PluginDescription::getDefaultPermission () const\n

          Gives the default value of permissions registered for the plugin.

          Returns:

          the default value for the plugin's permissions

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getdepend","title":"function getDepend","text":"
          inline std::vector< std::string > endstone::PluginDescription::getDepend () const\n

          Gives a list of other plugins that the plugin requires.

          Returns:

          immutable list of the plugin's dependencies

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getdescription","title":"function getDescription","text":"
          inline std::string endstone::PluginDescription::getDescription () const\n

          Gives a human-friendly description of the functionality the plugin provides.

          Returns:

          description of this plugin, or empty if not specified

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getfullname","title":"function getFullName","text":"
          inline std::string endstone::PluginDescription::getFullName () const\n

          Returns the name of a plugin, including the version.

          Returns:

          a descriptive name of the plugin and respective version

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getload","title":"function getLoad","text":"
          inline PluginLoadOrder endstone::PluginDescription::getLoad () const\n

          Gives the phase of server startup that the plugin should be loaded.

          Returns:

          the phase when the plugin should be loaded

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getloadbefore","title":"function getLoadBefore","text":"
          inline std::vector< std::string > endstone::PluginDescription::getLoadBefore () const\n

          Gets the list of plugins that should consider this plugin a soft-dependency.

          Returns:

          immutable list of plugins that should consider this plugin a soft-dependency

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getname","title":"function getName","text":"
          inline std::string endstone::PluginDescription::getName () const\n

          Gives the name of the plugin. This name is a unique identifier for plugins.

          Returns:

          the name of the plugin

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getpermissions","title":"function getPermissions","text":"
          inline std::vector< Permission > endstone::PluginDescription::getPermissions () const\n

          Gives the list of permissions the plugin will register at runtime, immediately proceeding enabling.

          Returns:

          the permissions this plugin will register

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getprefix","title":"function getPrefix","text":"
          inline std::string endstone::PluginDescription::getPrefix () const\n

          Gives the token to prefix plugin-specific logging messages with.

          Returns:

          the prefixed logging token, or empty if not specified

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getprovides","title":"function getProvides","text":"
          inline std::vector< std::string > endstone::PluginDescription::getProvides () const\n

          Gives the list of other plugin APIs which this plugin provides. These are usable for other plugins to depend on.

          Returns:

          immutable list of the plugin APIs which this plugin provides

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getsoftdepend","title":"function getSoftDepend","text":"
          inline std::vector< std::string > endstone::PluginDescription::getSoftDepend () const\n

          Gives a list of other plugins that the plugin requires for full functionality.

          Returns:

          immutable list of the plugin's preferred dependencies

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getversion","title":"function getVersion","text":"
          inline std::string endstone::PluginDescription::getVersion () const\n

          Gives the version of the plugin.

          Returns:

          the version of the plugin

          "},{"location":"reference/cpp/classendstone_1_1PluginDescription/#function-getwebsite","title":"function getWebsite","text":"
          inline std::string endstone::PluginDescription::getWebsite () const\n

          Gives the plugin's or plugin's author's website.

          Returns:

          the website of this plugin, or empty if not specified

          The documentation for this class was generated from the following file include/endstone/plugin/plugin_description.h

          "},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/","title":"Class endstone::PluginDisableEvent","text":"

          ClassList > endstone > PluginDisableEvent

          Called when a plugin is disabled.

          • #include <endstone/event/server/plugin_disable_event.h>

          Inherits the following classes: endstone::ServerEvent

          "},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PluginDisableEvent\""},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#public-functions","title":"Public Functions","text":"Type Name PluginDisableEvent (Plugin & plugin) virtual std::string getEventName () override const Plugin & getPlugin () const virtual bool isCancellable () override const"},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#public-functions-inherited-from-endstoneserverevent","title":"Public Functions inherited from endstone::ServerEvent","text":"

          See endstone::ServerEvent

          Type Name Event (bool async=false) Event (const Event &) = delete"},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PluginDisableEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#function-plugindisableevent","title":"function PluginDisableEvent","text":"
          inline explicit endstone::PluginDisableEvent::PluginDisableEvent (\n    Plugin & plugin\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PluginDisableEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#function-getplugin","title":"function getPlugin","text":"
          inline Plugin & endstone::PluginDisableEvent::getPlugin () const\n

          Gets the plugin involved in this event

          Returns:

          Plugin for this event

          "},{"location":"reference/cpp/classendstone_1_1PluginDisableEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PluginDisableEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          The documentation for this class was generated from the following file include/endstone/event/server/plugin_disable_event.h

          "},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/","title":"Class endstone::PluginEnableEvent","text":"

          ClassList > endstone > PluginEnableEvent

          Called when a plugin is enabled.

          • #include <endstone/event/server/plugin_enable_event.h>

          Inherits the following classes: endstone::ServerEvent

          "},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"PluginEnableEvent\""},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#public-functions","title":"Public Functions","text":"Type Name PluginEnableEvent (Plugin & plugin) virtual std::string getEventName () override const Plugin & getPlugin () const virtual bool isCancellable () override const"},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#public-functions-inherited-from-endstoneserverevent","title":"Public Functions inherited from endstone::ServerEvent","text":"

          See endstone::ServerEvent

          Type Name Event (bool async=false) Event (const Event &) = delete"},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::PluginEnableEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#function-pluginenableevent","title":"function PluginEnableEvent","text":"
          inline explicit endstone::PluginEnableEvent::PluginEnableEvent (\n    Plugin & plugin\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::PluginEnableEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#function-getplugin","title":"function getPlugin","text":"
          inline Plugin & endstone::PluginEnableEvent::getPlugin () const\n

          Gets the plugin involved in this event

          Returns:

          Plugin for this event

          "},{"location":"reference/cpp/classendstone_1_1PluginEnableEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::PluginEnableEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          The documentation for this class was generated from the following file include/endstone/event/server/plugin_enable_event.h

          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/","title":"Class endstone::PluginLoader","text":"

          ClassList > endstone > PluginLoader

          Represents a plugin loader, which handles direct access to specific types of plugins.

          • #include <endstone/plugin/plugin_loader.h>
          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/#public-functions","title":"Public Functions","text":"Type Name PluginLoader (Server & server) PluginLoader (const PluginLoader &) = delete virtual void disablePlugin (Plugin & plugin) const virtual void enablePlugin (Plugin & plugin) const Server & getServer () constRetrieves the Server object associated with thePluginLoader . virtual std::vector< Plugin * > loadPlugins (const std::string & directory) = 0 PluginLoader & operator= (const PluginLoader &) = delete virtual ~PluginLoader () = default"},{"location":"reference/cpp/classendstone_1_1PluginLoader/#protected-attributes","title":"Protected Attributes","text":"Type Name Server & server_"},{"location":"reference/cpp/classendstone_1_1PluginLoader/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PluginLoader/#function-pluginloader-12","title":"function PluginLoader [\u00bd]","text":"
          inline explicit endstone::PluginLoader::PluginLoader (\n    Server & server\n) \n
          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/#function-pluginloader-22","title":"function PluginLoader [2/2]","text":"
          endstone::PluginLoader::PluginLoader (\n    const PluginLoader &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/#function-disableplugin","title":"function disablePlugin","text":"
          inline virtual void endstone::PluginLoader::disablePlugin (\n    Plugin & plugin\n) const\n

          Disables the specified plugin Attempting to disable a plugin that is not enabled will have no effect

          Parameters:

          • plugin Plugin to disable
          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/#function-enableplugin","title":"function enablePlugin","text":"
          inline virtual void endstone::PluginLoader::enablePlugin (\n    Plugin & plugin\n) const\n

          Enables the specified plugin Attempting to enable a plugin that is already enabled will have no effect

          Parameters:

          • plugin Plugin to enable
          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/#function-getserver","title":"function getServer","text":"

          Retrieves the Server object associated with thePluginLoader .

          inline Server & endstone::PluginLoader::getServer () const\n

          This function returns a reference to the Server object that the PluginLoader is associated with.

          Returns:

          The Server reference.

          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/#function-loadplugins","title":"function loadPlugins","text":"
          virtual std::vector< Plugin * > endstone::PluginLoader::loadPlugins (\n    const std::string & directory\n) = 0\n

          Loads the plugin contained within the specified directory

          Parameters:

          • directory Directory to check for plugins

          Returns:

          A list of all plugins loaded

          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/#function-operator","title":"function operator=","text":"
          PluginLoader & endstone::PluginLoader::operator= (\n    const PluginLoader &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/#function-pluginloader","title":"function ~PluginLoader","text":"
          virtual endstone::PluginLoader::~PluginLoader () = default\n
          "},{"location":"reference/cpp/classendstone_1_1PluginLoader/#protected-attributes-documentation","title":"Protected Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PluginLoader/#variable-server_","title":"variable server_","text":"
          Server& endstone::PluginLoader::server_;\n

          The documentation for this class was generated from the following file include/endstone/plugin/plugin_loader.h

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/","title":"Class endstone::PluginManager","text":"

          ClassList > endstone > PluginManager

          Represents a plugin manager that handles all plugins from the Server .

          • #include <endstone/plugin/plugin_manager.h>
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#public-functions","title":"Public Functions","text":"Type Name PluginManager () = default PluginManager (PluginManager const &) = delete virtual Permission * addPermission (std::unique_ptr< Permission > perm) = 0 virtual void callEvent (Event & event) = 0 virtual void clearPlugins () = 0 virtual void disablePlugin (Plugin & plugin) = 0 virtual void disablePlugins () = 0 virtual void enablePlugin (Plugin & plugin) const = 0 virtual void enablePlugins () const = 0 virtual std::unordered_set< Permissible * > getDefaultPermSubscriptions (bool op) const = 0 virtual std::unordered_set< Permission * > getDefaultPermissions (bool op) const = 0 virtual Permission * getPermission (std::string name) const = 0 virtual std::unordered_set< Permissible * > getPermissionSubscriptions (std::string permission) const = 0 virtual std::unordered_set< Permission * > getPermissions () const = 0 virtual Plugin * getPlugin (const std::string & name) const = 0 virtual std::vector< Plugin * > getPlugins () const = 0 virtual bool isPluginEnabled (const std::string & name) const = 0 virtual bool isPluginEnabled (Plugin * plugin) const = 0 virtual std::vector< Plugin * > loadPlugins (const std::string & directory) = 0 PluginManager & operator= (PluginManager const &) = delete virtual void recalculatePermissionDefaults (Permission & perm) = 0 virtual Result< void > registerEvent (std::string event, std::function< void(Event &)> executor, EventPriority priority, Plugin & plugin, bool ignore_cancelled) = 0 virtual void registerLoader (std::unique_ptr< PluginLoader > loader) = 0 virtual void removePermission (Permission & perm) = 0 virtual void removePermission (std::string name) = 0 virtual void subscribeToDefaultPerms (bool op, Permissible & permissible) = 0 virtual void subscribeToPermission (std::string permission, Permissible & permissible) = 0 virtual void unsubscribeFromDefaultPerms (bool op, Permissible & permissible) = 0 virtual void unsubscribeFromPermission (std::string permission, Permissible & permissible) = 0 virtual ~PluginManager () = default"},{"location":"reference/cpp/classendstone_1_1PluginManager/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-pluginmanager-12","title":"function PluginManager [\u00bd]","text":"
          endstone::PluginManager::PluginManager () = default\n
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-pluginmanager-22","title":"function PluginManager [2/2]","text":"
          endstone::PluginManager::PluginManager (\n    PluginManager const &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-addpermission","title":"function addPermission","text":"
          virtual Permission * endstone::PluginManager::addPermission (\n    std::unique_ptr< Permission > perm\n) = 0\n

          Adds a Permission to this plugin manager.

          Parameters:

          • perm Permission to add

          Returns:

          Permission, or nullptr if a permission is already defined with the given name of the new permission

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-callevent","title":"function callEvent","text":"
          virtual void endstone::PluginManager::callEvent (\n    Event & event\n) = 0\n

          Calls an event which will be passed to plugins.

          Parameters:

          • event Event to be called
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-clearplugins","title":"function clearPlugins","text":"
          virtual void endstone::PluginManager::clearPlugins () = 0\n

          Disables and removes all plugins

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-disableplugin","title":"function disablePlugin","text":"
          virtual void endstone::PluginManager::disablePlugin (\n    Plugin & plugin\n) = 0\n

          Disables the specified plugin Attempting to disable a plugin that is not enabled will have no effect

          Parameters:

          • plugin Plugin to disable
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-disableplugins","title":"function disablePlugins","text":"
          virtual void endstone::PluginManager::disablePlugins () = 0\n

          Disables all the loaded plugins

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-enableplugin","title":"function enablePlugin","text":"
          virtual void endstone::PluginManager::enablePlugin (\n    Plugin & plugin\n) const = 0\n

          Enables the specified plugin Attempting to enable a plugin that is already enabled will have no effect

          Parameters:

          • plugin Plugin to enable
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-enableplugins","title":"function enablePlugins","text":"
          virtual void endstone::PluginManager::enablePlugins () const = 0\n

          Enable all the loaded plugins

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-getdefaultpermsubscriptions","title":"function getDefaultPermSubscriptions","text":"
          virtual std::unordered_set< Permissible * > endstone::PluginManager::getDefaultPermSubscriptions (\n    bool op\n) const = 0\n

          Gets a set containing all subscribed Permissibles to the given default list, by op status

          Parameters:

          • op Default list to query for

          Returns:

          Set containing all subscribed permissions

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-getdefaultpermissions","title":"function getDefaultPermissions","text":"
          virtual std::unordered_set< Permission * > endstone::PluginManager::getDefaultPermissions (\n    bool op\n) const = 0\n

          Gets the default permissions for the given op status

          Parameters:

          • op Which set of default permissions to get

          Returns:

          The default permissions

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-getpermission","title":"function getPermission","text":"
          virtual Permission * endstone::PluginManager::getPermission (\n    std::string name\n) const = 0\n

          Gets a Permission from its fully qualified name

          Parameters:

          • name Name of the permission

          Returns:

          Permission, or null if none

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-getpermissionsubscriptions","title":"function getPermissionSubscriptions","text":"
          virtual std::unordered_set< Permissible * > endstone::PluginManager::getPermissionSubscriptions (\n    std::string permission\n) const = 0\n

          Gets a set containing all subscribed Permissibles to the given permission, by name

          Parameters:

          • permission Permission to query for

          Returns:

          Set containing all subscribed permissions

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-getpermissions","title":"function getPermissions","text":"
          virtual std::unordered_set< Permission * > endstone::PluginManager::getPermissions () const = 0\n

          Gets a set of all registered permissions.

          This set is a copy and will not be modified live.

          Returns:

          Set containing all current registered permissions

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-getplugin","title":"function getPlugin","text":"
          virtual Plugin * endstone::PluginManager::getPlugin (\n    const std::string & name\n) const = 0\n

          Checks if the given plugin is loaded and returns it when applicable. Please note that the name of the plugin is case-sensitive

          Parameters:

          • name Name of the plugin to check

          Returns:

          Plugin if it exists, otherwise nullptr

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-getplugins","title":"function getPlugins","text":"
          virtual std::vector< Plugin * > endstone::PluginManager::getPlugins () const = 0\n

          Gets a list of all currently loaded plugins

          Returns:

          List of Plugins

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-ispluginenabled-12","title":"function isPluginEnabled [\u00bd]","text":"
          virtual bool endstone::PluginManager::isPluginEnabled (\n    const std::string & name\n) const = 0\n

          Checks if the given plugin is enabled or not Please note that the name of the plugin is case-sensitive.

          Parameters:

          • name Name of the plugin to check

          Returns:

          true if the plugin is enabled, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-ispluginenabled-22","title":"function isPluginEnabled [2/2]","text":"
          virtual bool endstone::PluginManager::isPluginEnabled (\n    Plugin * plugin\n) const = 0\n

          Checks if the given plugin is enabled or not

          Parameters:

          • plugin Plugin to check

          Returns:

          true if the plugin is enabled, otherwise false

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-loadplugins","title":"function loadPlugins","text":"
          virtual std::vector< Plugin * > endstone::PluginManager::loadPlugins (\n    const std::string & directory\n) = 0\n

          Loads the plugin contained within the specified directory

          Parameters:

          • directory Directory to check for plugins

          Returns:

          A list of all plugins loaded

          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-operator","title":"function operator=","text":"
          PluginManager & endstone::PluginManager::operator= (\n    PluginManager const &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-recalculatepermissiondefaults","title":"function recalculatePermissionDefaults","text":"
          virtual void endstone::PluginManager::recalculatePermissionDefaults (\n    Permission & perm\n) = 0\n

          Recalculates the defaults for the given Permission.

          This will have no effect if the specified permission is not registered here.

          Parameters:

          • perm Permission to recalculate
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-registerevent","title":"function registerEvent","text":"
          virtual Result< void > endstone::PluginManager::registerEvent (\n    std::string event,\n    std::function< void( Event &)> executor,\n    EventPriority priority,\n    Plugin & plugin,\n    bool ignore_cancelled\n) = 0\n

          Registers the given event

          Parameters:

          • event Event name to register
          • executor EventExecutor to register
          • priority Priority of this event
          • plugin Plugin to register
          • ignore_cancelled Do not call executor if event was already cancelled
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-registerloader","title":"function registerLoader","text":"
          virtual void endstone::PluginManager::registerLoader (\n    std::unique_ptr< PluginLoader > loader\n) = 0\n

          Registers the specified plugin loader

          Parameters:

          • loader PluginLoader to register
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-removepermission-12","title":"function removePermission [\u00bd]","text":"
          virtual void endstone::PluginManager::removePermission (\n    Permission & perm\n) = 0\n

          Removes a Permission registration from this plugin manager.

          If the specified permission does not exist in this plugin manager, nothing will happen. Removing a permission registration will not remove the permission from any Permissibles that have it.

          Parameters:

          • perm Permission to remove
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-removepermission-22","title":"function removePermission [2/2]","text":"
          virtual void endstone::PluginManager::removePermission (\n    std::string name\n) = 0\n

          Removes a Permission registration from this plugin manager.

          If the specified permission does not exist in this plugin manager, nothing will happen. Removing a permission registration will not remove the permission from any Permissibles that have it.

          Parameters:

          • name Permission to remove
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-subscribetodefaultperms","title":"function subscribeToDefaultPerms","text":"
          virtual void endstone::PluginManager::subscribeToDefaultPerms (\n    bool op,\n    Permissible & permissible\n) = 0\n

          Subscribes to the given Default permissions by operator status

          If the specified defaults change in any form, the Permissible will be asked to recalculate.

          Parameters:

          • op Default list to subscribe to
          • permissible Permissible subscribing
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-subscribetopermission","title":"function subscribeToPermission","text":"
          virtual void endstone::PluginManager::subscribeToPermission (\n    std::string permission,\n    Permissible & permissible\n) = 0\n

          Subscribes the given Permissible for information about the requested Permission, by name. If the specified Permission changes in any form, the Permissible will be asked to recalculate.

          Parameters:

          • permission Permission to subscribe to
          • permissible Permissible subscribing
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-unsubscribefromdefaultperms","title":"function unsubscribeFromDefaultPerms","text":"
          virtual void endstone::PluginManager::unsubscribeFromDefaultPerms (\n    bool op,\n    Permissible & permissible\n) = 0\n

          Unsubscribes from the given Default permissions by operator status

          Parameters:

          • op Default list to unsubscribe from
          • permissible Permissible subscribing
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-unsubscribefrompermission","title":"function unsubscribeFromPermission","text":"
          virtual void endstone::PluginManager::unsubscribeFromPermission (\n    std::string permission,\n    Permissible & permissible\n) = 0\n

          Unsubscribes the given Permissible for information about the requested Permission, by name.

          Parameters:

          • permission Permission to unsubscribe from
          • permissible Permissible subscribing
          "},{"location":"reference/cpp/classendstone_1_1PluginManager/#function-pluginmanager","title":"function ~PluginManager","text":"
          virtual endstone::PluginManager::~PluginManager () = default\n

          The documentation for this class was generated from the following file include/endstone/plugin/plugin_manager.h

          "},{"location":"reference/cpp/classendstone_1_1Position/","title":"Class endstone::Position","text":"

          ClassList > endstone > Position

          Represents a 3-dimensional position in a dimension within a level.

          • #include <endstone/level/position.h>

          Inherits the following classes: endstone::Vector

          Inherited by the following classes: endstone::Location

          "},{"location":"reference/cpp/classendstone_1_1Position/#public-functions","title":"Public Functions","text":"Type Name Position (Dimension * dimension, float x, float y, float z) int getBlockX () constGets the floored value of the X component, indicating the block that this location is contained with. int getBlockY () constGets the floored value of the Y component, indicating the block that this location is contained with. int getBlockZ () constGets the floored value of the Z component, indicating the block that this location is contained with. Dimension * getDimension () const void setDimension (Dimension & dimension)"},{"location":"reference/cpp/classendstone_1_1Position/#public-functions-inherited-from-endstonevector","title":"Public Functions inherited from endstone::Vector","text":"

          See endstone::Vector

          Type Name constexpr Vector () constexpr Vector (T x, T y, T z) constexpr T distance (const Vector< T > & other) const constexpr T distanceSquared (const Vector< T > & other) const constexpr T getX () constGets the X component. constexpr T getY () constGets the Y component. constexpr T getZ () constGets the Z component. constexpr T length () constGets the magnitude of the vector, defined as sqrt(x2+y2+z^2). constexpr T lengthSquared () constGets the magnitude of the vector squared. constexpr Vector< T > operator* (const Vector< T > & other) const Vector< T > operator* (T scalar) const Vector< T > & operator*= (const Vector< T > & other) constexpr Vector< T > operator+ (const Vector< T > & other) const Vector< T > operator+ (T scalar) const Vector< T > & operator+= (const Vector< T > & other) constexpr Vector< T > operator- (const Vector< T > & other) const Vector< T > operator- (T scalar) const Vector< T > & operator-= (const Vector< T > & other) constexpr Vector< T > operator/ (const Vector< T > & other) const Vector< T > operator/ (T scalar) const Vector< T > & operator/= (const Vector< T > & other) constexpr bool operator== (const Vector< T > & other) const constexpr void setX (T x) Set the X component. constexpr void setY (T y) Set the Y component. constexpr void setZ (T z) Set the Z component."},{"location":"reference/cpp/classendstone_1_1Position/#protected-attributes-inherited-from-endstonevector","title":"Protected Attributes inherited from endstone::Vector","text":"

          See endstone::Vector

          Type Name T x_ T y_ T z_"},{"location":"reference/cpp/classendstone_1_1Position/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Position/#function-position","title":"function Position","text":"
          inline endstone::Position::Position (\n    Dimension * dimension,\n    float x,\n    float y,\n    float z\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Position/#function-getblockx","title":"function getBlockX","text":"

          Gets the floored value of the X component, indicating the block that this location is contained with.

          inline int endstone::Position::getBlockX () const\n

          Returns:

          block X

          "},{"location":"reference/cpp/classendstone_1_1Position/#function-getblocky","title":"function getBlockY","text":"

          Gets the floored value of the Y component, indicating the block that this location is contained with.

          inline int endstone::Position::getBlockY () const\n

          Returns:

          block Y

          "},{"location":"reference/cpp/classendstone_1_1Position/#function-getblockz","title":"function getBlockZ","text":"

          Gets the floored value of the Z component, indicating the block that this location is contained with.

          inline int endstone::Position::getBlockZ () const\n

          Returns:

          block Z

          "},{"location":"reference/cpp/classendstone_1_1Position/#function-getdimension","title":"function getDimension","text":"
          inline Dimension * endstone::Position::getDimension () const\n

          Gets the dimension that this position resides in

          Returns:

          Dimension that contains this position, or nullptr if the dimension is not set.

          "},{"location":"reference/cpp/classendstone_1_1Position/#function-setdimension","title":"function setDimension","text":"
          inline void endstone::Position::setDimension (\n    Dimension & dimension\n) \n

          Sets the dimension that this position resides in

          Parameters:

          • dimension New dimension that this position resides in

          The documentation for this class was generated from the following file include/endstone/level/position.h

          "},{"location":"reference/cpp/classendstone_1_1ProxiedCommandSender/","title":"Class endstone::ProxiedCommandSender","text":"

          ClassList > endstone > ProxiedCommandSender

          Interface for proxied command sender.

          • #include <endstone/command/proxied_command_sender.h>

          Inherits the following classes: endstone::CommandSender

          "},{"location":"reference/cpp/classendstone_1_1ProxiedCommandSender/#public-functions","title":"Public Functions","text":"Type Name virtual CommandSender & getCallee () const = 0Returns the CommandSender which is being used to call the command. virtual CommandSender & getCaller () const = 0Returns the CommandSender which triggered this proxied command."},{"location":"reference/cpp/classendstone_1_1ProxiedCommandSender/#public-functions-inherited-from-endstonecommandsender","title":"Public Functions inherited from endstone::CommandSender","text":"

          See endstone::CommandSender

          Type Name virtual Actor * asActor () constGets a CommandSender asActor . virtual CommandSender * asCommandSender () override constCasts a Permissible asCommandSender . virtual ConsoleCommandSender * asConsole () constGets a CommandSender as Console. virtual Player * asPlayer () constGets a CommandSender asPlayer . virtual std::string getName () const = 0Gets the name of this command sender. virtual Server & getServer () const = 0Returns the server instance that this command is running on. virtual void sendErrorMessage (const Message & message) const = 0Sends this sender a error message. void sendErrorMessage (const fmt::format_string< Args... > format, Args &&... args) const virtual void sendMessage (const Message & message) const = 0Sends this sender a message. void sendMessage (const fmt::format_string< Args... > format, Args &&... args) const"},{"location":"reference/cpp/classendstone_1_1ProxiedCommandSender/#public-functions-inherited-from-endstonepermissible","title":"Public Functions inherited from endstone::Permissible","text":"

          See endstone::Permissible

          Type Name virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin, const std::string & name, bool value) = 0 virtual Result< PermissionAttachment * > addAttachment (Plugin & plugin) = 0 virtual CommandSender * asCommandSender () const = 0Casts a Permissible asCommandSender . virtual std::unordered_set< PermissionAttachmentInfo * > getEffectivePermissions () const = 0 virtual bool hasPermission (std::string name) const = 0 virtual bool hasPermission (const Permission & perm) const = 0 virtual bool isOp () const = 0Checks if this object is a server operator. virtual bool isPermissionSet (std::string name) const = 0 virtual bool isPermissionSet (const Permission & perm) const = 0 virtual void recalculatePermissions () = 0 virtual Result< void > removeAttachment (PermissionAttachment & attachment) = 0 virtual void setOp (bool value) = 0Sets the operator status of this object. virtual ~Permissible () = default"},{"location":"reference/cpp/classendstone_1_1ProxiedCommandSender/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ProxiedCommandSender/#function-getcallee","title":"function getCallee","text":"

          Returns the CommandSender which is being used to call the command.

          virtual CommandSender & endstone::ProxiedCommandSender::getCallee () const = 0\n

          Returns:

          a shared pointer to the caller which the command is being run as

          "},{"location":"reference/cpp/classendstone_1_1ProxiedCommandSender/#function-getcaller","title":"function getCaller","text":"

          Returns the CommandSender which triggered this proxied command.

          virtual CommandSender & endstone::ProxiedCommandSender::getCaller () const = 0\n

          Returns:

          a shared pointer to the caller which triggered the command

          The documentation for this class was generated from the following file include/endstone/command/proxied_command_sender.h

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/","title":"Class endstone::Scheduler","text":"

          ClassList > endstone > Scheduler

          Represents a scheduler that executes various tasks.

          • #include <endstone/scheduler/scheduler.h>
          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#public-functions","title":"Public Functions","text":"Type Name virtual void cancelTask (TaskId id) = 0 virtual void cancelTasks (Plugin & plugin) = 0 virtual std::vector< Task * > getPendingTasks () = 0 virtual bool isQueued (TaskId id) = 0 virtual bool isRunning (TaskId id) = 0 virtual std::shared_ptr< Task > runTask (Plugin & plugin, std::function< void()> task) = 0 virtual std::shared_ptr< Task > runTaskAsync (Plugin & plugin, std::function< void()> task) = 0Returns a task that will be executed asynchronously on the next server tick. virtual std::shared_ptr< Task > runTaskLater (Plugin & plugin, std::function< void()> task, std::uint64_t delay) = 0 virtual std::shared_ptr< Task > runTaskLaterAsync (Plugin & plugin, std::function< void()> task, std::uint64_t delay) = 0Returns a task that will be executed asynchronously after the specified number of server ticks. virtual std::shared_ptr< Task > runTaskTimer (Plugin & plugin, std::function< void()> task, std::uint64_t delay, std::uint64_t period) = 0 virtual std::shared_ptr< Task > runTaskTimerAsync (Plugin & plugin, std::function< void()> task, std::uint64_t delay, std::uint64_t period) = 0Returns a task that will be executed repeatedly (and asynchronously) until cancelled, starting after the specified number of server ticks. virtual ~Scheduler () = default"},{"location":"reference/cpp/classendstone_1_1Scheduler/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-canceltask","title":"function cancelTask","text":"
          virtual void endstone::Scheduler::cancelTask (\n    TaskId id\n) = 0\n

          Removes task from scheduler.

          Parameters:

          • taskId Id number of task to be removed
          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-canceltasks","title":"function cancelTasks","text":"
          virtual void endstone::Scheduler::cancelTasks (\n    Plugin & plugin\n) = 0\n

          Removes all tasks associated with a particular plugin from the scheduler.

          Parameters:

          • plugin Owner of tasks to be removed
          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-getpendingtasks","title":"function getPendingTasks","text":"
          virtual std::vector< Task * > endstone::Scheduler::getPendingTasks () = 0\n

          Returns a vector of all pending tasks.

          The ordering of the tasks is NOT related to their order of execution.

          Returns:

          Pending tasks

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-isqueued","title":"function isQueued","text":"
          virtual bool endstone::Scheduler::isQueued (\n    TaskId id\n) = 0\n

          Check if the task queued to be run later.

          Parameters:

          • taskId The task to check.

          Returns:

          If the task is queued to be run.

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-isrunning","title":"function isRunning","text":"
          virtual bool endstone::Scheduler::isRunning (\n    TaskId id\n) = 0\n

          Check if the task currently running.

          Parameters:

          • taskId The task to check.

          Returns:

          If the task is currently running.

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-runtask","title":"function runTask","text":"
          virtual std::shared_ptr< Task > endstone::Scheduler::runTask (\n    Plugin & plugin,\n    std::function< void()> task\n) = 0\n

          Returns a task that will be executed synchronously on the next server tick.

          Parameters:

          • plugin the reference to the plugin scheduling task
          • task the task to be run

          Returns:

          a Task that contains the id number (nullptr if task is empty)

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-runtaskasync","title":"function runTaskAsync","text":"

          Returns a task that will be executed asynchronously on the next server tick.

          virtual std::shared_ptr< Task > endstone::Scheduler::runTaskAsync (\n    Plugin & plugin,\n    std::function< void()> task\n) = 0\n

          Remark:

          Asynchronous tasks should never access any Endstone API

          Parameters:

          • plugin the reference to the plugin scheduling task
          • task the task to be run

          Returns:

          a Task that contains the id number (nullptr if task is empty)

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-runtasklater","title":"function runTaskLater","text":"
          virtual std::shared_ptr< Task > endstone::Scheduler::runTaskLater (\n    Plugin & plugin,\n    std::function< void()> task,\n    std::uint64_t delay\n) = 0\n

          Returns a task that will be executed synchronously after the specified number of server ticks.

          Parameters:

          • plugin the reference to the plugin scheduling task
          • task the task to be run
          • delay the ticks to wait before running the task

          Returns:

          a Task that contains the id number (nullptr if task is empty)

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-runtasklaterasync","title":"function runTaskLaterAsync","text":"

          Returns a task that will be executed asynchronously after the specified number of server ticks.

          virtual std::shared_ptr< Task > endstone::Scheduler::runTaskLaterAsync (\n    Plugin & plugin,\n    std::function< void()> task,\n    std::uint64_t delay\n) = 0\n

          Remark:

          Asynchronous tasks should never access any Endstone API

          Parameters:

          • plugin the reference to the plugin scheduling task
          • task the task to be run
          • delay the ticks to wait before running the task

          Returns:

          a Task that contains the id number (nullptr if task is empty)

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-runtasktimer","title":"function runTaskTimer","text":"
          virtual std::shared_ptr< Task > endstone::Scheduler::runTaskTimer (\n    Plugin & plugin,\n    std::function< void()> task,\n    std::uint64_t delay,\n    std::uint64_t period\n) = 0\n

          Returns a task that will be executed repeatedly (and synchronously) until cancelled, starting after the specified number of server ticks.

          Parameters:

          • plugin the reference to the plugin scheduling task
          • task the task to be run
          • delay the ticks to wait before running the task
          • period the ticks to wait between runs

          Returns:

          a Task that contains the id number (nullptr if task is empty)

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-runtasktimerasync","title":"function runTaskTimerAsync","text":"

          Returns a task that will be executed repeatedly (and asynchronously) until cancelled, starting after the specified number of server ticks.

          virtual std::shared_ptr< Task > endstone::Scheduler::runTaskTimerAsync (\n    Plugin & plugin,\n    std::function< void()> task,\n    std::uint64_t delay,\n    std::uint64_t period\n) = 0\n

          Remark:

          Asynchronous tasks should never access any Endstone API

          Parameters:

          • plugin the reference to the plugin scheduling task
          • task the task to be run
          • delay the ticks to wait before running the task
          • period the ticks to wait between runs

          Returns:

          a Task that contains the id number (nullptr if task is empty)

          "},{"location":"reference/cpp/classendstone_1_1Scheduler/#function-scheduler","title":"function ~Scheduler","text":"
          virtual endstone::Scheduler::~Scheduler () = default\n

          The documentation for this class was generated from the following file include/endstone/scheduler/scheduler.h

          "},{"location":"reference/cpp/classendstone_1_1Score/","title":"Class endstone::Score","text":"

          ClassList > endstone > Score

          Represents a score for an objective on a scoreboard.

          • #include <endstone/scoreboard/score.h>
          "},{"location":"reference/cpp/classendstone_1_1Score/#public-functions","title":"Public Functions","text":"Type Name virtual ScoreEntry getEntry () const = 0Gets the entry being tracked by this Score . virtual Objective & getObjective () const = 0Gets the Objective being tracked by thisScore . virtual Scoreboard & getScoreboard () const = 0Gets the scoreboard for the associated objective. virtual Result< int > getValue () const = 0Gets the current score. virtual Result< bool > isScoreSet () const = 0Shows if this score has been set at any point in time. virtual Result< void > setValue (int score) = 0Sets the current score. virtual ~Score () = default"},{"location":"reference/cpp/classendstone_1_1Score/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Score/#function-getentry","title":"function getEntry","text":"

          Gets the entry being tracked by this Score .

          virtual ScoreEntry endstone::Score::getEntry () const = 0\n

          Returns:

          this Score's tracked entry

          "},{"location":"reference/cpp/classendstone_1_1Score/#function-getobjective","title":"function getObjective","text":"

          Gets the Objective being tracked by thisScore .

          virtual Objective & endstone::Score::getObjective () const = 0\n

          Returns:

          the owning objective's scoreboard

          "},{"location":"reference/cpp/classendstone_1_1Score/#function-getscoreboard","title":"function getScoreboard","text":"

          Gets the scoreboard for the associated objective.

          virtual Scoreboard & endstone::Score::getScoreboard () const = 0\n

          Returns:

          the owning objective's scoreboard

          "},{"location":"reference/cpp/classendstone_1_1Score/#function-getvalue","title":"function getValue","text":"

          Gets the current score.

          virtual Result< int > endstone::Score::getValue () const = 0\n

          Returns:

          the current score

          "},{"location":"reference/cpp/classendstone_1_1Score/#function-isscoreset","title":"function isScoreSet","text":"

          Shows if this score has been set at any point in time.

          virtual Result< bool > endstone::Score::isScoreSet () const = 0\n

          Returns:

          if this score has been set before

          "},{"location":"reference/cpp/classendstone_1_1Score/#function-setvalue","title":"function setValue","text":"

          Sets the current score.

          virtual Result< void > endstone::Score::setValue (\n    int score\n) = 0\n

          Parameters:

          • score New score
          "},{"location":"reference/cpp/classendstone_1_1Score/#function-score","title":"function ~Score","text":"
          virtual endstone::Score::~Score () = default\n

          The documentation for this class was generated from the following file include/endstone/scoreboard/score.h

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/","title":"Class endstone::Scoreboard","text":"

          ClassList > endstone > Scoreboard

          Represents a scoreboard.

          • #include <endstone/scoreboard/scoreboard.h>

          Inherits the following classes: std::enable_shared_from_this< Scoreboard >

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#public-functions","title":"Public Functions","text":"Type Name virtual Result< std::unique_ptr< Objective > > addObjective (std::string name, Criteria::Type criteria) = 0Registers an Objective on thisScoreboard . virtual Result< std::unique_ptr< Objective > > addObjective (std::string name, Criteria::Type criteria, std::string display_name) = 0Registers an Objective on thisScoreboard . virtual Result< std::unique_ptr< Objective > > addObjective (std::string name, Criteria::Type criteria, std::string display_name, RenderType render_type) = 0Registers an Objective on thisScoreboard . virtual void clearSlot (DisplaySlot slot) = 0Clears any objective in the specified slot. virtual std::vector< ScoreEntry > getEntries () const = 0Gets all entries tracked by this Scoreboard . virtual std::unique_ptr< Objective > getObjective (std::string name) const = 0Gets an Objective on thisScoreboard by name. virtual std::unique_ptr< Objective > getObjective (DisplaySlot slot) const = 0Gets the Objective currently displayed in a DisplaySlot on thisScoreboard . virtual std::vector< std::unique_ptr< Objective > > getObjectives () const = 0Gets all Objectives on this Scoreboard . virtual std::vector< std::unique_ptr< Objective > > getObjectivesByCriteria (Criteria::Type criteria) const = 0Gets all Objectives of a Criteria on theScoreboard . virtual std::vector< std::unique_ptr< Score > > getScores (ScoreEntry entry) const = 0Gets all scores for an entry on this Scoreboard . virtual void resetScores (ScoreEntry entry) = 0Removes all scores for an entry on this Scoreboard . virtual ~Scoreboard () = default"},{"location":"reference/cpp/classendstone_1_1Scoreboard/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-addobjective-13","title":"function addObjective [\u2153]","text":"

          Registers an Objective on thisScoreboard .

          virtual Result< std::unique_ptr< Objective > > endstone::Scoreboard::addObjective (\n    std::string name,\n    Criteria::Type criteria\n) = 0\n

          Parameters:

          • name Name of the Objective
          • criteria Criteria for the Objective

          Returns:

          A reference to the newly registered Objective.

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-addobjective-23","title":"function addObjective [\u2154]","text":"

          Registers an Objective on thisScoreboard .

          virtual Result< std::unique_ptr< Objective > > endstone::Scoreboard::addObjective (\n    std::string name,\n    Criteria::Type criteria,\n    std::string display_name\n) = 0\n

          Parameters:

          • name Name of the Objective
          • criteria Criteria type for the Objective
          • display_name Name displayed to players for the Objective.

          Returns:

          A reference to the newly registered Objective.

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-addobjective-33","title":"function addObjective [3/3]","text":"

          Registers an Objective on thisScoreboard .

          virtual Result< std::unique_ptr< Objective > > endstone::Scoreboard::addObjective (\n    std::string name,\n    Criteria::Type criteria,\n    std::string display_name,\n    RenderType render_type\n) = 0\n

          Parameters:

          • name Name of the Objective
          • criteria Criteria type for the Objective
          • display_name Name displayed to players for the Objective.
          • render_type Manner of rendering the Objective

          Returns:

          A reference to the newly registered Objective.

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-clearslot","title":"function clearSlot","text":"

          Clears any objective in the specified slot.

          virtual void endstone::Scoreboard::clearSlot (\n    DisplaySlot slot\n) = 0\n

          Parameters:

          • slot the slot to remove objectives
          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-getentries","title":"function getEntries","text":"

          Gets all entries tracked by this Scoreboard .

          virtual std::vector< ScoreEntry > endstone::Scoreboard::getEntries () const = 0\n

          Returns:

          A list of all tracked entries

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-getobjective-12","title":"function getObjective [\u00bd]","text":"

          Gets an Objective on thisScoreboard by name.

          virtual std::unique_ptr< Objective > endstone::Scoreboard::getObjective (\n    std::string name\n) const = 0\n

          Parameters:

          • name Name of the Objective

          Returns:

          the Objective or nullptr if it does not exist

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-getobjective-22","title":"function getObjective [2/2]","text":"

          Gets the Objective currently displayed in a DisplaySlot on thisScoreboard .

          virtual std::unique_ptr< Objective > endstone::Scoreboard::getObjective (\n    DisplaySlot slot\n) const = 0\n

          Parameters:

          • slot The DisplaySlot

          Returns:

          the Objective currently displayed or nullptr if nothing is displayed in that DisplaySlot

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-getobjectives","title":"function getObjectives","text":"

          Gets all Objectives on this Scoreboard .

          virtual std::vector< std::unique_ptr< Objective > > endstone::Scoreboard::getObjectives () const = 0\n

          Returns:

          A list of all Objectives on this Scoreboard

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-getobjectivesbycriteria","title":"function getObjectivesByCriteria","text":"

          Gets all Objectives of a Criteria on theScoreboard .

          virtual std::vector< std::unique_ptr< Objective > > endstone::Scoreboard::getObjectivesByCriteria (\n    Criteria::Type criteria\n) const = 0\n

          Parameters:

          • criteria Criteria type to search by

          Returns:

          A list of Objectives using the specified Criteria

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-getscores","title":"function getScores","text":"

          Gets all scores for an entry on this Scoreboard .

          virtual std::vector< std::unique_ptr< Score > > endstone::Scoreboard::getScores (\n    ScoreEntry entry\n) const = 0\n

          Parameters:

          • entry the entry whose scores are being retrieved

          Returns:

          a list of all scores tracked for the entry

          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-resetscores","title":"function resetScores","text":"

          Removes all scores for an entry on this Scoreboard .

          virtual void endstone::Scoreboard::resetScores (\n    ScoreEntry entry\n) = 0\n

          Parameters:

          • entry the entry to drop all current scores for
          "},{"location":"reference/cpp/classendstone_1_1Scoreboard/#function-scoreboard","title":"function ~Scoreboard","text":"
          virtual endstone::Scoreboard::~Scoreboard () = default\n

          The documentation for this class was generated from the following file include/endstone/scoreboard/scoreboard.h

          "},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/","title":"Class endstone::ScriptMessageEvent","text":"

          ClassList > endstone > ScriptMessageEvent

          Called when a message is sent by /scriptevent command.

          • #include <endstone/event/server/script_message_event.h>

          Inherits the following classes: endstone::ServerEvent

          "},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ScriptMessageEvent\""},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#public-functions","title":"Public Functions","text":"Type Name ScriptMessageEvent (std::string message_id, std::string message, const CommandSender & sender) virtual std::string getEventName () override const const std::string & getMessage () const const std::string & getMessageId () const const CommandSender & getSender () const virtual bool isCancellable () override const"},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#public-functions-inherited-from-endstoneserverevent","title":"Public Functions inherited from endstone::ServerEvent","text":"

          See endstone::ServerEvent

          Type Name Event (bool async=false) Event (const Event &) = delete"},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ScriptMessageEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#function-scriptmessageevent","title":"function ScriptMessageEvent","text":"
          inline endstone::ScriptMessageEvent::ScriptMessageEvent (\n    std::string message_id,\n    std::string message,\n    const CommandSender & sender\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ScriptMessageEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#function-getmessage","title":"function getMessage","text":"
          inline const std::string & endstone::ScriptMessageEvent::getMessage () const\n

          Get the message to send.

          Returns:

          Message to send

          "},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#function-getmessageid","title":"function getMessageId","text":"
          inline const std::string & endstone::ScriptMessageEvent::getMessageId () const\n

          Get the message id to send.

          Returns:

          Message id to send

          "},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#function-getsender","title":"function getSender","text":"
          inline const CommandSender & endstone::ScriptMessageEvent::getSender () const\n

          Gets the command sender who initiated the command

          Returns:

          Command sender who initiated the command

          "},{"location":"reference/cpp/classendstone_1_1ScriptMessageEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ScriptMessageEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          The documentation for this class was generated from the following file include/endstone/event/server/script_message_event.h

          "},{"location":"reference/cpp/classendstone_1_1Server/","title":"Class endstone::Server","text":"

          ClassList > endstone > Server

          Represents a server implementation.

          • #include <endstone/server.h>
          "},{"location":"reference/cpp/classendstone_1_1Server/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string BroadcastChannelAdmin = = \"endstone.broadcast.admin\"Used for all administrative messages, such as an operator using a command. const std::string BroadcastChannelUser = = \"endstone.broadcast.user\"Used for all announcement messages, such as informing users that a player has joined."},{"location":"reference/cpp/classendstone_1_1Server/#public-functions","title":"Public Functions","text":"Type Name Server () = default Server (const Server &) = delete virtual void broadcast (const Message & message, const std::string & permission) const = 0Broadcasts the specified message to every user with the given permission name. virtual void broadcastMessage (const Message & message) const = 0Broadcasts the specified message to every user with permission endstone.broadcast.user. void broadcastMessage (const fmt::format_string< Args... > format, Args &&... args) const virtual Result< std::shared_ptr< BlockData > > createBlockData (std::string type) const = 0Creates a new BlockData instance for the specified block type, with all properties initialized to defaults. virtual Result< std::shared_ptr< BlockData > > createBlockData (std::string type, BlockStates block_states) const = 0Creates a new BlockData instance for the specified block type, with all properties initialized to defaults, except for those provided in data. virtual std::unique_ptr< BossBar > createBossBar (std::string title, BarColor color, BarStyle style) const = 0Creates a boss bar instance to display to players. The progress defaults to 1.0. virtual std::unique_ptr< BossBar > createBossBar (std::string title, BarColor color, BarStyle style, std::vector< BarFlag > flags) const = 0Creates a boss bar instance to display to players. The progress defaults to 1.0. virtual std::shared_ptr< Scoreboard > createScoreboard () = 0Creates a new Scoreboard to be tracked by the server. virtual bool dispatchCommand (CommandSender & sender, std::string command_line) const = 0Dispatches a command on this server, and executes it if found. virtual float getAverageMillisecondsPerTick () = 0Gets the average milliseconds per tick (MSPT). virtual float getAverageTickUsage () = 0Gets the average tick usage of the server. virtual float getAverageTicksPerSecond () = 0Gets the average ticks per second (TPS). virtual ConsoleCommandSender & getCommandSender () const = 0Gets a CommandSender for this server. virtual float getCurrentMillisecondsPerTick () = 0Gets the current milliseconds per tick (MSPT). virtual float getCurrentTickUsage () = 0Gets the current tick usage of the server. virtual float getCurrentTicksPerSecond () = 0Gets the current ticks per second (TPS). virtual Language & getLanguage () const = 0Gets the current language interface used by the server. virtual Level * getLevel () const = 0Gets the server level. virtual Logger & getLogger () const = 0Returns the primary logger associated with this server instance. virtual int getMaxPlayers () const = 0Get the maximum amount of players which can login to this server. virtual std::string getMinecraftVersion () const = 0Gets the Minecraft version that this server is running. virtual std::string getName () const = 0Gets the name of this server implementation. virtual bool getOnlineMode () const = 0Gets whether the Server is in online mode or not. virtual std::vector< Player * > getOnlinePlayers () const = 0Gets a list of all currently online players. virtual Player * getPlayer (endstone::UUID id) const = 0Gets the player with the given UUID . virtual Player * getPlayer (std::string name) const = 0Gets the player with the exact given name, case-insensitive. virtual PluginCommand * getPluginCommand (std::string name) const = 0Gets a PluginCommand with the given name or alias. virtual PluginManager & getPluginManager () const = 0Gets the plugin manager for interfacing with plugins. virtual Scheduler & getScheduler () const = 0Gets the scheduler for managing scheduled events. virtual Scoreboard * getScoreboard () const = 0Gets the primary Scoreboard controlled by the server. virtual std::chrono::system_clock::time_point getStartTime () = 0Gets the start time of the server. virtual std::string getVersion () const = 0Gets the version string of this server implementation. virtual bool isPrimaryThread () const = 0Checks the current thread against the expected primary server thread. Server & operator= (const Server &) = delete virtual void reload () = 0Reloads the server configuration, functions, scripts and plugins. virtual void reloadData () = 0Reload only the Minecraft data for the server. virtual Result< void > setMaxPlayers (int max_players) = 0Set the maximum amount of players allowed to be logged in at once. virtual void shutdown () = 0Shutdowns the server, stopping everything. virtual ~Server () = default"},{"location":"reference/cpp/classendstone_1_1Server/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Server/#variable-broadcastchanneladmin","title":"variable BroadcastChannelAdmin","text":"
          const std::string endstone::Server::BroadcastChannelAdmin;\n
          "},{"location":"reference/cpp/classendstone_1_1Server/#variable-broadcastchanneluser","title":"variable BroadcastChannelUser","text":"
          const std::string endstone::Server::BroadcastChannelUser;\n
          "},{"location":"reference/cpp/classendstone_1_1Server/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Server/#function-server-12","title":"function Server [\u00bd]","text":"
          endstone::Server::Server () = default\n
          "},{"location":"reference/cpp/classendstone_1_1Server/#function-server-22","title":"function Server [2/2]","text":"
          endstone::Server::Server (\n    const Server &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1Server/#function-broadcast","title":"function broadcast","text":"

          Broadcasts the specified message to every user with the given permission name.

          virtual void endstone::Server::broadcast (\n    const Message & message,\n    const std::string & permission\n) const = 0\n

          Parameters:

          • message message to broadcast
          • permission the required permission Permissibles must have to receive the broadcast
          "},{"location":"reference/cpp/classendstone_1_1Server/#function-broadcastmessage-12","title":"function broadcastMessage [\u00bd]","text":"

          Broadcasts the specified message to every user with permission endstone.broadcast.user.

          virtual void endstone::Server::broadcastMessage (\n    const Message & message\n) const = 0\n

          Parameters:

          • message the message
          "},{"location":"reference/cpp/classendstone_1_1Server/#function-broadcastmessage-22","title":"function broadcastMessage [2/2]","text":"
          template<typename... Args>\ninline void endstone::Server::broadcastMessage (\n    const fmt::format_string< Args... > format,\n    Args &&... args\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Server/#function-createblockdata-12","title":"function createBlockData [\u00bd]","text":"

          Creates a new BlockData instance for the specified block type, with all properties initialized to defaults.

          virtual Result< std::shared_ptr< BlockData > > endstone::Server::createBlockData (\n    std::string type\n) const = 0\n

          Parameters:

          • type the block type

          Returns:

          new data instance

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-createblockdata-22","title":"function createBlockData [2/2]","text":"

          Creates a new BlockData instance for the specified block type, with all properties initialized to defaults, except for those provided in data.

          virtual Result< std::shared_ptr< BlockData > > endstone::Server::createBlockData (\n    std::string type,\n    BlockStates block_states\n) const = 0\n

          Parameters:

          • type the block type
          • block_states block states, for example {\"old_leaf_type\":\"birch\", \"persistent_bit\":true}

          Returns:

          new data instance

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-createbossbar-12","title":"function createBossBar [\u00bd]","text":"

          Creates a boss bar instance to display to players. The progress defaults to 1.0.

          virtual std::unique_ptr< BossBar > endstone::Server::createBossBar (\n    std::string title,\n    BarColor color,\n    BarStyle style\n) const = 0\n

          Parameters:

          • title the title of the boss bar
          • color the color of the boss bar
          • style the style of the boss bar

          Returns:

          the created boss bar

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-createbossbar-22","title":"function createBossBar [2/2]","text":"

          Creates a boss bar instance to display to players. The progress defaults to 1.0.

          virtual std::unique_ptr< BossBar > endstone::Server::createBossBar (\n    std::string title,\n    BarColor color,\n    BarStyle style,\n    std::vector< BarFlag > flags\n) const = 0\n

          Parameters:

          • title the title of the boss bar
          • color the color of the boss bar
          • style the style of the boss bar
          • flags a list of flags to set on the boss bar

          Returns:

          the created boss bar

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-createscoreboard","title":"function createScoreboard","text":"

          Creates a new Scoreboard to be tracked by the server.

          virtual std::shared_ptr< Scoreboard > endstone::Server::createScoreboard () = 0\n

          This will not be saved by the server and is not affected by the /scoreboard command.

          Returns:

          the newly created Scoreboard

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-dispatchcommand","title":"function dispatchCommand","text":"

          Dispatches a command on this server, and executes it if found.

          virtual bool endstone::Server::dispatchCommand (\n    CommandSender & sender,\n    std::string command_line\n) const = 0\n

          Parameters:

          • sender the apparent sender of the command
          • command_line the command + arguments.

          Returns:

          true if execution is successful, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getaveragemillisecondspertick","title":"function getAverageMillisecondsPerTick","text":"

          Gets the average milliseconds per tick (MSPT).

          virtual float endstone::Server::getAverageMillisecondsPerTick () = 0\n

          Returns:

          The average number of milliseconds per tick.

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getaveragetickusage","title":"function getAverageTickUsage","text":"

          Gets the average tick usage of the server.

          virtual float endstone::Server::getAverageTickUsage () = 0\n

          Returns:

          The average tick usage in percentage.

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getaveragetickspersecond","title":"function getAverageTicksPerSecond","text":"

          Gets the average ticks per second (TPS).

          virtual float endstone::Server::getAverageTicksPerSecond () = 0\n

          Returns:

          The average ticks per second

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getcommandsender","title":"function getCommandSender","text":"

          Gets a CommandSender for this server.

          virtual ConsoleCommandSender & endstone::Server::getCommandSender () const = 0\n

          Returns:

          a console command sender

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getcurrentmillisecondspertick","title":"function getCurrentMillisecondsPerTick","text":"

          Gets the current milliseconds per tick (MSPT).

          virtual float endstone::Server::getCurrentMillisecondsPerTick () = 0\n

          Returns:

          The average current of milliseconds per tick.

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getcurrenttickusage","title":"function getCurrentTickUsage","text":"

          Gets the current tick usage of the server.

          virtual float endstone::Server::getCurrentTickUsage () = 0\n

          Returns:

          The current tick usage in percentage.

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getcurrenttickspersecond","title":"function getCurrentTicksPerSecond","text":"

          Gets the current ticks per second (TPS).

          virtual float endstone::Server::getCurrentTicksPerSecond () = 0\n

          Returns:

          The current ticks per second

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getlanguage","title":"function getLanguage","text":"

          Gets the current language interface used by the server.

          virtual Language & endstone::Server::getLanguage () const = 0\n

          Returns:

          Language interface used by the server for translations.

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getlevel","title":"function getLevel","text":"

          Gets the server level.

          virtual Level * endstone::Server::getLevel () const = 0\n

          Returns:

          the server level

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getlogger","title":"function getLogger","text":"

          Returns the primary logger associated with this server instance.

          virtual Logger & endstone::Server::getLogger () const = 0\n

          Returns:

          Logger associated with this server

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getmaxplayers","title":"function getMaxPlayers","text":"

          Get the maximum amount of players which can login to this server.

          virtual int endstone::Server::getMaxPlayers () const = 0\n

          Returns:

          the amount of players this server allows

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getminecraftversion","title":"function getMinecraftVersion","text":"

          Gets the Minecraft version that this server is running.

          virtual std::string endstone::Server::getMinecraftVersion () const = 0\n

          Returns:

          version of Minecraft

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getname","title":"function getName","text":"

          Gets the name of this server implementation.

          virtual std::string endstone::Server::getName () const = 0\n

          Returns:

          name of this server implementation

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getonlinemode","title":"function getOnlineMode","text":"

          Gets whether the Server is in online mode or not.

          virtual bool endstone::Server::getOnlineMode () const = 0\n

          Returns:

          true if the server authenticates clients, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getonlineplayers","title":"function getOnlinePlayers","text":"

          Gets a list of all currently online players.

          virtual std::vector< Player * > endstone::Server::getOnlinePlayers () const = 0\n

          Returns:

          a list of currently online players.

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getplayer-12","title":"function getPlayer [\u00bd]","text":"

          Gets the player with the given UUID .

          virtual Player * endstone::Server::getPlayer (\n    endstone::UUID id\n) const = 0\n

          Parameters:

          • id UUID of the player to retrieve

          Returns:

          a player object if one was found, null otherwise

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getplayer-22","title":"function getPlayer [2/2]","text":"

          Gets the player with the exact given name, case-insensitive.

          virtual Player * endstone::Server::getPlayer (\n    std::string name\n) const = 0\n

          Parameters:

          • name Exact name of the player to retrieve

          Returns:

          a player object if one was found, null otherwise

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getplugincommand","title":"function getPluginCommand","text":"

          Gets a PluginCommand with the given name or alias.

          virtual PluginCommand * endstone::Server::getPluginCommand (\n    std::string name\n) const = 0\n

          Parameters:

          • name the name of the command to retrieve

          Returns:

          a plugin command if found, null otherwise

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getpluginmanager","title":"function getPluginManager","text":"

          Gets the plugin manager for interfacing with plugins.

          virtual PluginManager & endstone::Server::getPluginManager () const = 0\n

          Returns:

          a plugin manager for this Server instance

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getscheduler","title":"function getScheduler","text":"

          Gets the scheduler for managing scheduled events.

          virtual Scheduler & endstone::Server::getScheduler () const = 0\n

          Returns:

          a scheduling service for this server

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getscoreboard","title":"function getScoreboard","text":"

          Gets the primary Scoreboard controlled by the server.

          virtual Scoreboard * endstone::Server::getScoreboard () const = 0\n

          This Scoreboard is saved by the server, is affected by the /scoreboard command, and is the scoreboard shown by default to players. This will only exist after the level has been loaded.

          Returns:

          the default server scoreboard

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getstarttime","title":"function getStartTime","text":"

          Gets the start time of the server.

          virtual std::chrono::system_clock::time_point endstone::Server::getStartTime () = 0\n

          Returns:

          The start time of the server\u3002

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-getversion","title":"function getVersion","text":"

          Gets the version string of this server implementation.

          virtual std::string endstone::Server::getVersion () const = 0\n

          Returns:

          version of this server implementation

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-isprimarythread","title":"function isPrimaryThread","text":"

          Checks the current thread against the expected primary server thread.

          virtual bool endstone::Server::isPrimaryThread () const = 0\n

          Returns:

          true if the current thread matches the expected primary thread, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-operator","title":"function operator=","text":"
          Server & endstone::Server::operator= (\n    const Server &\n) = delete\n
          "},{"location":"reference/cpp/classendstone_1_1Server/#function-reload","title":"function reload","text":"
          virtual void endstone::Server::reload () = 0\n
          "},{"location":"reference/cpp/classendstone_1_1Server/#function-reloaddata","title":"function reloadData","text":"

          Reload only the Minecraft data for the server.

          virtual void endstone::Server::reloadData () = 0\n

          This includes functions and script files from all behaviour packs.

          "},{"location":"reference/cpp/classendstone_1_1Server/#function-setmaxplayers","title":"function setMaxPlayers","text":"

          Set the maximum amount of players allowed to be logged in at once.

          virtual Result< void > endstone::Server::setMaxPlayers (\n    int max_players\n) = 0\n

          Parameters:

          • max_players The maximum amount of concurrent players
          "},{"location":"reference/cpp/classendstone_1_1Server/#function-shutdown","title":"function shutdown","text":"
          virtual void endstone::Server::shutdown () = 0\n
          "},{"location":"reference/cpp/classendstone_1_1Server/#function-server","title":"function ~Server","text":"
          virtual endstone::Server::~Server () = default\n

          The documentation for this class was generated from the following file include/endstone/server.h

          "},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/","title":"Class endstone::ServerCommandEvent","text":"

          ClassList > endstone > ServerCommandEvent

          Called when the console runs a command, early in the process. More...

          • #include <endstone/event/server/server_command_event.h>

          Inherits the following classes: endstone::ServerEvent

          "},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ServerCommandEvent\""},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#public-functions","title":"Public Functions","text":"Type Name ServerCommandEvent (CommandSender & sender, std::string command) std::string getCommand () const virtual std::string getEventName () override const CommandSender & getSender () const virtual bool isCancellable () override const void setCommand (std::string message)"},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#public-functions-inherited-from-endstoneserverevent","title":"Public Functions inherited from endstone::ServerEvent","text":"

          See endstone::ServerEvent

          Type Name Event (bool async=false) Event (const Event &) = delete"},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#detailed-description","title":"Detailed Description","text":"

          You should not use this except for a few cases like logging commands, blocking commands on certain places, or applying modifiers.

          The command message contains a slash '/' at the start

          "},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ServerCommandEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#function-servercommandevent","title":"function ServerCommandEvent","text":"
          inline endstone::ServerCommandEvent::ServerCommandEvent (\n    CommandSender & sender,\n    std::string command\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#function-getcommand","title":"function getCommand","text":"
          inline std::string endstone::ServerCommandEvent::getCommand () const\n

          Gets the command that the server is attempting to execute from the console

          Returns:

          Command the server is attempting to execute

          "},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ServerCommandEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#function-getsender","title":"function getSender","text":"
          inline CommandSender & endstone::ServerCommandEvent::getSender () const\n

          Get the command sender.

          Returns:

          The sender

          "},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ServerCommandEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1ServerCommandEvent/#function-setcommand","title":"function setCommand","text":"
          inline void endstone::ServerCommandEvent::setCommand (\n    std::string message\n) \n

          Sets the command that the server will execute

          Parameters:

          • message New message that the server will execute

          The documentation for this class was generated from the following file include/endstone/event/server/server_command_event.h

          "},{"location":"reference/cpp/classendstone_1_1ServerEvent/","title":"Class endstone::ServerEvent","text":"

          ClassList > endstone > ServerEvent

          Represents an Server-related event.

          • #include <endstone/event/server/server_event.h>

          Inherits the following classes: endstone::Event

          Inherited by the following classes: endstone::BroadcastMessageEvent, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::ScriptMessageEvent, endstone::ServerCommandEvent, endstone::ServerListPingEvent, endstone::ServerLoadEvent

          "},{"location":"reference/cpp/classendstone_1_1ServerEvent/#public-functions","title":"Public Functions","text":"Type Name Event (bool async=false) Event (const Event &) = delete"},{"location":"reference/cpp/classendstone_1_1ServerEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ServerEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ServerEvent/#function-event-12","title":"function Event [\u00bd]","text":"
          inline explicit endstone::ServerEvent::Event (\n    bool async=false\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ServerEvent/#function-event-22","title":"function Event [2/2]","text":"
          endstone::ServerEvent::Event (\n    const Event &\n) = delete\n

          The documentation for this class was generated from the following file include/endstone/event/server/server_event.h

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/","title":"Class endstone::ServerListPingEvent","text":"

          ClassList > endstone > ServerListPingEvent

          Called when a server ping is coming in.

          • #include <endstone/event/server/server_list_ping_event.h>

          Inherits the following classes: endstone::ServerEvent

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ServerListPingEvent\""},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#public-functions","title":"Public Functions","text":"Type Name ServerListPingEvent (std::string remote_host, int remote_port, std::string ping_response) bool deserialize () virtual std::string getEventName () override const GameMode getGameMode () const std::string getLevelName () const int getLocalPort () const int getLocalPortV6 () const int getMaxPlayers () const std::string getMinecraftVersionNetwork () const std::string getMotd () const int getNetworkProtocolVersion () const int getNumPlayers () const std::string getRemoteHost () const int getRemotePort () const std::string getServerGuid () const virtual bool isCancellable () override const std::string serialize () void setGameMode (GameMode game_mode) void setLevelName (std::string level_name) void setMaxPlayers (int max_players) void setMinecraftVersionNetwork (std::string minecraft_version_network) void setMotd (std::string motd) void setNumPlayers (int num_players)"},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#public-functions-inherited-from-endstoneserverevent","title":"Public Functions inherited from endstone::ServerEvent","text":"

          See endstone::ServerEvent

          Type Name Event (bool async=false) Event (const Event &) = delete"},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ServerListPingEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-serverlistpingevent","title":"function ServerListPingEvent","text":"
          inline endstone::ServerListPingEvent::ServerListPingEvent (\n    std::string remote_host,\n    int remote_port,\n    std::string ping_response\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-deserialize","title":"function deserialize","text":"
          bool endstone::ServerListPingEvent::deserialize () \n
          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ServerListPingEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getgamemode","title":"function getGameMode","text":"
          inline GameMode endstone::ServerListPingEvent::getGameMode () const\n

          Get the current game mode.

          Returns:

          the game mode

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getlevelname","title":"function getLevelName","text":"
          inline std::string endstone::ServerListPingEvent::getLevelName () const\n

          Get the level name.

          Returns:

          the level name

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getlocalport","title":"function getLocalPort","text":"
          inline int endstone::ServerListPingEvent::getLocalPort () const\n

          Get the local port of the server.

          Returns:

          The local port

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getlocalportv6","title":"function getLocalPortV6","text":"
          inline int endstone::ServerListPingEvent::getLocalPortV6 () const\n

          Get the local port of the server for IPv6 support

          Returns:

          The local port for IPv6

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getmaxplayers","title":"function getMaxPlayers","text":"
          inline int endstone::ServerListPingEvent::getMaxPlayers () const\n

          Get the maximum number of players allowed.

          Returns:

          the maximum number of players

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getminecraftversionnetwork","title":"function getMinecraftVersionNetwork","text":"
          inline std::string endstone::ServerListPingEvent::getMinecraftVersionNetwork () const\n

          Get the network version of Minecraft that is supported by this server

          Returns:

          the network version of Minecraft

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getmotd","title":"function getMotd","text":"
          inline std::string endstone::ServerListPingEvent::getMotd () const\n

          Get the message of the day message.

          Returns:

          the message of the day

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getnetworkprotocolversion","title":"function getNetworkProtocolVersion","text":"
          inline int endstone::ServerListPingEvent::getNetworkProtocolVersion () const\n

          Get the network protocol version of this server

          Returns:

          the network protocol version

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getnumplayers","title":"function getNumPlayers","text":"
          inline int endstone::ServerListPingEvent::getNumPlayers () const\n

          Get the number of players online

          Returns:

          the number of players

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getremotehost","title":"function getRemoteHost","text":"
          inline std::string endstone::ServerListPingEvent::getRemoteHost () const\n

          Get the host the ping is coming from.

          Returns:

          The host

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getremoteport","title":"function getRemotePort","text":"
          inline int endstone::ServerListPingEvent::getRemotePort () const\n

          Get the port the ping is coming from.

          Returns:

          The port

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-getserverguid","title":"function getServerGuid","text":"
          inline std::string endstone::ServerListPingEvent::getServerGuid () const\n

          Get the unique identifier of the server.

          Returns:

          The server guid

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ServerListPingEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-serialize","title":"function serialize","text":"
          std::string endstone::ServerListPingEvent::serialize () \n
          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-setgamemode","title":"function setGameMode","text":"
          inline void endstone::ServerListPingEvent::setGameMode (\n    GameMode game_mode\n) \n

          Set the current game mode.

          Parameters:

          • game_mode the game mode
          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-setlevelname","title":"function setLevelName","text":"
          inline void endstone::ServerListPingEvent::setLevelName (\n    std::string level_name\n) \n

          Set the level name.

          Parameters:

          • level_name the level name
          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-setmaxplayers","title":"function setMaxPlayers","text":"
          inline void endstone::ServerListPingEvent::setMaxPlayers (\n    int max_players\n) \n

          Set the maximum number of players allowed.

          Parameters:

          • max_players the maximum number of players
          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-setminecraftversionnetwork","title":"function setMinecraftVersionNetwork","text":"
          inline void endstone::ServerListPingEvent::setMinecraftVersionNetwork (\n    std::string minecraft_version_network\n) \n

          Set the network version of Minecraft that is supported by this server

          Parameters:

          • minecraft_version_network the network version of Minecraft
          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-setmotd","title":"function setMotd","text":"
          inline void endstone::ServerListPingEvent::setMotd (\n    std::string motd\n) \n

          Change the message of the day message.

          Parameters:

          • motd the message of the day
          "},{"location":"reference/cpp/classendstone_1_1ServerListPingEvent/#function-setnumplayers","title":"function setNumPlayers","text":"
          inline void endstone::ServerListPingEvent::setNumPlayers (\n    int num_players\n) \n

          Set the number of players online.

          Parameters:

          • num_players the number of players

          The documentation for this class was generated from the following file include/endstone/event/server/server_list_ping_event.h

          "},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/","title":"Class endstone::ServerLoadEvent","text":"

          ClassList > endstone > ServerLoadEvent

          Called when either the server startup or reload has completed.

          • #include <endstone/event/server/server_load_event.h>

          Inherits the following classes: endstone::ServerEvent

          "},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#public-types","title":"Public Types","text":"Type Name enum LoadType"},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ServerLoadEvent\""},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#public-functions","title":"Public Functions","text":"Type Name ServerLoadEvent (LoadType type) virtual std::string getEventName () override const LoadType getType () const virtual bool isCancellable () override const"},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#public-functions-inherited-from-endstoneserverevent","title":"Public Functions inherited from endstone::ServerEvent","text":"

          See endstone::ServerEvent

          Type Name Event (bool async=false) Event (const Event &) = delete"},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#enum-loadtype","title":"enum LoadType","text":"
          enum endstone::ServerLoadEvent::LoadType {\n    Startup,\n    Reload\n};\n
          "},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ServerLoadEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#function-serverloadevent","title":"function ServerLoadEvent","text":"
          inline explicit endstone::ServerLoadEvent::ServerLoadEvent (\n    LoadType type\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ServerLoadEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#function-gettype","title":"function getType","text":"
          inline LoadType endstone::ServerLoadEvent::getType () const\n
          "},{"location":"reference/cpp/classendstone_1_1ServerLoadEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ServerLoadEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          The documentation for this class was generated from the following file include/endstone/event/server/server_load_event.h

          "},{"location":"reference/cpp/classendstone_1_1Skin/","title":"Class endstone::Skin","text":"

          ClassList > endstone > Skin

          Represents a player skin.

          • #include <endstone/skin.h>
          "},{"location":"reference/cpp/classendstone_1_1Skin/#classes","title":"Classes","text":"Type Name struct ImageData"},{"location":"reference/cpp/classendstone_1_1Skin/#public-functions","title":"Public Functions","text":"Type Name Skin () = default Skin (std::string skin_id, ImageData skin_data, std::optional< std::string > cape_id=std::nullopt, std::optional< ImageData > cape_data=std::nullopt) const std::optional< ImageData > & getCapeData () constGets the cape data. const std::optional< std::string > & getCapeId () constGets the cape id. const ImageData & getSkinData () constGets the skin data. const std::string & getSkinId () constGets the skin id."},{"location":"reference/cpp/classendstone_1_1Skin/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Skin/#function-skin-12","title":"function Skin [\u00bd]","text":"
          endstone::Skin::Skin () = default\n
          "},{"location":"reference/cpp/classendstone_1_1Skin/#function-skin-22","title":"function Skin [2/2]","text":"
          inline endstone::Skin::Skin (\n    std::string skin_id,\n    ImageData skin_data,\n    std::optional< std::string > cape_id=std::nullopt,\n    std::optional< ImageData > cape_data=std::nullopt\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Skin/#function-getcapedata","title":"function getCapeData","text":"

          Gets the cape data.

          inline const std::optional< ImageData > & endstone::Skin::getCapeData () const\n

          Returns:

          the cape data.

          "},{"location":"reference/cpp/classendstone_1_1Skin/#function-getcapeid","title":"function getCapeId","text":"

          Gets the cape id.

          inline const std::optional< std::string > & endstone::Skin::getCapeId () const\n

          Returns:

          the cape id.

          "},{"location":"reference/cpp/classendstone_1_1Skin/#function-getskindata","title":"function getSkinData","text":"

          Gets the skin data.

          inline const ImageData & endstone::Skin::getSkinData () const\n

          Returns:

          the skin data.

          "},{"location":"reference/cpp/classendstone_1_1Skin/#function-getskinid","title":"function getSkinId","text":"

          Gets the skin id.

          inline const std::string & endstone::Skin::getSkinId () const\n

          Returns:

          the skin id.

          The documentation for this class was generated from the following file include/endstone/skin.h

          "},{"location":"reference/cpp/structendstone_1_1Skin_1_1ImageData/","title":"Struct endstone::Skin::ImageData","text":"

          ClassList > endstone > Skin > ImageData

          "},{"location":"reference/cpp/structendstone_1_1Skin_1_1ImageData/#public-attributes","title":"Public Attributes","text":"Type Name std::string data int height int width"},{"location":"reference/cpp/structendstone_1_1Skin_1_1ImageData/#public-attributes-documentation","title":"Public Attributes Documentation","text":""},{"location":"reference/cpp/structendstone_1_1Skin_1_1ImageData/#variable-data","title":"variable data","text":"
          std::string endstone::Skin::ImageData::data;\n
          "},{"location":"reference/cpp/structendstone_1_1Skin_1_1ImageData/#variable-height","title":"variable height","text":"
          int endstone::Skin::ImageData::height;\n
          "},{"location":"reference/cpp/structendstone_1_1Skin_1_1ImageData/#variable-width","title":"variable width","text":"
          int endstone::Skin::ImageData::width;\n

          The documentation for this class was generated from the following file include/endstone/skin.h

          "},{"location":"reference/cpp/classendstone_1_1Slider/","title":"Class endstone::Slider","text":"

          ClassList > endstone > Slider

          Represents a slider with a label.

          • #include <endstone/form/controls/slider.h>
          "},{"location":"reference/cpp/classendstone_1_1Slider/#public-functions","title":"Public Functions","text":"Type Name Slider () = default Slider (Message label, float min, float max, float step, std::optional< float > default_value=std::nullopt) std::optional< float > getDefaultValue () constGets the default value of the slider. Message getLabel () constGets the label of the toggle. float getMax () constGets the maximum value of the slider. float getMin () constGets the minimum value of the slider. float getStep () constGets the step size of the slider. Slider & setDefaultValue (std::optional< float > default_value) Sets the default value of the slider. Slider & setLabel (Message label) Sets the label of the toggle. Slider & setMax (float max) Sets the maximum value of the slider. Slider & setMin (float min) Sets the minimum value of the slider. Slider & setStep (float step) Sets the step size of the slider."},{"location":"reference/cpp/classendstone_1_1Slider/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Slider/#function-slider-12","title":"function Slider [\u00bd]","text":"
          endstone::Slider::Slider () = default\n
          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-slider-22","title":"function Slider [2/2]","text":"
          inline explicit endstone::Slider::Slider (\n    Message label,\n    float min,\n    float max,\n    float step,\n    std::optional< float > default_value=std::nullopt\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-getdefaultvalue","title":"function getDefaultValue","text":"

          Gets the default value of the slider.

          inline std::optional< float > endstone::Slider::getDefaultValue () const\n

          Returns:

          The default value of the slider.

          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-getlabel","title":"function getLabel","text":"

          Gets the label of the toggle.

          inline Message endstone::Slider::getLabel () const\n

          Returns:

          The label of the toggle.

          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-getmax","title":"function getMax","text":"

          Gets the maximum value of the slider.

          inline float endstone::Slider::getMax () const\n

          Returns:

          The maximum value of the slider.

          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-getmin","title":"function getMin","text":"

          Gets the minimum value of the slider.

          inline float endstone::Slider::getMin () const\n

          Returns:

          The minimum value of the slider.

          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-getstep","title":"function getStep","text":"

          Gets the step size of the slider.

          inline float endstone::Slider::getStep () const\n

          Returns:

          The step size of the slider.

          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-setdefaultvalue","title":"function setDefaultValue","text":"

          Sets the default value of the slider.

          inline Slider & endstone::Slider::setDefaultValue (\n    std::optional< float > default_value\n) \n

          Parameters:

          • default_value The new default value for the slider.

          Returns:

          A reference to the current slider, for function chaining.

          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-setlabel","title":"function setLabel","text":"

          Sets the label of the toggle.

          inline Slider & endstone::Slider::setLabel (\n    Message label\n) \n

          Parameters:

          • label The new label for the toggle.

          Returns:

          A reference to the current toggle.

          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-setmax","title":"function setMax","text":"

          Sets the maximum value of the slider.

          inline Slider & endstone::Slider::setMax (\n    float max\n) \n

          Parameters:

          • max The new maximum value for the slider.

          Returns:

          A reference to the current slider, for function chaining.

          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-setmin","title":"function setMin","text":"

          Sets the minimum value of the slider.

          inline Slider & endstone::Slider::setMin (\n    float min\n) \n

          Parameters:

          • min The new minimum value for the slider.

          Returns:

          A reference to the current slider, for function chaining.

          "},{"location":"reference/cpp/classendstone_1_1Slider/#function-setstep","title":"function setStep","text":"

          Sets the step size of the slider.

          inline Slider & endstone::Slider::setStep (\n    float step\n) \n

          Parameters:

          • step The new step size for the slider.

          Returns:

          A reference to the current slider, for function chaining.

          The documentation for this class was generated from the following file include/endstone/form/controls/slider.h

          "},{"location":"reference/cpp/classendstone_1_1SocketAddress/","title":"Class endstone::SocketAddress","text":"

          ClassList > endstone > SocketAddress

          Represents an IP Socket Address (hostname + port number).

          • #include <endstone/util/socket_address.h>
          "},{"location":"reference/cpp/classendstone_1_1SocketAddress/#public-functions","title":"Public Functions","text":"Type Name SocketAddress () = default SocketAddress (std::string hostname, std::uint32_t port) const std::string & getHostname () const std::uint32_t getPort () const"},{"location":"reference/cpp/classendstone_1_1SocketAddress/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1SocketAddress/#function-socketaddress-12","title":"function SocketAddress [\u00bd]","text":"
          endstone::SocketAddress::SocketAddress () = default\n
          "},{"location":"reference/cpp/classendstone_1_1SocketAddress/#function-socketaddress-22","title":"function SocketAddress [2/2]","text":"
          inline endstone::SocketAddress::SocketAddress (\n    std::string hostname,\n    std::uint32_t port\n) \n
          "},{"location":"reference/cpp/classendstone_1_1SocketAddress/#function-gethostname","title":"function getHostname","text":"
          inline const std::string & endstone::SocketAddress::getHostname () const\n

          Gets the hostname.

          Returns:

          The hostname of this socket address

          "},{"location":"reference/cpp/classendstone_1_1SocketAddress/#function-getport","title":"function getPort","text":"
          inline std::uint32_t endstone::SocketAddress::getPort () const\n

          Gets the port number.

          Returns:

          The port number of this socket address

          The documentation for this class was generated from the following file include/endstone/util/socket_address.h

          "},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/","title":"Class endstone::SpawnParticleEffectPacket","text":"

          ClassList > endstone > SpawnParticleEffectPacket

          Represents a packet for spawning a particle effect.

          • #include <endstone/network/spawn_particle_effect_packet.h>

          Inherits the following classes: endstone::Packet

          "},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#public-attributes","title":"Public Attributes","text":"Type Name std::int64_t actor_id = {-1} int dimension_id std::string effect_name std::optional< std::string > molang_variables_json Vector< float > position"},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#public-functions","title":"Public Functions","text":"Type Name virtual PacketType getType () override constGets the type of the packet."},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#public-functions-inherited-from-endstonepacket","title":"Public Functions inherited from endstone::Packet","text":"

          See endstone::Packet

          Type Name virtual PacketType getType () const = 0Gets the type of the packet. virtual ~Packet () = default"},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#public-attributes-documentation","title":"Public Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#variable-actor_id","title":"variable actor_id","text":"
          std::int64_t endstone::SpawnParticleEffectPacket::actor_id;\n
          "},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#variable-dimension_id","title":"variable dimension_id","text":"
          int endstone::SpawnParticleEffectPacket::dimension_id;\n
          "},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#variable-effect_name","title":"variable effect_name","text":"
          std::string endstone::SpawnParticleEffectPacket::effect_name;\n
          "},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#variable-molang_variables_json","title":"variable molang_variables_json","text":"
          std::optional<std::string> endstone::SpawnParticleEffectPacket::molang_variables_json;\n
          "},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#variable-position","title":"variable position","text":"
          Vector<float> endstone::SpawnParticleEffectPacket::position;\n
          "},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1SpawnParticleEffectPacket/#function-gettype","title":"function getType","text":"

          Gets the type of the packet.

          inline virtual PacketType endstone::SpawnParticleEffectPacket::getType () override const\n

          Returns:

          The type of the packet.

          Implements endstone::Packet::getType

          The documentation for this class was generated from the following file include/endstone/network/spawn_particle_effect_packet.h

          "},{"location":"reference/cpp/classendstone_1_1StepSlider/","title":"Class endstone::StepSlider","text":"

          ClassList > endstone > StepSlider

          Represents a step slider with a set of predefined options.

          • #include <endstone/form/controls/step_slider.h>

          Inherits the following classes: endstone::Dropdown

          "},{"location":"reference/cpp/classendstone_1_1StepSlider/#public-functions","title":"Public Functions","text":"Type Name Dropdown () = default Dropdown (Message label, std::vector< std::string > options, std::optional< int > default_index=std::nullopt)"},{"location":"reference/cpp/classendstone_1_1StepSlider/#public-functions-inherited-from-endstonedropdown","title":"Public Functions inherited from endstone::Dropdown","text":"

          See endstone::Dropdown

          Type Name Dropdown () = default Dropdown (Message label, std::vector< std::string > options, std::optional< int > default_index=std::nullopt) Dropdown & addOption (const std::string & option) Adds a new option to the dropdown. std::optional< int > getDefaultIndex () constGets the default index of the dropdown. Message getLabel () constGets the label of the dropdown. std::vector< std::string > getOptions () constGets the options of the dropdown. Dropdown & setDefaultIndex (std::optional< int > default_index) Sets the default index of the dropdown. Dropdown & setLabel (Message label) Sets the label of the dropdown. Dropdown & setOptions (std::vector< std::string > options) Sets the options of the dropdown."},{"location":"reference/cpp/classendstone_1_1StepSlider/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1StepSlider/#function-dropdown-12","title":"function Dropdown [\u00bd]","text":"
          endstone::StepSlider::Dropdown () = default\n
          "},{"location":"reference/cpp/classendstone_1_1StepSlider/#function-dropdown-22","title":"function Dropdown [2/2]","text":"
          inline explicit endstone::StepSlider::Dropdown (\n    Message label,\n    std::vector< std::string > options,\n    std::optional< int > default_index=std::nullopt\n) \n

          The documentation for this class was generated from the following file include/endstone/form/controls/step_slider.h

          "},{"location":"reference/cpp/classendstone_1_1Task/","title":"Class endstone::Task","text":"

          ClassList > endstone > Task

          Represents a task being executed by the scheduler.

          • #include <endstone/scheduler/task.h>
          "},{"location":"reference/cpp/classendstone_1_1Task/#public-functions","title":"Public Functions","text":"Type Name virtual void cancel () = 0 virtual Plugin * getOwner () const = 0 virtual TaskId getTaskId () const = 0 virtual bool isCancelled () const = 0 virtual bool isSync () const = 0 virtual ~Task () = default"},{"location":"reference/cpp/classendstone_1_1Task/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Task/#function-cancel","title":"function cancel","text":"
          virtual void endstone::Task::cancel () = 0\n

          Attempts to cancel this task.

          "},{"location":"reference/cpp/classendstone_1_1Task/#function-getowner","title":"function getOwner","text":"
          virtual Plugin * endstone::Task::getOwner () const = 0\n

          Returns the Plugin that owns this task.

          Returns:

          The Plugin that owns the task

          "},{"location":"reference/cpp/classendstone_1_1Task/#function-gettaskid","title":"function getTaskId","text":"
          virtual TaskId endstone::Task::getTaskId () const = 0\n

          Returns the taskId for the task.

          Returns:

          Task id number

          "},{"location":"reference/cpp/classendstone_1_1Task/#function-iscancelled","title":"function isCancelled","text":"
          virtual bool endstone::Task::isCancelled () const = 0\n

          Returns true if this task has been cancelled.

          Returns:

          true if the task has been cancelled

          "},{"location":"reference/cpp/classendstone_1_1Task/#function-issync","title":"function isSync","text":"
          virtual bool endstone::Task::isSync () const = 0\n

          Returns true if the Task is a sync task.

          Returns:

          true if the task is run by server thread

          "},{"location":"reference/cpp/classendstone_1_1Task/#function-task","title":"function ~Task","text":"
          virtual endstone::Task::~Task () = default\n

          The documentation for this class was generated from the following file include/endstone/scheduler/task.h

          "},{"location":"reference/cpp/classendstone_1_1TextInput/","title":"Class endstone::TextInput","text":"

          ClassList > endstone > TextInput

          Represents a text input field.

          • #include <endstone/form/controls/text_input.h>
          "},{"location":"reference/cpp/classendstone_1_1TextInput/#public-functions","title":"Public Functions","text":"Type Name TextInput () = default TextInput (Message label, Message placeholder, std::optional< std::string > default_text=std::nullopt) std::optional< std::string > getDefaultValue () constGets the default text of the text input field. Message getLabel () constGets the label of the text input field. Message getPlaceholder () constGets the placeholder of the text input field. TextInput & setDefaultValue (std::optional< std::string > text) Sets the default text of the text input field. TextInput & setLabel (Message label) Sets the label of the text input field. TextInput & setPlaceholder (Message placeholder) Sets the placeholder of the text input field."},{"location":"reference/cpp/classendstone_1_1TextInput/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1TextInput/#function-textinput-12","title":"function TextInput [\u00bd]","text":"
          endstone::TextInput::TextInput () = default\n
          "},{"location":"reference/cpp/classendstone_1_1TextInput/#function-textinput-22","title":"function TextInput [2/2]","text":"
          inline explicit endstone::TextInput::TextInput (\n    Message label,\n    Message placeholder,\n    std::optional< std::string > default_text=std::nullopt\n) \n
          "},{"location":"reference/cpp/classendstone_1_1TextInput/#function-getdefaultvalue","title":"function getDefaultValue","text":"

          Gets the default text of the text input field.

          inline std::optional< std::string > endstone::TextInput::getDefaultValue () const\n

          Returns:

          The default text of the text input field.

          "},{"location":"reference/cpp/classendstone_1_1TextInput/#function-getlabel","title":"function getLabel","text":"

          Gets the label of the text input field.

          inline Message endstone::TextInput::getLabel () const\n

          Returns:

          The label of the text input field.

          "},{"location":"reference/cpp/classendstone_1_1TextInput/#function-getplaceholder","title":"function getPlaceholder","text":"

          Gets the placeholder of the text input field.

          inline Message endstone::TextInput::getPlaceholder () const\n

          Returns:

          The placeholder of the text input field.

          "},{"location":"reference/cpp/classendstone_1_1TextInput/#function-setdefaultvalue","title":"function setDefaultValue","text":"

          Sets the default text of the text input field.

          inline TextInput & endstone::TextInput::setDefaultValue (\n    std::optional< std::string > text\n) \n

          Parameters:

          • text The new default text for the text input field.

          Returns:

          A reference to the text input field itself.

          "},{"location":"reference/cpp/classendstone_1_1TextInput/#function-setlabel","title":"function setLabel","text":"

          Sets the label of the text input field.

          inline TextInput & endstone::TextInput::setLabel (\n    Message label\n) \n

          Parameters:

          • label The new label for the text input field.

          Returns:

          A reference to the text input field itself.

          "},{"location":"reference/cpp/classendstone_1_1TextInput/#function-setplaceholder","title":"function setPlaceholder","text":"

          Sets the placeholder of the text input field.

          inline TextInput & endstone::TextInput::setPlaceholder (\n    Message placeholder\n) \n

          Parameters:

          • placeholder The new placeholder for the text input field.

          Returns:

          A reference to the text input field itself.

          The documentation for this class was generated from the following file include/endstone/form/controls/text_input.h

          "},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/","title":"Class endstone::ThunderChangeEvent","text":"

          ClassList > endstone > ThunderChangeEvent

          Called when the thunder state in a world is changing.

          • #include <endstone/event/weather/thunder_change_event.h>

          Inherits the following classes: endstone::WeatherEvent

          "},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"ThunderChangeEvent\""},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#public-functions","title":"Public Functions","text":"Type Name ThunderChangeEvent (Level & level, bool to) virtual std::string getEventName () override const virtual bool isCancellable () override const bool toThunderState () const ~ThunderChangeEvent () override"},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#public-functions-inherited-from-endstoneweatherevent","title":"Public Functions inherited from endstone::WeatherEvent","text":"

          See endstone::WeatherEvent

          Type Name WeatherEvent (Level & level) Level & getLevel () const ~WeatherEvent () override"},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::ThunderChangeEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#function-thunderchangeevent","title":"function ThunderChangeEvent","text":"
          inline endstone::ThunderChangeEvent::ThunderChangeEvent (\n    Level & level,\n    bool to\n) \n
          "},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::ThunderChangeEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::ThunderChangeEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#function-tothunderstate","title":"function toThunderState","text":"
          inline bool endstone::ThunderChangeEvent::toThunderState () const\n

          Gets the state of thunder that the world is being set to

          Returns:

          true if the weather is being set to thundering, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1ThunderChangeEvent/#function-thunderchangeevent_1","title":"function ~ThunderChangeEvent","text":"
          endstone::ThunderChangeEvent::~ThunderChangeEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/weather/thunder_change_event.h

          "},{"location":"reference/cpp/classendstone_1_1Toggle/","title":"Class endstone::Toggle","text":"

          ClassList > endstone > Toggle

          Represents a toggle button with a label.

          • #include <endstone/form/controls/toggle.h>
          "},{"location":"reference/cpp/classendstone_1_1Toggle/#public-functions","title":"Public Functions","text":"Type Name Toggle () = default Toggle (Message label, bool default_value=false) bool getDefaultValue () constGets the default value of the toggle. Message getLabel () constGets the label of the toggle. Toggle & setDefaultValue (bool value) Sets the default value of the toggle. Toggle & setLabel (Message label) Sets the label of the toggle."},{"location":"reference/cpp/classendstone_1_1Toggle/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Toggle/#function-toggle-12","title":"function Toggle [\u00bd]","text":"
          endstone::Toggle::Toggle () = default\n
          "},{"location":"reference/cpp/classendstone_1_1Toggle/#function-toggle-22","title":"function Toggle [2/2]","text":"
          inline explicit endstone::Toggle::Toggle (\n    Message label,\n    bool default_value=false\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Toggle/#function-getdefaultvalue","title":"function getDefaultValue","text":"

          Gets the default value of the toggle.

          inline bool endstone::Toggle::getDefaultValue () const\n

          Returns:

          The default value of the toggle.

          "},{"location":"reference/cpp/classendstone_1_1Toggle/#function-getlabel","title":"function getLabel","text":"

          Gets the label of the toggle.

          inline Message endstone::Toggle::getLabel () const\n

          Returns:

          The label of the toggle.

          "},{"location":"reference/cpp/classendstone_1_1Toggle/#function-setdefaultvalue","title":"function setDefaultValue","text":"

          Sets the default value of the toggle.

          inline Toggle & endstone::Toggle::setDefaultValue (\n    bool value\n) \n

          Parameters:

          • value The new default value for the toggle.

          Returns:

          A reference to the current toggle.

          "},{"location":"reference/cpp/classendstone_1_1Toggle/#function-setlabel","title":"function setLabel","text":"

          Sets the label of the toggle.

          inline Toggle & endstone::Toggle::setLabel (\n    Message label\n) \n

          Parameters:

          • label The new label for the toggle.

          Returns:

          A reference to the current toggle.

          The documentation for this class was generated from the following file include/endstone/form/controls/toggle.h

          "},{"location":"reference/cpp/classendstone_1_1Translatable/","title":"Class endstone::Translatable","text":"

          ClassList > endstone > Translatable

          Represents an object with a text representation that can be translated by the Minecraft client.

          • #include <endstone/lang/translatable.h>
          "},{"location":"reference/cpp/classendstone_1_1Translatable/#public-functions","title":"Public Functions","text":"Type Name Translatable (std::string text, std::vector< std::string > params={}) bool empty () constCheck if the message to be translated is empty. const std::vector< std::string > & getParameters () constGet the translation parameters. const std::string & getText () constGet the text to be translated."},{"location":"reference/cpp/classendstone_1_1Translatable/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Translatable/#function-translatable","title":"function Translatable","text":"
          inline explicit endstone::Translatable::Translatable (\n    std::string text,\n    std::vector< std::string > params={}\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Translatable/#function-empty","title":"function empty","text":"

          Check if the message to be translated is empty.

          inline bool endstone::Translatable::empty () const\n

          Returns:

          true if the message to be translated is empty, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1Translatable/#function-getparameters","title":"function getParameters","text":"

          Get the translation parameters.

          inline const std::vector< std::string > & endstone::Translatable::getParameters () const\n

          Returns:

          the translation parameters

          "},{"location":"reference/cpp/classendstone_1_1Translatable/#function-gettext","title":"function getText","text":"

          Get the text to be translated.

          inline const std::string & endstone::Translatable::getText () const\n

          Returns:

          the text to be translated

          The documentation for this class was generated from the following file include/endstone/lang/translatable.h

          "},{"location":"reference/cpp/classendstone_1_1UUID/","title":"Class endstone::UUID","text":"

          ClassList > endstone > UUID

          Implementation of Universally Unique Identifier ( UUID )More...

          • #include <endstone/util/uuid.h>
          "},{"location":"reference/cpp/classendstone_1_1UUID/#public-attributes","title":"Public Attributes","text":"Type Name std::uint8_t data"},{"location":"reference/cpp/classendstone_1_1UUID/#public-functions","title":"Public Functions","text":"Type Name std::uint8_t * begin () noexcept const uint8_t * begin () noexcept const std::uint8_t * end () noexcept const uint8_t * end () noexcept const bool isNil () noexcept const std::string str () const void swap (UUID & rhs) noexcept int version () noexcept const"},{"location":"reference/cpp/classendstone_1_1UUID/#public-static-functions","title":"Public Static Functions","text":"Type Name constexpr std::size_t size () noexcept"},{"location":"reference/cpp/classendstone_1_1UUID/#detailed-description","title":"Detailed Description","text":"

          Adapted from https://github.com/boostorg/uuid/blob/develop/include/boost/uuid/uuid.hpp

          "},{"location":"reference/cpp/classendstone_1_1UUID/#public-attributes-documentation","title":"Public Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1UUID/#variable-data","title":"variable data","text":"
          std::uint8_t endstone::UUID::data[16];\n
          "},{"location":"reference/cpp/classendstone_1_1UUID/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1UUID/#function-begin-12","title":"function begin [\u00bd]","text":"
          inline std::uint8_t * endstone::UUID::begin () noexcept\n
          "},{"location":"reference/cpp/classendstone_1_1UUID/#function-begin-22","title":"function begin [2/2]","text":"
          inline const uint8_t * endstone::UUID::begin () noexcept const\n
          "},{"location":"reference/cpp/classendstone_1_1UUID/#function-end-12","title":"function end [\u00bd]","text":"
          inline std::uint8_t * endstone::UUID::end () noexcept\n
          "},{"location":"reference/cpp/classendstone_1_1UUID/#function-end-22","title":"function end [2/2]","text":"
          inline const uint8_t * endstone::UUID::end () noexcept const\n
          "},{"location":"reference/cpp/classendstone_1_1UUID/#function-isnil","title":"function isNil","text":"
          inline bool endstone::UUID::isNil () noexcept const\n
          "},{"location":"reference/cpp/classendstone_1_1UUID/#function-str","title":"function str","text":"
          inline std::string endstone::UUID::str () const\n
          "},{"location":"reference/cpp/classendstone_1_1UUID/#function-swap","title":"function swap","text":"
          inline void endstone::UUID::swap (\n    UUID & rhs\n) noexcept\n
          "},{"location":"reference/cpp/classendstone_1_1UUID/#function-version","title":"function version","text":"
          inline int endstone::UUID::version () noexcept const\n
          "},{"location":"reference/cpp/classendstone_1_1UUID/#public-static-functions-documentation","title":"Public Static Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1UUID/#function-size","title":"function size","text":"
          static inline constexpr std::size_t endstone::UUID::size () noexcept\n

          The documentation for this class was generated from the following file include/endstone/util/uuid.h

          "},{"location":"reference/cpp/classendstone_1_1Vector/","title":"Class endstone::Vector","text":"

          template <typename T>

          ClassList > endstone > Vector

          Represents a 3-dimensional vector.

          • #include <endstone/util/vector.h>
          "},{"location":"reference/cpp/classendstone_1_1Vector/#public-functions","title":"Public Functions","text":"Type Name constexpr Vector () constexpr Vector (T x, T y, T z) constexpr T distance (const Vector< T > & other) const constexpr T distanceSquared (const Vector< T > & other) const constexpr T getX () constGets the X component. constexpr T getY () constGets the Y component. constexpr T getZ () constGets the Z component. constexpr T length () constGets the magnitude of the vector, defined as sqrt(x2+y2+z^2). constexpr T lengthSquared () constGets the magnitude of the vector squared. constexpr Vector< T > operator* (const Vector< T > & other) const Vector< T > operator* (T scalar) const Vector< T > & operator*= (const Vector< T > & other) constexpr Vector< T > operator+ (const Vector< T > & other) const Vector< T > operator+ (T scalar) const Vector< T > & operator+= (const Vector< T > & other) constexpr Vector< T > operator- (const Vector< T > & other) const Vector< T > operator- (T scalar) const Vector< T > & operator-= (const Vector< T > & other) constexpr Vector< T > operator/ (const Vector< T > & other) const Vector< T > operator/ (T scalar) const Vector< T > & operator/= (const Vector< T > & other) constexpr bool operator== (const Vector< T > & other) const constexpr void setX (T x) Set the X component. constexpr void setY (T y) Set the Y component. constexpr void setZ (T z) Set the Z component."},{"location":"reference/cpp/classendstone_1_1Vector/#protected-attributes","title":"Protected Attributes","text":"Type Name T x_ T y_ T z_"},{"location":"reference/cpp/classendstone_1_1Vector/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Vector/#function-vector-12","title":"function Vector [\u00bd]","text":"
          inline constexpr endstone::Vector::Vector () \n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-vector-22","title":"function Vector [2/2]","text":"
          inline constexpr endstone::Vector::Vector (\n    T x,\n    T y,\n    T z\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-distance","title":"function distance","text":"
          inline constexpr T endstone::Vector::distance (\n    const Vector < T > & other\n) const\n

          Get the distance between this vector and another.

          Parameters:

          • other The other vector

          Returns:

          the distance

          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-distancesquared","title":"function distanceSquared","text":"
          inline constexpr T endstone::Vector::distanceSquared (\n    const Vector < T > & other\n) const\n

          Get the squared distance between this vector and another.

          Parameters:

          • other The other vector

          Returns:

          the distance

          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-getx","title":"function getX","text":"

          Gets the X component.

          inline constexpr T endstone::Vector::getX () const\n

          Returns:

          The X component.

          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-gety","title":"function getY","text":"

          Gets the Y component.

          inline constexpr T endstone::Vector::getY () const\n

          Returns:

          The Y component.

          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-getz","title":"function getZ","text":"

          Gets the Z component.

          inline constexpr T endstone::Vector::getZ () const\n

          Returns:

          The Z component.

          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-length","title":"function length","text":"

          Gets the magnitude of the vector, defined as sqrt(x2+y2+z^2).

          inline constexpr T endstone::Vector::length () const\n

          Returns:

          the magnitude

          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-lengthsquared","title":"function lengthSquared","text":"

          Gets the magnitude of the vector squared.

          inline constexpr T endstone::Vector::lengthSquared () const\n

          Returns:

          the magnitude

          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator","title":"function operator*","text":"
          inline constexpr Vector < T > endstone::Vector::operator* (\n    const Vector < T > & other\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator_1","title":"function operator*","text":"
          inline Vector < T > endstone::Vector::operator* (\n    T scalar\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator_2","title":"function operator*=","text":"
          inline Vector < T > & endstone::Vector::operator*= (\n    const Vector < T > & other\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator_3","title":"function operator+","text":"
          inline constexpr Vector < T > endstone::Vector::operator+ (\n    const Vector < T > & other\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator_4","title":"function operator+","text":"
          inline Vector < T > endstone::Vector::operator+ (\n    T scalar\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator_5","title":"function operator+=","text":"
          inline Vector < T > & endstone::Vector::operator+= (\n    const Vector < T > & other\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator-","title":"function operator-","text":"
          inline constexpr Vector < T > endstone::Vector::operator- (\n    const Vector < T > & other\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator-_1","title":"function operator-","text":"
          inline Vector < T > endstone::Vector::operator- (\n    T scalar\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator-_2","title":"function operator-=","text":"
          inline Vector < T > & endstone::Vector::operator-= (\n    const Vector < T > & other\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator_6","title":"function operator/","text":"
          inline constexpr Vector < T > endstone::Vector::operator/ (\n    const Vector < T > & other\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator_7","title":"function operator/","text":"
          inline Vector < T > endstone::Vector::operator/ (\n    T scalar\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator_8","title":"function operator/=","text":"
          inline Vector < T > & endstone::Vector::operator/= (\n    const Vector < T > & other\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-operator_9","title":"function operator==","text":"
          inline constexpr bool endstone::Vector::operator== (\n    const Vector < T > & other\n) const\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-setx","title":"function setX","text":"

          Set the X component.

          inline constexpr void endstone::Vector::setX (\n    T x\n) \n

          Parameters:

          • x The new X component.

          Returns:

          This vector.

          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-sety","title":"function setY","text":"

          Set the Y component.

          inline constexpr void endstone::Vector::setY (\n    T y\n) \n

          Parameters:

          • y The new Y component.

          Returns:

          This vector.

          "},{"location":"reference/cpp/classendstone_1_1Vector/#function-setz","title":"function setZ","text":"

          Set the Z component.

          inline constexpr void endstone::Vector::setZ (\n    T z\n) \n

          Parameters:

          • z The new Z component.

          Returns:

          This vector.

          "},{"location":"reference/cpp/classendstone_1_1Vector/#protected-attributes-documentation","title":"Protected Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Vector/#variable-x_","title":"variable x_","text":"
          T endstone::Vector< T >::x_;\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#variable-y_","title":"variable y_","text":"
          T endstone::Vector< T >::y_;\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#variable-z_","title":"variable z_","text":"
          T endstone::Vector< T >::z_;\n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#friends-documentation","title":"Friends Documentation","text":""},{"location":"reference/cpp/classendstone_1_1Vector/#friend-operator","title":"friend operator*","text":"
          inline Vector < T > endstone::Vector::operator* (\n    T scalar,\n    const Vector < T > & v\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#friend-operator_1","title":"friend operator+","text":"
          inline Vector < T > endstone::Vector::operator+ (\n    T scalar,\n    const Vector < T > & v\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#friend-operator-","title":"friend operator-","text":"
          inline Vector < T > endstone::Vector::operator- (\n    T scalar,\n    const Vector < T > & v\n) \n
          "},{"location":"reference/cpp/classendstone_1_1Vector/#friend-operator_2","title":"friend operator/","text":"
          inline Vector < T > endstone::Vector::operator/ (\n    T scalar,\n    const Vector < T > & v\n) \n

          The documentation for this class was generated from the following file include/endstone/util/vector.h

          "},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/","title":"Class endstone::WeatherChangeEvent","text":"

          ClassList > endstone > WeatherChangeEvent

          Called when the weather (rain) state in a world is changing.

          • #include <endstone/event/weather/weather_change_event.h>

          Inherits the following classes: endstone::WeatherEvent

          "},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#public-static-attributes","title":"Public Static Attributes","text":"Type Name const std::string NAME = = \"WeatherChangeEvent\""},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#public-functions","title":"Public Functions","text":"Type Name WeatherChangeEvent (Level & level, bool to) virtual std::string getEventName () override const virtual bool isCancellable () override const bool toWeatherState () const ~WeatherChangeEvent () override"},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#public-functions-inherited-from-endstoneweatherevent","title":"Public Functions inherited from endstone::WeatherEvent","text":"

          See endstone::WeatherEvent

          Type Name WeatherEvent (Level & level) Level & getLevel () const ~WeatherEvent () override"},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#public-static-attributes-documentation","title":"Public Static Attributes Documentation","text":""},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#variable-name","title":"variable NAME","text":"
          const std::string endstone::WeatherChangeEvent::NAME;\n
          "},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#function-weatherchangeevent","title":"function WeatherChangeEvent","text":"
          inline endstone::WeatherChangeEvent::WeatherChangeEvent (\n    Level & level,\n    bool to\n) \n
          "},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#function-geteventname","title":"function getEventName","text":"
          inline virtual std::string endstone::WeatherChangeEvent::getEventName () override const\n

          Gets a user-friendly identifier for this event.

          Returns:

          name of this event

          Implements endstone::Event::getEventName

          "},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#function-iscancellable","title":"function isCancellable","text":"
          inline virtual bool endstone::WeatherChangeEvent::isCancellable () override const\n

          Whether the event can be cancelled by a plugin or the server.

          Returns:

          true if this event can be cancelled

          Implements endstone::Event::isCancellable

          "},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#function-toweatherstate","title":"function toWeatherState","text":"
          inline bool endstone::WeatherChangeEvent::toWeatherState () const\n

          Gets the state of weather that the world is being set to

          Returns:

          true if the weather is being set to raining, false otherwise

          "},{"location":"reference/cpp/classendstone_1_1WeatherChangeEvent/#function-weatherchangeevent_1","title":"function ~WeatherChangeEvent","text":"
          endstone::WeatherChangeEvent::~WeatherChangeEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/weather/weather_change_event.h

          "},{"location":"reference/cpp/classendstone_1_1WeatherEvent/","title":"Class endstone::WeatherEvent","text":"

          ClassList > endstone > WeatherEvent

          Represents a Weather-related event.

          • #include <endstone/event/weather/weather_event.h>

          Inherits the following classes: endstone::Event

          Inherited by the following classes: endstone::ThunderChangeEvent, endstone::WeatherChangeEvent

          "},{"location":"reference/cpp/classendstone_1_1WeatherEvent/#public-functions","title":"Public Functions","text":"Type Name WeatherEvent (Level & level) Level & getLevel () const ~WeatherEvent () override"},{"location":"reference/cpp/classendstone_1_1WeatherEvent/#public-functions-inherited-from-endstoneevent","title":"Public Functions inherited from endstone::Event","text":"

          See endstone::Event

          Type Name Event (bool async=false) Event (const Event &) = delete virtual std::string getEventName () const = 0 bool isAsynchronous () const virtual bool isCancellable () const = 0 bool isCancelled () const Event & operator= (const Event &) = delete void setCancelled (bool cancel) virtual ~Event () = default"},{"location":"reference/cpp/classendstone_1_1WeatherEvent/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/classendstone_1_1WeatherEvent/#function-weatherevent","title":"function WeatherEvent","text":"
          inline explicit endstone::WeatherEvent::WeatherEvent (\n    Level & level\n) \n
          "},{"location":"reference/cpp/classendstone_1_1WeatherEvent/#function-getlevel","title":"function getLevel","text":"
          inline Level & endstone::WeatherEvent::getLevel () const\n

          Returns the Level where this event is occurring

          Returns:

          Level this event is occurring in

          "},{"location":"reference/cpp/classendstone_1_1WeatherEvent/#function-weatherevent_1","title":"function ~WeatherEvent","text":"
          endstone::WeatherEvent::~WeatherEvent () override\n

          The documentation for this class was generated from the following file include/endstone/event/weather/weather_event.h

          "},{"location":"reference/cpp/namespaceendstone_1_1detail/","title":"Namespace endstone::detail","text":"

          Namespace List > endstone > detail

          The documentation for this class was generated from the following file include/endstone/inventory/item_stack.h

          "},{"location":"reference/cpp/structendstone_1_1overloaded/","title":"Struct endstone::overloaded","text":"

          template <typename... Func>

          ClassList > endstone > overloaded

          Helper type for visitors. More...

          • #include <endstone/endstone.h>

          Inherits the following classes: endstone::Func

          "},{"location":"reference/cpp/structendstone_1_1overloaded/#detailed-description","title":"Detailed Description","text":"

          Template parameters:

          • Func Types of function objects.

          The documentation for this class was generated from the following file include/endstone/endstone.h

          "},{"location":"reference/cpp/namespacefmt/","title":"Namespace fmt","text":"

          Namespace List > fmt

          "},{"location":"reference/cpp/namespacefmt/#classes","title":"Classes","text":"Type Name struct formatter< endstone::Block > <> struct formatter< endstone::BlockData > <> struct formatter< endstone::BlockState > <> struct formatter< endstone::BlockStates > <> struct formatter< endstone::BlockStates::mapped_type > <> struct formatter< endstone::BlockStates::value_type > <> struct formatter< endstone::ItemStack > <>

          The documentation for this class was generated from the following file include/endstone/block/block.h

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1Block_01_4/","title":"Struct fmt::formatter< endstone::Block >","text":"

          template <>

          ClassList > fmt > formatter< endstone::Block >

          Inherits the following classes: formatter< string_view >

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1Block_01_4/#public-types","title":"Public Types","text":"Type Name typedef endstone::Block Type"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1Block_01_4/#public-functions","title":"Public Functions","text":"Type Name auto format (const Type & val, FormatContext & ctx) const"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1Block_01_4/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1Block_01_4/#typedef-type","title":"typedef Type","text":"
          using fmt::formatter< endstone::Block >::Type =  endstone::Block;\n
          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1Block_01_4/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1Block_01_4/#function-format","title":"function format","text":"
          template<typename FormatContext>\ninline auto fmt::formatter< endstone::Block >::format (\n    const Type & val,\n    FormatContext & ctx\n) const\n

          The documentation for this class was generated from the following file include/endstone/block/block.h

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockData_01_4/","title":"Struct fmt::formatter< endstone::BlockData >","text":"

          template <>

          ClassList > fmt > formatter< endstone::BlockData >

          Inherits the following classes: formatter< string_view >

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockData_01_4/#public-types","title":"Public Types","text":"Type Name typedef endstone::BlockData Type"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockData_01_4/#public-functions","title":"Public Functions","text":"Type Name auto format (const Type & val, FormatContext & ctx) const"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockData_01_4/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockData_01_4/#typedef-type","title":"typedef Type","text":"
          using fmt::formatter< endstone::BlockData >::Type =  endstone::BlockData;\n
          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockData_01_4/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockData_01_4/#function-format","title":"function format","text":"
          template<typename FormatContext>\ninline auto fmt::formatter< endstone::BlockData >::format (\n    const Type & val,\n    FormatContext & ctx\n) const\n

          The documentation for this class was generated from the following file include/endstone/block/block_data.h

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockState_01_4/","title":"Struct fmt::formatter< endstone::BlockState >","text":"

          template <>

          ClassList > fmt > formatter< endstone::BlockState >

          Inherits the following classes: formatter< string_view >

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockState_01_4/#public-types","title":"Public Types","text":"Type Name typedef endstone::BlockState Type"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockState_01_4/#public-functions","title":"Public Functions","text":"Type Name auto format (const Type & val, FormatContext & ctx) const"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockState_01_4/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockState_01_4/#typedef-type","title":"typedef Type","text":"
          using fmt::formatter< endstone::BlockState >::Type =  endstone::BlockState;\n
          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockState_01_4/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockState_01_4/#function-format","title":"function format","text":"
          template<typename FormatContext>\ninline auto fmt::formatter< endstone::BlockState >::format (\n    const Type & val,\n    FormatContext & ctx\n) const\n

          The documentation for this class was generated from the following file include/endstone/block/block_state.h

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_01_4/","title":"Struct fmt::formatter< endstone::BlockStates >","text":"

          template <>

          ClassList > fmt > formatter< endstone::BlockStates >

          Inherits the following classes: formatter< string_view >

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_01_4/#public-types","title":"Public Types","text":"Type Name typedef endstone::BlockStates Type"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_01_4/#public-functions","title":"Public Functions","text":"Type Name auto format (const Type & val, FormatContext & ctx) const"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_01_4/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_01_4/#typedef-type","title":"typedef Type","text":"
          using fmt::formatter< endstone::BlockStates >::Type =  endstone::BlockStates;\n
          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_01_4/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_01_4/#function-format","title":"function format","text":"
          template<typename FormatContext>\ninline auto fmt::formatter< endstone::BlockStates >::format (\n    const Type & val,\n    FormatContext & ctx\n) const\n

          The documentation for this class was generated from the following file include/endstone/block/block_data.h

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1mapped__type_01_4/","title":"Struct fmt::formatter< endstone::BlockStates::mapped_type >","text":"

          template <>

          ClassList > fmt > formatter< endstone::BlockStates::mapped_type >

          Inherits the following classes: formatter< string_view >

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1mapped__type_01_4/#public-types","title":"Public Types","text":"Type Name typedef endstone::BlockStates::mapped_type Type"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1mapped__type_01_4/#public-functions","title":"Public Functions","text":"Type Name auto format (const Type & val, FormatContext & ctx) const"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1mapped__type_01_4/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1mapped__type_01_4/#typedef-type","title":"typedef Type","text":"
          using fmt::formatter< endstone::BlockStates::mapped_type >::Type =  endstone::BlockStates::mapped_type;\n
          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1mapped__type_01_4/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1mapped__type_01_4/#function-format","title":"function format","text":"
          template<typename FormatContext>\ninline auto fmt::formatter< endstone::BlockStates::mapped_type >::format (\n    const Type & val,\n    FormatContext & ctx\n) const\n

          The documentation for this class was generated from the following file include/endstone/block/block_data.h

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1value__type_01_4/","title":"Struct fmt::formatter< endstone::BlockStates::value_type >","text":"

          template <>

          ClassList > fmt > formatter< endstone::BlockStates::value_type >

          Inherits the following classes: formatter< string_view >

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1value__type_01_4/#public-types","title":"Public Types","text":"Type Name typedef endstone::BlockStates::value_type Type"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1value__type_01_4/#public-functions","title":"Public Functions","text":"Type Name auto format (const Type & val, FormatContext & ctx) const"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1value__type_01_4/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1value__type_01_4/#typedef-type","title":"typedef Type","text":"
          using fmt::formatter< endstone::BlockStates::value_type >::Type =  endstone::BlockStates::value_type;\n
          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1value__type_01_4/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1value__type_01_4/#function-format","title":"function format","text":"
          template<typename FormatContext>\ninline auto fmt::formatter< endstone::BlockStates::value_type >::format (\n    const Type & val,\n    FormatContext & ctx\n) const\n

          The documentation for this class was generated from the following file include/endstone/block/block_data.h

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1ItemStack_01_4/","title":"Struct fmt::formatter< endstone::ItemStack >","text":"

          template <>

          ClassList > fmt > formatter< endstone::ItemStack >

          Inherits the following classes: formatter< string_view >

          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1ItemStack_01_4/#public-types","title":"Public Types","text":"Type Name typedef endstone::ItemStack Type"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1ItemStack_01_4/#public-functions","title":"Public Functions","text":"Type Name auto format (const Type & val, FormatContext & ctx) const"},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1ItemStack_01_4/#public-types-documentation","title":"Public Types Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1ItemStack_01_4/#typedef-type","title":"typedef Type","text":"
          using fmt::formatter< endstone::ItemStack >::Type =  endstone::ItemStack;\n
          "},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1ItemStack_01_4/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/structfmt_1_1formatter_3_01endstone_1_1ItemStack_01_4/#function-format","title":"function format","text":"
          template<typename FormatContext>\ninline auto fmt::formatter< endstone::ItemStack >::format (\n    const Type & val,\n    FormatContext & ctx\n) const\n

          The documentation for this class was generated from the following file include/endstone/inventory/item_stack.h

          "},{"location":"reference/cpp/namespacestd/","title":"Namespace std","text":"

          Namespace List > std

          "},{"location":"reference/cpp/namespacestd/#classes","title":"Classes","text":"Type Name struct hash< endstone::UUID > <>

          The documentation for this class was generated from the following file include/endstone/util/uuid.h

          "},{"location":"reference/cpp/structstd_1_1hash_3_01endstone_1_1UUID_01_4/","title":"Struct std::hash< endstone::UUID >","text":"

          template <>

          ClassList > std > hash< endstone::UUID >

          "},{"location":"reference/cpp/structstd_1_1hash_3_01endstone_1_1UUID_01_4/#public-functions","title":"Public Functions","text":"Type Name std::size_t operator() (const endstone::UUID & value) noexcept const"},{"location":"reference/cpp/structstd_1_1hash_3_01endstone_1_1UUID_01_4/#public-functions-documentation","title":"Public Functions Documentation","text":""},{"location":"reference/cpp/structstd_1_1hash_3_01endstone_1_1UUID_01_4/#function-operator","title":"function operator()","text":"
          inline std::size_t std::hash< endstone::UUID >::operator() (\n    const endstone::UUID & value\n) noexcept const\n

          The documentation for this class was generated from the following file include/endstone/util/uuid.h

          "},{"location":"reference/cpp/dir_d44c64559bbebec7f509842c48db8b23/","title":"Dir include","text":"

          FileList > include

          "},{"location":"reference/cpp/dir_d44c64559bbebec7f509842c48db8b23/#directories","title":"Directories","text":"Type Name dir endstone

          The documentation for this class was generated from the following file include/

          "},{"location":"reference/cpp/dir_6cf277b678674f97c7a2b6b3b2447b33/","title":"Dir include/endstone","text":"

          FileList > endstone

          "},{"location":"reference/cpp/dir_6cf277b678674f97c7a2b6b3b2447b33/#files","title":"Files","text":"Type Name file color_format.h file endstone.h file game_mode.h file logger.h file message.h file player.h file server.h file skin.h"},{"location":"reference/cpp/dir_6cf277b678674f97c7a2b6b3b2447b33/#directories","title":"Directories","text":"Type Name dir actor dir ban dir block dir boss dir command dir event dir form dir inventory dir lang dir level dir network dir permissions dir plugin dir scheduler dir scoreboard dir util

          The documentation for this class was generated from the following file include/endstone/

          "},{"location":"reference/cpp/color__format_8h/","title":"File color_format.h","text":"

          FileList > endstone > color_format.h

          Go to the source code of this file

          • #include <string>
          "},{"location":"reference/cpp/color__format_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/color__format_8h/#classes","title":"Classes","text":"Type Name struct ColorFormat All supported color and format codes.

          The documentation for this class was generated from the following file include/endstone/color_format.h

          "},{"location":"reference/cpp/color__format_8h_source/","title":"File color_format.h","text":"

          File List > endstone > color_format.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n\nnamespace endstone {\n\nstruct ColorFormat {\n    // Escape\n    inline static const std::string Escape = \"\u00a7\";\n\n    // Color code\n    inline static const std::string Black = Escape + '0';\n    inline static const std::string DarkBlue = Escape + '1';\n    inline static const std::string DarkGreen = Escape + '2';\n    inline static const std::string DarkAqua = Escape + '3';\n    inline static const std::string DarkRed = Escape + '4';\n    inline static const std::string DarkPurple = Escape + '5';\n    inline static const std::string Gold = Escape + '6';\n    inline static const std::string Gray = Escape + '7';\n    inline static const std::string DarkGray = Escape + '8';\n    inline static const std::string Blue = Escape + '9';\n    inline static const std::string Green = Escape + 'a';\n    inline static const std::string Aqua = Escape + 'b';\n    inline static const std::string Red = Escape + 'c';\n    inline static const std::string LightPurple = Escape + 'd';\n    inline static const std::string Yellow = Escape + 'e';\n    inline static const std::string White = Escape + 'f';\n    inline static const std::string MinecoinGold = Escape + 'g';\n    inline static const std::string MaterialQuartz = Escape + 'h';\n    inline static const std::string MaterialIron = Escape + 'i';\n    inline static const std::string MaterialNetherite = Escape + 'j';\n    inline static const std::string MaterialRedstone = Escape + 'm';\n    inline static const std::string MaterialCopper = Escape + 'n';\n    inline static const std::string MaterialGold = Escape + 'p';\n    inline static const std::string MaterialEmerald = Escape + 'q';\n    inline static const std::string MaterialDiamond = Escape + 's';\n    inline static const std::string MaterialLapis = Escape + 't';\n    inline static const std::string MaterialAmethyst = Escape + 'u';\n\n    // Format code\n    inline static const std::string Obfuscated = Escape + 'k';\n    inline static const std::string Bold = Escape + 'l';\n    inline static const std::string Italic = Escape + 'o';\n    inline static const std::string Reset = Escape + 'r';\n};  // namespace ColorFormat\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/endstone_8h/","title":"File endstone.h","text":"

          FileList > endstone > endstone.h

          Go to the source code of this file

          "},{"location":"reference/cpp/endstone_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/endstone_8h/#classes","title":"Classes","text":"Type Name struct overloaded <Func>Helper type for visitors."},{"location":"reference/cpp/endstone_8h/#macros","title":"Macros","text":"Type Name define ENDSTONE_API_VERSION ENDSTONE_TOSTRING(ENDSTONE_VERSION_MAJOR) \".\" ENDSTONE_TOSTRING(ENDSTONE_VERSION_MINOR) define ENDSTONE_EXPORT __attribute__((visibility(\"default\"))) define ENDSTONE_MAX_PLAYERS 200 define ENDSTONE_NOINLINE __attribute__((noinline)) inline define ENDSTONE_STRINGIFY (x) #x define ENDSTONE_TOSTRING (x) ENDSTONE_STRINGIFY(x) define ENDSTONE_VERSION_MAJOR 0 define ENDSTONE_VERSION_MINOR 5 define ENDSTONE_VERSION_PATCH 6"},{"location":"reference/cpp/endstone_8h/#macro-definition-documentation","title":"Macro Definition Documentation","text":""},{"location":"reference/cpp/endstone_8h/#define-endstone_api_version","title":"define ENDSTONE_API_VERSION","text":"
          #define ENDSTONE_API_VERSION ENDSTONE_TOSTRING(ENDSTONE_VERSION_MAJOR) \".\" ENDSTONE_TOSTRING(ENDSTONE_VERSION_MINOR)\n
          "},{"location":"reference/cpp/endstone_8h/#define-endstone_export","title":"define ENDSTONE_EXPORT","text":"
          #define ENDSTONE_EXPORT __attribute__((visibility(\"default\")))\n
          "},{"location":"reference/cpp/endstone_8h/#define-endstone_max_players","title":"define ENDSTONE_MAX_PLAYERS","text":"
          #define ENDSTONE_MAX_PLAYERS 200\n
          "},{"location":"reference/cpp/endstone_8h/#define-endstone_noinline","title":"define ENDSTONE_NOINLINE","text":"
          #define ENDSTONE_NOINLINE __attribute__((noinline)) inline\n
          "},{"location":"reference/cpp/endstone_8h/#define-endstone_stringify","title":"define ENDSTONE_STRINGIFY","text":"
          #define ENDSTONE_STRINGIFY (\n    x\n) #x\n
          "},{"location":"reference/cpp/endstone_8h/#define-endstone_tostring","title":"define ENDSTONE_TOSTRING","text":"
          #define ENDSTONE_TOSTRING (\n    x\n) ENDSTONE_STRINGIFY(x)\n
          "},{"location":"reference/cpp/endstone_8h/#define-endstone_version_major","title":"define ENDSTONE_VERSION_MAJOR","text":"
          #define ENDSTONE_VERSION_MAJOR 0\n
          "},{"location":"reference/cpp/endstone_8h/#define-endstone_version_minor","title":"define ENDSTONE_VERSION_MINOR","text":"
          #define ENDSTONE_VERSION_MINOR 5\n
          "},{"location":"reference/cpp/endstone_8h/#define-endstone_version_patch","title":"define ENDSTONE_VERSION_PATCH","text":"
          #define ENDSTONE_VERSION_PATCH 6\n

          The documentation for this class was generated from the following file include/endstone/endstone.h

          "},{"location":"reference/cpp/endstone_8h_source/","title":"File endstone.h","text":"

          File List > endstone > endstone.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#define ENDSTONE_STRINGIFY(x) #x\n#define ENDSTONE_TOSTRING(x)  ENDSTONE_STRINGIFY(x)\n\n#define ENDSTONE_VERSION_MAJOR 0\n#define ENDSTONE_VERSION_MINOR 5\n#define ENDSTONE_VERSION_PATCH 6\n#define ENDSTONE_API_VERSION   ENDSTONE_TOSTRING(ENDSTONE_VERSION_MAJOR) \".\" ENDSTONE_TOSTRING(ENDSTONE_VERSION_MINOR)\n\n#define ENDSTONE_MAX_PLAYERS 200\n\n#if defined(WIN32) || defined(_WIN32)\n#define ENDSTONE_EXPORT __declspec(dllexport)\n#else\n#define ENDSTONE_EXPORT __attribute__((visibility(\"default\")))\n#endif\n\n#if defined(_MSC_VER)\n#define ENDSTONE_NOINLINE __declspec(noinline) inline\n#else\n#define ENDSTONE_NOINLINE __attribute__((noinline)) inline\n#endif\n\n#ifdef _WIN32\n#define ENDSTONE_VARIANT_WIN32_LINUX(win32, linux) win32\n#elif __linux__\n#define ENDSTONE_VARIANT_WIN32_LINUX(win32, linux) linux\n#endif\n\nnamespace endstone {\ntemplate <typename... Func>\nstruct overloaded : Func... {\n  using Func::operator()...;\n};\n\ntemplate <typename... Func>\noverloaded(Func...) -> overloaded<Func...>;\n}  // namespace endstone\n
          "},{"location":"reference/cpp/game__mode_8h/","title":"File game_mode.h","text":"

          FileList > endstone > game_mode.h

          Go to the source code of this file

          "},{"location":"reference/cpp/game__mode_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/game_mode.h

          "},{"location":"reference/cpp/game__mode_8h_source/","title":"File game_mode.h","text":"

          File List > endstone > game_mode.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class GameMode {\n    Survival = 0,\n\n    Creative = 1,\n\n    Adventure = 2,\n\n    Spectator = 3,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_dd7779a583e02d88c9a89a2c881c3946/","title":"Dir include/endstone/actor","text":"

          FileList > actor

          "},{"location":"reference/cpp/dir_dd7779a583e02d88c9a89a2c881c3946/#files","title":"Files","text":"Type Name file actor.h file mob.h

          The documentation for this class was generated from the following file include/endstone/actor/

          "},{"location":"reference/cpp/actor_8h/","title":"File actor.h","text":"

          FileList > actor > actor.h

          Go to the source code of this file

          • #include \"endstone/command/command_sender.h\"
          • #include \"endstone/level/location.h\"
          • #include \"endstone/level/position.h\"
          "},{"location":"reference/cpp/actor_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/actor_8h/#classes","title":"Classes","text":"Type Name class Actor Represents a base actor in the level.

          The documentation for this class was generated from the following file include/endstone/actor/actor.h

          "},{"location":"reference/cpp/actor_8h_source/","title":"File actor.h","text":"

          File List > actor > actor.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/command/command_sender.h\"\n#include \"endstone/level/location.h\"\n#include \"endstone/level/position.h\"\n\nnamespace endstone {\n\nclass Actor : public CommandSender {\npublic:\n    // CommandSender\n    [[nodiscard]] Actor *asActor() const override\n    {\n        return const_cast<Actor *>(this);\n    }\n\n    [[nodiscard]] virtual std::uint64_t getRuntimeId() const = 0;\n\n    [[nodiscard]] virtual Location getLocation() const = 0;\n\n    [[nodiscard]] virtual Vector<float> getVelocity() const = 0;\n\n    [[nodiscard]] virtual bool isOnGround() const = 0;\n\n    [[nodiscard]] virtual bool isInWater() const = 0;\n\n    [[nodiscard]] virtual bool isInLava() const = 0;\n\n    [[nodiscard]] virtual Level &getLevel() const = 0;\n\n    [[nodiscard]] virtual Dimension &getDimension() const = 0;\n\n    virtual void setRotation(float yaw, float pitch) = 0;\n\n    virtual void teleport(Location location) = 0;\n\n    virtual void teleport(Actor &target) = 0;\n\n    [[nodiscard]] virtual std::int64_t getId() const = 0;\n\n    [[nodiscard]] virtual bool isDead() const = 0;\n\n    [[nodiscard]] virtual int getHealth() const = 0;\n\n    [[nodiscard]] virtual Result<void> setHealth(int health) const = 0;\n\n    [[nodiscard]] virtual int getMaxHealth() const = 0;\n\n    [[nodiscard]] virtual std::vector<std::string> getScoreboardTags() const = 0;\n\n    [[nodiscard]] virtual bool addScoreboardTag(std::string tag) const = 0;\n\n    [[nodiscard]] virtual bool removeScoreboardTag(std::string tag) const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/mob_8h/","title":"File mob.h","text":"

          FileList > actor > mob.h

          Go to the source code of this file

          • #include \"endstone/actor/actor.h\"
          "},{"location":"reference/cpp/mob_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/mob_8h/#classes","title":"Classes","text":"Type Name class Mob Represents a mobile entity (i.e. living entity), such as a monster or player.

          The documentation for this class was generated from the following file include/endstone/actor/mob.h

          "},{"location":"reference/cpp/mob_8h_source/","title":"File mob.h","text":"

          File List > actor > mob.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/actor/actor.h\"\n\nnamespace endstone {\nclass Mob : public Actor {\npublic:\n    [[nodiscard]] virtual bool isGliding() const = 0;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_f1b1f2e9abb31749ef58cd98f22bcd78/","title":"Dir include/endstone/ban","text":"

          FileList > ban

          "},{"location":"reference/cpp/dir_f1b1f2e9abb31749ef58cd98f22bcd78/#files","title":"Files","text":"Type Name file ban_list.h

          The documentation for this class was generated from the following file include/endstone/ban/

          "},{"location":"reference/cpp/ban__list_8h/","title":"File ban_list.h","text":"

          FileList > ban > ban_list.h

          Go to the source code of this file

          • #include <vector>
          • #include <string>
          • #include <optional>
          • #include <chrono>
          "},{"location":"reference/cpp/ban__list_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/ban__list_8h/#classes","title":"Classes","text":"Type Name class BanList <typename T>A class that represents a ban list, containing bans of some target type.

          The documentation for this class was generated from the following file include/endstone/ban/ban_list.h

          "},{"location":"reference/cpp/ban__list_8h_source/","title":"File ban_list.h","text":"

          File List > ban > ban_list.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <vector>\n#include <string>\n#include <optional>\n#include <chrono>\n\nnamespace endstone {\n\ntemplate <typename T>\nclass BanList {\npublic:\n    virtual ~BanList() = default;\n\n    virtual BanEntry<T>* getBanEntry(T target) const = 0;\n\n    virtual BanEntry<T>& addBan(T target,\n                                std::optional<std::string> reason,\n                                std::optional<std::chrono::system_clock::time_point> expires,\n                                std::optional<std::string> source) = 0;\n\n    virtual BanEntry<T>& addBan(T target,\n                                std::optional<std::string> reason,\n                                std::optional<std::chrono::seconds> duration,\n                                std::optional<std::string> source) = 0;\n\n    virtual std::vector<BanEntry<T>*> getEntries() const = 0;\n\n    virtual bool isBanned(T target) const = 0;\n\n    virtual void removeBan(T target) = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_faca67fc60a7463eb1bd30eabe023cf1/","title":"Dir include/endstone/block","text":"

          FileList > block

          "},{"location":"reference/cpp/dir_faca67fc60a7463eb1bd30eabe023cf1/#files","title":"Files","text":"Type Name file block.h file block_data.h file block_face.h file block_state.h

          The documentation for this class was generated from the following file include/endstone/block/

          "},{"location":"reference/cpp/block_8h/","title":"File block.h","text":"

          FileList > block > block.h

          Go to the source code of this file

          • #include <memory>
          • #include <string>
          • #include \"endstone/block/block_data.h\"
          • #include \"endstone/block/block_face.h\"
          • #include \"endstone/level/location.h\"
          • #include \"endstone/util/result.h\"
          "},{"location":"reference/cpp/block_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone namespace fmt"},{"location":"reference/cpp/block_8h/#classes","title":"Classes","text":"Type Name class Block Represents a block. struct formatter< endstone::Block > <>

          The documentation for this class was generated from the following file include/endstone/block/block.h

          "},{"location":"reference/cpp/block_8h_source/","title":"File block.h","text":"

          File List > block > block.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <memory>\n#include <string>\n\n#include \"endstone/block/block_data.h\"\n#include \"endstone/block/block_face.h\"\n#include \"endstone/level/location.h\"\n#include \"endstone/util/result.h\"\n\nnamespace endstone {\n\nclass BlockState;\n\nclass Dimension;\n\nclass Block {\npublic:\n    virtual ~Block() = default;\n\n    [[nodiscard]] virtual bool isValid() const = 0;\n\n    [[nodiscard]] virtual Result<std::string> getType() const = 0;\n\n    virtual Result<void> setType(std::string type) = 0;\n\n    virtual Result<void> setType(std::string type, bool apply_physics) = 0;\n\n    [[nodiscard]] virtual Result<std::shared_ptr<BlockData>> getData() const = 0;\n\n    virtual Result<void> setData(std::shared_ptr<BlockData> data) = 0;\n\n    virtual Result<void> setData(std::shared_ptr<BlockData> data, bool apply_physics) = 0;\n\n    virtual Result<std::unique_ptr<Block>> getRelative(int offset_x, int offset_y, int offset_z) = 0;\n\n    virtual Result<std::unique_ptr<Block>> getRelative(BlockFace face) = 0;\n\n    virtual Result<std::unique_ptr<Block>> getRelative(BlockFace face, int distance) = 0;\n\n    [[nodiscard]] virtual Dimension &getDimension() const = 0;\n\n    [[nodiscard]] virtual int getX() const = 0;\n\n    [[nodiscard]] virtual int getY() const = 0;\n\n    [[nodiscard]] virtual int getZ() const = 0;\n\n    [[nodiscard]] virtual Location getLocation() const = 0;\n\n    [[nodiscard]] virtual std::shared_ptr<BlockState> captureState() const = 0;\n};\n\n}  // namespace endstone\n\nnamespace fmt {\ntemplate <>\nstruct formatter<endstone::Block> : formatter<string_view> {\n    using Type = endstone::Block;\n\n    template <typename FormatContext>\n    auto format(const Type &val, FormatContext &ctx) const -> format_context::iterator\n    {\n        auto it = ctx.out();\n        it = format_to(it, \"Block(pos=BlockPos(x={}, y={}, z={}), type={}\", val.getX(), val.getY(), val.getZ(),\n                       val.getType().value_or(\"INVALID\"));\n        if (auto data = val.getData()) {\n            it = format_to(it, \", data={}\", *data.value());\n        }\n        else {\n            it = format_to(it, \", data=INVALID\");\n        }\n        it = format_to(it, \")\");\n        return it;\n    }\n};\n}  // namespace fmt\n
          "},{"location":"reference/cpp/block__data_8h/","title":"File block_data.h","text":"

          FileList > block > block_data.h

          Go to the source code of this file

          • #include <string>
          • #include <unordered_map>
          • #include <variant>
          • #include <fmt/format.h>
          • #include \"endstone/endstone.h\"
          "},{"location":"reference/cpp/block__data_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone namespace fmt"},{"location":"reference/cpp/block__data_8h/#classes","title":"Classes","text":"Type Name class BlockData Represents the data related to a live block. struct formatter< endstone::BlockData > <> struct formatter< endstone::BlockStates > <> struct formatter< endstone::BlockStates::mapped_type > <> struct formatter< endstone::BlockStates::value_type > <>

          The documentation for this class was generated from the following file include/endstone/block/block_data.h

          "},{"location":"reference/cpp/block__data_8h_source/","title":"File block_data.h","text":"

          File List > block > block_data.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <unordered_map>\n#include <variant>\n\n#include <fmt/format.h>\n\n#include \"endstone/endstone.h\"\n\nnamespace endstone {\n\nusing BlockStates = std::unordered_map<std::string, std::variant<bool, std::string, int>>;\n\nclass BlockData : public std::enable_shared_from_this<BlockData> {\npublic:\n    virtual ~BlockData() = default;\n\n    [[nodiscard]] virtual std::string getType() const = 0;\n\n    [[nodiscard]] virtual BlockStates getBlockStates() const = 0;\n};\n\n}  // namespace endstone\n\nnamespace fmt {\n\ntemplate <>\nstruct formatter<endstone::BlockStates::mapped_type> : formatter<string_view> {\n    using Type = endstone::BlockStates::mapped_type;\n\n    template <typename FormatContext>\n    auto format(const Type &val, FormatContext &ctx) const -> format_context::iterator\n    {\n        return std::visit(endstone::overloaded{\n                              [&ctx](const std::string &arg) { return format_to(ctx.out(), \"{:?}\", arg); },\n                              [&ctx](auto &&arg) { return format_to(ctx.out(), \"{}\", arg); },\n                          },\n                          val);\n    }\n};\n\ntemplate <>\nstruct formatter<endstone::BlockStates::value_type> : formatter<string_view> {\n    using Type = endstone::BlockStates::value_type;\n\n    template <typename FormatContext>\n    auto format(const Type &val, FormatContext &ctx) const -> format_context::iterator\n    {\n        return format_to(ctx.out(), \"{:?}={}\", val.first, val.second);\n    }\n};\n\ntemplate <>\nstruct formatter<endstone::BlockStates> : formatter<string_view> {\n    using Type = endstone::BlockStates;\n\n    template <typename FormatContext>\n    auto format(const Type &val, FormatContext &ctx) const -> format_context::iterator\n    {\n        return format_to(ctx.out(), \"[{}]\", join(val.begin(), val.end(), \",\"));\n    }\n};\n\ntemplate <>\nstruct formatter<endstone::BlockData> : formatter<string_view> {\n    using Type = endstone::BlockData;\n\n    template <typename FormatContext>\n    auto format(const Type &val, FormatContext &ctx) const -> format_context::iterator\n    {\n        return format_to(ctx.out(), \"BlockData(type={}, block_states={})\", val.getType(), val.getBlockStates());\n    }\n};\n}  // namespace fmt\n
          "},{"location":"reference/cpp/block__face_8h/","title":"File block_face.h","text":"

          FileList > block > block_face.h

          Go to the source code of this file

          "},{"location":"reference/cpp/block__face_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/block/block_face.h

          "},{"location":"reference/cpp/block__face_8h_source/","title":"File block_face.h","text":"

          File List > block > block_face.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class BlockFace {\n    Down,\n    Up,\n    North,\n    South,\n    West,\n    East,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/block__state_8h/","title":"File block_state.h","text":"

          FileList > block > block_state.h

          Go to the source code of this file

          • #include <fmt/format.h>
          • #include \"endstone/block/block.h\"
          • #include \"endstone/util/result.h\"
          "},{"location":"reference/cpp/block__state_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone namespace fmt"},{"location":"reference/cpp/block__state_8h/#classes","title":"Classes","text":"Type Name class BlockState Represents a captured state of a block, which will not update automatically. struct formatter< endstone::BlockState > <>

          The documentation for this class was generated from the following file include/endstone/block/block_state.h

          "},{"location":"reference/cpp/block__state_8h_source/","title":"File block_state.h","text":"

          File List > block > block_state.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <fmt/format.h>\n\n#include \"endstone/block/block.h\"\n#include \"endstone/util/result.h\"\n\nnamespace endstone {\n\nclass BlockState : public std::enable_shared_from_this<BlockState> {\npublic:\n    virtual ~BlockState() = default;\n\n    [[nodiscard]] virtual Result<std::unique_ptr<Block>> getBlock() const = 0;\n\n    [[nodiscard]] virtual std::string getType() const = 0;\n\n    virtual Result<void> setType(std::string type) = 0;\n\n    [[nodiscard]] virtual std::shared_ptr<BlockData> getData() const = 0;\n\n    virtual Result<void> setData(std::shared_ptr<BlockData> data) = 0;\n\n    [[nodiscard]] virtual Dimension &getDimension() const = 0;\n\n    [[nodiscard]] virtual int getX() const = 0;\n\n    [[nodiscard]] virtual int getY() const = 0;\n\n    [[nodiscard]] virtual int getZ() const = 0;\n\n    [[nodiscard]] virtual Location getLocation() const = 0;\n\n    virtual Result<bool> update() = 0;\n\n    virtual Result<bool> update(bool force) = 0;\n\n    virtual Result<bool> update(bool force, bool apply_physics) = 0;\n};\n}  // namespace endstone\n\nnamespace fmt {\ntemplate <>\nstruct formatter<endstone::BlockState> : formatter<string_view> {\n    using Type = endstone::BlockState;\n\n    template <typename FormatContext>\n    auto format(const Type &val, FormatContext &ctx) const -> format_context::iterator\n    {\n        return format_to(ctx.out(), \"BlockState(pos=BlockPos(x={}, y={}, z={}), type={}, data={})\", val.getX(),\n                         val.getY(), val.getZ(), val.getType(), *val.getData());\n    }\n};\n}  // namespace fmt\n
          "},{"location":"reference/cpp/dir_d0a7fd8d5b72659767e2a2651b1ff51c/","title":"Dir include/endstone/boss","text":"

          FileList > boss

          "},{"location":"reference/cpp/dir_d0a7fd8d5b72659767e2a2651b1ff51c/#files","title":"Files","text":"Type Name file bar_color.h file bar_flag.h file bar_style.h file boss_bar.h

          The documentation for this class was generated from the following file include/endstone/boss/

          "},{"location":"reference/cpp/bar__color_8h/","title":"File bar_color.h","text":"

          FileList > boss > bar_color.h

          Go to the source code of this file

          "},{"location":"reference/cpp/bar__color_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/boss/bar_color.h

          "},{"location":"reference/cpp/bar__color_8h_source/","title":"File bar_color.h","text":"

          File List > boss > bar_color.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class BarColor {\n    Pink = 0,\n    Blue = 1,\n    Red = 2,\n    Green = 3,\n    Yellow = 4,\n    Purple = 5,\n    RebeccaPurple = 6,\n    White = 7,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/bar__flag_8h/","title":"File bar_flag.h","text":"

          FileList > boss > bar_flag.h

          Go to the source code of this file

          "},{"location":"reference/cpp/bar__flag_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/boss/bar_flag.h

          "},{"location":"reference/cpp/bar__flag_8h_source/","title":"File bar_flag.h","text":"

          File List > boss > bar_flag.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class BarFlag {\n    DarkenSky,\n    Count,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/bar__style_8h/","title":"File bar_style.h","text":"

          FileList > boss > bar_style.h

          Go to the source code of this file

          "},{"location":"reference/cpp/bar__style_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/boss/bar_style.h

          "},{"location":"reference/cpp/bar__style_8h_source/","title":"File bar_style.h","text":"

          File List > boss > bar_style.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class BarStyle {\n    Solid,\n    Segmented6,\n    Segmented10,\n    Segmented12,\n    Segmented20,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/boss__bar_8h/","title":"File boss_bar.h","text":"

          FileList > boss > boss_bar.h

          Go to the source code of this file

          • #include <string>
          • #include <vector>
          • #include \"endstone/boss/bar_color.h\"
          • #include \"endstone/boss/bar_flag.h\"
          • #include \"endstone/boss/bar_style.h\"
          • #include \"endstone/util/result.h\"
          "},{"location":"reference/cpp/boss__bar_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/boss__bar_8h/#classes","title":"Classes","text":"Type Name class BossBar Represents a boss bar that is displayed to players.

          The documentation for this class was generated from the following file include/endstone/boss/boss_bar.h

          "},{"location":"reference/cpp/boss__bar_8h_source/","title":"File boss_bar.h","text":"

          File List > boss > boss_bar.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <vector>\n\n#include \"endstone/boss/bar_color.h\"\n#include \"endstone/boss/bar_flag.h\"\n#include \"endstone/boss/bar_style.h\"\n#include \"endstone/util/result.h\"\n\nnamespace endstone {\n\nclass Player;\n\nclass BossBar {\npublic:\n    virtual ~BossBar() = default;\n\n    [[nodiscard]] virtual std::string getTitle() const = 0;\n\n    virtual void setTitle(std::string title) = 0;\n\n    [[nodiscard]] virtual BarColor getColor() const = 0;\n\n    virtual void setColor(BarColor color) = 0;\n\n    [[nodiscard]] virtual BarStyle getStyle() const = 0;\n\n    virtual void setStyle(BarStyle style) = 0;\n\n    [[nodiscard]] virtual bool hasFlag(BarFlag flag) const = 0;\n\n    virtual void addFlag(BarFlag flag) = 0;\n\n    virtual void removeFlag(BarFlag flag) = 0;\n\n    [[nodiscard]] virtual float getProgress() const = 0;\n\n    virtual Result<void> setProgress(float progress) = 0;\n\n    [[nodiscard]] virtual bool isVisible() const = 0;\n\n    virtual void setVisible(bool visible) = 0;\n\n    virtual void addPlayer(Player &player) = 0;\n\n    virtual void removePlayer(Player &player) = 0;\n\n    virtual void removeAll() = 0;\n\n    [[nodiscard]] virtual std::vector<Player *> getPlayers() const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_5c7b2dbfabcd1115569d1e20a260545c/","title":"Dir include/endstone/command","text":"

          FileList > command

          "},{"location":"reference/cpp/dir_5c7b2dbfabcd1115569d1e20a260545c/#files","title":"Files","text":"Type Name file command.h file command_executor.h file command_map.h file command_sender.h file command_sender_wrapper.h file console_command_sender.h file plugin_command.h file proxied_command_sender.h

          The documentation for this class was generated from the following file include/endstone/command/

          "},{"location":"reference/cpp/command_8h/","title":"File command.h","text":"

          FileList > command > command.h

          Go to the source code of this file

          • #include <algorithm>
          • #include <optional>
          • #include <string>
          • #include <utility>
          • #include <vector>
          • #include \"endstone/command/command_map.h\"
          • #include \"endstone/command/command_sender.h\"
          "},{"location":"reference/cpp/command_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/command_8h/#classes","title":"Classes","text":"Type Name class Command Represents a Command , which executes various tasks upon user input.

          The documentation for this class was generated from the following file include/endstone/command/command.h

          "},{"location":"reference/cpp/command_8h_source/","title":"File command.h","text":"

          File List > command > command.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <algorithm>\n#include <optional>\n#include <string>\n#include <utility>\n#include <vector>\n\n#include \"endstone/command/command_map.h\"\n#include \"endstone/command/command_sender.h\"\n\nnamespace endstone {\n\nclass PluginCommand;\n\nclass Command {\npublic:\n    explicit Command(std::string name, std::string description = \"\", std::vector<std::string> usages = {},\n                     std::vector<std::string> aliases = {}, std::vector<std::string> permissions = {})\n    {\n        setName(std::move(name));\n        setDescription(std::move(description));\n        setUsages(std::move(usages));\n        setAliases(std::move(aliases));\n        setPermissions(std::move(permissions));\n    }\n\n    virtual ~Command() = default;\n\n    [[nodiscard]] virtual bool execute(CommandSender &sender, const std::vector<std::string> &args) const\n    {\n        return false;\n    }\n\n    [[nodiscard]] std::string getName() const\n    {\n        return name_;\n    }\n\n    void setName(std::string name)\n    {\n        if (!isRegistered()) {\n            std::transform(name.begin(), name.end(), name.begin(), [](unsigned char c) { return std::tolower(c); });\n            name_ = std::move(name);\n        }\n    }\n\n    [[nodiscard]] std::string getDescription() const\n    {\n        return description_;\n    }\n\n    void setDescription(std::string description)\n    {\n        if (!isRegistered()) {\n            description_ = std::move(description);\n        }\n    }\n\n    [[nodiscard]] std::vector<std::string> getAliases() const\n    {\n        return aliases_;\n    }\n\n    template <typename... Alias>\n    void setAliases(Alias... aliases)\n    {\n        if (!isRegistered()) {\n            std::vector<std::string> all_aliases = {aliases...};\n            aliases_.clear();\n            for (auto alias : all_aliases) {\n                std::transform(alias.begin(), alias.end(), alias.begin(),\n                               [](unsigned char c) { return std::tolower(c); });\n                aliases_.push_back(alias);\n            }\n        }\n    }\n\n    [[nodiscard]] std::vector<std::string> getUsages() const\n    {\n        return usages_;\n    }\n\n    template <typename... Usage>\n    void setUsages(Usage... usages)\n    {\n        if (!isRegistered()) {\n            std::vector<std::string> all_usages = {usages...};\n            if (all_usages.empty()) {\n                all_usages.push_back(\"/\" + getName());\n            }\n            usages_ = std::move(all_usages);\n        }\n    }\n\n    [[nodiscard]] std::vector<std::string> getPermissions() const\n    {\n        return permissions_;\n    }\n\n    template <typename... Permission>\n    void setPermissions(Permission... permissions)\n    {\n        permissions_ = std::move(std::vector<std::string>{permissions...});\n    }\n\n    [[nodiscard]] bool testPermission(const CommandSender &target) const\n    {\n        if (testPermissionSilently(target)) {\n            return true;\n        }\n\n        target.sendErrorMessage(Translatable(\"commands.generic.unknown\", {getName()}));\n        return false;\n    }\n\n    [[nodiscard]] bool testPermissionSilently(const CommandSender &target) const\n    {\n        if (permissions_.empty()) {\n            return true;\n        }\n\n        return std::any_of(permissions_.begin(), permissions_.end(),\n                           [&target](const auto &p) { return target.hasPermission(p); });\n    }\n\n    bool registerTo(CommandMap &command_map)\n    {\n        if (allowChangesFrom(command_map)) {\n            command_map_ = &command_map;\n            return true;\n        }\n\n        return false;\n    }\n\n    bool unregisterFrom(const CommandMap &command_map)\n    {\n        if (allowChangesFrom(command_map)) {\n            command_map_ = nullptr;\n            return true;\n        }\n\n        return false;\n    }\n\n    [[nodiscard]] bool isRegistered() const\n    {\n        return command_map_ != nullptr;\n    }\n\n    [[nodiscard]] virtual PluginCommand *asPluginCommand() const\n    {\n        return nullptr;\n    }\n\nprivate:\n    bool allowChangesFrom(const CommandMap &command_map) const\n    {\n        return (!isRegistered() || command_map_ == &command_map);\n    }\n\n    std::string name_;\n    std::string description_;\n    std::vector<std::string> aliases_;\n    std::vector<std::string> usages_;\n    std::vector<std::string> permissions_;\n    CommandMap *command_map_ = nullptr;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/command__executor_8h/","title":"File command_executor.h","text":"

          FileList > command > command_executor.h

          Go to the source code of this file

          • #include <map>
          • #include <string>
          • #include \"endstone/command/command.h\"
          • #include \"endstone/command/command_sender.h\"
          "},{"location":"reference/cpp/command__executor_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/command__executor_8h/#classes","title":"Classes","text":"Type Name class CommandExecutor Represents a class which contains a single method for executing commands.

          The documentation for this class was generated from the following file include/endstone/command/command_executor.h

          "},{"location":"reference/cpp/command__executor_8h_source/","title":"File command_executor.h","text":"

          File List > command > command_executor.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <map>\n#include <string>\n\n#include \"endstone/command/command.h\"\n#include \"endstone/command/command_sender.h\"\n\nnamespace endstone {\nclass CommandExecutor {\npublic:\n    virtual ~CommandExecutor() = default;\n\n    virtual bool onCommand(CommandSender &sender, const Command &command, const std::vector<std::string> &args)\n    {\n        return false;\n    }\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/command__map_8h/","title":"File command_map.h","text":"

          FileList > command > command_map.h

          Go to the source code of this file

          • #include <memory>
          • #include <string>
          • #include <vector>
          • #include \"endstone/command/command_sender.h\"
          "},{"location":"reference/cpp/command__map_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/command__map_8h/#classes","title":"Classes","text":"Type Name class CommandMap Represents a command map that manages all commands of the Server .

          The documentation for this class was generated from the following file include/endstone/command/command_map.h

          "},{"location":"reference/cpp/command__map_8h_source/","title":"File command_map.h","text":"

          File List > command > command_map.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <memory>\n#include <string>\n#include <vector>\n\n#include \"endstone/command/command_sender.h\"\n\nnamespace endstone {\n\nclass Command;\n\nclass CommandMap {\npublic:\n    CommandMap() = default;\n    CommandMap(const CommandMap &) = delete;\n    CommandMap &operator=(const CommandMap &) = delete;\n    CommandMap(CommandMap &&) = default;\n    CommandMap &operator=(CommandMap &&) = default;\n\n    virtual ~CommandMap() = default;\n\n    virtual bool registerCommand(std::shared_ptr<Command> command) = 0;\n\n    virtual bool dispatch(CommandSender &sender, std::string command_line) const = 0;\n\n    virtual void clearCommands() = 0;\n\n    [[nodiscard]] virtual Command *getCommand(std::string name) const = 0;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/command__sender_8h/","title":"File command_sender.h","text":"

          FileList > command > command_sender.h

          Go to the source code of this file

          • #include <string>
          • #include <fmt/format.h>
          • #include \"endstone/message.h\"
          • #include \"endstone/permissions/permissible.h\"
          "},{"location":"reference/cpp/command__sender_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/command__sender_8h/#classes","title":"Classes","text":"Type Name class CommandSender Represents a command sender.

          The documentation for this class was generated from the following file include/endstone/command/command_sender.h

          "},{"location":"reference/cpp/command__sender_8h_source/","title":"File command_sender.h","text":"

          File List > command > command_sender.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n\n#include <fmt/format.h>\n\n#include \"endstone/message.h\"\n#include \"endstone/permissions/permissible.h\"\n\nnamespace endstone {\n\nclass Actor;\nclass ConsoleCommandSender;\nclass Server;\nclass Player;\n\nclass CommandSender : public Permissible {\npublic:\n    // Permissible\n    [[nodiscard]] CommandSender *asCommandSender() const override\n    {\n        return const_cast<CommandSender *>(this);\n    }\n\n    [[nodiscard]] virtual ConsoleCommandSender *asConsole() const\n    {\n        return nullptr;\n    }\n\n    [[nodiscard]] virtual Actor *asActor() const\n    {\n        return nullptr;\n    }\n\n    [[nodiscard]] virtual Player *asPlayer() const\n    {\n        return nullptr;\n    }\n\n    virtual void sendMessage(const Message &message) const = 0;\n\n    template <typename... Args>\n    void sendMessage(const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        try {\n            sendMessage(fmt::format(format, std::forward<Args>(args)...));\n        }\n        catch (std::exception &e) {\n            sendErrorMessage(e.what());\n        }\n    }\n\n    virtual void sendErrorMessage(const Message &message) const = 0;\n\n    template <typename... Args>\n    void sendErrorMessage(const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        sendErrorMessage(fmt::format(format, std::forward<Args>(args)...));\n    }\n\n    [[nodiscard]] virtual Server &getServer() const = 0;\n\n    [[nodiscard]] virtual std::string getName() const = 0;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/command__sender__wrapper_8h/","title":"File command_sender_wrapper.h","text":"

          FileList > command > command_sender_wrapper.h

          Go to the source code of this file

          • #include \"endstone/command/command_sender.h\"
          "},{"location":"reference/cpp/command__sender__wrapper_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/command__sender__wrapper_8h/#classes","title":"Classes","text":"Type Name class CommandSenderWrapper Represents a wrapper that forwards commands to the wrapped CommandSender and captures its output.

          The documentation for this class was generated from the following file include/endstone/command/command_sender_wrapper.h

          "},{"location":"reference/cpp/command__sender__wrapper_8h_source/","title":"File command_sender_wrapper.h","text":"

          File List > command > command_sender_wrapper.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/command/command_sender.h\"\n\nnamespace endstone {\n\nclass CommandSenderWrapper final : public CommandSender {\npublic:\n    using Callback = std::function<void(const Message &)>;\n    explicit CommandSenderWrapper(CommandSender &sender, Callback on_message = {}, Callback on_error = {})\n        : sender_(sender), on_message_(std::move(on_message)), on_error_(std::move(on_error)){};\n\n    void sendMessage(const Message &message) const override\n    {\n        if (on_message_) {\n            on_message_(message);\n        }\n    }\n    void sendErrorMessage(const Message &message) const override\n    {\n        if (on_error_) {\n            on_error_(message);\n        }\n    }\n\n    [[nodiscard]] bool isOp() const override\n    {\n        return sender_.isOp();\n    }\n    void setOp(bool value) override\n    {\n        sender_.setOp(value);\n    }\n    [[nodiscard]] bool isPermissionSet(std::string name) const override\n    {\n        return sender_.isPermissionSet(name);\n    }\n    [[nodiscard]] bool isPermissionSet(const Permission &perm) const override\n    {\n        return sender_.isPermissionSet(perm);\n    }\n    [[nodiscard]] bool hasPermission(std::string name) const override\n    {\n        return sender_.hasPermission(name);\n    }\n    [[nodiscard]] bool hasPermission(const Permission &perm) const override\n    {\n        return sender_.hasPermission(perm);\n    }\n    Result<PermissionAttachment *> addAttachment(Plugin &plugin, const std::string &name, bool value) override\n    {\n        return sender_.addAttachment(plugin, name, value);\n    }\n    Result<PermissionAttachment *> addAttachment(Plugin &plugin) override\n    {\n        return sender_.addAttachment(plugin);\n    }\n    Result<void> removeAttachment(PermissionAttachment &attachment) override\n    {\n        return sender_.removeAttachment(attachment);\n    }\n    void recalculatePermissions() override\n    {\n        sender_.recalculatePermissions();\n    }\n    [[nodiscard]] std::unordered_set<PermissionAttachmentInfo *> getEffectivePermissions() const override\n    {\n        return sender_.getEffectivePermissions();\n    }\n    [[nodiscard]] CommandSender *asCommandSender() const override\n    {\n        return sender_.asCommandSender();\n    }\n    [[nodiscard]] ConsoleCommandSender *asConsole() const override\n    {\n        return sender_.asConsole();\n    }\n    [[nodiscard]] Actor *asActor() const override\n    {\n        return sender_.asActor();\n    }\n    [[nodiscard]] Player *asPlayer() const override\n    {\n        return sender_.asPlayer();\n    }\n    [[nodiscard]] Server &getServer() const override\n    {\n        return sender_.getServer();\n    }\n    [[nodiscard]] std::string getName() const override\n    {\n        return sender_.getName();\n    }\n\nprivate:\n    CommandSender &sender_;\n    Callback on_message_;\n    Callback on_error_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/console__command__sender_8h/","title":"File console_command_sender.h","text":"

          FileList > command > console_command_sender.h

          Go to the source code of this file

          • #include \"endstone/command/command_sender.h\"
          "},{"location":"reference/cpp/console__command__sender_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/console__command__sender_8h/#classes","title":"Classes","text":"Type Name class ConsoleCommandSender Represents a console command sender.

          The documentation for this class was generated from the following file include/endstone/command/console_command_sender.h

          "},{"location":"reference/cpp/console__command__sender_8h_source/","title":"File console_command_sender.h","text":"

          File List > command > console_command_sender.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/command/command_sender.h\"\n\nnamespace endstone {\n\nclass ConsoleCommandSender : public CommandSender {};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/plugin__command_8h/","title":"File plugin_command.h","text":"

          FileList > command > plugin_command.h

          Go to the source code of this file

          • #include \"endstone/command/command.h\"
          • #include \"endstone/command/command_executor.h\"
          • #include \"endstone/plugin/plugin.h\"
          "},{"location":"reference/cpp/plugin__command_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/plugin__command_8h/#classes","title":"Classes","text":"Type Name class PluginCommand Represents a Command belonging to aPlugin .

          The documentation for this class was generated from the following file include/endstone/command/plugin_command.h

          "},{"location":"reference/cpp/plugin__command_8h_source/","title":"File plugin_command.h","text":"

          File List > command > plugin_command.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/command/command.h\"\n#include \"endstone/command/command_executor.h\"\n#include \"endstone/plugin/plugin.h\"\n\nnamespace endstone {\n\nclass PluginCommand : public Command {\npublic:\n    PluginCommand(const Command &command, Plugin &owner) : Command(command), owner_(owner) {}\n\n    bool execute(CommandSender &sender, const std::vector<std::string> &args) const override\n    {\n        if (!owner_.isEnabled()) {\n            sender.sendMessage(\"Cannot execute command '{}' in plugin {}. Plugin is disabled.\", getName(),\n                               getPlugin().getDescription().getFullName());\n            return false;\n        }\n\n        if (!testPermission(sender)) {\n            return true;\n        }\n\n        try {\n            return getExecutor().onCommand(sender, *this, args);\n        }\n        catch (std::exception &e) {\n            getPlugin().getLogger().error(\"Unhandled exception executing command '{}' in plugin {}\", getName(),\n                                          owner_.getDescription().getFullName());\n            getPlugin().getLogger().error(e.what());\n            return false;\n        }\n    }\n\n    virtual void setExecutor(std::shared_ptr<CommandExecutor> executor)\n    {\n        executor_ = std::move(executor);\n    }\n\n    [[nodiscard]] virtual CommandExecutor &getExecutor() const\n    {\n        if (executor_) {\n            return *executor_;\n        }\n        return owner_;\n    }\n\n    [[maybe_unused]] [[nodiscard]] Plugin &getPlugin() const\n    {\n        return owner_;\n    }\n\n    [[nodiscard]] PluginCommand *asPluginCommand() const override\n    {\n        return const_cast<PluginCommand *>(this);\n    }\n\nprivate:\n    Plugin &owner_;\n    std::shared_ptr<CommandExecutor> executor_;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/proxied__command__sender_8h/","title":"File proxied_command_sender.h","text":"

          FileList > command > proxied_command_sender.h

          Go to the source code of this file

          • #include \"endstone/command/command_sender.h\"
          "},{"location":"reference/cpp/proxied__command__sender_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/proxied__command__sender_8h/#classes","title":"Classes","text":"Type Name class ProxiedCommandSender Interface for proxied command sender.

          The documentation for this class was generated from the following file include/endstone/command/proxied_command_sender.h

          "},{"location":"reference/cpp/proxied__command__sender_8h_source/","title":"File proxied_command_sender.h","text":"

          File List > command > proxied_command_sender.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/command/command_sender.h\"\n\nnamespace endstone {\n\nclass ProxiedCommandSender : public CommandSender {\npublic:\n    [[nodiscard]] virtual CommandSender &getCaller() const = 0;\n\n    [[nodiscard]] virtual CommandSender &getCallee() const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_f1d783c0ad83ee143d16e768ebca51c8/","title":"Dir include/endstone/event","text":"

          FileList > endstone > event

          "},{"location":"reference/cpp/dir_f1d783c0ad83ee143d16e768ebca51c8/#files","title":"Files","text":"Type Name file event.h file event_handler.h file event_priority.h file handler_list.h"},{"location":"reference/cpp/dir_f1d783c0ad83ee143d16e768ebca51c8/#directories","title":"Directories","text":"Type Name dir actor dir block dir player dir server dir weather

          The documentation for this class was generated from the following file include/endstone/event/

          "},{"location":"reference/cpp/event_8h/","title":"File event.h","text":"

          FileList > endstone > event > event.h

          Go to the source code of this file

          • #include <string>
          "},{"location":"reference/cpp/event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/event_8h/#classes","title":"Classes","text":"Type Name class Event Represents an event.

          The documentation for this class was generated from the following file include/endstone/event/event.h

          "},{"location":"reference/cpp/event_8h_source/","title":"File event.h","text":"

          File List > endstone > event > event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n\nnamespace endstone {\n\nclass Event {\npublic:\n    explicit Event(bool async = false) : async_(async){};\n    Event(const Event &) = delete;             // deleted copy constructor\n    Event &operator=(const Event &) = delete;  // deleted copy assignment operator\n\n    virtual ~Event() = default;\n\n    [[nodiscard]] virtual std::string getEventName() const = 0;\n\n    [[nodiscard]] virtual bool isCancellable() const = 0;\n\n    [[nodiscard]] bool isCancelled() const\n    {\n        if (!isCancellable()) {\n            return false;\n        }\n        return cancelled_;\n    };\n\n    void setCancelled(bool cancel)\n    {\n        if (isCancellable()) {\n            cancelled_ = cancel;\n        }\n    }\n\n    [[nodiscard]] bool isAsynchronous() const\n    {\n        return async_;\n    }\n\nprivate:\n    bool async_;\n    bool cancelled_{false};\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/event__handler_8h/","title":"File event_handler.h","text":"

          FileList > endstone > event > event_handler.h

          Go to the source code of this file

          • #include <functional>
          • #include <map>
          • #include <string>
          • #include <utility>
          • #include <vector>
          • #include \"endstone/event/event.h\"
          • #include \"endstone/event/event_priority.h\"
          • #include \"endstone/plugin/plugin.h\"
          "},{"location":"reference/cpp/event__handler_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/event__handler_8h/#classes","title":"Classes","text":"Type Name class EventHandler Represents a registered EventHandler which associates with aPlugin .

          The documentation for this class was generated from the following file include/endstone/event/event_handler.h

          "},{"location":"reference/cpp/event__handler_8h_source/","title":"File event_handler.h","text":"

          File List > endstone > event > event_handler.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <functional>\n#include <map>\n#include <string>\n#include <utility>\n#include <vector>\n\n#include \"endstone/event/event.h\"\n#include \"endstone/event/event_priority.h\"\n#include \"endstone/plugin/plugin.h\"\n\nnamespace endstone {\n\nclass EventHandler {\npublic:\n    EventHandler(std::string event, std::function<void(Event &)> executor, EventPriority priority, Plugin &plugin,\n                 bool ignore_cancelled)\n        : event_(std::move(event)), executor_(std::move(executor)), priority_(priority), plugin_(plugin),\n          ignore_cancelled_(ignore_cancelled)\n    {\n    }\n\n    [[nodiscard]] Plugin &getPlugin() const\n    {\n        return plugin_;\n    }\n    [[nodiscard]] EventPriority getPriority() const\n    {\n        return priority_;\n    }\n\n    [[nodiscard]] bool isIgnoreCancelled() const\n    {\n        return ignore_cancelled_;\n    }\n\n    void callEvent(Event &event)\n    {\n        if (event.getEventName() != event_) {\n            return;\n        }\n        if (event.isCancellable() && event.isCancelled() && isIgnoreCancelled()) {\n            return;\n        }\n        executor_(event);\n    };\n\n    [[nodiscard]] std::string getEventType() const\n    {\n        return event_;\n    }\n\nprivate:\n    std::string event_;\n    std::function<void(Event &)> executor_;\n    EventPriority priority_;\n    Plugin &plugin_;\n    bool ignore_cancelled_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/event__priority_8h/","title":"File event_priority.h","text":"

          FileList > endstone > event > event_priority.h

          Go to the source code of this file

          "},{"location":"reference/cpp/event__priority_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/event/event_priority.h

          "},{"location":"reference/cpp/event__priority_8h_source/","title":"File event_priority.h","text":"

          File List > endstone > event > event_priority.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class EventPriority {\n    Lowest = 0,\n    Low = 1,\n    Normal = 2,\n    High = 3,\n    Highest = 4,\n    Monitor = 5\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/handler__list_8h/","title":"File handler_list.h","text":"

          FileList > endstone > event > handler_list.h

          Go to the source code of this file

          • #include <map>
          • #include <mutex>
          • #include <string>
          • #include <utility>
          • #include <vector>
          • #include \"endstone/event/event_handler.h\"
          • #include \"endstone/event/event_priority.h\"
          "},{"location":"reference/cpp/handler__list_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/handler__list_8h/#classes","title":"Classes","text":"Type Name class HandlerList A list of event handlers. Should be instantiated on a per-event basis.

          The documentation for this class was generated from the following file include/endstone/event/handler_list.h

          "},{"location":"reference/cpp/handler__list_8h_source/","title":"File handler_list.h","text":"

          File List > endstone > event > handler_list.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <map>\n#include <mutex>\n#include <string>\n#include <utility>\n#include <vector>\n\n#include \"endstone/event/event_handler.h\"\n#include \"endstone/event/event_priority.h\"\n\nnamespace endstone {\n\nclass HandlerList {\npublic:\n    explicit HandlerList(std::string event) : event_(std::move(event)) {}\n\n    EventHandler *registerHandler(std::unique_ptr<EventHandler> handler)\n    {\n        if (handler->getEventType() != event_) {\n            return nullptr;\n        }\n\n        std::lock_guard lock(mtx_);\n        valid_ = false;\n        auto &vector =\n            handlers_.emplace(handler->getPriority(), std::vector<std::unique_ptr<EventHandler>>{}).first->second;\n        auto &it = vector.emplace_back(std::move(handler));\n        return it.get();\n    }\n\n    void unregister(const EventHandler &handler)\n    {\n        std::lock_guard lock(mtx_);\n        auto &vector =\n            handlers_.emplace(handler.getPriority(), std::vector<std::unique_ptr<EventHandler>>{}).first->second;\n        const auto it = std::find_if(vector.begin(), vector.end(),\n                                     [&](const std::unique_ptr<EventHandler> &h) { return h.get() == &handler; });\n        if (it != vector.end()) {\n            valid_ = false;\n            vector.erase(it);\n        }\n    }\n\n    void unregister(const Plugin &plugin)\n    {\n        std::lock_guard lock(mtx_);\n        for (auto &[priority, vector] : handlers_) {\n            vector.erase(\n                std::remove_if(vector.begin(), vector.end(),\n                               [&](const std::unique_ptr<EventHandler> &h) { return &h->getPlugin() == &plugin; }),\n                vector.end());\n            valid_ = false;\n        }\n    }\n\n    std::vector<EventHandler *> getHandlers() const\n    {\n        std::lock_guard lock(mtx_);\n        if (!valid_) {\n            bake();\n        }\n        return baked_handlers_;\n    }\n\nprotected:\n    void bake() const\n    {\n        if (valid_) {\n            return;\n        }\n\n        baked_handlers_.clear();\n        for (const auto &[priority, vector] : handlers_) {\n            for (const auto &handler : vector) {\n                baked_handlers_.push_back(handler.get());\n            }\n        }\n        valid_ = true;\n    }\n\nprivate:\n    mutable std::mutex mtx_;\n    std::map<EventPriority, std::vector<std::unique_ptr<EventHandler>>> handlers_;\n    mutable std::vector<EventHandler *> baked_handlers_;\n    mutable bool valid_{false};\n    std::string event_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_621c26b5fd4198aba66e7e31570ce44a/","title":"Dir include/endstone/event/actor","text":"

          FileList > actor

          "},{"location":"reference/cpp/dir_621c26b5fd4198aba66e7e31570ce44a/#files","title":"Files","text":"Type Name file actor_death_event.h file actor_event.h file actor_knockback_event.h file actor_remove_event.h file actor_spawn_event.h file actor_teleport_event.h

          The documentation for this class was generated from the following file include/endstone/event/actor/

          "},{"location":"reference/cpp/actor__death__event_8h/","title":"File actor_death_event.h","text":"

          FileList > actor > actor_death_event.h

          Go to the source code of this file

          • #include \"endstone/event/actor/actor_event.h\"
          "},{"location":"reference/cpp/actor__death__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/actor__death__event_8h/#classes","title":"Classes","text":"Type Name class ActorDeathEvent Called when an Actor dies.

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_death_event.h

          "},{"location":"reference/cpp/actor__death__event_8h_source/","title":"File actor_death_event.h","text":"

          File List > actor > actor_death_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/actor/actor_event.h\"\n\nnamespace endstone {\n\nclass ActorDeathEvent : public ActorEvent {\npublic:\n    explicit ActorDeathEvent(Actor &actor) : ActorEvent(actor) {}\n    ~ActorDeathEvent() override = default;\n\n    inline static const std::string NAME = \"ActorDeathEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return false;\n    }\n\n    // TODO(event): add drops and dropExp\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/actor__event_8h/","title":"File actor_event.h","text":"

          FileList > actor > actor_event.h

          Go to the source code of this file

          • #include \"endstone/actor/actor.h\"
          • #include \"endstone/event/event.h\"
          "},{"location":"reference/cpp/actor__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/actor__event_8h/#classes","title":"Classes","text":"Type Name class ActorEvent Represents an Actor-related event.

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_event.h

          "},{"location":"reference/cpp/actor__event_8h_source/","title":"File actor_event.h","text":"

          File List > actor > actor_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/actor/actor.h\"\n#include \"endstone/event/event.h\"\n\nnamespace endstone {\n\nclass ActorEvent : public Event {\npublic:\n    explicit ActorEvent(Actor &actor) : actor_(actor){};\n    ~ActorEvent() override = default;\n\n    [[nodiscard]] Actor &getActor() const\n    {\n        return actor_;\n    }\n\n    // TODO(event): add getActorType method\n\nprivate:\n    Actor &actor_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/actor__knockback__event_8h/","title":"File actor_knockback_event.h","text":"

          FileList > actor > actor_knockback_event.h

          Go to the source code of this file

          • #include \"endstone/actor/mob.h\"
          • #include \"endstone/event/actor/actor_event.h\"
          "},{"location":"reference/cpp/actor__knockback__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/actor__knockback__event_8h/#classes","title":"Classes","text":"Type Name class ActorKnockbackEvent Called when a living entity receives knockback.

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_knockback_event.h

          "},{"location":"reference/cpp/actor__knockback__event_8h_source/","title":"File actor_knockback_event.h","text":"

          File List > actor > actor_knockback_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/actor/mob.h\"\n#include \"endstone/event/actor/actor_event.h\"\n\nnamespace endstone {\n\nclass ActorKnockbackEvent : public ActorEvent {\npublic:\n    explicit ActorKnockbackEvent(Mob &mob, Actor *source, Vector<float> knockback)\n        : ActorEvent(mob), mob_(mob), source_(source), knockback_(knockback)\n    {\n    }\n    ~ActorKnockbackEvent() override = default;\n\n    inline static const std::string NAME = \"ActorKnockbackEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] Mob &getActor() const\n    {\n        return mob_;\n    }\n\n    [[nodiscard]] Actor *getSource() const\n    {\n        return source_;\n    }\n\n    [[nodiscard]] Vector<float> getKnockback() const\n    {\n        return knockback_;\n    }\n\n    void setKnockback(Vector<float> knockback)\n    {\n        knockback_ = knockback;\n    }\n\nprivate:\n    Mob &mob_;\n    Actor *source_;\n    Vector<float> raw_knockback_;\n    Vector<float> knockback_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/actor__remove__event_8h/","title":"File actor_remove_event.h","text":"

          FileList > actor > actor_remove_event.h

          Go to the source code of this file

          • #include \"endstone/event/actor/actor_event.h\"
          "},{"location":"reference/cpp/actor__remove__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/actor__remove__event_8h/#classes","title":"Classes","text":"Type Name class ActorRemoveEvent Called when an Actor is removed.

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_remove_event.h

          "},{"location":"reference/cpp/actor__remove__event_8h_source/","title":"File actor_remove_event.h","text":"

          File List > actor > actor_remove_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/actor/actor_event.h\"\n\nnamespace endstone {\n\nclass ActorRemoveEvent : public ActorEvent {\npublic:\n    explicit ActorRemoveEvent(Actor &actor) : ActorEvent(actor) {}\n    ~ActorRemoveEvent() override = default;\n\n    inline static const std::string NAME = \"ActorRemoveEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return false;\n    }\n\n    // TODO(event): add remove cause\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/actor__spawn__event_8h/","title":"File actor_spawn_event.h","text":"

          FileList > actor > actor_spawn_event.h

          Go to the source code of this file

          • #include \"endstone/event/actor/actor_event.h\"
          "},{"location":"reference/cpp/actor__spawn__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/actor__spawn__event_8h/#classes","title":"Classes","text":"Type Name class ActorSpawnEvent Called when an Actor is spawned into a world.

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_spawn_event.h

          "},{"location":"reference/cpp/actor__spawn__event_8h_source/","title":"File actor_spawn_event.h","text":"

          File List > actor > actor_spawn_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/actor/actor_event.h\"\n\nnamespace endstone {\n\nclass ActorSpawnEvent : public ActorEvent {\npublic:\n    explicit ActorSpawnEvent(Actor &actor) : ActorEvent(actor) {}\n    ~ActorSpawnEvent() override = default;\n\n    inline static const std::string NAME = \"ActorSpawnEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    // TODO(event): add spawn cause\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/actor__teleport__event_8h/","title":"File actor_teleport_event.h","text":"

          FileList > actor > actor_teleport_event.h

          Go to the source code of this file

          • #include \"endstone/event/actor/actor_event.h\"
          • #include \"endstone/level/location.h\"
          "},{"location":"reference/cpp/actor__teleport__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/actor__teleport__event_8h/#classes","title":"Classes","text":"Type Name class ActorTeleportEvent Called when a non-player entity is teleported from one location to another.

          The documentation for this class was generated from the following file include/endstone/event/actor/actor_teleport_event.h

          "},{"location":"reference/cpp/actor__teleport__event_8h_source/","title":"File actor_teleport_event.h","text":"

          File List > actor > actor_teleport_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/actor/actor_event.h\"\n#include \"endstone/level/location.h\"\n\nnamespace endstone {\n\nclass ActorTeleportEvent : public ActorEvent {\npublic:\n    explicit ActorTeleportEvent(Actor &actor, Location from, Location to) : ActorEvent(actor), from_(from), to_(to) {}\n    ~ActorTeleportEvent() override = default;\n\n    inline static const std::string NAME = \"ActorTeleportEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] const Location &getFrom() const\n    {\n        return from_;\n    }\n\n    void setFrom(const Location &from)\n    {\n        from_ = from;\n    }\n\n    [[nodiscard]] const Location &getTo() const\n    {\n        return to_;\n    }\n\n    void setTo(const Location &to)\n    {\n        to_ = to;\n    }\n\nprivate:\n    Location from_;\n    Location to_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_992e9ad7dc69726476903ba283e33c71/","title":"Dir include/endstone/event/block","text":"

          FileList > block

          "},{"location":"reference/cpp/dir_992e9ad7dc69726476903ba283e33c71/#files","title":"Files","text":"Type Name file block_break_event.h file block_event.h file block_place_event.h

          The documentation for this class was generated from the following file include/endstone/event/block/

          "},{"location":"reference/cpp/block__break__event_8h/","title":"File block_break_event.h","text":"

          FileList > block > block_break_event.h

          Go to the source code of this file

          • #include \"endstone/event/block/block_event.h\"
          • #include \"endstone/player.h\"
          "},{"location":"reference/cpp/block__break__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/block__break__event_8h/#classes","title":"Classes","text":"Type Name class BlockBreakEvent Called when a block is broken by a player.

          The documentation for this class was generated from the following file include/endstone/event/block/block_break_event.h

          "},{"location":"reference/cpp/block__break__event_8h_source/","title":"File block_break_event.h","text":"

          File List > block > block_break_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/block/block_event.h\"\n#include \"endstone/player.h\"\n\nnamespace endstone {\n\nclass BlockBreakEvent : public BlockEvent {\npublic:\n    explicit BlockBreakEvent(Block &block, Player &player) : BlockEvent(block), player_(player) {}\n    ~BlockBreakEvent() override = default;\n\n    inline static const std::string NAME = \"BlockBreakEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] Player &getPlayer() const\n    {\n        return player_;\n    }\n\nprivate:\n    Player &player_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/block__event_8h/","title":"File block_event.h","text":"

          FileList > block > block_event.h

          Go to the source code of this file

          • #include \"endstone/block/block.h\"
          • #include \"endstone/event/event.h\"
          "},{"location":"reference/cpp/block__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/block__event_8h/#classes","title":"Classes","text":"Type Name class BlockEvent Represents an Block-related event.

          The documentation for this class was generated from the following file include/endstone/event/block/block_event.h

          "},{"location":"reference/cpp/block__event_8h_source/","title":"File block_event.h","text":"

          File List > block > block_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/block/block.h\"\n#include \"endstone/event/event.h\"\n\nnamespace endstone {\n\nclass BlockEvent : public Event {\npublic:\n    explicit BlockEvent(Block &block) : block_(block){};\n    ~BlockEvent() override = default;\n\n    [[nodiscard]] Block &getBlock() const\n    {\n        return block_;\n    }\n\nprivate:\n    Block &block_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/block__place__event_8h/","title":"File block_place_event.h","text":"

          FileList > block > block_place_event.h

          Go to the source code of this file

          • #include \"endstone/block/block_state.h\"
          • #include \"endstone/event/block/block_event.h\"
          • #include \"endstone/player.h\"
          "},{"location":"reference/cpp/block__place__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/block__place__event_8h/#classes","title":"Classes","text":"Type Name class BlockPlaceEvent Called when a block is placed by a player.

          The documentation for this class was generated from the following file include/endstone/event/block/block_place_event.h

          "},{"location":"reference/cpp/block__place__event_8h_source/","title":"File block_place_event.h","text":"

          File List > block > block_place_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/block/block_state.h\"\n#include \"endstone/event/block/block_event.h\"\n#include \"endstone/player.h\"\n\nnamespace endstone {\n\nclass BlockPlaceEvent : public BlockEvent {\npublic:\n    explicit BlockPlaceEvent(std::unique_ptr<BlockState> placed_block, Block &replaced_block, Block &placed_against,\n                             Player &player)\n        : BlockEvent(replaced_block), placed_block_(std::move(placed_block)), placed_against_(placed_against),\n          player_(player)\n    {\n    }\n    ~BlockPlaceEvent() override = default;\n\n    inline static const std::string NAME = \"BlockPlaceEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] Player &getPlayer() const\n    {\n        return player_;\n    }\n\n    [[nodiscard]] BlockState &getBlockPlacedState() const\n    {\n        return *placed_block_;\n    }\n\n    [[nodiscard]] Block &getBlockReplaced() const\n    {\n        return getBlock();\n    }\n\n    [[nodiscard]] Block &getBlockAgainst() const\n    {\n        return placed_against_;\n    }\n\nprivate:\n    std::unique_ptr<BlockState> placed_block_;\n    Block &placed_against_;\n    Player &player_;\n    // TODO(event): add ItemStack item\n    // TODO(event): add BlockState placedBlockState\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_7c05c37b25e9c9eccd9c63c2d313ba28/","title":"Dir include/endstone/event/player","text":"

          FileList > endstone > event > player

          "},{"location":"reference/cpp/dir_7c05c37b25e9c9eccd9c63c2d313ba28/#files","title":"Files","text":"Type Name file player_chat_event.h file player_command_event.h file player_death_event.h file player_event.h file player_interact_actor_event.h file player_interact_event.h file player_join_event.h file player_kick_event.h file player_login_event.h file player_quit_event.h file player_teleport_event.h

          The documentation for this class was generated from the following file include/endstone/event/player/

          "},{"location":"reference/cpp/player__chat__event_8h/","title":"File player_chat_event.h","text":"

          FileList > endstone > event > player > player_chat_event.h

          Go to the source code of this file

          • #include \"endstone/event/player/player_event.h\"
          "},{"location":"reference/cpp/player__chat__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__chat__event_8h/#classes","title":"Classes","text":"Type Name class PlayerChatEvent Called when a player sends a chat message.

          The documentation for this class was generated from the following file include/endstone/event/player/player_chat_event.h

          "},{"location":"reference/cpp/player__chat__event_8h_source/","title":"File player_chat_event.h","text":"

          File List > endstone > event > player > player_chat_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/player/player_event.h\"\n\nnamespace endstone {\n\nclass PlayerChatEvent : public PlayerEvent {\npublic:\n    explicit PlayerChatEvent(Player &player, std::string message) : PlayerEvent(player), message_(std::move(message)) {}\n    ~PlayerChatEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerChatEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] std::string getMessage() const\n    {\n        return message_;\n    }\n\n    void setMessage(std::string message)\n    {\n        message_ = std::move(message);\n    }\n\nprivate:\n    std::string message_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__command__event_8h/","title":"File player_command_event.h","text":"

          FileList > endstone > event > player > player_command_event.h

          Go to the source code of this file

          • #include \"endstone/event/player/player_event.h\"
          "},{"location":"reference/cpp/player__command__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__command__event_8h/#classes","title":"Classes","text":"Type Name class PlayerCommandEvent Called whenever a player runs a command.

          The documentation for this class was generated from the following file include/endstone/event/player/player_command_event.h

          "},{"location":"reference/cpp/player__command__event_8h_source/","title":"File player_command_event.h","text":"

          File List > endstone > event > player > player_command_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/player/player_event.h\"\n\nnamespace endstone {\n\nclass PlayerCommandEvent : public PlayerEvent {\npublic:\n    explicit PlayerCommandEvent(Player &player, std::string command) : PlayerEvent(player), command_(std::move(command))\n    {\n    }\n    ~PlayerCommandEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerCommandEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] std::string getCommand() const\n    {\n        return command_;\n    }\n\n    void setCommand(std::string command)\n    {\n        command_ = std::move(command);\n    }\n\nprivate:\n    std::string command_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__death__event_8h/","title":"File player_death_event.h","text":"

          FileList > endstone > event > player > player_death_event.h

          Go to the source code of this file

          • #include \"endstone/event/actor/actor_death_event.h\"
          • #include \"endstone/event/player/player_event.h\"
          "},{"location":"reference/cpp/player__death__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__death__event_8h/#classes","title":"Classes","text":"Type Name class PlayerDeathEvent Called when a Player dies.

          The documentation for this class was generated from the following file include/endstone/event/player/player_death_event.h

          "},{"location":"reference/cpp/player__death__event_8h_source/","title":"File player_death_event.h","text":"

          File List > endstone > event > player > player_death_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/actor/actor_death_event.h\"\n#include \"endstone/event/player/player_event.h\"\n\nnamespace endstone {\n\nclass PlayerDeathEvent : public ActorDeathEvent, public PlayerEvent {\npublic:\n    explicit PlayerDeathEvent(Player &player, std::string death_message)\n        : ActorDeathEvent(player), PlayerEvent(player), death_message_(std::move(death_message))\n    {\n    }\n    ~PlayerDeathEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerDeathEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return false;\n    }\n\n    [[nodiscard]] const std::string &getDeathMessage() const\n    {\n        return death_message_;\n    }\n\n    void setDeathMessage(const std::string &death_message)\n    {\n        death_message_ = death_message;\n    }\n\nprivate:\n    std::string death_message_;\n\n    // TODO(event): new exp, new level, new total exp, keep level, keep inventory\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__event_8h/","title":"File player_event.h","text":"

          FileList > endstone > event > player > player_event.h

          Go to the source code of this file

          • #include \"endstone/event/event.h\"
          • #include \"endstone/player.h\"
          "},{"location":"reference/cpp/player__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__event_8h/#classes","title":"Classes","text":"Type Name class PlayerEvent Represents a player related event.

          The documentation for this class was generated from the following file include/endstone/event/player/player_event.h

          "},{"location":"reference/cpp/player__event_8h_source/","title":"File player_event.h","text":"

          File List > endstone > event > player > player_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/event.h\"\n#include \"endstone/player.h\"\n\nnamespace endstone {\n\nclass PlayerEvent : public Event {\npublic:\n    explicit PlayerEvent(Player &player) : player_(player){};\n    ~PlayerEvent() override = default;\n\n    [[nodiscard]] Player &getPlayer() const\n    {\n        return player_;\n    }\n\nprivate:\n    Player &player_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__interact__actor__event_8h/","title":"File player_interact_actor_event.h","text":"

          FileList > endstone > event > player > player_interact_actor_event.h

          Go to the source code of this file

          • #include \"endstone/event/player/player_event.h\"
          "},{"location":"reference/cpp/player__interact__actor__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__interact__actor__event_8h/#classes","title":"Classes","text":"Type Name class PlayerInteractActorEvent Represents an event that is called when a player right-clicks an actor.

          The documentation for this class was generated from the following file include/endstone/event/player/player_interact_actor_event.h

          "},{"location":"reference/cpp/player__interact__actor__event_8h_source/","title":"File player_interact_actor_event.h","text":"

          File List > endstone > event > player > player_interact_actor_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/player/player_event.h\"\n\nnamespace endstone {\n\nclass PlayerInteractActorEvent : public PlayerEvent {\npublic:\n    explicit PlayerInteractActorEvent(Player &player, Actor &actor) : PlayerEvent(player), actor_(actor) {}\n    ~PlayerInteractActorEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerInteractActorEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] Actor &getActor() const\n    {\n        return actor_;\n    }\n\nprivate:\n    Actor &actor_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__interact__event_8h/","title":"File player_interact_event.h","text":"

          FileList > endstone > event > player > player_interact_event.h

          Go to the source code of this file

          • #include \"endstone/event/player/player_event.h\"
          • #include \"endstone/inventory/item_stack.h\"
          "},{"location":"reference/cpp/player__interact__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__interact__event_8h/#classes","title":"Classes","text":"Type Name class PlayerInteractEvent Represents an event that is called when a player right-clicks a block.

          The documentation for this class was generated from the following file include/endstone/event/player/player_interact_event.h

          "},{"location":"reference/cpp/player__interact__event_8h_source/","title":"File player_interact_event.h","text":"

          File List > endstone > event > player > player_interact_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/player/player_event.h\"\n#include \"endstone/inventory/item_stack.h\"\n\nnamespace endstone {\n\nclass PlayerInteractEvent : public PlayerEvent {\npublic:\n    PlayerInteractEvent(Player &player, std::unique_ptr<ItemStack> item, std::unique_ptr<Block> block_clicked,\n                        BlockFace block_face, const Vector<float> &clicked_position)\n        : PlayerEvent(player), item_(std::move(item)), block_clicked_(std::move(block_clicked)),\n          block_face_(block_face), clicked_position_(clicked_position)\n    {\n    }\n    ~PlayerInteractEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerInteractEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] bool hasItem() const\n    {\n        return item_ != nullptr;\n    }\n\n    [[nodiscard]] ItemStack *getItem() const\n    {\n        return item_.get();\n    }\n\n    [[nodiscard]] bool hasBlock() const\n    {\n        return block_clicked_ != nullptr;\n    }\n\n    [[nodiscard]] Block *getBlock() const\n    {\n        return block_clicked_.get();\n    }\n\n    [[nodiscard]] BlockFace getBlockFace() const\n    {\n        return block_face_;\n    }\n\n    [[nodiscard]] Vector<float> getClickedPosition() const\n    {\n        return clicked_position_;\n    }\n\nprivate:\n    std::unique_ptr<ItemStack> item_;\n    std::unique_ptr<Block> block_clicked_;\n    BlockFace block_face_;\n    Vector<float> clicked_position_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__join__event_8h/","title":"File player_join_event.h","text":"

          FileList > endstone > event > player > player_join_event.h

          Go to the source code of this file

          • #include \"endstone/event/player/player_event.h\"
          "},{"location":"reference/cpp/player__join__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__join__event_8h/#classes","title":"Classes","text":"Type Name class PlayerJoinEvent Called when a player joins a server.

          The documentation for this class was generated from the following file include/endstone/event/player/player_join_event.h

          "},{"location":"reference/cpp/player__join__event_8h_source/","title":"File player_join_event.h","text":"

          File List > endstone > event > player > player_join_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/player/player_event.h\"\n\nnamespace endstone {\n\nclass PlayerJoinEvent : public PlayerEvent {\npublic:\n    explicit PlayerJoinEvent(Player &player, std::string join_message)\n        : PlayerEvent(player), join_message_(std::move(join_message))\n    {\n    }\n    ~PlayerJoinEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerJoinEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return false;\n    }\n\n    [[nodiscard]] std::string getJoinMessage() const\n    {\n        return join_message_;\n    }\n\n    void setJoinMessage(std::string message)\n    {\n        join_message_ = std::move(message);\n    }\n\nprivate:\n    std::string join_message_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__kick__event_8h/","title":"File player_kick_event.h","text":"

          FileList > endstone > event > player > player_kick_event.h

          Go to the source code of this file

          • #include <string>
          • #include <utility>
          • #include \"endstone/event/player/player_event.h\"
          "},{"location":"reference/cpp/player__kick__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__kick__event_8h/#classes","title":"Classes","text":"Type Name class PlayerKickEvent Called when a player gets kicked from the server.

          The documentation for this class was generated from the following file include/endstone/event/player/player_kick_event.h

          "},{"location":"reference/cpp/player__kick__event_8h_source/","title":"File player_kick_event.h","text":"

          File List > endstone > event > player > player_kick_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <utility>\n\n#include \"endstone/event/player/player_event.h\"\n\nnamespace endstone {\n\nclass PlayerKickEvent : public PlayerEvent {\npublic:\n    explicit PlayerKickEvent(Player &player, std::string reason) : PlayerEvent(player), reason_(std::move(reason)) {}\n    ~PlayerKickEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerKickEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] std::string getReason() const\n    {\n        return reason_;\n    }\n\n    void setReason(std::string reason)\n    {\n        reason_ = std::move(reason);\n    }\n\nprivate:\n    std::string reason_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__login__event_8h/","title":"File player_login_event.h","text":"

          FileList > endstone > event > player > player_login_event.h

          Go to the source code of this file

          • #include \"endstone/event/player/player_event.h\"
          "},{"location":"reference/cpp/player__login__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__login__event_8h/#classes","title":"Classes","text":"Type Name class PlayerLoginEvent Called when a player attempts to login in.

          The documentation for this class was generated from the following file include/endstone/event/player/player_login_event.h

          "},{"location":"reference/cpp/player__login__event_8h_source/","title":"File player_login_event.h","text":"

          File List > endstone > event > player > player_login_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/player/player_event.h\"\n\nnamespace endstone {\n\nclass PlayerLoginEvent : public PlayerEvent {\npublic:\n    explicit PlayerLoginEvent(Player &player, std::string message = \"\")\n        : PlayerEvent(player), message_(std::move(message))\n    {\n    }\n    ~PlayerLoginEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerLoginEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] const std::string &getKickMessage() const\n    {\n        return message_;\n    }\n\n    void setKickMessage(const std::string &message)\n    {\n        message_ = message;\n    }\n\nprivate:\n    std::string message_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__quit__event_8h/","title":"File player_quit_event.h","text":"

          FileList > endstone > event > player > player_quit_event.h

          Go to the source code of this file

          • #include \"endstone/event/player/player_event.h\"
          "},{"location":"reference/cpp/player__quit__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__quit__event_8h/#classes","title":"Classes","text":"Type Name class PlayerQuitEvent Called when a player leaves a server.

          The documentation for this class was generated from the following file include/endstone/event/player/player_quit_event.h

          "},{"location":"reference/cpp/player__quit__event_8h_source/","title":"File player_quit_event.h","text":"

          File List > endstone > event > player > player_quit_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/player/player_event.h\"\n\nnamespace endstone {\n\nclass PlayerQuitEvent : public PlayerEvent {\npublic:\n    explicit PlayerQuitEvent(Player &player, std::string quit_message)\n        : PlayerEvent(player), quit_message_(std::move(quit_message))\n    {\n    }\n    ~PlayerQuitEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerQuitEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return false;\n    }\n\n    [[nodiscard]] std::string getQuitMessage() const\n    {\n        return quit_message_;\n    }\n\n    void setQuitMessage(std::string message)\n    {\n        quit_message_ = std::move(message);\n    }\n\nprivate:\n    std::string quit_message_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player__teleport__event_8h/","title":"File player_teleport_event.h","text":"

          FileList > endstone > event > player > player_teleport_event.h

          Go to the source code of this file

          • #include \"endstone/event/player/player_event.h\"
          • #include \"endstone/level/location.h\"
          "},{"location":"reference/cpp/player__teleport__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__teleport__event_8h/#classes","title":"Classes","text":"Type Name class PlayerTeleportEvent Called when a player is teleported from one location to another.

          The documentation for this class was generated from the following file include/endstone/event/player/player_teleport_event.h

          "},{"location":"reference/cpp/player__teleport__event_8h_source/","title":"File player_teleport_event.h","text":"

          File List > endstone > event > player > player_teleport_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/player/player_event.h\"\n#include \"endstone/level/location.h\"\n\nnamespace endstone {\n\nclass PlayerTeleportEvent : public PlayerEvent {\npublic:\n    explicit PlayerTeleportEvent(Player &player, Location from, Location to) : PlayerEvent(player), from_(from), to_(to)\n    {\n    }\n    ~PlayerTeleportEvent() override = default;\n\n    inline static const std::string NAME = \"PlayerTeleportEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] const Location &getFrom() const\n    {\n        return from_;\n    }\n\n    void setFrom(const Location &from)\n    {\n        from_ = from;\n    }\n\n    [[nodiscard]] const Location &getTo() const\n    {\n        return to_;\n    }\n\n    void setTo(const Location &to)\n    {\n        to_ = to;\n    }\n\nprivate:\n    Location from_;\n    Location to_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_77022909323d5ad872c4820a738a5429/","title":"Dir include/endstone/event/server","text":"

          FileList > endstone > event > server

          "},{"location":"reference/cpp/dir_77022909323d5ad872c4820a738a5429/#files","title":"Files","text":"Type Name file broadcast_message_event.h file plugin_disable_event.h file plugin_enable_event.h file script_message_event.h file server_command_event.h file server_event.h file server_list_ping_event.h file server_load_event.h

          The documentation for this class was generated from the following file include/endstone/event/server/

          "},{"location":"reference/cpp/broadcast__message__event_8h/","title":"File broadcast_message_event.h","text":"

          FileList > endstone > event > server > broadcast_message_event.h

          Go to the source code of this file

          • #include <string>
          • #include <utility>
          • #include \"endstone/command/command_sender.h\"
          • #include \"endstone/event/event.h\"
          • #include \"endstone/event/handler_list.h\"
          • #include \"endstone/event/server/server_event.h\"
          "},{"location":"reference/cpp/broadcast__message__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/broadcast__message__event_8h/#classes","title":"Classes","text":"Type Name class BroadcastMessageEvent Event triggered for server broadcast messages such as fromServer::broadcast .

          The documentation for this class was generated from the following file include/endstone/event/server/broadcast_message_event.h

          "},{"location":"reference/cpp/broadcast__message__event_8h_source/","title":"File broadcast_message_event.h","text":"

          File List > endstone > event > server > broadcast_message_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <utility>\n\n#include \"endstone/command/command_sender.h\"\n#include \"endstone/event/event.h\"\n#include \"endstone/event/handler_list.h\"\n#include \"endstone/event/server/server_event.h\"\n\nnamespace endstone {\n\nclass BroadcastMessageEvent : public ServerEvent {\npublic:\n    BroadcastMessageEvent(bool async, std::string message, std::unordered_set<const CommandSender *> recipients)\n        : ServerEvent(async), message_(std::move(message)), recipients_(std::move(recipients))\n    {\n    }\n\n    inline static const std::string NAME = \"BroadcastMessageEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] const std::string &getMessage() const\n    {\n        return message_;\n    }\n\n    void setMessage(std::string message)\n    {\n        message_ = std::move(message);\n    }\n\n    [[nodiscard]] const std::unordered_set<const CommandSender *> &getRecipients() const\n    {\n        return recipients_;\n    }\n\nprivate:\n    std::string message_;\n    std::unordered_set<const CommandSender *> recipients_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/plugin__disable__event_8h/","title":"File plugin_disable_event.h","text":"

          FileList > endstone > event > server > plugin_disable_event.h

          Go to the source code of this file

          • #include \"endstone/event/event.h\"
          • #include \"endstone/event/server/server_event.h\"
          • #include \"endstone/plugin/plugin.h\"
          "},{"location":"reference/cpp/plugin__disable__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/plugin__disable__event_8h/#classes","title":"Classes","text":"Type Name class PluginDisableEvent Called when a plugin is disabled.

          The documentation for this class was generated from the following file include/endstone/event/server/plugin_disable_event.h

          "},{"location":"reference/cpp/plugin__disable__event_8h_source/","title":"File plugin_disable_event.h","text":"

          File List > endstone > event > server > plugin_disable_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/event.h\"\n#include \"endstone/event/server/server_event.h\"\n#include \"endstone/plugin/plugin.h\"\n\nnamespace endstone {\n\nclass PluginDisableEvent : public ServerEvent {\npublic:\n    explicit PluginDisableEvent(Plugin &plugin) : plugin_(plugin) {}\n\n    [[nodiscard]] Plugin &getPlugin() const\n    {\n        return plugin_;\n    }\n\n    inline static const std::string NAME = \"PluginDisableEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return false;\n    }\n\nprivate:\n    Plugin &plugin_;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/plugin__enable__event_8h/","title":"File plugin_enable_event.h","text":"

          FileList > endstone > event > server > plugin_enable_event.h

          Go to the source code of this file

          • #include \"endstone/event/event.h\"
          • #include \"endstone/event/server/server_event.h\"
          • #include \"endstone/plugin/plugin.h\"
          "},{"location":"reference/cpp/plugin__enable__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/plugin__enable__event_8h/#classes","title":"Classes","text":"Type Name class PluginEnableEvent Called when a plugin is enabled.

          The documentation for this class was generated from the following file include/endstone/event/server/plugin_enable_event.h

          "},{"location":"reference/cpp/plugin__enable__event_8h_source/","title":"File plugin_enable_event.h","text":"

          File List > endstone > event > server > plugin_enable_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/event.h\"\n#include \"endstone/event/server/server_event.h\"\n#include \"endstone/plugin/plugin.h\"\n\nnamespace endstone {\n\nclass PluginEnableEvent : public ServerEvent {\npublic:\n    explicit PluginEnableEvent(Plugin &plugin) : plugin_(plugin) {}\n\n    [[nodiscard]] Plugin &getPlugin() const\n    {\n        return plugin_;\n    }\n\n    inline static const std::string NAME = \"PluginEnableEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return false;\n    }\n\nprivate:\n    Plugin &plugin_;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/script__message__event_8h/","title":"File script_message_event.h","text":"

          FileList > endstone > event > server > script_message_event.h

          Go to the source code of this file

          • #include \"endstone/event/server/server_event.h\"
          "},{"location":"reference/cpp/script__message__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/script__message__event_8h/#classes","title":"Classes","text":"Type Name class ScriptMessageEvent Called when a message is sent by /scriptevent command.

          The documentation for this class was generated from the following file include/endstone/event/server/script_message_event.h

          "},{"location":"reference/cpp/script__message__event_8h_source/","title":"File script_message_event.h","text":"

          File List > endstone > event > server > script_message_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/server/server_event.h\"\n\nnamespace endstone {\n\nclass ScriptMessageEvent : public ServerEvent {\npublic:\n    ScriptMessageEvent(std::string message_id, std::string message, const CommandSender &sender)\n        : ServerEvent(false), message_id_(std::move(message_id)), message_(std::move(message)), sender_(sender)\n    {\n    }\n\n    inline static const std::string NAME = \"ScriptMessageEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] const std::string &getMessageId() const\n    {\n        return message_id_;\n    }\n\n    [[nodiscard]] const std::string &getMessage() const\n    {\n        return message_;\n    }\n\n    [[nodiscard]] const CommandSender &getSender() const\n    {\n        return sender_;\n    }\n\nprivate:\n    std::string message_id_;\n    std::string message_;\n    const CommandSender &sender_;\n};\n\n};  // namespace endstone\n
          "},{"location":"reference/cpp/server__command__event_8h/","title":"File server_command_event.h","text":"

          FileList > endstone > event > server > server_command_event.h

          Go to the source code of this file

          • #include <string>
          • #include \"endstone/command/command_sender.h\"
          • #include \"endstone/event/event.h\"
          • #include \"endstone/event/handler_list.h\"
          • #include \"endstone/event/server/server_event.h\"
          "},{"location":"reference/cpp/server__command__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/server__command__event_8h/#classes","title":"Classes","text":"Type Name class ServerCommandEvent Called when the console runs a command, early in the process.

          The documentation for this class was generated from the following file include/endstone/event/server/server_command_event.h

          "},{"location":"reference/cpp/server__command__event_8h_source/","title":"File server_command_event.h","text":"

          File List > endstone > event > server > server_command_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n\n#include \"endstone/command/command_sender.h\"\n#include \"endstone/event/event.h\"\n#include \"endstone/event/handler_list.h\"\n#include \"endstone/event/server/server_event.h\"\n\nnamespace endstone {\n\nclass ServerCommandEvent : public ServerEvent {\npublic:\n    ServerCommandEvent(CommandSender &sender, std::string command) : sender_(sender), command_(std::move(command)) {}\n\n    inline static const std::string NAME = \"ServerCommandEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\n    [[nodiscard]] std::string getCommand() const\n    {\n        return command_;\n    }\n\n    void setCommand(std::string message)\n    {\n        command_ = std::move(message);\n    }\n\n    [[nodiscard]] CommandSender &getSender() const\n    {\n        return sender_;\n    }\n\nprivate:\n    CommandSender &sender_;\n    std::string command_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/server__event_8h/","title":"File server_event.h","text":"

          FileList > endstone > event > server > server_event.h

          Go to the source code of this file

          • #include \"endstone/actor/actor.h\"
          • #include \"endstone/event/event.h\"
          "},{"location":"reference/cpp/server__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/server__event_8h/#classes","title":"Classes","text":"Type Name class ServerEvent Represents an Server-related event.

          The documentation for this class was generated from the following file include/endstone/event/server/server_event.h

          "},{"location":"reference/cpp/server__event_8h_source/","title":"File server_event.h","text":"

          File List > endstone > event > server > server_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/actor/actor.h\"\n#include \"endstone/event/event.h\"\n\nnamespace endstone {\n\nclass ServerEvent : public Event {\npublic:\n    using Event::Event;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/server__list__ping__event_8h/","title":"File server_list_ping_event.h","text":"

          FileList > endstone > event > server > server_list_ping_event.h

          Go to the source code of this file

          • #include <string>
          • #include <utility>
          • #include \"endstone/event/event.h\"
          • #include \"endstone/event/server/server_event.h\"
          • #include \"endstone/game_mode.h\"
          "},{"location":"reference/cpp/server__list__ping__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/server__list__ping__event_8h/#classes","title":"Classes","text":"Type Name class ServerListPingEvent Called when a server ping is coming in.

          The documentation for this class was generated from the following file include/endstone/event/server/server_list_ping_event.h

          "},{"location":"reference/cpp/server__list__ping__event_8h_source/","title":"File server_list_ping_event.h","text":"

          File List > endstone > event > server > server_list_ping_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <utility>\n\n#include \"endstone/event/event.h\"\n#include \"endstone/event/server/server_event.h\"\n#include \"endstone/game_mode.h\"\n\nnamespace endstone {\n\nclass ServerListPingEvent : public ServerEvent {\npublic:\n    ServerListPingEvent(std::string remote_host, int remote_port, std::string ping_response)\n        : ServerEvent(true), ping_response_(std::move(ping_response)), remote_host_(std::move(remote_host)),\n          remote_port_(remote_port)\n    {\n    }\n\n    [[nodiscard]] std::string getRemoteHost() const\n    {\n        return remote_host_;\n    }\n\n    [[nodiscard]] int getRemotePort() const\n    {\n        return remote_port_;\n    }\n\n    [[nodiscard]] std::string getServerGuid() const\n    {\n        return server_guid_;\n    }\n\n    [[nodiscard]] int getLocalPort() const\n    {\n        return local_port_;\n    }\n\n    [[nodiscard]] int getLocalPortV6() const\n    {\n        return local_port_v6_;\n    }\n\n    [[nodiscard]] std::string getMotd() const\n    {\n        return motd_;\n    }\n\n    void setMotd(std::string motd)\n    {\n        motd_ = std::move(motd);\n    }\n\n    [[nodiscard]] int getNetworkProtocolVersion() const\n    {\n        return network_protocol_version_;\n    }\n\n    [[nodiscard]] std::string getMinecraftVersionNetwork() const\n    {\n        return minecraft_version_network_;\n    }\n\n    void setMinecraftVersionNetwork(std::string minecraft_version_network)\n    {\n        minecraft_version_network_ = std::move(minecraft_version_network);\n    }\n\n    [[nodiscard]] int getNumPlayers() const\n    {\n        return num_players_;\n    }\n\n    void setNumPlayers(int num_players)\n    {\n        num_players_ = num_players;\n    }\n\n    [[nodiscard]] int getMaxPlayers() const\n    {\n        return max_players_;\n    }\n\n    void setMaxPlayers(int max_players)\n    {\n        max_players_ = max_players;\n    }\n\n    [[nodiscard]] std::string getLevelName() const\n    {\n        return level_name_;\n    }\n\n    void setLevelName(std::string level_name)\n    {\n        level_name_ = std::move(level_name);\n    }\n\n    [[nodiscard]] GameMode getGameMode() const\n    {\n        return game_mode_;\n    }\n\n    void setGameMode(GameMode game_mode)\n    {\n        game_mode_ = game_mode;\n    }\n\n    inline static const std::string NAME = \"ServerListPingEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return false;\n    }\n\n    bool deserialize();\n    std::string serialize();\n\nprivate:\n    std::string ping_response_;\n    std::string remote_host_;\n    int remote_port_;\n    std::string motd_;\n    int network_protocol_version_;\n    std::string minecraft_version_network_;\n    int num_players_;\n    int max_players_;\n    std::string server_guid_;\n    std::string level_name_;\n    GameMode game_mode_;\n    int local_port_;\n    int local_port_v6_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/server__load__event_8h/","title":"File server_load_event.h","text":"

          FileList > endstone > event > server > server_load_event.h

          Go to the source code of this file

          • #include <string>
          • #include \"endstone/command/command_sender.h\"
          • #include \"endstone/event/event.h\"
          • #include \"endstone/event/server/server_event.h\"
          "},{"location":"reference/cpp/server__load__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/server__load__event_8h/#classes","title":"Classes","text":"Type Name class ServerLoadEvent Called when either the server startup or reload has completed.

          The documentation for this class was generated from the following file include/endstone/event/server/server_load_event.h

          "},{"location":"reference/cpp/server__load__event_8h_source/","title":"File server_load_event.h","text":"

          File List > endstone > event > server > server_load_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n\n#include \"endstone/command/command_sender.h\"\n#include \"endstone/event/event.h\"\n#include \"endstone/event/server/server_event.h\"\n\nnamespace endstone {\n\nclass ServerLoadEvent : public ServerEvent {\npublic:\n    enum class LoadType {\n        Startup,\n        Reload\n    };\n\n    explicit ServerLoadEvent(LoadType type) : type_(type) {}\n\n    [[nodiscard]] LoadType getType() const\n    {\n        return type_;\n    }\n\n    inline static const std::string NAME = \"ServerLoadEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return false;\n    }\n\nprivate:\n    LoadType type_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_7fcf87d2683114df01ea446fea23c187/","title":"Dir include/endstone/event/weather","text":"

          FileList > endstone > event > weather

          "},{"location":"reference/cpp/dir_7fcf87d2683114df01ea446fea23c187/#files","title":"Files","text":"Type Name file thunder_change_event.h file weather_change_event.h file weather_event.h

          The documentation for this class was generated from the following file include/endstone/event/weather/

          "},{"location":"reference/cpp/thunder__change__event_8h/","title":"File thunder_change_event.h","text":"

          FileList > endstone > event > weather > thunder_change_event.h

          Go to the source code of this file

          • #include \"endstone/event/weather/weather_event.h\"
          "},{"location":"reference/cpp/thunder__change__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/thunder__change__event_8h/#classes","title":"Classes","text":"Type Name class ThunderChangeEvent Called when the thunder state in a world is changing.

          The documentation for this class was generated from the following file include/endstone/event/weather/thunder_change_event.h

          "},{"location":"reference/cpp/thunder__change__event_8h_source/","title":"File thunder_change_event.h","text":"

          File List > endstone > event > weather > thunder_change_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/weather/weather_event.h\"\n\nnamespace endstone {\n\nclass ThunderChangeEvent : public WeatherEvent {\npublic:\n    ThunderChangeEvent(Level &level, bool to) : WeatherEvent(level), to_(to) {}\n    ~ThunderChangeEvent() override = default;\n\n    [[nodiscard]] bool toThunderState() const\n    {\n        return to_;\n    }\n\n    inline static const std::string NAME = \"ThunderChangeEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\nprivate:\n    bool to_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/weather__change__event_8h/","title":"File weather_change_event.h","text":"

          FileList > endstone > event > weather > weather_change_event.h

          Go to the source code of this file

          • #include \"endstone/event/weather/weather_event.h\"
          "},{"location":"reference/cpp/weather__change__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/weather__change__event_8h/#classes","title":"Classes","text":"Type Name class WeatherChangeEvent Called when the weather (rain) state in a world is changing.

          The documentation for this class was generated from the following file include/endstone/event/weather/weather_change_event.h

          "},{"location":"reference/cpp/weather__change__event_8h_source/","title":"File weather_change_event.h","text":"

          File List > endstone > event > weather > weather_change_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/weather/weather_event.h\"\n\nnamespace endstone {\n\nclass WeatherChangeEvent : public WeatherEvent {\npublic:\n    WeatherChangeEvent(Level &level, bool to) : WeatherEvent(level), to_(to) {}\n    ~WeatherChangeEvent() override = default;\n\n    [[nodiscard]] bool toWeatherState() const\n    {\n        return to_;\n    }\n\n    inline static const std::string NAME = \"WeatherChangeEvent\";\n    [[nodiscard]] std::string getEventName() const override\n    {\n        return NAME;\n    }\n\n    [[nodiscard]] bool isCancellable() const override\n    {\n        return true;\n    }\n\nprivate:\n    bool to_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/weather__event_8h/","title":"File weather_event.h","text":"

          FileList > endstone > event > weather > weather_event.h

          Go to the source code of this file

          • #include \"endstone/event/event.h\"
          • #include \"endstone/level/level.h\"
          "},{"location":"reference/cpp/weather__event_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/weather__event_8h/#classes","title":"Classes","text":"Type Name class WeatherEvent Represents a Weather-related event.

          The documentation for this class was generated from the following file include/endstone/event/weather/weather_event.h

          "},{"location":"reference/cpp/weather__event_8h_source/","title":"File weather_event.h","text":"

          File List > endstone > event > weather > weather_event.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/event/event.h\"\n#include \"endstone/level/level.h\"\n\nnamespace endstone {\n\nclass WeatherEvent : public Event {\npublic:\n    explicit WeatherEvent(Level &level) : level_(level){};\n    ~WeatherEvent() override = default;\n\n    [[nodiscard]] Level &getLevel() const\n    {\n        return level_;\n    }\n\nprivate:\n    Level &level_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_0fd3b458603af3963ebb9c312a9238ec/","title":"Dir include/endstone/form","text":"

          FileList > endstone > form

          "},{"location":"reference/cpp/dir_0fd3b458603af3963ebb9c312a9238ec/#files","title":"Files","text":"Type Name file action_form.h file form.h file message_form.h file modal_form.h"},{"location":"reference/cpp/dir_0fd3b458603af3963ebb9c312a9238ec/#directories","title":"Directories","text":"Type Name dir controls

          The documentation for this class was generated from the following file include/endstone/form/

          "},{"location":"reference/cpp/action__form_8h/","title":"File action_form.h","text":"

          FileList > endstone > form > action_form.h

          Go to the source code of this file

          • #include <optional>
          • #include <string>
          • #include \"endstone/form/form.h\"
          "},{"location":"reference/cpp/action__form_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/action__form_8h/#classes","title":"Classes","text":"Type Name class ActionForm Represents a form with buttons that let the player take action. class Button Represents a button with text and an optional icon.

          The documentation for this class was generated from the following file include/endstone/form/action_form.h

          "},{"location":"reference/cpp/action__form_8h_source/","title":"File action_form.h","text":"

          File List > endstone > form > action_form.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <optional>\n#include <string>\n\n#include \"endstone/form/form.h\"\n\nnamespace endstone {\n\nclass ActionForm : public Form<ActionForm> {\npublic:\n    class Button {\n    public:\n        using OnClickCallback = std::function<void(Player *)>;\n\n        Button() = default;\n        explicit Button(Message text, std::optional<std::string> icon = std::nullopt, OnClickCallback on_click = {})\n            : text_(std::move(text)), icon_(std::move(icon)), on_click_(std::move(on_click))\n        {\n        }\n\n        [[nodiscard]] Message getText() const\n        {\n            return text_;\n        }\n\n        Button &setText(Message text)\n        {\n            text_ = std::move(text);\n            return *this;\n        }\n\n        [[nodiscard]] std::optional<std::string> getIcon() const\n        {\n            return icon_;\n        }\n\n        Button &setIcon(std::string icon)\n        {\n            icon_ = std::move(icon);\n            return *this;\n        }\n\n        [[nodiscard]] OnClickCallback getOnClick() const\n        {\n            return on_click_;\n        }\n\n        Button &setOnClick(OnClickCallback on_click)\n        {\n            on_click_ = std::move(on_click);\n            return *this;\n        }\n\n    private:\n        Message text_;\n        std::optional<std::string> icon_;\n        OnClickCallback on_click_;\n    };\n\n    using OnSubmitCallback = std::function<void(Player *, int)>;\n\n    explicit ActionForm() = default;\n\n    [[nodiscard]] Message getContent() const\n    {\n        return content_;\n    }\n\n    ActionForm &setContent(Message text)\n    {\n        content_ = std::move(text);\n        return *this;\n    }\n\n    ActionForm &addButton(const Message &text, const std::optional<std::string> &icon = std::nullopt,\n                          Button::OnClickCallback on_click = {})\n    {\n        buttons_.emplace_back(text, icon, std::move(on_click));\n        return *this;\n    }\n\n    [[nodiscard]] const std::vector<Button> &getButtons() const\n    {\n        return buttons_;\n    }\n\n    ActionForm &setButtons(const std::vector<Button> &buttons)\n    {\n        buttons_ = buttons;\n        return *this;\n    }\n\n    [[nodiscard]] OnSubmitCallback getOnSubmit() const\n    {\n        return on_submit_;\n    }\n\n    ActionForm &setOnSubmit(OnSubmitCallback on_submit)\n    {\n        on_submit_ = std::move(on_submit);\n        return *this;\n    }\n\nprivate:\n    Message content_;\n    std::vector<Button> buttons_;\n    OnSubmitCallback on_submit_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/form_8h/","title":"File form.h","text":"

          FileList > endstone > form > form.h

          Go to the source code of this file

          • #include <functional>
          • #include \"endstone/message.h\"
          "},{"location":"reference/cpp/form_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/form_8h/#classes","title":"Classes","text":"Type Name class Form <typename T>Represents a generic form.

          The documentation for this class was generated from the following file include/endstone/form/form.h

          "},{"location":"reference/cpp/form_8h_source/","title":"File form.h","text":"

          File List > endstone > form > form.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <functional>\n\n#include \"endstone/message.h\"\n\nnamespace endstone {\n\nclass Player;\n\ntemplate <typename T>\nclass Form {\npublic:\n    using OnCloseCallback = std::function<void(Player *)>;\n    explicit Form() = default;\n\n    [[nodiscard]] Message getTitle() const\n    {\n        return title_;\n    }\n\n    T &setTitle(Message title)\n    {\n        title_ = std::move(title);\n        return *static_cast<T *>(this);\n    }\n\n    T &setOnClose(OnCloseCallback on_close)\n    {\n        on_close_ = std::move(on_close);\n        return *static_cast<T *>(this);\n    }\n\n    [[nodiscard]] OnCloseCallback getOnClose() const\n    {\n        return on_close_;\n    }\n\nprotected:\n    Message title_;\n    OnCloseCallback on_close_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_035306890ec6a3fa870e30b726ac5ffc/","title":"Dir include/endstone/form/controls","text":"

          FileList > controls

          "},{"location":"reference/cpp/dir_035306890ec6a3fa870e30b726ac5ffc/#files","title":"Files","text":"Type Name file dropdown.h file label.h file slider.h file step_slider.h file text_input.h file toggle.h

          The documentation for this class was generated from the following file include/endstone/form/controls/

          "},{"location":"reference/cpp/dropdown_8h/","title":"File dropdown.h","text":"

          FileList > controls > dropdown.h

          Go to the source code of this file

          • #include <optional>
          • #include <string>
          • #include <utility>
          • #include <vector>
          • #include \"endstone/message.h\"
          "},{"location":"reference/cpp/dropdown_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/dropdown_8h/#classes","title":"Classes","text":"Type Name class Dropdown Represents a dropdown with a set of predefined options.

          The documentation for this class was generated from the following file include/endstone/form/controls/dropdown.h

          "},{"location":"reference/cpp/dropdown_8h_source/","title":"File dropdown.h","text":"

          File List > controls > dropdown.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <optional>\n#include <string>\n#include <utility>\n#include <vector>\n\n#include \"endstone/message.h\"\n\nnamespace endstone {\n\nclass Dropdown {\npublic:\n    Dropdown() = default;\n    explicit Dropdown(Message label, std::vector<std::string> options, std::optional<int> default_index = std::nullopt)\n        : label_(std::move(label)), options_(std::move(options)), default_index_(default_index)\n    {\n    }\n\n    [[nodiscard]] Message getLabel() const\n    {\n        return label_;\n    }\n\n    Dropdown &setLabel(Message label)\n    {\n        label_ = std::move(label);\n        return *this;\n    }\n\n    Dropdown &addOption(const std::string &option)\n    {\n        options_.push_back(option);\n        return *this;\n    }\n\n    [[nodiscard]] std::vector<std::string> getOptions() const\n    {\n        return options_;\n    }\n\n    Dropdown &setOptions(std::vector<std::string> options)\n    {\n        options_ = std::move(options);\n        return *this;\n    }\n\n    [[nodiscard]] std::optional<int> getDefaultIndex() const\n    {\n        return default_index_;\n    }\n\n    Dropdown &setDefaultIndex(std::optional<int> default_index)\n    {\n        default_index_ = default_index;\n        return *this;\n    }\n\nprivate:\n    Message label_;\n    std::vector<std::string> options_;\n    std::optional<int> default_index_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/label_8h/","title":"File label.h","text":"

          FileList > controls > label.h

          Go to the source code of this file

          • #include <optional>
          • #include <string>
          • #include <utility>
          • #include \"endstone/message.h\"
          "},{"location":"reference/cpp/label_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/label_8h/#classes","title":"Classes","text":"Type Name class Label Represents a text label.

          The documentation for this class was generated from the following file include/endstone/form/controls/label.h

          "},{"location":"reference/cpp/label_8h_source/","title":"File label.h","text":"

          File List > controls > label.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <optional>\n#include <string>\n#include <utility>\n\n#include \"endstone/message.h\"\n\nnamespace endstone {\n\nclass Label {\npublic:\n    Label() = default;\n    explicit Label(Message text) : text_(std::move(text)) {}\n\n    [[nodiscard]] Message getText() const\n    {\n        return text_;\n    }\n\n    Label &setText(Message text)\n    {\n        text_ = std::move(text);\n        return *this;\n    }\n\nprivate:\n    Message text_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/slider_8h/","title":"File slider.h","text":"

          FileList > controls > slider.h

          Go to the source code of this file

          • #include <optional>
          • #include <string>
          • #include <utility>
          • #include \"endstone/message.h\"
          "},{"location":"reference/cpp/slider_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/slider_8h/#classes","title":"Classes","text":"Type Name class Slider Represents a slider with a label.

          The documentation for this class was generated from the following file include/endstone/form/controls/slider.h

          "},{"location":"reference/cpp/slider_8h_source/","title":"File slider.h","text":"

          File List > controls > slider.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <optional>\n#include <string>\n#include <utility>\n\n#include \"endstone/message.h\"\n\nnamespace endstone {\n\nclass Slider {\npublic:\n    Slider() = default;\n    explicit Slider(Message label, float min, float max, float step, std::optional<float> default_value = std::nullopt)\n        : label_(std::move(label)), min_(min), max_(max), step_(step), default_value_(default_value)\n    {\n    }\n\n    [[nodiscard]] Message getLabel() const\n    {\n        return label_;\n    }\n\n    Slider &setLabel(Message label)\n    {\n        label_ = std::move(label);\n        return *this;\n    }\n\n    [[nodiscard]] float getMin() const\n    {\n        return min_;\n    }\n\n    Slider &setMin(float min)\n    {\n        min_ = min;\n        return *this;\n    }\n\n    [[nodiscard]] float getMax() const\n    {\n        return max_;\n    }\n\n    Slider &setMax(float max)\n    {\n        max_ = max;\n        return *this;\n    }\n\n    [[nodiscard]] float getStep() const\n    {\n        return step_;\n    }\n\n    Slider &setStep(float step)\n    {\n        step_ = step;\n        return *this;\n    }\n\n    [[nodiscard]] std::optional<float> getDefaultValue() const\n    {\n        return default_value_;\n    }\n\n    Slider &setDefaultValue(std::optional<float> default_value)\n    {\n        default_value_ = default_value;\n        return *this;\n    }\n\nprivate:\n    Message label_;\n    float min_;\n    float max_;\n    float step_;\n    std::optional<float> default_value_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/step__slider_8h/","title":"File step_slider.h","text":"

          FileList > controls > step_slider.h

          Go to the source code of this file

          • #include \"endstone/form/controls/dropdown.h\"
          "},{"location":"reference/cpp/step__slider_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/step__slider_8h/#classes","title":"Classes","text":"Type Name class StepSlider Represents a step slider with a set of predefined options.

          The documentation for this class was generated from the following file include/endstone/form/controls/step_slider.h

          "},{"location":"reference/cpp/step__slider_8h_source/","title":"File step_slider.h","text":"

          File List > controls > step_slider.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/form/controls/dropdown.h\"\n\nnamespace endstone {\n\nclass StepSlider : public Dropdown {\npublic:\n    using Dropdown::Dropdown;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/text__input_8h/","title":"File text_input.h","text":"

          FileList > controls > text_input.h

          Go to the source code of this file

          • #include <optional>
          • #include <string>
          • #include <utility>
          • #include \"endstone/message.h\"
          "},{"location":"reference/cpp/text__input_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/text__input_8h/#classes","title":"Classes","text":"Type Name class TextInput Represents a text input field.

          The documentation for this class was generated from the following file include/endstone/form/controls/text_input.h

          "},{"location":"reference/cpp/text__input_8h_source/","title":"File text_input.h","text":"

          File List > controls > text_input.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <optional>\n#include <string>\n#include <utility>\n\n#include \"endstone/message.h\"\n\nnamespace endstone {\n\nclass TextInput {\npublic:\n    TextInput() = default;\n    explicit TextInput(Message label, Message placeholder, std::optional<std::string> default_text = std::nullopt)\n        : label_(std::move(label)), placeholder_(std::move(placeholder)), default_text_(std::move(default_text))\n    {\n    }\n\n    [[nodiscard]] Message getLabel() const\n    {\n        return label_;\n    }\n\n    TextInput &setLabel(Message label)\n    {\n        label_ = std::move(label);\n        return *this;\n    }\n\n    [[nodiscard]] Message getPlaceholder() const\n    {\n        return placeholder_;\n    }\n\n    TextInput &setPlaceholder(Message placeholder)\n    {\n        placeholder_ = std::move(placeholder);\n        return *this;\n    }\n\n    [[nodiscard]] std::optional<std::string> getDefaultValue() const\n    {\n        return default_text_;\n    }\n\n    TextInput &setDefaultValue(std::optional<std::string> text)\n    {\n        default_text_ = std::move(text);\n        return *this;\n    }\n\nprivate:\n    Message label_;\n    Message placeholder_;\n    std::optional<std::string> default_text_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/toggle_8h/","title":"File toggle.h","text":"

          FileList > controls > toggle.h

          Go to the source code of this file

          • #include <optional>
          • #include <string>
          • #include <utility>
          • #include \"endstone/message.h\"
          "},{"location":"reference/cpp/toggle_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/toggle_8h/#classes","title":"Classes","text":"Type Name class Toggle Represents a toggle button with a label.

          The documentation for this class was generated from the following file include/endstone/form/controls/toggle.h

          "},{"location":"reference/cpp/toggle_8h_source/","title":"File toggle.h","text":"

          File List > controls > toggle.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <optional>\n#include <string>\n#include <utility>\n\n#include \"endstone/message.h\"\n\nnamespace endstone {\n\nclass Toggle {\npublic:\n    Toggle() = default;\n    explicit Toggle(Message label, bool default_value = false) : label_(std::move(label)), default_value_(default_value)\n    {\n    }\n\n    [[nodiscard]] Message getLabel() const\n    {\n        return label_;\n    }\n\n    Toggle &setLabel(Message label)\n    {\n        label_ = std::move(label);\n        return *this;\n    }\n\n    [[nodiscard]] bool getDefaultValue() const\n    {\n        return default_value_;\n    }\n\n    Toggle &setDefaultValue(bool value)\n    {\n        default_value_ = value;\n        return *this;\n    }\n\nprivate:\n    Message label_;\n    bool default_value_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/message__form_8h/","title":"File message_form.h","text":"

          FileList > endstone > form > message_form.h

          Go to the source code of this file

          • #include <utility>
          • #include \"endstone/form/form.h\"
          "},{"location":"reference/cpp/message__form_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/message__form_8h/#classes","title":"Classes","text":"Type Name class MessageForm Represents a form with two buttons.

          The documentation for this class was generated from the following file include/endstone/form/message_form.h

          "},{"location":"reference/cpp/message__form_8h_source/","title":"File message_form.h","text":"

          File List > endstone > form > message_form.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <utility>\n\n#include \"endstone/form/form.h\"\n\nnamespace endstone {\n\nclass MessageForm : public Form<MessageForm> {\npublic:\n    using OnSubmitCallback = std::function<void(Player *, int)>;\n\n    [[nodiscard]] Message getContent() const\n    {\n        return content_;\n    }\n\n    MessageForm &setContent(Message text)\n    {\n        content_ = std::move(text);\n        return *this;\n    }\n\n    [[nodiscard]] Message getButton1() const\n    {\n        return button1_text_;\n    }\n\n    MessageForm &setButton1(Message text)\n    {\n        button1_text_ = std::move(text);\n        return *this;\n    }\n\n    [[nodiscard]] Message getButton2() const\n    {\n        return button2_text_;\n    }\n\n    MessageForm &setButton2(Message text)\n    {\n        button2_text_ = std::move(text);\n        return *this;\n    }\n\n    [[nodiscard]] OnSubmitCallback getOnSubmit() const\n    {\n        return on_submit_;\n    }\n\n    MessageForm &setOnSubmit(OnSubmitCallback on_submit)\n    {\n        on_submit_ = std::move(on_submit);\n        return *this;\n    }\n\nprivate:\n    Message content_;\n    Message button1_text_;\n    Message button2_text_;\n    OnSubmitCallback on_submit_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/modal__form_8h/","title":"File modal_form.h","text":"

          FileList > endstone > form > modal_form.h

          Go to the source code of this file

          • #include <optional>
          • #include <string>
          • #include <utility>
          • #include \"endstone/form/controls/dropdown.h\"
          • #include \"endstone/form/controls/label.h\"
          • #include \"endstone/form/controls/slider.h\"
          • #include \"endstone/form/controls/step_slider.h\"
          • #include \"endstone/form/controls/text_input.h\"
          • #include \"endstone/form/controls/toggle.h\"
          • #include \"endstone/form/form.h\"
          "},{"location":"reference/cpp/modal__form_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/modal__form_8h/#classes","title":"Classes","text":"Type Name class ModalForm Represents a modal form with controls.

          The documentation for this class was generated from the following file include/endstone/form/modal_form.h

          "},{"location":"reference/cpp/modal__form_8h_source/","title":"File modal_form.h","text":"

          File List > endstone > form > modal_form.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <optional>\n#include <string>\n#include <utility>\n\n#include \"endstone/form/controls/dropdown.h\"\n#include \"endstone/form/controls/label.h\"\n#include \"endstone/form/controls/slider.h\"\n#include \"endstone/form/controls/step_slider.h\"\n#include \"endstone/form/controls/text_input.h\"\n#include \"endstone/form/controls/toggle.h\"\n#include \"endstone/form/form.h\"\n\nnamespace endstone {\n\nclass ModalForm : public Form<ModalForm> {\npublic:\n    using Control = std::variant<Dropdown, Label, Slider, StepSlider, TextInput, Toggle>;\n    using OnSubmitCallback = std::function<void(Player *, std::string)>;\n\n    ModalForm &addControl(const Control &control)\n    {\n        controls_.push_back(control);\n        return *this;\n    }\n\n    [[nodiscard]] std::vector<Control> getControls() const\n    {\n        return controls_;\n    }\n\n    ModalForm &setControls(std::vector<Control> controls)\n    {\n        controls_ = std::move(controls);\n        return *this;\n    }\n\n    [[nodiscard]] std::optional<Message> getSubmitButton() const\n    {\n        return submit_button_text_;\n    }\n\n    ModalForm &setSubmitButton(std::optional<Message> text)\n    {\n        submit_button_text_ = std::move(text);\n        return *this;\n    }\n\n    [[nodiscard]] std::optional<std::string> getIcon() const\n    {\n        return icon_;\n    }\n\n    ModalForm &setIcon(std::optional<std::string> icon)\n    {\n        icon_ = std::move(icon);\n        return *this;\n    }\n\n    [[nodiscard]] OnSubmitCallback getOnSubmit() const\n    {\n        return on_submit_;\n    }\n\n    ModalForm &setOnSubmit(OnSubmitCallback on_submit)\n    {\n        on_submit_ = std::move(on_submit);\n        return *this;\n    }\n\nprivate:\n    std::vector<Control> controls_;\n    std::optional<Message> submit_button_text_;\n    std::optional<std::string> icon_;\n    OnSubmitCallback on_submit_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_d1e84b530b14f41e8b6f5ec1b5dee76c/","title":"Dir include/endstone/inventory","text":"

          FileList > endstone > inventory

          "},{"location":"reference/cpp/dir_d1e84b530b14f41e8b6f5ec1b5dee76c/#files","title":"Files","text":"Type Name file inventory.h file item_stack.h file player_inventory.h

          The documentation for this class was generated from the following file include/endstone/inventory/

          "},{"location":"reference/cpp/inventory_8h/","title":"File inventory.h","text":"

          FileList > endstone > inventory > inventory.h

          Go to the source code of this file

          • #include <memory>
          • #include <vector>
          • #include \"endstone/inventory/item_stack.h\"
          "},{"location":"reference/cpp/inventory_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/inventory_8h/#classes","title":"Classes","text":"Type Name class Inventory Interface to the various inventories.

          The documentation for this class was generated from the following file include/endstone/inventory/inventory.h

          "},{"location":"reference/cpp/inventory_8h_source/","title":"File inventory.h","text":"

          File List > endstone > inventory > inventory.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <memory>\n#include <vector>\n\n#include \"endstone/inventory/item_stack.h\"\n\nnamespace endstone {\nclass Inventory {\npublic:\n    virtual ~Inventory() = default;\n    [[nodiscard]] virtual int getSize() const = 0;\n\n    [[nodiscard]] virtual int getMaxStackSize() const = 0;\n\n    [[nodiscard]] virtual std::shared_ptr<ItemStack> getItem(int index) const = 0;\n\n    virtual void setItem(int index, std::shared_ptr<ItemStack> item) = 0;\n\n    virtual void addItem(ItemStack &item) = 0;\n\n    [[nodiscard]] virtual std::vector<std::shared_ptr<ItemStack>> getContents() const = 0;\n\n    [[nodiscard]] virtual int first(ItemStack &item) = 0;\n\n    [[nodiscard]] virtual bool isEmpty() const = 0;\n\n    virtual void clear() = 0;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/item__stack_8h/","title":"File item_stack.h","text":"

          FileList > endstone > inventory > item_stack.h

          Go to the source code of this file

          • #include <utility>
          • #include <fmt/format.h>
          • #include <memory>
          "},{"location":"reference/cpp/item__stack_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone namespace detail namespace fmt"},{"location":"reference/cpp/item__stack_8h/#classes","title":"Classes","text":"Type Name class ItemStack Represents a stack of items. struct formatter< endstone::ItemStack > <>

          The documentation for this class was generated from the following file include/endstone/inventory/item_stack.h

          "},{"location":"reference/cpp/item__stack_8h_source/","title":"File item_stack.h","text":"

          File List > endstone > inventory > item_stack.h

          Go to the documentation of this file

          #include <utility>\n\n#include <fmt/format.h>\n\n// Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <memory>\n\nnamespace endstone {\n\nnamespace detail {\nclass EndstoneItemStack;\n}\n\nclass ItemStack : public std::enable_shared_from_this<ItemStack> {\npublic:\n    ItemStack() = default;\n    explicit ItemStack(std::string type, int amount = 1) : type_(std::move(type)), amount_(amount) {}\n\n    virtual ~ItemStack() = default;\n\n    [[nodiscard]] virtual std::string getType() const\n    {\n        return type_;\n    }\n\n    virtual void setType(std::string type)\n    {\n        // TODO(item): clear item components when the type is changed\n        type_ = std::move(type);\n    }\n\n    [[nodiscard]] virtual int getAmount() const\n    {\n        return amount_;\n    }\n\n    virtual void setAmount(int amount)\n    {\n        amount_ = amount;\n    }\n\nprotected:\n    friend class detail::EndstoneItemStack;\n\n    virtual const detail::EndstoneItemStack *asEndstoneItemStack() const\n    {\n        return nullptr;\n    }\n\n    virtual detail::EndstoneItemStack *asEndstoneItemStack()\n    {\n        return nullptr;\n    }\n\nprivate:\n    std::string type_ = \"minecraft:air\";\n    int amount_ = 0;\n};\n\n}  // namespace endstone\n\nnamespace fmt {\ntemplate <>\nstruct formatter<endstone::ItemStack> : formatter<string_view> {\n    using Type = endstone::ItemStack;\n\n    template <typename FormatContext>\n    auto format(const Type &val, FormatContext &ctx) const -> format_context::iterator\n    {\n        return format_to(ctx.out(), \"ItemStack({} x {})\", val.getType(), val.getAmount());\n    }\n};\n}  // namespace fmt\n
          "},{"location":"reference/cpp/player__inventory_8h/","title":"File player_inventory.h","text":"

          FileList > endstone > inventory > player_inventory.h

          Go to the source code of this file

          • #include \"endstone/inventory/inventory.h\"
          "},{"location":"reference/cpp/player__inventory_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player__inventory_8h/#classes","title":"Classes","text":"Type Name class PlayerInventory Interface to the inventory of a Player , including the four armor slots and any extra slots.

          The documentation for this class was generated from the following file include/endstone/inventory/player_inventory.h

          "},{"location":"reference/cpp/player__inventory_8h_source/","title":"File player_inventory.h","text":"

          File List > endstone > inventory > player_inventory.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/inventory/inventory.h\"\n\nnamespace endstone {\n\nclass PlayerInventory : public Inventory {};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_cd2600a5c389b96acc106cf97f774d1c/","title":"Dir include/endstone/lang","text":"

          FileList > endstone > lang

          "},{"location":"reference/cpp/dir_cd2600a5c389b96acc106cf97f774d1c/#files","title":"Files","text":"Type Name file language.h file translatable.h

          The documentation for this class was generated from the following file include/endstone/lang/

          "},{"location":"reference/cpp/language_8h/","title":"File language.h","text":"

          FileList > endstone > lang > language.h

          Go to the source code of this file

          • #include <string>
          • #include <vector>
          • #include \"endstone/lang/translatable.h\"
          "},{"location":"reference/cpp/language_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/language_8h/#classes","title":"Classes","text":"Type Name class Language Represents the interface for translating text into different languages.

          The documentation for this class was generated from the following file include/endstone/lang/language.h

          "},{"location":"reference/cpp/language_8h_source/","title":"File language.h","text":"

          File List > endstone > lang > language.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <vector>\n\n#include \"endstone/lang/translatable.h\"\n\nnamespace endstone {\n\nclass Language {\npublic:\n    virtual ~Language() = default;\n\n    [[nodiscard]] virtual std::string translate(std::string text) const = 0;\n\n    [[nodiscard]] virtual std::string translate(std::string text, std::string locale) const = 0;\n\n    [[nodiscard]] virtual std::string translate(std::string text, std::vector<std::string> params) const = 0;\n\n    [[nodiscard]] virtual std::string translate(std::string text, std::vector<std::string> params,\n                                                std::string locale) const = 0;\n\n    [[nodiscard]] virtual std::string translate(Translatable translatable) const = 0;\n\n    [[nodiscard]] virtual std::string translate(Translatable translatable, std::string locale) const = 0;\n\n    [[nodiscard]] virtual std::string getLocale() const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/translatable_8h/","title":"File translatable.h","text":"

          FileList > endstone > lang > translatable.h

          Go to the source code of this file

          • #include <string>
          • #include <utility>
          • #include <vector>
          "},{"location":"reference/cpp/translatable_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/translatable_8h/#classes","title":"Classes","text":"Type Name class Translatable Represents an object with a text representation that can be translated by the Minecraft client.

          The documentation for this class was generated from the following file include/endstone/lang/translatable.h

          "},{"location":"reference/cpp/translatable_8h_source/","title":"File translatable.h","text":"

          File List > endstone > lang > translatable.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <utility>\n#include <vector>\n\nnamespace endstone {\n\nclass Translatable {\npublic:\n    explicit Translatable(std::string text, std::vector<std::string> params = {})\n        : text_(std::move(text)), params_(std::move(params))\n    {\n    }\n\n    [[nodiscard]] const std::string &getText() const\n    {\n        return text_;\n    }\n\n    [[nodiscard]] const std::vector<std::string> &getParameters() const\n    {\n        return params_;\n    }\n\n    [[nodiscard]] bool empty() const\n    {\n        return text_.empty();\n    }\n\nprivate:\n    std::string text_;\n    std::vector<std::string> params_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_8e239ca1e5fd0d936d66a30330d3a329/","title":"Dir include/endstone/level","text":"

          FileList > endstone > level

          "},{"location":"reference/cpp/dir_8e239ca1e5fd0d936d66a30330d3a329/#files","title":"Files","text":"Type Name file dimension.h file level.h file location.h file position.h

          The documentation for this class was generated from the following file include/endstone/level/

          "},{"location":"reference/cpp/dimension_8h/","title":"File dimension.h","text":"

          FileList > endstone > level > dimension.h

          Go to the source code of this file

          • #include \"endstone/block/block.h\"
          • #include \"endstone/util/result.h\"
          "},{"location":"reference/cpp/dimension_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/dimension_8h/#classes","title":"Classes","text":"Type Name class Dimension Represents a dimension within a Level .

          The documentation for this class was generated from the following file include/endstone/level/dimension.h

          "},{"location":"reference/cpp/dimension_8h_source/","title":"File dimension.h","text":"

          File List > endstone > level > dimension.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/block/block.h\"\n#include \"endstone/util/result.h\"\n\nnamespace endstone {\n\nclass Dimension {\npublic:\n    enum class Type {\n        Overworld = 0,\n        Nether = 1,\n        TheEnd = 2,\n        Custom = 999\n    };\n\n    virtual ~Dimension() = default;\n\n    [[nodiscard]] virtual std::string getName() const = 0;\n\n    [[nodiscard]] virtual Type getType() const = 0;\n\n    [[nodiscard]] virtual Level &getLevel() const = 0;\n\n    virtual Result<std::unique_ptr<Block>> getBlockAt(int x, int y, int z) = 0;\n\n    virtual Result<std::unique_ptr<Block>> getBlockAt(Location location) = 0;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/level_8h/","title":"File level.h","text":"

          FileList > endstone > level > level.h

          Go to the source code of this file

          • #include <memory>
          • #include <string>
          • #include \"endstone/actor/actor.h\"
          "},{"location":"reference/cpp/level_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/level_8h/#classes","title":"Classes","text":"Type Name class Level Represents a level, which may contain actors, chunks and blocks.

          The documentation for this class was generated from the following file include/endstone/level/level.h

          "},{"location":"reference/cpp/level_8h_source/","title":"File level.h","text":"

          File List > endstone > level > level.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <memory>\n#include <string>\n\n#include \"endstone/actor/actor.h\"\n\nnamespace endstone {\n\nclass Level {\npublic:\n    virtual ~Level() = default;\n\n    [[nodiscard]] virtual std::string getName() const = 0;\n\n    [[nodiscard]] virtual std::vector<Actor *> getActors() const = 0;\n\n    [[nodiscard]] virtual int getTime() const = 0;\n\n    virtual void setTime(int time) = 0;\n\n    [[nodiscard]] virtual std::vector<Dimension *> getDimensions() const = 0;\n\n    [[nodiscard]] virtual Dimension *getDimension(std::string name) const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/location_8h/","title":"File location.h","text":"

          FileList > endstone > level > location.h

          Go to the source code of this file

          • #include <memory>
          • #include \"endstone/level/position.h\"
          • #include \"endstone/util/vector.h\"
          "},{"location":"reference/cpp/location_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/location_8h/#classes","title":"Classes","text":"Type Name class Location Represents a 3-dimensional location in a dimension within a level.

          The documentation for this class was generated from the following file include/endstone/level/location.h

          "},{"location":"reference/cpp/location_8h_source/","title":"File location.h","text":"

          File List > endstone > level > location.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <memory>\n\n#include \"endstone/level/position.h\"\n#include \"endstone/util/vector.h\"\n\nnamespace endstone {\n\nclass Location : public Position {\npublic:\n    Location(Dimension *dimension, int x, int y, int z, float pitch = 0.0, float yaw = 0.0)\n        : Location(dimension, static_cast<float>(x), static_cast<float>(y), static_cast<float>(z), pitch, yaw)\n    {\n    }\n\n    Location(Dimension *dimension, float x, float y, float z, float pitch = 0.0, float yaw = 0.0)\n        : Position(dimension, x, y, z), pitch_(pitch), yaw_(yaw)\n    {\n    }\n\n    [[nodiscard]] float getPitch() const\n    {\n        return pitch_;\n    }\n\n    void setPitch(float pitch)\n    {\n        pitch_ = pitch;\n    }\n\n    [[nodiscard]] float getYaw() const\n    {\n        return yaw_;\n    }\n\n    void setYaw(float yaw)\n    {\n        yaw_ = yaw;\n    }\n\nprivate:\n    float pitch_;  // Rotation around the right axis (around X axis).\n    float yaw_;    // Rotation around the up axis (around Y axis)\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/position_8h/","title":"File position.h","text":"

          FileList > endstone > level > position.h

          Go to the source code of this file

          • #include <memory>
          • #include <optional>
          • #include \"endstone/util/vector.h\"
          "},{"location":"reference/cpp/position_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/position_8h/#classes","title":"Classes","text":"Type Name class Position Represents a 3-dimensional position in a dimension within a level.

          The documentation for this class was generated from the following file include/endstone/level/position.h

          "},{"location":"reference/cpp/position_8h_source/","title":"File position.h","text":"

          File List > endstone > level > position.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <memory>\n#include <optional>\n\n#include \"endstone/util/vector.h\"\n\nnamespace endstone {\n\nclass Level;\nclass Dimension;\n\nclass Position : public Vector<float> {\npublic:\n    Position(Dimension *dimension, float x, float y, float z) : Vector(x, y, z), dimension_(dimension) {}\n\n    [[nodiscard]] Dimension *getDimension() const\n    {\n        return dimension_;\n    }\n\n    void setDimension(Dimension &dimension)\n    {\n        dimension_ = &dimension;\n    }\n\n    [[nodiscard]] int getBlockX() const\n    {\n        return static_cast<int>(std::floorf(x_));\n    }\n\n    [[nodiscard]] int getBlockY() const\n    {\n        return static_cast<int>(std::floorf(y_));\n    }\n\n    [[nodiscard]] int getBlockZ() const\n    {\n        return static_cast<int>(std::floorf(z_));\n    }\n\nprivate:\n    Dimension *dimension_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_5fb49eba5df98b849987b1937230be97/","title":"Dir include/endstone/network","text":"

          FileList > endstone > network

          "},{"location":"reference/cpp/dir_5fb49eba5df98b849987b1937230be97/#files","title":"Files","text":"Type Name file packet.h file packet_type.h file spawn_particle_effect_packet.h

          The documentation for this class was generated from the following file include/endstone/network/

          "},{"location":"reference/cpp/packet_8h/","title":"File packet.h","text":"

          FileList > endstone > network > packet.h

          Go to the source code of this file

          • #include \"endstone/network/packet_type.h\"
          "},{"location":"reference/cpp/packet_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/packet_8h/#classes","title":"Classes","text":"Type Name class Packet Represents a packet.

          The documentation for this class was generated from the following file include/endstone/network/packet.h

          "},{"location":"reference/cpp/packet_8h_source/","title":"File packet.h","text":"

          File List > endstone > network > packet.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/network/packet_type.h\"\n\nnamespace endstone {\n\nclass Packet {\npublic:\n    virtual ~Packet() = default;\n\n    [[nodiscard]] virtual PacketType getType() const = 0;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/packet__type_8h/","title":"File packet_type.h","text":"

          FileList > endstone > network > packet_type.h

          Go to the source code of this file

          "},{"location":"reference/cpp/packet__type_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/network/packet_type.h

          "},{"location":"reference/cpp/packet__type_8h_source/","title":"File packet_type.h","text":"

          File List > endstone > network > packet_type.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\nenum class PacketType {\n    SpawnParticleEffect = 118\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/spawn__particle__effect__packet_8h/","title":"File spawn_particle_effect_packet.h","text":"

          FileList > endstone > network > spawn_particle_effect_packet.h

          Go to the source code of this file

          • #include <cstdint>
          • #include <optional>
          • #include <string>
          • #include \"endstone/network/packet.h\"
          • #include \"endstone/network/packet_type.h\"
          • #include \"endstone/util/vector.h\"
          "},{"location":"reference/cpp/spawn__particle__effect__packet_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/spawn__particle__effect__packet_8h/#classes","title":"Classes","text":"Type Name class SpawnParticleEffectPacket Represents a packet for spawning a particle effect.

          The documentation for this class was generated from the following file include/endstone/network/spawn_particle_effect_packet.h

          "},{"location":"reference/cpp/spawn__particle__effect__packet_8h_source/","title":"File spawn_particle_effect_packet.h","text":"

          File List > endstone > network > spawn_particle_effect_packet.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <cstdint>\n#include <optional>\n#include <string>\n\n#include \"endstone/network/packet.h\"\n#include \"endstone/network/packet_type.h\"\n#include \"endstone/util/vector.h\"\n\nnamespace endstone {\n\nclass SpawnParticleEffectPacket final : public Packet {\npublic:\n    [[nodiscard]] PacketType getType() const override\n    {\n        return PacketType::SpawnParticleEffect;\n    }\n\n    int dimension_id;\n    std::int64_t actor_id{-1};\n    Vector<float> position;\n    std::string effect_name;\n    std::optional<std::string> molang_variables_json;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_33a21cc2f228e5ad6b7d1bc8d0d1e9bc/","title":"Dir include/endstone/permissions","text":"

          FileList > endstone > permissions

          "},{"location":"reference/cpp/dir_33a21cc2f228e5ad6b7d1bc8d0d1e9bc/#files","title":"Files","text":"Type Name file permissible.h file permission.h file permission_attachment.h file permission_attachment_info.h file permission_default.h

          The documentation for this class was generated from the following file include/endstone/permissions/

          "},{"location":"reference/cpp/permissible_8h/","title":"File permissible.h","text":"

          FileList > endstone > permissions > permissible.h

          Go to the source code of this file

          • #include <memory>
          • #include <string>
          • #include <unordered_set>
          • #include \"endstone/permissions/permission_attachment_info.h\"
          • #include \"endstone/util/result.h\"
          "},{"location":"reference/cpp/permissible_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/permissible_8h/#classes","title":"Classes","text":"Type Name class Permissible Represents an object that may become a server operator and can be assigned permissions.

          The documentation for this class was generated from the following file include/endstone/permissions/permissible.h

          "},{"location":"reference/cpp/permissible_8h_source/","title":"File permissible.h","text":"

          File List > endstone > permissions > permissible.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <memory>\n#include <string>\n#include <unordered_set>\n\n#include \"endstone/permissions/permission_attachment_info.h\"\n#include \"endstone/util/result.h\"\n\nnamespace endstone {\n\nclass CommandSender;\nclass Plugin;\nclass Permission;\nclass PermissionAttachment;\n\nclass Permissible {\npublic:\n    virtual ~Permissible() = default;\n\n    [[nodiscard]] virtual bool isOp() const = 0;\n\n    virtual void setOp(bool value) = 0;\n\n    [[nodiscard]] virtual bool isPermissionSet(std::string name) const = 0;\n\n    [[nodiscard]] virtual bool isPermissionSet(const Permission &perm) const = 0;\n\n    [[nodiscard]] virtual bool hasPermission(std::string name) const = 0;\n\n    [[nodiscard]] virtual bool hasPermission(const Permission &perm) const = 0;\n\n    virtual Result<PermissionAttachment *> addAttachment(Plugin &plugin, const std::string &name, bool value) = 0;\n\n    virtual Result<PermissionAttachment *> addAttachment(Plugin &plugin) = 0;\n\n    virtual Result<void> removeAttachment(PermissionAttachment &attachment) = 0;\n\n    virtual void recalculatePermissions() = 0;\n\n    [[nodiscard]] virtual std::unordered_set<PermissionAttachmentInfo *> getEffectivePermissions() const = 0;\n\n    [[nodiscard]] virtual CommandSender *asCommandSender() const = 0;\n};\n}  // namespace endstone\n
          "},{"location":"reference/cpp/permission_8h/","title":"File permission.h","text":"

          FileList > endstone > permissions > permission.h

          Go to the source code of this file

          • #include <algorithm>
          • #include <string>
          • #include <unordered_map>
          • #include <unordered_set>
          • #include <utility>
          • #include \"endstone/permissions/permissible.h\"
          • #include \"endstone/permissions/permission_default.h\"
          • #include \"endstone/plugin/plugin_manager.h\"
          "},{"location":"reference/cpp/permission_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/permission_8h/#classes","title":"Classes","text":"Type Name class Permission Represents a unique permission that may be attached to a Permissible .

          The documentation for this class was generated from the following file include/endstone/permissions/permission.h

          "},{"location":"reference/cpp/permission_8h_source/","title":"File permission.h","text":"

          File List > endstone > permissions > permission.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <algorithm>\n#include <string>\n#include <unordered_map>\n#include <unordered_set>\n#include <utility>\n\n#include \"endstone/permissions/permissible.h\"\n#include \"endstone/permissions/permission_default.h\"\n#include \"endstone/plugin/plugin_manager.h\"\n\nnamespace endstone {\n\nclass Permission {\npublic:\n    static const PermissionDefault DefaultPermission = PermissionDefault::Operator;\n\n    explicit Permission(std::string name, std::string description = \"\",\n                        PermissionDefault default_value = DefaultPermission,\n                        std::unordered_map<std::string, bool> children = {})\n    {\n        this->name_ = std::move(name);\n        this->description_ = std::move(description);\n        this->default_value_ = default_value;\n        this->children_ = std::move(children);\n    }\n\n    [[nodiscard]] std::string getName() const\n    {\n        return name_;\n    }\n\n    std::unordered_map<std::string, bool> &getChildren()\n    {\n        return children_;\n    }\n\n    [[nodiscard]] PermissionDefault getDefault() const\n    {\n        return default_value_;\n    }\n\n    void setDefault(PermissionDefault value)\n    {\n        default_value_ = value;\n        recalculatePermissibles();\n    }\n\n    [[nodiscard]] std::string getDescription() const\n    {\n        return description_;\n    }\n\n    void setDescription(std::string value)\n    {\n        description_ = std::move(value);\n    }\n\n    [[nodiscard]] std::unordered_set<Permissible *> getPermissibles() const\n    {\n        if (!plugin_manager_) {\n            return {};\n        }\n\n        return plugin_manager_->getPermissionSubscriptions(name_);\n    }\n\n    void recalculatePermissibles()\n    {\n        if (!plugin_manager_) {\n            return;\n        }\n\n        auto perms = getPermissibles();\n        plugin_manager_->recalculatePermissionDefaults(*this);\n\n        for (auto *p : perms) {\n            p->recalculatePermissions();\n        }\n    }\n\n    Permission *addParent(std::string name, bool value)\n    {\n        if (!plugin_manager_) {\n            return nullptr;\n        }\n\n        std::transform(name.begin(), name.end(), name.begin(), [](unsigned char c) { return std::tolower(c); });\n        auto *perm = plugin_manager_->getPermission(name);\n\n        if (!perm) {\n            perm = plugin_manager_->addPermission(std::make_unique<Permission>(name));\n        }\n\n        addParent(*perm, value);\n        return perm;\n    }\n\n    void addParent(Permission &perm, bool value) const\n    {\n        perm.getChildren()[getName()] = value;\n        perm.recalculatePermissibles();\n    }\n\n    void init(PluginManager &plugin_manager)\n    {\n        plugin_manager_ = &plugin_manager;\n    }\n\nprivate:\n    std::string name_;\n    std::unordered_map<std::string, bool> children_;\n    PermissionDefault default_value_ = DefaultPermission;\n    std::string description_;\n    PluginManager *plugin_manager_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/permission__attachment_8h/","title":"File permission_attachment.h","text":"

          FileList > endstone > permissions > permission_attachment.h

          Go to the source code of this file

          • #include <algorithm>
          • #include <functional>
          • #include <string>
          • #include <unordered_map>
          • #include <utility>
          • #include \"endstone/permissions/permissible.h\"
          • #include \"endstone/permissions/permission.h\"
          "},{"location":"reference/cpp/permission__attachment_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/permission__attachment_8h/#classes","title":"Classes","text":"Type Name class PermissionAttachment Holds information about a permission attachment on a Permissible object.

          The documentation for this class was generated from the following file include/endstone/permissions/permission_attachment.h

          "},{"location":"reference/cpp/permission__attachment_8h_source/","title":"File permission_attachment.h","text":"

          File List > endstone > permissions > permission_attachment.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <algorithm>\n#include <functional>\n#include <string>\n#include <unordered_map>\n#include <utility>\n\n#include \"endstone/permissions/permissible.h\"\n#include \"endstone/permissions/permission.h\"\n\nnamespace endstone {\n\nusing PermissionRemovedExecutor = std::function<void(const PermissionAttachment &)>;\n\nclass PermissionAttachment {\npublic:\n    PermissionAttachment(Plugin &plugin, Permissible &permissible) : permissible_(permissible), plugin_(plugin) {}\n\n    [[nodiscard]] Plugin &getPlugin() const\n    {\n        return plugin_;\n    }\n\n    void setRemovalCallback(PermissionRemovedExecutor ex)\n    {\n        removed_ = std::move(ex);\n    }\n\n    [[nodiscard]] PermissionRemovedExecutor getRemovalCallback() const\n    {\n        return removed_;\n    }\n\n    [[nodiscard]] Permissible &getPermissible() const\n    {\n        return permissible_;\n    }\n\n    [[nodiscard]] std::unordered_map<std::string, bool> getPermissions() const\n    {\n        return permissions_;\n    }\n\n    void setPermission(std::string name, bool value)\n    {\n        std::transform(name.begin(), name.end(), name.begin(), [](unsigned char c) { return std::tolower(c); });\n        permissions_[name] = value;\n        permissible_.recalculatePermissions();\n    }\n\n    void setPermission(Permission &perm, bool value)\n    {\n        setPermission(perm.getName(), value);\n    }\n\n    void unsetPermission(std::string name)\n    {\n        std::transform(name.begin(), name.end(), name.begin(), [](unsigned char c) { return std::tolower(c); });\n        permissions_.erase(name);\n        permissible_.recalculatePermissions();\n    }\n\n    void unsetPermission(Permission &perm)\n    {\n        unsetPermission(perm.getName());\n    }\n\n    bool remove()\n    {\n        return permissible_.removeAttachment(*this).has_value();\n    }\n\nprivate:\n    PermissionRemovedExecutor removed_;\n    std::unordered_map<std::string, bool> permissions_;\n    Permissible &permissible_;\n    Plugin &plugin_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/permission__attachment__info_8h/","title":"File permission_attachment_info.h","text":"

          FileList > endstone > permissions > permission_attachment_info.h

          Go to the source code of this file

          • #include <string>
          • #include <utility>
          "},{"location":"reference/cpp/permission__attachment__info_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/permission__attachment__info_8h/#classes","title":"Classes","text":"Type Name class PermissionAttachmentInfo Holds information on a permission and which PermissionAttachment provides it.

          The documentation for this class was generated from the following file include/endstone/permissions/permission_attachment_info.h

          "},{"location":"reference/cpp/permission__attachment__info_8h_source/","title":"File permission_attachment_info.h","text":"

          File List > endstone > permissions > permission_attachment_info.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <utility>\n\nnamespace endstone {\n\nclass Permissible;\nclass PermissionAttachment;\n\nclass PermissionAttachmentInfo {\n\npublic:\n    PermissionAttachmentInfo(Permissible &permissible, std::string permission, PermissionAttachment *attachment,\n                             bool value)\n        : permissible_(permissible), permission_(std::move(permission)), attachment_(attachment), value_(value)\n    {\n    }\n\n    [[nodiscard]] Permissible &getPermissible() const\n    {\n        return permissible_;\n    }\n\n    [[nodiscard]] std::string getPermission() const\n    {\n        return permission_;\n    }\n\n    [[nodiscard]] PermissionAttachment *getAttachment() const\n    {\n        return attachment_;\n    }\n\n    [[nodiscard]] bool getValue() const\n    {\n        return value_;\n    }\n\nprivate:\n    Permissible &permissible_;\n    std::string permission_;\n    PermissionAttachment *attachment_;\n    bool value_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/permission__default_8h/","title":"File permission_default.h","text":"

          FileList > endstone > permissions > permission_default.h

          Go to the source code of this file

          "},{"location":"reference/cpp/permission__default_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/permissions/permission_default.h

          "},{"location":"reference/cpp/permission__default_8h_source/","title":"File permission_default.h","text":"

          File List > endstone > permissions > permission_default.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class PermissionDefault {\n    True,\n    False,\n    Operator,\n    NotOperator,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_53ee43673b2467e53c4cb8c30a2e7d89/","title":"Dir include/endstone/plugin","text":"

          FileList > endstone > plugin

          "},{"location":"reference/cpp/dir_53ee43673b2467e53c4cb8c30a2e7d89/#files","title":"Files","text":"Type Name file plugin.h file plugin_description.h file plugin_load_order.h file plugin_loader.h file plugin_manager.h

          The documentation for this class was generated from the following file include/endstone/plugin/

          "},{"location":"reference/cpp/plugin_8h/","title":"File plugin.h","text":"

          FileList > endstone > plugin > plugin.h

          Go to the source code of this file

          • #include <algorithm>
          • #include <filesystem>
          • #include <memory>
          • #include <string>
          • #include <unordered_map>
          • #include <utility>
          • #include <vector>
          • #include \"endstone/command/command_executor.h\"
          • #include \"endstone/detail/plugin/plugin_description_builder.h\"
          • #include \"endstone/logger.h\"
          • #include \"endstone/permissions/permission.h\"
          • #include \"endstone/plugin/plugin_description.h\"
          • #include \"endstone/server.h\"
          "},{"location":"reference/cpp/plugin_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone namespace detail"},{"location":"reference/cpp/plugin_8h/#classes","title":"Classes","text":"Type Name class Plugin Represents a Plugin ."},{"location":"reference/cpp/plugin_8h/#macros","title":"Macros","text":"Type Name define ENDSTONE_PLUGIN (Name, Version, MainClass)"},{"location":"reference/cpp/plugin_8h/#macro-definition-documentation","title":"Macro Definition Documentation","text":""},{"location":"reference/cpp/plugin_8h/#define-endstone_plugin","title":"define ENDSTONE_PLUGIN","text":"
          #define ENDSTONE_PLUGIN (\n    Name,\n    Version,\n    MainClass\n) class PluginDescriptionBuilderImpl : public endstone::detail::PluginDescriptionBuilder { \\\n    public:                                                                                  \\\n        PluginDescriptionBuilderImpl();                                                      \\\n    };                                                                                       \\\n    static PluginDescriptionBuilderImpl builder;                                             \\\n    class EndstonePluginImpl : public MainClass {                                            \\\n    public:                                                                                  \\\n        EndstonePluginImpl() = default;                                                      \\\n        const endstone::PluginDescription &getDescription() const override                   \\\n        {                                                                                    \\\n            return description_;                                                             \\\n        }                                                                                    \\\n                                                                                             \\\n    private:                                                                                 \\ endstone::PluginDescription description_ = builder.build(Name, Version);             \\\n    };                                                                                       \\\n    extern \"C\" [[maybe_unused]] ENDSTONE_EXPORT endstone::Plugin *init_endstone_plugin()     \\\n    {                                                                                        \\\n        auto *p = new EndstonePluginImpl();                                                  \\\n        return p;                                                                            \\\n    }                                                                                        \\\n    PluginDescriptionBuilderImpl::PluginDescriptionBuilderImpl()\n

          The documentation for this class was generated from the following file include/endstone/plugin/plugin.h

          "},{"location":"reference/cpp/plugin_8h_source/","title":"File plugin.h","text":"

          File List > endstone > plugin > plugin.h

          Go to the documentation of this file

          // Copyright (c) 2023, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <algorithm>\n#include <filesystem>\n#include <memory>\n#include <string>\n#include <unordered_map>\n#include <utility>\n#include <vector>\n\n#include \"endstone/command/command_executor.h\"\n#include \"endstone/detail/plugin/plugin_description_builder.h\"\n#include \"endstone/logger.h\"\n#include \"endstone/permissions/permission.h\"\n#include \"endstone/plugin/plugin_description.h\"\n#include \"endstone/server.h\"\n\nnamespace endstone {\n\nclass PluginCommand;\nclass PluginLoader;\n\nnamespace detail {\nclass EndstonePluginManager;\n}\n\nclass Plugin : public CommandExecutor {\npublic:\n    Plugin() = default;\n    Plugin(const Plugin &) = delete;\n    Plugin &operator=(const Plugin &) = delete;\n\n    ~Plugin() override = default;\n\n    [[nodiscard]] virtual const PluginDescription &getDescription() const = 0;\n\n    virtual void onLoad() {}\n\n    virtual void onEnable() {}\n\n    virtual void onDisable() {}\n\n    [[nodiscard]] Logger &getLogger() const\n    {\n        return *logger_;\n    }\n\n    [[nodiscard]] bool isEnabled() const\n    {\n        return enabled_;\n    }\n\n    [[nodiscard]] PluginLoader &getPluginLoader() const\n    {\n        return *loader_;\n    }\n\n    [[nodiscard]] Server &getServer() const\n    {\n        return *server_;\n    }\n\n    [[nodiscard]] std::string getName() const\n    {\n        return getDescription().getName();\n    };\n\n    [[nodiscard]] PluginCommand *getCommand(std::string name) const\n    {\n        std::transform(name.begin(), name.end(), name.begin(), [](unsigned char c) { return std::tolower(c); });\n        return getServer().getPluginCommand(name);\n    }\n\n    [[nodiscard]] const std::filesystem::path &getDataFolder() const\n    {\n        return data_folder_;\n    }\n\n    template <typename EventType, typename T>\n    void registerEvent(void (T::*func)(EventType &), T &instance, EventPriority priority = EventPriority::Normal,\n                       bool ignore_cancelled = false)\n    {\n        auto result = getServer().getPluginManager().registerEvent(\n            EventType::NAME, [func, &instance](Event &e) { (instance.*func)(static_cast<EventType &>(e)); }, priority,\n            *this, ignore_cancelled);\n        if (!result) {\n            server_->getLogger().error(result.error());\n        }\n    }\n\n    template <typename EventType>\n    void registerEvent(std::function<void(EventType &)> func, EventPriority priority = EventPriority::Normal,\n                       bool ignore_cancelled = false)\n    {\n        auto result = getServer().getPluginManager().registerEvent(\n            EventType::NAME, [func](Event &e) { func(static_cast<EventType &>(e)); }, priority, *this,\n            ignore_cancelled);\n        if (!result) {\n            server_->getLogger().error(result.error());\n        }\n    }\n\nprotected:\n    friend class PluginLoader;\n    friend class detail::EndstonePluginManager;\n\n    void setEnabled(bool enabled)\n    {\n        if (enabled_ != enabled) {\n            enabled_ = enabled;\n\n            if (enabled_) {\n                onEnable();\n            }\n            else {\n                onDisable();\n            }\n        }\n    }\n\nprivate:\n    bool enabled_{false};\n    PluginLoader *loader_{nullptr};\n    Server *server_{nullptr};\n    Logger *logger_{nullptr};\n    std::filesystem::path data_folder_;\n};\n\n}  // namespace endstone\n\n#ifndef ENDSTONE_PLUGIN\n#define ENDSTONE_PLUGIN(Name, Version, MainClass)                                            \\\n    class PluginDescriptionBuilderImpl : public endstone::detail::PluginDescriptionBuilder { \\\n    public:                                                                                  \\\n        PluginDescriptionBuilderImpl();                                                      \\\n    };                                                                                       \\\n    static PluginDescriptionBuilderImpl builder;                                             \\\n    class EndstonePluginImpl : public MainClass {                                            \\\n    public:                                                                                  \\\n        EndstonePluginImpl() = default;                                                      \\\n        const endstone::PluginDescription &getDescription() const override                   \\\n        {                                                                                    \\\n            return description_;                                                             \\\n        }                                                                                    \\\n                                                                                             \\\n    private:                                                                                 \\\n        endstone::PluginDescription description_ = builder.build(Name, Version);             \\\n    };                                                                                       \\\n    extern \"C\" [[maybe_unused]] ENDSTONE_EXPORT endstone::Plugin *init_endstone_plugin()     \\\n    {                                                                                        \\\n        auto *p = new EndstonePluginImpl();                                                  \\\n        return p;                                                                            \\\n    }                                                                                        \\\n    PluginDescriptionBuilderImpl::PluginDescriptionBuilderImpl()\n#endif\n
          "},{"location":"reference/cpp/plugin__description_8h/","title":"File plugin_description.h","text":"

          FileList > endstone > plugin > plugin_description.h

          Go to the source code of this file

          • #include <string>
          • #include <utility>
          • #include <vector>
          • #include <fmt/format.h>
          • #include \"endstone/command/command.h\"
          • #include \"endstone/detail/plugin/plugin_description_builder.h\"
          • #include \"endstone/endstone.h\"
          • #include \"endstone/permissions/permission.h\"
          • #include \"endstone/plugin/plugin_load_order.h\"
          "},{"location":"reference/cpp/plugin__description_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/plugin__description_8h/#classes","title":"Classes","text":"Type Name class PluginDescription Represents the basic information about a plugin that the plugin loader needs to know.

          The documentation for this class was generated from the following file include/endstone/plugin/plugin_description.h

          "},{"location":"reference/cpp/plugin__description_8h_source/","title":"File plugin_description.h","text":"

          File List > endstone > plugin > plugin_description.h

          Go to the documentation of this file

          // Copyright (c) 2023, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <utility>\n#include <vector>\n\n#include <fmt/format.h>\n\n#include \"endstone/command/command.h\"\n#include \"endstone/detail/plugin/plugin_description_builder.h\"\n#include \"endstone/endstone.h\"\n#include \"endstone/permissions/permission.h\"\n#include \"endstone/plugin/plugin_load_order.h\"\n\nnamespace endstone {\n\nclass PluginDescription {\npublic:\n    PluginDescription(std::string name, std::string version, std::string description = \"\",\n                      PluginLoadOrder load = PluginLoadOrder::PostWorld, std::vector<std::string> authors = {},\n                      std::vector<std::string> contributors = {}, std::string website = \"\", std::string prefix = \"\",\n                      std::vector<std::string> provides = {}, std::vector<std::string> depend = {},\n                      std::vector<std::string> soft_depend = {}, std::vector<std::string> load_before = {},\n                      PermissionDefault default_permission = PermissionDefault::Operator,\n                      std::vector<Command> commands = {}, std::vector<Permission> permissions = {})\n        : description_(std::move(description)), load_(load), authors_(std::move(authors)),\n          contributors_(std::move(contributors)), website_(std::move(website)), prefix_(std::move(prefix)),\n          provides_(std::move(provides)), depend_(std::move(depend)), soft_depend_(std::move(soft_depend)),\n          load_before_(std::move(load_before)), default_permission_(default_permission), commands_(std::move(commands)),\n          permissions_(std::move(permissions))\n    {\n        name_ = std::move(name);\n        std::replace(name_.begin(), name_.end(), ' ', '_');\n        version_ = std::move(version);\n        full_name_ = fmt::format(\"{} v{}\", name_, version_);\n        api_version_ = ENDSTONE_API_VERSION;\n    }\n\n    [[nodiscard]] std::string getName() const\n    {\n        return name_;\n    }\n\n    [[nodiscard]] std::string getVersion() const\n    {\n        return version_;\n    }\n\n    [[nodiscard]] std::string getFullName() const\n    {\n        return full_name_;\n    }\n\n    [[nodiscard]] std::string getAPIVersion() const\n    {\n        return api_version_;\n    }\n\n    [[nodiscard]] std::string getDescription() const\n    {\n        return description_;\n    }\n\n    [[nodiscard]] PluginLoadOrder getLoad() const\n    {\n        return load_;\n    }\n\n    [[nodiscard]] std::vector<std::string> getAuthors() const\n    {\n        return authors_;\n    }\n\n    [[nodiscard]] std::vector<std::string> getContributors() const\n    {\n        return contributors_;\n    }\n\n    [[nodiscard]] std::string getWebsite() const\n    {\n        return website_;\n    }\n\n    [[nodiscard]] std::string getPrefix() const\n    {\n        return prefix_;\n    }\n\n    [[nodiscard]] std::vector<std::string> getProvides() const\n    {\n        return provides_;\n    }\n\n    [[nodiscard]] std::vector<std::string> getDepend() const\n    {\n        return depend_;\n    }\n\n    [[nodiscard]] std::vector<std::string> getSoftDepend() const\n    {\n        return soft_depend_;\n    }\n\n    [[nodiscard]] std::vector<std::string> getLoadBefore() const\n    {\n        return load_before_;\n    }\n\n    [[nodiscard]] PermissionDefault getDefaultPermission() const\n    {\n        return default_permission_;\n    }\n\n    [[nodiscard]] std::vector<Command> getCommands() const\n    {\n        return commands_;\n    }\n\n    [[nodiscard]] std::vector<Permission> getPermissions() const\n    {\n        return permissions_;\n    }\n\nprivate:\n    std::string name_;\n    std::string version_;\n    std::string full_name_;\n    std::string api_version_;\n    std::string description_;\n    PluginLoadOrder load_ = PluginLoadOrder::PostWorld;\n    std::vector<std::string> authors_;\n    std::vector<std::string> contributors_;\n    std::string website_;\n    std::string prefix_;\n    std::vector<std::string> provides_;\n    std::vector<std::string> depend_;\n    std::vector<std::string> soft_depend_;\n    std::vector<std::string> load_before_;\n    PermissionDefault default_permission_ = PermissionDefault::Operator;\n    std::vector<Command> commands_;\n    std::vector<Permission> permissions_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/plugin__load__order_8h/","title":"File plugin_load_order.h","text":"

          FileList > endstone > plugin > plugin_load_order.h

          Go to the source code of this file

          "},{"location":"reference/cpp/plugin__load__order_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/plugin/plugin_load_order.h

          "},{"location":"reference/cpp/plugin__load__order_8h_source/","title":"File plugin_load_order.h","text":"

          File List > endstone > plugin > plugin_load_order.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class PluginLoadOrder {\n    Startup,\n    PostWorld,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/plugin__loader_8h/","title":"File plugin_loader.h","text":"

          FileList > endstone > plugin > plugin_loader.h

          Go to the source code of this file

          • #include <cctype>
          • #include <filesystem>
          • #include <memory>
          • #include <string>
          • #include <utility>
          • #include <vector>
          • #include \"endstone/event/server/plugin_disable_event.h\"
          • #include \"endstone/event/server/plugin_enable_event.h\"
          • #include \"endstone/logger.h\"
          • #include \"endstone/plugin/plugin.h\"
          • #include \"endstone/server.h\"
          "},{"location":"reference/cpp/plugin__loader_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/plugin__loader_8h/#classes","title":"Classes","text":"Type Name class PluginLoader Represents a plugin loader, which handles direct access to specific types of plugins.

          The documentation for this class was generated from the following file include/endstone/plugin/plugin_loader.h

          "},{"location":"reference/cpp/plugin__loader_8h_source/","title":"File plugin_loader.h","text":"

          File List > endstone > plugin > plugin_loader.h

          Go to the documentation of this file

          // Copyright (c) 2023, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <cctype>\n#include <filesystem>\n#include <memory>\n#include <string>\n#include <utility>\n#include <vector>\n\n#include \"endstone/event/server/plugin_disable_event.h\"\n#include \"endstone/event/server/plugin_enable_event.h\"\n#include \"endstone/logger.h\"\n#include \"endstone/plugin/plugin.h\"\n#include \"endstone/server.h\"\n\nnamespace endstone {\n\nclass PluginLoader {\npublic:\n    explicit PluginLoader(Server &server) : server_(server) {}\n    PluginLoader(const PluginLoader &) = delete;\n    PluginLoader &operator=(const PluginLoader &) = delete;\n\n    virtual ~PluginLoader() = default;\n\n    [[nodiscard]] virtual std::vector<Plugin *> loadPlugins(const std::string &directory) = 0;\n\n    virtual void enablePlugin(Plugin &plugin) const\n    {\n        if (!plugin.isEnabled()) {\n            plugin.getLogger().info(\"Enabling {}\", plugin.getDescription().getFullName());\n            try {\n                plugin.setEnabled(true);\n            }\n            catch (std::exception &e) {\n                plugin.getLogger().error(\"Error occurred when enabling {}.\", plugin.getDescription().getFullName());\n                plugin.getLogger().error(e.what());\n                return;\n            }\n            PluginEnableEvent event(plugin);\n            server_.getPluginManager().callEvent(event);\n        }\n    }\n\n    virtual void disablePlugin(Plugin &plugin) const\n    {\n        if (plugin.isEnabled()) {\n            plugin.getLogger().info(\"Disabling {}\", plugin.getDescription().getFullName());\n            try {\n                plugin.setEnabled(false);\n            }\n            catch (std::exception &e) {\n                plugin.getLogger().error(\"Error occurred when disabling {}.\", plugin.getDescription().getFullName());\n                plugin.getLogger().error(e.what());\n                return;\n            }\n            PluginDisableEvent event(plugin);\n            server_.getPluginManager().callEvent(event);\n        }\n    }\n\n    [[nodiscard]] Server &getServer() const\n    {\n        return server_;\n    }\n\nprotected:\n    Server &server_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/plugin__manager_8h/","title":"File plugin_manager.h","text":"

          FileList > endstone > plugin > plugin_manager.h

          Go to the source code of this file

          • #include <functional>
          • #include <memory>
          • #include <string>
          • #include <vector>
          • #include \"endstone/event/event.h\"
          • #include \"endstone/event/event_priority.h\"
          "},{"location":"reference/cpp/plugin__manager_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/plugin__manager_8h/#classes","title":"Classes","text":"Type Name class PluginManager Represents a plugin manager that handles all plugins from the Server .

          The documentation for this class was generated from the following file include/endstone/plugin/plugin_manager.h

          "},{"location":"reference/cpp/plugin__manager_8h_source/","title":"File plugin_manager.h","text":"

          File List > endstone > plugin > plugin_manager.h

          Go to the documentation of this file

          // Copyright (c) 2023, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <functional>\n#include <memory>\n#include <string>\n#include <vector>\n\n#include \"endstone/event/event.h\"\n#include \"endstone/event/event_priority.h\"\n\nnamespace endstone {\n\nclass Permission;\nclass Permissible;\nclass Plugin;\nclass PluginLoader;\n\nclass PluginManager {\npublic:\n    PluginManager() = default;\n    PluginManager(PluginManager const &) = delete;\n    PluginManager &operator=(PluginManager const &) = delete;\n    virtual ~PluginManager() = default;\n\n    virtual void registerLoader(std::unique_ptr<PluginLoader> loader) = 0;\n\n    [[nodiscard]] virtual Plugin *getPlugin(const std::string &name) const = 0;\n\n    [[nodiscard]] virtual std::vector<Plugin *> getPlugins() const = 0;\n\n    [[nodiscard]] virtual bool isPluginEnabled(const std::string &name) const = 0;\n\n    [[nodiscard]] virtual bool isPluginEnabled(Plugin *plugin) const = 0;\n\n    [[nodiscard]] virtual std::vector<Plugin *> loadPlugins(const std::string &directory) = 0;\n\n    virtual void enablePlugin(Plugin &plugin) const = 0;\n\n    virtual void enablePlugins() const = 0;\n\n    virtual void disablePlugin(Plugin &plugin) = 0;\n\n    virtual void disablePlugins() = 0;\n\n    virtual void clearPlugins() = 0;\n\n    virtual void callEvent(Event &event) = 0;\n\n    virtual Result<void> registerEvent(std::string event, std::function<void(Event &)> executor, EventPriority priority,\n                                       Plugin &plugin, bool ignore_cancelled) = 0;\n\n    [[nodiscard]] virtual Permission *getPermission(std::string name) const = 0;\n\n    virtual Permission *addPermission(std::unique_ptr<Permission> perm) = 0;\n\n    virtual void removePermission(Permission &perm) = 0;\n\n    virtual void removePermission(std::string name) = 0;\n\n    [[nodiscard]] virtual std::unordered_set<Permission *> getDefaultPermissions(bool op) const = 0;\n\n    virtual void recalculatePermissionDefaults(Permission &perm) = 0;\n\n    virtual void subscribeToPermission(std::string permission, Permissible &permissible) = 0;\n\n    virtual void unsubscribeFromPermission(std::string permission, Permissible &permissible) = 0;\n\n    [[nodiscard]] virtual std::unordered_set<Permissible *> getPermissionSubscriptions(\n        std::string permission) const = 0;\n\n    virtual void subscribeToDefaultPerms(bool op, Permissible &permissible) = 0;\n\n    virtual void unsubscribeFromDefaultPerms(bool op, Permissible &permissible) = 0;\n\n    [[nodiscard]] virtual std::unordered_set<Permissible *> getDefaultPermSubscriptions(bool op) const = 0;\n\n    [[nodiscard]] virtual std::unordered_set<Permission *> getPermissions() const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_3a50fadda3c7cdc27c965a478a3f7d27/","title":"Dir include/endstone/scheduler","text":"

          FileList > endstone > scheduler

          "},{"location":"reference/cpp/dir_3a50fadda3c7cdc27c965a478a3f7d27/#files","title":"Files","text":"Type Name file scheduler.h file task.h

          The documentation for this class was generated from the following file include/endstone/scheduler/

          "},{"location":"reference/cpp/scheduler_8h/","title":"File scheduler.h","text":"

          FileList > endstone > scheduler > scheduler.h

          Go to the source code of this file

          • #include \"endstone/scheduler/task.h\"
          "},{"location":"reference/cpp/scheduler_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/scheduler_8h/#classes","title":"Classes","text":"Type Name class Scheduler Represents a scheduler that executes various tasks.

          The documentation for this class was generated from the following file include/endstone/scheduler/scheduler.h

          "},{"location":"reference/cpp/scheduler_8h_source/","title":"File scheduler.h","text":"

          File List > endstone > scheduler > scheduler.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/scheduler/task.h\"\n\nnamespace endstone {\n\nclass Scheduler {\npublic:\n    virtual ~Scheduler() = default;\n\n    virtual std::shared_ptr<Task> runTask(Plugin &plugin, std::function<void()> task) = 0;\n\n    virtual std::shared_ptr<Task> runTaskLater(Plugin &plugin, std::function<void()> task, std::uint64_t delay) = 0;\n\n    virtual std::shared_ptr<Task> runTaskTimer(Plugin &plugin, std::function<void()> task, std::uint64_t delay,\n                                               std::uint64_t period) = 0;\n\n    virtual std::shared_ptr<Task> runTaskAsync(Plugin &plugin, std::function<void()> task) = 0;\n\n    virtual std::shared_ptr<Task> runTaskLaterAsync(Plugin &plugin, std::function<void()> task, std::uint64_t delay) = 0;\n\n    virtual std::shared_ptr<Task> runTaskTimerAsync(Plugin &plugin, std::function<void()> task, std::uint64_t delay,\n                                               std::uint64_t period) = 0;\n\n    virtual void cancelTask(TaskId id) = 0;\n\n    virtual void cancelTasks(Plugin &plugin) = 0;\n\n    virtual bool isRunning(TaskId id) = 0;\n\n    virtual bool isQueued(TaskId id) = 0;\n\n    virtual std::vector<Task *> getPendingTasks() = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/task_8h/","title":"File task.h","text":"

          FileList > endstone > scheduler > task.h

          Go to the source code of this file

          • #include <cstdint>
          • #include \"endstone/plugin/plugin.h\"
          "},{"location":"reference/cpp/task_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/task_8h/#classes","title":"Classes","text":"Type Name class Task Represents a task being executed by the scheduler.

          The documentation for this class was generated from the following file include/endstone/scheduler/task.h

          "},{"location":"reference/cpp/task_8h_source/","title":"File task.h","text":"

          File List > endstone > scheduler > task.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <cstdint>\n\n#include \"endstone/plugin/plugin.h\"\n\nnamespace endstone {\n\nusing TaskId = std::uint32_t;\n\nclass Task {\npublic:\n    virtual ~Task() = default;\n\n    [[nodiscard]] virtual TaskId getTaskId() const = 0;\n\n    [[nodiscard]] virtual Plugin *getOwner() const = 0;\n\n    [[nodiscard]] virtual bool isSync() const = 0;\n\n    [[nodiscard]] virtual bool isCancelled() const = 0;\n\n    virtual void cancel() = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_19c52f9ea81a2cf7449c80dcee80d6f0/","title":"Dir include/endstone/scoreboard","text":"

          FileList > endstone > scoreboard

          "},{"location":"reference/cpp/dir_19c52f9ea81a2cf7449c80dcee80d6f0/#files","title":"Files","text":"Type Name file criteria.h file display_slot.h file objective.h file objective_sort_order.h file render_type.h file score.h file score_entry.h file scoreboard.h

          The documentation for this class was generated from the following file include/endstone/scoreboard/

          "},{"location":"reference/cpp/criteria_8h/","title":"File criteria.h","text":"

          FileList > endstone > scoreboard > criteria.h

          Go to the source code of this file

          • #include \"endstone/scoreboard/render_type.h\"
          "},{"location":"reference/cpp/criteria_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/criteria_8h/#classes","title":"Classes","text":"Type Name class Criteria Represents a scoreboard criteria.

          The documentation for this class was generated from the following file include/endstone/scoreboard/criteria.h

          "},{"location":"reference/cpp/criteria_8h_source/","title":"File criteria.h","text":"

          File List > endstone > scoreboard > criteria.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/scoreboard/render_type.h\"\n\nnamespace endstone {\n\nclass Criteria {\npublic:\n    enum class Type {\n        Dummy,\n    };\n\n    virtual ~Criteria() = default;\n\n    [[nodiscard]] virtual std::string getName() const = 0;\n\n    [[nodiscard]] virtual bool isReadOnly() const = 0;\n\n    [[nodiscard]] virtual RenderType getDefaultRenderType() const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/display__slot_8h/","title":"File display_slot.h","text":"

          FileList > endstone > scoreboard > display_slot.h

          Go to the source code of this file

          "},{"location":"reference/cpp/display__slot_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/scoreboard/display_slot.h

          "},{"location":"reference/cpp/display__slot_8h_source/","title":"File display_slot.h","text":"

          File List > endstone > scoreboard > display_slot.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class DisplaySlot {\n    BelowName,\n    PlayerList,\n    SideBar,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/objective_8h/","title":"File objective.h","text":"

          FileList > endstone > scoreboard > objective.h

          Go to the source code of this file

          • #include <string>
          • #include \"endstone/scoreboard/objective_sort_order.h\"
          • #include \"endstone/scoreboard/score.h\"
          • #include \"endstone/util/result.h\"
          "},{"location":"reference/cpp/objective_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/objective_8h/#classes","title":"Classes","text":"Type Name class Objective Represents an objective on a scoreboard that can show scores specific to entries.

          The documentation for this class was generated from the following file include/endstone/scoreboard/objective.h

          "},{"location":"reference/cpp/objective_8h_source/","title":"File objective.h","text":"

          File List > endstone > scoreboard > objective.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n\n#include \"endstone/scoreboard/objective_sort_order.h\"\n#include \"endstone/scoreboard/score.h\"\n#include \"endstone/util/result.h\"\n\nnamespace endstone {\n\nclass Scoreboard;\n\nclass Objective {\npublic:\n    virtual ~Objective() = default;\n\n    [[nodiscard]] virtual Result<std::string> getName() const = 0;\n\n    [[nodiscard]] virtual Result<std::string> getDisplayName() const = 0;\n\n    virtual Result<void> setDisplayName(std::string display_name) = 0;\n\n    [[nodiscard]] virtual Result<const Criteria *> getCriteria() const = 0;\n\n    [[nodiscard]] virtual Result<bool> isModifiable() const = 0;\n\n    [[nodiscard]] virtual Scoreboard &getScoreboard() const = 0;\n\n    [[nodiscard]] virtual Result<void> unregister() const = 0;\n\n    [[nodiscard]] virtual Result<bool> isDisplayed() const = 0;\n\n    [[nodiscard]] virtual Result<DisplaySlot> getDisplaySlot() const = 0;\n\n    [[nodiscard]] virtual Result<ObjectiveSortOrder> getSortOrder() const = 0;\n\n    virtual Result<void> setDisplay(std::optional<DisplaySlot> slot) = 0;\n\n    virtual Result<void> setDisplay(std::optional<DisplaySlot> slot, ObjectiveSortOrder order) = 0;\n\n    [[nodiscard]] virtual Result<RenderType> getRenderType() const = 0;\n\n    virtual Result<void> setRenderType(RenderType render_type) = 0;\n\n    [[nodiscard]] virtual Result<std::unique_ptr<Score>> getScore(ScoreEntry entry) const = 0;\n\n    virtual bool operator==(const Objective &other) const = 0;\n    virtual bool operator!=(const Objective &other) const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/objective__sort__order_8h/","title":"File objective_sort_order.h","text":"

          FileList > endstone > scoreboard > objective_sort_order.h

          Go to the source code of this file

          "},{"location":"reference/cpp/objective__sort__order_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/scoreboard/objective_sort_order.h

          "},{"location":"reference/cpp/objective__sort__order_8h_source/","title":"File objective_sort_order.h","text":"

          File List > endstone > scoreboard > objective_sort_order.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class ObjectiveSortOrder {\n    Ascending,\n    Descending,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/render__type_8h/","title":"File render_type.h","text":"

          FileList > endstone > scoreboard > render_type.h

          Go to the source code of this file

          "},{"location":"reference/cpp/render__type_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/scoreboard/render_type.h

          "},{"location":"reference/cpp/render__type_8h_source/","title":"File render_type.h","text":"

          File List > endstone > scoreboard > render_type.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\nnamespace endstone {\n\nenum class RenderType : std::uint8_t {\n    Integer,\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/score_8h/","title":"File score.h","text":"

          FileList > endstone > scoreboard > score.h

          Go to the source code of this file

          • #include \"endstone/scoreboard/score_entry.h\"
          • #include \"endstone/util/result.h\"
          "},{"location":"reference/cpp/score_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/score_8h/#classes","title":"Classes","text":"Type Name class Score Represents a score for an objective on a scoreboard.

          The documentation for this class was generated from the following file include/endstone/scoreboard/score.h

          "},{"location":"reference/cpp/score_8h_source/","title":"File score.h","text":"

          File List > endstone > scoreboard > score.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include \"endstone/scoreboard/score_entry.h\"\n#include \"endstone/util/result.h\"\n\nnamespace endstone {\n\nclass Scoreboard;\nclass Objective;\n\nclass Score {\npublic:\n    virtual ~Score() = default;\n\n    [[nodiscard]] virtual ScoreEntry getEntry() const = 0;\n\n    [[nodiscard]] virtual Result<int> getValue() const = 0;\n\n    virtual Result<void> setValue(int score) = 0;\n\n    [[nodiscard]] virtual Result<bool> isScoreSet() const = 0;\n\n    [[nodiscard]] virtual Objective &getObjective() const = 0;\n\n    [[nodiscard]] virtual Scoreboard &getScoreboard() const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/score__entry_8h/","title":"File score_entry.h","text":"

          FileList > endstone > scoreboard > score_entry.h

          Go to the source code of this file

          • #include <string>
          • #include <variant>
          • #include <vector>
          "},{"location":"reference/cpp/score__entry_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/scoreboard/score_entry.h

          "},{"location":"reference/cpp/score__entry_8h_source/","title":"File score_entry.h","text":"

          File List > endstone > scoreboard > score_entry.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <variant>\n#include <vector>\n\nnamespace endstone {\n\nclass Player;\nclass Actor;\n\nusing ScoreEntry = std::variant<Player *, Actor *, std::string>;\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/scoreboard_8h/","title":"File scoreboard.h","text":"

          FileList > endstone > scoreboard > scoreboard.h

          Go to the source code of this file

          • #include <string>
          • #include \"endstone/scoreboard/criteria.h\"
          • #include \"endstone/scoreboard/display_slot.h\"
          • #include \"endstone/scoreboard/objective.h\"
          • #include \"endstone/scoreboard/score_entry.h\"
          • #include \"endstone/util/result.h\"
          "},{"location":"reference/cpp/scoreboard_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/scoreboard_8h/#classes","title":"Classes","text":"Type Name class Scoreboard Represents a scoreboard.

          The documentation for this class was generated from the following file include/endstone/scoreboard/scoreboard.h

          "},{"location":"reference/cpp/scoreboard_8h_source/","title":"File scoreboard.h","text":"

          File List > endstone > scoreboard > scoreboard.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n\n#include \"endstone/scoreboard/criteria.h\"\n#include \"endstone/scoreboard/display_slot.h\"\n#include \"endstone/scoreboard/objective.h\"\n#include \"endstone/scoreboard/score_entry.h\"\n#include \"endstone/util/result.h\"\n\nnamespace endstone {\n\nclass Scoreboard : public std::enable_shared_from_this<Scoreboard> {\npublic:\n    virtual ~Scoreboard() = default;\n\n    virtual Result<std::unique_ptr<Objective>> addObjective(std::string name, Criteria::Type criteria) = 0;\n\n    virtual Result<std::unique_ptr<Objective>> addObjective(std::string name, Criteria::Type criteria,\n                                                            std::string display_name) = 0;\n\n    virtual Result<std::unique_ptr<Objective>> addObjective(std::string name, Criteria::Type criteria,\n                                                            std::string display_name, RenderType render_type) = 0;\n\n    [[nodiscard]] virtual std::unique_ptr<Objective> getObjective(std::string name) const = 0;\n\n    [[nodiscard]] virtual std::unique_ptr<Objective> getObjective(DisplaySlot slot) const = 0;\n\n    [[nodiscard]] virtual std::vector<std::unique_ptr<Objective>> getObjectives() const = 0;\n\n    [[nodiscard]] virtual std::vector<std::unique_ptr<Objective>> getObjectivesByCriteria(\n        Criteria::Type criteria) const = 0;\n\n    [[nodiscard]] virtual std::vector<std::unique_ptr<Score>> getScores(ScoreEntry entry) const = 0;\n\n    virtual void resetScores(ScoreEntry entry) = 0;\n\n    [[nodiscard]] virtual std::vector<ScoreEntry> getEntries() const = 0;\n\n    virtual void clearSlot(DisplaySlot slot) = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/dir_89b85071337bf933dea6c29b4c6a4410/","title":"Dir include/endstone/util","text":"

          FileList > endstone > util

          "},{"location":"reference/cpp/dir_89b85071337bf933dea6c29b4c6a4410/#files","title":"Files","text":"Type Name file error.h file result.h file socket_address.h file uuid.h file vector.h

          The documentation for this class was generated from the following file include/endstone/util/

          "},{"location":"reference/cpp/error_8h/","title":"File error.h","text":"

          FileList > endstone > util > error.h

          Go to the source code of this file

          • #include <string_view>
          "},{"location":"reference/cpp/error_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/error_8h/#classes","title":"Classes","text":"Type Name class Error Represents an error with a message and the stack trace.

          The documentation for this class was generated from the following file include/endstone/util/error.h

          "},{"location":"reference/cpp/error_8h_source/","title":"File error.h","text":"

          File List > endstone > util > error.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string_view>\n\nnamespace endstone {\n\nclass Error {\npublic:\n  Error(std::string_view message, std::string_view stack_trace) : message_(message), stack_trace_(stack_trace) {}\n\n  [[nodiscard]] std::string_view getMessage() const noexcept\n  {\n    return message_;\n  }\n\n  [[nodiscard]] std::string_view getStackTrace() const noexcept\n  {\n    return stack_trace_;\n  }\n\nprivate:\n  std::string message_;\n  std::string stack_trace_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/result_8h/","title":"File result.h","text":"

          FileList > endstone > util > result.h

          Go to the source code of this file

          • #include <nonstd/expected.hpp>
          • #include \"endstone/util/error.h\"
          "},{"location":"reference/cpp/result_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/util/result.h

          "},{"location":"reference/cpp/result_8h_source/","title":"File result.h","text":"

          File List > endstone > util > result.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <nonstd/expected.hpp>\n\n#include \"endstone/util/error.h\"\n\nnamespace endstone {\n\ntemplate <typename T>\nusing Result = nonstd::expected<T, Error>;\n\n} // namespace endstone\n
          "},{"location":"reference/cpp/socket__address_8h/","title":"File socket_address.h","text":"

          FileList > endstone > util > socket_address.h

          Go to the source code of this file

          • #include <cstdint>
          • #include <string>
          "},{"location":"reference/cpp/socket__address_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/socket__address_8h/#classes","title":"Classes","text":"Type Name class SocketAddress Represents an IP Socket Address (hostname + port number).

          The documentation for this class was generated from the following file include/endstone/util/socket_address.h

          "},{"location":"reference/cpp/socket__address_8h_source/","title":"File socket_address.h","text":"

          File List > endstone > util > socket_address.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n#include <cstdint>\n#include <string>\n\nnamespace endstone {\n\nclass SocketAddress {\npublic:\n    SocketAddress() = default;\n    SocketAddress(std::string hostname, std::uint32_t port) : hostname_(std::move(hostname)), port_(port) {}\n\n    [[nodiscard]] const std::string &getHostname() const\n    {\n        return hostname_;\n    }\n\n    [[nodiscard]] std::uint32_t getPort() const\n    {\n        return port_;\n    }\n\nprivate:\n    std::string hostname_;\n    std::uint32_t port_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/uuid_8h/","title":"File uuid.h","text":"

          FileList > endstone > util > uuid.h

          Go to the source code of this file

          • #include <algorithm>
          • #include <cstddef>
          • #include <cstdint>
          • #include <string>
          "},{"location":"reference/cpp/uuid_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone namespace std"},{"location":"reference/cpp/uuid_8h/#classes","title":"Classes","text":"Type Name class UUID Implementation of Universally Unique Identifier ( UUID ) struct hash< endstone::UUID > <>

          The documentation for this class was generated from the following file include/endstone/util/uuid.h

          "},{"location":"reference/cpp/uuid_8h_source/","title":"File uuid.h","text":"

          File List > endstone > util > uuid.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <algorithm>\n#include <cstddef>\n#include <cstdint>\n#include <string>\n\nnamespace endstone {\n\nclass UUID {\npublic:\n    std::uint8_t *begin() noexcept\n    {\n        return data;\n    }\n\n    [[nodiscard]] const uint8_t *begin() const noexcept\n    {\n        return data;\n    }\n\n    std::uint8_t *end() noexcept\n    {\n        return data + size();\n    }\n\n    [[nodiscard]] const uint8_t *end() const noexcept\n    {\n        return data + size();\n    }\n\n    [[nodiscard]] static constexpr std::size_t size() noexcept\n    {\n        return 16;\n    }\n\n    [[nodiscard]] bool isNil() const noexcept\n    {\n        return std::all_of(std::begin(data), std::end(data), [](const auto &val) { return val == 0U; });\n    }\n\n    [[nodiscard]] int version() const noexcept\n    {\n        // version is stored in octet 9 which is index 6, since indexes count backwards\n        uint8_t octet9 = data[6];\n        if ((octet9 & 0xF0) == 0x10) {\n            return 1;\n        }\n        if ((octet9 & 0xF0) == 0x20) {\n            return 2;\n        }\n        if ((octet9 & 0xF0) == 0x30) {\n            return 3;\n        }\n        if ((octet9 & 0xF0) == 0x40) {\n            return 4;\n        }\n        if ((octet9 & 0xF0) == 0x50) {\n            return 5;\n        }\n        return -1;\n    }\n\n    void swap(UUID &rhs) noexcept\n    {\n        UUID tmp = *this;\n        *this = rhs;\n        rhs = tmp;\n    }\n\n    [[nodiscard]] std::string str() const\n    {\n        std::string result;\n        result.reserve(36);\n\n        static const char *chars = \"0123456789abcdef\";\n\n        for (size_t i = 0; i < 16; ++i) {\n            result.push_back(chars[(data[i] >> 4) & 0x0F]);\n            result.push_back(chars[data[i] & 0x0F]);\n            if (i == 3 || i == 5 || i == 7 || i == 9) {\n                result.push_back('-');\n            }\n        }\n\n        return result;\n    }\n    std::uint8_t data[16];\n};\nstatic_assert(sizeof(endstone::UUID) == endstone::UUID::size());\n\ninline bool operator==(UUID const &lhs, UUID const &rhs) noexcept\n{\n    return memcmp(lhs.data, rhs.data, sizeof(lhs.data)) == 0;\n}\n\ninline bool operator<(UUID const &lhs, UUID const &rhs) noexcept\n{\n    return memcmp(lhs.data, rhs.data, sizeof(lhs.data)) < 0;\n}\n\ninline bool operator!=(UUID const &lhs, UUID const &rhs) noexcept\n{\n    return !(lhs == rhs);\n}\n\ninline bool operator>(UUID const &lhs, UUID const &rhs) noexcept\n{\n    return rhs < lhs;\n}\ninline bool operator<=(UUID const &lhs, UUID const &rhs) noexcept\n{\n    return !(rhs < lhs);\n}\n\ninline bool operator>=(UUID const &lhs, UUID const &rhs) noexcept\n{\n    return !(lhs < rhs);\n}\n\ninline void swap(UUID &lhs, UUID &rhs) noexcept\n{\n    lhs.swap(rhs);\n}\n\ninline std::size_t hash_value(UUID const &u) noexcept\n{\n    std::size_t seed = 0;\n    for (unsigned char i : u) {\n        seed ^= static_cast<std::size_t>(i) + 0x9e3779b9 + (seed << 6) + (seed >> 2);\n    }\n\n    return seed;\n}\n\n}  // namespace endstone\n\nnamespace std {\ntemplate <>\nstruct hash<endstone::UUID> {\n    std::size_t operator()(const endstone::UUID &value) const noexcept\n    {\n        return endstone::hash_value(value);\n    }\n};\n}  // namespace std\n
          "},{"location":"reference/cpp/vector_8h/","title":"File vector.h","text":"

          FileList > endstone > util > vector.h

          Go to the source code of this file

          • #include <cmath>
          "},{"location":"reference/cpp/vector_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/vector_8h/#classes","title":"Classes","text":"Type Name class Vector <typename T>Represents a 3-dimensional vector.

          The documentation for this class was generated from the following file include/endstone/util/vector.h

          "},{"location":"reference/cpp/vector_8h_source/","title":"File vector.h","text":"

          File List > endstone > util > vector.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <cmath>\n\nnamespace endstone {\n\ntemplate <typename T>\nclass Vector {\npublic:\n    constexpr Vector() : x_(0), y_(0), z_(0) {}\n    constexpr Vector(T x, T y, T z) : x_(x), y_(y), z_(z) {}\n\n    constexpr T getX() const\n    {\n        return x_;\n    }\n\n    constexpr void setX(T x)\n    {\n        x_ = x;\n    }\n\n    constexpr T getY() const\n    {\n        return y_;\n    }\n\n    constexpr void setY(T y)\n    {\n        y_ = y;\n    }\n\n    constexpr T getZ() const\n    {\n        return z_;\n    }\n\n    constexpr void setZ(T z)\n    {\n        z_ = z;\n    }\n\n    constexpr Vector<T> operator+(const Vector<T> &other) const\n    {\n        return Vector(x_ + other.x_, y_ + other.y_, z_ + other.z_);\n    }\n\n    constexpr Vector<T> operator-(const Vector<T> &other) const\n    {\n        return Vector(x_ - other.x_, y_ - other.y_, z_ - other.z_);\n    }\n\n    constexpr Vector<T> operator*(const Vector<T> &other) const\n    {\n        return Vector(x_ * other.x_, y_ * other.y_, z_ * other.z_);\n    }\n\n    constexpr Vector<T> operator/(const Vector<T> &other) const\n    {\n        return Vector(x_ / other.x_, y_ / other.y_, z_ / other.z_);\n    }\n\n    Vector<T> &operator+=(const Vector<T> &other)\n    {\n        x_ += other.x_;\n        y_ += other.y_;\n        z_ += other.z_;\n        return *this;\n    }\n\n    Vector<T> &operator-=(const Vector<T> &other)\n    {\n        x_ -= other.x_;\n        y_ -= other.y_;\n        z_ -= other.z_;\n        return *this;\n    }\n\n    Vector<T> &operator*=(const Vector<T> &other)\n    {\n        x_ *= other.x_;\n        y_ *= other.y_;\n        z_ *= other.z_;\n        return *this;\n    }\n\n    Vector<T> &operator/=(const Vector<T> &other)\n    {\n        x_ /= other.x_;\n        y_ /= other.y_;\n        z_ /= other.z_;\n        return *this;\n    }\n\n    Vector<T> operator+(T scalar) const\n    {\n        return Vector<T>(x_ + scalar, y_ + scalar, z_ + scalar);\n    }\n\n    Vector<T> operator-(T scalar) const\n    {\n        return Vector<T>(x_ - scalar, y_ - scalar, z_ - scalar);\n    }\n\n    Vector<T> operator*(T scalar) const\n    {\n        return Vector<T>(x_ * scalar, y_ * scalar, z_ * scalar);\n    }\n\n    Vector<T> operator/(T scalar) const\n    {\n        return Vector<T>(x_ / scalar, y_ / scalar, z_ / scalar);\n    }\n\n    friend Vector<T> operator+(T scalar, const Vector<T> &v)\n    {\n        return Vector<T>(scalar + v.x_, scalar + v.y_, scalar + v.z_);\n    }\n\n    friend Vector<T> operator-(T scalar, const Vector<T> &v)\n    {\n        return Vector<T>(scalar - v.x_, scalar - v.y_, scalar - v.z_);\n    }\n\n    friend Vector<T> operator*(T scalar, const Vector<T> &v)\n    {\n        return Vector<T>(scalar * v.x_, scalar * v.y_, scalar * v.z_);\n    }\n\n    friend Vector<T> operator/(T scalar, const Vector<T> &v)\n    {\n        return Vector<T>(scalar / v.x_, scalar / v.y_, scalar / v.z_);\n    }\n\n    constexpr bool operator==(const Vector<T> &other) const\n    {\n        return (x_ == other.x_) && (y_ == other.y_) && (z_ == other.z_);\n    }\n\n    [[nodiscard]] constexpr T length() const\n    {\n        return std::sqrt(lengthSquared());\n    }\n\n    [[nodiscard]] constexpr T lengthSquared() const\n    {\n        return (x_ * x_) + (y_ * y_) + (z_ * z_);\n    }\n\n    [[nodiscard]] constexpr T distance(const Vector<T> &other) const\n    {\n        return std::sqrt(distanceSquared(other));\n    }\n\n    [[nodiscard]] constexpr T distanceSquared(const Vector<T> &other) const\n    {\n        return ((x_ - other.x_) * (x_ - other.x_)) + ((y_ - other.y_) * (y_ - other.y_)) +\n               ((z_ - other.z_) * (z_ - other.z_));\n    }\n\nprotected:\n    T x_;\n    T y_;\n    T z_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/logger_8h/","title":"File logger.h","text":"

          FileList > endstone > logger.h

          Go to the source code of this file

          • #include <string>
          • #include <utility>
          • #include <fmt/format.h>
          • #include <fmt/std.h>
          • #include \"endstone/util/error.h\"
          "},{"location":"reference/cpp/logger_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/logger_8h/#classes","title":"Classes","text":"Type Name class Logger Logger class which can format and output varies levels of logs.

          The documentation for this class was generated from the following file include/endstone/logger.h

          "},{"location":"reference/cpp/logger_8h_source/","title":"File logger.h","text":"

          File List > endstone > logger.h

          Go to the documentation of this file

          // Copyright (c) 2023, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <utility>\n\n#include <fmt/format.h>\n#include <fmt/std.h>\n\n#include \"endstone/util/error.h\"\n\nnamespace endstone {\n\nclass Logger {\npublic:\n    enum Level : std::uint8_t {\n        Trace = 0,\n        Debug = 1,\n        Info = 2,\n        Warning = 3,\n        Error = 4,\n        Critical = 5,\n        Off = 6,\n    };\n\n    Logger() = default;\n\n    virtual ~Logger() = default;\n    virtual void setLevel(Level level) = 0;\n\n    [[nodiscard]] virtual bool isEnabledFor(Level level) const = 0;\n\n    [[nodiscard]] virtual std::string_view getName() const = 0;\n\n    virtual void log(Level level, const std::string &message) const = 0;\n\n    template <typename... Args>\n    void log(Level level, const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        try {\n            log(level, fmt::format(format, std::forward<Args>(args)...));\n        }\n        catch (std::exception &e) {\n            log(Error, e.what());\n        }\n    }\n\n    void trace(const std::string &message) const\n    {\n        log(Trace, message);\n    }\n\n    template <typename... Args>\n    void trace(const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        log(Trace, format, std::forward<Args>(args)...);\n    }\n\n    void debug(const std::string &message) const\n    {\n        log(Debug, message);\n    }\n\n    template <typename... Args>\n    void debug(const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        log(Debug, format, std::forward<Args>(args)...);\n    }\n\n    void info(const std::string &message) const\n    {\n        log(Info, message);\n    }\n\n    template <typename... Args>\n    void info(const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        log(Info, format, std::forward<Args>(args)...);\n    }\n\n    void warning(const std::string &message) const\n    {\n        log(Warning, message);\n    }\n\n    template <typename... Args>\n    void warning(const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        log(Warning, format, std::forward<Args>(args)...);\n    }\n\n    void error(const std::string &message) const\n    {\n        log(Error, message);\n    }\n\n    template <typename... Args>\n    void error(const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        log(Error, format, std::forward<Args>(args)...);\n    }\n\n    void error(const endstone::Error &error) const\n    {\n        log(Error, error.getMessage());\n        log(Error, error.getStackTrace());\n    }\n\n    void critical(const std::string &message) const\n    {\n        log(Critical, message);\n    }\n\n    template <typename... Args>\n    void critical(const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        log(Critical, format, std::forward<Args>(args)...);\n    }\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/message_8h/","title":"File message.h","text":"

          FileList > endstone > message.h

          Go to the source code of this file

          • #include <string>
          • #include <utility>
          • #include <variant>
          • #include \"endstone/lang/translatable.h\"
          "},{"location":"reference/cpp/message_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone

          The documentation for this class was generated from the following file include/endstone/message.h

          "},{"location":"reference/cpp/message_8h_source/","title":"File message.h","text":"

          File List > endstone > message.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <string>\n#include <utility>\n#include <variant>\n\n#include \"endstone/lang/translatable.h\"\n\nnamespace endstone {\n\nusing Message = std::variant<std::string, Translatable>;\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/player_8h/","title":"File player.h","text":"

          FileList > endstone > player.h

          Go to the source code of this file

          • #include <chrono>
          • #include <variant>
          • #include \"endstone/actor/mob.h\"
          • #include \"endstone/form/action_form.h\"
          • #include \"endstone/form/message_form.h\"
          • #include \"endstone/form/modal_form.h\"
          • #include \"endstone/game_mode.h\"
          • #include \"endstone/inventory/player_inventory.h\"
          • #include \"endstone/network/spawn_particle_effect_packet.h\"
          • #include \"endstone/scoreboard/scoreboard.h\"
          • #include \"endstone/skin.h\"
          • #include \"endstone/util/socket_address.h\"
          • #include \"endstone/util/uuid.h\"
          "},{"location":"reference/cpp/player_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/player_8h/#classes","title":"Classes","text":"Type Name class Player Represents a player.

          The documentation for this class was generated from the following file include/endstone/player.h

          "},{"location":"reference/cpp/player_8h_source/","title":"File player.h","text":"

          File List > endstone > player.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <chrono>\n#include <variant>\n\n#include \"endstone/actor/mob.h\"\n#include \"endstone/form/action_form.h\"\n#include \"endstone/form/message_form.h\"\n#include \"endstone/form/modal_form.h\"\n#include \"endstone/game_mode.h\"\n#include \"endstone/inventory/player_inventory.h\"\n#include \"endstone/network/spawn_particle_effect_packet.h\"\n#include \"endstone/scoreboard/scoreboard.h\"\n#include \"endstone/skin.h\"\n#include \"endstone/util/socket_address.h\"\n#include \"endstone/util/uuid.h\"\n\nnamespace endstone {\n\nclass Player : public Mob {\nprotected:\n    using FormVariant = std::variant<MessageForm, ActionForm, ModalForm>;\n\npublic:\n    // CommandSender\n    [[nodiscard]] Player *asPlayer() const override\n    {\n        return const_cast<Player *>(this);\n    }\n\n    [[nodiscard]] virtual UUID getUniqueId() const = 0;\n\n    [[nodiscard]] virtual std::string getXuid() const = 0;\n\n    [[nodiscard]] virtual const SocketAddress &getAddress() const = 0;\n\n    virtual void sendPopup(std::string message) const = 0;\n\n    virtual void sendTip(std::string message) const = 0;\n\n    virtual void sendToast(std::string title, std::string content) const = 0;\n\n    virtual void kick(std::string message) const = 0;\n\n    virtual void giveExp(int amount) = 0;\n\n    virtual void giveExpLevels(int amount) = 0;\n\n    [[nodiscard]] virtual float getExpProgress() const = 0;\n\n    virtual Result<void> setExpProgress(float progress) = 0;\n\n    [[nodiscard]] virtual int getExpLevel() const = 0;\n\n    virtual Result<void> setExpLevel(int level) = 0;\n\n    [[nodiscard]] virtual int getTotalExp() const = 0;\n\n    [[nodiscard]] virtual bool getAllowFlight() const = 0;\n\n    virtual void setAllowFlight(bool flight) = 0;\n\n    [[nodiscard]] virtual bool isFlying() const = 0;\n\n    virtual Result<void> setFlying(bool value) = 0;\n\n    [[nodiscard]] virtual float getFlySpeed() const = 0;\n\n    virtual void setFlySpeed(float value) const = 0;\n\n    [[nodiscard]] virtual float getWalkSpeed() const = 0;\n\n    virtual void setWalkSpeed(float value) const = 0;\n\n    [[nodiscard]] virtual Scoreboard &getScoreboard() const = 0;\n\n    void virtual setScoreboard(Scoreboard &scoreboard) = 0;\n\n    virtual void sendTitle(std::string title, std::string subtitle) const = 0;\n\n    virtual void sendTitle(std::string title, std::string subtitle, int fade_in, int stay, int fade_out) const = 0;\n\n    virtual void resetTitle() const = 0;\n\n    virtual void spawnParticle(std::string name, Location location) const = 0;\n\n    virtual void spawnParticle(std::string name, float x, float y, float z) const = 0;\n\n    virtual void spawnParticle(std::string name, Location location,\n                               std::optional<std::string> molang_variables_json) const = 0;\n\n    virtual void spawnParticle(std::string name, float x, float y, float z,\n                               std::optional<std::string> molang_variables_json) const = 0;\n\n    [[nodiscard]] virtual std::chrono::milliseconds getPing() const = 0;\n\n    virtual void updateCommands() const = 0;\n\n    virtual bool performCommand(std::string command) const = 0;  // NOLINT(*-use-nodiscard)\n\n    [[nodiscard]] virtual GameMode getGameMode() const = 0;\n\n    virtual void setGameMode(GameMode mode) = 0;\n\n    [[nodiscard]] virtual PlayerInventory &getInventory() const = 0;\n\n    [[nodiscard]] virtual std::string getLocale() const = 0;\n\n    [[nodiscard]] virtual std::string getDeviceOS() const = 0;\n\n    [[nodiscard]] virtual std::string getDeviceId() const = 0;\n\n    [[nodiscard]] virtual std::string getGameVersion() const = 0;\n\n    [[nodiscard]] virtual const Skin &getSkin() const = 0;\n\n    virtual void transfer(std::string host, int port) const = 0;\n\n    virtual void sendForm(FormVariant form) = 0;\n\n    virtual void closeForm() = 0;\n\n    virtual void sendPacket(Packet &packet) const = 0;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/server_8h/","title":"File server.h","text":"

          FileList > endstone > server.h

          Go to the source code of this file

          • #include <chrono>
          • #include <memory>
          • #include <string>
          • #include <string_view>
          • #include <vector>
          • #include \"endstone/block/block_data.h\"
          • #include \"endstone/boss/boss_bar.h\"
          • #include \"endstone/lang/language.h\"
          • #include \"endstone/level/level.h\"
          • #include \"endstone/logger.h\"
          • #include \"endstone/player.h\"
          • #include \"endstone/scoreboard/scoreboard.h\"
          • #include \"endstone/util/result.h\"
          • #include \"endstone/util/uuid.h\"
          "},{"location":"reference/cpp/server_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/server_8h/#classes","title":"Classes","text":"Type Name class Server Represents a server implementation.

          The documentation for this class was generated from the following file include/endstone/server.h

          "},{"location":"reference/cpp/server_8h_source/","title":"File server.h","text":"

          File List > endstone > server.h

          Go to the documentation of this file

          // Copyright (c) 2023, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <chrono>\n#include <memory>\n#include <string>\n#include <string_view>\n#include <vector>\n\n#include \"endstone/block/block_data.h\"\n#include \"endstone/boss/boss_bar.h\"\n#include \"endstone/lang/language.h\"\n#include \"endstone/level/level.h\"\n#include \"endstone/logger.h\"\n#include \"endstone/player.h\"\n#include \"endstone/scoreboard/scoreboard.h\"\n#include \"endstone/util/result.h\"\n#include \"endstone/util/uuid.h\"\n\nnamespace endstone {\n\nclass ConsoleCommandSender;\nclass Scheduler;\nclass PluginCommand;\nclass PluginManager;\n\nclass Server {\npublic:\n    Server() = default;\n    Server(const Server &) = delete;\n    Server &operator=(const Server &) = delete;\n\n    virtual ~Server() = default;\n\n    [[nodiscard]] virtual std::string getName() const = 0;\n\n    [[nodiscard]] virtual std::string getVersion() const = 0;\n\n    [[nodiscard]] virtual std::string getMinecraftVersion() const = 0;\n\n    [[nodiscard]] virtual Logger &getLogger() const = 0;\n\n    [[nodiscard]] virtual Language &getLanguage() const = 0;\n\n    [[nodiscard]] virtual PluginManager &getPluginManager() const = 0;\n\n    [[nodiscard]] virtual PluginCommand *getPluginCommand(std::string name) const = 0;\n\n    [[nodiscard]] virtual ConsoleCommandSender &getCommandSender() const = 0;\n\n    [[nodiscard]] virtual bool dispatchCommand(CommandSender &sender, std::string command_line) const = 0;\n\n    [[nodiscard]] virtual Scheduler &getScheduler() const = 0;\n\n    [[nodiscard]] virtual Level *getLevel() const = 0;\n\n    [[nodiscard]] virtual std::vector<Player *> getOnlinePlayers() const = 0;\n\n    [[nodiscard]] virtual int getMaxPlayers() const = 0;\n\n    virtual Result<void> setMaxPlayers(int max_players) = 0;\n\n    [[nodiscard]] virtual Player *getPlayer(endstone::UUID id) const = 0;\n\n    [[nodiscard]] virtual bool getOnlineMode() const = 0;\n\n    [[nodiscard]] virtual Player *getPlayer(std::string name) const = 0;\n\n    virtual void shutdown() = 0;\n\n    virtual void reload() = 0;\n\n    virtual void reloadData() = 0;\n\n    virtual void broadcast(const Message &message, const std::string &permission) const = 0;\n\n    virtual void broadcastMessage(const Message &message) const = 0;\n\n    template <typename... Args>\n    void broadcastMessage(const fmt::format_string<Args...> format, Args &&...args) const\n    {\n        try {\n            broadcastMessage(fmt::format(format, std::forward<Args>(args)...));\n        }\n        catch (std::exception &e) {\n            getLogger().log(Logger::Error, e.what());\n        }\n    }\n\n    [[nodiscard]] virtual bool isPrimaryThread() const = 0;\n\n    [[nodiscard]] virtual Scoreboard *getScoreboard() const = 0;\n\n    [[nodiscard]] virtual std::shared_ptr<Scoreboard> createScoreboard() = 0;\n\n    virtual float getCurrentMillisecondsPerTick() = 0;\n\n    virtual float getAverageMillisecondsPerTick() = 0;\n\n    virtual float getCurrentTicksPerSecond() = 0;\n    virtual float getAverageTicksPerSecond() = 0;\n\n    virtual float getCurrentTickUsage() = 0;\n\n    virtual float getAverageTickUsage() = 0;\n\n    [[nodiscard]] virtual std::unique_ptr<BossBar> createBossBar(std::string title, BarColor color,\n                                                                 BarStyle style) const = 0;\n\n    [[nodiscard]] virtual std::unique_ptr<BossBar> createBossBar(std::string title, BarColor color, BarStyle style,\n                                                                 std::vector<BarFlag> flags) const = 0;\n\n    [[nodiscard]] virtual Result<std::shared_ptr<BlockData>> createBlockData(std::string type) const = 0;\n\n    [[nodiscard]] virtual Result<std::shared_ptr<BlockData>> createBlockData(std::string type,\n                                                                             BlockStates block_states) const = 0;\n\n    [[nodiscard]] virtual std::chrono::system_clock::time_point getStartTime() = 0;\n\n    inline static const std::string BroadcastChannelAdmin = \"endstone.broadcast.admin\";\n\n    inline static const std::string BroadcastChannelUser = \"endstone.broadcast.user\";\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/skin_8h/","title":"File skin.h","text":"

          FileList > endstone > skin.h

          Go to the source code of this file

          • #include <optional>
          • #include <string>
          • #include <utility>
          "},{"location":"reference/cpp/skin_8h/#namespaces","title":"Namespaces","text":"Type Name namespace endstone"},{"location":"reference/cpp/skin_8h/#classes","title":"Classes","text":"Type Name class Skin Represents a player skin. struct ImageData

          The documentation for this class was generated from the following file include/endstone/skin.h

          "},{"location":"reference/cpp/skin_8h_source/","title":"File skin.h","text":"

          File List > endstone > skin.h

          Go to the documentation of this file

          // Copyright (c) 2024, The Endstone Project. (https://endstone.dev) All Rights Reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n//     http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n#pragma once\n\n#include <optional>\n#include <string>\n#include <utility>\n\nnamespace endstone {\n\nclass Skin {\npublic:\n    struct ImageData {\n        int height;\n        int width;\n        std::string data;\n    };\n\n    Skin() = default;\n\n    Skin(std::string skin_id, ImageData skin_data, std::optional<std::string> cape_id = std::nullopt,\n         std::optional<ImageData> cape_data = std::nullopt)\n        : skin_id_(std::move(skin_id)), skin_data_(std::move(skin_data)), cape_id_(std::move(cape_id)),\n          cape_data_(std::move(cape_data))\n    {\n    }\n\n    [[nodiscard]] const std::string &getSkinId() const\n    {\n        return skin_id_;\n    }\n\n    [[nodiscard]] const ImageData &getSkinData() const\n    {\n        return skin_data_;\n    }\n\n    [[nodiscard]] const std::optional<std::string> &getCapeId() const\n    {\n        return cape_id_;\n    }\n\n    [[nodiscard]] const std::optional<ImageData> &getCapeData() const\n    {\n        return cape_data_;\n    }\n\nprivate:\n    std::string skin_id_;\n    ImageData skin_data_;\n    std::optional<std::string> cape_id_;\n    std::optional<ImageData> cape_data_;\n};\n\n}  // namespace endstone\n
          "},{"location":"reference/cpp/namespaces/","title":"Namespace List","text":"

          Here is a list of all namespaces with brief descriptions:

          • namespace endstone
            • namespace detail
          • namespace fmt
          • namespace std
          "},{"location":"reference/cpp/classes/","title":"Class Index","text":""},{"location":"reference/cpp/classes/#a","title":"a","text":"
          • ActionForm (endstone)
          • Actor (endstone)
          • ActorDeathEvent (endstone)
          • ActorEvent (endstone)
          • ActorKnockbackEvent (endstone)
          • ActorRemoveEvent (endstone)
          • ActorSpawnEvent (endstone)
          • ActorTeleportEvent (endstone)
          "},{"location":"reference/cpp/classes/#b","title":"b","text":"
          • BanList (endstone)
          • Block (endstone)
          • BlockBreakEvent (endstone)
          • BlockData (endstone)
          • BlockEvent (endstone)
          • BlockPlaceEvent (endstone)
          • BlockState (endstone)
          • BossBar (endstone)
          • BroadcastMessageEvent (endstone)
          • Button (endstone::ActionForm)
          "},{"location":"reference/cpp/classes/#c","title":"c","text":"
          • ColorFormat (endstone)
          • Command (endstone)
          • CommandExecutor (endstone)
          • CommandMap (endstone)
          • CommandSender (endstone)
          • CommandSenderWrapper (endstone)
          • ConsoleCommandSender (endstone)
          • Criteria (endstone)
          "},{"location":"reference/cpp/classes/#d","title":"d","text":"
          • Dimension (endstone)
          • Dropdown (endstone)
          "},{"location":"reference/cpp/classes/#e","title":"e","text":"
          • Error (endstone)
          • Event (endstone)
          • EventHandler (endstone)
          "},{"location":"reference/cpp/classes/#f","title":"f","text":"
          • Form (endstone)
          • formatter< endstone::Block > (fmt)
          • formatter< endstone::BlockData > (fmt)
          • formatter< endstone::BlockState > (fmt)
          • formatter< endstone::BlockStates > (fmt)
          • formatter< endstone::BlockStates::mapped_type > (fmt)
          • formatter< endstone::BlockStates::value_type > (fmt)
          • formatter< endstone::ItemStack > (fmt)
          "},{"location":"reference/cpp/classes/#h","title":"h","text":"
          • HandlerList (endstone)
          • hash< endstone::UUID > (std)
          "},{"location":"reference/cpp/classes/#i","title":"i","text":"
          • ImageData (endstone::Skin)
          • Inventory (endstone)
          • ItemStack (endstone)
          "},{"location":"reference/cpp/classes/#l","title":"l","text":"
          • Label (endstone)
          • Language (endstone)
          • Level (endstone)
          • Location (endstone)
          • Logger (endstone)
          "},{"location":"reference/cpp/classes/#m","title":"m","text":"
          • MessageForm (endstone)
          • Mob (endstone)
          • ModalForm (endstone)
          "},{"location":"reference/cpp/classes/#o","title":"o","text":"
          • Objective (endstone)
          • overloaded (endstone)
          "},{"location":"reference/cpp/classes/#p","title":"p","text":"
          • Packet (endstone)
          • Permissible (endstone)
          • Permission (endstone)
          • PermissionAttachment (endstone)
          • PermissionAttachmentInfo (endstone)
          • Player (endstone)
          • PlayerChatEvent (endstone)
          • PlayerCommandEvent (endstone)
          • PlayerDeathEvent (endstone)
          • PlayerEvent (endstone)
          • PlayerInteractActorEvent (endstone)
          • PlayerInteractEvent (endstone)
          • PlayerInventory (endstone)
          • PlayerJoinEvent (endstone)
          • PlayerKickEvent (endstone)
          • PlayerLoginEvent (endstone)
          • PlayerQuitEvent (endstone)
          • PlayerTeleportEvent (endstone)
          • Plugin (endstone)
          • PluginCommand (endstone)
          • PluginDescription (endstone)
          • PluginDisableEvent (endstone)
          • PluginEnableEvent (endstone)
          • PluginLoader (endstone)
          • PluginManager (endstone)
          • Position (endstone)
          • ProxiedCommandSender (endstone)
          "},{"location":"reference/cpp/classes/#s","title":"s","text":"
          • Scheduler (endstone)
          • Score (endstone)
          • Scoreboard (endstone)
          • ScriptMessageEvent (endstone)
          • Server (endstone)
          • ServerCommandEvent (endstone)
          • ServerEvent (endstone)
          • ServerListPingEvent (endstone)
          • ServerLoadEvent (endstone)
          • Skin (endstone)
          • Slider (endstone)
          • SocketAddress (endstone)
          • SpawnParticleEffectPacket (endstone)
          • StepSlider (endstone)
          "},{"location":"reference/cpp/classes/#t","title":"t","text":"
          • Task (endstone)
          • TextInput (endstone)
          • ThunderChangeEvent (endstone)
          • Toggle (endstone)
          • Translatable (endstone)
          "},{"location":"reference/cpp/classes/#u","title":"u","text":"
          • UUID (endstone)
          "},{"location":"reference/cpp/classes/#v","title":"v","text":"
          • Vector (endstone)
          "},{"location":"reference/cpp/classes/#w","title":"w","text":"
          • WeatherChangeEvent (endstone)
          • WeatherEvent (endstone)
          "},{"location":"reference/cpp/hierarchy/","title":"Class Hierarchy","text":"

          This inheritance list is sorted roughly, but not completely, alphabetically:

          • class endstone::Form Represents a generic form.
          • class endstone::ActionForm::Button Represents a button with text and an optional icon.
          • class endstone::Permissible Represents an object that may become a server operator and can be assigned permissions.
            • class endstone::CommandSender Represents a command sender.
              • class endstone::Actor Represents a base actor in the level.
                • class endstone::Mob Represents a mobile entity (i.e. living entity), such as a monster or player.
                  • class endstone::Player Represents a player.
              • class endstone::CommandSenderWrapper Represents a wrapper that forwards commands to the wrapped CommandSender and captures its output.
              • class endstone::ConsoleCommandSender Represents a console command sender.
              • class endstone::ProxiedCommandSender Interface for proxied command sender.
          • class endstone::Event Represents an event.
            • class endstone::ActorEvent Represents an Actor-related event.
              • class endstone::ActorDeathEvent Called when an Actor dies.
                • class endstone::PlayerDeathEvent Called when a Player dies.
              • class endstone::ActorKnockbackEvent Called when a living entity receives knockback.
              • class endstone::ActorRemoveEvent Called when an Actor is removed.
              • class endstone::ActorSpawnEvent Called when an Actor is spawned into a world.
              • class endstone::ActorTeleportEvent Called when a non-player entity is teleported from one location to another.
            • class endstone::BlockEvent Represents an Block-related event.
              • class endstone::BlockBreakEvent Called when a block is broken by a player.
              • class endstone::BlockPlaceEvent Called when a block is placed by a player.
            • class endstone::PlayerEvent Represents a player related event.
              • class endstone::PlayerChatEvent Called when a player sends a chat message.
              • class endstone::PlayerCommandEvent Called whenever a player runs a command.
              • class endstone::PlayerDeathEvent Called when a Player dies.
              • class endstone::PlayerInteractActorEvent Represents an event that is called when a player right-clicks an actor.
              • class endstone::PlayerInteractEvent Represents an event that is called when a player right-clicks a block.
              • class endstone::PlayerJoinEvent Called when a player joins a server.
              • class endstone::PlayerKickEvent Called when a player gets kicked from the server.
              • class endstone::PlayerLoginEvent Called when a player attempts to login in.
              • class endstone::PlayerQuitEvent Called when a player leaves a server.
              • class endstone::PlayerTeleportEvent Called when a player is teleported from one location to another.
            • class endstone::ServerEvent Represents an Server-related event.
              • class endstone::BroadcastMessageEvent Event triggered for server broadcast messages such as fromServer::broadcast .
              • class endstone::PluginDisableEvent Called when a plugin is disabled.
              • class endstone::PluginEnableEvent Called when a plugin is enabled.
              • class endstone::ScriptMessageEvent Called when a message is sent by /scriptevent command.
              • class endstone::ServerCommandEvent Called when the console runs a command, early in the process.
              • class endstone::ServerListPingEvent Called when a server ping is coming in.
              • class endstone::ServerLoadEvent Called when either the server startup or reload has completed.
            • class endstone::WeatherEvent Represents a Weather-related event.
              • class endstone::ThunderChangeEvent Called when the thunder state in a world is changing.
              • class endstone::WeatherChangeEvent Called when the weather (rain) state in a world is changing.
          • class endstone::BanList A class that represents a ban list, containing bans of some target type.
          • class endstone::Block Represents a block.
          • class endstone::BossBar Represents a boss bar that is displayed to players.
          • class endstone::Command Represents a Command , which executes various tasks upon user input.
            • class endstone::PluginCommand Represents a Command belonging to aPlugin .
          • class endstone::CommandExecutor Represents a class which contains a single method for executing commands.
            • class endstone::Plugin Represents a Plugin .
          • class endstone::CommandMap Represents a command map that manages all commands of the Server .
          • class endstone::Criteria Represents a scoreboard criteria.
          • class endstone::Dimension Represents a dimension within a Level .
          • class endstone::Dropdown Represents a dropdown with a set of predefined options.
            • class endstone::StepSlider Represents a step slider with a set of predefined options.
          • class endstone::Error Represents an error with a message and the stack trace.
          • class endstone::EventHandler Represents a registered EventHandler which associates with aPlugin .
          • class endstone::HandlerList A list of event handlers. Should be instantiated on a per-event basis.
          • class endstone::Inventory Interface to the various inventories.
            • class endstone::PlayerInventory Interface to the inventory of a Player , including the four armor slots and any extra slots.
          • class endstone::Label Represents a text label.
          • class endstone::Language Represents the interface for translating text into different languages.
          • class endstone::Level Represents a level, which may contain actors, chunks and blocks.
          • class endstone::Vector Represents a 3-dimensional vector.
          • class endstone::Logger Logger class which can format and output varies levels of logs.
          • class endstone::Objective Represents an objective on a scoreboard that can show scores specific to entries.
          • class endstone::Packet Represents a packet.
            • class endstone::SpawnParticleEffectPacket Represents a packet for spawning a particle effect.
          • class endstone::Permission Represents a unique permission that may be attached to a Permissible .
          • class endstone::PermissionAttachment Holds information about a permission attachment on a Permissible object.
          • class endstone::PermissionAttachmentInfo Holds information on a permission and which PermissionAttachment provides it.
          • class endstone::PluginDescription Represents the basic information about a plugin that the plugin loader needs to know.
          • class endstone::PluginLoader Represents a plugin loader, which handles direct access to specific types of plugins.
          • class endstone::PluginManager Represents a plugin manager that handles all plugins from the Server .
          • class endstone::Scheduler Represents a scheduler that executes various tasks.
          • class endstone::Score Represents a score for an objective on a scoreboard.
          • class endstone::Server Represents a server implementation.
          • class endstone::Skin Represents a player skin.
          • class endstone::Slider Represents a slider with a label.
          • class endstone::SocketAddress Represents an IP Socket Address (hostname + port number).
          • class endstone::Task Represents a task being executed by the scheduler.
          • class endstone::TextInput Represents a text input field.
          • class endstone::Toggle Represents a toggle button with a label.
          • class endstone::Translatable Represents an object with a text representation that can be translated by the Minecraft client.
          • class endstone::UUID Implementation of Universally Unique Identifier ( UUID )
          • struct endstone::ColorFormat All supported color and format codes.
          • struct endstone::Skin::ImageData
          • struct std::hash< endstone::UUID >
          • class std::enable_shared_from_this< BlockData >
            • class endstone::BlockData Represents the data related to a live block.
          • class std::enable_shared_from_this< BlockState >
            • class endstone::BlockState Represents a captured state of a block, which will not update automatically.
          • class std::enable_shared_from_this< ItemStack >
            • class endstone::ItemStack Represents a stack of items.
          • class std::enable_shared_from_this< Scoreboard >
            • class endstone::Scoreboard Represents a scoreboard.
          • class endstone::Func
            • struct endstone::overloaded Helper type for visitors.
          • class formatter< string_view >
            • struct fmt::formatter< endstone::Block >
            • struct fmt::formatter< endstone::BlockData >
            • struct fmt::formatter< endstone::BlockState >
            • struct fmt::formatter< endstone::BlockStates >
            • struct fmt::formatter< endstone::BlockStates::mapped_type >
            • struct fmt::formatter< endstone::BlockStates::value_type >
            • struct fmt::formatter< endstone::ItemStack >
          "},{"location":"reference/cpp/modules/","title":"Modules","text":"

          No modules found.

          "},{"location":"reference/cpp/pages/","title":"Related Pages","text":"

          Here is a list of all related documentation pages:

          "},{"location":"reference/cpp/class_members/","title":"Class Members","text":""},{"location":"reference/cpp/class_members/#a","title":"a","text":"
          • ActionForm (endstone::ActionForm)
          • addButton (endstone::ActionForm)
          • addScoreboardTag (endstone::Actor)
          • asActor (endstone::Actor, endstone::CommandSender, endstone::CommandSenderWrapper)
          • ActorDeathEvent (endstone::ActorDeathEvent)
          • ActorEvent (endstone::ActorEvent)
          • actor_ (endstone::ActorEvent, endstone::PlayerInteractActorEvent)
          • ActorKnockbackEvent (endstone::ActorKnockbackEvent)
          • ActorRemoveEvent (endstone::ActorRemoveEvent)
          • ActorSpawnEvent (endstone::ActorSpawnEvent)
          • ActorTeleportEvent (endstone::ActorTeleportEvent)
          • addBan (endstone::BanList)
          • addFlag (endstone::BossBar)
          • addPlayer (endstone::BossBar)
          • Aqua (endstone::ColorFormat)
          • aliases_ (endstone::Command)
          • allowChangesFrom (endstone::Command)
          • asPluginCommand (endstone::Command, endstone::PluginCommand)
          • asCommandSender (endstone::CommandSender, endstone::CommandSenderWrapper, endstone::Permissible)
          • asConsole (endstone::CommandSender, endstone::CommandSenderWrapper)
          • asPlayer (endstone::CommandSender, endstone::CommandSenderWrapper, endstone::Player)
          • addAttachment (endstone::CommandSenderWrapper, endstone::Permissible)
          • addOption (endstone::Dropdown)
          • async_ (endstone::Event)
          • addItem (endstone::Inventory)
          • amount_ (endstone::ItemStack)
          • asEndstoneItemStack (endstone::ItemStack)
          • addControl (endstone::ModalForm)
          • addParent (endstone::Permission)
          • attachment_ (endstone::PermissionAttachmentInfo)
          • api_version_ (endstone::PluginDescription)
          • authors_ (endstone::PluginDescription)
          • addPermission (endstone::PluginManager)
          • addObjective (endstone::Scoreboard)
          • actor_id (endstone::SpawnParticleEffectPacket)
          "},{"location":"reference/cpp/class_members/#b","title":"b","text":"
          • buttons_ (endstone::ActionForm)
          • Button (endstone::ActionForm::Button)
          • BlockBreakEvent (endstone::BlockBreakEvent)
          • BlockEvent (endstone::BlockEvent)
          • block_ (endstone::BlockEvent)
          • BlockPlaceEvent (endstone::BlockPlaceEvent)
          • BroadcastMessageEvent (endstone::BroadcastMessageEvent)
          • Black (endstone::ColorFormat)
          • Blue (endstone::ColorFormat)
          • Bold (endstone::ColorFormat)
          • bake (endstone::HandlerList)
          • baked_handlers_ (endstone::HandlerList)
          • button1_text_ (endstone::MessageForm)
          • button2_text_ (endstone::MessageForm)
          • block_clicked_ (endstone::PlayerInteractEvent)
          • block_face_ (endstone::PlayerInteractEvent)
          • BroadcastChannelAdmin (endstone::Server)
          • BroadcastChannelUser (endstone::Server)
          • broadcast (endstone::Server)
          • broadcastMessage (endstone::Server)
          • begin (endstone::UUID)
          "},{"location":"reference/cpp/class_members/#c","title":"c","text":"
          • content_ (endstone::ActionForm, endstone::MessageForm)
          • captureState (endstone::Block)
          • Command (endstone::Command)
          • command_map_ (endstone::Command)
          • CommandMap (endstone::CommandMap)
          • clearCommands (endstone::CommandMap)
          • Callback (endstone::CommandSenderWrapper)
          • CommandSenderWrapper (endstone::CommandSenderWrapper)
          • cancelled_ (endstone::Event)
          • callEvent (endstone::EventHandler, endstone::PluginManager)
          • clear (endstone::Inventory)
          • critical (endstone::Logger)
          • Control (endstone::ModalForm)
          • controls_ (endstone::ModalForm)
          • children_ (endstone::Permission)
          • closeForm (endstone::Player)
          • command_ (endstone::PlayerCommandEvent, endstone::ServerCommandEvent)
          • clicked_position_ (endstone::PlayerInteractEvent)
          • commands_ (endstone::PluginDescription)
          • contributors_ (endstone::PluginDescription)
          • clearPlugins (endstone::PluginManager)
          • cancelTask (endstone::Scheduler)
          • cancelTasks (endstone::Scheduler)
          • clearSlot (endstone::Scoreboard)
          • createBlockData (endstone::Server)
          • createBossBar (endstone::Server)
          • createScoreboard (endstone::Server)
          • cape_data_ (endstone::Skin)
          • cape_id_ (endstone::Skin)
          • cancel (endstone::Task)
          "},{"location":"reference/cpp/class_members/#d","title":"d","text":"
          • DarkAqua (endstone::ColorFormat)
          • DarkBlue (endstone::ColorFormat)
          • DarkGray (endstone::ColorFormat)
          • DarkGreen (endstone::ColorFormat)
          • DarkPurple (endstone::ColorFormat)
          • DarkRed (endstone::ColorFormat)
          • description_ (endstone::Command, endstone::Permission, endstone::PluginDescription)
          • dispatch (endstone::CommandMap)
          • Dropdown (endstone::Dropdown, endstone::StepSlider)
          • default_index_ (endstone::Dropdown)
          • debug (endstone::Logger)
          • DefaultPermission (endstone::Permission)
          • default_value_ (endstone::Permission, endstone::Slider, endstone::Toggle)
          • death_message_ (endstone::PlayerDeathEvent)
          • data_folder_ (endstone::Plugin)
          • default_permission_ (endstone::PluginDescription)
          • depend_ (endstone::PluginDescription)
          • disablePlugin (endstone::PluginLoader, endstone::PluginManager)
          • disablePlugins (endstone::PluginManager)
          • dimension_ (endstone::Position)
          • dispatchCommand (endstone::Server)
          • deserialize (endstone::ServerListPingEvent)
          • data (endstone::Skin::ImageData, endstone::UUID)
          • dimension_id (endstone::SpawnParticleEffectPacket)
          • default_text_ (endstone::TextInput)
          • distance (endstone::Vector)
          • distanceSquared (endstone::Vector)
          "},{"location":"reference/cpp/class_members/#e","title":"e","text":"
          • Escape (endstone::ColorFormat)
          • execute (endstone::Command, endstone::PluginCommand)
          • Error (endstone::Error)
          • Event (endstone::Event, endstone::ServerEvent)
          • EventHandler (endstone::EventHandler)
          • event_ (endstone::EventHandler, endstone::HandlerList)
          • executor_ (endstone::EventHandler, endstone::PluginCommand)
          • error (endstone::Logger)
          • enabled_ (endstone::Plugin)
          • enablePlugin (endstone::PluginLoader, endstone::PluginManager)
          • enablePlugins (endstone::PluginManager)
          • effect_name (endstone::SpawnParticleEffectPacket)
          • empty (endstone::Translatable)
          • end (endstone::UUID)
          "},{"location":"reference/cpp/class_members/#f","title":"f","text":"
          • from_ (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • Form (endstone::Form)
          • first (endstone::Inventory)
          • FormVariant (endstone::Player)
          • full_name_ (endstone::PluginDescription)
          • format (fmt::formatter< endstone::Block >, fmt::formatter< endstone::BlockData >, fmt::formatter< endstone::BlockState >, fmt::formatter< endstone::BlockStates >, fmt::formatter< endstone::BlockStates::mapped_type >, fmt::formatter< endstone::BlockStates::value_type >, fmt::formatter< endstone::ItemStack >)
          "},{"location":"reference/cpp/class_members/#g","title":"g","text":"
          • getIcon (endstone::ActionForm::Button, endstone::ModalForm)
          • getOnClick (endstone::ActionForm::Button)
          • getText (endstone::ActionForm::Button, endstone::Label, endstone::Translatable)
          • getButtons (endstone::ActionForm)
          • getContent (endstone::ActionForm, endstone::MessageForm)
          • getOnSubmit (endstone::ActionForm, endstone::MessageForm, endstone::ModalForm)
          • getDimension (endstone::Actor, endstone::Block, endstone::BlockState, endstone::Level, endstone::Position)
          • getHealth (endstone::Actor)
          • getId (endstone::Actor)
          • getLevel (endstone::Actor, endstone::Dimension, endstone::Server, endstone::WeatherEvent)
          • getLocation (endstone::Actor, endstone::Block, endstone::BlockState)
          • getMaxHealth (endstone::Actor)
          • getRuntimeId (endstone::Actor)
          • getScoreboardTags (endstone::Actor)
          • getVelocity (endstone::Actor)
          • getEventName (endstone::ActorDeathEvent, endstone::ActorKnockbackEvent, endstone::ActorRemoveEvent, endstone::ActorSpawnEvent, endstone::ActorTeleportEvent, endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::BroadcastMessageEvent, endstone::Event, endstone::PlayerChatEvent, endstone::PlayerCommandEvent, endstone::PlayerDeathEvent, endstone::PlayerInteractActorEvent, endstone::PlayerInteractEvent, endstone::PlayerJoinEvent, endstone::PlayerKickEvent, endstone::PlayerLoginEvent, endstone::PlayerQuitEvent, endstone::PlayerTeleportEvent, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::ScriptMessageEvent, endstone::ServerCommandEvent, endstone::ServerListPingEvent, endstone::ServerLoadEvent, endstone::ThunderChangeEvent, endstone::WeatherChangeEvent)
          • getActor (endstone::ActorEvent, endstone::ActorKnockbackEvent, endstone::PlayerInteractActorEvent)
          • getKnockback (endstone::ActorKnockbackEvent)
          • getSource (endstone::ActorKnockbackEvent)
          • getFrom (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • getTo (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • getBanEntry (endstone::BanList)
          • getEntries (endstone::BanList, endstone::Scoreboard)
          • getData (endstone::Block, endstone::BlockState)
          • getRelative (endstone::Block)
          • getType (endstone::Block, endstone::BlockData, endstone::BlockState, endstone::Dimension, endstone::ItemStack, endstone::Packet, endstone::ServerLoadEvent, endstone::SpawnParticleEffectPacket)
          • getX (endstone::Block, endstone::BlockState, endstone::Vector)
          • getY (endstone::Block, endstone::BlockState, endstone::Vector)
          • getZ (endstone::Block, endstone::BlockState, endstone::Vector)
          • getPlayer (endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::PlayerEvent, endstone::Server)
          • getBlockStates (endstone::BlockData)
          • getBlock (endstone::BlockEvent, endstone::BlockState, endstone::PlayerInteractEvent)
          • getBlockAgainst (endstone::BlockPlaceEvent)
          • getBlockPlacedState (endstone::BlockPlaceEvent)
          • getBlockReplaced (endstone::BlockPlaceEvent)
          • getColor (endstone::BossBar)
          • getPlayers (endstone::BossBar)
          • getProgress (endstone::BossBar)
          • getStyle (endstone::BossBar)
          • getTitle (endstone::BossBar, endstone::Form)
          • getMessage (endstone::BroadcastMessageEvent, endstone::Error, endstone::PlayerChatEvent, endstone::ScriptMessageEvent)
          • getRecipients (endstone::BroadcastMessageEvent)
          • Gold (endstone::ColorFormat)
          • Gray (endstone::ColorFormat)
          • Green (endstone::ColorFormat)
          • getAliases (endstone::Command)
          • getDescription (endstone::Command, endstone::Permission, endstone::Plugin, endstone::PluginDescription)
          • getName (endstone::Command, endstone::CommandSender, endstone::CommandSenderWrapper, endstone::Criteria, endstone::Dimension, endstone::Level, endstone::Logger, endstone::Objective, endstone::Permission, endstone::Plugin, endstone::PluginDescription, endstone::Server)
          • getPermissions (endstone::Command, endstone::PermissionAttachment, endstone::PluginDescription, endstone::PluginManager)
          • getUsages (endstone::Command)
          • getCommand (endstone::CommandMap, endstone::PlayerCommandEvent, endstone::Plugin, endstone::ServerCommandEvent)
          • getServer (endstone::CommandSender, endstone::CommandSenderWrapper, endstone::Plugin, endstone::PluginLoader)
          • getEffectivePermissions (endstone::CommandSenderWrapper, endstone::Permissible)
          • getDefaultRenderType (endstone::Criteria)
          • getBlockAt (endstone::Dimension)
          • getDefaultIndex (endstone::Dropdown)
          • getLabel (endstone::Dropdown, endstone::Slider, endstone::TextInput, endstone::Toggle)
          • getOptions (endstone::Dropdown)
          • getStackTrace (endstone::Error)
          • getEventType (endstone::EventHandler)
          • getPlugin (endstone::EventHandler, endstone::PermissionAttachment, endstone::PluginCommand, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::PluginManager)
          • getPriority (endstone::EventHandler)
          • getOnClose (endstone::Form)
          • getHandlers (endstone::HandlerList)
          • getContents (endstone::Inventory)
          • getItem (endstone::Inventory, endstone::PlayerInteractEvent)
          • getMaxStackSize (endstone::Inventory)
          • getSize (endstone::Inventory)
          • getAmount (endstone::ItemStack)
          • getLocale (endstone::Language, endstone::Player)
          • getActors (endstone::Level)
          • getDimensions (endstone::Level)
          • getTime (endstone::Level)
          • getPitch (endstone::Location)
          • getYaw (endstone::Location)
          • getButton1 (endstone::MessageForm)
          • getButton2 (endstone::MessageForm)
          • getControls (endstone::ModalForm)
          • getSubmitButton (endstone::ModalForm)
          • getCriteria (endstone::Objective)
          • getDisplayName (endstone::Objective)
          • getDisplaySlot (endstone::Objective)
          • getRenderType (endstone::Objective)
          • getScore (endstone::Objective)
          • getScoreboard (endstone::Objective, endstone::Player, endstone::Score, endstone::Server)
          • getSortOrder (endstone::Objective)
          • getChildren (endstone::Permission)
          • getDefault (endstone::Permission)
          • getPermissibles (endstone::Permission)
          • getPermissible (endstone::PermissionAttachment, endstone::PermissionAttachmentInfo)
          • getRemovalCallback (endstone::PermissionAttachment)
          • getAttachment (endstone::PermissionAttachmentInfo)
          • getPermission (endstone::PermissionAttachmentInfo, endstone::PluginManager)
          • getValue (endstone::PermissionAttachmentInfo, endstone::Score)
          • getAddress (endstone::Player)
          • getAllowFlight (endstone::Player)
          • getDeviceId (endstone::Player)
          • getDeviceOS (endstone::Player)
          • getExpLevel (endstone::Player)
          • getExpProgress (endstone::Player)
          • getFlySpeed (endstone::Player)
          • getGameMode (endstone::Player, endstone::ServerListPingEvent)
          • getGameVersion (endstone::Player)
          • getInventory (endstone::Player)
          • getPing (endstone::Player)
          • getSkin (endstone::Player)
          • getTotalExp (endstone::Player)
          • getUniqueId (endstone::Player)
          • getWalkSpeed (endstone::Player)
          • getXuid (endstone::Player)
          • giveExp (endstone::Player)
          • giveExpLevels (endstone::Player)
          • getDeathMessage (endstone::PlayerDeathEvent)
          • getBlockFace (endstone::PlayerInteractEvent)
          • getClickedPosition (endstone::PlayerInteractEvent)
          • getJoinMessage (endstone::PlayerJoinEvent)
          • getReason (endstone::PlayerKickEvent)
          • getKickMessage (endstone::PlayerLoginEvent)
          • getQuitMessage (endstone::PlayerQuitEvent)
          • getDataFolder (endstone::Plugin)
          • getLogger (endstone::Plugin, endstone::Server)
          • getPluginLoader (endstone::Plugin)
          • getExecutor (endstone::PluginCommand)
          • getAPIVersion (endstone::PluginDescription)
          • getAuthors (endstone::PluginDescription)
          • getCommands (endstone::PluginDescription)
          • getContributors (endstone::PluginDescription)
          • getDefaultPermission (endstone::PluginDescription)
          • getDepend (endstone::PluginDescription)
          • getFullName (endstone::PluginDescription)
          • getLoad (endstone::PluginDescription)
          • getLoadBefore (endstone::PluginDescription)
          • getPrefix (endstone::PluginDescription)
          • getProvides (endstone::PluginDescription)
          • getSoftDepend (endstone::PluginDescription)
          • getVersion (endstone::PluginDescription, endstone::Server)
          • getWebsite (endstone::PluginDescription)
          • getDefaultPermSubscriptions (endstone::PluginManager)
          • getDefaultPermissions (endstone::PluginManager)
          • getPermissionSubscriptions (endstone::PluginManager)
          • getPlugins (endstone::PluginManager)
          • getBlockX (endstone::Position)
          • getBlockY (endstone::Position)
          • getBlockZ (endstone::Position)
          • getCallee (endstone::ProxiedCommandSender)
          • getCaller (endstone::ProxiedCommandSender)
          • getPendingTasks (endstone::Scheduler)
          • getEntry (endstone::Score)
          • getObjective (endstone::Score, endstone::Scoreboard)
          • getObjectives (endstone::Scoreboard)
          • getObjectivesByCriteria (endstone::Scoreboard)
          • getScores (endstone::Scoreboard)
          • getMessageId (endstone::ScriptMessageEvent)
          • getSender (endstone::ScriptMessageEvent, endstone::ServerCommandEvent)
          • getAverageMillisecondsPerTick (endstone::Server)
          • getAverageTickUsage (endstone::Server)
          • getAverageTicksPerSecond (endstone::Server)
          • getCommandSender (endstone::Server)
          • getCurrentMillisecondsPerTick (endstone::Server)
          • getCurrentTickUsage (endstone::Server)
          • getCurrentTicksPerSecond (endstone::Server)
          • getLanguage (endstone::Server)
          • getMaxPlayers (endstone::Server, endstone::ServerListPingEvent)
          • getMinecraftVersion (endstone::Server)
          • getOnlineMode (endstone::Server)
          • getOnlinePlayers (endstone::Server)
          • getPluginCommand (endstone::Server)
          • getPluginManager (endstone::Server)
          • getScheduler (endstone::Server)
          • getStartTime (endstone::Server)
          • game_mode_ (endstone::ServerListPingEvent)
          • getLevelName (endstone::ServerListPingEvent)
          • getLocalPort (endstone::ServerListPingEvent)
          • getLocalPortV6 (endstone::ServerListPingEvent)
          • getMinecraftVersionNetwork (endstone::ServerListPingEvent)
          • getMotd (endstone::ServerListPingEvent)
          • getNetworkProtocolVersion (endstone::ServerListPingEvent)
          • getNumPlayers (endstone::ServerListPingEvent)
          • getRemoteHost (endstone::ServerListPingEvent)
          • getRemotePort (endstone::ServerListPingEvent)
          • getServerGuid (endstone::ServerListPingEvent)
          • getCapeData (endstone::Skin)
          • getCapeId (endstone::Skin)
          • getSkinData (endstone::Skin)
          • getSkinId (endstone::Skin)
          • getDefaultValue (endstone::Slider, endstone::TextInput, endstone::Toggle)
          • getMax (endstone::Slider)
          • getMin (endstone::Slider)
          • getStep (endstone::Slider)
          • getHostname (endstone::SocketAddress)
          • getPort (endstone::SocketAddress)
          • getOwner (endstone::Task)
          • getTaskId (endstone::Task)
          • getPlaceholder (endstone::TextInput)
          • getParameters (endstone::Translatable)
          "},{"location":"reference/cpp/class_members/#h","title":"h","text":"
          • hasFlag (endstone::BossBar)
          • hasPermission (endstone::CommandSenderWrapper, endstone::Permissible)
          • HandlerList (endstone::HandlerList)
          • handlers_ (endstone::HandlerList)
          • hasBlock (endstone::PlayerInteractEvent)
          • hasItem (endstone::PlayerInteractEvent)
          • height (endstone::Skin::ImageData)
          • hostname_ (endstone::SocketAddress)
          "},{"location":"reference/cpp/class_members/#i","title":"i","text":"
          • icon_ (endstone::ActionForm::Button, endstone::ModalForm)
          • isDead (endstone::Actor)
          • isInLava (endstone::Actor)
          • isInWater (endstone::Actor)
          • isOnGround (endstone::Actor)
          • isCancellable (endstone::ActorDeathEvent, endstone::ActorKnockbackEvent, endstone::ActorRemoveEvent, endstone::ActorSpawnEvent, endstone::ActorTeleportEvent, endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::BroadcastMessageEvent, endstone::Event, endstone::PlayerChatEvent, endstone::PlayerCommandEvent, endstone::PlayerDeathEvent, endstone::PlayerInteractActorEvent, endstone::PlayerInteractEvent, endstone::PlayerJoinEvent, endstone::PlayerKickEvent, endstone::PlayerLoginEvent, endstone::PlayerQuitEvent, endstone::PlayerTeleportEvent, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::ScriptMessageEvent, endstone::ServerCommandEvent, endstone::ServerListPingEvent, endstone::ServerLoadEvent, endstone::ThunderChangeEvent, endstone::WeatherChangeEvent)
          • isBanned (endstone::BanList)
          • isValid (endstone::Block)
          • isVisible (endstone::BossBar)
          • Italic (endstone::ColorFormat)
          • isRegistered (endstone::Command)
          • isOp (endstone::CommandSenderWrapper, endstone::Permissible)
          • isPermissionSet (endstone::CommandSenderWrapper, endstone::Permissible)
          • isReadOnly (endstone::Criteria)
          • isAsynchronous (endstone::Event)
          • isCancelled (endstone::Event, endstone::Task)
          • ignore_cancelled_ (endstone::EventHandler)
          • isIgnoreCancelled (endstone::EventHandler)
          • isEmpty (endstone::Inventory)
          • ItemStack (endstone::ItemStack)
          • info (endstone::Logger)
          • isEnabledFor (endstone::Logger)
          • isGliding (endstone::Mob)
          • isDisplayed (endstone::Objective)
          • isModifiable (endstone::Objective)
          • init (endstone::Permission)
          • isFlying (endstone::Player)
          • item_ (endstone::PlayerInteractEvent)
          • isEnabled (endstone::Plugin)
          • isPluginEnabled (endstone::PluginManager)
          • isQueued (endstone::Scheduler)
          • isRunning (endstone::Scheduler)
          • isScoreSet (endstone::Score)
          • isPrimaryThread (endstone::Server)
          • isSync (endstone::Task)
          • isNil (endstone::UUID)
          "},{"location":"reference/cpp/class_members/#j","title":"j","text":"
          • join_message_ (endstone::PlayerJoinEvent)
          "},{"location":"reference/cpp/class_members/#k","title":"k","text":"
          • knockback_ (endstone::ActorKnockbackEvent)
          • kick (endstone::Player)
          "},{"location":"reference/cpp/class_members/#l","title":"l","text":"
          • LightPurple (endstone::ColorFormat)
          • label_ (endstone::Dropdown, endstone::Slider, endstone::TextInput, endstone::Toggle)
          • Label (endstone::Label)
          • Location (endstone::Location)
          • Level (endstone::Logger)
          • Logger (endstone::Logger)
          • log (endstone::Logger)
          • loader_ (endstone::Plugin)
          • logger_ (endstone::Plugin)
          • load_ (endstone::PluginDescription)
          • load_before_ (endstone::PluginDescription)
          • loadPlugins (endstone::PluginLoader, endstone::PluginManager)
          • level_name_ (endstone::ServerListPingEvent)
          • local_port_ (endstone::ServerListPingEvent)
          • local_port_v6_ (endstone::ServerListPingEvent)
          • LoadType (endstone::ServerLoadEvent)
          • length (endstone::Vector)
          • lengthSquared (endstone::Vector)
          • level_ (endstone::WeatherEvent)
          "},{"location":"reference/cpp/class_members/#m","title":"m","text":"
          • mob_ (endstone::ActorKnockbackEvent)
          • message_ (endstone::BroadcastMessageEvent, endstone::Error, endstone::PlayerChatEvent, endstone::PlayerLoginEvent, endstone::ScriptMessageEvent)
          • MaterialAmethyst (endstone::ColorFormat)
          • MaterialCopper (endstone::ColorFormat)
          • MaterialDiamond (endstone::ColorFormat)
          • MaterialEmerald (endstone::ColorFormat)
          • MaterialGold (endstone::ColorFormat)
          • MaterialIron (endstone::ColorFormat)
          • MaterialLapis (endstone::ColorFormat)
          • MaterialNetherite (endstone::ColorFormat)
          • MaterialQuartz (endstone::ColorFormat)
          • MaterialRedstone (endstone::ColorFormat)
          • MinecoinGold (endstone::ColorFormat)
          • mtx_ (endstone::HandlerList)
          • message_id_ (endstone::ScriptMessageEvent)
          • max_players_ (endstone::ServerListPingEvent)
          • minecraft_version_network_ (endstone::ServerListPingEvent)
          • motd_ (endstone::ServerListPingEvent)
          • max_ (endstone::Slider)
          • min_ (endstone::Slider)
          • molang_variables_json (endstone::SpawnParticleEffectPacket)
          "},{"location":"reference/cpp/class_members/#n","title":"n","text":"
          • NAME (endstone::ActorDeathEvent, endstone::ActorKnockbackEvent, endstone::ActorRemoveEvent, endstone::ActorSpawnEvent, endstone::ActorTeleportEvent, endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::BroadcastMessageEvent, endstone::PlayerChatEvent, endstone::PlayerCommandEvent, endstone::PlayerDeathEvent, endstone::PlayerInteractActorEvent, endstone::PlayerInteractEvent, endstone::PlayerJoinEvent, endstone::PlayerKickEvent, endstone::PlayerLoginEvent, endstone::PlayerQuitEvent, endstone::PlayerTeleportEvent, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::ScriptMessageEvent, endstone::ServerCommandEvent, endstone::ServerListPingEvent, endstone::ServerLoadEvent, endstone::ThunderChangeEvent, endstone::WeatherChangeEvent)
          • name_ (endstone::Command, endstone::Permission, endstone::PluginDescription)
          • network_protocol_version_ (endstone::ServerListPingEvent)
          • num_players_ (endstone::ServerListPingEvent)
          "},{"location":"reference/cpp/class_members/#o","title":"o","text":"
          • OnSubmitCallback (endstone::ActionForm, endstone::MessageForm, endstone::ModalForm)
          • OnClickCallback (endstone::ActionForm::Button)
          • on_click_ (endstone::ActionForm::Button)
          • on_submit_ (endstone::ActionForm, endstone::MessageForm, endstone::ModalForm)
          • Obfuscated (endstone::ColorFormat)
          • onCommand (endstone::CommandExecutor)
          • operator= (endstone::CommandMap, endstone::Event, endstone::Plugin, endstone::PluginLoader, endstone::PluginManager, endstone::Server)
          • on_error_ (endstone::CommandSenderWrapper)
          • on_message_ (endstone::CommandSenderWrapper)
          • options_ (endstone::Dropdown)
          • OnCloseCallback (endstone::Form)
          • on_close_ (endstone::Form)
          • operator!= (endstone::Objective)
          • operator== (endstone::Objective, endstone::Vector)
          • onDisable (endstone::Plugin)
          • onEnable (endstone::Plugin)
          • onLoad (endstone::Plugin)
          • owner_ (endstone::PluginCommand)
          • operator* (endstone::Vector)
          • operator*= (endstone::Vector)
          • operator+ (endstone::Vector)
          • operator+= (endstone::Vector)
          • operator- (endstone::Vector)
          • operator-= (endstone::Vector)
          • operator/ (endstone::Vector)
          • operator/= (endstone::Vector)
          • operator() (std::hash< endstone::UUID >)
          "},{"location":"reference/cpp/class_members/#p","title":"p","text":"
          • player_ (endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::PlayerEvent)
          • placed_against_ (endstone::BlockPlaceEvent)
          • placed_block_ (endstone::BlockPlaceEvent)
          • permissions_ (endstone::Command, endstone::PermissionAttachment, endstone::PluginDescription)
          • plugin_ (endstone::EventHandler, endstone::PermissionAttachment, endstone::PluginDisableEvent, endstone::PluginEnableEvent)
          • priority_ (endstone::EventHandler)
          • pitch_ (endstone::Location)
          • Permission (endstone::Permission)
          • plugin_manager_ (endstone::Permission)
          • PermissionAttachment (endstone::PermissionAttachment)
          • permissible_ (endstone::PermissionAttachment, endstone::PermissionAttachmentInfo)
          • PermissionAttachmentInfo (endstone::PermissionAttachmentInfo)
          • permission_ (endstone::PermissionAttachmentInfo)
          • performCommand (endstone::Player)
          • PlayerChatEvent (endstone::PlayerChatEvent)
          • PlayerCommandEvent (endstone::PlayerCommandEvent)
          • PlayerDeathEvent (endstone::PlayerDeathEvent)
          • PlayerEvent (endstone::PlayerEvent)
          • PlayerInteractActorEvent (endstone::PlayerInteractActorEvent)
          • PlayerInteractEvent (endstone::PlayerInteractEvent)
          • PlayerJoinEvent (endstone::PlayerJoinEvent)
          • PlayerKickEvent (endstone::PlayerKickEvent)
          • PlayerLoginEvent (endstone::PlayerLoginEvent)
          • PlayerQuitEvent (endstone::PlayerQuitEvent)
          • PlayerTeleportEvent (endstone::PlayerTeleportEvent)
          • Plugin (endstone::Plugin)
          • PluginCommand (endstone::PluginCommand)
          • PluginDescription (endstone::PluginDescription)
          • prefix_ (endstone::PluginDescription)
          • provides_ (endstone::PluginDescription)
          • PluginDisableEvent (endstone::PluginDisableEvent)
          • PluginEnableEvent (endstone::PluginEnableEvent)
          • PluginLoader (endstone::PluginLoader)
          • PluginManager (endstone::PluginManager)
          • Position (endstone::Position)
          • ping_response_ (endstone::ServerListPingEvent)
          • port_ (endstone::SocketAddress)
          • position (endstone::SpawnParticleEffectPacket)
          • placeholder_ (endstone::TextInput)
          • params_ (endstone::Translatable)
          "},{"location":"reference/cpp/class_members/#q","title":"q","text":"
          • quit_message_ (endstone::PlayerQuitEvent)
          "},{"location":"reference/cpp/class_members/#r","title":"r","text":"
          • removeScoreboardTag (endstone::Actor)
          • raw_knockback_ (endstone::ActorKnockbackEvent)
          • removeBan (endstone::BanList)
          • removeAll (endstone::BossBar)
          • removeFlag (endstone::BossBar)
          • removePlayer (endstone::BossBar)
          • recipients_ (endstone::BroadcastMessageEvent)
          • Red (endstone::ColorFormat)
          • Reset (endstone::ColorFormat)
          • registerTo (endstone::Command)
          • registerCommand (endstone::CommandMap)
          • recalculatePermissions (endstone::CommandSenderWrapper, endstone::Permissible)
          • removeAttachment (endstone::CommandSenderWrapper, endstone::Permissible)
          • registerHandler (endstone::HandlerList)
          • recalculatePermissibles (endstone::Permission)
          • remove (endstone::PermissionAttachment)
          • removed_ (endstone::PermissionAttachment)
          • resetTitle (endstone::Player)
          • reason_ (endstone::PlayerKickEvent)
          • registerEvent (endstone::Plugin, endstone::PluginManager)
          • recalculatePermissionDefaults (endstone::PluginManager)
          • registerLoader (endstone::PluginManager)
          • removePermission (endstone::PluginManager)
          • runTask (endstone::Scheduler)
          • runTaskAsync (endstone::Scheduler)
          • runTaskLater (endstone::Scheduler)
          • runTaskLaterAsync (endstone::Scheduler)
          • runTaskTimer (endstone::Scheduler)
          • runTaskTimerAsync (endstone::Scheduler)
          • resetScores (endstone::Scoreboard)
          • reload (endstone::Server)
          • reloadData (endstone::Server)
          • remote_host_ (endstone::ServerListPingEvent)
          • remote_port_ (endstone::ServerListPingEvent)
          "},{"location":"reference/cpp/class_members/#s","title":"s","text":"
          • setIcon (endstone::ActionForm::Button, endstone::ModalForm)
          • setOnClick (endstone::ActionForm::Button)
          • setText (endstone::ActionForm::Button, endstone::Label)
          • setButtons (endstone::ActionForm)
          • setContent (endstone::ActionForm, endstone::MessageForm)
          • setOnSubmit (endstone::ActionForm, endstone::MessageForm, endstone::ModalForm)
          • setHealth (endstone::Actor)
          • setRotation (endstone::Actor)
          • setKnockback (endstone::ActorKnockbackEvent)
          • source_ (endstone::ActorKnockbackEvent)
          • setFrom (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • setTo (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • setData (endstone::Block, endstone::BlockState)
          • setType (endstone::Block, endstone::BlockState, endstone::ItemStack)
          • setColor (endstone::BossBar)
          • setProgress (endstone::BossBar)
          • setStyle (endstone::BossBar)
          • setTitle (endstone::BossBar, endstone::Form)
          • setVisible (endstone::BossBar)
          • setMessage (endstone::BroadcastMessageEvent, endstone::PlayerChatEvent)
          • setAliases (endstone::Command)
          • setDescription (endstone::Command, endstone::Permission)
          • setName (endstone::Command)
          • setPermissions (endstone::Command)
          • setUsages (endstone::Command)
          • sendErrorMessage (endstone::CommandSender, endstone::CommandSenderWrapper)
          • sendMessage (endstone::CommandSender, endstone::CommandSenderWrapper)
          • sender_ (endstone::CommandSenderWrapper, endstone::ScriptMessageEvent, endstone::ServerCommandEvent)
          • setOp (endstone::CommandSenderWrapper, endstone::Permissible)
          • setDefaultIndex (endstone::Dropdown)
          • setLabel (endstone::Dropdown, endstone::Slider, endstone::TextInput, endstone::Toggle)
          • setOptions (endstone::Dropdown)
          • stack_trace_ (endstone::Error)
          • setCancelled (endstone::Event)
          • setOnClose (endstone::Form)
          • setItem (endstone::Inventory)
          • setAmount (endstone::ItemStack)
          • setTime (endstone::Level)
          • setPitch (endstone::Location)
          • setYaw (endstone::Location)
          • setLevel (endstone::Logger)
          • setButton1 (endstone::MessageForm)
          • setButton2 (endstone::MessageForm)
          • setControls (endstone::ModalForm)
          • setSubmitButton (endstone::ModalForm)
          • submit_button_text_ (endstone::ModalForm)
          • setDisplay (endstone::Objective)
          • setDisplayName (endstone::Objective)
          • setRenderType (endstone::Objective)
          • setDefault (endstone::Permission)
          • setPermission (endstone::PermissionAttachment)
          • setRemovalCallback (endstone::PermissionAttachment)
          • sendForm (endstone::Player)
          • sendPacket (endstone::Player)
          • sendPopup (endstone::Player)
          • sendTip (endstone::Player)
          • sendTitle (endstone::Player)
          • sendToast (endstone::Player)
          • setAllowFlight (endstone::Player)
          • setExpLevel (endstone::Player)
          • setExpProgress (endstone::Player)
          • setFlySpeed (endstone::Player)
          • setFlying (endstone::Player)
          • setGameMode (endstone::Player, endstone::ServerListPingEvent)
          • setScoreboard (endstone::Player)
          • setWalkSpeed (endstone::Player)
          • spawnParticle (endstone::Player)
          • setCommand (endstone::PlayerCommandEvent, endstone::ServerCommandEvent)
          • setDeathMessage (endstone::PlayerDeathEvent)
          • setJoinMessage (endstone::PlayerJoinEvent)
          • setReason (endstone::PlayerKickEvent)
          • setKickMessage (endstone::PlayerLoginEvent)
          • setQuitMessage (endstone::PlayerQuitEvent)
          • server_ (endstone::Plugin, endstone::PluginLoader)
          • setEnabled (endstone::Plugin)
          • setExecutor (endstone::PluginCommand)
          • soft_depend_ (endstone::PluginDescription)
          • subscribeToDefaultPerms (endstone::PluginManager)
          • subscribeToPermission (endstone::PluginManager)
          • setDimension (endstone::Position)
          • setValue (endstone::Score)
          • ScriptMessageEvent (endstone::ScriptMessageEvent)
          • Server (endstone::Server)
          • setMaxPlayers (endstone::Server, endstone::ServerListPingEvent)
          • shutdown (endstone::Server)
          • ServerCommandEvent (endstone::ServerCommandEvent)
          • ServerListPingEvent (endstone::ServerListPingEvent)
          • serialize (endstone::ServerListPingEvent)
          • server_guid_ (endstone::ServerListPingEvent)
          • setLevelName (endstone::ServerListPingEvent)
          • setMinecraftVersionNetwork (endstone::ServerListPingEvent)
          • setMotd (endstone::ServerListPingEvent)
          • setNumPlayers (endstone::ServerListPingEvent)
          • ServerLoadEvent (endstone::ServerLoadEvent)
          • Skin (endstone::Skin)
          • skin_data_ (endstone::Skin)
          • skin_id_ (endstone::Skin)
          • Slider (endstone::Slider)
          • setDefaultValue (endstone::Slider, endstone::TextInput, endstone::Toggle)
          • setMax (endstone::Slider)
          • setMin (endstone::Slider)
          • setStep (endstone::Slider)
          • step_ (endstone::Slider)
          • SocketAddress (endstone::SocketAddress)
          • setPlaceholder (endstone::TextInput)
          • size (endstone::UUID)
          • str (endstone::UUID)
          • swap (endstone::UUID)
          • setX (endstone::Vector)
          • setY (endstone::Vector)
          • setZ (endstone::Vector)
          "},{"location":"reference/cpp/class_members/#t","title":"t","text":"
          • text_ (endstone::ActionForm::Button, endstone::Label, endstone::Translatable)
          • teleport (endstone::Actor)
          • to_ (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent, endstone::ThunderChangeEvent, endstone::WeatherChangeEvent)
          • testPermission (endstone::Command)
          • testPermissionSilently (endstone::Command)
          • Type (endstone::Criteria, endstone::Dimension, fmt::formatter< endstone::Block >, fmt::formatter< endstone::BlockData >, fmt::formatter< endstone::BlockState >, fmt::formatter< endstone::BlockStates >, fmt::formatter< endstone::BlockStates::mapped_type >, fmt::formatter< endstone::BlockStates::value_type >, fmt::formatter< endstone::ItemStack >)
          • title_ (endstone::Form)
          • type_ (endstone::ItemStack, endstone::ServerLoadEvent)
          • translate (endstone::Language)
          • trace (endstone::Logger)
          • transfer (endstone::Player)
          • TextInput (endstone::TextInput)
          • ThunderChangeEvent (endstone::ThunderChangeEvent)
          • toThunderState (endstone::ThunderChangeEvent)
          • Toggle (endstone::Toggle)
          • Translatable (endstone::Translatable)
          • toWeatherState (endstone::WeatherChangeEvent)
          "},{"location":"reference/cpp/class_members/#u","title":"u","text":"
          • update (endstone::BlockState)
          • unregisterFrom (endstone::Command)
          • usages_ (endstone::Command)
          • unregister (endstone::HandlerList, endstone::Objective)
          • unsetPermission (endstone::PermissionAttachment)
          • updateCommands (endstone::Player)
          • unsubscribeFromDefaultPerms (endstone::PluginManager)
          • unsubscribeFromPermission (endstone::PluginManager)
          "},{"location":"reference/cpp/class_members/#v","title":"v","text":"
          • valid_ (endstone::HandlerList)
          • value_ (endstone::PermissionAttachmentInfo)
          • version_ (endstone::PluginDescription)
          • version (endstone::UUID)
          • Vector (endstone::Vector)
          "},{"location":"reference/cpp/class_members/#w","title":"w","text":"
          • White (endstone::ColorFormat)
          • warning (endstone::Logger)
          • website_ (endstone::PluginDescription)
          • width (endstone::Skin::ImageData)
          • WeatherChangeEvent (endstone::WeatherChangeEvent)
          • WeatherEvent (endstone::WeatherEvent)
          "},{"location":"reference/cpp/class_members/#x","title":"x","text":"
          • x_ (endstone::Vector)
          "},{"location":"reference/cpp/class_members/#y","title":"y","text":"
          • Yellow (endstone::ColorFormat)
          • yaw_ (endstone::Location)
          • y_ (endstone::Vector)
          "},{"location":"reference/cpp/class_members/#z","title":"z","text":"
          • z_ (endstone::Vector)
          "},{"location":"reference/cpp/class_members/#_1","title":"~","text":"
          • ~ActorDeathEvent (endstone::ActorDeathEvent)
          • ~ActorEvent (endstone::ActorEvent)
          • ~ActorKnockbackEvent (endstone::ActorKnockbackEvent)
          • ~ActorRemoveEvent (endstone::ActorRemoveEvent)
          • ~ActorSpawnEvent (endstone::ActorSpawnEvent)
          • ~ActorTeleportEvent (endstone::ActorTeleportEvent)
          • ~BanList (endstone::BanList)
          • ~Block (endstone::Block)
          • ~BlockBreakEvent (endstone::BlockBreakEvent)
          • ~BlockData (endstone::BlockData)
          • ~BlockEvent (endstone::BlockEvent)
          • ~BlockPlaceEvent (endstone::BlockPlaceEvent)
          • ~BlockState (endstone::BlockState)
          • ~BossBar (endstone::BossBar)
          • ~Command (endstone::Command)
          • ~CommandExecutor (endstone::CommandExecutor)
          • ~CommandMap (endstone::CommandMap)
          • ~Criteria (endstone::Criteria)
          • ~Dimension (endstone::Dimension)
          • ~Event (endstone::Event)
          • ~Inventory (endstone::Inventory)
          • ~ItemStack (endstone::ItemStack)
          • ~Language (endstone::Language)
          • ~Level (endstone::Level)
          • ~Logger (endstone::Logger)
          • ~Objective (endstone::Objective)
          • ~Packet (endstone::Packet)
          • ~Permissible (endstone::Permissible)
          • ~PlayerChatEvent (endstone::PlayerChatEvent)
          • ~PlayerCommandEvent (endstone::PlayerCommandEvent)
          • ~PlayerDeathEvent (endstone::PlayerDeathEvent)
          • ~PlayerEvent (endstone::PlayerEvent)
          • ~PlayerInteractActorEvent (endstone::PlayerInteractActorEvent)
          • ~PlayerInteractEvent (endstone::PlayerInteractEvent)
          • ~PlayerJoinEvent (endstone::PlayerJoinEvent)
          • ~PlayerKickEvent (endstone::PlayerKickEvent)
          • ~PlayerLoginEvent (endstone::PlayerLoginEvent)
          • ~PlayerQuitEvent (endstone::PlayerQuitEvent)
          • ~PlayerTeleportEvent (endstone::PlayerTeleportEvent)
          • ~Plugin (endstone::Plugin)
          • ~PluginLoader (endstone::PluginLoader)
          • ~PluginManager (endstone::PluginManager)
          • ~Scheduler (endstone::Scheduler)
          • ~Score (endstone::Score)
          • ~Scoreboard (endstone::Scoreboard)
          • ~Server (endstone::Server)
          • ~Task (endstone::Task)
          • ~ThunderChangeEvent (endstone::ThunderChangeEvent)
          • ~WeatherChangeEvent (endstone::WeatherChangeEvent)
          • ~WeatherEvent (endstone::WeatherEvent)
          "},{"location":"reference/cpp/class_member_functions/","title":"Class Member Functions","text":""},{"location":"reference/cpp/class_member_functions/#a","title":"a","text":"
          • ActionForm (endstone::ActionForm)
          • addButton (endstone::ActionForm)
          • addScoreboardTag (endstone::Actor)
          • asActor (endstone::Actor, endstone::CommandSender, endstone::CommandSenderWrapper)
          • ActorDeathEvent (endstone::ActorDeathEvent)
          • ActorEvent (endstone::ActorEvent)
          • ActorKnockbackEvent (endstone::ActorKnockbackEvent)
          • ActorRemoveEvent (endstone::ActorRemoveEvent)
          • ActorSpawnEvent (endstone::ActorSpawnEvent)
          • ActorTeleportEvent (endstone::ActorTeleportEvent)
          • addBan (endstone::BanList)
          • addFlag (endstone::BossBar)
          • addPlayer (endstone::BossBar)
          • allowChangesFrom (endstone::Command)
          • asPluginCommand (endstone::Command, endstone::PluginCommand)
          • asCommandSender (endstone::CommandSender, endstone::CommandSenderWrapper, endstone::Permissible)
          • asConsole (endstone::CommandSender, endstone::CommandSenderWrapper)
          • asPlayer (endstone::CommandSender, endstone::CommandSenderWrapper, endstone::Player)
          • addAttachment (endstone::CommandSenderWrapper, endstone::Permissible)
          • addOption (endstone::Dropdown)
          • addItem (endstone::Inventory)
          • asEndstoneItemStack (endstone::ItemStack)
          • addControl (endstone::ModalForm)
          • addParent (endstone::Permission)
          • addPermission (endstone::PluginManager)
          • addObjective (endstone::Scoreboard)
          "},{"location":"reference/cpp/class_member_functions/#b","title":"b","text":"
          • Button (endstone::ActionForm::Button)
          • BlockBreakEvent (endstone::BlockBreakEvent)
          • BlockEvent (endstone::BlockEvent)
          • BlockPlaceEvent (endstone::BlockPlaceEvent)
          • BroadcastMessageEvent (endstone::BroadcastMessageEvent)
          • bake (endstone::HandlerList)
          • broadcast (endstone::Server)
          • broadcastMessage (endstone::Server)
          • begin (endstone::UUID)
          "},{"location":"reference/cpp/class_member_functions/#c","title":"c","text":"
          • captureState (endstone::Block)
          • Command (endstone::Command)
          • CommandMap (endstone::CommandMap)
          • clearCommands (endstone::CommandMap)
          • CommandSenderWrapper (endstone::CommandSenderWrapper)
          • callEvent (endstone::EventHandler, endstone::PluginManager)
          • clear (endstone::Inventory)
          • critical (endstone::Logger)
          • closeForm (endstone::Player)
          • clearPlugins (endstone::PluginManager)
          • cancelTask (endstone::Scheduler)
          • cancelTasks (endstone::Scheduler)
          • clearSlot (endstone::Scoreboard)
          • createBlockData (endstone::Server)
          • createBossBar (endstone::Server)
          • createScoreboard (endstone::Server)
          • cancel (endstone::Task)
          "},{"location":"reference/cpp/class_member_functions/#d","title":"d","text":"
          • dispatch (endstone::CommandMap)
          • Dropdown (endstone::Dropdown, endstone::StepSlider)
          • debug (endstone::Logger)
          • disablePlugin (endstone::PluginLoader, endstone::PluginManager)
          • disablePlugins (endstone::PluginManager)
          • dispatchCommand (endstone::Server)
          • deserialize (endstone::ServerListPingEvent)
          • distance (endstone::Vector)
          • distanceSquared (endstone::Vector)
          "},{"location":"reference/cpp/class_member_functions/#e","title":"e","text":"
          • execute (endstone::Command, endstone::PluginCommand)
          • Error (endstone::Error)
          • Event (endstone::Event, endstone::ServerEvent)
          • EventHandler (endstone::EventHandler)
          • error (endstone::Logger)
          • enablePlugin (endstone::PluginLoader, endstone::PluginManager)
          • enablePlugins (endstone::PluginManager)
          • empty (endstone::Translatable)
          • end (endstone::UUID)
          "},{"location":"reference/cpp/class_member_functions/#f","title":"f","text":"
          • Form (endstone::Form)
          • first (endstone::Inventory)
          • format (fmt::formatter< endstone::Block >, fmt::formatter< endstone::BlockData >, fmt::formatter< endstone::BlockState >, fmt::formatter< endstone::BlockStates >, fmt::formatter< endstone::BlockStates::mapped_type >, fmt::formatter< endstone::BlockStates::value_type >, fmt::formatter< endstone::ItemStack >)
          "},{"location":"reference/cpp/class_member_functions/#g","title":"g","text":"
          • getIcon (endstone::ActionForm::Button, endstone::ModalForm)
          • getOnClick (endstone::ActionForm::Button)
          • getText (endstone::ActionForm::Button, endstone::Label, endstone::Translatable)
          • getButtons (endstone::ActionForm)
          • getContent (endstone::ActionForm, endstone::MessageForm)
          • getOnSubmit (endstone::ActionForm, endstone::MessageForm, endstone::ModalForm)
          • getDimension (endstone::Actor, endstone::Block, endstone::BlockState, endstone::Level, endstone::Position)
          • getHealth (endstone::Actor)
          • getId (endstone::Actor)
          • getLevel (endstone::Actor, endstone::Dimension, endstone::Server, endstone::WeatherEvent)
          • getLocation (endstone::Actor, endstone::Block, endstone::BlockState)
          • getMaxHealth (endstone::Actor)
          • getRuntimeId (endstone::Actor)
          • getScoreboardTags (endstone::Actor)
          • getVelocity (endstone::Actor)
          • getEventName (endstone::ActorDeathEvent, endstone::ActorKnockbackEvent, endstone::ActorRemoveEvent, endstone::ActorSpawnEvent, endstone::ActorTeleportEvent, endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::BroadcastMessageEvent, endstone::Event, endstone::PlayerChatEvent, endstone::PlayerCommandEvent, endstone::PlayerDeathEvent, endstone::PlayerInteractActorEvent, endstone::PlayerInteractEvent, endstone::PlayerJoinEvent, endstone::PlayerKickEvent, endstone::PlayerLoginEvent, endstone::PlayerQuitEvent, endstone::PlayerTeleportEvent, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::ScriptMessageEvent, endstone::ServerCommandEvent, endstone::ServerListPingEvent, endstone::ServerLoadEvent, endstone::ThunderChangeEvent, endstone::WeatherChangeEvent)
          • getActor (endstone::ActorEvent, endstone::ActorKnockbackEvent, endstone::PlayerInteractActorEvent)
          • getKnockback (endstone::ActorKnockbackEvent)
          • getSource (endstone::ActorKnockbackEvent)
          • getFrom (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • getTo (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • getBanEntry (endstone::BanList)
          • getEntries (endstone::BanList, endstone::Scoreboard)
          • getData (endstone::Block, endstone::BlockState)
          • getRelative (endstone::Block)
          • getType (endstone::Block, endstone::BlockData, endstone::BlockState, endstone::Dimension, endstone::ItemStack, endstone::Packet, endstone::ServerLoadEvent, endstone::SpawnParticleEffectPacket)
          • getX (endstone::Block, endstone::BlockState, endstone::Vector)
          • getY (endstone::Block, endstone::BlockState, endstone::Vector)
          • getZ (endstone::Block, endstone::BlockState, endstone::Vector)
          • getPlayer (endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::PlayerEvent, endstone::Server)
          • getBlockStates (endstone::BlockData)
          • getBlock (endstone::BlockEvent, endstone::BlockState, endstone::PlayerInteractEvent)
          • getBlockAgainst (endstone::BlockPlaceEvent)
          • getBlockPlacedState (endstone::BlockPlaceEvent)
          • getBlockReplaced (endstone::BlockPlaceEvent)
          • getColor (endstone::BossBar)
          • getPlayers (endstone::BossBar)
          • getProgress (endstone::BossBar)
          • getStyle (endstone::BossBar)
          • getTitle (endstone::BossBar, endstone::Form)
          • getMessage (endstone::BroadcastMessageEvent, endstone::Error, endstone::PlayerChatEvent, endstone::ScriptMessageEvent)
          • getRecipients (endstone::BroadcastMessageEvent)
          • getAliases (endstone::Command)
          • getDescription (endstone::Command, endstone::Permission, endstone::Plugin, endstone::PluginDescription)
          • getName (endstone::Command, endstone::CommandSender, endstone::CommandSenderWrapper, endstone::Criteria, endstone::Dimension, endstone::Level, endstone::Logger, endstone::Objective, endstone::Permission, endstone::Plugin, endstone::PluginDescription, endstone::Server)
          • getPermissions (endstone::Command, endstone::PermissionAttachment, endstone::PluginDescription, endstone::PluginManager)
          • getUsages (endstone::Command)
          • getCommand (endstone::CommandMap, endstone::PlayerCommandEvent, endstone::Plugin, endstone::ServerCommandEvent)
          • getServer (endstone::CommandSender, endstone::CommandSenderWrapper, endstone::Plugin, endstone::PluginLoader)
          • getEffectivePermissions (endstone::CommandSenderWrapper, endstone::Permissible)
          • getDefaultRenderType (endstone::Criteria)
          • getBlockAt (endstone::Dimension)
          • getDefaultIndex (endstone::Dropdown)
          • getLabel (endstone::Dropdown, endstone::Slider, endstone::TextInput, endstone::Toggle)
          • getOptions (endstone::Dropdown)
          • getStackTrace (endstone::Error)
          • getEventType (endstone::EventHandler)
          • getPlugin (endstone::EventHandler, endstone::PermissionAttachment, endstone::PluginCommand, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::PluginManager)
          • getPriority (endstone::EventHandler)
          • getOnClose (endstone::Form)
          • getHandlers (endstone::HandlerList)
          • getContents (endstone::Inventory)
          • getItem (endstone::Inventory, endstone::PlayerInteractEvent)
          • getMaxStackSize (endstone::Inventory)
          • getSize (endstone::Inventory)
          • getAmount (endstone::ItemStack)
          • getLocale (endstone::Language, endstone::Player)
          • getActors (endstone::Level)
          • getDimensions (endstone::Level)
          • getTime (endstone::Level)
          • getPitch (endstone::Location)
          • getYaw (endstone::Location)
          • getButton1 (endstone::MessageForm)
          • getButton2 (endstone::MessageForm)
          • getControls (endstone::ModalForm)
          • getSubmitButton (endstone::ModalForm)
          • getCriteria (endstone::Objective)
          • getDisplayName (endstone::Objective)
          • getDisplaySlot (endstone::Objective)
          • getRenderType (endstone::Objective)
          • getScore (endstone::Objective)
          • getScoreboard (endstone::Objective, endstone::Player, endstone::Score, endstone::Server)
          • getSortOrder (endstone::Objective)
          • getChildren (endstone::Permission)
          • getDefault (endstone::Permission)
          • getPermissibles (endstone::Permission)
          • getPermissible (endstone::PermissionAttachment, endstone::PermissionAttachmentInfo)
          • getRemovalCallback (endstone::PermissionAttachment)
          • getAttachment (endstone::PermissionAttachmentInfo)
          • getPermission (endstone::PermissionAttachmentInfo, endstone::PluginManager)
          • getValue (endstone::PermissionAttachmentInfo, endstone::Score)
          • getAddress (endstone::Player)
          • getAllowFlight (endstone::Player)
          • getDeviceId (endstone::Player)
          • getDeviceOS (endstone::Player)
          • getExpLevel (endstone::Player)
          • getExpProgress (endstone::Player)
          • getFlySpeed (endstone::Player)
          • getGameMode (endstone::Player, endstone::ServerListPingEvent)
          • getGameVersion (endstone::Player)
          • getInventory (endstone::Player)
          • getPing (endstone::Player)
          • getSkin (endstone::Player)
          • getTotalExp (endstone::Player)
          • getUniqueId (endstone::Player)
          • getWalkSpeed (endstone::Player)
          • getXuid (endstone::Player)
          • giveExp (endstone::Player)
          • giveExpLevels (endstone::Player)
          • getDeathMessage (endstone::PlayerDeathEvent)
          • getBlockFace (endstone::PlayerInteractEvent)
          • getClickedPosition (endstone::PlayerInteractEvent)
          • getJoinMessage (endstone::PlayerJoinEvent)
          • getReason (endstone::PlayerKickEvent)
          • getKickMessage (endstone::PlayerLoginEvent)
          • getQuitMessage (endstone::PlayerQuitEvent)
          • getDataFolder (endstone::Plugin)
          • getLogger (endstone::Plugin, endstone::Server)
          • getPluginLoader (endstone::Plugin)
          • getExecutor (endstone::PluginCommand)
          • getAPIVersion (endstone::PluginDescription)
          • getAuthors (endstone::PluginDescription)
          • getCommands (endstone::PluginDescription)
          • getContributors (endstone::PluginDescription)
          • getDefaultPermission (endstone::PluginDescription)
          • getDepend (endstone::PluginDescription)
          • getFullName (endstone::PluginDescription)
          • getLoad (endstone::PluginDescription)
          • getLoadBefore (endstone::PluginDescription)
          • getPrefix (endstone::PluginDescription)
          • getProvides (endstone::PluginDescription)
          • getSoftDepend (endstone::PluginDescription)
          • getVersion (endstone::PluginDescription, endstone::Server)
          • getWebsite (endstone::PluginDescription)
          • getDefaultPermSubscriptions (endstone::PluginManager)
          • getDefaultPermissions (endstone::PluginManager)
          • getPermissionSubscriptions (endstone::PluginManager)
          • getPlugins (endstone::PluginManager)
          • getBlockX (endstone::Position)
          • getBlockY (endstone::Position)
          • getBlockZ (endstone::Position)
          • getCallee (endstone::ProxiedCommandSender)
          • getCaller (endstone::ProxiedCommandSender)
          • getPendingTasks (endstone::Scheduler)
          • getEntry (endstone::Score)
          • getObjective (endstone::Score, endstone::Scoreboard)
          • getObjectives (endstone::Scoreboard)
          • getObjectivesByCriteria (endstone::Scoreboard)
          • getScores (endstone::Scoreboard)
          • getMessageId (endstone::ScriptMessageEvent)
          • getSender (endstone::ScriptMessageEvent, endstone::ServerCommandEvent)
          • getAverageMillisecondsPerTick (endstone::Server)
          • getAverageTickUsage (endstone::Server)
          • getAverageTicksPerSecond (endstone::Server)
          • getCommandSender (endstone::Server)
          • getCurrentMillisecondsPerTick (endstone::Server)
          • getCurrentTickUsage (endstone::Server)
          • getCurrentTicksPerSecond (endstone::Server)
          • getLanguage (endstone::Server)
          • getMaxPlayers (endstone::Server, endstone::ServerListPingEvent)
          • getMinecraftVersion (endstone::Server)
          • getOnlineMode (endstone::Server)
          • getOnlinePlayers (endstone::Server)
          • getPluginCommand (endstone::Server)
          • getPluginManager (endstone::Server)
          • getScheduler (endstone::Server)
          • getStartTime (endstone::Server)
          • getLevelName (endstone::ServerListPingEvent)
          • getLocalPort (endstone::ServerListPingEvent)
          • getLocalPortV6 (endstone::ServerListPingEvent)
          • getMinecraftVersionNetwork (endstone::ServerListPingEvent)
          • getMotd (endstone::ServerListPingEvent)
          • getNetworkProtocolVersion (endstone::ServerListPingEvent)
          • getNumPlayers (endstone::ServerListPingEvent)
          • getRemoteHost (endstone::ServerListPingEvent)
          • getRemotePort (endstone::ServerListPingEvent)
          • getServerGuid (endstone::ServerListPingEvent)
          • getCapeData (endstone::Skin)
          • getCapeId (endstone::Skin)
          • getSkinData (endstone::Skin)
          • getSkinId (endstone::Skin)
          • getDefaultValue (endstone::Slider, endstone::TextInput, endstone::Toggle)
          • getMax (endstone::Slider)
          • getMin (endstone::Slider)
          • getStep (endstone::Slider)
          • getHostname (endstone::SocketAddress)
          • getPort (endstone::SocketAddress)
          • getOwner (endstone::Task)
          • getTaskId (endstone::Task)
          • getPlaceholder (endstone::TextInput)
          • getParameters (endstone::Translatable)
          "},{"location":"reference/cpp/class_member_functions/#h","title":"h","text":"
          • hasFlag (endstone::BossBar)
          • hasPermission (endstone::CommandSenderWrapper, endstone::Permissible)
          • HandlerList (endstone::HandlerList)
          • hasBlock (endstone::PlayerInteractEvent)
          • hasItem (endstone::PlayerInteractEvent)
          "},{"location":"reference/cpp/class_member_functions/#i","title":"i","text":"
          • isDead (endstone::Actor)
          • isInLava (endstone::Actor)
          • isInWater (endstone::Actor)
          • isOnGround (endstone::Actor)
          • isCancellable (endstone::ActorDeathEvent, endstone::ActorKnockbackEvent, endstone::ActorRemoveEvent, endstone::ActorSpawnEvent, endstone::ActorTeleportEvent, endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::BroadcastMessageEvent, endstone::Event, endstone::PlayerChatEvent, endstone::PlayerCommandEvent, endstone::PlayerDeathEvent, endstone::PlayerInteractActorEvent, endstone::PlayerInteractEvent, endstone::PlayerJoinEvent, endstone::PlayerKickEvent, endstone::PlayerLoginEvent, endstone::PlayerQuitEvent, endstone::PlayerTeleportEvent, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::ScriptMessageEvent, endstone::ServerCommandEvent, endstone::ServerListPingEvent, endstone::ServerLoadEvent, endstone::ThunderChangeEvent, endstone::WeatherChangeEvent)
          • isBanned (endstone::BanList)
          • isValid (endstone::Block)
          • isVisible (endstone::BossBar)
          • isRegistered (endstone::Command)
          • isOp (endstone::CommandSenderWrapper, endstone::Permissible)
          • isPermissionSet (endstone::CommandSenderWrapper, endstone::Permissible)
          • isReadOnly (endstone::Criteria)
          • isAsynchronous (endstone::Event)
          • isCancelled (endstone::Event, endstone::Task)
          • isIgnoreCancelled (endstone::EventHandler)
          • isEmpty (endstone::Inventory)
          • ItemStack (endstone::ItemStack)
          • info (endstone::Logger)
          • isEnabledFor (endstone::Logger)
          • isGliding (endstone::Mob)
          • isDisplayed (endstone::Objective)
          • isModifiable (endstone::Objective)
          • init (endstone::Permission)
          • isFlying (endstone::Player)
          • isEnabled (endstone::Plugin)
          • isPluginEnabled (endstone::PluginManager)
          • isQueued (endstone::Scheduler)
          • isRunning (endstone::Scheduler)
          • isScoreSet (endstone::Score)
          • isPrimaryThread (endstone::Server)
          • isSync (endstone::Task)
          • isNil (endstone::UUID)
          "},{"location":"reference/cpp/class_member_functions/#k","title":"k","text":"
          • kick (endstone::Player)
          "},{"location":"reference/cpp/class_member_functions/#l","title":"l","text":"
          • Label (endstone::Label)
          • Location (endstone::Location)
          • Logger (endstone::Logger)
          • log (endstone::Logger)
          • loadPlugins (endstone::PluginLoader, endstone::PluginManager)
          • length (endstone::Vector)
          • lengthSquared (endstone::Vector)
          "},{"location":"reference/cpp/class_member_functions/#o","title":"o","text":"
          • onCommand (endstone::CommandExecutor)
          • operator= (endstone::CommandMap, endstone::Event, endstone::Plugin, endstone::PluginLoader, endstone::PluginManager, endstone::Server)
          • operator!= (endstone::Objective)
          • operator== (endstone::Objective, endstone::Vector)
          • onDisable (endstone::Plugin)
          • onEnable (endstone::Plugin)
          • onLoad (endstone::Plugin)
          • operator* (endstone::Vector)
          • operator*= (endstone::Vector)
          • operator+ (endstone::Vector)
          • operator+= (endstone::Vector)
          • operator- (endstone::Vector)
          • operator-= (endstone::Vector)
          • operator/ (endstone::Vector)
          • operator/= (endstone::Vector)
          • operator() (std::hash< endstone::UUID >)
          "},{"location":"reference/cpp/class_member_functions/#p","title":"p","text":"
          • Permission (endstone::Permission)
          • PermissionAttachment (endstone::PermissionAttachment)
          • PermissionAttachmentInfo (endstone::PermissionAttachmentInfo)
          • performCommand (endstone::Player)
          • PlayerChatEvent (endstone::PlayerChatEvent)
          • PlayerCommandEvent (endstone::PlayerCommandEvent)
          • PlayerDeathEvent (endstone::PlayerDeathEvent)
          • PlayerEvent (endstone::PlayerEvent)
          • PlayerInteractActorEvent (endstone::PlayerInteractActorEvent)
          • PlayerInteractEvent (endstone::PlayerInteractEvent)
          • PlayerJoinEvent (endstone::PlayerJoinEvent)
          • PlayerKickEvent (endstone::PlayerKickEvent)
          • PlayerLoginEvent (endstone::PlayerLoginEvent)
          • PlayerQuitEvent (endstone::PlayerQuitEvent)
          • PlayerTeleportEvent (endstone::PlayerTeleportEvent)
          • Plugin (endstone::Plugin)
          • PluginCommand (endstone::PluginCommand)
          • PluginDescription (endstone::PluginDescription)
          • PluginDisableEvent (endstone::PluginDisableEvent)
          • PluginEnableEvent (endstone::PluginEnableEvent)
          • PluginLoader (endstone::PluginLoader)
          • PluginManager (endstone::PluginManager)
          • Position (endstone::Position)
          "},{"location":"reference/cpp/class_member_functions/#r","title":"r","text":"
          • removeScoreboardTag (endstone::Actor)
          • removeBan (endstone::BanList)
          • removeAll (endstone::BossBar)
          • removeFlag (endstone::BossBar)
          • removePlayer (endstone::BossBar)
          • registerTo (endstone::Command)
          • registerCommand (endstone::CommandMap)
          • recalculatePermissions (endstone::CommandSenderWrapper, endstone::Permissible)
          • removeAttachment (endstone::CommandSenderWrapper, endstone::Permissible)
          • registerHandler (endstone::HandlerList)
          • recalculatePermissibles (endstone::Permission)
          • remove (endstone::PermissionAttachment)
          • resetTitle (endstone::Player)
          • registerEvent (endstone::Plugin, endstone::PluginManager)
          • recalculatePermissionDefaults (endstone::PluginManager)
          • registerLoader (endstone::PluginManager)
          • removePermission (endstone::PluginManager)
          • runTask (endstone::Scheduler)
          • runTaskAsync (endstone::Scheduler)
          • runTaskLater (endstone::Scheduler)
          • runTaskLaterAsync (endstone::Scheduler)
          • runTaskTimer (endstone::Scheduler)
          • runTaskTimerAsync (endstone::Scheduler)
          • resetScores (endstone::Scoreboard)
          • reload (endstone::Server)
          • reloadData (endstone::Server)
          "},{"location":"reference/cpp/class_member_functions/#s","title":"s","text":"
          • setIcon (endstone::ActionForm::Button, endstone::ModalForm)
          • setOnClick (endstone::ActionForm::Button)
          • setText (endstone::ActionForm::Button, endstone::Label)
          • setButtons (endstone::ActionForm)
          • setContent (endstone::ActionForm, endstone::MessageForm)
          • setOnSubmit (endstone::ActionForm, endstone::MessageForm, endstone::ModalForm)
          • setHealth (endstone::Actor)
          • setRotation (endstone::Actor)
          • setKnockback (endstone::ActorKnockbackEvent)
          • setFrom (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • setTo (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • setData (endstone::Block, endstone::BlockState)
          • setType (endstone::Block, endstone::BlockState, endstone::ItemStack)
          • setColor (endstone::BossBar)
          • setProgress (endstone::BossBar)
          • setStyle (endstone::BossBar)
          • setTitle (endstone::BossBar, endstone::Form)
          • setVisible (endstone::BossBar)
          • setMessage (endstone::BroadcastMessageEvent, endstone::PlayerChatEvent)
          • setAliases (endstone::Command)
          • setDescription (endstone::Command, endstone::Permission)
          • setName (endstone::Command)
          • setPermissions (endstone::Command)
          • setUsages (endstone::Command)
          • sendErrorMessage (endstone::CommandSender, endstone::CommandSenderWrapper)
          • sendMessage (endstone::CommandSender, endstone::CommandSenderWrapper)
          • setOp (endstone::CommandSenderWrapper, endstone::Permissible)
          • setDefaultIndex (endstone::Dropdown)
          • setLabel (endstone::Dropdown, endstone::Slider, endstone::TextInput, endstone::Toggle)
          • setOptions (endstone::Dropdown)
          • setCancelled (endstone::Event)
          • setOnClose (endstone::Form)
          • setItem (endstone::Inventory)
          • setAmount (endstone::ItemStack)
          • setTime (endstone::Level)
          • setPitch (endstone::Location)
          • setYaw (endstone::Location)
          • setLevel (endstone::Logger)
          • setButton1 (endstone::MessageForm)
          • setButton2 (endstone::MessageForm)
          • setControls (endstone::ModalForm)
          • setSubmitButton (endstone::ModalForm)
          • setDisplay (endstone::Objective)
          • setDisplayName (endstone::Objective)
          • setRenderType (endstone::Objective)
          • setDefault (endstone::Permission)
          • setPermission (endstone::PermissionAttachment)
          • setRemovalCallback (endstone::PermissionAttachment)
          • sendForm (endstone::Player)
          • sendPacket (endstone::Player)
          • sendPopup (endstone::Player)
          • sendTip (endstone::Player)
          • sendTitle (endstone::Player)
          • sendToast (endstone::Player)
          • setAllowFlight (endstone::Player)
          • setExpLevel (endstone::Player)
          • setExpProgress (endstone::Player)
          • setFlySpeed (endstone::Player)
          • setFlying (endstone::Player)
          • setGameMode (endstone::Player, endstone::ServerListPingEvent)
          • setScoreboard (endstone::Player)
          • setWalkSpeed (endstone::Player)
          • spawnParticle (endstone::Player)
          • setCommand (endstone::PlayerCommandEvent, endstone::ServerCommandEvent)
          • setDeathMessage (endstone::PlayerDeathEvent)
          • setJoinMessage (endstone::PlayerJoinEvent)
          • setReason (endstone::PlayerKickEvent)
          • setKickMessage (endstone::PlayerLoginEvent)
          • setQuitMessage (endstone::PlayerQuitEvent)
          • setEnabled (endstone::Plugin)
          • setExecutor (endstone::PluginCommand)
          • subscribeToDefaultPerms (endstone::PluginManager)
          • subscribeToPermission (endstone::PluginManager)
          • setDimension (endstone::Position)
          • setValue (endstone::Score)
          • ScriptMessageEvent (endstone::ScriptMessageEvent)
          • Server (endstone::Server)
          • setMaxPlayers (endstone::Server, endstone::ServerListPingEvent)
          • shutdown (endstone::Server)
          • ServerCommandEvent (endstone::ServerCommandEvent)
          • ServerListPingEvent (endstone::ServerListPingEvent)
          • serialize (endstone::ServerListPingEvent)
          • setLevelName (endstone::ServerListPingEvent)
          • setMinecraftVersionNetwork (endstone::ServerListPingEvent)
          • setMotd (endstone::ServerListPingEvent)
          • setNumPlayers (endstone::ServerListPingEvent)
          • ServerLoadEvent (endstone::ServerLoadEvent)
          • Skin (endstone::Skin)
          • Slider (endstone::Slider)
          • setDefaultValue (endstone::Slider, endstone::TextInput, endstone::Toggle)
          • setMax (endstone::Slider)
          • setMin (endstone::Slider)
          • setStep (endstone::Slider)
          • SocketAddress (endstone::SocketAddress)
          • setPlaceholder (endstone::TextInput)
          • size (endstone::UUID)
          • str (endstone::UUID)
          • swap (endstone::UUID)
          • setX (endstone::Vector)
          • setY (endstone::Vector)
          • setZ (endstone::Vector)
          "},{"location":"reference/cpp/class_member_functions/#t","title":"t","text":"
          • teleport (endstone::Actor)
          • testPermission (endstone::Command)
          • testPermissionSilently (endstone::Command)
          • translate (endstone::Language)
          • trace (endstone::Logger)
          • transfer (endstone::Player)
          • TextInput (endstone::TextInput)
          • ThunderChangeEvent (endstone::ThunderChangeEvent)
          • toThunderState (endstone::ThunderChangeEvent)
          • Toggle (endstone::Toggle)
          • Translatable (endstone::Translatable)
          • toWeatherState (endstone::WeatherChangeEvent)
          "},{"location":"reference/cpp/class_member_functions/#u","title":"u","text":"
          • update (endstone::BlockState)
          • unregisterFrom (endstone::Command)
          • unregister (endstone::HandlerList, endstone::Objective)
          • unsetPermission (endstone::PermissionAttachment)
          • updateCommands (endstone::Player)
          • unsubscribeFromDefaultPerms (endstone::PluginManager)
          • unsubscribeFromPermission (endstone::PluginManager)
          "},{"location":"reference/cpp/class_member_functions/#v","title":"v","text":"
          • version (endstone::UUID)
          • Vector (endstone::Vector)
          "},{"location":"reference/cpp/class_member_functions/#w","title":"w","text":"
          • warning (endstone::Logger)
          • WeatherChangeEvent (endstone::WeatherChangeEvent)
          • WeatherEvent (endstone::WeatherEvent)
          "},{"location":"reference/cpp/class_member_functions/#_1","title":"~","text":"
          • ~ActorDeathEvent (endstone::ActorDeathEvent)
          • ~ActorEvent (endstone::ActorEvent)
          • ~ActorKnockbackEvent (endstone::ActorKnockbackEvent)
          • ~ActorRemoveEvent (endstone::ActorRemoveEvent)
          • ~ActorSpawnEvent (endstone::ActorSpawnEvent)
          • ~ActorTeleportEvent (endstone::ActorTeleportEvent)
          • ~BanList (endstone::BanList)
          • ~Block (endstone::Block)
          • ~BlockBreakEvent (endstone::BlockBreakEvent)
          • ~BlockData (endstone::BlockData)
          • ~BlockEvent (endstone::BlockEvent)
          • ~BlockPlaceEvent (endstone::BlockPlaceEvent)
          • ~BlockState (endstone::BlockState)
          • ~BossBar (endstone::BossBar)
          • ~Command (endstone::Command)
          • ~CommandExecutor (endstone::CommandExecutor)
          • ~CommandMap (endstone::CommandMap)
          • ~Criteria (endstone::Criteria)
          • ~Dimension (endstone::Dimension)
          • ~Event (endstone::Event)
          • ~Inventory (endstone::Inventory)
          • ~ItemStack (endstone::ItemStack)
          • ~Language (endstone::Language)
          • ~Level (endstone::Level)
          • ~Logger (endstone::Logger)
          • ~Objective (endstone::Objective)
          • ~Packet (endstone::Packet)
          • ~Permissible (endstone::Permissible)
          • ~PlayerChatEvent (endstone::PlayerChatEvent)
          • ~PlayerCommandEvent (endstone::PlayerCommandEvent)
          • ~PlayerDeathEvent (endstone::PlayerDeathEvent)
          • ~PlayerEvent (endstone::PlayerEvent)
          • ~PlayerInteractActorEvent (endstone::PlayerInteractActorEvent)
          • ~PlayerInteractEvent (endstone::PlayerInteractEvent)
          • ~PlayerJoinEvent (endstone::PlayerJoinEvent)
          • ~PlayerKickEvent (endstone::PlayerKickEvent)
          • ~PlayerLoginEvent (endstone::PlayerLoginEvent)
          • ~PlayerQuitEvent (endstone::PlayerQuitEvent)
          • ~PlayerTeleportEvent (endstone::PlayerTeleportEvent)
          • ~Plugin (endstone::Plugin)
          • ~PluginLoader (endstone::PluginLoader)
          • ~PluginManager (endstone::PluginManager)
          • ~Scheduler (endstone::Scheduler)
          • ~Score (endstone::Score)
          • ~Scoreboard (endstone::Scoreboard)
          • ~Server (endstone::Server)
          • ~Task (endstone::Task)
          • ~ThunderChangeEvent (endstone::ThunderChangeEvent)
          • ~WeatherChangeEvent (endstone::WeatherChangeEvent)
          • ~WeatherEvent (endstone::WeatherEvent)
          "},{"location":"reference/cpp/class_member_variables/","title":"Class Member Variables","text":""},{"location":"reference/cpp/class_member_variables/#a","title":"a","text":"
          • actor_ (endstone::ActorEvent, endstone::PlayerInteractActorEvent)
          • Aqua (endstone::ColorFormat)
          • aliases_ (endstone::Command)
          • async_ (endstone::Event)
          • amount_ (endstone::ItemStack)
          • attachment_ (endstone::PermissionAttachmentInfo)
          • api_version_ (endstone::PluginDescription)
          • authors_ (endstone::PluginDescription)
          • actor_id (endstone::SpawnParticleEffectPacket)
          "},{"location":"reference/cpp/class_member_variables/#b","title":"b","text":"
          • buttons_ (endstone::ActionForm)
          • block_ (endstone::BlockEvent)
          • Black (endstone::ColorFormat)
          • Blue (endstone::ColorFormat)
          • Bold (endstone::ColorFormat)
          • baked_handlers_ (endstone::HandlerList)
          • button1_text_ (endstone::MessageForm)
          • button2_text_ (endstone::MessageForm)
          • block_clicked_ (endstone::PlayerInteractEvent)
          • block_face_ (endstone::PlayerInteractEvent)
          • BroadcastChannelAdmin (endstone::Server)
          • BroadcastChannelUser (endstone::Server)
          "},{"location":"reference/cpp/class_member_variables/#c","title":"c","text":"
          • content_ (endstone::ActionForm, endstone::MessageForm)
          • command_map_ (endstone::Command)
          • cancelled_ (endstone::Event)
          • controls_ (endstone::ModalForm)
          • children_ (endstone::Permission)
          • command_ (endstone::PlayerCommandEvent, endstone::ServerCommandEvent)
          • clicked_position_ (endstone::PlayerInteractEvent)
          • commands_ (endstone::PluginDescription)
          • contributors_ (endstone::PluginDescription)
          • cape_data_ (endstone::Skin)
          • cape_id_ (endstone::Skin)
          "},{"location":"reference/cpp/class_member_variables/#d","title":"d","text":"
          • DarkAqua (endstone::ColorFormat)
          • DarkBlue (endstone::ColorFormat)
          • DarkGray (endstone::ColorFormat)
          • DarkGreen (endstone::ColorFormat)
          • DarkPurple (endstone::ColorFormat)
          • DarkRed (endstone::ColorFormat)
          • description_ (endstone::Command, endstone::Permission, endstone::PluginDescription)
          • default_index_ (endstone::Dropdown)
          • DefaultPermission (endstone::Permission)
          • default_value_ (endstone::Permission, endstone::Slider, endstone::Toggle)
          • death_message_ (endstone::PlayerDeathEvent)
          • data_folder_ (endstone::Plugin)
          • default_permission_ (endstone::PluginDescription)
          • depend_ (endstone::PluginDescription)
          • dimension_ (endstone::Position)
          • data (endstone::Skin::ImageData, endstone::UUID)
          • dimension_id (endstone::SpawnParticleEffectPacket)
          • default_text_ (endstone::TextInput)
          "},{"location":"reference/cpp/class_member_variables/#e","title":"e","text":"
          • Escape (endstone::ColorFormat)
          • event_ (endstone::EventHandler, endstone::HandlerList)
          • executor_ (endstone::EventHandler, endstone::PluginCommand)
          • enabled_ (endstone::Plugin)
          • effect_name (endstone::SpawnParticleEffectPacket)
          "},{"location":"reference/cpp/class_member_variables/#f","title":"f","text":"
          • from_ (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent)
          • full_name_ (endstone::PluginDescription)
          "},{"location":"reference/cpp/class_member_variables/#g","title":"g","text":"
          • Gold (endstone::ColorFormat)
          • Gray (endstone::ColorFormat)
          • Green (endstone::ColorFormat)
          • game_mode_ (endstone::ServerListPingEvent)
          "},{"location":"reference/cpp/class_member_variables/#h","title":"h","text":"
          • handlers_ (endstone::HandlerList)
          • height (endstone::Skin::ImageData)
          • hostname_ (endstone::SocketAddress)
          "},{"location":"reference/cpp/class_member_variables/#i","title":"i","text":"
          • icon_ (endstone::ActionForm::Button, endstone::ModalForm)
          • Italic (endstone::ColorFormat)
          • ignore_cancelled_ (endstone::EventHandler)
          • item_ (endstone::PlayerInteractEvent)
          "},{"location":"reference/cpp/class_member_variables/#j","title":"j","text":"
          • join_message_ (endstone::PlayerJoinEvent)
          "},{"location":"reference/cpp/class_member_variables/#k","title":"k","text":"
          • knockback_ (endstone::ActorKnockbackEvent)
          "},{"location":"reference/cpp/class_member_variables/#l","title":"l","text":"
          • LightPurple (endstone::ColorFormat)
          • label_ (endstone::Dropdown, endstone::Slider, endstone::TextInput, endstone::Toggle)
          • loader_ (endstone::Plugin)
          • logger_ (endstone::Plugin)
          • load_ (endstone::PluginDescription)
          • load_before_ (endstone::PluginDescription)
          • level_name_ (endstone::ServerListPingEvent)
          • local_port_ (endstone::ServerListPingEvent)
          • local_port_v6_ (endstone::ServerListPingEvent)
          • level_ (endstone::WeatherEvent)
          "},{"location":"reference/cpp/class_member_variables/#m","title":"m","text":"
          • mob_ (endstone::ActorKnockbackEvent)
          • message_ (endstone::BroadcastMessageEvent, endstone::Error, endstone::PlayerChatEvent, endstone::PlayerLoginEvent, endstone::ScriptMessageEvent)
          • MaterialAmethyst (endstone::ColorFormat)
          • MaterialCopper (endstone::ColorFormat)
          • MaterialDiamond (endstone::ColorFormat)
          • MaterialEmerald (endstone::ColorFormat)
          • MaterialGold (endstone::ColorFormat)
          • MaterialIron (endstone::ColorFormat)
          • MaterialLapis (endstone::ColorFormat)
          • MaterialNetherite (endstone::ColorFormat)
          • MaterialQuartz (endstone::ColorFormat)
          • MaterialRedstone (endstone::ColorFormat)
          • MinecoinGold (endstone::ColorFormat)
          • mtx_ (endstone::HandlerList)
          • message_id_ (endstone::ScriptMessageEvent)
          • max_players_ (endstone::ServerListPingEvent)
          • minecraft_version_network_ (endstone::ServerListPingEvent)
          • motd_ (endstone::ServerListPingEvent)
          • max_ (endstone::Slider)
          • min_ (endstone::Slider)
          • molang_variables_json (endstone::SpawnParticleEffectPacket)
          "},{"location":"reference/cpp/class_member_variables/#n","title":"n","text":"
          • NAME (endstone::ActorDeathEvent, endstone::ActorKnockbackEvent, endstone::ActorRemoveEvent, endstone::ActorSpawnEvent, endstone::ActorTeleportEvent, endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::BroadcastMessageEvent, endstone::PlayerChatEvent, endstone::PlayerCommandEvent, endstone::PlayerDeathEvent, endstone::PlayerInteractActorEvent, endstone::PlayerInteractEvent, endstone::PlayerJoinEvent, endstone::PlayerKickEvent, endstone::PlayerLoginEvent, endstone::PlayerQuitEvent, endstone::PlayerTeleportEvent, endstone::PluginDisableEvent, endstone::PluginEnableEvent, endstone::ScriptMessageEvent, endstone::ServerCommandEvent, endstone::ServerListPingEvent, endstone::ServerLoadEvent, endstone::ThunderChangeEvent, endstone::WeatherChangeEvent)
          • name_ (endstone::Command, endstone::Permission, endstone::PluginDescription)
          • network_protocol_version_ (endstone::ServerListPingEvent)
          • num_players_ (endstone::ServerListPingEvent)
          "},{"location":"reference/cpp/class_member_variables/#o","title":"o","text":"
          • on_click_ (endstone::ActionForm::Button)
          • on_submit_ (endstone::ActionForm, endstone::MessageForm, endstone::ModalForm)
          • Obfuscated (endstone::ColorFormat)
          • on_error_ (endstone::CommandSenderWrapper)
          • on_message_ (endstone::CommandSenderWrapper)
          • options_ (endstone::Dropdown)
          • on_close_ (endstone::Form)
          • owner_ (endstone::PluginCommand)
          "},{"location":"reference/cpp/class_member_variables/#p","title":"p","text":"
          • player_ (endstone::BlockBreakEvent, endstone::BlockPlaceEvent, endstone::PlayerEvent)
          • placed_against_ (endstone::BlockPlaceEvent)
          • placed_block_ (endstone::BlockPlaceEvent)
          • permissions_ (endstone::Command, endstone::PermissionAttachment, endstone::PluginDescription)
          • plugin_ (endstone::EventHandler, endstone::PermissionAttachment, endstone::PluginDisableEvent, endstone::PluginEnableEvent)
          • priority_ (endstone::EventHandler)
          • pitch_ (endstone::Location)
          • plugin_manager_ (endstone::Permission)
          • permissible_ (endstone::PermissionAttachment, endstone::PermissionAttachmentInfo)
          • permission_ (endstone::PermissionAttachmentInfo)
          • prefix_ (endstone::PluginDescription)
          • provides_ (endstone::PluginDescription)
          • ping_response_ (endstone::ServerListPingEvent)
          • port_ (endstone::SocketAddress)
          • position (endstone::SpawnParticleEffectPacket)
          • placeholder_ (endstone::TextInput)
          • params_ (endstone::Translatable)
          "},{"location":"reference/cpp/class_member_variables/#q","title":"q","text":"
          • quit_message_ (endstone::PlayerQuitEvent)
          "},{"location":"reference/cpp/class_member_variables/#r","title":"r","text":"
          • raw_knockback_ (endstone::ActorKnockbackEvent)
          • recipients_ (endstone::BroadcastMessageEvent)
          • Red (endstone::ColorFormat)
          • Reset (endstone::ColorFormat)
          • removed_ (endstone::PermissionAttachment)
          • reason_ (endstone::PlayerKickEvent)
          • remote_host_ (endstone::ServerListPingEvent)
          • remote_port_ (endstone::ServerListPingEvent)
          "},{"location":"reference/cpp/class_member_variables/#s","title":"s","text":"
          • source_ (endstone::ActorKnockbackEvent)
          • sender_ (endstone::CommandSenderWrapper, endstone::ScriptMessageEvent, endstone::ServerCommandEvent)
          • stack_trace_ (endstone::Error)
          • submit_button_text_ (endstone::ModalForm)
          • server_ (endstone::Plugin, endstone::PluginLoader)
          • soft_depend_ (endstone::PluginDescription)
          • server_guid_ (endstone::ServerListPingEvent)
          • skin_data_ (endstone::Skin)
          • skin_id_ (endstone::Skin)
          • step_ (endstone::Slider)
          "},{"location":"reference/cpp/class_member_variables/#t","title":"t","text":"
          • text_ (endstone::ActionForm::Button, endstone::Label, endstone::Translatable)
          • to_ (endstone::ActorTeleportEvent, endstone::PlayerTeleportEvent, endstone::ThunderChangeEvent, endstone::WeatherChangeEvent)
          • title_ (endstone::Form)
          • type_ (endstone::ItemStack, endstone::ServerLoadEvent)
          "},{"location":"reference/cpp/class_member_variables/#u","title":"u","text":"
          • usages_ (endstone::Command)
          "},{"location":"reference/cpp/class_member_variables/#v","title":"v","text":"
          • valid_ (endstone::HandlerList)
          • value_ (endstone::PermissionAttachmentInfo)
          • version_ (endstone::PluginDescription)
          "},{"location":"reference/cpp/class_member_variables/#w","title":"w","text":"
          • White (endstone::ColorFormat)
          • website_ (endstone::PluginDescription)
          • width (endstone::Skin::ImageData)
          "},{"location":"reference/cpp/class_member_variables/#x","title":"x","text":"
          • x_ (endstone::Vector)
          "},{"location":"reference/cpp/class_member_variables/#y","title":"y","text":"
          • Yellow (endstone::ColorFormat)
          • yaw_ (endstone::Location)
          • y_ (endstone::Vector)
          "},{"location":"reference/cpp/class_member_variables/#z","title":"z","text":"
          • z_ (endstone::Vector)
          "},{"location":"reference/cpp/class_member_typedefs/","title":"Class Member Typedefs","text":""},{"location":"reference/cpp/class_member_typedefs/#c","title":"c","text":"
          • Callback (endstone::CommandSenderWrapper)
          • Control (endstone::ModalForm)
          "},{"location":"reference/cpp/class_member_typedefs/#f","title":"f","text":"
          • FormVariant (endstone::Player)
          "},{"location":"reference/cpp/class_member_typedefs/#o","title":"o","text":"
          • OnSubmitCallback (endstone::ActionForm, endstone::MessageForm, endstone::ModalForm)
          • OnClickCallback (endstone::ActionForm::Button)
          • OnCloseCallback (endstone::Form)
          "},{"location":"reference/cpp/class_member_typedefs/#t","title":"t","text":"
          • Type (fmt::formatter< endstone::Block >, fmt::formatter< endstone::BlockData >, fmt::formatter< endstone::BlockState >, fmt::formatter< endstone::BlockStates >, fmt::formatter< endstone::BlockStates::mapped_type >, fmt::formatter< endstone::BlockStates::value_type >, fmt::formatter< endstone::ItemStack >)
          "},{"location":"reference/cpp/class_member_enums/","title":"Class Member Enums","text":""},{"location":"reference/cpp/class_member_enums/#l","title":"l","text":"
          • Level (endstone::Logger)
          • LoadType (endstone::ServerLoadEvent)
          "},{"location":"reference/cpp/class_member_enums/#t","title":"t","text":"
          • Type (endstone::Criteria, endstone::Dimension)
          "},{"location":"reference/cpp/namespace_members/","title":"Namespace Members","text":""},{"location":"reference/cpp/namespace_members/#b","title":"b","text":"
          • BarColor (endstone)
          • BarFlag (endstone)
          • BarStyle (endstone)
          • BlockFace (endstone)
          • BlockStates (endstone)
          "},{"location":"reference/cpp/namespace_members/#d","title":"d","text":"
          • DisplaySlot (endstone)
          "},{"location":"reference/cpp/namespace_members/#e","title":"e","text":"
          • EventPriority (endstone)
          "},{"location":"reference/cpp/namespace_members/#g","title":"g","text":"
          • GameMode (endstone)
          "},{"location":"reference/cpp/namespace_members/#h","title":"h","text":"
          • hash_value (endstone)
          "},{"location":"reference/cpp/namespace_members/#m","title":"m","text":"
          • Message (endstone)
          "},{"location":"reference/cpp/namespace_members/#o","title":"o","text":"
          • ObjectiveSortOrder (endstone)
          • operator!= (endstone)
          • operator< (endstone)
          • operator<= (endstone)
          • operator== (endstone)
          • operator> (endstone)
          • operator>= (endstone)
          • overloaded (endstone)
          "},{"location":"reference/cpp/namespace_members/#p","title":"p","text":"
          • PacketType (endstone)
          • PermissionDefault (endstone)
          • PermissionRemovedExecutor (endstone)
          • PluginLoadOrder (endstone)
          "},{"location":"reference/cpp/namespace_members/#r","title":"r","text":"
          • RenderType (endstone)
          • Result (endstone)
          "},{"location":"reference/cpp/namespace_members/#s","title":"s","text":"
          • ScoreEntry (endstone)
          • swap (endstone)
          "},{"location":"reference/cpp/namespace_members/#t","title":"t","text":"
          • TaskId (endstone)
          "},{"location":"reference/cpp/namespace_member_functions/","title":"Namespace Member Functions","text":""},{"location":"reference/cpp/namespace_member_functions/#h","title":"h","text":"
          • hash_value (endstone)
          "},{"location":"reference/cpp/namespace_member_functions/#o","title":"o","text":"
          • operator!= (endstone)
          • operator< (endstone)
          • operator<= (endstone)
          • operator== (endstone)
          • operator> (endstone)
          • operator>= (endstone)
          • overloaded (endstone)
          "},{"location":"reference/cpp/namespace_member_functions/#s","title":"s","text":"
          • swap (endstone)
          "},{"location":"reference/cpp/namespace_member_variables/","title":"Namespace Member Variables","text":"

          Nothing related to Namespace Member Variables found.

          "},{"location":"reference/cpp/namespace_member_typedefs/","title":"Namespace Member Typedefs","text":""},{"location":"reference/cpp/namespace_member_typedefs/#b","title":"b","text":"
          • BlockStates (endstone)
          "},{"location":"reference/cpp/namespace_member_typedefs/#m","title":"m","text":"
          • Message (endstone)
          "},{"location":"reference/cpp/namespace_member_typedefs/#p","title":"p","text":"
          • PermissionRemovedExecutor (endstone)
          "},{"location":"reference/cpp/namespace_member_typedefs/#r","title":"r","text":"
          • Result (endstone)
          "},{"location":"reference/cpp/namespace_member_typedefs/#s","title":"s","text":"
          • ScoreEntry (endstone)
          "},{"location":"reference/cpp/namespace_member_typedefs/#t","title":"t","text":"
          • TaskId (endstone)
          "},{"location":"reference/cpp/namespace_member_enums/","title":"Namespace Member Enums","text":""},{"location":"reference/cpp/namespace_member_enums/#b","title":"b","text":"
          • BarColor (endstone)
          • BarFlag (endstone)
          • BarStyle (endstone)
          • BlockFace (endstone)
          "},{"location":"reference/cpp/namespace_member_enums/#d","title":"d","text":"
          • DisplaySlot (endstone)
          "},{"location":"reference/cpp/namespace_member_enums/#e","title":"e","text":"
          • EventPriority (endstone)
          "},{"location":"reference/cpp/namespace_member_enums/#g","title":"g","text":"
          • GameMode (endstone)
          "},{"location":"reference/cpp/namespace_member_enums/#o","title":"o","text":"
          • ObjectiveSortOrder (endstone)
          "},{"location":"reference/cpp/namespace_member_enums/#p","title":"p","text":"
          • PacketType (endstone)
          • PermissionDefault (endstone)
          • PluginLoadOrder (endstone)
          "},{"location":"reference/cpp/namespace_member_enums/#r","title":"r","text":"
          • RenderType (endstone)
          "},{"location":"reference/cpp/functions/","title":"Functions","text":"

          Nothing related to Functions found.

          "},{"location":"reference/cpp/macros/","title":"Macros","text":""},{"location":"reference/cpp/macros/#e","title":"e","text":"
          • ENDSTONE_API_VERSION (endstone.h)
          • ENDSTONE_EXPORT (endstone.h)
          • ENDSTONE_MAX_PLAYERS (endstone.h)
          • ENDSTONE_NOINLINE (endstone.h)
          • ENDSTONE_STRINGIFY (endstone.h)
          • ENDSTONE_TOSTRING (endstone.h)
          • ENDSTONE_VERSION_MAJOR (endstone.h)
          • ENDSTONE_VERSION_MINOR (endstone.h)
          • ENDSTONE_VERSION_PATCH (endstone.h)
          • ENDSTONE_PLUGIN (plugin.h)
          "},{"location":"reference/cpp/variables/","title":"Variables","text":"

          Nothing related to Variables found.

          "},{"location":"reference/cpp/links/","title":"Links","text":"
          • Related Pages
          • Modules
          • Class List
          • Namespace ListNamespace List
          • Namespace Members
          • Namespace Member Functions
          • Namespace Member Variables
          • Namespace Member Typedefs
          • Namespace Member Enumerations
          • Class Index
          • Class Hierarchy
          • Class Members
          • Class Member Functions
          • Class Member Variables
          • Class Member Typedefs
          • Class Member Enumerations
          • Files
          • File Variables
          • File Functions
          • File Macros
          "}]} \ No newline at end of file diff --git a/latest/sitemap.xml b/latest/sitemap.xml index a4859d76c..46fd9f531 100644 --- a/latest/sitemap.xml +++ b/latest/sitemap.xml @@ -2,1594 +2,1610 @@ https://endstone.dev/latest/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/changelog/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/getting-started/contributing/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/getting-started/installation/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/getting-started/project-structure/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/getting-started/start-your-server/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/python/actor/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/python/block/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/python/boss/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/python/command/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/python/event/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/python/form/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/python/inventory/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/python/lang/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/python/level/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/python/misc/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/python/network/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/python/permissions/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/python/player/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/python/plugin/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/python/scheduler/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/python/scoreboard/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/python/server/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/tutorials/create-your-first-plugin/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/tutorials/install-your-plugin/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/tutorials/publish-your-plugin/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/tutorials/register-commands/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/tutorials/register-event-listeners/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/tutorials/schedule-tasks/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/tutorials/use-color-codes/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/annotated/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/files/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/namespaceendstone/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1ActionForm/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1ActionForm_1_1Button/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Actor/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1ActorDeathEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1ActorEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1ActorKnockbackEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1ActorRemoveEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1ActorSpawnEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1ActorTeleportEvent/ - 2024-11-07 + 2024-11-10 + + + https://endstone.dev/latest/reference/cpp/classendstone_1_1BanList/ + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Block/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1BlockBreakEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1BlockData/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1BlockEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1BlockPlaceEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1BlockState/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1BossBar/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1BroadcastMessageEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/structendstone_1_1ColorFormat/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Command/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1CommandExecutor/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1CommandMap/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1CommandSender/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1CommandSenderWrapper/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1ConsoleCommandSender/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Criteria/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Dimension/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Dropdown/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Error/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Event/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1EventHandler/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Form/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1HandlerList/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Inventory/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1ItemStack/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Label/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Language/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Level/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Location/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Logger/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1MessageForm/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Mob/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1ModalForm/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Objective/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Packet/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Permissible/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Permission/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PermissionAttachment/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PermissionAttachmentInfo/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Player/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PlayerChatEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PlayerCommandEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PlayerDeathEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PlayerEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PlayerInteractActorEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PlayerInteractEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PlayerInventory/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PlayerJoinEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PlayerKickEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PlayerLoginEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PlayerQuitEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PlayerTeleportEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Plugin/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PluginCommand/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PluginDescription/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PluginDisableEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PluginEnableEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PluginLoader/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1PluginManager/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Position/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1ProxiedCommandSender/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Scheduler/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Score/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Scoreboard/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1ScriptMessageEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Server/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1ServerCommandEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1ServerEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1ServerListPingEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1ServerLoadEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Skin/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/structendstone_1_1Skin_1_1ImageData/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Slider/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1SocketAddress/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1SpawnParticleEffectPacket/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1StepSlider/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Task/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1TextInput/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1ThunderChangeEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Toggle/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Translatable/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1UUID/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1Vector/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1WeatherChangeEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classendstone_1_1WeatherEvent/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/namespaceendstone_1_1detail/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/structendstone_1_1overloaded/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/namespacefmt/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/structfmt_1_1formatter_3_01endstone_1_1Block_01_4/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockData_01_4/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockState_01_4/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_01_4/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1mapped__type_01_4/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/structfmt_1_1formatter_3_01endstone_1_1BlockStates_1_1value__type_01_4/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/structfmt_1_1formatter_3_01endstone_1_1ItemStack_01_4/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/namespacestd/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/structstd_1_1hash_3_01endstone_1_1UUID_01_4/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_d44c64559bbebec7f509842c48db8b23/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_6cf277b678674f97c7a2b6b3b2447b33/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/color__format_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/color__format_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/endstone_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/endstone_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/game__mode_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/game__mode_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_dd7779a583e02d88c9a89a2c881c3946/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/actor_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/actor_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/mob_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/mob_8h_source/ - 2024-11-07 + 2024-11-10 + + + https://endstone.dev/latest/reference/cpp/dir_f1b1f2e9abb31749ef58cd98f22bcd78/ + 2024-11-10 + + + https://endstone.dev/latest/reference/cpp/ban__list_8h/ + 2024-11-10 + + + https://endstone.dev/latest/reference/cpp/ban__list_8h_source/ + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_faca67fc60a7463eb1bd30eabe023cf1/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/block_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/block_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/block__data_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/block__data_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/block__face_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/block__face_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/block__state_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/block__state_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_d0a7fd8d5b72659767e2a2651b1ff51c/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/bar__color_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/bar__color_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/bar__flag_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/bar__flag_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/bar__style_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/bar__style_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/boss__bar_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/boss__bar_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_5c7b2dbfabcd1115569d1e20a260545c/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/command_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/command_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/command__executor_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/command__executor_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/command__map_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/command__map_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/command__sender_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/command__sender_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/command__sender__wrapper_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/command__sender__wrapper_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/console__command__sender_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/console__command__sender_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/plugin__command_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/plugin__command_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/proxied__command__sender_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/proxied__command__sender_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_f1d783c0ad83ee143d16e768ebca51c8/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/event__handler_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/event__handler_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/event__priority_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/event__priority_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/handler__list_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/handler__list_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_621c26b5fd4198aba66e7e31570ce44a/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/actor__death__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/actor__death__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/actor__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/actor__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/actor__knockback__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/actor__knockback__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/actor__remove__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/actor__remove__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/actor__spawn__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/actor__spawn__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/actor__teleport__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/actor__teleport__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_992e9ad7dc69726476903ba283e33c71/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/block__break__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/block__break__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/block__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/block__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/block__place__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/block__place__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_7c05c37b25e9c9eccd9c63c2d313ba28/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__chat__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__chat__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__command__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__command__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__death__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__death__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__interact__actor__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__interact__actor__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__interact__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__interact__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__join__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__join__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__kick__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__kick__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__login__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__login__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__quit__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__quit__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__teleport__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__teleport__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_77022909323d5ad872c4820a738a5429/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/broadcast__message__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/broadcast__message__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/plugin__disable__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/plugin__disable__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/plugin__enable__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/plugin__enable__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/script__message__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/script__message__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/server__command__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/server__command__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/server__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/server__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/server__list__ping__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/server__list__ping__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/server__load__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/server__load__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_7fcf87d2683114df01ea446fea23c187/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/thunder__change__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/thunder__change__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/weather__change__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/weather__change__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/weather__event_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/weather__event_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_0fd3b458603af3963ebb9c312a9238ec/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/action__form_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/action__form_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/form_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/form_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_035306890ec6a3fa870e30b726ac5ffc/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dropdown_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dropdown_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/label_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/label_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/slider_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/slider_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/step__slider_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/step__slider_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/text__input_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/text__input_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/toggle_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/toggle_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/message__form_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/message__form_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/modal__form_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/modal__form_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_d1e84b530b14f41e8b6f5ec1b5dee76c/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/inventory_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/inventory_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/item__stack_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/item__stack_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__inventory_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player__inventory_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_cd2600a5c389b96acc106cf97f774d1c/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/language_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/language_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/translatable_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/translatable_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_8e239ca1e5fd0d936d66a30330d3a329/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dimension_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dimension_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/level_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/level_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/location_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/location_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/position_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/position_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_5fb49eba5df98b849987b1937230be97/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/packet_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/packet_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/packet__type_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/packet__type_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/spawn__particle__effect__packet_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/spawn__particle__effect__packet_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_33a21cc2f228e5ad6b7d1bc8d0d1e9bc/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/permissible_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/permissible_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/permission_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/permission_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/permission__attachment_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/permission__attachment_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/permission__attachment__info_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/permission__attachment__info_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/permission__default_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/permission__default_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_53ee43673b2467e53c4cb8c30a2e7d89/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/plugin_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/plugin_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/plugin__description_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/plugin__description_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/plugin__load__order_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/plugin__load__order_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/plugin__loader_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/plugin__loader_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/plugin__manager_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/plugin__manager_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_3a50fadda3c7cdc27c965a478a3f7d27/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/scheduler_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/scheduler_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/task_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/task_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_19c52f9ea81a2cf7449c80dcee80d6f0/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/criteria_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/criteria_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/display__slot_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/display__slot_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/objective_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/objective_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/objective__sort__order_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/objective__sort__order_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/render__type_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/render__type_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/score_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/score_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/score__entry_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/score__entry_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/scoreboard_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/scoreboard_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/dir_89b85071337bf933dea6c29b4c6a4410/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/error_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/error_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/result_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/result_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/socket__address_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/socket__address_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/uuid_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/uuid_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/vector_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/vector_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/logger_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/logger_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/message_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/message_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/player_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/server_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/server_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/skin_8h/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/skin_8h_source/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/namespaces/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/classes/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/hierarchy/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/modules/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/pages/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/class_members/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/class_member_functions/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/class_member_variables/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/class_member_typedefs/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/class_member_enums/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/namespace_members/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/namespace_member_functions/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/namespace_member_variables/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/namespace_member_typedefs/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/namespace_member_enums/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/functions/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/macros/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/variables/ - 2024-11-07 + 2024-11-10 https://endstone.dev/latest/reference/cpp/links/ - 2024-11-07 + 2024-11-10 \ No newline at end of file diff --git a/latest/sitemap.xml.gz b/latest/sitemap.xml.gz index af7c48328..d61aa44df 100644 Binary files a/latest/sitemap.xml.gz and b/latest/sitemap.xml.gz differ