From 5e44d5f75e20a1e515da44e88220350b4e9fb716 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Fri, 27 Nov 2020 18:06:59 +0000 Subject: [PATCH] Do not load playerdata from disk just to op/deop/whitelist/dewhitelist this is an impressively dumb idea. the playerdata is not used here in any capacity so it doesn't make sense to load it, especially considering that it takes a significant amount of time. --- src/command/defaults/DeopCommand.php | 7 +++---- src/command/defaults/OpCommand.php | 7 +++---- src/command/defaults/WhitelistCommand.php | 4 ++-- 3 files changed, 8 insertions(+), 10 deletions(-) diff --git a/src/command/defaults/DeopCommand.php b/src/command/defaults/DeopCommand.php index c9f052f12..8448f27ac 100644 --- a/src/command/defaults/DeopCommand.php +++ b/src/command/defaults/DeopCommand.php @@ -57,12 +57,11 @@ class DeopCommand extends VanillaCommand{ throw new InvalidCommandSyntaxException(); } - $player = $sender->getServer()->getOfflinePlayer($name); - $player->setOp(false); - if($player instanceof Player){ + $sender->getServer()->removeOp($name); + if(($player = $sender->getServer()->getPlayerExact($name)) !== null){ $player->sendMessage(TextFormat::GRAY . "You are no longer op!"); } - Command::broadcastCommandMessage($sender, new TranslationContainer("commands.deop.success", [$player->getName()])); + Command::broadcastCommandMessage($sender, new TranslationContainer("commands.deop.success", [$name])); return true; } diff --git a/src/command/defaults/OpCommand.php b/src/command/defaults/OpCommand.php index fd711d98c..0b4537d2c 100644 --- a/src/command/defaults/OpCommand.php +++ b/src/command/defaults/OpCommand.php @@ -57,12 +57,11 @@ class OpCommand extends VanillaCommand{ throw new InvalidCommandSyntaxException(); } - $player = $sender->getServer()->getOfflinePlayer($name); - Command::broadcastCommandMessage($sender, new TranslationContainer("commands.op.success", [$player->getName()])); - if($player instanceof Player){ + $sender->getServer()->addOp($name); + if(($player = $sender->getServer()->getPlayerExact($name)) !== null){ $player->sendMessage(TextFormat::GRAY . "You are now op!"); } - $player->setOp(true); + Command::broadcastCommandMessage($sender, new TranslationContainer("commands.op.success", [$name])); return true; } } diff --git a/src/command/defaults/WhitelistCommand.php b/src/command/defaults/WhitelistCommand.php index ed53ee575..1a9547c37 100644 --- a/src/command/defaults/WhitelistCommand.php +++ b/src/command/defaults/WhitelistCommand.php @@ -99,12 +99,12 @@ class WhitelistCommand extends VanillaCommand{ } switch(strtolower($args[0])){ case "add": - $sender->getServer()->getOfflinePlayer($args[1])->setWhitelisted(true); + $sender->getServer()->addWhitelist($args[1]); Command::broadcastCommandMessage($sender, new TranslationContainer("commands.whitelist.add.success", [$args[1]])); return true; case "remove": - $sender->getServer()->getOfflinePlayer($args[1])->setWhitelisted(false); + $sender->getServer()->removeWhitelist($args[1]); Command::broadcastCommandMessage($sender, new TranslationContainer("commands.whitelist.remove.success", [$args[1]])); return true;