mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-15 19:46:38 +00:00
The 50s/5s thing appears to be a mistake, given that 5s is 50ds and fast travel checks seconds against 50 and sets deciseconds to 50 on adjacent lines.
In addition to sending shuttles to docks, three extra modes are added:
Infinite Transit puts the shuttle in transit which lasts until another destination is chosen
Delete Shuttle does what it sounds like
Into The Sunset marks every mind on the shuttle as 'escaped' and then deletes the shuttle
Also puts the mobs in stasis so they won't suffocate, bleed out, etc. before roundend
It is also now possible to change the destination dock of the arrivals shuttle (example: an event where arrivals are sent to the Lavaland Wastes dock instead).
62 lines
1.8 KiB
Plaintext
62 lines
1.8 KiB
Plaintext
/obj/docking_port/mobile/assault_pod
|
|
name = "assault pod"
|
|
id = "steel_rain"
|
|
dwidth = 3
|
|
width = 7
|
|
height = 7
|
|
|
|
/obj/docking_port/mobile/assault_pod/request(obj/docking_port/stationary/S)
|
|
if(!(z in SSmapping.levels_by_trait(ZTRAIT_STATION))) //No launching pods that have already launched
|
|
return ..()
|
|
|
|
|
|
/obj/docking_port/mobile/assault_pod/initiate_docking(obj/docking_port/stationary/S1)
|
|
. = ..()
|
|
if(!istype(S1, /obj/docking_port/stationary/transit))
|
|
playsound(get_turf(src.loc), 'sound/effects/explosion1.ogg',50,1)
|
|
|
|
|
|
|
|
/obj/item/assault_pod
|
|
name = "Assault Pod Targeting Device"
|
|
icon = 'icons/obj/device.dmi'
|
|
icon_state = "gangtool-red"
|
|
item_state = "radio"
|
|
lefthand_file = 'icons/mob/inhands/misc/devices_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/misc/devices_righthand.dmi'
|
|
desc = "Used to select a landing zone for assault pods."
|
|
var/shuttle_id = "steel_rain"
|
|
var/dwidth = 3
|
|
var/dheight = 0
|
|
var/width = 7
|
|
var/height = 7
|
|
var/lz_dir = 1
|
|
|
|
|
|
/obj/item/assault_pod/attack_self(mob/living/user)
|
|
var/target_area
|
|
target_area = input("Area to land", "Select a Landing Zone", target_area) in GLOB.teleportlocs
|
|
var/area/picked_area = GLOB.teleportlocs[target_area]
|
|
if(!src || QDELETED(src))
|
|
return
|
|
|
|
var/turf/T = safepick(get_area_turfs(picked_area))
|
|
if(!T)
|
|
return
|
|
var/obj/docking_port/stationary/landing_zone = new /obj/docking_port/stationary(T)
|
|
landing_zone.id = "assault_pod([REF(src)])"
|
|
landing_zone.name = "Landing Zone"
|
|
landing_zone.dwidth = dwidth
|
|
landing_zone.dheight = dheight
|
|
landing_zone.width = width
|
|
landing_zone.height = height
|
|
landing_zone.setDir(lz_dir)
|
|
|
|
for(var/obj/machinery/computer/shuttle/S in GLOB.machines)
|
|
if(S.shuttleId == shuttle_id)
|
|
S.possible_destinations = "[landing_zone.id]"
|
|
|
|
to_chat(user, "Landing zone set.")
|
|
|
|
qdel(src)
|