FEAT: server-side commands
This commit is contained in:
@@ -9,13 +9,13 @@
|
||||
|
||||
CommandKick::CommandKick() : Command("kick") {}
|
||||
|
||||
void CommandKick::execute(Minecraft& mc, Player& player, const std::vector<std::string>& args) {
|
||||
std::string CommandKick::execute(Minecraft& mc, Player& player, const std::vector<std::string>& args) {
|
||||
if (!isPlayerOp(mc, player)) {
|
||||
return mc.addMessage("You aren't enough priveleged to run this command");
|
||||
return "You aren't enough priveleged to run this command";
|
||||
}
|
||||
|
||||
if (args.empty()) {
|
||||
return printHelp(mc);
|
||||
return help(mc);
|
||||
}
|
||||
|
||||
auto it = std::find_if(mc.level->players.begin(), mc.level->players.end(), [args] (auto& it) -> bool {
|
||||
@@ -23,11 +23,11 @@ void CommandKick::execute(Minecraft& mc, Player& player, const std::vector<std::
|
||||
});
|
||||
|
||||
if (it == mc.level->players.end()) {
|
||||
return mc.addMessage("kick: can't find player with name " + args[0]);
|
||||
return "kick: can't find player with name " + args[0];
|
||||
}
|
||||
|
||||
if (*it == (Player*)mc.player) {
|
||||
return mc.addMessage("kick: you can't kick urself lol");
|
||||
return "kick: you can't kick urself lol";
|
||||
}
|
||||
|
||||
mc.level->removePlayer(*it);
|
||||
@@ -36,6 +36,6 @@ void CommandKick::execute(Minecraft& mc, Player& player, const std::vector<std::
|
||||
mc.addMessage("kick: successfully kicked player " + args[0]);
|
||||
}
|
||||
|
||||
void CommandKick::printHelp(Minecraft& mc) {
|
||||
mc.addMessage("Usage: /kick <player>");
|
||||
std::string CommandKick::help(Minecraft& mc) {
|
||||
return "Usage: /kick <player>";
|
||||
}
|
||||
Reference in New Issue
Block a user