Shuttle update: Part Two: The Legion Protects (#7457)
@@ -104,6 +104,9 @@
|
||||
var/datum/wifi/sender/door/wifi_sender = new("tcfl_shuttle_lockdown", src)
|
||||
wifi_sender.activate("close")
|
||||
|
||||
var/datum/wifi/sender/door/wifi_sender_blast = new("tcfl_shuttle_release", src)
|
||||
wifi_sender_blast.activate("open")
|
||||
|
||||
/client/proc/response_team()
|
||||
set name = "Dispatch Emergency Response Team"
|
||||
set category = "Special Verbs"
|
||||
|
||||
@@ -59,37 +59,78 @@
|
||||
|
||||
//TCFL
|
||||
/datum/outfit/admin/ert/legion
|
||||
name = "TCFL Responder"
|
||||
name = "TCFL Volunteer"
|
||||
|
||||
head = /obj/item/clothing/head/legion
|
||||
uniform = /obj/item/clothing/under/legion
|
||||
l_ear = /obj/item/device/radio/headset/legion
|
||||
shoes = /obj/item/clothing/shoes/swat
|
||||
gloves = /obj/item/clothing/gloves/swat
|
||||
glasses = /obj/item/clothing/glasses/sunglasses
|
||||
shoes = /obj/item/clothing/shoes/swat/ert
|
||||
gloves = /obj/item/clothing/gloves/swat/ert
|
||||
glasses = /obj/item/clothing/glasses/sunglasses/aviator
|
||||
back = /obj/item/storage/backpack/legion
|
||||
id = /obj/item/card/id/distress/legion
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/storage/belt/utility/full = 1
|
||||
)
|
||||
backpack_contents = null
|
||||
|
||||
/datum/outfit/admin/ert/legion/get_id_access()
|
||||
return get_distress_access()
|
||||
|
||||
/datum/outfit/admin/ert/legion/specialist
|
||||
name = "TCFL Medic"
|
||||
name = "TCFL Legionnaire"
|
||||
accessory = /obj/item/clothing/accessory/legion/specialist
|
||||
|
||||
l_hand = /obj/item/storage/firstaid/adv
|
||||
r_hand = /obj/item/storage/firstaid/combat
|
||||
belt = /obj/item/storage/belt/medical
|
||||
/datum/outfit/admin/ert/legion/leader
|
||||
name = "TCFL Prefect"
|
||||
accessory = /obj/item/clothing/accessory/legion
|
||||
|
||||
/datum/outfit/admin/ert/legion/leader/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
|
||||
.=..()
|
||||
var/obj/item/card/id/distress/legion/I = H.wear_id
|
||||
I.access += (access_cent_specops)
|
||||
|
||||
/datum/outfit/admin/ert/legion/pilot
|
||||
name = "TCFL Dropship Pilot"
|
||||
uniform = /obj/item/clothing/under/legion/pilot
|
||||
head = /obj/item/clothing/head/helmet/legion_pilot
|
||||
suit = /obj/item/clothing/suit/storage/toggle/leather_jacket/flight/legion
|
||||
gloves = null
|
||||
back = null
|
||||
belt = /obj/item/storage/belt/security/tactical
|
||||
accessory = /obj/item/clothing/accessory/holster/hip
|
||||
accessory_contents = list(/obj/item/gun/energy/blaster/revolver/pilot = 1)
|
||||
|
||||
/datum/outfit/admin/ert/legion/sentinel
|
||||
name = "TCFL Sentinel"
|
||||
head = /obj/item/clothing/head/legion/sentinel
|
||||
uniform = /obj/item/clothing/under/legion/sentinel
|
||||
suit = /obj/item/clothing/suit/storage/vest/legion
|
||||
gloves = null
|
||||
belt = /obj/item/storage/belt/security/tactical
|
||||
suit_store = /obj/item/gun/energy/blaster/rifle
|
||||
accessory = /obj/item/clothing/accessory/holster/hip
|
||||
accessory_contents = list(/obj/item/gun/energy/blaster/revolver = 1)
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/gun/energy/blaster/carbine = 1,
|
||||
/obj/item/handcuffs/ziptie = 3,
|
||||
/obj/item/clothing/mask/gas/tactical = 1,
|
||||
/obj/item/storage/firstaid/regular = 1,
|
||||
/obj/item/clothing/gloves/swat/ert = 1
|
||||
)
|
||||
|
||||
belt_contents = list(
|
||||
/obj/item/reagent_containers/hypospray = 1,
|
||||
/obj/item/stack/medical/advanced/bruise_pack = 1,
|
||||
/obj/item/stack/medical/advanced/ointment = 1,
|
||||
/obj/item/reagent_containers/glass/bottle/thetamycin = 1
|
||||
/obj/item/melee/energy/sword/knife = 1,
|
||||
/obj/item/shield/energy/legion = 1,
|
||||
/obj/item/reagent_containers/spray/pepper = 1,
|
||||
/obj/item/grenade/flashbang = 2,
|
||||
/obj/item/melee/telebaton = 1
|
||||
)
|
||||
|
||||
/datum/outfit/admin/ert/legion/sentinel/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
|
||||
.=..()
|
||||
var/obj/item/card/id/distress/legion/I = H.wear_id
|
||||
I.access += (access_cent_specops)
|
||||
|
||||
//Mercenary
|
||||
/datum/outfit/admin/ert/mercenary
|
||||
name = "Mercenary Freelancer"
|
||||
|
||||
@@ -231,27 +231,30 @@
|
||||
/obj/item/implant/loyalty
|
||||
)
|
||||
|
||||
/datum/outfit/admin/nt/tcfl_commander
|
||||
name = "TCFL Commander"
|
||||
/datum/outfit/admin/nt/tcfl_legate
|
||||
name = "TCFL Legate"
|
||||
|
||||
uniform = /obj/item/clothing/under/legion
|
||||
shoes = /obj/item/clothing/shoes/jackboots
|
||||
uniform = /obj/item/clothing/under/legion/legate
|
||||
suit = /obj/item/clothing/suit/storage/vest/legion/legate
|
||||
gloves = /obj/item/clothing/gloves/swat/tactical
|
||||
shoes = /obj/item/clothing/shoes/swat/ert
|
||||
l_ear = /obj/item/device/radio/headset/legion
|
||||
head = /obj/item/clothing/head/legion_beret
|
||||
head = /obj/item/clothing/head/legion/legate
|
||||
glasses = /obj/item/clothing/glasses/sunglasses/aviator
|
||||
id = /obj/item/card/id/distress/legion
|
||||
belt = /obj/item/storage/belt/security/tactical
|
||||
r_pocket = /obj/item/clothing/mask/gas/tactical
|
||||
accessory = /obj/item/clothing/accessory/holster/hip
|
||||
accessory_contents = list(/obj/item/gun/projectile/revolver/mateba = 1)
|
||||
back = null
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/gun/projectile/revolver = 1,
|
||||
/obj/item/clothing/accessory/holster/hip = 1,
|
||||
/obj/item/clothing/accessory/legion = 1,
|
||||
/obj/item/storage/box/flashbangs = 1
|
||||
)
|
||||
backpack_contents = null
|
||||
|
||||
belt_contents = list(
|
||||
/obj/item/melee/baton/loaded = 1,
|
||||
/obj/item/handcuffs = 2,
|
||||
/obj/item/ammo_magazine/a357 = 2,
|
||||
/obj/item/device/flash = 1
|
||||
/obj/item/melee/energy/sword/knife = 1,
|
||||
/obj/item/handcuffs/ziptie = 2,
|
||||
/obj/item/ammo_magazine/a454 = 2,
|
||||
/obj/item/shield/energy/legion = 1
|
||||
)
|
||||
|
||||
/datum/outfit/admin/nt/cciaa
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
/obj/item/circuitboard/optable,
|
||||
/obj/item/stock_parts/scanning_module = 1
|
||||
)
|
||||
|
||||
|
||||
var/mob/living/carbon/human/victim = null
|
||||
var/strapped = 0.0
|
||||
var/suppressing = FALSE
|
||||
@@ -64,7 +64,7 @@
|
||||
if(user != victim && !use_check_and_message(user)) // Skip checks if you're doing it to yourself or turning it off, this is an anti-griefing mechanic more than anything.
|
||||
user.visible_message("<span class='warning'>\The [user] begins switching [suppressing ? "off" : "on"] \the [src]'s neural suppressor.</span>")
|
||||
if(!do_after(user, 30, src))
|
||||
return
|
||||
return
|
||||
if(!victim)
|
||||
to_chat(user, "<span class='warning'>There is nobody on \the [src]. It would be pointless to turn the suppressor on.</span>")
|
||||
|
||||
|
||||
@@ -137,9 +137,9 @@
|
||||
|
||||
|
||||
/obj/machinery/computer/pod/old
|
||||
icon_state = "oldcomp"
|
||||
|
||||
icon_screen = "library"
|
||||
icon = 'icons/obj/library.dmi'
|
||||
icon_state = "computer"
|
||||
icon_screen = null
|
||||
name = "DoorMex Control Computer"
|
||||
title = "Door Controls"
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@ CONTAINS:
|
||||
|
||||
Deployable items
|
||||
Barricades
|
||||
Deployable Kits
|
||||
|
||||
for reference:
|
||||
|
||||
@@ -141,6 +142,9 @@ for reference:
|
||||
else
|
||||
return 0
|
||||
|
||||
/obj/structure/barricade/steel/Initialize(var/newloc)
|
||||
.=..(newloc,"steel")
|
||||
|
||||
//Actual Deployable machinery stuff
|
||||
/obj/machinery/deployable
|
||||
name = "deployable"
|
||||
@@ -154,7 +158,7 @@ for reference:
|
||||
icon = 'icons/obj/objects.dmi'
|
||||
anchored = 0.0
|
||||
density = 1.0
|
||||
icon_state = "barrier0"
|
||||
icon_state = "barrier"
|
||||
var/health = 100.0
|
||||
var/maxhealth = 100.0
|
||||
var/locked = 0.0
|
||||
@@ -163,7 +167,7 @@ for reference:
|
||||
New()
|
||||
..()
|
||||
|
||||
src.icon_state = "barrier[src.locked]"
|
||||
src.icon_state = "[initial(icon_state)][src.locked]"
|
||||
|
||||
attackby(obj/item/W as obj, mob/user as mob)
|
||||
if (istype(W, /obj/item/card/id/))
|
||||
@@ -171,7 +175,7 @@ for reference:
|
||||
if (src.emagged < 2.0)
|
||||
src.locked = !src.locked
|
||||
src.anchored = !src.anchored
|
||||
src.icon_state = "barrier[src.locked]"
|
||||
src.icon_state = "[initial(icon_state)][src.locked]"
|
||||
if ((src.locked == 1.0) && (src.emagged < 2.0))
|
||||
to_chat(user, "Barrier lock toggled on.")
|
||||
return
|
||||
@@ -226,7 +230,7 @@ for reference:
|
||||
if(prob(50/severity))
|
||||
locked = !locked
|
||||
anchored = !anchored
|
||||
icon_state = "barrier[src.locked]"
|
||||
icon_state = "[initial(icon_state)][src.locked]"
|
||||
|
||||
CanPass(atom/movable/mover, turf/target, height=0, air_group=0)//So bullets will fly over and stuff.
|
||||
if(air_group || (height==0))
|
||||
@@ -262,3 +266,71 @@ for reference:
|
||||
spark(src, 2, alldirs)
|
||||
visible_message("<span class='warning'>BZZzZZzZZzZT</span>")
|
||||
return 1
|
||||
|
||||
/obj/machinery/deployable/barrier/legion
|
||||
name = "legion barrier"
|
||||
desc = "A deployable barrier, bearing the marks of the Tau Ceti Foreign Legion. Swipe your ID card to lock/unlock it."
|
||||
icon_state = "barrier_legion"
|
||||
req_access = list(access_legion)
|
||||
|
||||
/obj/item/deployable_kit
|
||||
name = "Emergency Floodlight Kit"
|
||||
desc = "A do-it-yourself kit for constructing the finest of emergency floodlights."
|
||||
icon = 'icons/obj/storage.dmi'
|
||||
icon_state = "inf_box"
|
||||
item_state = "syringe_kit"
|
||||
var/kit_product = /obj/machinery/floodlight
|
||||
var/assembly_time = 8 SECONDS
|
||||
|
||||
/obj/item/deployable_kit/attack_self(mob/user)
|
||||
to_chat(user, span("notice","You start assembling \the [src]..."))
|
||||
if(do_after(user, assembly_time))
|
||||
assemble_kit(user)
|
||||
qdel(src)
|
||||
|
||||
/obj/item/deployable_kit/proc/assemble_kit(mob/user)
|
||||
playsound(src.loc, 'sound/items/Screwdriver.ogg', 25, 1)
|
||||
var/atom/A = new kit_product(user.loc)
|
||||
user.visible_message(span("notice","[user] assembles \a [A]."),span("notice","You assemble \a [A]."))
|
||||
A.add_fingerprint(user)
|
||||
|
||||
/obj/item/deployable_kit/legion_barrier
|
||||
name = "legion barrier kit"
|
||||
desc = "A quick assembly kit for deploying id-lockable barriers in the field. Most commonly seen used for crowd control by corporate security."
|
||||
icon_state = "barrier_kit"
|
||||
w_class = 2
|
||||
kit_product = /obj/machinery/deployable/barrier/legion
|
||||
|
||||
/obj/item/deployable_kit/surgery_table
|
||||
name = "surgery table assembly kit"
|
||||
desc = "A quick assembly kit to deploy a surgery table in the field. Cannot be put together again after being unfolded, choose your spot wisely."
|
||||
icon = 'icons/obj/surgery.dmi'
|
||||
icon_state = "table_deployable"
|
||||
item_state = "table_parts"
|
||||
w_class = 4
|
||||
kit_product = /obj/machinery/optable
|
||||
assembly_time = 20 SECONDS
|
||||
|
||||
/obj/item/deployable_kit/surgery_table/assemble_kit(mob/user)
|
||||
..()
|
||||
var/free_spot = null
|
||||
for(var/check_dir in cardinal)
|
||||
var/turf/T = get_step(src, check_dir)
|
||||
if(turf_clear(T))
|
||||
free_spot = T
|
||||
break
|
||||
if(!free_spot)
|
||||
free_spot = src.loc
|
||||
new /obj/structure/curtain/open/medical(free_spot, src)
|
||||
new /obj/structure/curtain/open/medical(free_spot, src)
|
||||
|
||||
/obj/item/deployable_kit/legion_turret
|
||||
name = "legion blaster turret assembly kit"
|
||||
desc = "A quick assembly kit to deploy a blaster turret in the field. Swipe with a TCFL id card to configure it once assembled."
|
||||
icon = 'icons/obj/turrets.dmi'
|
||||
icon_state = "blaster_turret_kit"
|
||||
item_state = "table_parts"
|
||||
drop_sound = 'sound/items/drop/axe.ogg'
|
||||
w_class = 4
|
||||
kit_product = /obj/machinery/porta_turret/legion
|
||||
assembly_time = 15 SECONDS
|
||||
|
||||
@@ -146,6 +146,14 @@
|
||||
M.close()
|
||||
return
|
||||
|
||||
/obj/machinery/button/remote/blast_door/open_only/trigger()
|
||||
for(var/obj/machinery/door/blast/M in SSmachinery.all_machines)
|
||||
if(M.id == src.id)
|
||||
if(M.density)
|
||||
spawn(0)
|
||||
M.open()
|
||||
return
|
||||
|
||||
/*
|
||||
Emitter remote control
|
||||
*/
|
||||
|
||||
@@ -255,11 +255,26 @@
|
||||
icon_state = "pdoor0"
|
||||
density = 0
|
||||
opacity = 0
|
||||
|
||||
/obj/machinery/door/blast/odin/shuttle/ert
|
||||
_wifi_id = "ert_shuttle_lockdown"
|
||||
|
||||
/obj/machinery/door/blast/odin/shuttle/tcfl
|
||||
_wifi_id = "tcfl_shuttle_release"
|
||||
icon_state = "pdoor1"
|
||||
density = 1
|
||||
opacity = 1
|
||||
|
||||
/obj/machinery/door/blast/odin/shuttle/tcfl/shutter
|
||||
_wifi_id = "tcfl_shuttle_lockdown"
|
||||
density = 0
|
||||
opacity = 0
|
||||
icon_state_open = "shutter0"
|
||||
icon_state_opening = "shutterc0"
|
||||
icon_state_closed = "shutter1"
|
||||
icon_state_closing = "shutterc1"
|
||||
icon_state = "shutter0"
|
||||
damage = SHUTTER_CRUSH_DAMAGE
|
||||
|
||||
#undef BLAST_DOOR_CRUSH_DAMAGE
|
||||
#undef SHUTTER_CRUSH_DAMAGE
|
||||
|
||||
@@ -131,19 +131,3 @@
|
||||
cell = W
|
||||
to_chat(user, "You insert the power cell.")
|
||||
update_icon()
|
||||
|
||||
/obj/item/floodlight_diy
|
||||
name = "Emergency Floodlight Kit"
|
||||
desc = "A do-it-yourself kit for constructing the finest of emergency floodlights."
|
||||
icon = 'icons/obj/storage.dmi'
|
||||
icon_state = "inf_box"
|
||||
item_state = "syringe_kit"
|
||||
|
||||
/obj/item/floodlight_diy/attack_self(mob/user)
|
||||
to_chat(user, "<span class='notice'>You start piecing together the kit...</span>")
|
||||
if(do_after(user, 80))
|
||||
var/obj/machinery/floodlight/R = new /obj/machinery/floodlight(user.loc)
|
||||
user.visible_message("<span class='notice'>[user] assembles \a [R].\
|
||||
</span>", "<span class='notice'>You assemble \a [R].</span>")
|
||||
R.add_fingerprint(user)
|
||||
qdel(src)
|
||||
|
||||
@@ -37,6 +37,7 @@
|
||||
var/egun = 1 //holder to handle certain guns switching modes
|
||||
var/sprite_set = "carbine" //set of gun sprites the turret will use
|
||||
var/cover_set = 0 //set of cover sprites the turret will use
|
||||
var/name_override = FALSE
|
||||
|
||||
var/last_fired = 0 //1: if the turret is cooling down from a shot, 0: turret is ready to fire
|
||||
var/shot_delay = 15 //1.5 seconds between each shot
|
||||
@@ -128,7 +129,8 @@
|
||||
shot_delay = max(installation.fire_delay_wielded, 4)
|
||||
else
|
||||
shot_delay = max(installation.fire_delay, 4)
|
||||
name = "[installation.name] [name]"
|
||||
if(!name_override)
|
||||
name = "[installation.name] [name]"
|
||||
|
||||
var/area/control_area = get_area(src)
|
||||
if(istype(control_area))
|
||||
@@ -682,14 +684,14 @@
|
||||
|
||||
update_icon()
|
||||
var/obj/item/projectile/A
|
||||
|
||||
|
||||
if(emagged || lethal)
|
||||
A = new eprojectile(loc)
|
||||
playsound(loc, eshot_sound, 75, 1)
|
||||
else
|
||||
A = new projectile(loc)
|
||||
playsound(loc, shot_sound, 75, 1)
|
||||
|
||||
|
||||
A.accuracy = max(installation.accuracy * 0.25 , installation.accuracy_wielded * 0.25, A.accuracy * 0.25) // Because turrets should be better at shooting.
|
||||
|
||||
// Lethal/emagged turrets use twice the power due to higher energy beams
|
||||
@@ -1113,6 +1115,24 @@
|
||||
|
||||
req_one_access = list(access_syndicate)
|
||||
|
||||
/obj/machinery/porta_turret/legion
|
||||
enabled = 0
|
||||
use_power = 0
|
||||
icon_state = "cover_legion"
|
||||
lethal = 1
|
||||
lethal_icon = 1
|
||||
egun = 0
|
||||
installation = /obj/item/gun/energy/blaster/carbine
|
||||
sprite_set = "blaster"
|
||||
cover_set = "legion"
|
||||
eprojectile = /obj/item/projectile/energy/blaster/heavy
|
||||
|
||||
check_arrest = 0
|
||||
check_records = 0
|
||||
check_access = 1
|
||||
ailock = 1
|
||||
req_one_access = list(access_legion)
|
||||
|
||||
#undef TURRET_PRIORITY_TARGET
|
||||
#undef TURRET_SECONDARY_TARGET
|
||||
#undef TURRET_NOT_TARGET
|
||||
@@ -82,6 +82,7 @@
|
||||
name = "poster"
|
||||
desc = "A large piece of space-resistant printed paper. "
|
||||
icon = 'icons/obj/contraband.dmi'
|
||||
icon_state = "poster_map"
|
||||
anchored = 1
|
||||
var/serial_number //Will hold the value of src.loc if nobody initialises it
|
||||
var/poster_type //So mappers can specify a desired poster
|
||||
|
||||
@@ -15,3 +15,12 @@
|
||||
density = 0
|
||||
anchored = 1
|
||||
layer = 50
|
||||
|
||||
//Used for imitating an object's sprite for decorative purposes.
|
||||
/obj/effect/decal/fake_object
|
||||
name = "object"
|
||||
icon = 'icons/obj/structures.dmi'
|
||||
icon_state = "ladder11"
|
||||
density = 0
|
||||
anchored = 1
|
||||
layer = 3
|
||||
@@ -328,3 +328,18 @@
|
||||
icon_state = "bsposter66"
|
||||
name = "BFG 9000"
|
||||
desc = "A picture of a big freakin' gun."
|
||||
|
||||
/datum/poster/bay_67
|
||||
icon_state = "tcflposter"
|
||||
name = "Tau Ceti Foreign Legion"
|
||||
desc = "A TCFL recruitment poster."
|
||||
|
||||
/datum/poster/bay_68
|
||||
icon_state = "tcflposter2"
|
||||
name = "Tau Ceti Foreign Legion"
|
||||
desc = "A TCFL recruitment poster showcasing the benefits Synthetics gain when enlisting."
|
||||
|
||||
/datum/poster/bay_69
|
||||
icon_state = "grillposter"
|
||||
name = "grill"
|
||||
desc = "A poster of a smug looking tajaran grilling at a company get-together."
|
||||
@@ -41,6 +41,15 @@
|
||||
req_access = null
|
||||
req_one_access = list(access_engine_equip, access_atmospherics)
|
||||
|
||||
/obj/item/device/magnetic_lock/security/legion
|
||||
name = "legion magnetic door lock"
|
||||
req_access = (access_legion)
|
||||
w_class = 2
|
||||
|
||||
/obj/item/device/magnetic_lock/security/legion/Initialize()
|
||||
..()
|
||||
desc = "A large, ID locked device used for completely locking down airlocks. This one carries the insignia of the Tau Ceti Foreign Legion."
|
||||
|
||||
/obj/item/device/magnetic_lock/Initialize()
|
||||
. = ..()
|
||||
|
||||
@@ -470,7 +479,7 @@
|
||||
ui = new(user, src, "misc-maglock", 300, 100, "Maglock", list())
|
||||
else
|
||||
ui = new(user, src, "misc-maglock-config", 300, 100, "Maglock configuration", list("passcode" = passcode))
|
||||
|
||||
|
||||
ui.open()
|
||||
|
||||
/obj/item/device/magnetic_lock/keypad/attack_hand(var/mob/user)
|
||||
|
||||
@@ -461,6 +461,7 @@ var/const/NO_EMAG_ACT = -50
|
||||
/obj/item/card/id/distress/legion
|
||||
name = "\improper Tau Ceti Foreign Legion ID"
|
||||
assignment = "Tau Ceti Foreign Legion Volunteer"
|
||||
icon_state = "legion"
|
||||
|
||||
/obj/item/card/id/distress/legion/New()
|
||||
access = list(access_legion, access_maint_tunnels, access_external_airlocks, access_security, access_engine, access_engine_equip, access_medical, access_research, access_atmospherics, access_medical_equip)
|
||||
|
||||
@@ -243,8 +243,8 @@
|
||||
name = "tactical shield"
|
||||
desc = "A highly advanced ballistic shield crafted from durable materials and plated ablative panels. Can be collapsed for mobility."
|
||||
icon = 'icons/obj/tactshield.dmi'
|
||||
icon_state = "tactshield0"
|
||||
item_state = "tactshield0"
|
||||
icon_state = "tactshield"
|
||||
item_state = "tactshield"
|
||||
contained_sprite = 1
|
||||
force = 3.0
|
||||
throwforce = 3.0
|
||||
@@ -254,6 +254,12 @@
|
||||
attack_verb = list("shoved", "bashed")
|
||||
var/active = 0
|
||||
|
||||
/obj/item/shield/riot/tact/legion
|
||||
name = "legion ballistic shield"
|
||||
desc = "A highly advanced ballistic shield crafted from durable materials and plated ablative panels. Can be collapsed for mobility. This one has been painted in the colors of the Tau Ceti Foreign Legion."
|
||||
icon_state = "legion_tactshield"
|
||||
item_state = "legion_tactshield"
|
||||
|
||||
/obj/item/shield/riot/tact/handle_shield(mob/user)
|
||||
if(!active)
|
||||
return 0 //turn it on first!
|
||||
@@ -264,24 +270,26 @@
|
||||
|
||||
/obj/item/shield/riot/tact/attack_self(mob/living/user)
|
||||
active = !active
|
||||
icon_state = "tactshield[active]"
|
||||
item_state = "tactshield[active]"
|
||||
playsound(src.loc, 'sound/weapons/empty.ogg', 50, 1)
|
||||
|
||||
if(active)
|
||||
icon_state = "[initial(icon_state)]_[active]"
|
||||
item_state = "[initial(item_state)]_[active]"
|
||||
force = 5
|
||||
throwforce = 5
|
||||
throw_speed = 2
|
||||
w_class = 4
|
||||
slot_flags = SLOT_BACK
|
||||
to_chat(user, "<span class='notice'>You extend \the [src] downward with a sharp snap of your wrist.</span>")
|
||||
to_chat(user, span("notice","You extend \the [src] downward with a sharp snap of your wrist."))
|
||||
else
|
||||
icon_state = "[initial(icon_state)]"
|
||||
item_state = "[initial(item_state)]"
|
||||
force = 3
|
||||
throwforce = 3
|
||||
throw_speed = 3
|
||||
w_class = 3
|
||||
slot_flags = 0
|
||||
to_chat(user, "<span class='notice'>\The [src] folds inwards neatly as you snap your wrist upwards and push it back into the frame.</span>")
|
||||
to_chat(user, span("notice","\The [src] folds inwards neatly as you snap your wrist upwards and push it back into the frame."))
|
||||
|
||||
if(istype(user,/mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/H = user
|
||||
@@ -290,4 +298,3 @@
|
||||
|
||||
add_fingerprint(user)
|
||||
return
|
||||
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
"<span class='warning'>You extend the baton.</span>",\
|
||||
"You hear an ominous click.")
|
||||
icon_state = "telebaton_1"
|
||||
item_state = "nullrod"
|
||||
item_state = "telebaton_1"
|
||||
w_class = 3
|
||||
force = 15//quite robust
|
||||
attack_verb = list("smacked", "struck", "slapped")
|
||||
|
||||
@@ -1321,3 +1321,39 @@
|
||||
/obj/structure/largecrate/animal/adhomai/rafama = 0.5,
|
||||
/obj/structure/largecrate/animal/hakhma = 0.5
|
||||
)
|
||||
|
||||
/obj/random/random_flag
|
||||
name = "random flag"
|
||||
desc = "Contains a random boxed flag or banner."
|
||||
icon = 'icons/obj/decals.dmi'
|
||||
icon_state = "flag_boxed"
|
||||
spawnlist = list(
|
||||
/obj/item/flag/biesel,
|
||||
/obj/item/flag/biesel/l,
|
||||
/obj/item/flag/dominia,
|
||||
/obj/item/flag/dominia/l,
|
||||
/obj/item/flag/dpra,
|
||||
/obj/item/flag/dpra/l,
|
||||
/obj/item/flag/elyra,
|
||||
/obj/item/flag/elyra/l,
|
||||
/obj/item/flag/eridani,
|
||||
/obj/item/flag/eridani/l,
|
||||
/obj/item/flag/hegemony,
|
||||
/obj/item/flag/hegemony/l,
|
||||
/obj/item/flag/heph,
|
||||
/obj/item/flag/heph/l,
|
||||
/obj/item/flag/jargon,
|
||||
/obj/item/flag/jargon/l,
|
||||
/obj/item/flag/nanotrasen,
|
||||
/obj/item/flag/nanotrasen/l,
|
||||
/obj/item/flag/nka,
|
||||
/obj/item/flag/nka/l,
|
||||
/obj/item/flag/pra,
|
||||
/obj/item/flag/pra/l,
|
||||
/obj/item/flag/sol,
|
||||
/obj/item/flag/sol/l,
|
||||
/obj/item/flag/vaurca,
|
||||
/obj/item/flag/vaurca/l,
|
||||
/obj/item/flag/zenghu,
|
||||
/obj/item/flag/zenghu/l
|
||||
)
|
||||
@@ -526,6 +526,15 @@
|
||||
icon_opened = "weaponcrateopen"
|
||||
icon_closed = "weaponcrate"
|
||||
|
||||
/obj/structure/closet/crate/secure/legion
|
||||
name = "foreign legion supply crate"
|
||||
desc = "A secure supply crate, It carries the insignia of the Tau Ceti Foreign Legion. It appears quite scuffed."
|
||||
icon_state = "tcflcrate"
|
||||
icon_opened = "tcflcrateopen"
|
||||
icon_closed = "tcflcrate"
|
||||
req_access = list(access_legion)
|
||||
layer = OBJ_LAYER - 0.01
|
||||
|
||||
/obj/structure/closet/crate/secure/phoron
|
||||
name = "phoron crate"
|
||||
desc = "A secure phoron crate."
|
||||
|
||||
@@ -590,6 +590,26 @@
|
||||
var/flag_path
|
||||
var/flag_size = 0
|
||||
|
||||
/obj/structure/sign/flag/biesel
|
||||
name = "Republic of Biesel flag"
|
||||
desc = "The colours and symbols of the Republic of Biesel."
|
||||
icon_state = "biesel"
|
||||
|
||||
/obj/structure/sign/flag/biesel/left
|
||||
icon_state = "biesel_l"
|
||||
|
||||
/obj/structure/sign/flag/biesel/right
|
||||
icon_state = "biesel_r"
|
||||
|
||||
/obj/item/flag/biesel
|
||||
name = "Republic of Biesel flag"
|
||||
desc = "The flag representing the Republic of Biesel."
|
||||
flag_path = "biesel"
|
||||
|
||||
/obj/item/flag/biesel/l
|
||||
name = "Large Republic of Biesel flag"
|
||||
flag_size = 1
|
||||
|
||||
/obj/item/flag/afterattack(var/atom/A, var/mob/user, var/adjacent, var/clickparams)
|
||||
if (!adjacent)
|
||||
return
|
||||
|
||||
@@ -189,6 +189,19 @@
|
||||
icon_state = "bridge"
|
||||
anchored = 1
|
||||
|
||||
/obj/structure/bed/chair/office/bridge/legion
|
||||
name = "legion pilot seat"
|
||||
desc = "A comfortable seat for a pilot."
|
||||
icon_state = "bridge_legion"
|
||||
|
||||
/obj/structure/bed/chair/office/bridge/generic
|
||||
icon_state = "bridge_generic"
|
||||
|
||||
/obj/structure/bed/chair/office/bridge/pilot
|
||||
name = "pilot seat"
|
||||
desc = "A comfortable seat for a pilot."
|
||||
icon_state = "pilot"
|
||||
|
||||
/obj/structure/bed/chair/office/Initialize()
|
||||
. = ..()
|
||||
var/image/I = image(icon, "[icon_state]_over")
|
||||
|
||||
@@ -494,6 +494,12 @@
|
||||
smooth = SMOOTH_TRUE
|
||||
can_be_unanchored = TRUE
|
||||
|
||||
/obj/structure/window/shuttle/legion
|
||||
name = "cockpit window"
|
||||
icon = 'icons/obj/smooth/shuttle_window_legion.dmi'
|
||||
health = 160
|
||||
maxhealth = 160
|
||||
|
||||
/obj/structure/window/shuttle/crescent
|
||||
desc = "It looks rather strong."
|
||||
|
||||
|
||||
@@ -262,4 +262,16 @@
|
||||
/turf/simulated/floor/vaurca
|
||||
name = "alien floor"
|
||||
icon = 'icons/turf/flooring/misc.dmi'
|
||||
icon_state = "vaurca"
|
||||
icon_state = "vaurca"
|
||||
|
||||
/turf/simulated/floor/foamedmetal
|
||||
name = "foamed metal"
|
||||
icon = 'icons/effects/effects.dmi'
|
||||
icon_state = "metalfoam"
|
||||
footstep_sound = "gravelstep"
|
||||
|
||||
/turf/simulated/floor/foamedmetal/attack_hand(var/mob/user)
|
||||
user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN)
|
||||
if(ishuman(user))
|
||||
ChangeTurf(/turf/space)
|
||||
to_chat(user, span("notice","You clear away the metal foam."))
|
||||
@@ -108,6 +108,9 @@
|
||||
canSmoothWith = null
|
||||
color = "#6C7364"
|
||||
|
||||
/turf/simulated/wall/shuttle/legion
|
||||
icon = 'icons/turf/smooth/shuttle_wall_legion.dmi'
|
||||
|
||||
//--Floors--//
|
||||
|
||||
/turf/simulated/floor/shuttle
|
||||
@@ -170,6 +173,14 @@
|
||||
/turf/simulated/shuttle_roof/dark
|
||||
)
|
||||
|
||||
/turf/simulated/shuttle_roof/legion
|
||||
name = "dropship roof"
|
||||
icon = 'icons/turf/smooth/roof_legion.dmi'
|
||||
icon_state = "roof_legion"
|
||||
canSmoothWith = list(
|
||||
/turf/simulated/shuttle_roof/legion
|
||||
)
|
||||
|
||||
/turf/simulated/shuttle_roof/ex_act(severity)
|
||||
if(severity == 1)
|
||||
src.ChangeTurf(baseturf)
|
||||
|
||||
@@ -24,10 +24,14 @@
|
||||
heat_protection = HANDS
|
||||
max_heat_protection_temperature = GLOVES_MAX_HEAT_PROTECTION_TEMPERATURE
|
||||
|
||||
/obj/item/clothing/gloves/swat/ert
|
||||
species_restricted = null
|
||||
|
||||
/obj/item/clothing/gloves/swat/tactical
|
||||
name = "\improper tactical gloves"
|
||||
icon_state = "black_leather"
|
||||
item_state = "black_leather_gloves"
|
||||
species_restricted = null
|
||||
|
||||
/obj/item/clothing/gloves/combat //Combined effect of SWAT gloves and insulated gloves
|
||||
desc = "These tactical gloves are somewhat fire and impact resistant."
|
||||
|
||||
@@ -211,7 +211,7 @@
|
||||
|
||||
/obj/item/clothing/head/helmet/tank
|
||||
name = "padded cap"
|
||||
desc = "A padded skullcup for those prone to bumping their heads against hard surfaces."
|
||||
desc = "A padded skullcap for those prone to bumping their heads against hard surfaces."
|
||||
icon_state = "tank"
|
||||
flags_inv = BLOCKHEADHAIR
|
||||
color = "#5f5f5f"
|
||||
@@ -224,6 +224,9 @@
|
||||
/obj/item/clothing/head/helmet/tank/tan
|
||||
color = "#ae9f79"
|
||||
|
||||
/obj/item/clothing/head/helmet/tank/legion
|
||||
color = "#5674a6"
|
||||
|
||||
//Non-hardsuit ERT helmets.
|
||||
/obj/item/clothing/head/helmet/ert
|
||||
name = "emergency response team helmet"
|
||||
@@ -264,10 +267,47 @@
|
||||
desc = "A large helmet meant to fit some pretty big heads. It has a ballistic faceplate on the front of it."
|
||||
icon_state = "legion_helmet"
|
||||
body_parts_covered = HEAD|FACE|EYES
|
||||
flags_inv = HIDEEARS|HIDEEYES|HIDEFACE
|
||||
flags_inv = HIDEEARS|HIDEEYES|BLOCKHEADHAIR
|
||||
armor = list(melee = 50, bullet = 30, laser = 30, energy = 15, bomb = 40, bio = 0, rad = 0)
|
||||
siemens_coefficient = 0.35
|
||||
|
||||
action_button_name = "Toggle Helmet Light"
|
||||
light_overlay = "helmet_light_dual"
|
||||
brightness_on = 6
|
||||
light_wedge = LIGHT_WIDE
|
||||
on = 0
|
||||
|
||||
/obj/item/clothing/head/helmet/legion_pilot
|
||||
name = "foreign legion flight helmet"
|
||||
desc = "A helmet with an aged pilot visor mounted to it. The visor feeds its wearer in-flight information via a heads-up display."
|
||||
icon_state = "legion_pilot_up"
|
||||
body_parts_covered = null
|
||||
flags_inv = BLOCKHEADHAIR
|
||||
armor = list(melee = 40, bullet = 20, laser = 20, energy = 10, bomb = 40, bio = 0, rad = 0)
|
||||
siemens_coefficient = 0.35
|
||||
action_button_name = "Flip Pilot Visor"
|
||||
|
||||
/obj/item/clothing/head/helmet/legion_pilot/attack_self()
|
||||
flip_visor()
|
||||
|
||||
/obj/item/clothing/head/helmet/legion_pilot/verb/flip_visor()
|
||||
set category = "Object"
|
||||
set name = "Flip pilot visor"
|
||||
var/mob/living/carbon/human/user
|
||||
if(istype(usr,/mob/living/carbon/human))
|
||||
user = usr
|
||||
else
|
||||
return
|
||||
if(icon_state == initial(icon_state))
|
||||
icon_state = "legion_pilot"
|
||||
to_chat(user, "You flip down the pilot visor.")
|
||||
sound_to(user, 'sound/items/goggles_charge.ogg')
|
||||
else
|
||||
icon_state = initial(icon_state)
|
||||
to_chat(user, "You flip up the pilot visor.")
|
||||
update_clothing_icon()
|
||||
user.update_action_buttons()
|
||||
|
||||
/obj/item/clothing/head/helmet/tajara
|
||||
name = "amohdan swordsmen helmet"
|
||||
desc = "A helmet used by the traditional warriors of Amohda."
|
||||
|
||||
@@ -270,11 +270,6 @@
|
||||
flags_inv = BLOCKHAIR
|
||||
siemens_coefficient = 2.0
|
||||
|
||||
/obj/item/clothing/head/legion_beret
|
||||
name = "TCFL dress beret"
|
||||
desc = "A pale blue dress beret with a rubber insignia of a torch, surrounded by red stars and the letters \"TCFL\". A common good luck charm among former legionaires."
|
||||
icon_state = "legion_beret"
|
||||
|
||||
/obj/item/clothing/head/chicken
|
||||
name = "chicken suit head"
|
||||
desc = "Bkaw!"
|
||||
@@ -484,6 +479,33 @@
|
||||
body_parts_covered = 0
|
||||
drop_sound = 'sound/items/drop/herb.ogg'
|
||||
|
||||
//Tau Ceti Foreign Legion
|
||||
|
||||
/obj/item/clothing/head/legion_beret
|
||||
name = "TCFL dress beret"
|
||||
desc = "A pale blue dress beret with a rubber insignia of a torch, surrounded by red stars and the letters \"TCFL\". A common good luck charm among former legionaires."
|
||||
icon_state = "legion_beret"
|
||||
item_state = "legion_beret"
|
||||
|
||||
/obj/item/clothing/head/legion
|
||||
name = "TCFL field beret"
|
||||
desc = "A hardy, stark red field beret with a rubber insignia of a torch, surrounded by red stars and the letters \"TCFL\". Offers some minor protection."
|
||||
armor = list(melee = 20, bullet = 10, laser = 10, energy = 10, bomb = 10, bio = 0, rad = 0)
|
||||
icon_state = "legion_field_beret"
|
||||
item_state = "legion_field_beret"
|
||||
|
||||
/obj/item/clothing/head/legion/sentinel
|
||||
name = "TCFL sentinel beret"
|
||||
desc = "A hardy, stark purple sentinel beret with a rubber insignia of a torch, surrounded by red stars and the letters \"TCFL\". Offers some minor protection."
|
||||
icon_state = "legion_sentinel_beret"
|
||||
item_state = "legion_sentinel_beret"
|
||||
|
||||
/obj/item/clothing/head/legion/legate
|
||||
name = "TCFL peaked cap"
|
||||
desc = "A stark red peaked cap. Worn by senior officers of the Tau Ceti Foreign Legion."
|
||||
icon_state = "legion_cap"
|
||||
item_state = "legion_cap"
|
||||
|
||||
//golden beep stuff
|
||||
|
||||
/obj/item/clothing/head/headchain
|
||||
@@ -587,7 +609,7 @@
|
||||
body_parts_covered = HEAD|EYES
|
||||
cold_protection = HEAD
|
||||
min_cold_protection_temperature = SPACE_HELMET_MIN_COLD_PROTECTION_TEMPERATURE
|
||||
|
||||
|
||||
/obj/item/clothing/head/vaurca_breeder
|
||||
name = "zo'ra representative shroud"
|
||||
desc = "Large shroud used by Zo'ra representatives."
|
||||
|
||||
@@ -87,7 +87,9 @@
|
||||
/obj/item/ammo_casing,
|
||||
/obj/item/melee/baton,
|
||||
/obj/item/melee/energy/sword,
|
||||
/obj/item/handcuffs
|
||||
/obj/item/handcuffs,
|
||||
/obj/item/material/twohanded/fireaxe,
|
||||
/obj/item/rfd/construction
|
||||
)
|
||||
|
||||
species_restricted = list("Human","Tajara","Unathi", "Skrell", "Machine", "Vaurca")
|
||||
|
||||
@@ -550,6 +550,19 @@
|
||||
armor = list(melee = 50, bullet = 30, laser = 30, energy = 15, bomb = 40, bio = 0, rad = 0)
|
||||
siemens_coefficient = 0.35
|
||||
|
||||
/obj/item/clothing/suit/storage/vest/legion/legate
|
||||
name = "foreign legion legate coat"
|
||||
desc = "A luxurious coat made out of sturdy synthetic fabrics and reinforced with lightweight alloys. Only worn by some of the highest decorated officers of the TCFL."
|
||||
icon_state = "legion_coat"
|
||||
item_state = "legion_coat"
|
||||
|
||||
/obj/item/clothing/suit/storage/vest/legion/legate/Initialize()
|
||||
. = ..()
|
||||
pockets = new/obj/item/storage/internal(src)
|
||||
pockets.storage_slots = 4
|
||||
pockets.max_w_class = 2
|
||||
pockets.max_storage_space = 8
|
||||
|
||||
/obj/item/clothing/suit/armor/vest/idris
|
||||
name = "Idris Reclamation Unit coat"
|
||||
desc = "A coat worn by the Idris reclamation units, notorious across space."
|
||||
|
||||
@@ -306,6 +306,16 @@
|
||||
icon_open = "wflight_open"
|
||||
icon_closed = "wflight"
|
||||
|
||||
/obj/item/clothing/suit/storage/toggle/leather_jacket/flight/legion
|
||||
name = "tcfl flight jacket"
|
||||
desc = "A Tau Ceti Foreign Legion pilot's jacket made from a silky, shiny nanonylon material and lined with tough, protective synthfabrics."
|
||||
icon_state = "lflight"
|
||||
item_state = "lflight"
|
||||
icon_open = "lflight_open"
|
||||
icon_closed = "lflight"
|
||||
armor = list(melee = 40, bullet = 10, laser = 20, energy = 10, bomb = 30, bio = 0, rad = 0)
|
||||
siemens_coefficient = 0.35
|
||||
|
||||
/obj/item/clothing/suit/storage/toggle/leather_jacket/military
|
||||
name = "military jacket"
|
||||
desc = "A military-styled jacket made from thick, distressed canvas. Popular among Martian punks. Patches not included."
|
||||
|
||||
@@ -704,6 +704,23 @@
|
||||
worn_state = "taucetilegion"
|
||||
siemens_coefficient = 0.7
|
||||
|
||||
/obj/item/clothing/under/legion/sentinel
|
||||
name = "Tau Ceti Foreign Legion sentinel uniform."
|
||||
desc = "A blue uniform with purple trimming, indicating that the wearer is a sentinel of the TCFL."
|
||||
worn_state = "taucetilegion_sentinel"
|
||||
|
||||
/obj/item/clothing/under/legion/legate
|
||||
name = "Legate uniform"
|
||||
desc = "A stark red uniform worn by senior officers of the Tau Ceti Foreign Legion."
|
||||
icon_state = "taucetilegion_legate"
|
||||
worn_state = "taucetilegion_legate"
|
||||
|
||||
/obj/item/clothing/under/legion/pilot
|
||||
name = "Tau Ceti Foreign Legion flightsuit"
|
||||
desc = "The uniform worn by Tau Ceti Foreign Legion pilots."
|
||||
icon_state = "taucetilegion_pilot"
|
||||
worn_state = "taucetilegion_pilot"
|
||||
|
||||
/obj/item/clothing/under/offworlder
|
||||
name = "\improper CR suit"
|
||||
desc = "A very tight form-fitting padded suit that looks extremely comfortable to wear."
|
||||
@@ -744,7 +761,7 @@
|
||||
icon_state = "lance_dress_f"
|
||||
item_state = "lance_dress_f"
|
||||
worn_state = "lance_dress_f"
|
||||
|
||||
|
||||
|
||||
/obj/item/clothing/under/dress/lance_dress/male
|
||||
name = "lance dress uniform"
|
||||
|
||||
@@ -28,25 +28,25 @@
|
||||
mob_name_pick_message = "Pick a name."
|
||||
|
||||
/datum/ghostspawner/human/admin/legion_commander
|
||||
short_name = "legioncommander"
|
||||
name = "TCFL Commander"
|
||||
desc = "Command the TCFL, a walking and talking joke, whos members regularly die before they even arrive at their target."
|
||||
short_name = "legionlegate"
|
||||
name = "TCFL Legate"
|
||||
desc = "Command the TCFL onboard BLV The Tower, a legion patrolship from where Task Force XIII - Fortune operates from."
|
||||
|
||||
landmark_name = "TCFLCommander"
|
||||
landmark_name = "TCFLLegate"
|
||||
req_perms = R_CCIAA
|
||||
|
||||
//Vars related to human mobs
|
||||
outfit = /datum/outfit/admin/nt/tcfl_commander
|
||||
possible_species = list("Human")
|
||||
outfit = /datum/outfit/admin/nt/tcfl_legate
|
||||
possible_species = list("Human","M'sai Tajara","Skrell", "Unathi","Baseline Frame")
|
||||
possible_genders = list(MALE,FEMALE)
|
||||
allow_appearance_change = APPEARANCE_PLASTICSURGERY
|
||||
|
||||
assigned_role = "Tau Ceti Foreign Legion Commander"
|
||||
special_role = "TCFL Commander"
|
||||
assigned_role = "Tau Ceti Foreign Legion Legate"
|
||||
special_role = "TCFL Legate"
|
||||
respawn_flag = null
|
||||
|
||||
mob_name = null
|
||||
mob_name_prefix = "Cmdr. "
|
||||
mob_name_prefix = "Lgt. "
|
||||
mob_name_pick_message = "Pick a callsign or last-name."
|
||||
|
||||
/datum/ghostspawner/human/admin/cciaagent
|
||||
@@ -74,7 +74,7 @@
|
||||
/datum/ghostspawner/human/admin/cciaescort
|
||||
short_name = "cciaescort"
|
||||
name = "CCIA Escort"
|
||||
desc = "Escort a CCIA Agent to the station, watch them annoy the crew and prevent them from throwing themselvs under their own shuttle."
|
||||
desc = "Escort a CCIA Agent to the station, watch them annoy the crew and prevent them from throwing themselves under their own shuttle."
|
||||
|
||||
enabled = FALSE
|
||||
landmark_name = "CCIAEscort"
|
||||
@@ -122,7 +122,29 @@
|
||||
mob_name_prefix = "Spec. "
|
||||
mob_name_pick_message = "Pick a callsign or last-name."
|
||||
|
||||
/datum/ghostspawner/human/admin/tcflsentinel
|
||||
short_name = "tcflsentinel"
|
||||
name = "TCFL Sentinel"
|
||||
desc = "Secure BLV The Tower from any would-be interlopers, provide assistance to returning personnel and/or evacuees."
|
||||
|
||||
enabled = FALSE
|
||||
spawnpoints = list("TCFLSentinel")
|
||||
req_perms = null
|
||||
req_perms_edit = R_CCIAA
|
||||
max_count = 4
|
||||
|
||||
outfit = /datum/outfit/admin/ert/legion/sentinel
|
||||
possible_species = list("Human", "Tajara", "M'sai Tajara", "Zhan-Khazan Tajara", "Skrell", "Unathi", "Vaurca Warrior", "Vaurca Worker", "Baseline Frame", "Diona")
|
||||
possible_genders = list(MALE,FEMALE)
|
||||
allow_appearance_change = APPEARANCE_PLASTICSURGERY
|
||||
|
||||
assigned_role = "TCFL Sentinel"
|
||||
special_role = "TCFL Sentinel"
|
||||
respawn_flag = null
|
||||
|
||||
mob_name = null
|
||||
mob_name_prefix = "Sent. "
|
||||
mob_name_pick_message = "Pick a callsign or last-name."
|
||||
|
||||
/client/proc/despawn()
|
||||
set name = "Despawn"
|
||||
|
||||
@@ -59,29 +59,43 @@
|
||||
possible_species = list("Human", "Skrell")
|
||||
|
||||
//TCFL ERT
|
||||
|
||||
/datum/ghostspawner/human/ert/tcfl
|
||||
name = "TCFL Responder"
|
||||
name = "TCFL Volunteer"
|
||||
short_name = "tcflr"
|
||||
desc = "The Tau Ceti Foreign Legion's rank and file."
|
||||
welcome_message = "The Tau Ceti Foreign Legion works for the Republic of Biesel; your job is to protect the place you're heading to and fix the problem. You can be a volounteer (Vol.) or a legionnaire (Lgn.). The former is recommended for new players."
|
||||
welcome_message = "The Tau Ceti Foreign Legion works for the Republic of Biesel; your job is to protect the place you're heading to and fix the problem. You can be a Volunteer (Vol.), Legionnaire (Lgn.) or Prefect (Pfct.). The first option is recommended for new players."
|
||||
max_count = 3
|
||||
outfit = /datum/outfit/admin/ert/legion
|
||||
spawnpoints = list("TCFLERTSpawn")
|
||||
possible_species = list("Human", "Tajara", "Tajara", "M'sai Tajara", "Zhan-Khazan Tajara", "Skrell", "Unathi", "Vaurca Warrior", "Vaurca Worker", "Baseline Frame", "Diona")
|
||||
|
||||
/datum/ghostspawner/human/ert/tcfl/specialist
|
||||
name = "TCFL Medical Specialist"
|
||||
name = "TCFL Legionnaire"
|
||||
short_name = "tcfls"
|
||||
max_count = 2
|
||||
desc = "A medic of the Tau Ceti Foreign Legion."
|
||||
desc = "An experienced Legionnaire of the TCFL."
|
||||
outfit = /datum/outfit/admin/ert/legion/specialist
|
||||
mob_name_prefix = "Lgn. "
|
||||
|
||||
/datum/ghostspawner/human/ert/tcfl/leader
|
||||
name = "TCFL Leader"
|
||||
name = "TCFL Prefect"
|
||||
short_name = "tcfll"
|
||||
max_count = 1
|
||||
desc = "A leader of Task Force XIII - Fortune."
|
||||
outfit = /datum/outfit/admin/ert/legion/leader
|
||||
mob_name_prefix = "Pfct. "
|
||||
spawnpoints = list("TCFLERTSpawn - Prefect")
|
||||
|
||||
/datum/ghostspawner/human/ert/tcfl/pilot
|
||||
name = "TCFL Dropship Pilot"
|
||||
short_name = "tcflpl"
|
||||
max_count = 1
|
||||
desc = "A dropship pilot of the TCFL."
|
||||
welcome_message = "As a pilot of the Tau Ceti Foreign Legion, your job is to pilot your assigned dropship and keep it safe from any hostile forces. You may also have to assist the main task force in a supporting role if the need arises."
|
||||
outfit = /datum/outfit/admin/ert/legion/pilot
|
||||
mob_name_prefix = "PL. "
|
||||
spawnpoints = list("TCFLERTSpawn - Pilot")
|
||||
|
||||
//Mercenary ERT
|
||||
/datum/ghostspawner/human/ert/mercenary
|
||||
|
||||
@@ -20,7 +20,7 @@ var/global/list/minevendor_list = list( //keep in order of price
|
||||
new /datum/data/mining_equipment("Compressed matter cartridge", /obj/item/rfd_ammo, 50, 100),
|
||||
new /datum/data/mining_equipment("Class E Kinetic Accelerator", /obj/item/gun/custom_ka/frame01/prebuilt, 12, 200),
|
||||
new /datum/data/mining_equipment("Ore Box", /obj/structure/ore_box, -1, 150, 1),
|
||||
new /datum/data/mining_equipment("Emergency Floodlight", /obj/item/floodlight_diy, -1, 150, 1),
|
||||
new /datum/data/mining_equipment("Emergency Floodlight", /obj/item/deployable_kit, -1, 150, 1),
|
||||
new /datum/data/mining_equipment("Premium Cigar", /obj/item/clothing/mask/smokable/cigarette/cigar/havana, 30, 150),
|
||||
new /datum/data/mining_equipment("Seismic Charge", /obj/item/plastique/seismic, 25, 150),
|
||||
new /datum/data/mining_equipment("Deployable Ladder", /obj/item/ladder_mobile, 5, 200),
|
||||
|
||||
@@ -377,6 +377,18 @@
|
||||
icon_state = "redflag"
|
||||
light_color = LIGHT_COLOR_RED
|
||||
|
||||
/obj/item/stack/flag/red/planted
|
||||
name = "red beacon"
|
||||
icon_state = "redflag_open"
|
||||
amount = 1
|
||||
upright = 1
|
||||
anchored = 1
|
||||
|
||||
/obj/item/stack/flag/red/planted/Initialize()
|
||||
..()
|
||||
base_state = "redflag"
|
||||
set_light(2)
|
||||
|
||||
/obj/item/stack/flag/yellow
|
||||
name = "yellow beacons"
|
||||
singular_name = "yellow beacon"
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
item_state = "blaster_pistol"
|
||||
fire_sound = 'sound/weapons/Laser.ogg'
|
||||
slot_flags = SLOT_BELT|SLOT_HOLSTER
|
||||
w_class = 3
|
||||
w_class = 2
|
||||
force = 5
|
||||
origin_tech = list(TECH_COMBAT = 2, TECH_MAGNET = 2)
|
||||
matter = list(DEFAULT_WALL_MATERIAL = 2000)
|
||||
@@ -20,7 +20,34 @@
|
||||
list(mode_name="2-round bursts", burst=2, fire_delay=null, move_delay=2, burst_accuracy=list(1,0,0), dispersion=list(0, 10, 15))
|
||||
)
|
||||
|
||||
/obj/item/gun/energy/blaster/revolver
|
||||
name = "blaster revolver"
|
||||
desc = "A robust eight-shot blaster.."
|
||||
icon_state = "blaster_revolver"
|
||||
fire_sound = 'sound/weapons/laserstrong.ogg'
|
||||
projectile_type = /obj/item/projectile/energy/blaster
|
||||
max_shots = 8
|
||||
w_class = 3
|
||||
|
||||
/obj/item/gun/energy/blaster/revolver/verb/spin_cylinder()
|
||||
set name = "Spin cylinder"
|
||||
set desc = "Fun when you're bored out of your skull."
|
||||
set category = "Object"
|
||||
var/mob/living/carbon/human/user
|
||||
if(istype(usr,/mob/living/carbon/human))
|
||||
user = usr
|
||||
else
|
||||
return
|
||||
|
||||
user.visible_message(span("warning","\The [user] spins the cylinder of \the [src]!"),span("warning","You spin the cylinder of \the [src]!"),span("notice","You hear something metallic spin and click."))
|
||||
playsound(src.loc, 'sound/weapons/revolver_spin.ogg', 100, 1)
|
||||
|
||||
/obj/item/gun/energy/blaster/revolver/pilot
|
||||
name = "pilot's sidearm"
|
||||
desc = "A robust, low in maintenance, eight-shot blaster. Perfect for self-defense purposes."
|
||||
|
||||
/obj/item/gun/energy/blaster/carbine
|
||||
|
||||
name = "blaster carbine"
|
||||
desc = "A short-barreled blaster carbine meant for easy handling and comfort when in combat."
|
||||
icon_state = "blaster_carbine"
|
||||
@@ -29,6 +56,7 @@
|
||||
origin_tech = list(TECH_COMBAT = 3, TECH_MAGNET = 2)
|
||||
projectile_type = /obj/item/projectile/energy/blaster
|
||||
slot_flags = SLOT_BELT
|
||||
w_class = 3
|
||||
|
||||
/obj/item/gun/energy/blaster/rifle
|
||||
name = "bolt slinger"
|
||||
@@ -48,7 +76,7 @@
|
||||
scoped_accuracy = 4
|
||||
|
||||
fire_delay_wielded = 10
|
||||
accuracy_wielded = 0
|
||||
accuracy_wielded = 1
|
||||
|
||||
is_wieldable = TRUE
|
||||
|
||||
|
||||
@@ -56,6 +56,13 @@
|
||||
/obj/item/reagent_containers/chem_disp_cartridge/clonexadone
|
||||
)
|
||||
|
||||
/obj/machinery/chemical_dispenser/ert/attackby(obj/item/W, mob/user)
|
||||
if(W.iswrench())
|
||||
to_chat(user, span("notice","This dispenser is riveted to the floor and cannot be unanchored."))
|
||||
return
|
||||
else
|
||||
return ..()
|
||||
|
||||
/obj/machinery/chemical_dispenser/bar_soft
|
||||
name = "soft drink dispenser"
|
||||
desc = "A soda machine."
|
||||
|
||||
@@ -241,11 +241,29 @@
|
||||
brightness_color = initial(brightness_color)
|
||||
update()
|
||||
|
||||
//--Tau Ceti Foreign Legion Shuttle--//
|
||||
|
||||
/obj/machinery/computer/shuttle_control/legion
|
||||
name = "deployment shuttle control console"
|
||||
name = "dropship control console"
|
||||
req_access = list(access_legion)
|
||||
shuttle_tag = "Tau Ceti Foreign Legion"
|
||||
|
||||
/datum/shuttle/ferry/legion
|
||||
var/dropship_return_delay = 6600
|
||||
var/earliest_departure_time = 0
|
||||
|
||||
/datum/shuttle/ferry/legion/arrived()
|
||||
if(!location)
|
||||
earliest_departure_time = world.time + dropship_return_delay
|
||||
|
||||
/datum/shuttle/ferry/legion/launch(var/user)
|
||||
if(!location && earliest_departure_time > world.time)
|
||||
var/obj/machinery/computer/shuttle_control/legion/L = user
|
||||
L.visible_message(span("notice","The dropship's skipthrusters will be done recharging in approximately [round((earliest_departure_time - world.time)/600)] minute\s."),null,3)
|
||||
return
|
||||
else
|
||||
..()
|
||||
|
||||
/obj/machinery/computer/shuttle_control/distress
|
||||
name = "shuttle control computer"
|
||||
req_access = list(access_distress)
|
||||
|
||||
@@ -1,9 +1,14 @@
|
||||
#define READY 0
|
||||
#define USED 1
|
||||
#define LAUNCHING 2
|
||||
|
||||
/obj/vehicle/droppod
|
||||
name = "drop pod"
|
||||
desc = "A big metal pod, what could be inside?"
|
||||
icon = 'icons/obj/vehicles.dmi'
|
||||
icon_state = "droppod"
|
||||
dir = SOUTH
|
||||
layer = MOB_LAYER - 0.1
|
||||
|
||||
load_item_visible = 0
|
||||
health = 500 // pretty strong because it can't move or be shot out of
|
||||
@@ -11,14 +16,19 @@
|
||||
|
||||
fire_dam_coeff = 0.6
|
||||
brute_dam_coeff = 0.5
|
||||
var/list/validfirelocations = list(1, 7) // above the station and at the centcomm z-level.
|
||||
var/list/validfirelocations = list(1, 7, 9) // above the station, at the centcomm z-level and at derelicts.
|
||||
|
||||
var/used = 0
|
||||
var/status = READY
|
||||
|
||||
var/mob/humanload
|
||||
var/mob/passenger
|
||||
|
||||
var/static/list/protrectedareas = list(/area/hallway/secondary/entry/dock, /area/crew_quarters/sleep/cryo, /area/crew_quarters/sleep/bedrooms)
|
||||
var/connected_blastdoor //Connect a blast door's _wifi_id here to have it close when the droppod is launched.
|
||||
|
||||
/obj/vehicle/droppod/legion
|
||||
name = "legion drop pod"
|
||||
desc = "A big metal pod painted in the colors of the Tau Ceti Foreign Legion."
|
||||
icon_state = "legion_pod"
|
||||
|
||||
/obj/vehicle/droppod/Initialize()
|
||||
. = ..()
|
||||
@@ -29,12 +39,38 @@
|
||||
/obj/vehicle/droppod/Move()
|
||||
return
|
||||
|
||||
/obj/vehicle/droppod/attackby(obj/item/I as obj, mob/user as mob)
|
||||
if(I.iswelder() && status == USED && !humanload && !passenger)
|
||||
var/obj/item/weldingtool/W = I
|
||||
if(W.welding)
|
||||
src.visible_message(span("notice","[user] starts cutting \the [src] apart."))
|
||||
if(do_after(user, 200))
|
||||
src.visible_message(span("danger","\The [src] is cut apart by [user]!"))
|
||||
playsound(src, 'sound/items/Welder.ogg', 100, 1)
|
||||
new /obj/item/stack/material/titanium(src.loc, 10)
|
||||
new /obj/item/stack/material/plasteel(src.loc, 10)
|
||||
var/obj/item/stack/cable_coil/C = new /obj/item/stack/cable_coil(src.loc)
|
||||
C.amount = rand(5,15)
|
||||
qdel(src)
|
||||
else
|
||||
return ..()
|
||||
|
||||
/obj/vehicle/droppod/verb/launchinterface()
|
||||
set src in oview(1)
|
||||
set category = "Vehicle"
|
||||
set name = "Open launch interface"
|
||||
|
||||
ui_interact(usr)
|
||||
if(status == READY)
|
||||
ui_interact(usr)
|
||||
|
||||
/obj/vehicle/droppod/verb/eject()
|
||||
set src in oview(1)
|
||||
set category = "Vehicle"
|
||||
set name = "Eject Pod"
|
||||
|
||||
if(!usr.canmove || usr.stat || usr.restrained())
|
||||
return
|
||||
unload(usr)
|
||||
|
||||
/obj/vehicle/droppod/load(var/mob/C) // this won't call the parent proc due to the differences and the fact it doesn't use load. Also only mobs can be loaded.
|
||||
if(!ismob(C))
|
||||
@@ -53,6 +89,8 @@
|
||||
C.set_dir(dir)
|
||||
C.anchored = 1
|
||||
|
||||
user_buckle_mob(C, C)
|
||||
icon_state = initial(icon_state)
|
||||
return 1
|
||||
|
||||
/obj/vehicle/droppod/unload(var/mob/user, var/direction) // this also won't call the parent proc because it relies on load and doesn't expect a 2nd person
|
||||
@@ -64,7 +102,7 @@
|
||||
if(direction)
|
||||
dest = get_step(src, direction)
|
||||
else if(user)
|
||||
dest = get_turf(user)
|
||||
dest = get_turf(src)
|
||||
if(!dest)
|
||||
dest = get_step_to(src, get_step(src, turn(dir, 90)))
|
||||
|
||||
@@ -82,29 +120,38 @@
|
||||
if(!isturf(dest))
|
||||
return 0
|
||||
|
||||
user.forceMove(dest)
|
||||
user.set_dir(get_dir(loc, dest))
|
||||
user.anchored = 0
|
||||
user.pixel_x = initial(user.pixel_x)
|
||||
user.pixel_y = initial(user.pixel_y)
|
||||
user.layer = initial(user.layer)
|
||||
for(var/a in contents)
|
||||
if(isliving(a))
|
||||
var/mob/living/L = a
|
||||
L.forceMove(dest)
|
||||
L.set_dir(get_dir(loc, dest))
|
||||
L.anchored = 0
|
||||
L.pixel_x = initial(user.pixel_x)
|
||||
L.pixel_y = initial(user.pixel_y)
|
||||
L.layer = initial(user.layer)
|
||||
user_unbuckle_mob(L, L)
|
||||
else if(istype(a, /obj))
|
||||
var/obj/O = a
|
||||
O.forceMove(src.loc)
|
||||
|
||||
if(user == humanload)
|
||||
humanload = null
|
||||
else
|
||||
passenger = null
|
||||
humanload = null
|
||||
passenger = null
|
||||
icon_state = "[initial(icon_state)]_open"
|
||||
return 1
|
||||
|
||||
/obj/vehicle/droppod/attack_hand(mob/user as mob)
|
||||
..()
|
||||
if(user == (humanload || passenger))
|
||||
unload(user)
|
||||
else
|
||||
if(user == humanload || user == passenger)
|
||||
if(status != USED)
|
||||
launchinterface()
|
||||
else
|
||||
unload(user)
|
||||
else if ((!humanload || !passenger) && status != USED)
|
||||
load(user)
|
||||
|
||||
/obj/vehicle/droppod/ui_interact(mob/user, ui_key = "main", var/datum/nanoui/ui = null, var/force_open = 1, var/datum/topic_state/state = default_state)
|
||||
var/data[0]
|
||||
data["used"] = used
|
||||
data["status"] = status
|
||||
|
||||
ui = SSnanoui.try_update_ui(user, src, ui_key, ui, data, force_open)
|
||||
if (!ui)
|
||||
@@ -118,111 +165,137 @@
|
||||
return 1
|
||||
|
||||
if(href_list["fire"])
|
||||
var/area/A = null
|
||||
var/target = href_list["fire"]
|
||||
if(target == "arrivals")
|
||||
if(prob(20))
|
||||
firefromarea(/area/hallway/secondary/entry/fore)
|
||||
else if(prob(20))
|
||||
firefromarea(/area/hallway/secondary/entry/port)
|
||||
else if(prob(20))
|
||||
firefromarea(/area/hallway/secondary/entry/starboard)
|
||||
else if(prob(20))
|
||||
firefromarea(/area/hallway/secondary/entry/aft)
|
||||
else
|
||||
firefromarea(/area/maintenance/arrivals)
|
||||
else if(target == "cargo")
|
||||
if(prob(65))
|
||||
firefromarea(/area/quartermaster/loading)
|
||||
else
|
||||
firefromarea(/area/quartermaster/qm)
|
||||
else if(target == "tcoms")
|
||||
if(prob(20))
|
||||
firefromarea(/area/tcommsat/entrance)
|
||||
else if(prob(5)) // could drop them on an openturf
|
||||
firefromarea(/area/turret_protected/tcomsat)
|
||||
else if(prob(20))
|
||||
firefromarea(/area/turret_protected/tcomfoyer)
|
||||
else if(prob(20))
|
||||
firefromarea(/area/turret_protected/tcomwest)
|
||||
else if(prob(20))
|
||||
firefromarea(/area/turret_protected/tcomeast)
|
||||
else if(prob(20))
|
||||
firefromarea(/area/tcommsat/computer)
|
||||
else
|
||||
firefromarea(/area/tcommsat/powercontrol)
|
||||
else if(target == "commandescape")
|
||||
firefromarea(/area/bridge/levela)
|
||||
switch(target)
|
||||
if("arrivals")
|
||||
var/arrivals_destination_list = list(
|
||||
/area/hallway/secondary/entry/fore = 2,
|
||||
/area/hallway/secondary/entry/port = 2,
|
||||
/area/security/vacantoffice = 1,
|
||||
/area/hallway/secondary/entry/departure_lounge = 1
|
||||
)
|
||||
A = pickweight(arrivals_destination_list)
|
||||
if("cargo")
|
||||
var/cargo_destination_list = list(
|
||||
/area/quartermaster/loading = 4,
|
||||
/area/quartermaster/qm = 1,
|
||||
/area/janitor/surface = 1,
|
||||
/area/storage/tools = 1,
|
||||
/area/sconference_room = 1
|
||||
)
|
||||
A = pickweight(cargo_destination_list)
|
||||
if("tcoms")
|
||||
var/tcoms_destination_list = list(
|
||||
/area/tcommsat/lounge = 1
|
||||
)
|
||||
A = pickweight(tcoms_destination_list)
|
||||
if("commandescape")
|
||||
var/commandescape_destination_list = list(
|
||||
/area/bridge/levela = 2,
|
||||
/area/bridge/levela/research_dock = 2,
|
||||
/area/security/bridge_surface_checkpoint = 1,
|
||||
/area/maintenance/bridge_elevator/surface = 1
|
||||
)
|
||||
A = pickweight(commandescape_destination_list)
|
||||
if(A)
|
||||
status = LAUNCHING
|
||||
var/mob/user = usr
|
||||
var/datum/nanoui/ui = SSnanoui.get_open_ui(user, src, "main")
|
||||
if(ui)
|
||||
ui.close()
|
||||
if(connected_blastdoor)
|
||||
blastdoor_interact()
|
||||
fire_at_area(A)
|
||||
|
||||
/obj/vehicle/droppod/proc/firefromarea(var/area/A)
|
||||
if(A in protrectedareas)
|
||||
ermessage()
|
||||
/obj/vehicle/droppod/proc/fire_at_area(var/area/A)
|
||||
|
||||
var/list/area_turfs = get_area_turfs(A, null, 0, FALSE)
|
||||
var/list/turf_selection = list()
|
||||
|
||||
for(var/turf/T in area_turfs)
|
||||
var/obstacle_found = FALSE
|
||||
if(!iswall(T))
|
||||
for(var/obj/O in T)
|
||||
if(istype(O, /obj/structure/grille) || istype(O, /obj/machinery/door/airlock/external)) //This is to help prevent the pod from landing right on an exterior window or airlock.
|
||||
obstacle_found = TRUE
|
||||
break
|
||||
if(!obstacle_found)
|
||||
turf_selection += T
|
||||
else
|
||||
obstacle_found = FALSE
|
||||
|
||||
var/target_turf = pick(turf_selection)
|
||||
if(!target_turf)
|
||||
playsound(src, 'sound/machines/buzz-sigh.ogg', 30, 1)
|
||||
visible_message(span("warning","\The [src]'s screen displays an error: Targeting module malfunction. Attempt relaunch."))
|
||||
status = READY
|
||||
if(connected_blastdoor)
|
||||
blastdoor_interact(TRUE)
|
||||
return
|
||||
|
||||
var/turf/targetturf = pick_area_turf(A)
|
||||
if(iswall(targetturf))
|
||||
ermessage(0,2)
|
||||
firefromarea(A)
|
||||
else
|
||||
fire(targetturf)
|
||||
fire(target_turf)
|
||||
|
||||
/obj/vehicle/droppod/proc/fire(var/turf/A)
|
||||
if(!isturf(A))
|
||||
ermessage()
|
||||
playsound(src, 'sound/machines/buzz-sigh.ogg', 30, 1)
|
||||
visible_message(span("warning","\The [src]'s screen displays an error: Targeting module malfunction. Attempt relaunch."))
|
||||
status = READY
|
||||
if(connected_blastdoor)
|
||||
blastdoor_interact(TRUE)
|
||||
return
|
||||
|
||||
if(!(src.z in validfirelocations))
|
||||
ermessage(1, 1)
|
||||
playsound(src, 'sound/machines/buzz-sigh.ogg', 30, 1)
|
||||
visible_message(span("warning","\The [src]'s screen displays an error: Pod cannot be launched from this position."))
|
||||
status = READY
|
||||
if(connected_blastdoor)
|
||||
blastdoor_interact(TRUE)
|
||||
return
|
||||
|
||||
var/turf/aboveturf = GetAbove(A)
|
||||
if(aboveturf)
|
||||
if(aboveturf.is_hole)
|
||||
A.visible_message("<span class='danger'>The [src] drops through the hole in the roof!</span>")
|
||||
applyfalldamage(A)
|
||||
forceMove(aboveturf)
|
||||
else
|
||||
applyfalldamage(aboveturf)
|
||||
aboveturf.ChangeTurf(/turf/space)
|
||||
applyfalldamage(A)
|
||||
A.visible_message("<span class='danger'>The [src] crashes through the roof!</span>")
|
||||
forceMove(A)
|
||||
applyfalldamage(aboveturf)
|
||||
aboveturf.ChangeTurf(/turf/simulated/floor/foamedmetal)
|
||||
for(var/turf/T in range(1, aboveturf))
|
||||
if(turf_clear(T))
|
||||
new /obj/structure/foamedmetal(T, src)
|
||||
applyfalldamage(A)
|
||||
explosion(A, 0, 0, 2, 2)
|
||||
var/datum/effect/effect/system/smoke_spread/S = new /datum/effect/effect/system/smoke_spread()
|
||||
S.set_up(5, 0, A)
|
||||
S.start()
|
||||
if(humanload)
|
||||
var/mob/M = humanload
|
||||
shake_camera(M, 5, 1)
|
||||
forceMove(A)
|
||||
A.visible_message(span("danger","\The [src] crashes through the roof!"))
|
||||
|
||||
var/turf/belowturf = GetBelow(A)
|
||||
if(belowturf)
|
||||
//sound here
|
||||
belowturf.visible_message("<span class='danger'>You hear something crash into the ceiling above!</span>")
|
||||
var/turf/belowturf = GetBelow(A)
|
||||
if(belowturf)
|
||||
belowturf.visible_message(span("danger","You hear something crash into the ceiling above!"))
|
||||
|
||||
if(humanload)
|
||||
humanload.forceMove(loc)
|
||||
|
||||
if(passenger)
|
||||
passenger.forceMove(loc)
|
||||
|
||||
used = 1
|
||||
status = USED
|
||||
|
||||
/obj/vehicle/droppod/proc/applyfalldamage(var/turf/A)
|
||||
for(var/mob/T in A)
|
||||
if(T.simulated)
|
||||
T.gib()
|
||||
T.visible_message("<span class='danger'>[T] is squished by the drop pod!</span>")
|
||||
T.visible_message(span("danger","[T] is squished by the drop pod!"))
|
||||
for(var/obj/B in A)
|
||||
if(B.simulated)
|
||||
if(B.simulated && B.density)
|
||||
qdel(B)
|
||||
B.visible_message("<span class='danger'>[B] is destroyed by the drop pod!</span>")
|
||||
B.visible_message(span("danger","[B] is destroyed by the drop pod!"))
|
||||
|
||||
/obj/vehicle/droppod/proc/ermessage(var/type = 0, var/subtype = 0)
|
||||
if(!type)
|
||||
if(!subtype)
|
||||
playsound(src, 'sound/machines/buzz-sigh.ogg', 30, 1)
|
||||
visible_message("<span class='warning'>\The [src]'s screen flashes an error!</span>")
|
||||
else if(subtype == 1)
|
||||
playsound(src, 'sound/machines/buzz-sigh.ogg', 30, 1)
|
||||
visible_message("<span class='warning'>\The [src]'s screen flashes an error reading 'Invalid location to launch from!'</span>")
|
||||
else if(subtype == 2)
|
||||
playsound(src, 'sound/machines/buzz-sigh.ogg', 30, 1)
|
||||
visible_message("<span class='warning'>Target location blocked... Rerouting...</span>")
|
||||
/obj/vehicle/droppod/proc/blastdoor_interact(var/open)
|
||||
var/datum/wifi/sender/door/wifi_sender_blast = new(connected_blastdoor, src)
|
||||
if(open)
|
||||
wifi_sender_blast.activate("open")
|
||||
else
|
||||
if(subtype == 1)
|
||||
visible_message("<span class='notice'>\The [src]'s screen flashes a message reading 'Launch coordinates verified.'</span>")
|
||||
else if(subtype == 2)
|
||||
visible_message("<span class='notice'>The [src]'s screen flashes a message reading 'Laucnhing.'</span>")
|
||||
wifi_sender_blast.activate("close")
|
||||
var/turf/T = src.loc
|
||||
T.ChangeTurf(/turf/space)
|
||||
|
||||
#undef READY
|
||||
#undef USED
|
||||
#undef LAUNCHING
|
||||
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
################################
|
||||
# Example Changelog File
|
||||
#
|
||||
# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
|
||||
#
|
||||
# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
|
||||
# When it is, any changes listed below will disappear.
|
||||
#
|
||||
# Valid Prefixes:
|
||||
# bugfix
|
||||
# wip (For works in progress)
|
||||
# tweak
|
||||
# soundadd
|
||||
# sounddel
|
||||
# rscadd (general adding of nice things)
|
||||
# rscdel (general deleting of nice things)
|
||||
# imageadd
|
||||
# imagedel
|
||||
# maptweak
|
||||
# spellcheck (typo fixes)
|
||||
# experiment
|
||||
# balance
|
||||
# admin
|
||||
# backend
|
||||
# security
|
||||
# refactor
|
||||
#################################
|
||||
|
||||
# Your name.
|
||||
author: Brainos, Ferner, Geeves, Kyres1, Poze, Sleepywolfe
|
||||
|
||||
# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
|
||||
delete-after: True
|
||||
|
||||
# Any changes you've made. See valid prefix list above.
|
||||
# INDENT WITH TWO SPACES. NOT TABS. SPACES.
|
||||
# SCREW THIS UP AND IT WON'T WORK.
|
||||
# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
|
||||
# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
|
||||
changes:
|
||||
- maptweak: "Re-mapped the Tau Ceti Foreign Legion base and gave them a few new gizmos and doodads plus the now fixed droppods by Poze, further tweaked by Ferner."
|
||||
- maptweak: "Re-mapped some parts of the surface and bridge surface."
|
||||
- rscadd: "Rebranded the TCFL Commander to Legate, added some new threads(tweaked by Brainos) for them. Added the TCFL Sentinels, whose mission is to protect BLV The Tower. Summoned via ghostspawner. Added the dropship pilot role."
|
||||
- rscadd: "Added the blaster revolver, code and sound provided by Geeves."
|
||||
- imageadd: "Added Biesel flag/banner + blaster turret sprites by Kyres1."
|
||||
- imageadd: "Added a couple TCFL related posters by Sleepywolfe."
|
||||
- imageadd: "Made the telebaton more visible when equipped and no longer just a copy of the nullrod."
|
||||
- bugfix: "A bunch of misc mapping bugfixes in places. Tweaked the blaster rifle so accuracy was improved properly when wielded."
|
||||
|
||||
|
Before Width: | Height: | Size: 173 KiB After Width: | Height: | Size: 169 KiB |
|
Before Width: | Height: | Size: 149 KiB After Width: | Height: | Size: 144 KiB |
|
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 65 KiB |
|
Before Width: | Height: | Size: 148 KiB After Width: | Height: | Size: 141 KiB |
|
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 66 KiB |
|
Before Width: | Height: | Size: 392 KiB After Width: | Height: | Size: 364 KiB |
|
Before Width: | Height: | Size: 368 KiB After Width: | Height: | Size: 370 KiB |
|
Before Width: | Height: | Size: 9.7 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 95 KiB After Width: | Height: | Size: 89 KiB |
|
Before Width: | Height: | Size: 152 KiB After Width: | Height: | Size: 139 KiB |
|
Before Width: | Height: | Size: 80 KiB After Width: | Height: | Size: 81 KiB |
|
Before Width: | Height: | Size: 113 KiB After Width: | Height: | Size: 119 KiB |
|
Before Width: | Height: | Size: 140 KiB After Width: | Height: | Size: 150 KiB |
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 38 KiB |
|
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 78 KiB |
|
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 72 KiB |
|
After Width: | Height: | Size: 1.9 KiB |
|
Before Width: | Height: | Size: 75 KiB After Width: | Height: | Size: 72 KiB |
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 49 KiB |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 3.6 KiB |
|
Before Width: | Height: | Size: 167 KiB After Width: | Height: | Size: 182 KiB |
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 29 KiB |
|
After Width: | Height: | Size: 1.4 KiB |
|
After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 311 KiB After Width: | Height: | Size: 315 KiB |
@@ -224,19 +224,27 @@
|
||||
station_area = 0
|
||||
base_turf = /turf/simulated/floor/reinforced
|
||||
|
||||
/area/shuttle/legion/centcom
|
||||
/area/shuttle/legion
|
||||
name = "\improper Foreign Legion Shuttle"
|
||||
flags = RAD_SHIELDED | SPAWN_ROOF
|
||||
base_turf = /turf/simulated/floor/tiled/dark
|
||||
icon_state = "shuttlegrn"
|
||||
centcomm_area = 1
|
||||
|
||||
/area/shuttle/legion/centcom
|
||||
base_turf = /turf/unsimulated/floor
|
||||
|
||||
/area/shuttle/legion/station
|
||||
name = "\improper Foreign Legion Landing"
|
||||
name = "\improper Surface Escape Pods - Docking Port"
|
||||
icon_state = "shuttlegrn2"
|
||||
base_turf = /turf/unsimulated/floor/asteroid/ash
|
||||
station_area = 1
|
||||
|
||||
/area/shuttle/legion/transit
|
||||
name = "\improper Hyperspace"
|
||||
icon_state = "shuttle"
|
||||
base_turf = /turf/space/transit/east
|
||||
|
||||
/area/shuttle/distress/centcom
|
||||
name = "\improper Unidentified Shuttle"
|
||||
flags = RAD_SHIELDED | SPAWN_ROOF
|
||||
|
||||
@@ -54,7 +54,12 @@
|
||||
name = "\improper Aft Checkpoint"
|
||||
|
||||
/area/centcom/legion
|
||||
name = "\improper Tau Ceti Foreign Legion Base"
|
||||
name = "\improper BLV The Tower - Deck 1"
|
||||
icon_state = "blvtower"
|
||||
|
||||
/area/centcom/legion/hangar5
|
||||
name = "\improper BLV The Tower - Hangar 5"
|
||||
icon_state = "blvhangar5"
|
||||
|
||||
/area/centcom/distress_prep
|
||||
name = "\improper Distress Team Preparation"
|
||||
|
||||
@@ -202,6 +202,9 @@
|
||||
icon_state = "janitor"
|
||||
station_area = 1
|
||||
|
||||
/area/janitor/surface
|
||||
name = "\improper Surface - Custodial Closet"
|
||||
|
||||
/area/hydroponics
|
||||
name = "\improper Hydroponics"
|
||||
icon_state = "hydro"
|
||||
@@ -213,7 +216,7 @@
|
||||
icon_state = "garden"
|
||||
|
||||
/area/store
|
||||
name = "\improper Station Store"
|
||||
name = "\improper Surface - Commissary"
|
||||
icon_state = "quartstorage"
|
||||
station_area = 1
|
||||
|
||||
|
||||
@@ -27,6 +27,10 @@
|
||||
name = "\improper Surface - Bridge"
|
||||
icon_state = "bridge"
|
||||
|
||||
/area/bridge/levela/research_dock
|
||||
name = "\improper Surface - Bridge Expeditionary Dock"
|
||||
icon_state = "research_dock"
|
||||
|
||||
/area/crew_quarters/heads/cryo
|
||||
name = "\improper Command - Dormitory"
|
||||
icon_state = "head_quarters"
|
||||
|
||||
@@ -70,3 +70,15 @@
|
||||
name = "\improper Surface - Blue Dock"
|
||||
icon_state = "arrivals_dock"
|
||||
holomap_color = HOLOMAP_AREACOLOR_ARRIVALS
|
||||
|
||||
/area/hallway/secondary/entry/emergency
|
||||
name = "\improper Emergency Services Dock"
|
||||
icon_state = "escape"
|
||||
|
||||
/area/hallway/secondary/entry/departure_lounge
|
||||
name = "\improper Surface - Departures Lounge"
|
||||
icon_state = "dep_lounge"
|
||||
|
||||
/area/hallway/secondary/entry/locker
|
||||
name = "\improper Surface - Locker Room"
|
||||
icon_state = "locker"
|
||||
@@ -77,10 +77,21 @@
|
||||
name = "Bridge Maintenance"
|
||||
icon_state = "maintcentral"
|
||||
|
||||
/area/maintenance/bridge_elevator
|
||||
name = "Bridge Elevator Maintenance"
|
||||
icon_state = "maintcentral"
|
||||
|
||||
/area/maintenance/bridge_elevator/surface
|
||||
name = "Surface - Bridge Elevator Maintenance"
|
||||
|
||||
/area/maintenance/arrivals
|
||||
name = "Surface Maintenance"
|
||||
icon_state = "maint_arrivals"
|
||||
|
||||
/area/maintenance/store
|
||||
name = "\improper Commissary Maintenance"
|
||||
icon_state = "maint_cargo"
|
||||
|
||||
/area/maintenance/bar
|
||||
name = "Bar Maintenance"
|
||||
icon_state = "maint_bar"
|
||||
@@ -163,7 +174,7 @@
|
||||
|
||||
/area/maintenance/engineering_ladder
|
||||
name = "\improper Engineering Ladder Shaft"
|
||||
icon_state = "maint_engineering"
|
||||
icon_state = "maint_engineering"
|
||||
|
||||
/area/maintenance/research_xenobiology
|
||||
name = "Research Maintenance - Xenobiology"
|
||||
|
||||
@@ -109,6 +109,10 @@
|
||||
name = "\improper Security - Arrivals Checkpoint"
|
||||
icon_state = "security"
|
||||
|
||||
/area/security/bridge_surface_checkpoint
|
||||
name = "\improper Bridge Security Checkpoint"
|
||||
icon_state = "security"
|
||||
|
||||
/area/security/checkpoint/supply
|
||||
name = "Security Post - Cargo Bay"
|
||||
icon_state = "checkpoint1"
|
||||
|
||||
@@ -45762,7 +45762,7 @@
|
||||
dir = 4
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bzz" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 2;
|
||||
@@ -45780,7 +45780,7 @@
|
||||
icon_state = "pipe-c"
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bzA" = (
|
||||
/obj/machinery/door/firedoor,
|
||||
/obj/structure/window/reinforced{
|
||||
@@ -46295,7 +46295,7 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
|
||||
/obj/structure/disposalpipe/segment,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bAz" = (
|
||||
/obj/effect/decal/cleanable/generic,
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
@@ -46709,7 +46709,7 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
|
||||
/obj/structure/disposalpipe/segment,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bBu" = (
|
||||
/obj/structure/grille,
|
||||
/obj/structure/window/reinforced{
|
||||
@@ -49536,7 +49536,7 @@
|
||||
dir = 6
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bGN" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 2;
|
||||
@@ -49554,7 +49554,7 @@
|
||||
icon_state = "pipe-c"
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bGO" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 4;
|
||||
@@ -49571,7 +49571,7 @@
|
||||
dir = 4
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bGP" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 1;
|
||||
@@ -49590,7 +49590,7 @@
|
||||
icon_state = "pipe-c"
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bGQ" = (
|
||||
/obj/machinery/light/small/emergency{
|
||||
dir = 8
|
||||
@@ -50191,7 +50191,7 @@
|
||||
"bHJ" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/universal,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bHK" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 1;
|
||||
@@ -50201,7 +50201,7 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/universal,
|
||||
/obj/structure/disposalpipe/segment,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bHL" = (
|
||||
/obj/structure/disposalpipe/segment,
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
|
||||
@@ -50625,7 +50625,7 @@
|
||||
name = "Scrubbers"
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bII" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 1;
|
||||
@@ -50638,7 +50638,7 @@
|
||||
},
|
||||
/obj/structure/disposalpipe/segment,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bIJ" = (
|
||||
/obj/structure/disposalpipe/segment,
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
|
||||
@@ -51398,7 +51398,7 @@
|
||||
dir = 5
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bKt" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 1;
|
||||
@@ -51411,7 +51411,7 @@
|
||||
},
|
||||
/obj/structure/disposalpipe/segment,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bKv" = (
|
||||
/obj/effect/floor_decal/corner/mauve{
|
||||
icon_state = "corner_white";
|
||||
@@ -52097,7 +52097,7 @@
|
||||
/obj/machinery/door/firedoor,
|
||||
/obj/structure/disposalpipe/segment,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bLV" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 1;
|
||||
@@ -52366,7 +52366,7 @@
|
||||
/turf/simulated/floor/plating{
|
||||
roof_type = null
|
||||
},
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bMv" = (
|
||||
/obj/structure/closet,
|
||||
/obj/item/clothing/head/ushanka,
|
||||
@@ -52378,7 +52378,7 @@
|
||||
pixel_y = 32
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bMw" = (
|
||||
/obj/structure/table/rack{
|
||||
dir = 1
|
||||
@@ -52754,7 +52754,7 @@
|
||||
icon_state = "pipe-c"
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bNh" = (
|
||||
/obj/structure/closet,
|
||||
/obj/item/clothing/head/ushanka,
|
||||
@@ -63686,6 +63686,9 @@
|
||||
},
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/hallway/primary/aft)
|
||||
"dNy" = (
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/bridge_elevator)
|
||||
"dQv" = (
|
||||
/obj/effect/floor_decal/spline/plain{
|
||||
icon_state = "spline_plain";
|
||||
@@ -65132,6 +65135,9 @@
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/medbay)
|
||||
"hTO" = (
|
||||
/turf/simulated/wall/r_wall,
|
||||
/area/maintenance/bridge_elevator)
|
||||
"hUu" = (
|
||||
/obj/machinery/conveyor{
|
||||
icon_state = "conveyor0";
|
||||
@@ -66605,7 +66611,7 @@
|
||||
/turf/simulated/floor/plating{
|
||||
roof_type = null
|
||||
},
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"mIZ" = (
|
||||
/obj/machinery/atmospherics/pipe/manifold/hidden,
|
||||
/turf/simulated/floor/plating,
|
||||
@@ -115695,17 +115701,17 @@ bBs
|
||||
bBs
|
||||
bEQ
|
||||
aoq
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
aaa
|
||||
aaa
|
||||
aaa
|
||||
@@ -115951,18 +115957,18 @@ bBs
|
||||
bDh
|
||||
bEa
|
||||
bBs
|
||||
bam
|
||||
aoq
|
||||
bGM
|
||||
bHJ
|
||||
bIH
|
||||
bHJ
|
||||
bKs
|
||||
aSL
|
||||
bam
|
||||
dNy
|
||||
hTO
|
||||
bMu
|
||||
aSL
|
||||
aSL
|
||||
bam
|
||||
dNy
|
||||
dNy
|
||||
hTO
|
||||
aaa
|
||||
aaa
|
||||
aaa
|
||||
@@ -116208,7 +116214,7 @@ bBs
|
||||
bBs
|
||||
bEb
|
||||
bBs
|
||||
bam
|
||||
aoq
|
||||
bGN
|
||||
bHK
|
||||
bII
|
||||
@@ -116219,7 +116225,7 @@ bLU
|
||||
bBt
|
||||
bBt
|
||||
bNf
|
||||
bam
|
||||
hTO
|
||||
aaa
|
||||
aaa
|
||||
aaa
|
||||
@@ -116465,18 +116471,18 @@ bBs
|
||||
bDi
|
||||
bEa
|
||||
bBs
|
||||
bam
|
||||
aoq
|
||||
bGO
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
bMv
|
||||
aSL
|
||||
dNy
|
||||
mGm
|
||||
bam
|
||||
hTO
|
||||
aaa
|
||||
aaa
|
||||
aaa
|
||||
@@ -116724,16 +116730,16 @@ bBs
|
||||
bBs
|
||||
aoq
|
||||
bGO
|
||||
bam
|
||||
hTO
|
||||
aaa
|
||||
aaa
|
||||
aaa
|
||||
aaa
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
aaa
|
||||
aaa
|
||||
aaa
|
||||
@@ -116981,7 +116987,7 @@ aoq
|
||||
aoq
|
||||
aoq
|
||||
bGO
|
||||
bam
|
||||
hTO
|
||||
aaa
|
||||
aaa
|
||||
aaa
|
||||
@@ -117238,7 +117244,7 @@ bBt
|
||||
bBt
|
||||
bBt
|
||||
bGP
|
||||
bam
|
||||
hTO
|
||||
aaa
|
||||
aaa
|
||||
aaa
|
||||
@@ -117485,17 +117491,17 @@ aab
|
||||
aab
|
||||
aaa
|
||||
aaa
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
bam
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
hTO
|
||||
aaa
|
||||
aaa
|
||||
aaa
|
||||
|
||||
@@ -344,7 +344,7 @@
|
||||
dir = 8
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"aT" = (
|
||||
/obj/machinery/door/airlock/external{
|
||||
frequency = 1379;
|
||||
@@ -353,7 +353,7 @@
|
||||
locked = 1
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"aU" = (
|
||||
/obj/structure/grille,
|
||||
/obj/structure/window/reinforced{
|
||||
@@ -367,7 +367,7 @@
|
||||
},
|
||||
/obj/machinery/door/firedoor,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"aV" = (
|
||||
/obj/effect/floor_decal/corner/yellow/full,
|
||||
/obj/item/caution/cone,
|
||||
@@ -403,7 +403,7 @@
|
||||
},
|
||||
/obj/machinery/door/firedoor,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"ba" = (
|
||||
/obj/effect/decal/warning_stripes,
|
||||
/obj/machinery/light/small/emergency{
|
||||
@@ -431,7 +431,7 @@
|
||||
dir = 8
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bb" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
|
||||
/obj/structure/cable{
|
||||
@@ -450,7 +450,7 @@
|
||||
/area/maintenance/interstitial_main)
|
||||
"bc" = (
|
||||
/turf/simulated/wall/r_wall,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"bd" = (
|
||||
/obj/structure/grille,
|
||||
/obj/structure/window/reinforced,
|
||||
@@ -463,7 +463,7 @@
|
||||
},
|
||||
/obj/machinery/door/firedoor,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"be" = (
|
||||
/obj/structure/grille,
|
||||
/obj/structure/window/reinforced{
|
||||
@@ -472,7 +472,7 @@
|
||||
/obj/structure/window/reinforced,
|
||||
/obj/machinery/door/firedoor,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bf" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden,
|
||||
/obj/machinery/door/airlock/external{
|
||||
@@ -482,7 +482,7 @@
|
||||
locked = 1
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bg" = (
|
||||
/obj/structure/grille,
|
||||
/obj/structure/window/reinforced,
|
||||
@@ -491,7 +491,7 @@
|
||||
},
|
||||
/obj/machinery/door/firedoor,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bh" = (
|
||||
/obj/structure/grille,
|
||||
/obj/structure/window/reinforced,
|
||||
@@ -506,7 +506,7 @@
|
||||
dir = 2
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bi" = (
|
||||
/obj/structure/closet/toolcloset,
|
||||
/obj/random/tech_supply,
|
||||
@@ -564,7 +564,7 @@
|
||||
dir = 8
|
||||
},
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bm" = (
|
||||
/obj/effect/floor_decal/corner/yellow{
|
||||
icon_state = "corner_white";
|
||||
@@ -575,11 +575,11 @@
|
||||
icon_state = "intact"
|
||||
},
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bn" = (
|
||||
/obj/machinery/atmospherics/unary/vent_pump/on,
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bo" = (
|
||||
/obj/machinery/access_button{
|
||||
command = "cycle_interior";
|
||||
@@ -594,7 +594,7 @@
|
||||
dir = 8
|
||||
},
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bp" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/visible/universal{
|
||||
dir = 4
|
||||
@@ -604,7 +604,7 @@
|
||||
dir = 6
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bq" = (
|
||||
/obj/effect/floor_decal/corner/yellow/full{
|
||||
icon_state = "corner_white_full";
|
||||
@@ -619,7 +619,7 @@
|
||||
dir = 10
|
||||
},
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"br" = (
|
||||
/obj/machinery/requests_console{
|
||||
announcementConsole = 0;
|
||||
@@ -685,11 +685,11 @@
|
||||
dir = 9
|
||||
},
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bx" = (
|
||||
/obj/machinery/atmospherics/pipe/manifold4w/hidden,
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"by" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden{
|
||||
dir = 4
|
||||
@@ -698,7 +698,7 @@
|
||||
dir = 5
|
||||
},
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bz" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden{
|
||||
dir = 9;
|
||||
@@ -708,7 +708,7 @@
|
||||
dir = 4
|
||||
},
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bA" = (
|
||||
/obj/effect/floor_decal/corner/yellow{
|
||||
icon_state = "corner_white";
|
||||
@@ -724,7 +724,7 @@
|
||||
dir = 4
|
||||
},
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bB" = (
|
||||
/obj/machinery/door/airlock/maintenance{
|
||||
req_access = list(12)
|
||||
@@ -742,7 +742,7 @@
|
||||
dir = 4
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bC" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 4;
|
||||
@@ -750,7 +750,7 @@
|
||||
icon_state = "4-8"
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"bD" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 2;
|
||||
@@ -774,7 +774,7 @@
|
||||
dir = 4
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bE" = (
|
||||
/obj/machinery/atmospherics/unary/vent_scrubber/on{
|
||||
dir = 8
|
||||
@@ -839,7 +839,7 @@
|
||||
pixel_y = -32
|
||||
},
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bJ" = (
|
||||
/obj/effect/floor_decal/corner/yellow{
|
||||
icon_state = "corner_white";
|
||||
@@ -851,12 +851,12 @@
|
||||
icon_state = "intact"
|
||||
},
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bK" = (
|
||||
/obj/effect/floor_decal/corner/yellow,
|
||||
/obj/machinery/light,
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bL" = (
|
||||
/obj/effect/floor_decal/corner/yellow/full{
|
||||
icon_state = "corner_white_full";
|
||||
@@ -869,7 +869,7 @@
|
||||
pixel_y = -24
|
||||
},
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bM" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 1;
|
||||
@@ -879,7 +879,7 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"bN" = (
|
||||
/obj/structure/lattice,
|
||||
/turf/simulated/open,
|
||||
@@ -992,7 +992,7 @@
|
||||
dir = 6
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"cc" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 1;
|
||||
@@ -1007,7 +1007,7 @@
|
||||
dir = 9
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"cd" = (
|
||||
/obj/effect/decal/warning_stripes,
|
||||
/obj/structure/ladder{
|
||||
@@ -1015,14 +1015,14 @@
|
||||
pixel_y = 16
|
||||
},
|
||||
/turf/simulated/open,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"ce" = (
|
||||
/obj/machinery/light/small/emergency{
|
||||
dir = 1
|
||||
},
|
||||
/obj/random/junk,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"cf" = (
|
||||
/obj/effect/decal/warning_stripes,
|
||||
/obj/structure/ladder/up{
|
||||
@@ -1037,12 +1037,12 @@
|
||||
/turf/simulated/floor/plating{
|
||||
roof_type = null
|
||||
},
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"cg" = (
|
||||
/turf/simulated/floor/plating{
|
||||
roof_type = null
|
||||
},
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"ch" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 2;
|
||||
@@ -1067,7 +1067,7 @@
|
||||
/turf/simulated/floor/plating{
|
||||
roof_type = null
|
||||
},
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"ci" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 2;
|
||||
@@ -1077,7 +1077,7 @@
|
||||
/turf/simulated/floor/plating{
|
||||
roof_type = null
|
||||
},
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"cj" = (
|
||||
/obj/machinery/door/airlock/maintenance{
|
||||
req_access = list(12)
|
||||
@@ -1091,7 +1091,7 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"ck" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 1;
|
||||
@@ -1105,7 +1105,7 @@
|
||||
dir = 5
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"cl" = (
|
||||
/obj/machinery/atmospherics/portables_connector,
|
||||
/obj/structure/window/reinforced{
|
||||
@@ -4821,7 +4821,7 @@
|
||||
pixel_y = 16
|
||||
},
|
||||
/turf/simulated/open,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"iX" = (
|
||||
/obj/effect/floor_decal/industrial/warning{
|
||||
icon_state = "warning";
|
||||
@@ -4831,16 +4831,16 @@
|
||||
dir = 4
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"iY" = (
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"iZ" = (
|
||||
/obj/structure/table/rack,
|
||||
/obj/item/clothing/gloves/yellow,
|
||||
/obj/item/wirecutters,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"ja" = (
|
||||
/obj/effect/floor_decal/industrial/warning{
|
||||
dir = 4
|
||||
@@ -4850,17 +4850,17 @@
|
||||
dir = 8
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"jb" = (
|
||||
/obj/structure/table/rack,
|
||||
/obj/item/storage/toolbox/emergency,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"jc" = (
|
||||
/obj/structure/table/steel,
|
||||
/obj/item/device/radio,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"jd" = (
|
||||
/obj/machinery/camera/motion{
|
||||
c_tag = "Bunker - Emergency Exit Motion";
|
||||
@@ -4870,12 +4870,12 @@
|
||||
tag = "icon-camera (WEST)"
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"je" = (
|
||||
/obj/structure/table/steel,
|
||||
/obj/item/device/flashlight/heavy,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"jf" = (
|
||||
/obj/machinery/button/remote/airlock{
|
||||
id = "bunker5";
|
||||
@@ -4894,7 +4894,7 @@
|
||||
specialfunctions = 4
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"jg" = (
|
||||
/obj/structure/sign/securearea{
|
||||
name = "\improper EMERGENCY EXIT";
|
||||
@@ -4902,7 +4902,7 @@
|
||||
},
|
||||
/obj/machinery/light/small/emergency,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"jh" = (
|
||||
/obj/machinery/button/remote/blast_door{
|
||||
id = "escape_blast";
|
||||
@@ -4912,7 +4912,7 @@
|
||||
req_access = list(19)
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"ji" = (
|
||||
/obj/machinery/door/blast/regular{
|
||||
id = "escape_blast";
|
||||
@@ -4928,7 +4928,7 @@
|
||||
secured_wires = 1
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"jj" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 1;
|
||||
@@ -4938,7 +4938,7 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
|
||||
/turf/simulated/wall/r_wall,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"jk" = (
|
||||
/obj/machinery/door/blast/regular{
|
||||
id = "escape_blast";
|
||||
@@ -4954,7 +4954,7 @@
|
||||
secured_wires = 1
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"jl" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 1;
|
||||
@@ -4972,7 +4972,7 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"jm" = (
|
||||
/obj/machinery/door/airlock/maintenance{
|
||||
id_tag = "bunker6";
|
||||
@@ -4984,7 +4984,7 @@
|
||||
icon_state = "4-8"
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"jn" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 4;
|
||||
@@ -5001,7 +5001,7 @@
|
||||
},
|
||||
/obj/machinery/light/small/emergency,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"jo" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 4;
|
||||
@@ -5014,7 +5014,7 @@
|
||||
},
|
||||
/obj/structure/grille,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"jp" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 4;
|
||||
@@ -5027,7 +5027,7 @@
|
||||
dir = 8
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"jq" = (
|
||||
/obj/structure/cable/green{
|
||||
d2 = 8;
|
||||
@@ -5035,7 +5035,7 @@
|
||||
},
|
||||
/obj/structure/grille,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"jr" = (
|
||||
/obj/machinery/light/small/emergency,
|
||||
/obj/effect/floor_decal/industrial/warning{
|
||||
@@ -5043,13 +5043,13 @@
|
||||
dir = 8
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"js" = (
|
||||
/obj/structure/sign/electricshock{
|
||||
pixel_y = -32
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/bridge/aibunker)
|
||||
"jt" = (
|
||||
/obj/structure/cable/green{
|
||||
d1 = 1;
|
||||
@@ -5064,7 +5064,7 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"ju" = (
|
||||
/obj/structure/lattice/catwalk/indoor,
|
||||
/obj/structure/ladder/up{
|
||||
@@ -7398,7 +7398,7 @@
|
||||
/turf/simulated/floor/plating{
|
||||
roof_type = null
|
||||
},
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"rt" = (
|
||||
/obj/machinery/door/firedoor,
|
||||
/obj/structure/window/reinforced{
|
||||
@@ -8221,7 +8221,7 @@
|
||||
icon_state = "pipe-c"
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"yf" = (
|
||||
/obj/machinery/power/apc{
|
||||
dir = 1;
|
||||
@@ -9976,7 +9976,7 @@
|
||||
dir = 10
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"Js" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden{
|
||||
dir = 5;
|
||||
@@ -9995,7 +9995,7 @@
|
||||
dir = 4
|
||||
},
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"Jv" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
|
||||
dir = 4
|
||||
@@ -10004,7 +10004,7 @@
|
||||
dir = 4
|
||||
},
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"Jy" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/visible/universal{
|
||||
dir = 4
|
||||
@@ -10044,16 +10044,16 @@
|
||||
/area/medical/virology)
|
||||
"JC" = (
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"JD" = (
|
||||
/obj/machinery/atmospherics/unary/vent_scrubber/on{
|
||||
dir = 1
|
||||
},
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"JE" = (
|
||||
/turf/simulated/wall/r_wall,
|
||||
/area/maintenance/interstitial_bridge)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"JG" = (
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume{
|
||||
dir = 8;
|
||||
@@ -10158,7 +10158,7 @@
|
||||
dir = 4
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"Kk" = (
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/obj/machinery/pipedispenser,
|
||||
@@ -10943,7 +10943,7 @@
|
||||
dir = 8
|
||||
},
|
||||
/turf/simulated/open,
|
||||
/area/maintenance/maintcentral)
|
||||
/area/maintenance/bridge_elevator)
|
||||
"MV" = (
|
||||
/obj/machinery/door/firedoor,
|
||||
/obj/structure/grille,
|
||||
@@ -11505,9 +11505,6 @@
|
||||
},
|
||||
/turf/simulated/floor/tiled/dark,
|
||||
/area/bridge/selfdestruct)
|
||||
"Rg" = (
|
||||
/turf/unsimulated/floor/asteroid/ash/rocky,
|
||||
/area/space)
|
||||
"Ro" = (
|
||||
/obj/effect/floor_decal/corner/green{
|
||||
icon_state = "corner_white";
|
||||
@@ -38708,9 +38705,9 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
@@ -38964,11 +38961,11 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
@@ -39221,11 +39218,11 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
ab
|
||||
QW
|
||||
ab
|
||||
ab
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
@@ -39478,12 +39475,12 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
@@ -39735,12 +39732,12 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
@@ -39993,11 +39990,11 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
@@ -40206,7 +40203,7 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
QW
|
||||
ab
|
||||
ab
|
||||
au
|
||||
@@ -40252,10 +40249,10 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
ab
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
@@ -40509,10 +40506,10 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
@@ -40767,10 +40764,10 @@ aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
@@ -41025,7 +41022,7 @@ ab
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
aa
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
@@ -49421,7 +49418,7 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
@@ -49937,7 +49934,7 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
fx
|
||||
XT
|
||||
Un
|
||||
@@ -50194,7 +50191,7 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
in
|
||||
pk
|
||||
JI
|
||||
@@ -50451,7 +50448,7 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
in
|
||||
Dk
|
||||
oo
|
||||
@@ -50708,7 +50705,7 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
fy
|
||||
FJ
|
||||
UP
|
||||
@@ -50965,7 +50962,7 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
fw
|
||||
fN
|
||||
gj
|
||||
@@ -51222,7 +51219,7 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
@@ -57719,11 +57716,11 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
@@ -57976,13 +57973,13 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
bc
|
||||
JE
|
||||
cd
|
||||
re
|
||||
cg
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
@@ -58233,13 +58230,13 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
bc
|
||||
JE
|
||||
ce
|
||||
ch
|
||||
yb
|
||||
cj
|
||||
ck
|
||||
bc
|
||||
JE
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
@@ -58490,13 +58487,13 @@ aa
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
bc
|
||||
JE
|
||||
cf
|
||||
ci
|
||||
MS
|
||||
bc
|
||||
JE
|
||||
Kd
|
||||
bc
|
||||
JE
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
@@ -58728,7 +58725,7 @@ ab
|
||||
ab
|
||||
ab
|
||||
ab
|
||||
Rg
|
||||
ab
|
||||
ab
|
||||
bh
|
||||
bp
|
||||
@@ -58741,19 +58738,19 @@ bX
|
||||
bX
|
||||
bX
|
||||
JE
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
Kd
|
||||
bc
|
||||
JE
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
@@ -58998,7 +58995,7 @@ JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
bc
|
||||
JE
|
||||
cb
|
||||
bM
|
||||
bM
|
||||
@@ -59010,7 +59007,7 @@ bM
|
||||
bM
|
||||
bM
|
||||
cc
|
||||
bc
|
||||
JE
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
@@ -59255,19 +59252,19 @@ JE
|
||||
aa
|
||||
aa
|
||||
JE
|
||||
bc
|
||||
JE
|
||||
Kd
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
@@ -59502,19 +59499,19 @@ ab
|
||||
ab
|
||||
ab
|
||||
aa
|
||||
bc
|
||||
JE
|
||||
Kd
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
Kd
|
||||
bc
|
||||
JE
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
@@ -59771,7 +59768,7 @@ bM
|
||||
bM
|
||||
bM
|
||||
cc
|
||||
bc
|
||||
JE
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
@@ -60016,19 +60013,19 @@ ab
|
||||
ab
|
||||
ab
|
||||
aa
|
||||
bc
|
||||
JE
|
||||
bc
|
||||
jm
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
bc
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
JE
|
||||
aa
|
||||
aa
|
||||
aa
|
||||
|
||||
@@ -149,13 +149,20 @@
|
||||
|
||||
// Tau Ceti Foreign Legion
|
||||
|
||||
shuttle = new()
|
||||
shuttle.location = 1
|
||||
shuttle.warmup_time = 10
|
||||
shuttle.area_offsite = locate(/area/shuttle/legion/centcom)
|
||||
shuttle.area_station = locate(/area/shuttle/legion/station)
|
||||
shuttles["Tau Ceti Foreign Legion"] = shuttle
|
||||
START_PROCESSING(shuttle_controller, shuttle)
|
||||
var/datum/shuttle/ferry/legion/legion = new()
|
||||
legion = new()
|
||||
legion.location = 1
|
||||
legion.warmup_time = 10
|
||||
legion.area_offsite = locate(/area/shuttle/legion/centcom)
|
||||
legion.area_station = locate(/area/shuttle/legion/station)
|
||||
legion.area_transition = locate(/area/shuttle/legion/transit)
|
||||
legion.transit_direction = EAST
|
||||
legion.move_time = 75
|
||||
legion.docking_controller_tag = "legion_shuttle"
|
||||
legion.dock_target_station = "legion_shuttle_dock"
|
||||
legion.dock_target_offsite = "legion_hangar"
|
||||
shuttles["Tau Ceti Foreign Legion"] = legion
|
||||
START_PROCESSING(shuttle_controller, legion)
|
||||
|
||||
//Away Site shuttle.
|
||||
|
||||
|
||||
@@ -1,14 +1,13 @@
|
||||
{{:helper.syndicateMode()}}
|
||||
<H2><span class="white">Welcome Operative.</span></H2>
|
||||
<H2><span class="white">Welcome, Operative.</span></H2>
|
||||
|
||||
<H2>Please select your launch target:</H2>
|
||||
{{if data.used}}
|
||||
{{if data.status}}
|
||||
Pod Status: <span class="bad">Nonoperational</span></H2>
|
||||
{{else}}
|
||||
Pod Status: <span class="good">Operational</span></H2>
|
||||
{{:helper.link('Arrivals', 'gear', {'fire' : 'arrivals'})}}<br><br>
|
||||
{{:helper.link('Cargo', 'gear', {'fire' : 'cargo'})}}<br><br>
|
||||
{{:helper.link('Telecommunications', 'gear', {'fire' : 'tcoms'})}}<br><br>
|
||||
{{:helper.link('Command Escape', 'gear', {'fire' : 'commandescape'})}}<br><br>
|
||||
{{:helper.link('Departures', 'gear', {'fire' : 'arrivals'})}}<br><br>
|
||||
{{:helper.link('Cargo Surface', 'gear', {'fire' : 'cargo'})}}<br><br>
|
||||
{{:helper.link('Telecomms Lounge', 'gear', {'fire' : 'tcoms'})}}<br><br>
|
||||
{{:helper.link('Command Surface', 'gear', {'fire' : 'commandescape'})}}<br><br>
|
||||
{{/if}}
|
||||
|
||||
|
||||