"
-x|"•L®y[Â-Γ•5вèJ.º.∊
Try it online.
25 24 bytes alternative:
… -|•B°”Ñ•3вèJ3ä'x«».º.∊
Try it online.
Explanation:
"\n -x|" # Push string "\n -x|"
•L®y[Â-Γ• # Push compressed number 5960566858660563
5в # Converted to Base-5 as list:
# [2,2,2,2,2,2,3,0,4,1,1,4,1,1,3,0,4,1,1,4,2,2,3]
è # Index each digit into the string
J # And join the list together
# "\n -x|" and [2,2,2,2,2,2,3,0,4,1,1,4,1,1,3,0,4,1,1,4,2,2,3]
# → "------x\n| | x\n| |--x"
.º # Intersect mirror everything horizontally
.∊ # Intersect mirror everything vertically (and output implicitly)
… -| # Push string " -|"
•B°”Ñ• # Push compressed integer 193812448
3в # Converted to Base-3 as list: [1,1,1,1,1,1,2,0,0,2,0,0,2,0,0,2,1,1]
è # Index each digit into the string
J # And join the list together
# " -|" and [1,1,1,1,1,1,2,0,0,2,0,0,2,0,0,2,1,1]
# → "------| | | |--"
3ä # Split the string into three parts: ["------","| | ","| |--"]
'x« '# Append an "x" to each: ["------x","| | x","| |--x"]
» # Join by newlines: "------x\n| | x\n| |--x"
.º # Intersect mirror everything horizontally
.∊ # Intersect mirror everything vertically (and output implicitly)
See this 05AB1E tip of mine (section How to compress large integers?) to understand why •L®y[Â-Γ•
is 5960566858660563
and •B°”Ñ•
is 193812448
.
Thanks to @MagicOctopusUrn's ASCII-art generator for •L®y[Â-Γ•5BžLR"\n -x|"‡
and •B°”Ñ•3BžLR" -|"‡
, after which the transliterate has been golfed further by swapping the number and string on the stack, use в
instead of B
, and index into the string with è
.