Files
VOREStation/code/modules/xenoarcheaology/artifacts/gigadrill.dm
T
Kashargul 3735a31e05 Fix a bunch of issues and runtimes (#17951)
* selection target

* ugh

* fix deadmin

* larger

* fix paper icons

* those are inverted

* don't miss that

* fix all

* point transfer

* add nostrip flag to items

* un....  teppi

* .

* end life proc after qdel

* this could be null in very rare cases

* this has a lot of sleeps, someday should be refactored and check for qdeleted

* needs to be an object

* qdel check this

* use the rsc properly

* wtf?

* .

* fix narrate

* .

* push

* inform user, null it

* .

* can be null

* fix maint lurkers

* .

* spans

* .

* fix that too

* urg

* fix distillery

* don't wrap them

* needs usr

* Update cash_register.dm

* quick hook cleanup

* lots of fixes

* .

* clean that up for reasons
2025-07-05 00:45:18 -04:00

35 lines
1008 B
Plaintext

/obj/machinery/giga_drill
name = "alien drill"
desc = "A giant, alien drill mounted on long treads."
icon = 'icons/obj/mining.dmi'
icon_state = "gigadrill"
var/active = 0
var/drill_time = 10
var/turf/drilling_turf
density = TRUE
layer = ABOVE_JUNK_LAYER
/obj/machinery/giga_drill/attack_hand(mob/user as mob)
if(active)
active = 0
icon_state = "gigadrill"
to_chat(user, span_notice("You press a button and \the [src] slowly spins down."))
else
active = 1
icon_state = "gigadrill_mov"
to_chat(user, span_notice("You press a button and \the [src] shudders to life."))
/obj/machinery/giga_drill/Bump(atom/A)
if(active && !drilling_turf)
if(ismineralturf(A))
var/turf/simulated/mineral/M = A
drilling_turf = get_turf(src)
src.visible_message(span_bold("\The [src]") + " begins to drill into \the [M].")
anchored = TRUE
spawn(drill_time)
if(get_turf(src) == drilling_turf && active)
M.GetDrilled()
src.loc = M
drilling_turf = null
anchored = FALSE