FEAT: server-side commands

This commit is contained in:
Kolyah35
2026-04-04 01:13:56 +03:00
parent 4dc7055d9d
commit 4023d70687
13 changed files with 83 additions and 40 deletions

View File

@@ -2,26 +2,34 @@
#include "commands/Command.hpp"
#include "CommandManager.hpp"
#include <client/Minecraft.h>
#include <sstream>
CommandHelp::CommandHelp() : Command("help") {}
void CommandHelp::execute(Minecraft& mc, Player& player, const std::vector<std::string>& args) {
std::string CommandHelp::execute(Minecraft& mc, Player& player, const std::vector<std::string>& args) {
if (args.empty()) {
auto cmds = mc.commandManager().getListAllCommands();
mc.addMessage("Usage: /help <command>");
mc.addMessage("List of all commands:");
std::ostringstream output;
output << "List of all commands:" << std::endl;
for (auto& cmd : cmds) {
mc.addMessage(" - " + cmd);
output << " - " + cmd << std::endl;;
}
} else {
Command* cmd = mc.commandManager().getCommand(args[0]);
if (cmd != nullptr) {
cmd->printHelp(mc);
}
return output.str();
}
Command* cmd = mc.commandManager().getCommand(args[0]);
if (cmd != nullptr) {
return cmd->help(mc);
}
return "help: command " + args[0] + " not found";
}
void CommandHelp::printHelp(Minecraft& mc) {}
std::string CommandHelp::help(Minecraft& mc) {
return "Usage: /help <command>";
}