armory/blender/start.py

97 lines
2.9 KiB
Python
Raw Normal View History

2021-08-04 22:49:38 +02:00
import time
import arm
import arm.log
2017-03-15 12:30:14 +01:00
import arm.nodes_logic
2020-08-19 17:20:41 +02:00
import arm.nodes_material
2017-07-24 02:27:22 +02:00
import arm.props_traits_props
2017-03-15 12:30:14 +01:00
import arm.props_traits
import arm.props_lod
2017-09-21 18:30:02 +02:00
import arm.props_tilesheet
2017-08-21 15:36:21 +02:00
import arm.props_exporter
2018-03-05 00:24:04 +01:00
import arm.props_bake
2017-08-21 20:16:06 +02:00
import arm.props_renderpath
import arm.props_properties
2019-09-05 22:21:31 +02:00
import arm.props_collision_filter_mask
2017-03-15 12:30:14 +01:00
import arm.props
import arm.props_ui
import arm.handlers
import arm.utils
import arm.keymap
2016-06-30 13:22:05 +02:00
2021-08-04 22:49:38 +02:00
reload_started = 0
if arm.is_reload(__name__):
2021-08-04 22:49:38 +02:00
arm.log.debug('Reloading Armory SDK...')
reload_started = time.time()
# Clear the module cache
import importlib
arm = importlib.reload(arm) # type: ignore
arm.nodes_logic = arm.reload_module(arm.nodes_logic)
arm.nodes_material = arm.reload_module(arm.nodes_material)
arm.props_traits_props = arm.reload_module(arm.props_traits_props)
arm.props_traits = arm.reload_module(arm.props_traits)
arm.props_lod = arm.reload_module(arm.props_lod)
arm.props_tilesheet = arm.reload_module(arm.props_tilesheet)
arm.props_exporter = arm.reload_module(arm.props_exporter)
arm.props_bake = arm.reload_module(arm.props_bake)
arm.props_renderpath = arm.reload_module(arm.props_renderpath)
arm.props_properties = arm.reload_module(arm.props_properties)
arm.props_collision_filter_mask = arm.reload_module(arm.props_collision_filter_mask)
arm.props = arm.reload_module(arm.props)
arm.props_ui = arm.reload_module(arm.props_ui)
arm.handlers = arm.reload_module(arm.handlers)
arm.utils = arm.reload_module(arm.utils)
arm.keymap = arm.reload_module(arm.keymap)
else:
arm.enable_reload(__name__)
2021-08-04 22:49:38 +02:00
2017-01-28 20:00:04 +01:00
registered = False
2021-08-04 22:49:38 +02:00
2018-08-16 23:07:50 +02:00
def register(local_sdk=False):
2017-01-28 20:00:04 +01:00
global registered
registered = True
2018-08-16 23:07:50 +02:00
arm.utils.register(local_sdk=local_sdk)
2017-08-21 12:17:55 +02:00
arm.props_traits_props.register()
arm.props_traits.register()
arm.props_lod.register()
2017-09-21 18:30:02 +02:00
arm.props_tilesheet.register()
2017-08-21 15:36:21 +02:00
arm.props_exporter.register()
2018-03-05 00:24:04 +01:00
arm.props_bake.register()
2017-08-21 20:16:06 +02:00
arm.props_renderpath.register()
arm.props_properties.register()
2017-03-15 12:30:14 +01:00
arm.props.register()
arm.props_ui.register()
arm.nodes_logic.register()
2020-08-19 17:20:41 +02:00
arm.nodes_material.register()
2017-03-15 12:30:14 +01:00
arm.keymap.register()
2017-04-20 00:13:43 +02:00
arm.handlers.register()
2019-09-05 22:21:31 +02:00
arm.props_collision_filter_mask.register()
2016-07-10 00:51:39 +02:00
2021-08-04 22:49:38 +02:00
if reload_started != 0:
arm.log.debug(f'Armory SDK: Reloading finished in {time.time() - reload_started:.3f}s')
2016-06-30 13:22:05 +02:00
def unregister():
2017-01-28 20:00:04 +01:00
global registered
registered = False
2017-03-15 12:30:14 +01:00
arm.keymap.unregister()
arm.utils.unregister()
2020-08-19 17:20:41 +02:00
arm.nodes_material.unregister()
2017-03-15 12:30:14 +01:00
arm.nodes_logic.unregister()
2017-08-21 12:17:55 +02:00
arm.handlers.unregister()
arm.props_ui.unregister()
arm.props.unregister()
2017-07-24 02:27:22 +02:00
arm.props_traits_props.unregister()
2017-03-15 12:30:14 +01:00
arm.props_traits.unregister()
arm.props_lod.unregister()
2017-09-21 18:30:02 +02:00
arm.props_tilesheet.unregister()
2017-08-21 15:36:21 +02:00
arm.props_exporter.unregister()
2018-03-05 00:24:04 +01:00
arm.props_bake.unregister()
2017-08-21 20:16:06 +02:00
arm.props_renderpath.unregister()
arm.props_properties.unregister()
2019-09-05 22:21:31 +02:00
arm.props_collision_filter_mask.unregister()