blob: da57085b7cf3f3dd3dc4235ee60629d146ca86b5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
# To load stuff that assumes a Blender scene is already loaded
# I need to wait for the BLEND file of the template to load and
# then add the functions and stuff I want after said file loads.
# The use of "bpy.app.handlers" and "persistent" help in this case
# for some reason I don't undertand yet >:] (but meh, it works)
# References:
# https://s-nako.work/2020/09/blender-error-attributeerror-_restrictcontext-object-has-no-attribute-view_layer/
# https://web.archive.org/web/20210925181415/https://blenderbrew.com/custom-application-templates-in-blender/
import bpy
from bpy.app.handlers import persistent
# define function that sets all the blenxy stuff:
# galaxy unit, custom collada exporter/importer
# custom CSV animation file (for BCK) exporter/importer
@persistent
def set_blenxy_env(dummy): # "dummy" is a variable that is somehow
# passed to set_blenxy_env when called by
# bpy.app.handlers.load_post.append
from . import required_modules # install needed modules for bundled python (awful)
from . import basic_settings # settings blenxy has
from . import collada_superbmd_import # custom importer for SuperBMD collada files
from . import collada_superbmd_export # custom exporter for SuperBMD collada files
from . import obj_kcl_export # custom exporter for OBJ files (Collision)
from . import obj_neokclcreate_import # custom importer for OBJ files (Colllision, NeoKCLCreate)
from . import bck_import # custom importer for SMG BCK files
from . import bck_export # custom exporter for SMG BCK files
# more scripts can be added here
# ...
# register/unregister stuff
# for set_blenxy_env function
def register():
print("\nWelcome to Blenxy!\n")
print("Setting environment...")
bpy.app.handlers.load_post.append(set_blenxy_env)
def unregister():
print("See you later!")
bpy.app.handlers.load_post.remove(set_blenxy_env)
if __name__ == "__main__":
register()
|