05AB1E, 50 4747 43 bytes
I)U¶" |ÿ /_\"XSvy" |ÿ|"}¶¶"U" |_|ÿ/___\ÿ VvV"¶ý|
Explanation
¶" |ÿ /_\" # push nose-cone I)U XSvy"_\"XSvy" |ÿ|"} # if input isn't empty push" body|_| ¶¶" |_|ÿ/___\ÿ VvV" # push base___\ ¶ý # join on newlineVvV"¶ý
Try it online!Try it online!
Currently 20% of the program exist onlySaved 4 bytes thanks to check for empty inputAdnan.
There
There has to be a better way to get around empty input.