Reactions, remote kick and better protections (#807)

* feat(Scripts): Complete GlobalPlayerBD
* feat(Scripts): add GPBD_Kicking
* feat(Scripts): start work on GPBD_FM_3
* feat(Scripts): add more to GPBD_FM_3
* feat(Scripts): complete GPBD_FM_3
* feat(Scripts): start work on GPBD_FM
* feat(Scripts): improve GPBD_FM
* feat(Scripts): complete GPBD_FM
* feat(Reactions): Add reactions
* feat(Protections): Improve protections
* feat(RemoteKick): Add remote kick
* feat(Stats): add KillsOnPlayers and DeathsByPlayers
* fix(Classes): Fix compiler warnings
This commit is contained in:
maybegreat48
2023-01-03 16:48:32 +00:00
committed by GitHub
parent 858b4d6b9f
commit 13ff1be75a
62 changed files with 1039 additions and 882 deletions

View File

@ -0,0 +1,30 @@
#pragma once
namespace big
{
class player;
using player_ptr = std::shared_ptr<player>;
class reaction
{
protected:
void process_common(player_ptr player);
public:
bool announce_in_chat = false;
bool notify = true;
bool log = false;
bool add_to_player_db = false;
bool block_joins = false;
bool kick = false;
const char* m_event_name;
const char* m_notify_message;
const char* m_announce_message;
NLOHMANN_DEFINE_TYPE_INTRUSIVE(reaction, announce_in_chat, notify, log, add_to_player_db, block_joins, kick)
reaction(const char* event_name, const char* notify_message, const char* announce_message);
virtual void process(player_ptr player);
};
}