mirror of
https://github.com/holub/mame
synced 2025-05-23 22:20:01 +03:00
expose ioport_setting to luaengine
This commit is contained in:
parent
ba62cea8b4
commit
ce329077b5
@ -2071,6 +2071,8 @@ void lua_engine::initialize()
|
|||||||
* field.crosshair_scale
|
* field.crosshair_scale
|
||||||
* field.crosshair_offset
|
* field.crosshair_offset
|
||||||
* field.user_value
|
* field.user_value
|
||||||
|
*
|
||||||
|
* field.settings[] - ioport_setting table (k=value, v=name)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
auto ioport_field_type = sol().registry().create_simple_usertype<ioport_field>("new", sol::no_constructor);
|
auto ioport_field_type = sol().registry().create_simple_usertype<ioport_field>("new", sol::no_constructor);
|
||||||
@ -2152,6 +2154,13 @@ void lua_engine::initialize()
|
|||||||
settings.value = val;
|
settings.value = val;
|
||||||
f.set_user_settings(settings);
|
f.set_user_settings(settings);
|
||||||
}));
|
}));
|
||||||
|
ioport_field_type.set("settings", sol::property([this](ioport_field &f) {
|
||||||
|
sol::table result = sol().create_table();
|
||||||
|
for (ioport_setting &setting : f.settings())
|
||||||
|
if (setting.enabled())
|
||||||
|
result[setting.value()] = setting.name();
|
||||||
|
return result;
|
||||||
|
}));
|
||||||
sol().registry().set_usertype("ioport_field", ioport_field_type);
|
sol().registry().set_usertype("ioport_field", ioport_field_type);
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user