mirror of
https://github.com/luanti-org/luanti.git
synced 2025-06-27 16:36:03 +00:00
[CSM] Add send_chat_message and run_server_chatcommand API functions (#5747)
* [CSM] Add send_chat_message and run_server_chatcommand API functions * Add client-side chat message rate limiting * Limit out chat queue size * [CSM] Add minetest.clear_out_chat_queue API function and .clear_chat_queue chatcommand * Last fixes/cleanups before merge
This commit is contained in:
parent
ec490abf58
commit
39f4a2f607
9 changed files with 111 additions and 6 deletions
|
@ -85,6 +85,23 @@ int ModApiClient::l_display_chat_message(lua_State *L)
|
|||
return 1;
|
||||
}
|
||||
|
||||
// send_chat_message(message)
|
||||
int ModApiClient::l_send_chat_message(lua_State *L)
|
||||
{
|
||||
if (!lua_isstring(L,1))
|
||||
return 0;
|
||||
std::string message = luaL_checkstring(L, 1);
|
||||
getClient(L)->sendChatMessage(utf8_to_wide(message));
|
||||
return 0;
|
||||
}
|
||||
|
||||
// clear_out_chat_queue()
|
||||
int ModApiClient::l_clear_out_chat_queue(lua_State *L)
|
||||
{
|
||||
getClient(L)->clearOutChatQueue();
|
||||
return 0;
|
||||
}
|
||||
|
||||
// get_player_names()
|
||||
int ModApiClient::l_get_player_names(lua_State *L)
|
||||
{
|
||||
|
@ -317,6 +334,8 @@ void ModApiClient::Initialize(lua_State *L, int top)
|
|||
API_FCT(get_current_modname);
|
||||
API_FCT(print);
|
||||
API_FCT(display_chat_message);
|
||||
API_FCT(send_chat_message);
|
||||
API_FCT(clear_out_chat_queue);
|
||||
API_FCT(get_player_names);
|
||||
API_FCT(set_last_run_mod);
|
||||
API_FCT(get_last_run_mod);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue