diff --git a/resources/scripts/Global.lua b/resources/scripts/Global.lua index bf88e81..8053150 100644 --- a/resources/scripts/Global.lua +++ b/resources/scripts/Global.lua @@ -13,6 +13,10 @@ function onCommandRequiredRankMissingError(additional_information, player) player:send_message(string.format("%s\nAdditional information: %s", error_msg, additional_information)) end +function onUnknownCommandError(command_name, player) + player:send_message(string.format("Unknown command %s", command_name)) +end + function split(input, separator) if separator == nil then separator = '%s' diff --git a/src/bin/kawari-world.rs b/src/bin/kawari-world.rs index f5c1aa3..e17bb75 100644 --- a/src/bin/kawari-world.rs +++ b/src/bin/kawari-world.rs @@ -564,6 +564,18 @@ async fn client_loop( } }) .unwrap(); + } else { + tracing::info!("Unknown command {command_name}"); + + lua.scope(|scope| { + let connection_data = scope + .create_userdata_ref_mut(&mut lua_player) + .unwrap(); + let func: Function = + lua.globals().get("onUnknownCommandError").unwrap(); + func.call::<()>((command_name, connection_data)).unwrap(); + Ok(()) + }).unwrap(); } }