import bpy from pathlib import Path class FangeProject: """ This object is a model to give all Unity project path. """ def __init__(self): self._pref = bpy.context.preferences.addons[__name__.split(".")[0]].preferences self._project_path = Path(self._pref.project_path) self._subdir_path = Path(self._pref.subdir_graph) self._building_path = Path(self._pref.subdir_buildings) self._props_path = Path(self._pref.subdir_props) self._characters_path = Path(self._pref.subdir_characters) @property def buildings(self): """Get the buildings project path, on absolute""" return self._project_path.joinpath(self._subdir_path, self._building_path) @property def props(self): return self._project_path.joinpath(self._subdir_path, self._props_path) @property def characters(self): return self._project_path.joinpath(self._subdir_path, self._characters_path) class Outline: """ Model about the Outline config. """ def __init__(self): self._collections = { 'Placeholder': ['COLOR_01'], 'Icon': ['COLOR_04'], 'Game Object': ['COLOR_05'] } @property def placeholder(self): return 'Placeholder' @property def icon(self): return 'Icon' @property def game(self): return 'Game Object'