Ported the Microlathe from Bay, and began autolathe refactor: Take II (#21668)

Continued from #19839

> Part 1 of a refactor to try and make our various fabricators use the
same system and basic code. This adds the microlathe as a proof of
concept to the whole refactor, ported from Baystation. Currently not
mapped anywhere.

> This also ports over Nebula's autolathe working sound, however it is
adapted to fit our code. As such, I went to the original sound and
re-cut it, now including start and stop sounds.

Plan is overall to make it much easier to add new types of fabricators. 

### Asset Licenses
The following assets that **have not** been created by myself are
included in this PR:

| Path | Original Author | License |
| --- | --- | --- |
| icons/obj/machinery/fabricators/microlathe.dmi |
[BloodyMan](https://github.com/BloodyMan) (Baystation 12) | CC-BY-SA |
| sound/machines/fabricators/autolathe/ |
[pencilina](https://freesound.org/people/pencilina/) | CC-0 |

---------

Co-authored-by: Cody Brittain <cbrittain10@live.com>
This commit is contained in:
Cody Brittain
2026-01-14 19:29:32 +00:00
committed by GitHub
co-authored by Cody Brittain
parent 5e69ccbd6a
commit ccbfbdc50a
146 changed files with 1406 additions and 955 deletions
@@ -114,6 +114,51 @@
mid_length = 5 SECONDS
volume = 75
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// FABRICATORS AND SUBTYPES
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/datum/looping_sound/fabricator
start_sound = 'sound/machines/fabricators/autolathe/autolathe_start.ogg'
start_length = 2.67 SECONDS
mid_sounds = list(
'sound/machines/fabricators/autolathe/autolathe_mid01.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid02.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid03.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid04.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid05.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid06.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid07.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid08.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid09.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid10.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid11.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid12.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid13.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid14.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid15.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid16.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid17.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid18.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid19.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid20.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid21.ogg' = 1,
'sound/machines/fabricators/autolathe/autolathe_mid22.ogg' = 1,
)
mid_length = 1 SECOND
end_sound = 'sound/machines/fabricators/autolathe/autolathe_end.ogg'
each_once = TRUE
in_order = TRUE
volume = 30
extra_range = MEDIUM_RANGE_SOUND_EXTRARANGE
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/datum/looping_sound/fabricator/minilathe
volume = 20
extra_range = SHORT_RANGE_SOUND_EXTRARANGE
ignore_walls = FALSE
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/datum/looping_sound/synth_fab
@@ -124,3 +169,4 @@
mid_length = 3 SECONDS
end_sound = 'sound/machines/synthfab/synthfab_end.ogg'
volume = 75