103 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
		
		
			
		
	
	
			103 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
|  | import time | ||
|  | 
 | ||
|  | import lnx | ||
|  | import lnx.log | ||
|  | import lnx.nodes_logic | ||
|  | import lnx.nodes_material | ||
|  | import lnx.props_traits_props | ||
|  | import lnx.props_traits | ||
|  | import lnx.props_lod | ||
|  | import lnx.props_action | ||
|  | import lnx.props_tilesheet | ||
|  | import lnx.props_exporter | ||
|  | import lnx.props_bake | ||
|  | import lnx.props_renderpath | ||
|  | import lnx.props_properties | ||
|  | import lnx.props_collision_filter_mask | ||
|  | import lnx.props | ||
|  | import lnx.props_ui | ||
|  | import lnx.handlers | ||
|  | import lnx.utils | ||
|  | import lnx.keymap | ||
|  | 
 | ||
|  | reload_started = 0 | ||
|  | 
 | ||
|  | if lnx.is_reload(__name__): | ||
|  |     lnx.log.debug('Reloading Leenkx SDK...') | ||
|  |     reload_started = time.time() | ||
|  | 
 | ||
|  |     # Clear the module cache | ||
|  |     import importlib | ||
|  |     lnx = importlib.reload(lnx)  # type: ignore | ||
|  | 
 | ||
|  |     lnx.nodes_logic = lnx.reload_module(lnx.nodes_logic) | ||
|  |     lnx.nodes_material = lnx.reload_module(lnx.nodes_material) | ||
|  |     lnx.props_traits_props = lnx.reload_module(lnx.props_traits_props) | ||
|  |     lnx.props_traits = lnx.reload_module(lnx.props_traits) | ||
|  |     lnx.props_lod = lnx.reload_module(lnx.props_lod) | ||
|  |     lnx.props_action = lnx.reload_module(lnx.props_action) | ||
|  |     lnx.props_tilesheet = lnx.reload_module(lnx.props_tilesheet) | ||
|  |     lnx.props_exporter = lnx.reload_module(lnx.props_exporter) | ||
|  |     lnx.props_bake = lnx.reload_module(lnx.props_bake) | ||
|  |     lnx.props_renderpath = lnx.reload_module(lnx.props_renderpath) | ||
|  |     lnx.props_properties = lnx.reload_module(lnx.props_properties) | ||
|  |     lnx.props_collision_filter_mask = lnx.reload_module(lnx.props_collision_filter_mask) | ||
|  |     lnx.props = lnx.reload_module(lnx.props) | ||
|  |     lnx.props_ui = lnx.reload_module(lnx.props_ui) | ||
|  |     lnx.handlers = lnx.reload_module(lnx.handlers) | ||
|  |     lnx.utils = lnx.reload_module(lnx.utils) | ||
|  |     lnx.keymap = lnx.reload_module(lnx.keymap) | ||
|  | else: | ||
|  |     lnx.enable_reload(__name__) | ||
|  | 
 | ||
|  | registered = False | ||
|  | 
 | ||
|  | 
 | ||
|  | def register(local_sdk=False): | ||
|  |     global registered | ||
|  |     registered = True | ||
|  |     lnx.utils.register(local_sdk=local_sdk) | ||
|  |     lnx.props_traits_props.register() | ||
|  |     lnx.props_traits.register() | ||
|  |     lnx.props_lod.register() | ||
|  |     lnx.props_action.register() | ||
|  |     lnx.props_tilesheet.register() | ||
|  |     lnx.props_exporter.register() | ||
|  |     lnx.props_bake.register() | ||
|  |     lnx.props_renderpath.register() | ||
|  |     lnx.props_properties.register() | ||
|  |     lnx.props.register() | ||
|  |     lnx.props_ui.register() | ||
|  |     lnx.nodes_logic.register() | ||
|  |     lnx.nodes_material.register() | ||
|  |     lnx.keymap.register() | ||
|  |     lnx.handlers.register() | ||
|  |     lnx.props_collision_filter_mask.register() | ||
|  | 
 | ||
|  |     lnx.handlers.post_register() | ||
|  | 
 | ||
|  |     if reload_started != 0: | ||
|  |         lnx.log.debug(f'Leenkx SDK: Reloading finished in {time.time() - reload_started:.3f}s') | ||
|  | 
 | ||
|  | 
 | ||
|  | def unregister(): | ||
|  |     global registered | ||
|  |     registered = False | ||
|  |     lnx.keymap.unregister() | ||
|  |     lnx.utils.unregister() | ||
|  |     lnx.nodes_material.unregister() | ||
|  |     lnx.nodes_logic.unregister() | ||
|  |     lnx.handlers.unregister() | ||
|  |     lnx.props_ui.unregister() | ||
|  |     lnx.props.unregister() | ||
|  |     lnx.props_traits_props.unregister() | ||
|  |     lnx.props_traits.unregister() | ||
|  |     lnx.props_action.unregister() | ||
|  |     lnx.props_lod.unregister() | ||
|  |     lnx.props_tilesheet.unregister() | ||
|  |     lnx.props_exporter.unregister() | ||
|  |     lnx.props_bake.unregister() | ||
|  |     lnx.props_renderpath.unregister() | ||
|  |     lnx.props_properties.unregister() | ||
|  |     lnx.props_collision_filter_mask.unregister() |