From 3ba0e4043e407f6c98ffa4b932ea19abca6b034f Mon Sep 17 00:00:00 2001 From: JAJames Date: Sat, 5 Mar 2016 04:10:24 -0500 Subject: [PATCH] RenX.Core: * Added handling for "SpeedHack;" PLAYER and "OverMine;" GAME RCON events. RenX.Commands: * Color coded "inactive" and "active" keywords in "BanSearch" IRC Command --- Release/Plugins/RenX.Core.lib | Bin 197042 -> 198102 bytes RenX.Commands/RenX_Commands.cpp | 4 ++-- RenX.Core/RenX_Plugin.cpp | 10 ++++++++++ RenX.Core/RenX_Plugin.h | 2 ++ RenX.Core/RenX_Server.cpp | 22 ++++++++++++++++++++++ 5 files changed, 36 insertions(+), 2 deletions(-) diff --git a/Release/Plugins/RenX.Core.lib b/Release/Plugins/RenX.Core.lib index ceac45ac2b0ae8c7f71369f1babc0545d827daa2..129809f4d6d00729ef80ac3dfd71e0296b215acf 100644 GIT binary patch delta 21968 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 HLIV8{*4%oQ delta 21758 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 ? "" : "in", timeStr, ip_str.size(), ip_str.ptr(), entry->prefix_length, entry->steamid, types.size(), types.ptr(), + out.format("ID: %lu (" IRCCOLOR "%sactive" IRCCOLOR "); Date: %s; IP: %.*s/%u; Steam: %llu; Types:%.*s Name: %.*s; Banner: %.*s", + i, entry->is_active() ? "12" : "04in", timeStr, ip_str.size(), ip_str.ptr(), entry->prefix_length, entry->steamid, types.size(), types.ptr(), entry->name.size(), entry->name.ptr(), entry->banner.size(), entry->banner.ptr()); if (entry->rdns.isNotEmpty()) diff --git a/RenX.Core/RenX_Plugin.cpp b/RenX.Core/RenX_Plugin.cpp index c8be75e..5d51432 100644 --- a/RenX.Core/RenX_Plugin.cpp +++ b/RenX.Core/RenX_Plugin.cpp @@ -121,6 +121,11 @@ void RenX::Plugin::RenX_OnExecute(Server *, const PlayerInfo *, const Jupiter::R return; } +void RenX::Plugin::RenX_OnSpeedHack(Server *, const PlayerInfo *) +{ + return; +} + void RenX::Plugin::RenX_OnPlayer(Server *, const Jupiter::ReadableString &) { return; @@ -161,6 +166,11 @@ void RenX::Plugin::RenX_OnDeploy(Server *, const RenX::PlayerInfo *, const Jupit return; } +void RenX::Plugin::RenX_OnOverMine(Server *, const RenX::PlayerInfo *, const Jupiter::ReadableString &) +{ + return; +} + void RenX::Plugin::RenX_OnDisarm(Server *, const RenX::PlayerInfo *, const Jupiter::ReadableString &) { return; diff --git a/RenX.Core/RenX_Plugin.h b/RenX.Core/RenX_Plugin.h index c4276d8..595b3b7 100644 --- a/RenX.Core/RenX_Plugin.h +++ b/RenX.Core/RenX_Plugin.h @@ -62,6 +62,7 @@ namespace RenX virtual void RenX_OnRank(Server *server, const PlayerInfo *player); virtual void RenX_OnDev(Server *server, const PlayerInfo *player); virtual void RenX_OnExecute(Server *server, const PlayerInfo *player, const Jupiter::ReadableString &command); + virtual void RenX_OnSpeedHack(Server *server, const PlayerInfo *player); virtual void RenX_OnPlayer(Server *server, const Jupiter::ReadableString &raw); /** Chat type logs */ @@ -74,6 +75,7 @@ namespace RenX /** Game type logs */ virtual void RenX_OnDeploy(Server *server, const PlayerInfo *player, const Jupiter::ReadableString &object); + virtual void RenX_OnOverMine(Server *server, const PlayerInfo *player, const Jupiter::ReadableString &location); virtual void RenX_OnDisarm(Server *server, const PlayerInfo *player, const Jupiter::ReadableString &object); virtual void RenX_OnDisarm(Server *server, const PlayerInfo *player, const Jupiter::ReadableString &object, const PlayerInfo *victim); virtual void RenX_OnExplode(Server *server, const PlayerInfo *player, const Jupiter::ReadableString &object); diff --git a/RenX.Core/RenX_Server.cpp b/RenX.Core/RenX_Server.cpp index ad848c8..aab3891 100644 --- a/RenX.Core/RenX_Server.cpp +++ b/RenX.Core/RenX_Server.cpp @@ -2238,6 +2238,15 @@ void RenX::Server::processLine(const Jupiter::ReadableString &line) xPlugins.get(i)->RenX_OnDonate(this, donor, player, amount); } } + else if (subHeader.equals("OverMine;")) + { + // Player | "near" | Location + RenX::PlayerInfo *player = parseGetPlayerOrAdd(tokens.getToken(1)); + Jupiter::ReferenceString location = tokens.getToken(3); + + for (size_t i = 0; i < xPlugins.size(); i++) + xPlugins.get(i)->RenX_OnOverMine(this, player, location); + } else if (subHeader.equals("MatchEnd;")) { // "winner" | Winner | Reason("TimeLimit" etc) | "GDI=" GDI Score | "Nod=" Nod Score @@ -2432,6 +2441,9 @@ void RenX::Server::processLine(const Jupiter::ReadableString &line) RenX::PlayerInfo *player = parseGetPlayerOrAdd(tokens.getToken(1)); if (player != nullptr) player->global_rank = tokens.getToken(2).asUnsignedInt(); + + for (size_t i = 0; i < xPlugins.size(); i++) + xPlugins.get(i)->RenX_OnRank(this, player); } } else if (subHeader.equals("Dev;")) @@ -2440,6 +2452,16 @@ void RenX::Server::processLine(const Jupiter::ReadableString &line) RenX::PlayerInfo *player = parseGetPlayerOrAdd(tokens.getToken(1)); if (player != nullptr) player->is_dev = tokens.getToken(2).asBool(); + + for (size_t i = 0; i < xPlugins.size(); i++) + xPlugins.get(i)->RenX_OnDev(this, player); + } + else if (subHeader.equals("SpeedHack;")) + { + // Player + RenX::PlayerInfo *player = parseGetPlayerOrAdd(tokens.getToken(1)); + for (size_t i = 0; i < xPlugins.size(); i++) + xPlugins.get(i)->RenX_OnSpeedHack(this, player); } else {