Skip to content

Commit

Permalink
Added amsg/pamsg game commands
Browse files Browse the repository at this point in the history
  • Loading branch information
JAJames committed Dec 2, 2019
1 parent 697b289 commit 920ac76
Show file tree
Hide file tree
Showing 2 changed files with 72 additions and 1 deletion.
71 changes: 70 additions & 1 deletion src/Plugins/RenX/RenX.Commands/RenX_Commands.cpp
Expand Up @@ -390,7 +390,7 @@ void PAdminMsgIRCCommand::trigger(IRC_Bot *source, const Jupiter::ReadableString

const Jupiter::ReadableString &PAdminMsgIRCCommand::getHelp(const Jupiter::ReadableString &)
{
static STRING_LITERAL_AS_NAMED_REFERENCE(defaultHelp, "Sends an admin message in-game. Syntax: pamsg <Player> <Message>");
static STRING_LITERAL_AS_NAMED_REFERENCE(defaultHelp, "Sends an admin message to a player in-game. Syntax: pamsg <Player> <Message>");
return defaultHelp;
}

Expand Down Expand Up @@ -3383,6 +3383,75 @@ const Jupiter::ReadableString &ModRequestGameCommand::getHelp(const Jupiter::Rea

GAME_COMMAND_INIT(ModRequestGameCommand)

// AdminMessage Game Command

void AdminMessageGameCommand::create()
{
this->addTrigger(STRING_LITERAL_AS_REFERENCE("amsg"));
this->addTrigger(STRING_LITERAL_AS_REFERENCE("adminmsg"));
this->addTrigger(STRING_LITERAL_AS_REFERENCE("amessage"));
this->addTrigger(STRING_LITERAL_AS_REFERENCE("adminmessage"));
this->setAccessLevel(1);
}

void AdminMessageGameCommand::trigger(RenX::Server *source, RenX::PlayerInfo *player, const Jupiter::ReadableString &parameters)
{
if (parameters.isNotEmpty())
{
Jupiter::StringS msg = player->gamePrefix + player->name + ": "_jrs + parameters;
source->sendAdminMessage(msg);
}
else
source->sendMessage(*player, "Error: Too few parameters. Syntax: amsg <player> <message>"_jrs);
}

const Jupiter::ReadableString &AdminMessageGameCommand::getHelp(const Jupiter::ReadableString &)
{
static STRING_LITERAL_AS_NAMED_REFERENCE(defaultHelp, "Sends an admin message in-game. Syntax: amsg <message>");
return defaultHelp;
}

GAME_COMMAND_INIT(AdminMessageGameCommand)

// PAdminMessage Game Command

void PAdminMessageGameCommand::create()
{
this->addTrigger(STRING_LITERAL_AS_REFERENCE("pamsg"));
this->addTrigger(STRING_LITERAL_AS_REFERENCE("padminmsg"));
this->addTrigger(STRING_LITERAL_AS_REFERENCE("pamessage"));
this->addTrigger(STRING_LITERAL_AS_REFERENCE("padminmessage"));
this->setAccessLevel(1);
}

void PAdminMessageGameCommand::trigger(RenX::Server *source, RenX::PlayerInfo *player, const Jupiter::ReadableString &parameters)
{
if (parameters.wordCount(WHITESPACE) >= 2)
{
Jupiter::StringS name = Jupiter::StringS::getWord(parameters, 0, WHITESPACE);
Jupiter::StringS msg = player->gamePrefix + player->name + ": "_jrs + Jupiter::ReferenceString::gotoWord(parameters, 1, WHITESPACE);

RenX::PlayerInfo *target = source->getPlayerByPartName(name);
if (target == nullptr)
source->sendMessage(*player, "Error: Player not found."_jrs);
else
{
source->sendAdminMessage(*target, msg);
source->sendMessage(*player, "Message sent to "_jrs + target->name);
}
}
else
source->sendMessage(*player, "Error: Too few parameters. Syntax: pamsg <player> <message>"_jrs);
}

const Jupiter::ReadableString &PAdminMessageGameCommand::getHelp(const Jupiter::ReadableString &)
{
static STRING_LITERAL_AS_NAMED_REFERENCE(defaultHelp, "Sends an admin message to a player in-game. Syntax: pamsg <player> <message>");
return defaultHelp;
}

GAME_COMMAND_INIT(PAdminMessageGameCommand)

// Kill Game Command

void KillGameCommand::create()
Expand Down
2 changes: 2 additions & 0 deletions src/Plugins/RenX/RenX.Commands/RenX_Commands.h
Expand Up @@ -108,6 +108,8 @@ GENERIC_GAME_COMMAND(HelpGameCommand)
GENERIC_GAME_COMMAND(ModsGameCommand)
GENERIC_GAME_COMMAND(RulesGameCommand)
GENERIC_GAME_COMMAND(ModRequestGameCommand)
GENERIC_GAME_COMMAND(AdminMessageGameCommand)
GENERIC_GAME_COMMAND(PAdminMessageGameCommand)
GENERIC_GAME_COMMAND(KillGameCommand)
GENERIC_GAME_COMMAND(DisarmGameCommand)
GENERIC_GAME_COMMAND(DisarmC4GameCommand)
Expand Down

0 comments on commit 920ac76

Please sign in to comment.