class ent_menuitem_checkmark(Structure):
#{
_fields_ = [("id_check",c_uint32),
- ("pstr_data",c_uint32)]
+ ("pstr_data",c_uint32),
+ ("offset",c_float*3)]
#}
class ent_menuitem_page(Structure):
class ent_menuitem(Structure):
#{
_fields_ = [("type",c_uint32), ("groups",c_uint32),
- ("id_links",c_uint32*4),
+ ("id_links",c_uint32*4),
+ ("factive",c_float), ("fvisible",c_float),
#-- TODO: Refactor this into a simple mesh structure
("transform",mdl_transform),
("submesh_start",c_uint32),("submesh_count",c_uint32),
+ ("_u64",c_uint64),
#-- end
("_anonymous_union", ent_menuitem_anon_union)]
#}
def sr_compile_menus( collection ):
#{
- print( "[SR] Compiling menus" )
+ print( "[SR1] Compiling menus" )
groups = []
for obj in collection.all_objects:#{
item_checkmark = item._anonymous_union.checkmark
item_checkmark.pstr_data = sr_compile_string( obj_data.string )
item_checkmark.id_check = sr_entity_id( obj_data.checkmark )
+ delta = obj_data.checkmark.location - obj.location
+ item_checkmark.offset[0] = delta[0]
+ item_checkmark.offset[1] = delta[2]
+ item_checkmark.offset[2] = -delta[1]
#}
elif item.type == 4:#{
item_slider = item._anonymous_union.slider
item_slider.id_min = sr_entity_id( obj_data.slider_minloc )
item_slider.id_max = sr_entity_id( obj_data.slider_maxloc )
item_slider.id_handle = sr_entity_id( obj_data.slider_handle )
+ item_slider.pstr_data = sr_compile_string( obj_data.string )
#}
elif item.type == 5:#{
item_page = item._anonymous_union.page