From f123bdacc06e168d8be3dda59a6164dd0a01db3d Mon Sep 17 00:00:00 2001 From: yyc12345 Date: Fri, 12 Jan 2024 17:18:41 +0800 Subject: [PATCH] finish bme struct --- .../{WideLConnector.png => WideLCrossing.png} | Bin .../{WideTConnector.png => WideTCrossing.png} | Bin .../{WideCrossroad.png => WideXCrossing.png} | Bin bbp_ng/raw_jsons/1x1.json | 174 ++++++ bbp_ng/raw_jsons/flat.json | 171 ++++++ bbp_ng/raw_jsons/platforms.json | 371 ++++++++++++ bbp_ng/raw_jsons/streets.json | 178 ++++++ bbp_ng/raw_jsons/terminals.json | 150 +++++ bbp_ng/raw_jsons/wide_floors.json | 547 ++++++++++++++++++ 9 files changed, 1591 insertions(+) rename bbp_ng/raw_icons/bme/{WideLConnector.png => WideLCrossing.png} (100%) rename bbp_ng/raw_icons/bme/{WideTConnector.png => WideTCrossing.png} (100%) rename bbp_ng/raw_icons/bme/{WideCrossroad.png => WideXCrossing.png} (100%) create mode 100644 bbp_ng/raw_jsons/1x1.json create mode 100644 bbp_ng/raw_jsons/flat.json create mode 100644 bbp_ng/raw_jsons/platforms.json create mode 100644 bbp_ng/raw_jsons/streets.json create mode 100644 bbp_ng/raw_jsons/terminals.json create mode 100644 bbp_ng/raw_jsons/wide_floors.json diff --git a/bbp_ng/raw_icons/bme/WideLConnector.png b/bbp_ng/raw_icons/bme/WideLCrossing.png similarity index 100% rename from bbp_ng/raw_icons/bme/WideLConnector.png rename to bbp_ng/raw_icons/bme/WideLCrossing.png diff --git a/bbp_ng/raw_icons/bme/WideTConnector.png b/bbp_ng/raw_icons/bme/WideTCrossing.png similarity index 100% rename from bbp_ng/raw_icons/bme/WideTConnector.png rename to bbp_ng/raw_icons/bme/WideTCrossing.png diff --git a/bbp_ng/raw_icons/bme/WideCrossroad.png b/bbp_ng/raw_icons/bme/WideXCrossing.png similarity index 100% rename from bbp_ng/raw_icons/bme/WideCrossroad.png rename to bbp_ng/raw_icons/bme/WideXCrossing.png diff --git a/bbp_ng/raw_jsons/1x1.json b/bbp_ng/raw_jsons/1x1.json new file mode 100644 index 0000000..e31cfa7 --- /dev/null +++ b/bbp_ng/raw_jsons/1x1.json @@ -0,0 +1,174 @@ +[ + { + "identifier": "raw_floor_1x1", + "showcase": null, + "params": [ + { + "field": "height", + "data": "5.0" + }, + { + "field": "face", + "data": "(True, False, True, True, True, True)" + }, + { + "field": "is_sink", + "data": "False" + } + ], + "skip": "False", + "vars": [], + "vertices": [], + "faces": [], + "instances": [ + { + "identifier": "raw_floor_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], face[4], False, face[3], False)", + "is_sink": "is_sink", + "is_inner": "False", + "is_ribbon": "False" + }, + "transform": "move(5, 0, 0) @ rot(0, 0, -270)" + }, + { + "identifier": "raw_floor_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], face[3], False, face[5], False)", + "is_sink": "is_sink", + "is_inner": "False", + "is_ribbon": "False" + }, + "transform": "move(5, 5, 0) @ rot(0, 0, -180)" + }, + { + "identifier": "raw_floor_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], face[5], False, face[2], False)", + "is_sink": "is_sink", + "is_inner": "False", + "is_ribbon": "False" + }, + "transform": "move(0, 5, 0) @ rot(0, 0, -90)" + }, + { + "identifier": "raw_floor_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], face[2], False, face[4], False)", + "is_sink": "is_sink", + "is_inner": "False", + "is_ribbon": "False" + }, + "transform": "move(0, 0, 0)" + } + ] + }, + { + "identifier": "floor_normal_1x1", + "showcase": { + "title": "Normal 1x1", + "icon": "Normal1x1", + "type": "floor", + "cfgs": [ + { + "field": "height_", + "type": "float", + "title": "Height", + "desc": "The height of block.", + "default": "5.0" + }, + { + "field": "face_", + "type": "face", + "title": "Face", + "desc": "Whether has some faces.", + "default": "(True, False, True, True, True, True)" + } + ] + }, + "params": [ + { + "field": "height", + "data": "height_" + }, + { + "field": "face", + "data": "face_" + } + ], + "skip": "False", + "vars": [], + "vertices": [], + "faces": [], + "instances": [ + { + "identifier": "raw_floor_1x1", + "skip": "False", + "params": { + "height": "height", + "face": "face", + "is_sink": "False" + }, + "transform": "ident()" + } + ] + }, + { + "identifier": "floor_sink_1x1", + "showcase": { + "title": "Sink 1x1", + "icon": "Sink1x1", + "type": "floor", + "cfgs": [ + { + "field": "height_", + "type": "float", + "title": "Height", + "desc": "The height of block.", + "default": "5.0" + }, + { + "field": "face_", + "type": "face", + "title": "Face", + "desc": "Whether has some faces.", + "default": "(True, False, True, True, True, True)" + } + ] + }, + "params": [ + { + "field": "height", + "data": "height_" + }, + { + "field": "face", + "data": "face_" + } + ], + "skip": "False", + "vars": [], + "vertices": [], + "faces": [], + "instances": [ + { + "identifier": "raw_floor_1x1", + "skip": "False", + "params": { + "height": "height", + "face": "face", + "is_sink": "True" + }, + "transform": "ident()" + } + ] + } +] \ No newline at end of file diff --git a/bbp_ng/raw_jsons/flat.json b/bbp_ng/raw_jsons/flat.json new file mode 100644 index 0000000..6a918f0 --- /dev/null +++ b/bbp_ng/raw_jsons/flat.json @@ -0,0 +1,171 @@ +[ + { + "identifier": "floor_flat", + "showcase": { + "title": "Flat", + "icon": "Flat", + "type": "floor", + "cfgs": [ + { + "field": "height_", + "type": "float", + "title": "Height", + "desc": "The height of block.", + "default": "5.0" + }, + { + "field": "length_", + "type": "float", + "title": "Length", + "desc": "The length of block.", + "default": "2.5" + }, + { + "field": "width_", + "type": "float", + "title": "Width", + "desc": "The width of block.", + "default": "2.5" + }, + { + "field": "face_", + "type": "face", + "title": "Face", + "desc": "Whether has some faces.", + "default": "(True, False, False, False, False, False)" + }, + { + "field": "is_sink_", + "type": "float", + "title": "Is Sink", + "desc": "Whether this flat floor is used for sink floor.", + "default": "False" + } + ] + }, + "params": [ + { + "field": "height", + "data": "height_" + }, + { + "field": "length", + "data": "length_" + }, + { + "field": "width", + "data": "width_" + }, + { + "field": "face", + "data": "face_" + }, + { + "field": "is_sink", + "data": "is_sink_" + } + ], + "skip": "length == 0.0 or width == 0.0", + "vars": [ + { + "field": "sink", + "data": "0.7 if is_sink else 0" + }, + { + "field": "uv_length", + "data": "length / 5.0" + }, + { + "field": "uv_width", + "data": "width / 5.0" + } + ], + "vertices": [ + { + "skip": "False", + "data": "(0, 0, -sink)" + }, + { + "skip": "False", + "data": "(length, 0, -sink)" + }, + { + "skip": "False", + "data": "(length, width, -sink)" + }, + { + "skip": "False", + "data": "(0, width, -sink)" + } + ], + "faces": [ + { + "skip": "not face[0]", + "texture": "\"FloorTopBorderless\"", + "indices": [0, 1, 2, 3], + "uvs": [ + "(0, 0)", + "(uv_length, 0)", + "(uv_length, uv_width)", + "(0, uv_width)" + ], + "normals": null + } + ], + "instances": [ + { + "identifier": "raw_floor_side", + "skip": "not face[4]", + "params": { + "height": "height", + "length": "length", + "is_left_sink": "is_sink", + "is_right_sink": "is_sink" + }, + "transform": "ident()" + }, + { + "identifier": "raw_floor_side", + "skip": "not face[2]", + "params": { + "height": "height", + "length": "width", + "is_left_sink": "is_sink", + "is_right_sink": "is_sink" + }, + "transform": "move(0, width, 0) @ rot(0, 0, -90)" + }, + { + "identifier": "raw_floor_side", + "skip": "not face[3]", + "params": { + "height": "height", + "length": "width", + "is_left_sink": "is_sink", + "is_right_sink": "is_sink" + }, + "transform": "move(length, 0, 0) @ rot(0, 0, 90)" + }, + { + "identifier": "raw_floor_side", + "skip": "not face[5]", + "params": { + "height": "height", + "length": "length", + "is_left_sink": "is_sink", + "is_right_sink": "is_sink" + }, + "transform": "move(length, width, 0) @ rot(0, 0, 180)" + }, + { + "identifier": "floor_bottom", + "skip": "not face[1]", + "params": { + "length": "length", + "width": "width" + }, + "transform": "move(0, 0, -height)" + } + ] + } +] \ No newline at end of file diff --git a/bbp_ng/raw_jsons/platforms.json b/bbp_ng/raw_jsons/platforms.json new file mode 100644 index 0000000..bf973fd --- /dev/null +++ b/bbp_ng/raw_jsons/platforms.json @@ -0,0 +1,371 @@ +[ + { + "identifier": "raw_floor_platform", + "showcase": null, + "params": [ + { + "field": "height", + "data": "5.0" + }, + { + "field": "length", + "data": "5.0" + }, + { + "field": "width", + "data": "5.0" + }, + { + "field": "face", + "data": "(True, False, True, True, True, True)" + }, + { + "field": "is_sink", + "data": "False" + }, + { + "field": "is_ribbon", + "data": "False" + } + ], + "skip": "False", + "vars": [], + "vertices": [], + "faces": [], + "instances": [ + { + "identifier": "raw_floor_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], face[4], False, face[3], False)", + "is_sink": "is_sink", + "is_inner": "False", + "is_ribbon": "is_ribbon" + }, + "transform": "move(5 + length, 0, 0) @ rot(0, 0, -270)" + }, + { + "identifier": "raw_floor_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], face[3], False, face[5], False)", + "is_sink": "is_sink", + "is_inner": "False", + "is_ribbon": "is_ribbon" + }, + "transform": "move(5 + length, 5 + width, 0) @ rot(0, 0, -180)" + }, + { + "identifier": "raw_floor_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], face[5], False, face[2], False)", + "is_sink": "is_sink", + "is_inner": "False", + "is_ribbon": "is_ribbon" + }, + "transform": "move(0, 5 + width, 0) @ rot(0, 0, -90)" + }, + { + "identifier": "raw_floor_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], face[2], False, face[4], False)", + "is_sink": "is_sink", + "is_inner": "False", + "is_ribbon": "is_ribbon" + }, + "transform": "ident()" + }, + { + "identifier": "floor_flat", + "skip": "False", + "params": { + "height": "height", + "length": "length", + "width": "width", + "face": "(face[0], face[1], False, False, False, False)", + "is_sink": "is_sink" + }, + "transform": "move(2.5, 2.5, 0)" + }, + { + "identifier": "raw_floor_border", + "skip": "False", + "params": { + "height": "height", + "length": "length", + "face": "(face[0], face[1], False, False, face[4], False)", + "is_sink": "is_sink", + "is_ribbon": "is_ribbon" + }, + "transform": "move(2.5, 0, 0)" + }, + { + "identifier": "raw_floor_border", + "skip": "False", + "params": { + "height": "height", + "length": "width", + "face": "(face[0], face[1], False, False, face[2], False)", + "is_sink": "is_sink", + "is_ribbon": "is_ribbon" + }, + "transform": "move(0, 2.5 + width, 0) @ rot(0, 0, -90)" + }, + { + "identifier": "raw_floor_border", + "skip": "False", + "params": { + "height": "height", + "length": "length", + "face": "(face[0], face[1], False, False, face[5], False)", + "is_sink": "is_sink", + "is_ribbon": "is_ribbon" + }, + "transform": "move(2.5 + length, 5 + width, 0) @ rot(0, 0, -180)" + }, + { + "identifier": "raw_floor_border", + "skip": "False", + "params": { + "height": "height", + "length": "width", + "face": "(face[0], face[1], False, False, face[3], False)", + "is_sink": "is_sink", + "is_ribbon": "is_ribbon" + }, + "transform": "move(5 + length, 2.5, 0) @ rot(0, 0, -270)" + } + ] + }, + { + "identifier": "floor_normal_platform", + "showcase": { + "title": "Normal Platform", + "icon": "NormalPlatform", + "type": "floor", + "cfgs": [ + { + "field": "length_", + "type": "float", + "title": "Length", + "desc": "The length of block.", + "default": "2.5" + }, + { + "field": "width_", + "type": "float", + "title": "Width", + "desc": "The width of block.", + "default": "2.5" + }, + { + "field": "height_", + "type": "float", + "title": "Height", + "desc": "The height of block.", + "default": "5.0" + }, + { + "field": "face_", + "type": "face", + "title": "Face", + "desc": "Whether has some faces.", + "default": "(True, False, True, True, True, True)" + } + ] + }, + "params": [ + { + "field": "height", + "data": "height_" + }, + { + "field": "length", + "data": "length_" + }, + { + "field": "width", + "data": "width_" + }, + { + "field": "face", + "data": "face_" + } + ], + "skip": "False", + "vars": [], + "vertices": [], + "faces": [], + "instances": [ + { + "identifier": "raw_floor_platform", + "skip": "False", + "params": { + "length": "length", + "width": "width", + "height": "height", + "face": "face", + "is_sink": "False", + "is_ribbon": "False" + }, + "transform": "ident()" + } + ] + }, + { + "identifier": "floor_sink_platform", + "showcase": { + "title": "Sink Platform", + "icon": "SinkPlatform", + "type": "floor", + "cfgs": [ + { + "field": "length_", + "type": "float", + "title": "Length", + "desc": "The length of block.", + "default": "2.5" + }, + { + "field": "width_", + "type": "float", + "title": "Width", + "desc": "The width of block.", + "default": "2.5" + }, + { + "field": "height_", + "type": "float", + "title": "Height", + "desc": "The height of block.", + "default": "5.0" + }, + { + "field": "face_", + "type": "face", + "title": "Face", + "desc": "Whether has some faces.", + "default": "(True, False, True, True, True, True)" + } + ] + }, + "params": [ + { + "field": "height", + "data": "height_" + }, + { + "field": "length", + "data": "length_" + }, + { + "field": "width", + "data": "width_" + }, + { + "field": "face", + "data": "face_" + } + ], + "skip": "False", + "vars": [], + "vertices": [], + "faces": [], + "instances": [ + { + "identifier": "raw_floor_platform", + "skip": "False", + "params": { + "length": "length", + "width": "width", + "height": "height", + "face": "face", + "is_sink": "True", + "is_ribbon": "False" + }, + "transform": "ident()" + } + ] + }, + { + "identifier": "floor_ribbon_platform", + "showcase": { + "title": "Ribbon Platform", + "icon": "RibbonPlatform", + "type": "floor", + "cfgs": [ + { + "field": "length_", + "type": "float", + "title": "Length", + "desc": "The length of block.", + "default": "2.5" + }, + { + "field": "width_", + "type": "float", + "title": "Width", + "desc": "The width of block.", + "default": "2.5" + }, + { + "field": "height_", + "type": "float", + "title": "Height", + "desc": "The height of block.", + "default": "5.0" + }, + { + "field": "face_", + "type": "face", + "title": "Face", + "desc": "Whether has some faces.", + "default": "(True, False, True, True, True, True)" + } + ] + }, + "params": [ + { + "field": "height", + "data": "height_" + }, + { + "field": "length", + "data": "length_" + }, + { + "field": "width", + "data": "width_" + }, + { + "field": "face", + "data": "face_" + } + ], + "skip": "False", + "vars": [], + "vertices": [], + "faces": [], + "instances": [ + { + "identifier": "raw_floor_platform", + "skip": "False", + "params": { + "length": "length", + "width": "width", + "height": "height", + "face": "face", + "is_sink": "True", + "is_ribbon": "True" + }, + "transform": "ident()" + } + ] + } +] \ No newline at end of file diff --git a/bbp_ng/raw_jsons/streets.json b/bbp_ng/raw_jsons/streets.json new file mode 100644 index 0000000..2d062e0 --- /dev/null +++ b/bbp_ng/raw_jsons/streets.json @@ -0,0 +1,178 @@ +[ + { + "identifier": "raw_floor_straight", + "showcase": null, + "params": [ + { + "field": "height", + "data": "5.0" + }, + { + "field": "length", + "data": "5.0" + }, + { + "field": "face", + "data": "(True, False, False, False, True, True)" + }, + { + "field": "is_sink", + "data": "False" + } + ], + "skip": "length == 0.0", + "vars": [], + "vertices": [], + "faces": [], + "instances": [ + { + "identifier": "raw_floor_border", + "skip": "False", + "params": { + "length": "length", + "height": "height", + "face": "(face[0], face[1], face[2], face[3], face[4], False)", + "is_sink": "is_sink", + "is_ribbon": "False" + }, + "transform": "ident()" + }, + { + "identifier": "raw_floor_border", + "skip": "False", + "params": { + "length": "length", + "height": "height", + "face": "(face[0], face[1], face[3], face[2], face[5], False)", + "is_sink": "is_sink", + "is_ribbon": "False" + }, + "transform": "move(length, 5, 0) @ rot(0, 0, 180)" + } + ] + }, + { + "identifier": "floor_normal_straight", + "showcase": { + "title": "Normal Floor", + "icon": "NormalFloor", + "type": "floor", + "cfgs": [ + { + "field": "height_", + "type": "float", + "title": "Height", + "desc": "The height of block.", + "default": "5.0" + }, + { + "field": "length_", + "type": "float", + "title": "Length", + "desc": "The length of block.", + "default": "2.5" + }, + { + "field": "face_", + "type": "face", + "title": "Face", + "desc": "Whether has some faces.", + "default": "(True, False, False, False, True, True)" + } + ] + }, + "params": [ + { + "field": "height", + "data": "height_" + }, + { + "field": "length", + "data": "length_" + }, + { + "field": "face", + "data": "face_" + } + ], + "skip": "False", + "vars": [], + "vertices": [], + "faces": [], + "instances": [ + { + "identifier": "raw_floor_straight", + "skip": "False", + "params": { + "height": "height", + "length": "length", + "face": "face", + "is_sink": "False" + }, + "transform": "ident()" + } + ] + }, + { + "identifier": "floor_sink_straight", + "showcase": { + "title": "Sink Floor", + "icon": "SinkFloor", + "type": "floor", + "cfgs": [ + { + "field": "height_", + "type": "float", + "title": "Height", + "desc": "The height of block.", + "default": "5.0" + }, + { + "field": "length_", + "type": "float", + "title": "Length", + "desc": "The length of block.", + "default": "2.5" + }, + { + "field": "face_", + "type": "face", + "title": "Face", + "desc": "Whether has some faces.", + "default": "(True, False, False, False, True, True)" + } + ] + }, + "params": [ + { + "field": "height", + "data": "height_" + }, + { + "field": "length", + "data": "length_" + }, + { + "field": "face", + "data": "face_" + } + ], + "skip": "False", + "vars": [], + "vertices": [], + "faces": [], + "instances": [ + { + "identifier": "raw_floor_straight", + "skip": "False", + "params": { + "height": "height", + "length": "length", + "face": "face", + "is_sink": "True" + }, + "transform": "ident()" + } + ] + } +] \ No newline at end of file diff --git a/bbp_ng/raw_jsons/terminals.json b/bbp_ng/raw_jsons/terminals.json new file mode 100644 index 0000000..1f88249 --- /dev/null +++ b/bbp_ng/raw_jsons/terminals.json @@ -0,0 +1,150 @@ +[ + { + "identifier": "raw_floor_terminal", + "showcase": null, + "params": [ + { + "field": "height", + "data": "5.0" + }, + { + "field": "face", + "data": "(True, False, True, False, True, True)" + }, + { + "field": "is_sink", + "data": "False" + } + ], + "skip": "False", + "vars": [], + "vertices": [], + "faces": [], + "instances": [ + { + "identifier": "raw_floor_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], face[2], face[3], face[4], False)", + "is_sink": "is_sink", + "is_inner": "False", + "is_ribbon": "False" + }, + "transform": "ident()" + }, + { + "identifier": "raw_floor_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], face[5], False, face[2], face[3])", + "is_sink": "is_sink", + "is_inner": "False", + "is_ribbon": "False" + }, + "transform": "move(0, 5, 0) @ rot(0, 0, -90)" + } + ] + }, + { + "identifier": "floor_normal_terminal", + "showcase": { + "title": "Normal Floor Terminal", + "icon": "NormalFloorTerminal", + "type": "floor", + "cfgs": [ + { + "field": "height_", + "type": "float", + "title": "Height", + "desc": "The height of block.", + "default": "5.0" + }, + { + "field": "face_", + "type": "face", + "title": "Face", + "desc": "Whether has some faces.", + "default": "(True, False, True, False, True, True)" + } + ] + }, + "params": [ + { + "field": "height", + "data": "height_" + }, + { + "field": "face", + "data": "face_" + } + ], + "skip": "False", + "vars": [], + "vertices": [], + "faces": [], + "instances": [ + { + "identifier": "raw_floor_terminal", + "skip": "False", + "params": { + "height": "height", + "face": "face", + "is_sink": "False" + }, + "transform": "ident()" + } + ] + }, + { + "identifier": "floor_sink_terminal", + "showcase": { + "title": "Sink Floor Terminal", + "icon": "SinkFloorTerminal", + "type": "floor", + "cfgs": [ + { + "field": "height_", + "type": "float", + "title": "Height", + "desc": "The height of block.", + "default": "5.0" + }, + { + "field": "face_", + "type": "face", + "title": "Face", + "desc": "Whether has some faces.", + "default": "(True, False, True, False, True, True)" + } + ] + }, + "params": [ + { + "field": "height", + "data": "height_" + }, + { + "field": "face", + "data": "face_" + } + ], + "skip": "False", + "vars": [], + "vertices": [], + "faces": [], + "instances": [ + { + "identifier": "raw_floor_terminal", + "skip": "False", + "params": { + "height": "height", + "face": "face", + "is_sink": "True" + }, + "transform": "ident()" + } + ] + } +] \ No newline at end of file diff --git a/bbp_ng/raw_jsons/wide_floors.json b/bbp_ng/raw_jsons/wide_floors.json new file mode 100644 index 0000000..b7b151b --- /dev/null +++ b/bbp_ng/raw_jsons/wide_floors.json @@ -0,0 +1,547 @@ +[ + { + "identifier": "floor_wide_straight", + "showcase": { + "title": "Wide Floor", + "icon": "WideFloor", + "type": "floor", + "cfgs": [ + { + "field": "length_", + "type": "float", + "title": "Length", + "desc": "The length of wide floor.", + "default": "2.5" + }, + { + "field": "width_", + "type": "float", + "title": "Width", + "desc": "The width of wide floor.", + "default": "5.0" + }, + { + "field": "height_", + "type": "float", + "title": "Height", + "desc": "The height of block.", + "default": "5.0" + }, + { + "field": "face_", + "type": "face", + "title": "Face", + "desc": "Whether has some faces.", + "default": "(True, False, False, False, True, True)" + } + ] + }, + "params": [ + { + "field": "height", + "data": "height_" + }, + { + "field": "length", + "data": "length_" + }, + { + "field": "width", + "data": "width_" + }, + { + "field": "face", + "data": "face_" + } + ], + "skip": "False", + "vars": [], + "vertices": [], + "faces": [], + "instances": [ + { + "identifier": "floor_sink_border", + "skip": "False", + "params": { + "length": "length", + "height": "height", + "face": "(face[0], face[1], face[2], face[3], face[4], False)" + }, + "transform": "ident()" + }, + { + "identifier": "floor_sink_border", + "skip": "False", + "params": { + "length": "length", + "height": "height", + "face": "(face[0], face[1], face[3], face[2], face[5], False)" + }, + "transform": "move(length, 5 + width, 0) @ rot(0, 0, 180)" + }, + { + "identifier": "floor_flat", + "skip": "False", + "params": { + "height": "height", + "length": "length", + "width": "width", + "face": "(face[0], face[1], face[2], face[3], False, False)", + "is_sink": "True" + }, + "transform": "move(0, 2.5, 0)" + } + ] + }, + { + "identifier": "floor_wide_terminal", + "showcase": { + "title": "Wide Floor Terminal", + "icon": "WideFloorTerminal", + "type": "floor", + "cfgs": [ + { + "field": "width_", + "type": "float", + "title": "Width", + "desc": "The width of wide floor.", + "default": "5.0" + }, + { + "field": "height_", + "type": "float", + "title": "Height", + "desc": "The height of block.", + "default": "5.0" + }, + { + "field": "face_", + "type": "face", + "title": "Face", + "desc": "Whether has some faces.", + "default": "(True, False, True, False, True, True)" + } + ] + }, + "params": [ + { + "field": "height", + "data": "height_" + }, + { + "field": "width", + "data": "width_" + }, + { + "field": "face", + "data": "face_" + } + ], + "skip": "False", + "vars": [], + "vertices": [], + "faces": [], + "instances": [ + { + "identifier": "floor_sink_outter_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], face[5], False, face[2], face[5])" + }, + "transform": "move(0, 5 + width, 0) @ rot(0, 0, -90)" + }, + { + "identifier": "floor_sink_outter_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], face[2], face[5], face[4], False)" + }, + "transform": "ident()" + }, + { + "identifier": "floor_sink_border", + "skip": "False", + "params": { + "height": "height", + "length": "width", + "face": "(face[0], face[1], False, False, face[2], face[5])" + }, + "transform": "move(0, 2.5 + width, 0) @ rot(0, 0, -90)" + } + ] + }, + { + "identifier": "floor_wide_l_crossing", + "showcase": { + "title": "Wide Floor L Crossing", + "icon": "WideLCrossing", + "type": "floor", + "cfgs": [ + { + "field": "width_h_", + "type": "float", + "title": "Horizontal Width", + "desc": "The horizontal floor width of wide floor.", + "default": "5.0" + }, + { + "field": "width_v_", + "type": "float", + "title": "Vertical Width", + "desc": "The vertical floor width of wide floor.", + "default": "5.0" + }, + { + "field": "height_", + "type": "float", + "title": "Height", + "desc": "The height of block.", + "default": "5.0" + }, + { + "field": "face_", + "type": "face", + "title": "Face", + "desc": "Whether has some faces.", + "default": "(True, False, True, False, True, False)" + } + ] + }, + "params": [ + { + "field": "height", + "data": "height_" + }, + { + "field": "width_h", + "data": "width_h_" + }, + { + "field": "width_v", + "data": "width_v_" + }, + { + "field": "face", + "data": "face_" + } + ], + "skip": "False", + "vars": [], + "vertices": [], + "faces": [], + "instances": [ + { + "identifier": "floor_sink_outter_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], face[2], False, face[4], False)" + }, + "transform": "ident()" + }, + { + "identifier": "floor_sink_border", + "skip": "False", + "params": { + "length": "2.5 + width_h", + "height": "height", + "face": "(face[0], face[1], False, face[3], face[4], False)" + }, + "transform": "move(2.5, 0, 0)" + }, + { + "identifier": "floor_sink_border", + "skip": "False", + "params": { + "length": "2.5 + width_v", + "height": "height", + "face": "(face[0], face[1], face[5], False, face[2], False)" + }, + "transform": "move(0, 5 + width_v, 0) @ rot(0, 0, -90)" + }, + { + "identifier": "floor_sink_inner_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], False, face[3], False, face[5])" + }, + "transform": "move(2.5 + width_h, 2.5 + width_v, 0)" + }, + { + "identifier": "floor_flat", + "skip": "False", + "params": { + "height": "height", + "length": "width_h + 2.5", + "width": "width_v", + "face": "(face[0], face[1], False, face[3], False, False)", + "is_sink": "True" + }, + "transform": "move(2.5, 2.5, 0)" + }, + { + "identifier": "floor_flat", + "skip": "False", + "params": { + "height": "height", + "length": "width_h", + "width": "2.5", + "face": "(face[0], face[1], False, False, False, face[5])", + "is_sink": "True" + }, + "transform": "move(2.5, 2.5 + width_v, 0)" + } + ] + }, + { + "identifier": "floor_wide_t_crossing", + "showcase": { + "title": "Wide Floor T Crossing", + "icon": "WideTCrossing", + "type": "floor", + "cfgs": [ + { + "field": "width_h_", + "type": "float", + "title": "Horizontal Width", + "desc": "The horizontal floor width of wide floor.", + "default": "5.0" + }, + { + "field": "width_v_", + "type": "float", + "title": "Vertical Width", + "desc": "The vertical floor width of wide floor.", + "default": "5.0" + }, + { + "field": "height_", + "type": "float", + "title": "Height", + "desc": "The height of block.", + "default": "5.0" + }, + { + "field": "face_", + "type": "face", + "title": "Face", + "desc": "Whether has some faces.", + "default": "(True, False, True, False, False, False)" + } + ] + }, + "params": [ + { + "field": "height", + "data": "height_" + }, + { + "field": "width_h", + "data": "width_h_" + }, + { + "field": "width_v", + "data": "width_v_" + }, + { + "field": "face", + "data": "face_" + } + ], + "skip": "False", + "vars": [], + "vertices": [], + "faces": [], + "instances": [ + { + "identifier": "floor_sink_border", + "skip": "False", + "params": { + "length": "5 + width_v", + "height": "height", + "face": "(face[0], face[1], face[5], face[4], face[2], False)" + }, + "transform": "move(0, 5 + width_v, 0) @ rot(0, 0, -90)" + }, + { + "identifier": "floor_sink_inner_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], False, face[4], False, face[3])" + }, + "transform": "move(2.5 + width_h, 2.5, 0) @ rot(0, 0, -90)" + }, + { + "identifier": "floor_sink_inner_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], False, face[3], False, face[5])" + }, + "transform": "move(2.5 + width_h, 2.5 + width_v, 0)" + }, + { + "identifier": "floor_flat", + "skip": "False", + "params": { + "height": "height", + "length": "width_h", + "width": "5 + width_v", + "face": "(face[0], face[1], False, False, face[4], face[5])", + "is_sink": "True" + }, + "transform": "move(2.5, 0, 0)" + }, + { + "identifier": "floor_flat", + "skip": "False", + "params": { + "height": "height", + "length": "2.5", + "width": "width_v", + "face": "(face[0], face[1], False, face[3], False, False)", + "is_sink": "True" + }, + "transform": "move(2.5 + width_h, 2.5, 0)" + } + ] + }, + { + "identifier": "floor_wide_x_crossing", + "showcase": { + "title": "Wide Floor X Crossing", + "icon": "WideXCrossing", + "type": "floor", + "cfgs": [ + { + "field": "width_h_", + "type": "float", + "title": "Horizontal Width", + "desc": "The horizontal floor width of wide floor.", + "default": "5.0" + }, + { + "field": "width_v_", + "type": "float", + "title": "Vertical Width", + "desc": "The vertical floor width of wide floor.", + "default": "5.0" + }, + { + "field": "height_", + "type": "float", + "title": "Height", + "desc": "The height of block.", + "default": "5.0" + }, + { + "field": "face_", + "type": "face", + "title": "Face", + "desc": "Whether has some faces.", + "default": "(True, False, False, False, False, False)" + } + ] + }, + "params": [ + { + "field": "height", + "data": "height_" + }, + { + "field": "width_h", + "data": "width_h_" + }, + { + "field": "width_v", + "data": "width_v_" + }, + { + "field": "face", + "data": "face_" + } + ], + "skip": "False", + "vars": [], + "vertices": [], + "faces": [], + "instances": [ + { + "identifier": "floor_sink_inner_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], False, face[5], False, face[2])" + }, + "transform": "move(2.5, 2.5 + width_v, 0) @ rot(0, 0, -270)" + }, + { + "identifier": "floor_sink_inner_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], False, face[2], False, face[4])" + }, + "transform": "move(2.5, 2.5, 0) @ rot(0, 0, -180)" + }, + { + "identifier": "floor_sink_inner_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], False, face[4], False, face[3])" + }, + "transform": "move(2.5 + width_h, 2.5, 0) @ rot(0, 0, -90)" + }, + { + "identifier": "floor_sink_inner_corner", + "skip": "False", + "params": { + "height": "height", + "face": "(face[0], face[1], False, face[3], False, face[5])" + }, + "transform": "move(2.5 + width_h, 2.5 + width_v, 0)" + }, + { + "identifier": "floor_flat", + "skip": "False", + "params": { + "height": "height", + "length": "width_h", + "width": "5 + width_v", + "face": "(face[0], face[1], False, False, face[4], face[5])", + "is_sink": "True" + }, + "transform": "move(2.5, 0, 0)" + }, + { + "identifier": "floor_flat", + "skip": "False", + "params": { + "height": "height", + "length": "2.5", + "width": "width_v", + "face": "(face[0], face[1], False, face[3], False, False)", + "is_sink": "True" + }, + "transform": "move(2.5 + width_h, 2.5, 0)" + }, + { + "identifier": "floor_flat", + "skip": "False", + "params": { + "height": "height", + "length": "2.5", + "width": "width_v", + "face": "(face[0], face[1], face[2], False, False, False)", + "is_sink": "True" + }, + "transform": "move(0, 2.5, 0)" + } + ] + } +] \ No newline at end of file