setPermission("pocketmine.command.difficulty"); } public function execute(CommandSender $sender, string $commandLabel, array $args){ if(!$this->testPermission($sender)){ return true; } if(count($args) !== 1){ throw new InvalidCommandSyntaxException(); } $difficulty = Level::getDifficultyFromString($args[0]); if($sender->getServer()->isHardcore()){ $difficulty = Level::DIFFICULTY_HARD; } if($difficulty !== -1){ $sender->getServer()->setConfigInt("difficulty", $difficulty); //TODO: add per-world support foreach($sender->getServer()->getLevels() as $level){ $level->setDifficulty($difficulty); } Command::broadcastCommandMessage($sender, new TranslationContainer("commands.difficulty.success", [$difficulty])); }else{ throw new InvalidCommandSyntaxException(); } return true; } }