#include "ToggleDownfallCommand.h" #include #include #include "minecraft/commands/CommandsEnum.h" #include "minecraft/network/packet/ChatPacket.h" #include "minecraft/network/packet/GameCommandPacket.h" #include "minecraft/server/MinecraftServer.h" #include "minecraft/server/level/ServerLevel.h" #include "minecraft/world/level/storage/LevelData.h" EGameCommand ToggleDownfallCommand::getId() { return eGameCommand_ToggleDownfall; } int ToggleDownfallCommand::getPermissionLevel() { return LEVEL_GAMEMASTERS; } void ToggleDownfallCommand::execute(std::shared_ptr source, std::vector& commandData) { doToggleDownfall(); logAdminAction(source, ChatPacket::e_ChatCustom, "commands.downfall.success"); } void ToggleDownfallCommand::doToggleDownfall() { MinecraftServer::getInstance()->levels[0]->toggleDownfall(); MinecraftServer::getInstance()->levels[0]->getLevelData()->setThundering( true); } std::shared_ptr ToggleDownfallCommand::preparePacket() { return std::shared_ptr(new GameCommandPacket( eGameCommand_ToggleDownfall, std::vector())); }