From 8bfc201d1f9802078b3e93237a66c76fed9e48ce Mon Sep 17 00:00:00 2001 From: Quaternions <krakow20@gmail.com> Date: Wed, 23 Apr 2025 11:58:58 -0700 Subject: [PATCH] roblox_emulator: fix EnumItems.GetEnumItems --- lib/roblox_emulator/src/runner/enum.rs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/roblox_emulator/src/runner/enum.rs b/lib/roblox_emulator/src/runner/enum.rs index 390ab03..32a4f2f 100644 --- a/lib/roblox_emulator/src/runner/enum.rs +++ b/lib/roblox_emulator/src/runner/enum.rs @@ -47,11 +47,13 @@ pub fn set_globals(_lua:&mlua::Lua,globals:&mlua::Table)->Result<(),mlua::Error> globals.set("Enum",Enums) } -impl mlua::UserData for EnumItems<'_>{ +impl mlua::UserData for EnumItems<'static>{ fn add_fields<F:mlua::UserDataFields<Self>>(_fields:&mut F){ } fn add_methods<M:mlua::UserDataMethods<Self>>(methods:&mut M){ - methods.add_meta_function("GetEnumItems",|_,this:EnumItems|Ok(this.ed.items.iter().map(EnumItem::known_name).collect::<Vec<_>>())); + methods.add_method("GetEnumItems",|_,this:&EnumItems,()|->mlua::Result<Vec<EnumItem>>{ + Ok(this.ed.items.iter().map(EnumItem::known_name).collect()) + }); methods.add_meta_function(mlua::MetaMethod::Index,|_,(this,val):(EnumItems,mlua::String)|{ let index=&*val.to_str()?; Ok(this.ed.items.get_key_value(index).map(EnumItem::known_name))