""" The control room corridor on the command deck (the room between the sub bay's gallery and the bridge; "CIC" in the first passes), as the user marked it up on a screenshot on 2026-10-12: * two doors, one in each side wall, facing each other in the third bay from aft (the red outlines); * the wall with the red tick ("use this": the X-braced panel over dark quilted padding, SM_Wall_HB_A3) in place of the gold foil panels ("those golden nylons": SM_Wall_HB_A2 with MI_WallCover2); * no tables, no rails ("fences"), nothing on the floor: a clean corridor. It is the Engineer pack's gold car, four bays, sunken floor, so each side door sits five steps above the floor like the two end doors, with the pack's own stair turned to it. """ from cars import BAY, CAR_HALF, DOOR_GAP, Engineer # noqa: F401 from units import Item, Unit, frame N_BAYS = 4 DOOR_BAY = 2 # 0 = the aft bay GOLD = "MI_WallCover2" # the gold foil cover on SM_Wall_HB_A2 OFF_THE_FLOOR = ("SM_Rail_A", "SM_Wire_Wall_A", "SM_CeilingSign", "SM_GlassFloor_Wire_A", "SM_GlassFloor_Wire_B") # (SM_GlassFloor_Wire_*: the pack's cable that comes up through the floor and lies across it) def corridor(eng, swap="gold"): """The corridor as a unit (frame on its aft door plane, like every car). swap: "gold" = only the gold foil panels become the ticked wall (what the user named); "all" = the silver padded panels as well, so every wall panel is the ticked one.""" car = eng.car("gold", N_BAYS, side_doors=[(DOOR_BAY, +1), (DOOR_BAY, -1)], props="tidy") ticked = next(it for it in eng._src_car("gold").items if it.kind == "mesh" and it.name == "SM_Wall_HB_A3") out = [] for it in car.items: if it.kind == "mesh": if it.name in OFF_THE_FLOOR: continue if it.name.startswith("SM_Socket") and it.center.z < -0.8: continue # floor sockets (the ones on the door frames stay) gold = it.name == "SM_Wall_HB_A2" and str(it.data.get(4, "")).endswith(GOLD) padded = swap == "all" and it.name == "SM_Wall_HB_A" if gold or padded: out.append(Item("mesh", ticked.key, it.m, it.label, it.actor_class, dict(ticked.data), it.center)) continue if swap == "all" and it.name == "SM_Wall_Puffy_A": continue out.append(it) return Unit(out) def door_frames(x_aft, z): """Frames of the two side doors' planes (for the door set), given the corridor's aft door plane and threshold.""" x = x_aft + DOOR_GAP + (DOOR_BAY + 0.5) * BAY return [frame(x, s * CAR_HALF, z, 90.0 * s) for s in (1, -1)]