refactor: style and micro performance improvements
This commit is contained in:
parent
3e74399e5b
commit
bf9891247f
@ -22,10 +22,13 @@ pub async fn handle_event(client: Client, event: Event, state: State) -> anyhow:
|
|||||||
let formatted_message = message.message();
|
let formatted_message = message.message();
|
||||||
info!("{}", formatted_message.to_ansi());
|
info!("{}", formatted_message.to_ansi());
|
||||||
|
|
||||||
let owners = state.lua.globals().get::<Vec<String>>("Owners")?;
|
|
||||||
if message.is_whisper()
|
if message.is_whisper()
|
||||||
&& let (Some(sender), content) = message.split_sender_and_content()
|
&& let (Some(sender), content) = message.split_sender_and_content()
|
||||||
&& owners.contains(&sender)
|
&& state
|
||||||
|
.lua
|
||||||
|
.globals()
|
||||||
|
.get::<Vec<String>>("Owners")?
|
||||||
|
.contains(&sender)
|
||||||
{
|
{
|
||||||
if let Err(error) = state.commands.execute(
|
if let Err(error) = state.commands.execute(
|
||||||
content,
|
content,
|
||||||
@ -55,7 +58,7 @@ pub async fn handle_event(client: Client, event: Event, state: State) -> anyhow:
|
|||||||
}
|
}
|
||||||
Event::Disconnect(message) => {
|
Event::Disconnect(message) => {
|
||||||
call_listeners(&state, "disconnect", message.map(|m| m.to_string())).await;
|
call_listeners(&state, "disconnect", message.map(|m| m.to_string())).await;
|
||||||
exit(1)
|
exit(0)
|
||||||
}
|
}
|
||||||
Event::Login => call_listeners(&state, "login", ()).await,
|
Event::Login => call_listeners(&state, "login", ()).await,
|
||||||
Event::RemovePlayer(player_info) => {
|
Event::RemovePlayer(player_info) => {
|
||||||
@ -84,8 +87,7 @@ pub async fn handle_event(client: Client, event: Event, state: State) -> anyhow:
|
|||||||
Event::Init => {
|
Event::Init => {
|
||||||
debug!("received initialize event");
|
debug!("received initialize event");
|
||||||
|
|
||||||
let globals = state.lua.globals();
|
state.lua.globals().set(
|
||||||
globals.set(
|
|
||||||
"client",
|
"client",
|
||||||
lua::client::Client {
|
lua::client::Client {
|
||||||
inner: Some(client),
|
inner: Some(client),
|
||||||
|
@ -46,12 +46,11 @@ async fn main() -> anyhow::Result<()> {
|
|||||||
console_subscriber::init();
|
console_subscriber::init();
|
||||||
|
|
||||||
let args = arguments::Arguments::parse();
|
let args = arguments::Arguments::parse();
|
||||||
|
|
||||||
let script_path = args.script.unwrap_or(PathBuf::from(DEFAULT_SCRIPT_PATH));
|
let script_path = args.script.unwrap_or(PathBuf::from(DEFAULT_SCRIPT_PATH));
|
||||||
let event_listeners = Arc::new(RwLock::new(HashMap::new()));
|
let event_listeners = Arc::new(RwLock::new(HashMap::new()));
|
||||||
|
|
||||||
let lua = Lua::new();
|
let lua = Lua::new();
|
||||||
let globals = lua.globals();
|
let globals = lua.globals();
|
||||||
|
|
||||||
globals.set("script_path", &*script_path)?;
|
globals.set("script_path", &*script_path)?;
|
||||||
lua::register_functions(&lua, &globals, event_listeners.clone())?;
|
lua::register_functions(&lua, &globals, event_listeners.clone())?;
|
||||||
lua.load(
|
lua.load(
|
||||||
|
Loading…
x
Reference in New Issue
Block a user