From 6e4b1b37da5c807ffe4b0931635bc8e661ca48c7 Mon Sep 17 00:00:00 2001 From: yyc12345 Date: Fri, 27 Oct 2023 11:51:12 +0800 Subject: [PATCH] finish virtools groups --- bbp_ng/PROP_ballance_element.py | 29 +- bbp_ng/PROP_virtools_group.py | 359 +++++++++++++++++++- bbp_ng/PROP_virtools_material.py | 38 ++- bbp_ng/__init__.py | 4 +- bbp_ng/icons/Empty.png | Bin 0 -> 785 bytes bbp_ng/icons/element/PC_TwoFlames.png | Bin 0 -> 663 bytes bbp_ng/icons/element/PE_Balloon.png | Bin 0 -> 745 bytes bbp_ng/icons/element/PR_Resetpoint.png | Bin 0 -> 945 bytes bbp_ng/icons/element/PS_FourFlames.png | Bin 0 -> 818 bytes bbp_ng/icons/element/P_Ball_Paper.png | Bin 0 -> 2325 bytes bbp_ng/icons/element/P_Ball_Stone.png | Bin 0 -> 2664 bytes bbp_ng/icons/element/P_Ball_Wood.png | Bin 0 -> 2633 bytes bbp_ng/icons/element/P_Box.png | Bin 0 -> 984 bytes bbp_ng/icons/element/P_Dome.png | Bin 0 -> 611 bytes bbp_ng/icons/element/P_Extra_Life.png | Bin 0 -> 1168 bytes bbp_ng/icons/element/P_Extra_Point.png | Bin 0 -> 1372 bytes bbp_ng/icons/element/P_Modul_01.png | Bin 0 -> 1099 bytes bbp_ng/icons/element/P_Modul_03.png | Bin 0 -> 471 bytes bbp_ng/icons/element/P_Modul_08.png | Bin 0 -> 1104 bytes bbp_ng/icons/element/P_Modul_17.png | Bin 0 -> 494 bytes bbp_ng/icons/element/P_Modul_18.png | Bin 0 -> 360 bytes bbp_ng/icons/element/P_Modul_19.png | Bin 0 -> 992 bytes bbp_ng/icons/element/P_Modul_25.png | Bin 0 -> 444 bytes bbp_ng/icons/element/P_Modul_26.png | Bin 0 -> 691 bytes bbp_ng/icons/element/P_Modul_29.png | Bin 0 -> 775 bytes bbp_ng/icons/element/P_Modul_30.png | Bin 0 -> 807 bytes bbp_ng/icons/element/P_Modul_34.png | Bin 0 -> 652 bytes bbp_ng/icons/element/P_Modul_37.png | Bin 0 -> 695 bytes bbp_ng/icons/element/P_Modul_41.png | Bin 0 -> 550 bytes bbp_ng/icons/element/P_Trafo_Paper.png | Bin 0 -> 1833 bytes bbp_ng/icons/element/P_Trafo_Stone.png | Bin 0 -> 1942 bytes bbp_ng/icons/element/P_Trafo_Wood.png | Bin 0 -> 1924 bytes bbp_ng/icons/floor/Flat.png | Bin 0 -> 6425 bytes bbp_ng/icons/floor/Normal1x1.png | Bin 0 -> 31693 bytes bbp_ng/icons/floor/NormalBorder.png | Bin 0 -> 6899 bytes bbp_ng/icons/floor/NormalCrossroad.png | Bin 0 -> 28052 bytes bbp_ng/icons/floor/NormalFloor.png | Bin 0 -> 24732 bytes bbp_ng/icons/floor/NormalFloorTerminal.png | Bin 0 -> 16083 bytes bbp_ng/icons/floor/NormalInnerCorner.png | Bin 0 -> 6312 bytes bbp_ng/icons/floor/NormalLConnector.png | Bin 0 -> 30647 bytes bbp_ng/icons/floor/NormalOutterCorner.png | Bin 0 -> 7193 bytes bbp_ng/icons/floor/NormalPlatform.png | Bin 0 -> 58914 bytes bbp_ng/icons/floor/NormalSinkTransition.png | Bin 0 -> 25856 bytes bbp_ng/icons/floor/NormalTConnector.png | Bin 0 -> 22798 bytes bbp_ng/icons/floor/PaperTrafo.png | Bin 0 -> 40166 bytes bbp_ng/icons/floor/RibbonBorder.png | Bin 0 -> 12796 bytes bbp_ng/icons/floor/RibbonOutterCorner.png | Bin 0 -> 14344 bytes bbp_ng/icons/floor/RibbonPlatform.png | Bin 0 -> 110646 bytes bbp_ng/icons/floor/Sink1x1.png | Bin 0 -> 31969 bytes bbp_ng/icons/floor/SinkBorder.png | Bin 0 -> 7006 bytes bbp_ng/icons/floor/SinkCrossroad.png | Bin 0 -> 29012 bytes bbp_ng/icons/floor/SinkFloor.png | Bin 0 -> 25929 bytes bbp_ng/icons/floor/SinkFloorTerminal.png | Bin 0 -> 16078 bytes bbp_ng/icons/floor/SinkInnerCorner.png | Bin 0 -> 6671 bytes bbp_ng/icons/floor/SinkLConnector.png | Bin 0 -> 31198 bytes bbp_ng/icons/floor/SinkOutterCorner.png | Bin 0 -> 7324 bytes bbp_ng/icons/floor/SinkPlatform.png | Bin 0 -> 110646 bytes bbp_ng/icons/floor/SinkTConnector.png | Bin 0 -> 23399 bytes bbp_ng/icons/floor/StoneTrafo.png | Bin 0 -> 39899 bytes bbp_ng/icons/floor/WideCrossroad.png | Bin 0 -> 43932 bytes bbp_ng/icons/floor/WideFloor.png | Bin 0 -> 26067 bytes bbp_ng/icons/floor/WideFloorTerminal.png | Bin 0 -> 20381 bytes bbp_ng/icons/floor/WideLConnector.png | Bin 0 -> 59317 bytes bbp_ng/icons/floor/WideTConnector.png | Bin 0 -> 33246 bytes bbp_ng/icons/floor/WoodTrafo.png | Bin 0 -> 27803 bytes bbp_ng/icons/group/SoundID_01.png | Bin 0 -> 2221 bytes bbp_ng/icons/group/SoundID_02.png | Bin 0 -> 2523 bytes bbp_ng/icons/group/SoundID_03.png | Bin 0 -> 251 bytes bbp_ng/meshes/PC_TwoFlames.bin | Bin 0 -> 4404 bytes bbp_ng/meshes/PE_Balloon.bin | Bin 0 -> 16548 bytes bbp_ng/meshes/PR_Resetpoint.bin | Bin 0 -> 2892 bytes bbp_ng/meshes/PS_FourFlames.bin | Bin 0 -> 7044 bytes bbp_ng/meshes/P_Ball_Paper.bin | Bin 0 -> 1212 bytes bbp_ng/meshes/P_Ball_Stone.bin | Bin 0 -> 1212 bytes bbp_ng/meshes/P_Ball_Wood.bin | Bin 0 -> 1212 bytes bbp_ng/meshes/P_Box.bin | Bin 0 -> 732 bytes bbp_ng/meshes/P_Dome.bin | Bin 0 -> 4452 bytes bbp_ng/meshes/P_Extra_Life.bin | Bin 0 -> 4260 bytes bbp_ng/meshes/P_Extra_Point.bin | Bin 0 -> 6444 bytes bbp_ng/meshes/P_Modul_01.bin | Bin 0 -> 5052 bytes bbp_ng/meshes/P_Modul_03.bin | Bin 0 -> 11364 bytes bbp_ng/meshes/P_Modul_08.bin | Bin 0 -> 3372 bytes bbp_ng/meshes/P_Modul_17.bin | Bin 0 -> 4188 bytes bbp_ng/meshes/P_Modul_18.bin | Bin 0 -> 1884 bytes bbp_ng/meshes/P_Modul_19.bin | Bin 0 -> 6732 bytes bbp_ng/meshes/P_Modul_25.bin | Bin 0 -> 2316 bytes bbp_ng/meshes/P_Modul_26.bin | Bin 0 -> 5244 bytes bbp_ng/meshes/P_Modul_29.bin | Bin 0 -> 5196 bytes bbp_ng/meshes/P_Modul_30.bin | Bin 0 -> 3180 bytes bbp_ng/meshes/P_Modul_34.bin | Bin 0 -> 2892 bytes bbp_ng/meshes/P_Modul_37.bin | Bin 0 -> 4908 bytes bbp_ng/meshes/P_Modul_41.bin | Bin 0 -> 3564 bytes bbp_ng/meshes/P_Trafo_Paper.bin | Bin 0 -> 396 bytes bbp_ng/meshes/P_Trafo_Stone.bin | Bin 0 -> 396 bytes bbp_ng/meshes/P_Trafo_Wood.bin | Bin 0 -> 396 bytes 95 files changed, 396 insertions(+), 34 deletions(-) create mode 100644 bbp_ng/icons/Empty.png create mode 100644 bbp_ng/icons/element/PC_TwoFlames.png create mode 100644 bbp_ng/icons/element/PE_Balloon.png create mode 100644 bbp_ng/icons/element/PR_Resetpoint.png create mode 100644 bbp_ng/icons/element/PS_FourFlames.png create mode 100644 bbp_ng/icons/element/P_Ball_Paper.png create mode 100644 bbp_ng/icons/element/P_Ball_Stone.png create mode 100644 bbp_ng/icons/element/P_Ball_Wood.png create mode 100644 bbp_ng/icons/element/P_Box.png create mode 100644 bbp_ng/icons/element/P_Dome.png create mode 100644 bbp_ng/icons/element/P_Extra_Life.png create mode 100644 bbp_ng/icons/element/P_Extra_Point.png create mode 100644 bbp_ng/icons/element/P_Modul_01.png create mode 100644 bbp_ng/icons/element/P_Modul_03.png create mode 100644 bbp_ng/icons/element/P_Modul_08.png create mode 100644 bbp_ng/icons/element/P_Modul_17.png create mode 100644 bbp_ng/icons/element/P_Modul_18.png create mode 100644 bbp_ng/icons/element/P_Modul_19.png create mode 100644 bbp_ng/icons/element/P_Modul_25.png create mode 100644 bbp_ng/icons/element/P_Modul_26.png create mode 100644 bbp_ng/icons/element/P_Modul_29.png create mode 100644 bbp_ng/icons/element/P_Modul_30.png create mode 100644 bbp_ng/icons/element/P_Modul_34.png create mode 100644 bbp_ng/icons/element/P_Modul_37.png create mode 100644 bbp_ng/icons/element/P_Modul_41.png create mode 100644 bbp_ng/icons/element/P_Trafo_Paper.png create mode 100644 bbp_ng/icons/element/P_Trafo_Stone.png create mode 100644 bbp_ng/icons/element/P_Trafo_Wood.png create mode 100644 bbp_ng/icons/floor/Flat.png create mode 100644 bbp_ng/icons/floor/Normal1x1.png create mode 100644 bbp_ng/icons/floor/NormalBorder.png create mode 100644 bbp_ng/icons/floor/NormalCrossroad.png create mode 100644 bbp_ng/icons/floor/NormalFloor.png create mode 100644 bbp_ng/icons/floor/NormalFloorTerminal.png create mode 100644 bbp_ng/icons/floor/NormalInnerCorner.png create mode 100644 bbp_ng/icons/floor/NormalLConnector.png create mode 100644 bbp_ng/icons/floor/NormalOutterCorner.png create mode 100644 bbp_ng/icons/floor/NormalPlatform.png create mode 100644 bbp_ng/icons/floor/NormalSinkTransition.png create mode 100644 bbp_ng/icons/floor/NormalTConnector.png create mode 100644 bbp_ng/icons/floor/PaperTrafo.png create mode 100644 bbp_ng/icons/floor/RibbonBorder.png create mode 100644 bbp_ng/icons/floor/RibbonOutterCorner.png create mode 100644 bbp_ng/icons/floor/RibbonPlatform.png create mode 100644 bbp_ng/icons/floor/Sink1x1.png create mode 100644 bbp_ng/icons/floor/SinkBorder.png create mode 100644 bbp_ng/icons/floor/SinkCrossroad.png create mode 100644 bbp_ng/icons/floor/SinkFloor.png create mode 100644 bbp_ng/icons/floor/SinkFloorTerminal.png create mode 100644 bbp_ng/icons/floor/SinkInnerCorner.png create mode 100644 bbp_ng/icons/floor/SinkLConnector.png create mode 100644 bbp_ng/icons/floor/SinkOutterCorner.png create mode 100644 bbp_ng/icons/floor/SinkPlatform.png create mode 100644 bbp_ng/icons/floor/SinkTConnector.png create mode 100644 bbp_ng/icons/floor/StoneTrafo.png create mode 100644 bbp_ng/icons/floor/WideCrossroad.png create mode 100644 bbp_ng/icons/floor/WideFloor.png create mode 100644 bbp_ng/icons/floor/WideFloorTerminal.png create mode 100644 bbp_ng/icons/floor/WideLConnector.png create mode 100644 bbp_ng/icons/floor/WideTConnector.png create mode 100644 bbp_ng/icons/floor/WoodTrafo.png create mode 100644 bbp_ng/icons/group/SoundID_01.png create mode 100644 bbp_ng/icons/group/SoundID_02.png create mode 100644 bbp_ng/icons/group/SoundID_03.png create mode 100644 bbp_ng/meshes/PC_TwoFlames.bin create mode 100644 bbp_ng/meshes/PE_Balloon.bin create mode 100644 bbp_ng/meshes/PR_Resetpoint.bin create mode 100644 bbp_ng/meshes/PS_FourFlames.bin create mode 100644 bbp_ng/meshes/P_Ball_Paper.bin create mode 100644 bbp_ng/meshes/P_Ball_Stone.bin create mode 100644 bbp_ng/meshes/P_Ball_Wood.bin create mode 100644 bbp_ng/meshes/P_Box.bin create mode 100644 bbp_ng/meshes/P_Dome.bin create mode 100644 bbp_ng/meshes/P_Extra_Life.bin create mode 100644 bbp_ng/meshes/P_Extra_Point.bin create mode 100644 bbp_ng/meshes/P_Modul_01.bin create mode 100644 bbp_ng/meshes/P_Modul_03.bin create mode 100644 bbp_ng/meshes/P_Modul_08.bin create mode 100644 bbp_ng/meshes/P_Modul_17.bin create mode 100644 bbp_ng/meshes/P_Modul_18.bin create mode 100644 bbp_ng/meshes/P_Modul_19.bin create mode 100644 bbp_ng/meshes/P_Modul_25.bin create mode 100644 bbp_ng/meshes/P_Modul_26.bin create mode 100644 bbp_ng/meshes/P_Modul_29.bin create mode 100644 bbp_ng/meshes/P_Modul_30.bin create mode 100644 bbp_ng/meshes/P_Modul_34.bin create mode 100644 bbp_ng/meshes/P_Modul_37.bin create mode 100644 bbp_ng/meshes/P_Modul_41.bin create mode 100644 bbp_ng/meshes/P_Trafo_Paper.bin create mode 100644 bbp_ng/meshes/P_Trafo_Stone.bin create mode 100644 bbp_ng/meshes/P_Trafo_Wood.bin diff --git a/bbp_ng/PROP_ballance_element.py b/bbp_ng/PROP_ballance_element.py index 990ac25..2d9e525 100644 --- a/bbp_ng/PROP_ballance_element.py +++ b/bbp_ng/PROP_ballance_element.py @@ -81,8 +81,8 @@ class BBP_PG_ballance_element(bpy.types.PropertyGroup): type = bpy.types.Mesh ) -def get_ballance_elements() -> bpy.types.CollectionProperty: - return bpy.context.scene.ballance_elements +def get_ballance_elements(scene: bpy.types.Scene) -> bpy.types.CollectionProperty: + return scene.ballance_elements #endregion @@ -151,9 +151,7 @@ def _load_element(mesh: bpy.types.Mesh, element_id: int) -> None: v: UTIL_virtools_types.VxVector2 = UTIL_virtools_types.VxVector2() yield v mesh_part.mVertexUV = vuv_iterator() - def mtl_iterator() -> typing.Iterator[bpy.types.Material]: - pass - mesh_part.mMaterial = mtl_iterator() + mesh_part.mMaterial = iter(tuple()) def face_iterator() -> typing.Iterator[UTIL_blender_mesh.FaceData]: # create face data with 3 placeholder f: UTIL_blender_mesh.FaceData = UTIL_blender_mesh.FaceData([UTIL_blender_mesh.FaceVertexData() for i in range(3)]) @@ -191,13 +189,14 @@ class BallanceElementsHelper(): This class should only have 1 instance at the same time. This class support `with` syntax to achieve this. This class frequently used in importing stage to create element placeholder. """ - __mSingletonMutex: typing.ClassVar[bool] = False __mIsValid: bool + __mAssocScene: bpy.types.Scene __mElementMap: dict[int, bpy.types.Mesh] - def __init__(self): + def __init__(self, assoc: bpy.types.Scene): self.__mElementMap = {} + self.__mAssocScene = assoc # check singleton if BallanceElementsHelper.__mSingletonMutex: @@ -223,7 +222,7 @@ class BallanceElementsHelper(): # write to ballance elements property and reset validation self.__write_to_ballance_elements() self.__mIsValid = False - self.__mSingletonMutex = False + BallanceElementsHelper.__mSingletonMutex = False def get_element(self, element_id: int) -> bpy.types.Mesh: if not self.is_valid(): @@ -245,7 +244,7 @@ class BallanceElementsHelper(): return new_mesh def __write_to_ballance_elements(self) -> None: - elements: bpy.types.CollectionProperty = get_ballance_elements() + elements: bpy.types.CollectionProperty = get_ballance_elements(self.__mAssocScene) elements.clear() for eleid, elemesh in self.__mElementMap.items(): @@ -258,7 +257,7 @@ class BallanceElementsHelper(): item.mesh_ptr = elemesh def __read_from_ballance_element(self) -> None: - elements: bpy.types.CollectionProperty = get_ballance_elements() + elements: bpy.types.CollectionProperty = get_ballance_elements(self.__mAssocScene) self.__mElementMap.clear() item: BBP_PG_ballance_element @@ -271,9 +270,9 @@ class BallanceElementsHelper(): # add into map self.__mElementMap[mesh_id] = item.mesh_ptr -def reset_ballance_elements() -> None: +def reset_ballance_elements(scene: bpy.types.Scene) -> None: invalid_idx: list[int] = [] - elements: bpy.types.CollectionProperty = get_ballance_elements() + elements: bpy.types.CollectionProperty = get_ballance_elements(scene) # re-load all elements index: int = 0 @@ -302,8 +301,8 @@ def reset_ballance_elements() -> None: class BBP_UL_ballance_elements(bpy.types.UIList): def draw_item(self, context, layout: bpy.types.UILayout, data, item: BBP_PG_ballance_element, icon, active_data, active_propname): if item.element_name != "" and item.mesh_ptr is not None: - layout.label(text = item.element_name) - layout.label(text = item.mesh_ptr, icon = 'MESH_DATA') + layout.label(text = item.element_name, translate = False) + layout.label(text = item.mesh_ptr, translate = False, icon = 'MESH_DATA') class BBP_OT_reset_ballance_elements(bpy.types.Operator): """Reset all Meshes of Loaded Ballance Elements to Original Geometry.""" @@ -316,7 +315,7 @@ class BBP_OT_reset_ballance_elements(bpy.types.Operator): return context.scene is not None def execute(self, context): - reset_ballance_elements() + reset_ballance_elements(context.scene) return {'FINISHED'} class BBP_PT_ballance_elements(bpy.types.Panel): diff --git a/bbp_ng/PROP_virtools_group.py b/bbp_ng/PROP_virtools_group.py index d0f3e23..adeea49 100644 --- a/bbp_ng/PROP_virtools_group.py +++ b/bbp_ng/PROP_virtools_group.py @@ -1,8 +1,365 @@ import bpy +import typing from . import UTIL_functions +#region Virtools Groups Define & Help Class + class BBP_PG_virtools_group(bpy.types.PropertyGroup): group_name: bpy.props.StringProperty( - name = "Group Name", + name = "Group Name", default = "" ) + +def get_virtools_groups(obj: bpy.types.Object) -> bpy.types.CollectionProperty: + return obj.virtools_groups + +def get_active_virtools_groups(obj: bpy.types.Object) -> int: + return obj.active_virtools_groups + +def set_active_virtools_groups(obj: bpy.types.Object, val: int) -> None: + obj.active_virtools_groups = val + +class VirtoolsGroupsHelper(): + """ + A helper for object's Virtools groups adding, removal and checking. + + All Virtools group operations should be done by this class. + Do NOT manipulate object's Virtools group properties directly. + """ + __mSingletonMutex: typing.ClassVar[bool] = False + __mIsValid: bool + __mAssocObj: bpy.types.Object + __mGroupsSet: set[str] + + def __init__(self, assoc: bpy.types.Object): + self.__mGroupsSet = set() + self.__mAssocObj = assoc + + # check singleton + if VirtoolsGroupsHelper.__mSingletonMutex: + self.__mIsValid = False + raise UTIL_functions.BBPException('VirtoolsGroupsHelper is mutex.') + + # set validation and read ballance elements property + VirtoolsGroupsHelper.__mSingletonMutex = True + self.__mIsValid = True + self.__read_from_virtools_groups() + + def is_valid(self) -> bool: + return self.__mIsValid + + def __enter__(self): + return self + + def __exit__(self, exc_type, exc_value, traceback): + self.dispose() + + def dispose(self) -> None: + if self.is_valid(): + # write to ballance elements property and reset validation + self.__write_to_virtools_groups() + self.__mIsValid = False + VirtoolsGroupsHelper.__mSingletonMutex = False + + def __check_valid(self) -> None: + if not self.is_valid(): + raise UTIL_functions.BBPException('calling invalid VirtoolsGroupsHelper') + + def add_group(self, gname: str) -> None: + self.__check_valid() + self.__mGroupsSet.add(gname) + + def add_groups(self, gnames: typing.Iterable[str]) -> None: + self.__check_valid() + self.__mGroupsSet.update(gnames) + + def remove_group(self, gname: str) -> None: + self.__check_valid() + self.__mGroupsSet.discard(gname) + + def remove_groups(self, gnames: typing.Iterable[str]) -> None: + self.__check_valid() + for gname in gnames: + self.__mGroupsSet.discard(gname) + + def contain_group(self, gname: str) -> bool: + self.__check_valid() + return gname in self.__mGroupsSet + + def contain_groups(self, gnames: typing.Iterable[str]) -> bool: + """ + Check existing intersection between group names and given collection. + + In other words, check whether group name of given paramter is in group names with OR operator. + + @param gnames[in] Iterable group names to check. + @return return True if the length of the intersection between group names and given group names is not zero. + """ + self.__check_valid() + for gname in gnames: + if gname in self.__mGroupsSet: + return True + return False + + def clear_all_groups(self): + self.__check_valid() + self.__mGroupsSet.clear() + + def __write_to_virtools_groups(self) -> None: + groups: bpy.types.CollectionProperty = get_virtools_groups(self.__mAssocObj) + sel: int = get_active_virtools_groups(self.__mAssocObj) + groups.clear() + + for gname in self.__mGroupsSet: + item: BBP_PG_virtools_group = groups.add() + item.group_name = gname + + # restore selection if necessary + if sel >= len(self.__mGroupsSet): + sel = len(self.__mGroupsSet) - 1 + if sel < 0: + sel = 0 + set_active_virtools_groups(self.__mAssocObj, sel) + + def __read_from_virtools_groups(self) -> None: + groups: bpy.types.CollectionProperty = get_virtools_groups(self.__mAssocObj) + self.__mGroupsSet.clear() + + item: BBP_PG_virtools_group + for item in groups: + self.__mGroupsSet.add(item.group_name) + +#endregion + +#region Preset Group Names + +_g_VirtoolsGroupsPreset: tuple[str] = ( + "Sector_01", + "Sector_02", + "Sector_03", + "Sector_04", + "Sector_05", + "Sector_06", + "Sector_07", + "Sector_08", + + "P_Extra_Life", + "P_Extra_Point", + "P_Trafo_Paper", + "P_Trafo_Stone", + "P_Trafo_Wood", + "P_Ball_Paper", + "P_Ball_Stone", + "P_Ball_Wood", + "P_Box", + "P_Dome", + "P_Modul_01", + "P_Modul_03", + "P_Modul_08", + "P_Modul_17", + "P_Modul_18", + "P_Modul_19", + "P_Modul_25", + "P_Modul_26", + "P_Modul_29", + "P_Modul_30", + "P_Modul_34", + "P_Modul_37", + "P_Modul_41", + + "PS_Levelstart", + "PE_Levelende", + "PC_Checkpoints", + "PR_Resetpoints", + + "Sound_HitID_01", + "Sound_RollID_01", + "Sound_HitID_02", + "Sound_RollID_02", + "Sound_HitID_03", + "Sound_RollID_03", + + "DepthTestCubes", + + "Phys_Floors", + "Phys_FloorRails", + "Phys_FloorStopper", + + "Shadow" +) + +class SharedGroupNameInputProperties(): + group_name_source: bpy.props.EnumProperty( + name = "Group Name Source", + items = ( + ('DEFINED', "Predefined", "Pre-defined group name."), + ('CUSTOM', "Custom", "User specified group name."), + ), + ) + + preset_group_name: bpy.props.EnumProperty( + name="Group Name", + description="Pick vanilla Ballance group name.", + items=tuple( + # token, display name, descriptions, icon, index + (str(idx), grp, "", "", idx) for idx, grp in enumerate(_g_VirtoolsGroupsPreset) + ), + ) + + custom_group_name: bpy.props.StringProperty( + name = "Custom Group Name", + description = "Input your custom group name.", + default = "", + ) + + def draw_group_name_input(self, layout: bpy.types.UILayout) -> None: + layout.prop(self, 'group_name_source', expand=True) + if (self.group_name_source == 'CUSTOM'): + layout.prop(self, 'custom_group_name') + else: + layout.prop(self, 'preset_group_name') + + def general_get_group_name(self) -> str: + if self.group_name_source == 'CUSTOM': + return self.custom_group_name + else: + return _g_VirtoolsGroupsPreset[int(self.preset_group_name)] + +#endregion + +#region Display Panel and Simple Operator + +class BBP_UL_virtools_groups(bpy.types.UIList): + def draw_item(self, context, layout: bpy.types.UILayout, data, item: BBP_PG_virtools_group, icon, active_data, active_propname): + layout.label(text = item.group_name, translate = False, icon = 'GROUP') + +class BBP_OT_add_virtools_groups(bpy.types.Operator, SharedGroupNameInputProperties): + """Add a Virtools Group for Active Object.""" + bl_idname = "bbp.add_virtools_groups" + bl_label = "Add to Virtools Groups" + bl_options = {'UNDO'} + + @classmethod + def poll(self, context: bpy.types.Context): + return context.object is not None + + def invoke(self, context, event): + wm = context.window_manager + return wm.invoke_props_dialog(self) + + def execute(self, context): + # add group + with VirtoolsGroupsHelper(context.object) as hlp: + hlp.add_group(self.general_get_group_name()) + return {'FINISHED'} + + def draw(self, context): + self.draw_group_name_input(self.layout) + +class BBP_OT_rm_virtools_groups(bpy.types.Operator): + """Remove a Virtools Group for Active Object.""" + bl_idname = "bbp.rm_virtools_groups" + bl_label = "Remove from Virtools Groups" + bl_options = {'UNDO'} + + ## This class is slightly unique. + # Because we need get user selected group name first. + # Then pass it to helper. + + @classmethod + def poll(self, context: bpy.types.Context): + if context.object is None: + return False + + obj = context.object + gp = get_virtools_groups(obj) + active_gp = get_active_virtools_groups(obj) + return active_gp >= 0 and active_gp < len(gp) + + def execute(self, context): + # get selected group name first + obj = context.object + item: BBP_PG_virtools_group = get_virtools_groups(obj)[get_active_virtools_groups(obj)] + gname: str = item.group_name + # then delete it + with VirtoolsGroupsHelper(obj) as hlp: + hlp.remove_group(gname) + + return {'FINISHED'} + +class BBP_OT_clear_virtools_groups(bpy.types.Operator): + """Clear All Virtools Group for Active Object.""" + bl_idname = "bbp.clear_virtools_groups" + bl_label = "Clear Virtools Groups" + bl_options = {'UNDO'} + + @classmethod + def poll(self, context: bpy.types.Context): + return context.object is not None + + def invoke(self, context, event): + wm = context.window_manager + return wm.invoke_confirm(self, event) + + def execute(self, context): + with VirtoolsGroupsHelper(context.object) as hlp: + hlp.clear_all_groups() + return {'FINISHED'} + +class BBP_PT_virtools_groups(bpy.types.Panel): + """Show Virtools Groups Properties.""" + bl_label = "Virtools Groups" + bl_idname = "BBP_PT_virtools_groups" + bl_space_type = 'PROPERTIES' + bl_region_type = 'WINDOW' + bl_context = "object" + + @classmethod + def poll(cls, context): + return context.object is not None + + def draw(self, context): + layout = self.layout + target = bpy.context.active_object + + row = layout.row() + row.template_list( + "BBP_UL_virtools_groups", "", + target, "virtools_groups", + target, "active_virtools_groups", + rows = 6, + maxrows = 6, + ) + + col = row.column(align=True) + col.operator(BBP_OT_add_virtools_groups.bl_idname, icon='ADD', text="") + col.operator(BBP_OT_rm_virtools_groups.bl_idname, icon='REMOVE', text="") + col.separator() + col.operator(BBP_OT_clear_virtools_groups.bl_idname, icon='TRASH', text="") + +#endregion + +def register(): + # register all classes + bpy.utils.register_class(BBP_PG_virtools_group) + bpy.utils.register_class(BBP_UL_virtools_groups) + bpy.utils.register_class(BBP_OT_add_virtools_groups) + bpy.utils.register_class(BBP_OT_rm_virtools_groups) + bpy.utils.register_class(BBP_OT_clear_virtools_groups) + bpy.utils.register_class(BBP_PT_virtools_groups) + + # add into scene metadata + bpy.types.Object.virtools_groups = bpy.props.CollectionProperty(type = BBP_PG_virtools_group) + bpy.types.Object.active_virtools_groups = bpy.props.IntProperty() + +def unregister(): + # del from scene metadata + del bpy.types.Scene.active_virtools_groups + del bpy.types.Scene.virtools_groups + + bpy.utils.unregister_class(BBP_PT_virtools_groups) + bpy.utils.unregister_class(BBP_OT_clear_virtools_groups) + bpy.utils.unregister_class(BBP_OT_rm_virtools_groups) + bpy.utils.unregister_class(BBP_OT_add_virtools_groups) + bpy.utils.unregister_class(BBP_UL_virtools_groups) + bpy.utils.unregister_class(BBP_PG_virtools_group) diff --git a/bbp_ng/PROP_virtools_material.py b/bbp_ng/PROP_virtools_material.py index 722dc65..80cedf5 100644 --- a/bbp_ng/PROP_virtools_material.py +++ b/bbp_ng/PROP_virtools_material.py @@ -77,7 +77,7 @@ g_Annotation_VXCMPFUNC: dict[int, AnnotationData] = { InheritingIntEnum_t = typing.TypeVar('InheritingIntEnum_t', bound = enum.IntEnum) BlenderEnumPropEntry_t = tuple[str, str, str, str | int, int] -def generate_vt_enums_for_bl_enumprop(enum_data: type[InheritingIntEnum_t], anno: dict[int, AnnotationData]) -> tuple[BlenderEnumPropEntry_t, ...]: +def _generate_vt_enums_for_bl_enumprop(enum_data: type[InheritingIntEnum_t], anno: dict[int, AnnotationData]) -> tuple[BlenderEnumPropEntry_t, ...]: # define 2 assist functions def get_display_name(v: int, fallback: str): entry: AnnotationData | None = anno.get(v, None) @@ -273,7 +273,7 @@ class BBP_PG_virtools_material(bpy.types.PropertyGroup): texture_blend_mode: bpy.props.EnumProperty( name = "Texture Blend", description = "Texture blend mode", - items = generate_vt_enums_for_bl_enumprop( + items = _generate_vt_enums_for_bl_enumprop( UTIL_virtools_types.VXTEXTURE_BLENDMODE, g_Annotation_VXTEXTURE_BLENDMODE ), @@ -283,7 +283,7 @@ class BBP_PG_virtools_material(bpy.types.PropertyGroup): texture_min_mode: bpy.props.EnumProperty( name = "Filter Min", description = "Texture filter mode when the texture is minified", - items = generate_vt_enums_for_bl_enumprop( + items = _generate_vt_enums_for_bl_enumprop( UTIL_virtools_types.VXTEXTURE_FILTERMODE, g_Annotation_VXTEXTURE_FILTERMODE ), @@ -293,7 +293,7 @@ class BBP_PG_virtools_material(bpy.types.PropertyGroup): texture_mag_mode: bpy.props.EnumProperty( name = "Filter Mag", description = "Texture filter mode when the texture is magnified", - items = generate_vt_enums_for_bl_enumprop( + items = _generate_vt_enums_for_bl_enumprop( UTIL_virtools_types.VXTEXTURE_FILTERMODE, g_Annotation_VXTEXTURE_FILTERMODE ), @@ -303,7 +303,7 @@ class BBP_PG_virtools_material(bpy.types.PropertyGroup): texture_address_mode: bpy.props.EnumProperty( name = "Address Mode", description = "The address mode controls how the texture coordinates outside the range 0..1", - items = generate_vt_enums_for_bl_enumprop( + items = _generate_vt_enums_for_bl_enumprop( UTIL_virtools_types.VXTEXTURE_ADDRESSMODE, g_Annotation_VXTEXTURE_ADDRESSMODE ), @@ -313,7 +313,7 @@ class BBP_PG_virtools_material(bpy.types.PropertyGroup): source_blend: bpy.props.EnumProperty( name = "Source Blend", description = "Source blend factor", - items = generate_vt_enums_for_bl_enumprop( + items = _generate_vt_enums_for_bl_enumprop( UTIL_virtools_types.VXBLEND_MODE, g_Annotation_VXBLEND_MODE ), @@ -323,7 +323,7 @@ class BBP_PG_virtools_material(bpy.types.PropertyGroup): dest_blend: bpy.props.EnumProperty( name = "Destination Blend", description = "Destination blend factor", - items = generate_vt_enums_for_bl_enumprop( + items = _generate_vt_enums_for_bl_enumprop( UTIL_virtools_types.VXBLEND_MODE, g_Annotation_VXBLEND_MODE ), @@ -333,7 +333,7 @@ class BBP_PG_virtools_material(bpy.types.PropertyGroup): fill_mode: bpy.props.EnumProperty( name = "Fill Mode", description = "Fill mode", - items = generate_vt_enums_for_bl_enumprop( + items = _generate_vt_enums_for_bl_enumprop( UTIL_virtools_types.VXFILL_MODE, g_Annotation_VXFILL_MODE ), @@ -343,7 +343,7 @@ class BBP_PG_virtools_material(bpy.types.PropertyGroup): shade_mode: bpy.props.EnumProperty( name = "Shade Mode", description = "Shade mode", - items = generate_vt_enums_for_bl_enumprop( + items = _generate_vt_enums_for_bl_enumprop( UTIL_virtools_types.VXSHADE_MODE, g_Annotation_VXSHADE_MODE ), @@ -387,7 +387,7 @@ class BBP_PG_virtools_material(bpy.types.PropertyGroup): alpha_func: bpy.props.EnumProperty( name = "Alpha Test Function", description = "Alpha comparision function", - items = generate_vt_enums_for_bl_enumprop( + items = _generate_vt_enums_for_bl_enumprop( UTIL_virtools_types.VXCMPFUNC, g_Annotation_VXCMPFUNC ), @@ -397,7 +397,7 @@ class BBP_PG_virtools_material(bpy.types.PropertyGroup): z_func: bpy.props.EnumProperty( name = "Z Compare Function", description = "Z Comparison function", - items = generate_vt_enums_for_bl_enumprop( + items = _generate_vt_enums_for_bl_enumprop( UTIL_virtools_types.VXCMPFUNC, g_Annotation_VXCMPFUNC ), @@ -612,7 +612,7 @@ def preset_virtools_material(mtl: bpy.types.Material, preset_type: MaterialPrese preset_data: MaterialPresetData = g_MaterialPresets[preset_type.value] set_raw_virtools_material(mtl, preset_data.mData) -def generate_mtl_presets_for_bl_enumprop() -> tuple[BlenderEnumPropEntry_t, ...]: +def _generate_mtl_presets_for_bl_enumprop() -> tuple[BlenderEnumPropEntry_t, ...]: # define 2 assist functions def get_display_name(v: int): entry: MaterialPresetData | None = g_MaterialPresets.get(v, None) @@ -652,7 +652,7 @@ class BBP_OT_preset_virtools_material(bpy.types.Operator): preset_type: bpy.props.EnumProperty( name = "Preset", description = "The preset which you want to apply.", - items = generate_mtl_presets_for_bl_enumprop(), + items = _generate_mtl_presets_for_bl_enumprop(), ) @classmethod @@ -755,8 +755,10 @@ g_BldClasses: tuple[typing.Any, ...] = ( ) def register(): - for cls in g_BldClasses: - bpy.utils.register_class(cls) + bpy.utils.register_class(BBP_PG_virtools_material) + bpy.utils.register_class(BBP_OT_apply_virtools_material) + bpy.utils.register_class(BBP_OT_preset_virtools_material) + bpy.utils.register_class(BBP_PT_virtools_material) # add into material metadata bpy.types.Material.virtools_material = bpy.props.PointerProperty(type = BBP_PG_virtools_material) @@ -765,5 +767,7 @@ def unregister(): # del from material metadata del bpy.types.Material.virtools_material - for cls in g_BldClasses: - bpy.utils.unregister_class(cls) + bpy.utils.unregister_class(BBP_PT_virtools_material) + bpy.utils.unregister_class(BBP_OT_preset_virtools_material) + bpy.utils.unregister_class(BBP_OT_apply_virtools_material) + bpy.utils.unregister_class(BBP_PG_virtools_material) diff --git a/bbp_ng/__init__.py b/bbp_ng/__init__.py index f04470f..148be0b 100644 --- a/bbp_ng/__init__.py +++ b/bbp_ng/__init__.py @@ -23,7 +23,7 @@ if "bpy" in locals(): #endregion -from . import PROP_preferences, PROP_virtools_material, PROP_ballance_element +from . import PROP_preferences, PROP_virtools_material, PROP_ballance_element, PROP_virtools_group from . import OP_IMPORT_bmfile, OP_EXPORT_bmfile, OP_IMPORT_virtools, OP_EXPORT_virtools from . import OP_UV_flatten_uv, OP_UV_rail_uv @@ -87,6 +87,7 @@ def register() -> None: PROP_preferences.register() PROP_virtools_material.register() PROP_ballance_element.register() + PROP_virtools_group.register() OP_IMPORT_bmfile.register() OP_EXPORT_bmfile.register() @@ -125,6 +126,7 @@ def unregister() -> None: OP_EXPORT_bmfile.unregister() OP_IMPORT_bmfile.unregister() + PROP_virtools_group.unregister() PROP_ballance_element.unregister() PROP_virtools_material.unregister() PROP_preferences.unregister() diff --git a/bbp_ng/icons/Empty.png b/bbp_ng/icons/Empty.png new file mode 100644 index 0000000000000000000000000000000000000000..285ac3073c986ed3df671fa1ca4d8441f33b1b34 GIT binary patch literal 785 zcmV+s1Md8ZP)2!K_MG5EWfIULA5q}XAguH&EkwLT&Pn|0YVK^BK(Hj_7 zLL40o1|px&3-tY$>i7FaI-O?!wqY12oM6iR?awHg!6A85McL)T@}g#m<%z#U9T1i0d@=h*Z8c_XqXQ8d_Hz< zA@`+S0Zx`cW#bzTC=?1}IHW;4S3DkP;eJ)JBL|j=VD_`6AY86Dt&hcGw11?6^SNsW z0RM{oQ;Xn{NQBx~53B&dUqJjEKf7+XJLAZi&*9vPKR7AC?GoJW^?IUOt(uHrFev75 z_MLYEUu6kSRw@;f;q`j0d&D=)zIR{+!2a75rvuXZXf$f_06*gt?$&`d8-UhXK&Q}M zW8uP2%V9(|AG#KFlL+c-OA#O4XzWW4inz2dLOLRVezDAcg!Ws6@~3?fLpuqeK7`h+ zCm_q|XairtbDha(ZN-3JC!E`_Jbn?@YPIBV!4n<0o6qpF0-!Y^Hw8RnQYw`)&wsq< z63h=D+79SC#skNF#CXp>z<*Q{+G0r1ehDQ6K%TdF80Fr-6YhryI4lfvPPqk+-x?5UCs%o z(P(h>dY#90{9wV|3IN%DfMg8DM-GSMaW0o*VysXo@X+@H!?%ue7xqRCppYiWlq*&u>UZC=uTiHWV2ZjVpmo55zf-Or(mzw zW4!Dk+`!Sr~x5+wOlTLh2y=>nG4D=3trPKKvz^~2DIC4m1Y9X208~@FaBm0Fb82& x)TiM)?3a-DkZ1pG8vb*XmZ8Of#lS;g;5QF}W+-WlX#DA%(4Q&H1GFH%z-+{#MXaW~;@02#2Z~H$(sP0tqUq$`xSE9r4&Ef+`R;d4 z&OMQkquu8UD2hVBpMrk?kKi@U4vD#w6Ua^_u-R-TZ8jSTt`iIbEXCLP9+fxD?$@+NQ@~b5IzIH1b?mpVa1+PjB7oK zK8B@lXi1Smp@7Y(dZW?!cmuXxuf_3rERIGa5!Yz7TJ61tqmpg`JSz}!{eJ&`Fvgiai5aOBum2* zW&zlY<#L(Z&wM`ts1V8JayJf#wM_%@N$`bO?w=-ZPf!8U*Mk zpN`vp>pp66deBmF=k=m8O$&~W@rn$QWcvKgo0 z6+nPsx7$xW9?unQ{zBUvfz4*~OD2<%XpNQ4W;d-?>nm=)#qMyzJvAZCn9GU*ylNW6yfUc;nQzYS=(#(N;_9SesZW2pidxc_z2Umx=2vn;@B zhBW+9z_9|f9x*)M{^e@J5K_9`uIji3`*p}Eu=JNqr{*&GAz bLk0c;(T~{cmtr1500000NkvXXu0mjf0a{u# literal 0 HcmV?d00001 diff --git a/bbp_ng/icons/element/PR_Resetpoint.png b/bbp_ng/icons/element/PR_Resetpoint.png new file mode 100644 index 0000000000000000000000000000000000000000..ad0ef4f1974146a422188c341aac6cd700720b12 GIT binary patch literal 945 zcmV;i15W&jP)#wBXmmwcAiBk(HGd*=n`!6?!~83nR}k+W|Vp>%^IPp8%Y^xjyQTPkAS0V92Q zJO;1;IT#V9Xcpboh+0&fTPV=U{Vgpm zO>Vb4BO=4J_|-m8QbsO=AfR-1vU6@eyk4)=*49=)8@^7-(g$e+ts7YX;P?BN(6m_j zW57Om|D1hbt^47n4~)_{xWBQnQ5On@^tj{e&g9pyx3{-|+$*vyvvBWjVVo&>2suLA z00|2^+!VfyIiw|r!sI`I`fq?@<@3~^{2$QzN5oJ(1^)gYk+wKhrK%D5k0S6LpwoNK Tli3sO00000NkvXXu0mjfo$I<1 literal 0 HcmV?d00001 diff --git a/bbp_ng/icons/element/PS_FourFlames.png b/bbp_ng/icons/element/PS_FourFlames.png new file mode 100644 index 0000000000000000000000000000000000000000..fa39256e1b1f8a1c2f4e06b621afc6899e3c9574 GIT binary patch literal 818 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 literal 0 HcmV?d00001 diff --git a/bbp_ng/icons/element/P_Ball_Stone.png b/bbp_ng/icons/element/P_Ball_Stone.png new file mode 100644 index 0000000000000000000000000000000000000000..b81e83ef22f75da94b05fd912f98c50f3da5dc65 GIT binary patch literal 2664 zcmV-u3YYbXP)M&ytvI$5 zoY?EVUuR}_XE^_)iITRI(v4QT*_rvj^PTT}=ld+-bG*)XDFj%(YNn=j;?d_Lz`mgzc<o=Y89%gz_z>m)UbB# zI%G%3F*G!Sa43SgD>Em@Hg4MbX)*pQfDJ^X>alkYVPcG#yHoof@4)USo@Pldy`CN0yys33 zcL5NzKk(oal{XI`#8CpUtS)TQ9ncikScR%EaI+3Aps@r2mc)in_QPto;ge*7fS0vp z+a5dJu7hAO1VY7*M|Tm#9-O*#Dzkm__S`KH@||ebk9=XZR9bc4JMk6|0OE-he426d zK*{kk>M}#|7T?>piCVou%3V18%_g8ux9vUK={Q))^B$I`Qfc6w_l_dBy6k2LH(t9l z=4}8ME}lIZiRkLful!oFY|E>wWz}E=fuQR5p3yXo?E09dL_LVGKA2XELD~f6z;#>( zCP2RZECXutDq+lSVPECLC&Rq<=`sS+xBkRYu{OK=$K)qJ=RPOU@ zs8(wHZZe(^#bSl+X5XZpVr#KHs^Uk0rRk7ri6!WCI_MHymt_$3F!T^5(dJiPC!pn( z0{;BhKVswP_>Kby4x|MLkAabadk)v?RZN~Zie|F~NgUu<%$W7H+aJ~u6rxUbOHkN? ziA2&Xg`$PXLYp8uJWWNT(S+ZxpkbOIqx6az8E~M7LkO{x4j%dk%T{%VhS$9ynWO4{(`XPcnf*z5rbh(~Kgp%r-(4r9?4`Aff~4 zj0gn-Ua1sC_1Ip{6=+T&q(f=UFI1qD+DMSca7MrsEEar%-Cj+yPN@eeoFZFQjP&b1mg0rAls`(%`_2@$6-Xm2vajcRK1x#Pjrld zIyF_RtRk5(pb}iuwE0ZK6Ktk0vrndzJyR+d-F3sm9_0bHS|AWakoDCK9erzhFu>tb zw;T$N^`zKB1R^$eP2FvI|IEs)u$?cN`p83&-`L zQmeX|box12mVKI^4+V%mn;m6l8mS8+l}hmDew3MIoRkjsr6|NOY|&#pP=IMuoWWp_ zbTYH12_FS)n(P8vKrqCPF2 zB1Vh>WG32T8)?Y&_HiCu$C}<0)^8XkjS2%Q%(9Alqk$3ux-t(<#L#GUP_CJtOZH_9 zBvNUD3Q&|$veaaESh%sY{Tx&Vx{^Y@tnivlUuf_Q8%8XK@$9|m zNvDxyIRxtyJ0|veM%3+e+)SdEsG{s!&7)HdM6gm6ViB#a(Cb|<1JT#AU*-g?KvILS z*dggmh9wEmz8j=Bh@PGvNIa)pDWR_~?b&se4%;y67#LiO4MXd_n74hP*{rv>J-WjS zAVd^kYsvKS{&b81eb8x83D!-bsKUHvwOVlaw4%|7C^FIO3awkrfilN+w{2ogy2rDU zVyQ@@i?Ne(o;V$P&G@~WS#CPmEi2CDSLXV;PIV;}c@7O9+pNNyTdgMBvd%1Rc!9o;hgsr7=n&la^#ouGz6cl4v9FgQ;T3o!!`*hg!1ks9xd=ViIqc%$< zv#kAW=~OC-Z@%yyEM32LeCVF_J8m-|zGOFU-p&W@AHDc<*Q9p~YE9ay==ly)5hfDm z(%GRST4YIdh($Vu2I?$Fm*u$`OywBnEa3CCTAf0yQt>{ob)S3o1($zA*tde;1wi~~ zarN3jDxQ?S^|i0l1>?-92Zcfzs?Sez(vakCm`uh+58rf5X4a;StDJ^OwpWk_mQJS- zC3|DpEW0C3o2Fax-rk-*0*gu)FI*b%TOhL*#Si5Pz>;fT3oh@0dHc%+#$xN@O z7mGbFai+A`s$y0D_BXyq&+nDy=4TI&jgCKYXYjj3_|Xdoj~>iy8Grby&OLGR)KQ#0 z|2_v#02eRKavO>vO*eB0rcHHsy`7NT4Kp`bx)vv7CNqF%_I%a*!({5*^x(wA#L7ow zd@6ujH-B*M)Zy{$=A9IeTPhc%3p3L=ae9)2#DUr1pyKANa6uLQG&+*SrtJNkp#3gc zlFm+_Ikx4YNA9BhGc$1KjfV~$T01nd?w{#Y&w6gP3MZ%}RyMKQiO5l1m-w653ti6o zHf{Iv{M^ExUAuPOwSs>x20rPbBS((-WySePGT!sN&o7gi@_wt?-nVn-PEL;h@AV&g Whq~0Wv67ss5^CRq;~w3yT8C= zKL0I;|M}e9>661poaqTS^qf{J3gTAa#$mJ6ikwob6?$>pisH~~w%qE3Tbmd@Jn`m0 z-{+~IeAbuVJTSQboaGl^>@_N=jg6u{HjK&RZ(-rWZp1OrR>+}NoyN)c#-MkcjfLm0 zMsD_E7*-pmPQG!V`>Yige_9Rwe|og3R^h;o$Kkpj8g&QNS_6#+|F6{fzKI6kD{%x>11Jnyq*{=8^6XgZK!5*(%_KyLSr%uEdtX_ZOi~x?jy6ZqH z*Jb|cCtH+=?WWn0$zRfdY}$rm7>L-dLO`ZvKqti_gX;w-SHvGKG8qjqrSf@yx#o~H z8k7JEogL^~(1XE;?@+S24s&R5VDAiwgn^w8-`Bfv+3Juw#0IfMY)0pcEj3E&9hM=)XVxd#t>q zf9?JE-;+p@061&ug}dF_G!E~2l5_)J1k$IXquqkRt{qa+2m|;ms+sfwe^ruW+ZL>p zO@{bgcAqwAKC)(O1{=_zQ6itfrz#apmx^dq>v(bJQz)0F;uT-MXh>=&IndrcuXlXp zAf|m%$Knz&6~0y*5xY>)-kw2@qt=nJm;)JDl%TE6f|4abf@n(-T)j+Zcw zgGwnpmlAPoW2ZsiD45lmW@rs7^Lo!Y>ofzIe8CufZ7)0;%~ch48lz4j%LI^0nTZ_v z6pI%!9t7_V5<=ulj;kBZ~@u0RLsq;M_O~=Q?WDSk7OQZSB0hbK%LF}|eRzm5P4~=+V zK1W74DYPm=p9T59N+T$$iF{`sHqGquc?b6GqBjg>+qP|{e$|@u?g~6o#4ksDkVn16 zND@36*@y$5g_v^0E3n;cu zvRW7?L-ksdng>v6N>fb8DKKSJnE^qwNytPSYDiILRZLwe#@%!0e@o|>S&FKY0ZtJ$ zlTLj;R2XSV81cPsshn?K=iGy)lC)F#AVsyPxrt`2ie|Nz> z$?YTES+>T}jEOH`2Ixo=1Q8|^)7w)(XL}Yo%45*bHYLvH3re#z@fUUNrY*PYrp3tB z5r}C>cOY{}{WWHR(40$Ke6Pcy43hUDK}iaF43{t;k}kg8K_@-E(0S& zPsry?#wOFU-tc&T49&2xeB(E7PlCwz+<5Ut{bhDb)}YBHk}eBBQf0W<;snM9<=- zaq0chBc~a7`}IRtb#!*&nrpw4P%3yayTDPuK$46K0VdPI-o zov_<;hz%PXzkMr4Ufr|r((7(Mej0$hSi5f1n(}nfzxR*N#t~T%r^~LFC~h=;RH{r% z7LIsbWKvjIx|g-=Z~~5wp1>F-Aie~+B%#GaOUlyG-JRk04XnH2SFuwq`RA_Lv^JUd z857RDd3pCh@4N+l%9UGgg2Rar5OvZR@PR(TIDB0v7%`wpFQoGAG@q<&aKLZ`^pxsiB?)L*M_=PuIy2?7-eX zGjO6L`C6p4&f`}s+mbX#Og4kr5!o38+zVdl(>E~;W`@qrV~&mFh(@n;EnbhF^RL2* zkyl?>bNP*@J`CU!$MSU>zIN$LL(lKL>E_$;i(ft*`vf36-Qh{4K>(rXOhBH;)3Mj& zV&bZmb<52ujLF2vDX6nEOQ{qr*?e0(fBDrIAAN0i-+61-f4KN3B$)Yd!{t|h_3AI_~HEsYVV-`f<7)AE~9)mUO#vU zlOGh3p0f-WuDg=s*e6;jLHYO#Rww!Yl%LN8Aoo7{=x^qod-nM|dgd=&)Rrq4JaBT& zFe}2Q{9VSS#d8if9^;vRv^E2?)i~ler>{u$T=00000NkvXXu0mjfmz4-6 literal 0 HcmV?d00001 diff --git a/bbp_ng/icons/element/P_Box.png b/bbp_ng/icons/element/P_Box.png new file mode 100644 index 0000000000000000000000000000000000000000..2230deae7d9a8e7372de0f74495a61199057d6e1 GIT binary patch literal 984 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 RMN|L)002ovPDHLkV1hxI@$Uct literal 0 HcmV?d00001 diff --git a/bbp_ng/icons/element/P_Modul_03.png b/bbp_ng/icons/element/P_Modul_03.png new file mode 100644 index 0000000000000000000000000000000000000000..4c856a7aa2bbcd89ce9677563858d4153ae66493 GIT binary patch literal 471 zcmV;|0Vw{7P)4jrI+9my?}c!!2xvX zk_))Q1F#2I1~w!H|C=zxP^O(}97kh+GHKep{(1fX@%}Gkr}*y`;Nv)=26uF}ieg;Q z=TDsTdmF`)1j@eev!-cw?nsh^1wrsi1g>ll*vO=~yeNvDJMuhdX_~&-xEwh>TZwh^ z&MoM=E^FIX)q;vzaIKrv1SebY5QZVcS&2)C&?M;z`==_v!IsR(oe@n0jEsl~ms6RA zOVW8cqj(ukx8w;Io}m6hx$Bl=FII@f?4My1Y1B(<`z z;t#6GJAMCr&qmb|=8P~KiJ?8S!W_|=hS-Q6v6f>9K`XxRi!OMc$LKv9hJi&zZ5tbr%JWTiA?L{N(10#`v_Pd5-5e4(jq=KL9PitnO*x2d`xB*U&HD@gO@9CY N002ovPDHLkV1mvN(b@n2 literal 0 HcmV?d00001 diff --git a/bbp_ng/icons/element/P_Modul_08.png b/bbp_ng/icons/element/P_Modul_08.png new file mode 100644 index 0000000000000000000000000000000000000000..90524911fa30d3770f376fb53232f127804fd927 GIT binary patch literal 1104 zcmV-W1h4yvP)|2*ytaKZoCN*L&%HW&91u8ip`5alkf+EI$-`tX4BNsF-4snN9V`e=NWdF zt)0<#Vs@{5;qcCT=A7sIJ>Tzho^wRbpK}G$tbl2nHd@*C_I4NV4{2}Gj5Na}4+oet z5D0XQkB>(d7Z=TNIDGHm;Gj0y3|qRH?eFiG?(FPbo1UJ|=8k&%&$CnqPLKNA8f zwasR0C@Lx{k4B?XTwE-9d3pB>3kyBzUTDI25OA~FAGfx)Ol*kF&(E8D-=hEZXGP$X z)z#I5fq?;Yd3iY!i^cBxe7>sFz|)oktn$TBDD*Cg=fDPWI2?Z&hS6J6Qu4=BCjj_! zNd5lW+S-+kjSZ=(sR`r%4*=giOZs#v@LDh!d}m={;eylYj8#@v{?6)e(?U<30ISc( z>+35kE0^~6_N1<^E{Oc!13Y~exc;9|0Rplq#cDsLL?j2Si zwi4qB0tA&vByx>5$L|-;2;yekbuzw~95C_TpPilk9pI-X-s3S7DUiW)i51mvZf<%Y zaffo6_g^CPXVCW^V_xxky+&14Rm|mb{X(B6pXKKX0Uf;^V6(Qe9o`h4?Mz`z@m<%K>CuU^QxmOifKmZ*OnLKjg7flTU&pE z#3bdmWNB$Bi#o5{ZjP0ION*q10ILzsb741#Ry6|0-&i62{r%F|*!VJ4Pw-!wo15?3 z?e=c~o=FuvsRE^?rL*{Hs0FAHkEabbYIlm`9A~_)&W2Q1qB7Z z_V#u?PEEXj6kCa?GUR~x{eBr99=4GmH~IEr&8w-BNP1NwSQ|y=)7{<1O)4rXhWYNy%*_1L3Yk;yY5+J0@-a!+LAGB;`s~@+*?3$4 z9>rH8`Y4gw+FEI8X%UjMi>{j}7CViIrOP4!)dab5baeDKMdx|cFn9~w^4oC7hIq@~gJlfaS7wYWnJh74w zDUCsmLfRMXkY#p5XnlSC9u|E?8SmgmeA#NSlq^UT6cY9HU!~2_e#P&ARq*q1s=z-u WuN>7i4rYP?0000c>#}0DT9@m^=g$ zOCEr^T?h}-rRqYbc4H|Uknkl?vZN*S&T3Eylv1f|wsf-NJD<-#{~Z9{H~~(86W|0m zfe3-sYITA3fOd`sWQ|7SUl{Gpjn13JVqyEf|1q1*KCvz5^SO=l6)Gayz6-m<{xM>& zINn+5Z@C3Zj++lBlS#4FYOVLubsY+Yf}cnvo_8QP^*k@@I1Y1_N+n1plO7H`@z@{; zDwtnvHk)f#wOXazPCA_~3RvMap7_Z$O)EYU2l0jD@fgTDovlNyLj{2Wgm$~l`uKIxTo^-r z)Q2$iG0mCo=ui-}xxUQQW zjYd%oxcKpMhz4r48s%mh2+`e!uK){SuYkTu!3VyAw>_`m;M{aaS7;X6Eaj?;hvlz@v>p!6ow!F|J!@)6c?EO;DS1jNId(I-kzQ#lD>1aR^$e-zxn;^>*~j= z!`Bi%doe0lLjkzB_(xiuO2g%u`v<_K1mx*Mw+?OP4P3l)t-^c;MP2 z#!lv^tn=+^UvX>_xaGvObytBEL;hr*Yb?9#|L;>?!RnG@%)P3g@s`sq{wvR2JUI@0 zJ;cMtc|fLFr|q=R1gV%lbv3RHv%Gtb9x-|7w)tTO2TuiuKqz0$&re4`etmuYh)R}- y>4l~jLIDBuC*|BY3d3FjfoNjoHjbV$6kPKk#I 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 literal 0 HcmV?d00001 diff --git a/bbp_ng/icons/element/P_Modul_34.png b/bbp_ng/icons/element/P_Modul_34.png new file mode 100644 index 0000000000000000000000000000000000000000..b696f7d681be6271c9c948d8ab1dd56a2f6879e4 GIT binary patch literal 652 zcmV;70(1R|P)eto`~8g2`CDJ2o@<4uoH`Q)0xh~LJ+L9 z6ohRp_7_;#DHe)_2nlwA#e#JTVS_e;q!0@=ieHEy;Ld%x0ZH`Dyd|XZ!tjc@bI*DA z&dj+3{AZIc;UAAjNRkBh{la`6H1hnwV%V>(Q$~t;u72PZZ8n?1X0xGQucO=T{z1ZOwIY#7fc#kI6yj>VgwQeE z@Aqi8+X#ola5x-i1avwblF1~7!y&fYE%$a2B0y0ajRtzX9;iG9gW)$&I-LfUr&6hK zgOj5$0a{e6)s)nxQYi(DzPsHHg+f6HTr&Y$SS%K?*=&%>WFX5ja=Dx^_?rmO;^lG) zsy*B3n!w*gAQFkd>2xBS&B9`_AQp>hBB5yyghC;Bywn zK*0ln0DL~5au*B+0|k%HeYILeG#bTxJ{RI3lmWe7k6h;P5AwO zn9XKx5<(fET2Ceucsw3u{LPqhDtm$%>A^2GCK87jJu@--Bq&Dj8Sqy&?$o6GsvNTb muYn%vr7U9fx@M;OvVH-pPukc$iSIA~00008x6STMWlwcr+1;5p^ZU*F znl}Ldd$TACkR*vd-{Es?vQjp1{WFWj@_}%)1jNB$km`23rg3n)-QaLIsz_juK%Quk z2t1d|nMNR+%|aj$_^tq0O+#W_ctv2P0c{xGjz*(b?RHz&g=*C*bUGdQc7LzRdAGK} zAb`+Jp5Z2e#RJ;Fid{vt%Bp>FX!j$3k1Agc$>)#aNZR|0Gui^ zY92sF)JNG#&QOoFS;iE%L!nf$R8qxW?Cj7tfgjG+V&DO=a>A7c{y2<`Jck@?=7=AEo?Z~&WFL46H{v`#1& zm@I866KDZUHvs|G>-BsxnUv!3_yRsTA@$?L8=85hfm;;ZH#(enG;oT=Bo&l~1W@2P dK4&a~zX7rF2NtuFgT(*<002ovPDHLkV1i)0K*j(7 literal 0 HcmV?d00001 diff --git a/bbp_ng/icons/element/P_Modul_41.png b/bbp_ng/icons/element/P_Modul_41.png new file mode 100644 index 0000000000000000000000000000000000000000..804fef2f1cca840c2f881d0e1ac3f137c3e52c35 GIT binary patch literal 550 zcmV+>0@?kEP)p& zhM(Z#$`6pAz>IWhaDa{IL`oZh01Y3p-rKZ%BtoG?7vD=R&D;0xd9Kf04}cm~fGR*0 z`0olZ+XS#I>lW`H4iG7dxfOeASRlCV}I)H!R?M69DUlOvuaS zvRBxT_k}_M(&@CmE%^v#2J}nxXY>o_?2B-hq*X2w&*B$;2!e1t9*-du3f&ooF^b3I z3Mm9Fy9=mCOct@KBu3ZutJ!SExm=x2M`Pym`B$k_TFinh%OFV-Os7*Dw_dM9v)S}j zM<$a2f=4VE41%hvHlAz6ViDMGx4Q=3Znr^E6w(&^Jr0mBa+23-wQMI?8b*OK)_Z2Tf89Sc^(+-!@DSoCxgKN!r?IV`+XCO zdUc|*sEBajU+{@oD#1gwWmJK8xq7{x!6p)kQ@p#zLA=N36Oz|l>7C)p`Rc(kNk#c@ z+#_NxxMHzbjdglVNNwWZHso95^4f$A(=^YpO}^@KHemxvrA+`{oA3o!sfF8YIXU~4 oB4T)DzZ4ox6`%@G1^!rpZvocO{`oe0d;kCd07*qoM6N<$f^l*3asU7T literal 0 HcmV?d00001 diff --git a/bbp_ng/icons/element/P_Trafo_Paper.png b/bbp_ng/icons/element/P_Trafo_Paper.png new file mode 100644 index 0000000000000000000000000000000000000000..55f263ae5baef461ddc13031b410bf5cecb9ff98 GIT binary patch literal 1833 zcmV+^2iEwBP)$4vM4NoB}HnoD@ah4kOE17gaqe-W5>_&yWe-rM0N}YRY;v^Xl? z-}&wtk^lL!S@s)^hV}RZ9_+Zk+}hfbrKKe~eE6`GE6vC-M_=3Rb}Y6@p;*xIu`kDD zb#+ypNTpKJ-`_8G#8bt)P&g#<@%TPkSex^Dy=sSK+rKavLbN9GFZ1*Bl1`^37K=(E zkr1cDsT+F`X(SxcHMM$8s+Fn?e=#gT3XwM?8jb22I$~nX<#uUWR$iBCl3oX}*bqk_{v)7K*aA zwkCyqUhe;SUmo0lAlH7mCO3Y&p-yvt1-xl;#wNi)Q2ai>61eqht%7}Waf3>=A{!eU zGB-Cb7cX9rBO@akJtKrZXkJ~IM_5Clpd3AVRQ!IwOiWGyk-SEl&*!A4rw8`knle@l zInvbudRVL0WM_Lv28Raa$dMx;&5YcL(5^8!`!Yx+^0u-E5wIu87ucf!ASK{#r*@O^9qrHGUtp>-&#*}bY zWE|^@#UMN;O3kB0qruIsO*MM^)-6RU9*=AKx|Si~=c3_Z5Dcs%Y(5w(pzLxGot>R+ ziS&epCCdCK-zFtr$RlqyKwg0|Lh~W;M1?x81D5(n!^nL*#`6X!@aw=g-f|xtVj)+l!JsaCIml zp(CWsZw)8l+Uqs-Je$pFUJ0QAVsakEh}z83Gr$i6@bd`vdVQ*fX*iw9W>k)eh7I!$ zUL72;m>Ud+w0^mn+wH;W)(1%qXmmW`9{u%5ON@unC`4%L#0ia2Ym9$p`<0(#Gzi%*?8CD*TCmzy_ks`8yaeOe8$ zz@S#d!os2ip^8J0XC7EYCYgLIIlN=knam!LaEUSE)z*weCKJhxt{edQyo8>qNJ8r= zBqzT*DaVf=*HkPmFUk1$F>NwfcB~ARSqc0|yh*57ku#AIPE;2fVEg zv|++F9JgT|NOOP8Nesklb}_&|!c_D`B8n8pO5h3| zU_di7GyCTNbf$nqN{`Ie50k5a@z<8`0)>l&v)U*^%l~PBX8~I_a)8Q6BXq#hdOkzQ zo5aH(E34(ZpbDga#+>fo1?*sP7wG_r$)lAdB@N<2deQ59ZeVqOX`(@ley{~RN>gW>&S~}s+zV|1X?>^;U XEsEq=tBgBz00000NkvXXu0mjfjB;CX literal 0 HcmV?d00001 diff --git a/bbp_ng/icons/element/P_Trafo_Stone.png b/bbp_ng/icons/element/P_Trafo_Stone.png new file mode 100644 index 0000000000000000000000000000000000000000..b3373fa4fc1b487de9defd1484e223aa2cda08c1 GIT binary patch literal 1942 zcmV;H2Wj|;P)A z2@oI_EZDGS%kwn*M%7YJxvG4(^L{a398XQVs(K0rwM1H0+9xwlMEvo`ACV&e=c99P zf4|?~|NI?4EWW?dg-+-DTmENPpWFL^165UJWm(#4*KwTE_xj&+3>t^Qr1aEUP27WlLGrT-)juIq^BdLK)rB8~e;N0w!qwrzX5ImYF$fBTc%Os6s&gwl(9VmqO%)*A@}TUv3X z%y-i34Wuk9X+WWlDF7QxBzJfph z<=0Zzdnt-se9sl%_xOggW7EL*#q+xuE`S(E6m~u~Y0#((9MY6DO(PgmtU#qBU;q3Y z_VDvK>V@}lAE&^q0eO}eSzwXJL4PE(Z7O-b;z3)IWGyY5f|8`k#&95SZ6X6mqAo!| z(X&Z^!#%TQBEzP|NsoIRSuExt8E40+ADHs!Py;oPRuvm`EeU;x{CCuQu^^QKM}Wp? zmZee=aog<8x2ao5S&L&iAW#{E!e~G$uMH3M+OrNcZ9`SADaX*M)5$pqmEtNFsy%!tWpBB%BW3E?HpwK4B1yA?YbiwT8x$WOPdK13 z>8DmlKtj#cRUvT{5~L$%lZmXBGnV%_6a%?P;8A8Iz8iKSpM%pm#v$LnBLQnIH*K~% z!x=yDo<~4$q6(BtCdanzl6N>jN_J@~%f*aMBFK7(Gzfj5FL1(@yV(rZd(!VwvRq4u zzO5^%_YTq;8Dg4!kB%oKGzta^MN!FewS$bMVg4RMIkpl}OVW}4V1O>z;$pZPbtN`N z15Dvtj7?vke4qm4%MOM@yLTG4rm29+&CCbWWCKK$!nS3+)4q|SMRQgz6+EM z0u;+G$z`+I$jNw2ieic2jHdbQ?3_I)JsV*H(fNETrzbt*+#>*xvqy*F0AI~r-0#W7 z`6;Sr$<2H#j^`6VL+(SPd=aE9A*u2uTg_!KK=nx5cDt3lY{chDLZhok$&HqmsMsz|#G$oXu)ipX4CYr<$oa(uh9d&2NL3dSp3(ArSuE#raW;mC6@rwa zj;(2A&my2QtGRMHpN$9RfgZJfG8&2nIn_c1KP*ATToI|%ochZlaOV4{d~Saboxf; zwG%c7j-pn#wW*%T$p{Cvku4!)PU=M7UR|RZIIN@Hqq2X3fI^f5>-%q~)Ojc&Irqu= z*<=KqE6NOB0A-8@c+|93ga&o>_6o9kNbf;4*OXun=;@2x8<@dF33zDdAC9L|jKPYY zuBp&YsPd_2pGxTVP9#lBhLKe6Zto;5O0HG1S*@f14J|oEO1q^h;taHwTyq?Y>KT}n zsenDpfl+@Lh8P=+P%dV`+q(rC@EOw)Qfgx`9Y{ppce}0l44g@t(F6L@9}bxbYh-x@ zCqfxP+S}Oz-Iz;+SiSk@8xW0jK>2%^kRWsq(uOp# zqxXWE;pUI*_xyVSjUz|rGfxMO?;OxtS2p{ssWIiCUN=)2>skpqRh3kSik9zNlxPrO z>;d#__wc>IOt^Wj?*-;YjO0Am`&6%HKeYG9UQU0HeeD>3_yGH(;{B0-k2>Hd-}^_p c^7Qt91ARicH7Ak*<^TWy07*qoM6N<$f}cvIr~m)} literal 0 HcmV?d00001 diff --git a/bbp_ng/icons/element/P_Trafo_Wood.png b/bbp_ng/icons/element/P_Trafo_Wood.png new file mode 100644 index 0000000000000000000000000000000000000000..5a87a7b7d52d167ae25b6024aa8ed76e9bb94100 GIT binary patch literal 1924 zcmV-~2YdL5P)+TFMM)Y)sV zz4qFtr2q3PIL2R=<@oj2dRo%^0x%3i)AxO3ah-F0nx^I30`R)M z-Ho(9Zre8c;M#z6one8${afn zAOuJ-$Fib@0Ek?mX=pVNEeK*oL8NJ%H1b~9a#>2QzfwVCTDLAYO>;fZQ)N37T)+F| zBcDZ86$*w(o7GBXRqAB3(GT7^RhFenvP?nL=<%0N^q;S``r*6x_1=#kYInWYzb|W8 zS@h0nsrMdz$~q%A0CZUAd0rU+6Whxd7f;kTZC_vN_dowgQDoUU=#I$b#j=P}Sk_u# zWt{!@aTrx*umkdWn$-29V(v>}%#vBgMSuO{FEn;FYn%2M-1fU!0v}*^@w7SAb!OEV z3DyxPX9EZND2X)@dxDiXP5k<%={1a<5^7)Mi3i#OAh0!*s|!XAgLPA+{nazgVcgtI z`V|1jZY)x#E{xbrS{0eP77d^UcqF(}44A{A)l8l1x`XOgWx?HL-OIYo-<%n;_A|8yT=Q323t_)$aMAmJJRBU(J)E7+vrV(NmVE8dW}G+lsc!1>4d6)_UlVsonI?+2`!2^0Tyw4-wwJW_;RRiD>?h`#_RT9{4hh4F;Mrj zuIfoS870(mO}3{1G1=N4Bn*H~MH%Vr{`Zs@XX?X(%rljUF}7|Y6ZnD&%xC}&#YGi& zGhiC9h2wy_aX7V+Fle39?`cXW$i$W_O%g!1I33wqXV8A@lZ=*)eXWOq>j(~C3`9HK`<+IAx;JmD+?{Jc9$pv#6*!W6ECQFqUBg0!%*cGrIZHkkwd`!u~O=g z;}L<0#&^IQL}>gN2@?R<-MK6+_`nR%S8=z!F(V-8$j?t6JAPYD^0Tlq@sza2G{nRPO85aQE3BWVJdx9=Q+Y_t6C%Om=} zSIafC@3JgRrCvARzgKEk?_U^^)$_*d6(cf+{1U#{4Z=pNBGu4^0GN~-I6(EVVHw8+ zJa8S0M`SF9zBI`+yG|$E*I|qE*sG}3X8#y|srH4LN#3~dIm zamfrQ@|YpR{HF}D9X@FGFhH=_vt?)pljqN`6xb{o4%$9FSIV4Nh8?5#MT_690sGzh z+Ww22)>Xm?4#+Ch!w03(ELXM4zdrRaC7E_s?`S;JIf1XXoi_Oau_4GZ#vLzIKYyko zp7bMjH8;K!fRAr2#%F|atg2kizEjBf4FD9uMve((aiXd3{0Zsay21r*F3>dqtyZb( zi(X@cNMZ6~%V&X9eeb>jz_CfJ3nmo1-}k!QHXcm2>#<-*7I*`0=#AFSf9ADJy^g|< zpkMfVKqn4BGv|qW56>7@Jw6orGvu8jJa&PNS*z#a&}+|o3kVBjbvE;{gK0?cg(1aZ zR{!|tzx3qkCB_2)(;DrWz*>$L9^9uyFlIR4XhaN_ygJ#a>F9axsJj6(T71hjctGs1 zW^>6rqbxarI42R!HXO+%gunk3D$ zvfAj+fB756g8$PxBh>nG7!&&z4;Z=DBS1PJD>TAJhcTJm#!NzoMo8J~C9-oNW&7zT ze^3w?TB0t z5Bmc~h1tMXK}W2ZoOTK_#SQkXkd*3!Twi?lp^wXR!B`ZoHQ{K1Bm&5bzAf+@U3y)~JEx%FrUH9Qy0 zej($w&9ba|TaRY1+xy!dPJcsu4rKbRNBDLhPT%_8w_W8s{Pkb5RJpB(9kt&80000< KMNUMnLSTYzxucQ* literal 0 HcmV?d00001 diff --git a/bbp_ng/icons/floor/Flat.png b/bbp_ng/icons/floor/Flat.png new file mode 100644 index 0000000000000000000000000000000000000000..8d9ae469559e1af50c544e6d2b6729cf3af469d6 GIT binary patch literal 6425 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 VGd>OVmCp?(BcUi>D{374{{WOmb7lYl literal 0 HcmV?d00001 diff --git a/bbp_ng/icons/floor/NormalBorder.png b/bbp_ng/icons/floor/NormalBorder.png new file mode 100644 index 0000000000000000000000000000000000000000..667f0e42f95c1b39183747a143e7a06535da6aaa GIT binary patch literal 6899 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 literal 0 HcmV?d00001 diff --git a/bbp_ng/icons/floor/NormalCrossroad.png b/bbp_ng/icons/floor/NormalCrossroad.png new file mode 100644 index 0000000000000000000000000000000000000000..6487d40ec76ed1dee20bff79777b251edc7c8384 GIT binary patch literal 28052 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