From c6ebb179a1f67e61c10398f917fbcd67fe79d973 Mon Sep 17 00:00:00 2001 From: Quaternions <krakow20@gmail.com> Date: Tue, 22 Apr 2025 21:06:18 -0700 Subject: [PATCH] roblox_emulator: use common function pointer for lazy user data --- lib/roblox_emulator/src/runner/instance/instance.rs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/lib/roblox_emulator/src/runner/instance/instance.rs b/lib/roblox_emulator/src/runner/instance/instance.rs index bc831b9..5e4f60c 100644 --- a/lib/roblox_emulator/src/runner/instance/instance.rs +++ b/lib/roblox_emulator/src/runner/instance/instance.rs @@ -533,14 +533,17 @@ type LUD=phf::Map<&'static str,// Class name CreateUserData > >; +fn create_script_signal(lua:&mlua::Lua)->mlua::Result<mlua::AnyUserData>{ + lua.create_any_userdata(crate::runner::script_signal::ScriptSignal::new()) +} static LAZY_USER_DATA:LUD=phf::phf_map!{ "RunService"=>phf::phf_map!{ - "Stepped"=>|lua|lua.create_any_userdata(crate::runner::script_signal::ScriptSignal::new()), - "Heartbeat"=>|lua|lua.create_any_userdata(crate::runner::script_signal::ScriptSignal::new()), - "RenderStepped"=>|lua|lua.create_any_userdata(crate::runner::script_signal::ScriptSignal::new()), + "Stepped"=>create_script_signal, + "Heartbeat"=>create_script_signal, + "RenderStepped"=>create_script_signal, }, "Players"=>phf::phf_map!{ - "PlayerAdded"=>|lua|lua.create_any_userdata(crate::runner::script_signal::ScriptSignal::new()), + "PlayerAdded"=>create_script_signal, }, }; #[derive(Default)]