From 338d645fcfa1f07a82c4940aa09a6fb265ff608f Mon Sep 17 00:00:00 2001 From: red-001 Date: Thu, 15 Feb 2018 20:18:54 +0000 Subject: Add `on_auth_fail` callback (#7039) Called when a client fails to supply the correct password for the account it's attempting to login as. --- src/script/cpp_api/s_player.cpp | 11 +++++++++++ src/script/cpp_api/s_player.h | 1 + 2 files changed, 12 insertions(+) (limited to 'src/script') diff --git a/src/script/cpp_api/s_player.cpp b/src/script/cpp_api/s_player.cpp index f3c316650..578298e24 100644 --- a/src/script/cpp_api/s_player.cpp +++ b/src/script/cpp_api/s_player.cpp @@ -206,3 +206,14 @@ void ScriptApiPlayer::on_playerReceiveFields(ServerActiveObject *player, runCallbacks(3, RUN_CALLBACKS_MODE_OR_SC); } +void ScriptApiPlayer::on_auth_failure(const std::string &name, const std::string &ip) +{ + SCRIPTAPI_PRECHECKHEADER + + // Get core.registered_on_auth_failure + lua_getglobal(L, "core"); + lua_getfield(L, -1, "registered_on_auth_fail"); + lua_pushstring(L, name.c_str()); + lua_pushstring(L, ip.c_str()); + runCallbacks(2, RUN_CALLBACKS_MODE_FIRST); +} diff --git a/src/script/cpp_api/s_player.h b/src/script/cpp_api/s_player.h index 6b752eb69..562805695 100644 --- a/src/script/cpp_api/s_player.h +++ b/src/script/cpp_api/s_player.h @@ -45,4 +45,5 @@ public: s16 on_player_hpchange(ServerActiveObject *player, s16 hp_change); void on_playerReceiveFields(ServerActiveObject *player, const std::string &formname, const StringMap &fields); + void on_auth_failure(const std::string &name, const std::string &ip); }; -- cgit v1.2.3