mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2025-12-21 23:52:12 +00:00
Crystal Agitators (#8609)
This commit is contained in:
@@ -1006,6 +1006,7 @@
|
|||||||
#include "code\game\objects\structures\barsign.dm"
|
#include "code\game\objects\structures\barsign.dm"
|
||||||
#include "code\game\objects\structures\bedsheet_bin.dm"
|
#include "code\game\objects\structures\bedsheet_bin.dm"
|
||||||
#include "code\game\objects\structures\coathanger.dm"
|
#include "code\game\objects\structures\coathanger.dm"
|
||||||
|
#include "code\game\objects\structures\crystals.dm"
|
||||||
#include "code\game\objects\structures\curtains.dm"
|
#include "code\game\objects\structures\curtains.dm"
|
||||||
#include "code\game\objects\structures\displaycase.dm"
|
#include "code\game\objects\structures\displaycase.dm"
|
||||||
#include "code\game\objects\structures\door_assembly.dm"
|
#include "code\game\objects\structures\door_assembly.dm"
|
||||||
@@ -2277,6 +2278,7 @@
|
|||||||
#include "code\modules\power\cable.dm"
|
#include "code\modules\power\cable.dm"
|
||||||
#include "code\modules\power\cable_heavyduty.dm"
|
#include "code\modules\power\cable_heavyduty.dm"
|
||||||
#include "code\modules\power\cell.dm"
|
#include "code\modules\power\cell.dm"
|
||||||
|
#include "code\modules\power\crystal_agitator.dm"
|
||||||
#include "code\modules\power\fractal_reactor.dm"
|
#include "code\modules\power\fractal_reactor.dm"
|
||||||
#include "code\modules\power\generator.dm"
|
#include "code\modules\power\generator.dm"
|
||||||
#include "code\modules\power\generator_type2.dm"
|
#include "code\modules\power\generator_type2.dm"
|
||||||
|
|||||||
@@ -376,6 +376,16 @@
|
|||||||
#define AURA_TYPE_THROWN "Thrown"
|
#define AURA_TYPE_THROWN "Thrown"
|
||||||
#define AURA_TYPE_LIFE "Life"
|
#define AURA_TYPE_LIFE "Life"
|
||||||
|
|
||||||
|
// Remote Control defines
|
||||||
|
#define REMOTE_GENERIC_MECH "remotemechs"
|
||||||
|
#define REMOTE_AI_MECH "aimechs"
|
||||||
|
#define REMOTE_PRISON_MECH "prisonmechs"
|
||||||
|
|
||||||
|
#define REMOTE_GENERIC_ROBOT "remoterobots"
|
||||||
|
#define REMOTE_BUNKER_ROBOT "bunkerrobots"
|
||||||
|
#define REMOTE_PRISON_ROBOT "prisonrobots"
|
||||||
|
#define REMOTE_WARDEN_ROBOT "wardenrobots"
|
||||||
|
|
||||||
// Robot Overlay Defines
|
// Robot Overlay Defines
|
||||||
#define ROBOT_PANEL_EXPOSED "exposed"
|
#define ROBOT_PANEL_EXPOSED "exposed"
|
||||||
#define ROBOT_PANEL_CELL "cell"
|
#define ROBOT_PANEL_CELL "cell"
|
||||||
|
|||||||
@@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
// department channels
|
// department channels
|
||||||
var/const/PUB_FREQ = 1459
|
var/const/PUB_FREQ = 1459
|
||||||
|
var/const/PEN_FREQ = 1451
|
||||||
var/const/SEC_FREQ = 1359
|
var/const/SEC_FREQ = 1359
|
||||||
var/const/ENG_FREQ = 1357
|
var/const/ENG_FREQ = 1357
|
||||||
var/const/MED_FREQ = 1355
|
var/const/MED_FREQ = 1355
|
||||||
@@ -34,6 +35,7 @@ var/list/radiochannels = list(
|
|||||||
"Medical" = MED_FREQ,
|
"Medical" = MED_FREQ,
|
||||||
"Engineering" = ENG_FREQ,
|
"Engineering" = ENG_FREQ,
|
||||||
"Security" = SEC_FREQ,
|
"Security" = SEC_FREQ,
|
||||||
|
"Penal" = PEN_FREQ,
|
||||||
"Response Team" = ERT_FREQ,
|
"Response Team" = ERT_FREQ,
|
||||||
"Special Ops" = DTH_FREQ,
|
"Special Ops" = DTH_FREQ,
|
||||||
"Mercenary" = SYND_FREQ,
|
"Mercenary" = SYND_FREQ,
|
||||||
|
|||||||
@@ -173,6 +173,8 @@ var/datum/controller/subsystem/radio/SSradio
|
|||||||
. = "airadio"
|
. = "airadio"
|
||||||
if (SEC_FREQ,SEC_I_FREQ)
|
if (SEC_FREQ,SEC_I_FREQ)
|
||||||
. = "secradio"
|
. = "secradio"
|
||||||
|
if (PEN_FREQ)
|
||||||
|
. = "penradio"
|
||||||
if (ENG_FREQ)
|
if (ENG_FREQ)
|
||||||
. = "engradio"
|
. = "engradio"
|
||||||
if (SCI_FREQ)
|
if (SCI_FREQ)
|
||||||
|
|||||||
@@ -6,11 +6,11 @@
|
|||||||
flags = SS_NO_FIRE
|
flags = SS_NO_FIRE
|
||||||
|
|
||||||
// MECHA
|
// MECHA
|
||||||
var/list/mechnetworks = list("remotemechs", "aimechs", "prisonmechs") // A list of all the networks a mech can possibly connect to
|
var/list/mechnetworks = list(REMOTE_GENERIC_MECH, REMOTE_AI_MECH, REMOTE_PRISON_MECH) // A list of all the networks a mech can possibly connect to
|
||||||
var/list/list/mechs = list() // A list of lists, containing the mechs and their networks
|
var/list/list/mechs = list() // A list of lists, containing the mechs and their networks
|
||||||
|
|
||||||
// IPC BODIES
|
// IPC BODIES
|
||||||
var/list/robotnetworks = list("remoterobots", "bunkerrobots", "prisonrobots")
|
var/list/robotnetworks = list(REMOTE_GENERIC_ROBOT, REMOTE_BUNKER_ROBOT, REMOTE_PRISON_ROBOT, REMOTE_WARDEN_ROBOT)
|
||||||
var/list/list/robots = list()
|
var/list/list/robots = list()
|
||||||
|
|
||||||
/datum/controller/subsystem/virtualreality/New()
|
/datum/controller/subsystem/virtualreality/New()
|
||||||
@@ -125,7 +125,6 @@
|
|||||||
|
|
||||||
/datum/controller/subsystem/virtualreality/proc/mech_selection(var/user, var/network)
|
/datum/controller/subsystem/virtualreality/proc/mech_selection(var/user, var/network)
|
||||||
var/list/mech = list()
|
var/list/mech = list()
|
||||||
mech["Return"] = null
|
|
||||||
|
|
||||||
for(var/mob/living/heavy_vehicle/R in mechs[network])
|
for(var/mob/living/heavy_vehicle/R in mechs[network])
|
||||||
var/turf/T = get_turf(R)
|
var/turf/T = get_turf(R)
|
||||||
@@ -144,23 +143,20 @@
|
|||||||
continue
|
continue
|
||||||
mech[R.name] = R
|
mech[R.name] = R
|
||||||
|
|
||||||
if(mech.len == 1)
|
if(!length(mech))
|
||||||
to_chat(user, SPAN_WARNING("No active remote mechs are available."))
|
to_chat(user, SPAN_WARNING("No active remote mechs are available."))
|
||||||
return
|
return
|
||||||
|
|
||||||
var/desc = input("Please select a remote control compatible mech to take over.", "Remote Mech Selection") in mech|null
|
var/choice = input("Please select a remote control compatible mech to take over.", "Remote Mech Selection") as null|anything in mech
|
||||||
if(!desc)
|
if(!choice)
|
||||||
return
|
return
|
||||||
|
|
||||||
var/mob/living/heavy_vehicle/chosen_mech = mech[desc]
|
var/mob/living/heavy_vehicle/chosen_mech = mech[choice]
|
||||||
var/mob/living/remote_pilot = chosen_mech.pilots[1] // the first pilot
|
var/mob/living/remote_pilot = chosen_mech.pilots[1] // the first pilot
|
||||||
mind_transfer(user, remote_pilot)
|
mind_transfer(user, remote_pilot)
|
||||||
|
|
||||||
return
|
|
||||||
|
|
||||||
/datum/controller/subsystem/virtualreality/proc/robot_selection(var/user, var/network)
|
/datum/controller/subsystem/virtualreality/proc/robot_selection(var/user, var/network)
|
||||||
var/list/robot = list()
|
var/list/robot = list()
|
||||||
robot["Return"] = null
|
|
||||||
|
|
||||||
for(var/mob/living/R in robots[network])
|
for(var/mob/living/R in robots[network])
|
||||||
var/turf/T = get_turf(R)
|
var/turf/T = get_turf(R)
|
||||||
@@ -174,14 +170,12 @@
|
|||||||
continue
|
continue
|
||||||
robot[R.name] = R
|
robot[R.name] = R
|
||||||
|
|
||||||
if(robot.len == 1)
|
if(!length(robot))
|
||||||
to_chat(user, SPAN_WARNING("No active remote robots are available."))
|
to_chat(user, SPAN_WARNING("No active remote robots are available."))
|
||||||
return
|
return
|
||||||
|
|
||||||
var/desc = input("Please select a remote control robot to take over.", "Remote Robot Selection") in robot|null
|
var/choice = input("Please select a remote control robot to take over.", "Remote Robot Selection") as null|anything in robot
|
||||||
if(!desc)
|
if(!choice)
|
||||||
return
|
return
|
||||||
|
|
||||||
mind_transfer(user, robot[desc])
|
mind_transfer(user, robot[choice])
|
||||||
|
|
||||||
return
|
|
||||||
@@ -88,7 +88,7 @@
|
|||||||
|
|
||||||
uniform = /obj/item/clothing/under/rank/warden
|
uniform = /obj/item/clothing/under/rank/warden
|
||||||
shoes = /obj/item/clothing/shoes/jackboots
|
shoes = /obj/item/clothing/shoes/jackboots
|
||||||
l_ear = /obj/item/device/radio/headset/headset_sec
|
l_ear = /obj/item/device/radio/headset/headset_warden
|
||||||
pda = /obj/item/device/pda/warden
|
pda = /obj/item/device/pda/warden
|
||||||
glasses = /obj/item/clothing/glasses/sunglasses/sechud/head
|
glasses = /obj/item/clothing/glasses/sunglasses/sechud/head
|
||||||
l_pocket = /obj/item/device/flash
|
l_pocket = /obj/item/device/flash
|
||||||
|
|||||||
@@ -69,7 +69,7 @@
|
|||||||
to_chat(user, SPAN_NOTICE("You paint the target at [target]."))
|
to_chat(user, SPAN_NOTICE("You paint the target at [target]."))
|
||||||
|
|
||||||
var/obj/item/device/radio/intercom/announcer = new /obj/item/device/radio/intercom(null)
|
var/obj/item/device/radio/intercom/announcer = new /obj/item/device/radio/intercom(null)
|
||||||
announcer.config(list("Common" = FALSE, "Entertainment" = FALSE, "Response Team" = FALSE, "Science" = FALSE, "Command" = FALSE, "Medical" = FALSE, "Engineering" = FALSE, "Security" = FALSE, "Supply" = FALSE, "Service" = FALSE, "Mercenary" = FALSE, "Raider" = FALSE, "Ninja" = FALSE, "AI Private" = FALSE))
|
announcer.config(list("Common" = FALSE, "Entertainment" = FALSE, "Response Team" = FALSE, "Science" = FALSE, "Command" = FALSE, "Medical" = FALSE, "Engineering" = FALSE, "Security" = FALSE, "Penal" = FALSE, "Supply" = FALSE, "Service" = FALSE, "Mercenary" = FALSE, "Raider" = FALSE, "Ninja" = FALSE, "AI Private" = FALSE))
|
||||||
if(announcer)
|
if(announcer)
|
||||||
if(!emagged)
|
if(!emagged)
|
||||||
announcer.autosay(drop_message, announcer_name, announcer_channel)
|
announcer.autosay(drop_message, announcer_name, announcer_channel)
|
||||||
|
|||||||
@@ -8,6 +8,7 @@
|
|||||||
#define CHANNEL_SUPPLY "Supply"
|
#define CHANNEL_SUPPLY "Supply"
|
||||||
#define CHANNEL_SERVICE "Service"
|
#define CHANNEL_SERVICE "Service"
|
||||||
#define CHANNEL_AI_PRIVATE "AI Private"
|
#define CHANNEL_AI_PRIVATE "AI Private"
|
||||||
|
#define CHANNEL_PENAL "Penal"
|
||||||
|
|
||||||
#define CHANNEL_RESPONSE_TEAM "Response Team"
|
#define CHANNEL_RESPONSE_TEAM "Response Team"
|
||||||
|
|
||||||
|
|||||||
@@ -57,6 +57,16 @@
|
|||||||
icon_state = "sec_cypherkey"
|
icon_state = "sec_cypherkey"
|
||||||
channels = list(CHANNEL_SECURITY = TRUE)
|
channels = list(CHANNEL_SECURITY = TRUE)
|
||||||
|
|
||||||
|
/obj/item/device/encryptionkey/headset_warden
|
||||||
|
name = "warden radio encryption key"
|
||||||
|
icon_state = "sec_cypherkey"
|
||||||
|
channels = list(CHANNEL_SECURITY = TRUE, CHANNEL_PENAL = TRUE)
|
||||||
|
|
||||||
|
/obj/item/device/encryptionkey/headset_penal
|
||||||
|
name = "penal radio encryption key"
|
||||||
|
icon_state = "cargo_cypherkey"
|
||||||
|
channels = list(CHANNEL_PENAL = TRUE)
|
||||||
|
|
||||||
/obj/item/device/encryptionkey/headset_eng
|
/obj/item/device/encryptionkey/headset_eng
|
||||||
name = "engineering radio encryption key"
|
name = "engineering radio encryption key"
|
||||||
icon_state = "eng_cypherkey"
|
icon_state = "eng_cypherkey"
|
||||||
@@ -90,13 +100,13 @@
|
|||||||
/obj/item/device/encryptionkey/heads/captain
|
/obj/item/device/encryptionkey/heads/captain
|
||||||
name = "captain's encryption key"
|
name = "captain's encryption key"
|
||||||
icon_state = "cap_cypherkey"
|
icon_state = "cap_cypherkey"
|
||||||
channels = list(CHANNEL_COMMAND = TRUE, CHANNEL_SECURITY = TRUE, CHANNEL_ENGINEERING = FALSE, CHANNEL_SCIENCE = FALSE, CHANNEL_MEDICAL = FALSE, CHANNEL_SUPPLY = FALSE, CHANNEL_SERVICE = FALSE)
|
channels = list(CHANNEL_COMMAND = TRUE, CHANNEL_SECURITY = TRUE, CHANNEL_PENAL = TRUE, CHANNEL_ENGINEERING = FALSE, CHANNEL_SCIENCE = FALSE, CHANNEL_MEDICAL = FALSE, CHANNEL_SUPPLY = FALSE, CHANNEL_SERVICE = FALSE)
|
||||||
|
|
||||||
/obj/item/device/encryptionkey/heads/ai_integrated
|
/obj/item/device/encryptionkey/heads/ai_integrated
|
||||||
name = "ai integrated encryption key"
|
name = "ai integrated encryption key"
|
||||||
desc = "Integrated encryption key"
|
desc = "Integrated encryption key"
|
||||||
icon_state = "cap_cypherkey"
|
icon_state = "cap_cypherkey"
|
||||||
channels = list(CHANNEL_COMMAND = TRUE, CHANNEL_SECURITY = TRUE, CHANNEL_ENGINEERING = TRUE, CHANNEL_SCIENCE = TRUE, CHANNEL_MEDICAL = TRUE, CHANNEL_SUPPLY = TRUE, CHANNEL_SERVICE = TRUE, CHANNEL_AI_PRIVATE = TRUE)
|
channels = list(CHANNEL_COMMAND = TRUE, CHANNEL_SECURITY = TRUE, CHANNEL_PENAL = TRUE, CHANNEL_ENGINEERING = TRUE, CHANNEL_SCIENCE = TRUE, CHANNEL_MEDICAL = TRUE, CHANNEL_SUPPLY = TRUE, CHANNEL_SERVICE = TRUE, CHANNEL_AI_PRIVATE = TRUE)
|
||||||
|
|
||||||
/obj/item/device/encryptionkey/heads/rd
|
/obj/item/device/encryptionkey/heads/rd
|
||||||
name = "research director's encryption key"
|
name = "research director's encryption key"
|
||||||
@@ -106,7 +116,7 @@
|
|||||||
/obj/item/device/encryptionkey/heads/hos
|
/obj/item/device/encryptionkey/heads/hos
|
||||||
name = "head of security's encryption key"
|
name = "head of security's encryption key"
|
||||||
icon_state = "hos_cypherkey"
|
icon_state = "hos_cypherkey"
|
||||||
channels = list(CHANNEL_SECURITY = TRUE, CHANNEL_COMMAND = TRUE)
|
channels = list(CHANNEL_SECURITY = TRUE, CHANNEL_COMMAND = TRUE, CHANNEL_PENAL = TRUE)
|
||||||
|
|
||||||
/obj/item/device/encryptionkey/heads/ce
|
/obj/item/device/encryptionkey/heads/ce
|
||||||
name = "chief engineer's encryption key"
|
name = "chief engineer's encryption key"
|
||||||
@@ -121,7 +131,7 @@
|
|||||||
/obj/item/device/encryptionkey/heads/hop
|
/obj/item/device/encryptionkey/heads/hop
|
||||||
name = "head of personnel's encryption key"
|
name = "head of personnel's encryption key"
|
||||||
icon_state = "hop_cypherkey"
|
icon_state = "hop_cypherkey"
|
||||||
channels = list(CHANNEL_SUPPLY = TRUE, CHANNEL_SERVICE = TRUE, CHANNEL_COMMAND = TRUE, CHANNEL_SECURITY = FALSE)
|
channels = list(CHANNEL_SUPPLY = TRUE, CHANNEL_SERVICE = TRUE, CHANNEL_COMMAND = TRUE, CHANNEL_SECURITY = FALSE, CHANNEL_PENAL = FALSE)
|
||||||
|
|
||||||
/obj/item/device/encryptionkey/headset_cargo
|
/obj/item/device/encryptionkey/headset_cargo
|
||||||
name = "supply radio encryption key"
|
name = "supply radio encryption key"
|
||||||
|
|||||||
@@ -315,6 +315,23 @@
|
|||||||
icon_state = "sec_headset_alt"
|
icon_state = "sec_headset_alt"
|
||||||
item_state = "headset_alt"
|
item_state = "headset_alt"
|
||||||
|
|
||||||
|
/obj/item/device/radio/headset/headset_warden
|
||||||
|
name = "warden radio headset"
|
||||||
|
desc = "This is used by your all-powerful overseer."
|
||||||
|
icon_state = "sec_headset"
|
||||||
|
ks2type = /obj/item/device/encryptionkey/headset_warden
|
||||||
|
|
||||||
|
/obj/item/device/radio/headset/headset_warden/alt
|
||||||
|
name = "warden bowman headset"
|
||||||
|
icon_state = "sec_headset_alt"
|
||||||
|
item_state = "headset_alt"
|
||||||
|
|
||||||
|
/obj/item/device/radio/headset/headset_penal
|
||||||
|
name = "penal radio headset"
|
||||||
|
desc = "A headset used by people who have chosen or been chosen to work the fields."
|
||||||
|
icon_state = "mine_headset"
|
||||||
|
ks2type = /obj/item/device/encryptionkey/headset_penal
|
||||||
|
|
||||||
/obj/item/device/radio/headset/heads/hos
|
/obj/item/device/radio/headset/heads/hos
|
||||||
name = "head of security's headset"
|
name = "head of security's headset"
|
||||||
desc = "The headset of the man who protects your worthless lifes."
|
desc = "The headset of the man who protects your worthless lifes."
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ var/global/list/default_internal_channels = list(
|
|||||||
num2text(MED_I_FREQ)=list(access_medical_equip),
|
num2text(MED_I_FREQ)=list(access_medical_equip),
|
||||||
num2text(SEC_FREQ) = list(access_security),
|
num2text(SEC_FREQ) = list(access_security),
|
||||||
num2text(SEC_I_FREQ)=list(access_security),
|
num2text(SEC_I_FREQ)=list(access_security),
|
||||||
|
num2text(PEN_FREQ) = list(access_armory),
|
||||||
num2text(SCI_FREQ) = list(access_tox,access_robotics,access_xenobiology),
|
num2text(SCI_FREQ) = list(access_tox,access_robotics,access_xenobiology),
|
||||||
num2text(SUP_FREQ) = list(access_cargo),
|
num2text(SUP_FREQ) = list(access_cargo),
|
||||||
num2text(SRV_FREQ) = list(access_janitor, access_hydroponics)
|
num2text(SRV_FREQ) = list(access_janitor, access_hydroponics)
|
||||||
|
|||||||
@@ -219,8 +219,8 @@
|
|||||||
new /obj/item/clothing/gloves/black_leather(src)
|
new /obj/item/clothing/gloves/black_leather(src)
|
||||||
//Tools
|
//Tools
|
||||||
new /obj/item/cartridge/security(src)
|
new /obj/item/cartridge/security(src)
|
||||||
new /obj/item/device/radio/headset/headset_sec(src)
|
new /obj/item/device/radio/headset/headset_warden(src)
|
||||||
new /obj/item/device/radio/headset/headset_sec/alt(src)
|
new /obj/item/device/radio/headset/headset_warden/alt(src)
|
||||||
new /obj/item/clothing/glasses/sunglasses/sechud/aviator(src)
|
new /obj/item/clothing/glasses/sunglasses/sechud/aviator(src)
|
||||||
new /obj/item/clothing/glasses/sunglasses/sechud(src)
|
new /obj/item/clothing/glasses/sunglasses/sechud(src)
|
||||||
new /obj/item/taperoll/police(src)
|
new /obj/item/taperoll/police(src)
|
||||||
|
|||||||
176
code/game/objects/structures/crystals.dm
Normal file
176
code/game/objects/structures/crystals.dm
Normal file
@@ -0,0 +1,176 @@
|
|||||||
|
/obj/structure/reagent_crystal
|
||||||
|
name = "chemical crystal cluster"
|
||||||
|
desc = "A cluster of hardened chemical crystals."
|
||||||
|
icon = 'icons/obj/crystals.dmi'
|
||||||
|
icon_state = "scattered"
|
||||||
|
anchored = TRUE
|
||||||
|
density = FALSE
|
||||||
|
layer = ABOVE_CABLE_LAYER
|
||||||
|
var/datum/reagent/reagent_id
|
||||||
|
var/state = 0
|
||||||
|
var/health = 100
|
||||||
|
var/mine_rate = 1 // how fast you can mine it
|
||||||
|
|
||||||
|
var/obj/machinery/power/crystal_agitator/creator // used to re-add dense turfs to agitation list when destroyed
|
||||||
|
|
||||||
|
/obj/structure/reagent_crystal/Initialize(mapload, var/reagent_i = null, var/our_creator = null)
|
||||||
|
. = ..()
|
||||||
|
if(!reagent_i)
|
||||||
|
var/list/chems = list(/datum/reagent/acetone, /datum/reagent/aluminum, /datum/reagent/ammonia, /datum/reagent/carbon, /datum/reagent/copper, /datum/reagent/iron, /datum/reagent/lithium, /datum/reagent/mercury, /datum/reagent/potassium, /datum/reagent/radium, /datum/reagent/sodium)
|
||||||
|
reagent_i = pick(chems)
|
||||||
|
reagent_id = reagent_i
|
||||||
|
name = replacetext(name, "chemical", lowertext(initial(reagent_id.name)))
|
||||||
|
desc = replacetext(desc, "chemical", lowertext(initial(reagent_id.name)))
|
||||||
|
var/mutable_appearance/crystal_overlay = mutable_appearance(icon, "[initial(icon_state)]-overlay")
|
||||||
|
crystal_overlay.color = initial(reagent_id.color)
|
||||||
|
add_overlay(crystal_overlay)
|
||||||
|
if(our_creator)
|
||||||
|
creator = our_creator
|
||||||
|
|
||||||
|
/obj/structure/reagent_crystal/examine(mob/user)
|
||||||
|
. = ..()
|
||||||
|
var/state
|
||||||
|
var/current_damage = health / initial(health)
|
||||||
|
switch(current_damage)
|
||||||
|
if(0 to 0.2)
|
||||||
|
state = SPAN_DANGER("The crystal is barely holding together!")
|
||||||
|
if(0.2 to 0.4)
|
||||||
|
state = SPAN_WARNING("The crystal has various cracks visible!")
|
||||||
|
if(0.4 to 0.8)
|
||||||
|
state = SPAN_WARNING("The crystal has scratches and deeper grooves on its surface.")
|
||||||
|
if(0.8 to 1)
|
||||||
|
state = SPAN_NOTICE("The crystal looks structurally sound.")
|
||||||
|
to_chat(user, state)
|
||||||
|
|
||||||
|
/obj/structure/reagent_crystal/proc/take_damage(var/damage)
|
||||||
|
health -= damage
|
||||||
|
if(health <= 0)
|
||||||
|
visible_message(SPAN_WARNING("\The [src] collapses into smaller crystals!"))
|
||||||
|
harvest()
|
||||||
|
|
||||||
|
/obj/structure/reagent_crystal/attack_hand(mob/user)
|
||||||
|
if(HULK in user.mutations)
|
||||||
|
user.visible_message(SPAN_WARNING("\The [user] smashes \the [src] apart!"), SPAN_WARNING("You smash \the [src] apart!"))
|
||||||
|
harvest()
|
||||||
|
return
|
||||||
|
return ..()
|
||||||
|
|
||||||
|
/obj/structure/reagent_crystal/attackby(obj/item/W, mob/user)
|
||||||
|
if(istype(W, /obj/item/gun/energy/plasmacutter))
|
||||||
|
mine_crystal(user, 30 / W.toolspeed, W.usesound)
|
||||||
|
|
||||||
|
else if(istype(W, /obj/item/melee/energy))
|
||||||
|
var/obj/item/melee/energy/WT = W
|
||||||
|
if(WT.active)
|
||||||
|
mine_crystal(user, 30 / W.toolspeed, W.usesound)
|
||||||
|
else
|
||||||
|
to_chat(user, SPAN_NOTICE("You need to activate \the [W] to do that!"))
|
||||||
|
return
|
||||||
|
|
||||||
|
else if(istype(W, /obj/item/melee/energy/blade))
|
||||||
|
mine_crystal(user, 30 / W.toolspeed, W.usesound)
|
||||||
|
|
||||||
|
else if(istype(W, /obj/item/pickaxe))
|
||||||
|
var/obj/item/pickaxe/P = W
|
||||||
|
mine_crystal(user, P.digspeed, W.usesound)
|
||||||
|
|
||||||
|
else if(W.force > 5)
|
||||||
|
user.do_attack_animation(src)
|
||||||
|
playsound(get_turf(src), 'sound/weapons/smash.ogg', 50)
|
||||||
|
visible_message(SPAN_WARNING("\The [user] smashes \the [W] into \the [src]."))
|
||||||
|
take_damage(W.force * 4)
|
||||||
|
|
||||||
|
/obj/structure/reagent_crystal/proc/mine_crystal(var/mob/user, var/time_to_dig, var/use_sound)
|
||||||
|
if(!user)
|
||||||
|
return
|
||||||
|
if(!time_to_dig)
|
||||||
|
time_to_dig = 50
|
||||||
|
|
||||||
|
if(do_after(user, time_to_dig * mine_rate, act_target = src))
|
||||||
|
if(!src)
|
||||||
|
return
|
||||||
|
harvest()
|
||||||
|
if(use_sound)
|
||||||
|
playsound(get_turf(src), use_sound, 30, TRUE)
|
||||||
|
|
||||||
|
/obj/structure/reagent_crystal/proc/harvest()
|
||||||
|
new /obj/item/reagent_crystal(get_turf(src), reagent_id, 5)
|
||||||
|
qdel(src)
|
||||||
|
|
||||||
|
/obj/structure/reagent_crystal/ex_act(severity)
|
||||||
|
switch(severity)
|
||||||
|
if(1.0)
|
||||||
|
qdel(src)
|
||||||
|
return
|
||||||
|
if(2.0)
|
||||||
|
if(prob(30))
|
||||||
|
harvest()
|
||||||
|
return
|
||||||
|
else
|
||||||
|
health -= rand(60,180)
|
||||||
|
if(3.0)
|
||||||
|
if(prob(5))
|
||||||
|
harvest()
|
||||||
|
return
|
||||||
|
else
|
||||||
|
health -= rand(40,80)
|
||||||
|
else
|
||||||
|
if(health <= 0)
|
||||||
|
harvest()
|
||||||
|
return
|
||||||
|
|
||||||
|
/obj/structure/reagent_crystal/attack_generic(var/mob/user, var/damage, var/attack_message = "smashes apart", var/wallbreaker)
|
||||||
|
if(!damage || !wallbreaker)
|
||||||
|
return FALSE
|
||||||
|
user.do_attack_animation(src)
|
||||||
|
visible_message(SPAN_WARNING("\The [user] [attack_message] \the [src]!"))
|
||||||
|
harvest()
|
||||||
|
return TRUE
|
||||||
|
|
||||||
|
/obj/structure/reagent_crystal/proc/become_dense()
|
||||||
|
var/health_mod = health / initial(health)
|
||||||
|
var/obj/structure/reagent_crystal/dense/P = new /obj/structure/reagent_crystal/dense(get_turf(src), reagent_id, creator)
|
||||||
|
P.health *= health_mod
|
||||||
|
if(creator)
|
||||||
|
creator.agitation_turfs -= get_turf(src)
|
||||||
|
qdel(src)
|
||||||
|
|
||||||
|
/obj/structure/reagent_crystal/dense
|
||||||
|
name = "dense chemical crystal cluster"
|
||||||
|
desc = "A dense cluster of hardened chemical crystals."
|
||||||
|
icon_state = "dense"
|
||||||
|
health = 200
|
||||||
|
mine_rate = 2
|
||||||
|
|
||||||
|
/obj/structure/reagent_crystal/dense/harvest()
|
||||||
|
var/turf/our_turf = get_turf(src)
|
||||||
|
for(var/i = 0 to 2)
|
||||||
|
new /obj/item/reagent_crystal(our_turf, reagent_id, 5)
|
||||||
|
if(creator)
|
||||||
|
creator.agitation_turfs += our_turf
|
||||||
|
qdel(src)
|
||||||
|
|
||||||
|
/obj/item/reagent_crystal
|
||||||
|
name = "crystal"
|
||||||
|
desc = "A clear, pointy crystal. It looks rough, unprocessed."
|
||||||
|
icon = 'icons/obj/crystals.dmi'
|
||||||
|
icon_state = "crystal"
|
||||||
|
|
||||||
|
/obj/item/reagent_crystal/Initialize(mapload, reagent_i, amount)
|
||||||
|
. = ..()
|
||||||
|
create_reagents(5)
|
||||||
|
reagents.add_reagent(reagent_i, amount)
|
||||||
|
var/datum/reagent/R = new reagent_i
|
||||||
|
name = "[lowertext(R.name)] crystal"
|
||||||
|
desc = "A [lowertext(R.name)] crystal. It looks rough, unprocessed."
|
||||||
|
desc_info = "This crystal can be grinded to obtain the chemical material locked within."
|
||||||
|
color = reagents.get_color()
|
||||||
|
|
||||||
|
/obj/item/storage/bag/crystal
|
||||||
|
name = "crystal satchel"
|
||||||
|
desc = "This big boy can store a vast amount of crystals."
|
||||||
|
icon = 'icons/obj/mining.dmi'
|
||||||
|
icon_state = "satchel"
|
||||||
|
slot_flags = SLOT_BELT | SLOT_POCKET
|
||||||
|
max_storage_space = 100
|
||||||
|
can_hold = list(/obj/item/reagent_crystal)
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
/obj/structure/bed/chair/remote/mech
|
/obj/structure/bed/chair/remote/mech
|
||||||
name = "mech control centre"
|
name = "mech control centre"
|
||||||
desc = "A comfortable chair with full audio-visual transposition centres. This one gives you access to exosuits attached to the remote network."
|
desc = "A comfortable chair with full audio-visual transposition centres. This one gives you access to exosuits attached to the remote network."
|
||||||
remote_network = "remotemechs"
|
remote_network = REMOTE_GENERIC_MECH
|
||||||
|
|
||||||
/obj/structure/bed/chair/remote/mech/user_buckle_mob(mob/user)
|
/obj/structure/bed/chair/remote/mech/user_buckle_mob(mob/user)
|
||||||
..()
|
..()
|
||||||
@@ -15,7 +15,7 @@
|
|||||||
/obj/structure/bed/chair/remote/mech/prison
|
/obj/structure/bed/chair/remote/mech/prison
|
||||||
name = "brig mech control centre"
|
name = "brig mech control centre"
|
||||||
desc = "A comfortable chair with full audio-visual transposition centres. This one gives you access to exosuits attached to the brig network."
|
desc = "A comfortable chair with full audio-visual transposition centres. This one gives you access to exosuits attached to the brig network."
|
||||||
remote_network = "prisonmechs"
|
remote_network = REMOTE_PRISON_MECH
|
||||||
|
|
||||||
/obj/structure/bed/chair/remote/mech/prison/portable
|
/obj/structure/bed/chair/remote/mech/prison/portable
|
||||||
portable_type = /obj/item/deployable_kit/remote_mech/brig
|
portable_type = /obj/item/deployable_kit/remote_mech/brig
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
/obj/structure/bed/chair/remote/robot
|
/obj/structure/bed/chair/remote/robot
|
||||||
name = "robot control centre"
|
name = "robot control centre"
|
||||||
desc = "A comfortable chair with full audio-visual transposition centres. This one gives you access to robots attached to the remote network."
|
desc = "A comfortable chair with full audio-visual transposition centres. This one gives you access to robots attached to the remote network."
|
||||||
remote_network = "remoterobots"
|
remote_network = REMOTE_GENERIC_ROBOT
|
||||||
|
|
||||||
/obj/structure/bed/chair/remote/robot/user_buckle_mob(mob/user)
|
/obj/structure/bed/chair/remote/robot/user_buckle_mob(mob/user)
|
||||||
..()
|
..()
|
||||||
@@ -12,4 +12,14 @@
|
|||||||
/obj/structure/bed/chair/remote/robot/bunker
|
/obj/structure/bed/chair/remote/robot/bunker
|
||||||
name = "bunker robot control centre"
|
name = "bunker robot control centre"
|
||||||
desc = "A comfortable chair with full audio-visual transposition centres. This one gives you access to robots attached to the bunker network."
|
desc = "A comfortable chair with full audio-visual transposition centres. This one gives you access to robots attached to the bunker network."
|
||||||
remote_network = "bunkerrobots"
|
remote_network = REMOTE_BUNKER_ROBOT
|
||||||
|
|
||||||
|
/obj/structure/bed/chair/remote/robot/prison
|
||||||
|
name = "penal robot control centre"
|
||||||
|
desc = "A comfortable chair with full audio-visual transposition centres. This one gives you access to robots attached to the penal network."
|
||||||
|
remote_network = REMOTE_PRISON_ROBOT
|
||||||
|
|
||||||
|
/obj/structure/bed/chair/remote/robot/warden
|
||||||
|
name = "warden robot control centre"
|
||||||
|
desc = "A comfortable chair with full audio-visual transposition centres. This one gives you access to robots attached to the warden's network."
|
||||||
|
remote_network = REMOTE_WARDEN_ROBOT
|
||||||
@@ -5,7 +5,7 @@
|
|||||||
icon_state = "aislot"
|
icon_state = "aislot"
|
||||||
origin_tech = list(TECH_BLUESPACE = 3, TECH_MATERIAL = 4, TECH_DATA = 4)
|
origin_tech = list(TECH_BLUESPACE = 3, TECH_MATERIAL = 4, TECH_DATA = 4)
|
||||||
w_class = ITEMSIZE_SMALL
|
w_class = ITEMSIZE_SMALL
|
||||||
var/mech_remote_network = "remotemechs"
|
var/mech_remote_network = REMOTE_GENERIC_MECH
|
||||||
var/hardpoint_lock = FALSE // Whether mechs that receive this upgrade gets locked
|
var/hardpoint_lock = FALSE // Whether mechs that receive this upgrade gets locked
|
||||||
var/dummy_path = /mob/living/simple_animal/spiderbot
|
var/dummy_path = /mob/living/simple_animal/spiderbot
|
||||||
|
|
||||||
@@ -19,7 +19,7 @@
|
|||||||
/obj/item/remote_mecha/penal
|
/obj/item/remote_mecha/penal
|
||||||
name = "penal exosuit remote upgrade"
|
name = "penal exosuit remote upgrade"
|
||||||
desc = "A device that, when inserted into an exosuit, allows it to be remotely piloted. Intended for prison networks."
|
desc = "A device that, when inserted into an exosuit, allows it to be remotely piloted. Intended for prison networks."
|
||||||
mech_remote_network = "prisonmechs"
|
mech_remote_network = REMOTE_PRISON_MECH
|
||||||
hardpoint_lock = TRUE
|
hardpoint_lock = TRUE
|
||||||
|
|
||||||
/obj/item/remote_mecha/penal/examine(mob/user)
|
/obj/item/remote_mecha/penal/examine(mob/user)
|
||||||
@@ -30,5 +30,5 @@
|
|||||||
/obj/item/remote_mecha/ai
|
/obj/item/remote_mecha/ai
|
||||||
name = "AI exosuit remote upgrade"
|
name = "AI exosuit remote upgrade"
|
||||||
desc = "A device that, when inserted into an exosuit, allows it to be remotely piloted by the artificial intelligence."
|
desc = "A device that, when inserted into an exosuit, allows it to be remotely piloted by the artificial intelligence."
|
||||||
mech_remote_network = "aimechs"
|
mech_remote_network = REMOTE_AI_MECH
|
||||||
dummy_path = /mob/living/simple_animal/spiderbot/ai
|
dummy_path = /mob/living/simple_animal/spiderbot/ai
|
||||||
@@ -254,7 +254,7 @@
|
|||||||
remote = TRUE
|
remote = TRUE
|
||||||
name = name + " \"[pick("Jaeger", "Reaver", "Templar", "Juggernaut", "Basilisk")]-[rand(0, 999)]\""
|
name = name + " \"[pick("Jaeger", "Reaver", "Templar", "Juggernaut", "Basilisk")]-[rand(0, 999)]\""
|
||||||
if(!remote_network)
|
if(!remote_network)
|
||||||
remote_network = "remotemechs"
|
remote_network = REMOTE_GENERIC_MECH
|
||||||
SSvirtualreality.add_mech(src, remote_network)
|
SSvirtualreality.add_mech(src, remote_network)
|
||||||
|
|
||||||
if(hatch_closed)
|
if(hatch_closed)
|
||||||
|
|||||||
@@ -18,10 +18,10 @@
|
|||||||
/mob/living/heavy_vehicle/premade/miner/remote
|
/mob/living/heavy_vehicle/premade/miner/remote
|
||||||
name = "remote mining mecha"
|
name = "remote mining mecha"
|
||||||
dummy_colour = "#ffc44f"
|
dummy_colour = "#ffc44f"
|
||||||
remote_network = "remotemechs"
|
remote_network = REMOTE_GENERIC_MECH
|
||||||
does_hardpoint_lock = FALSE
|
does_hardpoint_lock = FALSE
|
||||||
|
|
||||||
/mob/living/heavy_vehicle/premade/miner/remote_prison
|
/mob/living/heavy_vehicle/premade/miner/remote_prison
|
||||||
name = "penal mining mecha"
|
name = "penal mining mecha"
|
||||||
dummy_colour = "#302e2b"
|
dummy_colour = "#302e2b"
|
||||||
remote_network = "prisonmechs"
|
remote_network = REMOTE_PRISON_MECH
|
||||||
@@ -151,20 +151,20 @@
|
|||||||
/mob/living/heavy_vehicle/premade/ripley/remote
|
/mob/living/heavy_vehicle/premade/ripley/remote
|
||||||
name = "remote power loader"
|
name = "remote power loader"
|
||||||
dummy_colour = "#ffc44f"
|
dummy_colour = "#ffc44f"
|
||||||
remote_network = "remotemechs"
|
remote_network = REMOTE_GENERIC_MECH
|
||||||
does_hardpoint_lock = FALSE
|
does_hardpoint_lock = FALSE
|
||||||
|
|
||||||
/mob/living/heavy_vehicle/premade/ripley/remote_prison
|
/mob/living/heavy_vehicle/premade/ripley/remote_prison
|
||||||
name = "penal power loader"
|
name = "penal power loader"
|
||||||
dummy_colour = "#302e2b"
|
dummy_colour = "#302e2b"
|
||||||
remote_network = "prisonmechs"
|
remote_network = REMOTE_PRISON_MECH
|
||||||
|
|
||||||
/mob/living/heavy_vehicle/premade/ripley/remote_ai
|
/mob/living/heavy_vehicle/premade/ripley/remote_ai
|
||||||
name = "stationbound power loader"
|
name = "stationbound power loader"
|
||||||
e_color = COLOR_GREEN_GRAY
|
e_color = COLOR_GREEN_GRAY
|
||||||
dummy_colour = COLOR_GREEN_GRAY
|
dummy_colour = COLOR_GREEN_GRAY
|
||||||
dummy_type = /mob/living/simple_animal/spiderbot/ai
|
dummy_type = /mob/living/simple_animal/spiderbot/ai
|
||||||
remote_network = "aimechs"
|
remote_network = REMOTE_AI_MECH
|
||||||
does_hardpoint_lock = FALSE
|
does_hardpoint_lock = FALSE
|
||||||
|
|
||||||
h_l_hand = /obj/item/mecha_equipment/toolset
|
h_l_hand = /obj/item/mecha_equipment/toolset
|
||||||
@@ -161,7 +161,7 @@ INITIALIZE_IMMEDIATE(/mob/living/carbon/human/dummy/mannequin)
|
|||||||
mind.name = real_name
|
mind.name = real_name
|
||||||
status_flags |= NO_ANTAG
|
status_flags |= NO_ANTAG
|
||||||
|
|
||||||
remote_network = "remoterobots"
|
remote_network = REMOTE_GENERIC_ROBOT
|
||||||
SSvirtualreality.add_robot(src, remote_network)
|
SSvirtualreality.add_robot(src, remote_network)
|
||||||
|
|
||||||
/mob/living/carbon/human/industrial_xion_remote/Stat()
|
/mob/living/carbon/human/industrial_xion_remote/Stat()
|
||||||
@@ -200,7 +200,7 @@ INITIALIZE_IMMEDIATE(/mob/living/carbon/human/dummy/mannequin)
|
|||||||
equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots(src), slot_shoes)
|
equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots(src), slot_shoes)
|
||||||
equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_com(src), slot_l_ear)
|
equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_com(src), slot_l_ear)
|
||||||
|
|
||||||
remote_network = "bunkerrobots"
|
remote_network = REMOTE_BUNKER_ROBOT
|
||||||
SSvirtualreality.add_robot(src, remote_network)
|
SSvirtualreality.add_robot(src, remote_network)
|
||||||
|
|
||||||
/mob/living/carbon/human/industrial_xion_remote_bunker/Stat()
|
/mob/living/carbon/human/industrial_xion_remote_bunker/Stat()
|
||||||
@@ -209,6 +209,55 @@ INITIALIZE_IMMEDIATE(/mob/living/carbon/human/dummy/mannequin)
|
|||||||
if(client?.statpanel == "Status")
|
if(client?.statpanel == "Status")
|
||||||
stat("Battery Charge: ", "[nutrition]/[max_nutrition]")
|
stat("Battery Charge: ", "[nutrition]/[max_nutrition]")
|
||||||
|
|
||||||
|
/mob/living/carbon/human/industrial_xion_remote_penal/Initialize(mapload)
|
||||||
|
. = ..(mapload, "Remote Xion Industrial Frame")
|
||||||
|
|
||||||
|
real_name = "Remote Robot [pick("Jim", "Slart", "Whacker")]-[rand(0, 999)]"
|
||||||
|
name = real_name
|
||||||
|
dna.real_name = real_name
|
||||||
|
if(mind)
|
||||||
|
mind.name = real_name
|
||||||
|
status_flags |= NO_ANTAG
|
||||||
|
|
||||||
|
equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_penal(src), slot_l_ear)
|
||||||
|
|
||||||
|
remote_network = REMOTE_PRISON_ROBOT
|
||||||
|
SSvirtualreality.add_robot(src, remote_network)
|
||||||
|
|
||||||
|
/mob/living/carbon/human/industrial_xion_remote_penal/Stat()
|
||||||
|
..()
|
||||||
|
|
||||||
|
if(client?.statpanel == "Status")
|
||||||
|
stat(null, "Battery Charge: [nutrition]/[max_nutrition]")
|
||||||
|
|
||||||
|
/mob/living/carbon/human/industrial_xion_remote_warden/Initialize(mapload)
|
||||||
|
. = ..(mapload, "Remote Xion Industrial Frame")
|
||||||
|
|
||||||
|
real_name = "Remote Robot Overseer-[rand(0, 999)]"
|
||||||
|
name = real_name
|
||||||
|
dna.real_name = real_name
|
||||||
|
if(mind)
|
||||||
|
mind.name = real_name
|
||||||
|
status_flags |= NO_ANTAG
|
||||||
|
|
||||||
|
var/obj/item/card/id/ID = new /obj/item/card/id(get_turf(src))
|
||||||
|
ID.assignment = "Overseer"
|
||||||
|
src.set_id_info(ID)
|
||||||
|
ID.access = list(access_armory)
|
||||||
|
equip_to_slot_or_del(ID, slot_wear_id)
|
||||||
|
equip_to_slot_or_del(new /obj/item/clothing/under/rank/warden(src), slot_w_uniform)
|
||||||
|
equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots(src), slot_shoes)
|
||||||
|
equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_warden(src), slot_l_ear)
|
||||||
|
|
||||||
|
remote_network = REMOTE_WARDEN_ROBOT
|
||||||
|
SSvirtualreality.add_robot(src, remote_network)
|
||||||
|
|
||||||
|
/mob/living/carbon/human/industrial_xion_remote_warden/Stat()
|
||||||
|
..()
|
||||||
|
|
||||||
|
if(client?.statpanel == "Status")
|
||||||
|
stat(null, "Battery Charge: [nutrition]/[max_nutrition]")
|
||||||
|
|
||||||
/mob/living/carbon/human/industrial_zenghu/Initialize(mapload)
|
/mob/living/carbon/human/industrial_zenghu/Initialize(mapload)
|
||||||
. = ..(mapload, SPECIES_IPC_ZENGHU)
|
. = ..(mapload, SPECIES_IPC_ZENGHU)
|
||||||
|
|
||||||
@@ -246,7 +295,7 @@ INITIALIZE_IMMEDIATE(/mob/living/carbon/human/dummy/mannequin)
|
|||||||
mind.name = real_name
|
mind.name = real_name
|
||||||
status_flags |= NO_ANTAG
|
status_flags |= NO_ANTAG
|
||||||
|
|
||||||
remote_network = "remoterobots"
|
remote_network = REMOTE_GENERIC_ROBOT
|
||||||
SSvirtualreality.add_robot(src, remote_network)
|
SSvirtualreality.add_robot(src, remote_network)
|
||||||
|
|
||||||
/mob/living/carbon/human/unbranded_frame_remote/Stat()
|
/mob/living/carbon/human/unbranded_frame_remote/Stat()
|
||||||
@@ -269,7 +318,7 @@ INITIALIZE_IMMEDIATE(/mob/living/carbon/human/dummy/mannequin)
|
|||||||
equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots(src), slot_shoes)
|
equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots(src), slot_shoes)
|
||||||
equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_com(src), slot_l_ear)
|
equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_com(src), slot_l_ear)
|
||||||
|
|
||||||
remote_network = "bunkerrobots"
|
remote_network = REMOTE_BUNKER_ROBOT
|
||||||
SSvirtualreality.add_robot(src, remote_network)
|
SSvirtualreality.add_robot(src, remote_network)
|
||||||
|
|
||||||
/mob/living/carbon/human/unbranded_frame_remote_bunker/Stat()
|
/mob/living/carbon/human/unbranded_frame_remote_bunker/Stat()
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ var/list/department_radio_keys = list(
|
|||||||
":m" = "Medical", ".m" = "Medical",
|
":m" = "Medical", ".m" = "Medical",
|
||||||
":e" = "Engineering", ".e" = "Engineering",
|
":e" = "Engineering", ".e" = "Engineering",
|
||||||
":s" = "Security", ".s" = "Security",
|
":s" = "Security", ".s" = "Security",
|
||||||
|
":q" = "Penal", ".q" = "Penal",
|
||||||
":w" = "whisper", ".w" = "whisper",
|
":w" = "whisper", ".w" = "whisper",
|
||||||
":t" = "Mercenary", ".t" = "Mercenary",
|
":t" = "Mercenary", ".t" = "Mercenary",
|
||||||
":x" = "Raider", ".x" = "Raider",
|
":x" = "Raider", ".x" = "Raider",
|
||||||
@@ -30,6 +31,7 @@ var/list/department_radio_keys = list(
|
|||||||
":M" = "Medical", ".M" = "Medical",
|
":M" = "Medical", ".M" = "Medical",
|
||||||
":E" = "Engineering", ".E" = "Engineering",
|
":E" = "Engineering", ".E" = "Engineering",
|
||||||
":S" = "Security", ".S" = "Security",
|
":S" = "Security", ".S" = "Security",
|
||||||
|
":Q" = "Penal", ".Q" = "Penal",
|
||||||
":W" = "whisper", ".W" = "whisper",
|
":W" = "whisper", ".W" = "whisper",
|
||||||
":T" = "Mercenary", ".T" = "Mercenary",
|
":T" = "Mercenary", ".T" = "Mercenary",
|
||||||
":X" = "Raider", ".X" = "Raider",
|
":X" = "Raider", ".X" = "Raider",
|
||||||
|
|||||||
@@ -780,7 +780,7 @@ var/list/ai_verbs_default = list(
|
|||||||
set name = "Remote Control Mech"
|
set name = "Remote Control Mech"
|
||||||
set category = "AI Commands"
|
set category = "AI Commands"
|
||||||
set desc = "Remotely control any active mechs on your AI mech network."
|
set desc = "Remotely control any active mechs on your AI mech network."
|
||||||
SSvirtualreality.mech_selection(src, "aimechs")
|
SSvirtualreality.mech_selection(src, REMOTE_AI_MECH)
|
||||||
|
|
||||||
/mob/living/silicon/ai/proc/toggle_hologram_movement()
|
/mob/living/silicon/ai/proc/toggle_hologram_movement()
|
||||||
set name = "Toggle Hologram Movement"
|
set name = "Toggle Hologram Movement"
|
||||||
|
|||||||
@@ -43,7 +43,7 @@
|
|||||||
var/list/robots = list()
|
var/list/robots = list()
|
||||||
|
|
||||||
if(signal.data["done"])
|
if(signal.data["done"])
|
||||||
for(var/mech in SSvirtualreality.mechs["prisonmechs"])
|
for(var/mech in SSvirtualreality.mechs[REMOTE_PRISON_MECH])
|
||||||
var/mob/living/heavy_vehicle/M = mech
|
var/mob/living/heavy_vehicle/M = mech
|
||||||
|
|
||||||
if(!ismech(M))
|
if(!ismech(M))
|
||||||
@@ -61,7 +61,7 @@
|
|||||||
mechData["lockdown"] = M.lockdown
|
mechData["lockdown"] = M.lockdown
|
||||||
mechs[++mechs.len] = mechData
|
mechs[++mechs.len] = mechData
|
||||||
|
|
||||||
for(var/robot in SSvirtualreality.robots["prisonrobots"])
|
for(var/robot in SSvirtualreality.robots[REMOTE_PRISON_ROBOT])
|
||||||
var/mob/living/R = robot
|
var/mob/living/R = robot
|
||||||
|
|
||||||
if(!ismob(R))
|
if(!ismob(R))
|
||||||
|
|||||||
120
code/modules/power/crystal_agitator.dm
Normal file
120
code/modules/power/crystal_agitator.dm
Normal file
@@ -0,0 +1,120 @@
|
|||||||
|
/obj/machinery/power/crystal_agitator
|
||||||
|
name = "crystal agitator"
|
||||||
|
desc = "A device of incredibly niche design. This agitator disturbs the ashy turf around it, causing chemical crystals to form."
|
||||||
|
icon = 'icons/obj/crystal_agitator.dmi'
|
||||||
|
icon_state = "agitator"
|
||||||
|
density = TRUE
|
||||||
|
anchored = TRUE
|
||||||
|
|
||||||
|
use_power = 0
|
||||||
|
active_power_usage = 3000
|
||||||
|
|
||||||
|
var/agitation_range = 4
|
||||||
|
var/agitation_rate = 80
|
||||||
|
var/last_agitation = 0
|
||||||
|
var/active = FALSE
|
||||||
|
|
||||||
|
var/last_turf_check = 0
|
||||||
|
var/turf_check_rate = 3 MINUTES
|
||||||
|
var/list/agitation_turfs = list()
|
||||||
|
|
||||||
|
component_types = list(
|
||||||
|
/obj/item/stack/cable_coil{amount = 5},
|
||||||
|
/obj/item/stock_parts/capacitor,
|
||||||
|
/obj/item/stock_parts/manipulator,
|
||||||
|
/obj/item/bluespace_crystal,
|
||||||
|
/obj/item/circuitboard/crystal_agitator
|
||||||
|
)
|
||||||
|
|
||||||
|
/obj/machinery/power/crystal_agitator/Initialize()
|
||||||
|
. = ..()
|
||||||
|
connect_to_network()
|
||||||
|
|
||||||
|
/obj/machinery/power/crystal_agitator/attack_hand(mob/user)
|
||||||
|
toggle_active()
|
||||||
|
visible_message("<b>[user]</b> turns \the [src] [active ? "on" : "off"].", SPAN_NOTICE("You turn \the [src] [active ? "on" : "off"]."))
|
||||||
|
|
||||||
|
/obj/machinery/power/crystal_agitator/proc/toggle_active()
|
||||||
|
active = !active
|
||||||
|
icon_state = "[initial(icon_state)][active ? "-active": ""]"
|
||||||
|
if(active)
|
||||||
|
check_turfs()
|
||||||
|
|
||||||
|
/obj/machinery/power/crystal_agitator/proc/check_turfs()
|
||||||
|
var/turf/our_turf = get_turf(src)
|
||||||
|
var/list/grow_turfs = list()
|
||||||
|
for(var/thing in RANGE_TURFS(agitation_range, our_turf))
|
||||||
|
var/turf/T = thing
|
||||||
|
if(our_turf == T)
|
||||||
|
continue
|
||||||
|
if(!istype(T, /turf/unsimulated/floor/asteroid))
|
||||||
|
continue
|
||||||
|
if(locate(/obj/structure/reagent_crystal/dense) in T)
|
||||||
|
continue
|
||||||
|
grow_turfs += T
|
||||||
|
agitation_turfs = grow_turfs
|
||||||
|
last_turf_check = world.time + turf_check_rate
|
||||||
|
|
||||||
|
/obj/machinery/power/crystal_agitator/machinery_process()
|
||||||
|
if(!active)
|
||||||
|
return
|
||||||
|
if(stat & (BROKEN) || !powernet)
|
||||||
|
return
|
||||||
|
if(last_agitation + agitation_rate > world.time)
|
||||||
|
return
|
||||||
|
if(!length(agitation_turfs))
|
||||||
|
toggle_active()
|
||||||
|
return
|
||||||
|
|
||||||
|
var/actual_load = draw_power(active_power_usage)
|
||||||
|
if(actual_load < active_power_usage)
|
||||||
|
toggle_active()
|
||||||
|
return
|
||||||
|
|
||||||
|
// recheck the agitation turfs every few minutes to make sure we're not getting stuck
|
||||||
|
if(last_turf_check < world.time)
|
||||||
|
check_turfs()
|
||||||
|
|
||||||
|
var/turf/selected_turf = pick(agitation_turfs)
|
||||||
|
var/obj/structure/reagent_crystal/P = locate() in selected_turf
|
||||||
|
if(P)
|
||||||
|
P.become_dense()
|
||||||
|
return
|
||||||
|
if(prob(1) && prob(1))
|
||||||
|
new /mob/living/simple_animal/hostile/phoron_worm/small(selected_turf)
|
||||||
|
else
|
||||||
|
new /obj/structure/reagent_crystal(selected_turf, null, src)
|
||||||
|
last_agitation = world.time
|
||||||
|
|
||||||
|
/obj/machinery/power/crystal_agitator/RefreshParts()
|
||||||
|
for(var/obj/item/stock_parts/SP in component_parts)
|
||||||
|
if(ismanipulator(SP))
|
||||||
|
agitation_rate = initial(agitation_rate) - (SP.rating * 5)
|
||||||
|
if(iscapacitor(SP))
|
||||||
|
active_power_usage = initial(active_power_usage) - (SP.rating * 500)
|
||||||
|
|
||||||
|
/obj/machinery/power/crystal_agitator/attackby(obj/item/I, mob/user, params)
|
||||||
|
if(default_part_replacement(user, I))
|
||||||
|
return
|
||||||
|
else if(default_deconstruction_screwdriver(user, I))
|
||||||
|
return
|
||||||
|
else if(default_deconstruction_crowbar(user, I))
|
||||||
|
return
|
||||||
|
return ..()
|
||||||
|
|
||||||
|
/obj/item/circuitboard/crystal_agitator
|
||||||
|
name = T_BOARD("Crystal Agitator")
|
||||||
|
build_path = /obj/machinery/power/crystal_agitator
|
||||||
|
board_type = "machine"
|
||||||
|
origin_tech = list(
|
||||||
|
TECH_ENGINEERING = 3,
|
||||||
|
TECH_DATA = 2,
|
||||||
|
TECH_MATERIAL = 4,
|
||||||
|
TECH_POWER = 3
|
||||||
|
)
|
||||||
|
req_components = list(
|
||||||
|
"/obj/item/stack/cable_coil" = 5,
|
||||||
|
"/obj/item/stock_parts/capacitor" = 1,
|
||||||
|
"/obj/item/stock_parts/manipulator" = 1,
|
||||||
|
"/obj/item/bluespace_crystal" = 1
|
||||||
|
)
|
||||||
@@ -56,7 +56,7 @@
|
|||||||
|
|
||||||
/datum/reagent/carbon
|
/datum/reagent/carbon
|
||||||
name = "Carbon"
|
name = "Carbon"
|
||||||
description = "A chemical element, the builing block of life."
|
description = "A chemical element, the building block of life."
|
||||||
reagent_state = SOLID
|
reagent_state = SOLID
|
||||||
color = "#1C1300"
|
color = "#1C1300"
|
||||||
ingest_met = REM * 5
|
ingest_met = REM * 5
|
||||||
|
|||||||
@@ -24,13 +24,20 @@
|
|||||||
var/flush_every_ticks = 30 //Every 30 ticks it will look whether it is ready to flush
|
var/flush_every_ticks = 30 //Every 30 ticks it will look whether it is ready to flush
|
||||||
var/flush_count = 0 //this var adds 1 once per tick. When it reaches flush_every_ticks it resets and tries to flush.
|
var/flush_count = 0 //this var adds 1 once per tick. When it reaches flush_every_ticks it resets and tries to flush.
|
||||||
var/last_sound = 0
|
var/last_sound = 0
|
||||||
|
var/uses_air = TRUE
|
||||||
active_power_usage = 2200 //the pneumatic pump power. 3 HP ~ 2200W
|
active_power_usage = 2200 //the pneumatic pump power. 3 HP ~ 2200W
|
||||||
idle_power_usage = 100
|
idle_power_usage = 100
|
||||||
|
|
||||||
|
/obj/machinery/disposal/airless
|
||||||
|
uses_air = FALSE
|
||||||
|
|
||||||
/obj/machinery/disposal/small
|
/obj/machinery/disposal/small
|
||||||
desc = "A compact pneumatic waste disposal unit."
|
desc = "A compact pneumatic waste disposal unit."
|
||||||
icon_state = "disposal_small"
|
icon_state = "disposal_small"
|
||||||
density = 0
|
density = FALSE
|
||||||
|
|
||||||
|
/obj/machinery/disposal/small/airless
|
||||||
|
uses_air = FALSE
|
||||||
|
|
||||||
/obj/machinery/disposal/small/Initialize()
|
/obj/machinery/disposal/small/Initialize()
|
||||||
. = ..()
|
. = ..()
|
||||||
@@ -38,21 +45,21 @@
|
|||||||
return
|
return
|
||||||
else
|
else
|
||||||
switch(dir)
|
switch(dir)
|
||||||
if(1)
|
if(NORTH)
|
||||||
pixel_y = -13
|
pixel_y = -13
|
||||||
layer = MOB_LAYER + 0.1
|
layer = MOB_LAYER + 0.1
|
||||||
if(2)
|
if(SOUTH)
|
||||||
pixel_y = 20
|
pixel_y = 20
|
||||||
layer = OBJ_LAYER + 0.3
|
layer = OBJ_LAYER + 0.3
|
||||||
if(4)
|
if(EAST)
|
||||||
pixel_x = -12
|
pixel_x = -12
|
||||||
if(8)
|
if(WEST)
|
||||||
pixel_x = 11
|
pixel_x = 11
|
||||||
|
|
||||||
/obj/machinery/disposal/small/check_mob_size(mob/target)
|
/obj/machinery/disposal/small/check_mob_size(mob/target)
|
||||||
if(target.mob_size > MOB_SMALL)
|
if(target.mob_size > MOB_SMALL)
|
||||||
return 0
|
return FALSE
|
||||||
return 1
|
return TRUE
|
||||||
|
|
||||||
// create a new disposal
|
// create a new disposal
|
||||||
// find the attached trunk (if present) and init gas resvr.
|
// find the attached trunk (if present) and init gas resvr.
|
||||||
@@ -129,12 +136,12 @@
|
|||||||
to_chat(user, "You can't place that item inside the disposal unit.")
|
to_chat(user, "You can't place that item inside the disposal unit.")
|
||||||
return
|
return
|
||||||
|
|
||||||
if(istype(I, /obj/item/storage/bag/trash))
|
if(istype(I, /obj/item/storage) && user.a_intent != I_HURT)
|
||||||
var/obj/item/storage/bag/trash/T = I
|
var/obj/item/storage/S = I
|
||||||
to_chat(user, "<span class='notice'>You empty the bag.</span>")
|
user.visible_message("<b>[user]</b> empties \the [S] into \the [src].", SPAN_NOTICE("You empty \the [S] into \the [src]."), range = 3)
|
||||||
for(var/obj/item/O in T.contents)
|
for(var/obj/item/O in S.contents)
|
||||||
T.remove_from_storage(O,src)
|
S.remove_from_storage(O, src)
|
||||||
T.update_icon()
|
S.update_icon()
|
||||||
update()
|
update()
|
||||||
return
|
return
|
||||||
|
|
||||||
@@ -182,12 +189,7 @@
|
|||||||
|
|
||||||
user.drop_from_inventory(I,src)
|
user.drop_from_inventory(I,src)
|
||||||
|
|
||||||
to_chat(user, "You place \the [I] into the [src].")
|
user.visible_message("<b>[user]</b> places \the [I] into \the [src].", SPAN_NOTICE("You place \the [I] into the [src]."), range = 3)
|
||||||
for(var/mob/M in viewers(src))
|
|
||||||
if(M == user)
|
|
||||||
continue
|
|
||||||
M.show_message("[user.name] places \the [I] into the [src].", 3)
|
|
||||||
|
|
||||||
update()
|
update()
|
||||||
|
|
||||||
// mouse drop another mob or self
|
// mouse drop another mob or self
|
||||||
@@ -307,14 +309,19 @@
|
|||||||
|
|
||||||
dat += "<BR><HR><A href='?src=\ref[src];eject=1'>Eject contents</A><HR>"
|
dat += "<BR><HR><A href='?src=\ref[src];eject=1'>Eject contents</A><HR>"
|
||||||
|
|
||||||
|
if(uses_air)
|
||||||
if(mode <= 0)
|
if(mode <= 0)
|
||||||
dat += "Pump: <B>Off</B> <A href='?src=\ref[src];pump=1'>On</A><BR>"
|
dat += "Pump: <B>Off</B> <A href='?src=\ref[src];pump=1'>On</A><BR>"
|
||||||
else if(mode == 1)
|
else if(mode == 1)
|
||||||
dat += "Pump: <A href='?src=\ref[src];pump=0'>Off</A> <B>On</B> (pressurizing)<BR>"
|
dat += "Pump: <A href='?src=\ref[src];pump=0'>Off</A> <B>On</B> (pressurizing)<BR>"
|
||||||
else
|
else
|
||||||
dat += "Pump: <A href='?src=\ref[src];pump=0'>Off</A> <B>On</B> (idle)<BR>"
|
dat += "Pump: <A href='?src=\ref[src];pump=0'>Off</A> <B>On</B> (idle)<BR>"
|
||||||
|
else
|
||||||
|
dat += "Pump: <A href='?src=\ref[src];pump=0'>Off</A> <B>On</B> (idle)<BR>"
|
||||||
|
|
||||||
var/per = 100* air_contents.return_pressure() / (SEND_PRESSURE)
|
var/per = 100* air_contents.return_pressure() / (SEND_PRESSURE)
|
||||||
|
if(!uses_air)
|
||||||
|
per = 100
|
||||||
|
|
||||||
dat += "Pressure: [round(per, 1)]%<BR></body>"
|
dat += "Pressure: [round(per, 1)]%<BR></body>"
|
||||||
|
|
||||||
@@ -421,12 +428,12 @@
|
|||||||
|
|
||||||
src.updateDialog()
|
src.updateDialog()
|
||||||
|
|
||||||
if(flush && air_contents.return_pressure() >= SEND_PRESSURE ) // flush can happen even without power
|
if(flush && (air_contents.return_pressure() >= SEND_PRESSURE || !uses_air)) // flush can happen even without power
|
||||||
flush()
|
flush()
|
||||||
|
|
||||||
if(mode != 1) //if off or ready, no need to charge
|
if(mode != 1) //if off or ready, no need to charge
|
||||||
update_use_power(1)
|
update_use_power(1)
|
||||||
else if(air_contents.return_pressure() >= SEND_PRESSURE)
|
else if((air_contents.return_pressure() >= SEND_PRESSURE || !uses_air))
|
||||||
mode = 2 //if full enough, switch to ready mode
|
mode = 2 //if full enough, switch to ready mode
|
||||||
update()
|
update()
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -52,6 +52,7 @@ em {font-style: normal;font-weight: bold;}
|
|||||||
.entradio {color: #bd893c;}
|
.entradio {color: #bd893c;}
|
||||||
|
|
||||||
.secradio {color: #A30000;}
|
.secradio {color: #A30000;}
|
||||||
|
.penradio {color: #DB1270;}
|
||||||
.engradio {color: #A66300;}
|
.engradio {color: #A66300;}
|
||||||
.medradio {color: #0a5c47;}
|
.medradio {color: #0a5c47;}
|
||||||
.sciradio {color: #993399;}
|
.sciradio {color: #993399;}
|
||||||
|
|||||||
7
html/changelogs/geeves-phoron_agitator.yml
Normal file
7
html/changelogs/geeves-phoron_agitator.yml
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
author: Geeves
|
||||||
|
|
||||||
|
delete-after: True
|
||||||
|
|
||||||
|
changes:
|
||||||
|
- rscadd: "Implements Crystal Agitators, machines that agitate asteroid turf to form chemical crystals. Check the communal out."
|
||||||
|
- tweak: "You can now dump the contents of a storage item into a disposal bin, by clicking on it on any intent other than harm. Doing so on harm will place the storage item in too."
|
||||||
BIN
icons/obj/crystal_agitator.dmi
Normal file
BIN
icons/obj/crystal_agitator.dmi
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.0 KiB |
BIN
icons/obj/crystals.dmi
Normal file
BIN
icons/obj/crystals.dmi
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.6 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
@@ -48,11 +48,19 @@
|
|||||||
temp_timer.releasetime = 1
|
temp_timer.releasetime = 1
|
||||||
..()
|
..()
|
||||||
|
|
||||||
|
/area/security/prison/remote
|
||||||
|
name = "\improper Security - Remote Prison Wing"
|
||||||
|
icon_state = "sec_prison"
|
||||||
|
|
||||||
/area/security/warden
|
/area/security/warden
|
||||||
name = "Security - Warden's Office"
|
name = "Security - Warden's Office"
|
||||||
icon_state = "Warden"
|
icon_state = "Warden"
|
||||||
sound_env = SMALL_SOFTFLOOR
|
sound_env = SMALL_SOFTFLOOR
|
||||||
|
|
||||||
|
/area/security/warden/remote
|
||||||
|
name = "\improper Security - Remote Warden's Office"
|
||||||
|
icon_state = "Warden"
|
||||||
|
|
||||||
/area/security/armory
|
/area/security/armory
|
||||||
name = "Security - Armory"
|
name = "Security - Armory"
|
||||||
icon_state = "Warden"
|
icon_state = "Warden"
|
||||||
@@ -149,3 +157,8 @@
|
|||||||
|
|
||||||
/area/security/vacantoffice2
|
/area/security/vacantoffice2
|
||||||
name = "Security - Meeting Room"
|
name = "Security - Meeting Room"
|
||||||
|
|
||||||
|
/area/security/penal_colony
|
||||||
|
name = "\improper Security - Penal Mining Colony"
|
||||||
|
icon_state = "security"
|
||||||
|
icon_state = "security"
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -20,6 +20,7 @@
|
|||||||
/obj/effect/floor_decal/industrial/warning,
|
/obj/effect/floor_decal/industrial/warning,
|
||||||
/obj/structure/window/reinforced,
|
/obj/structure/window/reinforced,
|
||||||
/obj/machinery/floodlight,
|
/obj/machinery/floodlight,
|
||||||
|
/obj/structure/lattice/catwalk/indoor/grate,
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"aag" = (
|
"aag" = (
|
||||||
@@ -34,6 +35,11 @@
|
|||||||
/obj/effect/decal/cleanable/dirt,
|
/obj/effect/decal/cleanable/dirt,
|
||||||
/obj/effect/floor_decal/industrial/warning,
|
/obj/effect/floor_decal/industrial/warning,
|
||||||
/obj/structure/window/reinforced,
|
/obj/structure/window/reinforced,
|
||||||
|
/obj/structure/disposalpipe/segment{
|
||||||
|
dir = 4;
|
||||||
|
icon_state = "pipe-c"
|
||||||
|
},
|
||||||
|
/obj/structure/lattice/catwalk/indoor/grate,
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"aah" = (
|
"aah" = (
|
||||||
@@ -46,10 +52,11 @@
|
|||||||
/obj/structure/window/reinforced{
|
/obj/structure/window/reinforced{
|
||||||
dir = 4
|
dir = 4
|
||||||
},
|
},
|
||||||
|
/obj/structure/lattice/catwalk/indoor/grate,
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"aaj" = (
|
"aaj" = (
|
||||||
/obj/structure/lattice/catwalk,
|
/obj/structure/lattice/catwalk/indoor/grate,
|
||||||
/turf/simulated/open,
|
/turf/simulated/open,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"aak" = (
|
"aak" = (
|
||||||
@@ -60,6 +67,8 @@
|
|||||||
/obj/structure/window/reinforced{
|
/obj/structure/window/reinforced{
|
||||||
dir = 8
|
dir = 8
|
||||||
},
|
},
|
||||||
|
/obj/structure/disposalpipe/segment,
|
||||||
|
/obj/structure/lattice/catwalk/indoor/grate,
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"aal" = (
|
"aal" = (
|
||||||
@@ -96,6 +105,7 @@
|
|||||||
/obj/structure/window/reinforced{
|
/obj/structure/window/reinforced{
|
||||||
dir = 4
|
dir = 4
|
||||||
},
|
},
|
||||||
|
/obj/structure/lattice/catwalk/indoor/grate,
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"aao" = (
|
"aao" = (
|
||||||
@@ -108,6 +118,8 @@
|
|||||||
/obj/machinery/light/small{
|
/obj/machinery/light/small{
|
||||||
dir = 4
|
dir = 4
|
||||||
},
|
},
|
||||||
|
/obj/structure/disposalpipe/segment,
|
||||||
|
/obj/structure/lattice/catwalk/indoor/grate,
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"aap" = (
|
"aap" = (
|
||||||
@@ -159,6 +171,8 @@
|
|||||||
/obj/structure/window/reinforced{
|
/obj/structure/window/reinforced{
|
||||||
dir = 8
|
dir = 8
|
||||||
},
|
},
|
||||||
|
/obj/structure/disposalpipe/segment,
|
||||||
|
/obj/structure/lattice/catwalk/indoor/grate,
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"aas" = (
|
"aas" = (
|
||||||
@@ -205,6 +219,12 @@
|
|||||||
/obj/structure/window/reinforced{
|
/obj/structure/window/reinforced{
|
||||||
dir = 1
|
dir = 1
|
||||||
},
|
},
|
||||||
|
/obj/structure/lattice/catwalk/indoor/grate,
|
||||||
|
/obj/structure/cable{
|
||||||
|
d1 = 4;
|
||||||
|
d2 = 8;
|
||||||
|
icon_state = "4-8"
|
||||||
|
},
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"aaw" = (
|
"aaw" = (
|
||||||
@@ -216,11 +236,24 @@
|
|||||||
/obj/structure/window/reinforced{
|
/obj/structure/window/reinforced{
|
||||||
dir = 1
|
dir = 1
|
||||||
},
|
},
|
||||||
|
/obj/structure/lattice/catwalk/indoor/grate,
|
||||||
|
/obj/structure/cable{
|
||||||
|
d1 = 4;
|
||||||
|
d2 = 8;
|
||||||
|
icon_state = "4-8"
|
||||||
|
},
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"aax" = (
|
"aax" = (
|
||||||
/obj/effect/decal/cleanable/dirt,
|
/obj/effect/decal/cleanable/dirt,
|
||||||
/obj/effect/decal/cleanable/dirt,
|
/obj/effect/decal/cleanable/dirt,
|
||||||
|
/obj/structure/disposalpipe/segment,
|
||||||
|
/obj/structure/lattice/catwalk/indoor/grate,
|
||||||
|
/obj/structure/cable{
|
||||||
|
d1 = 2;
|
||||||
|
d2 = 8;
|
||||||
|
icon_state = "2-8"
|
||||||
|
},
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"aay" = (
|
"aay" = (
|
||||||
@@ -811,6 +844,10 @@
|
|||||||
/obj/effect/decal/cleanable/dirt,
|
/obj/effect/decal/cleanable/dirt,
|
||||||
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
|
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
|
||||||
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
|
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
|
||||||
|
/obj/structure/disposalpipe/segment{
|
||||||
|
dir = 2;
|
||||||
|
icon_state = "pipe-c"
|
||||||
|
},
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"abI" = (
|
"abI" = (
|
||||||
@@ -917,7 +954,10 @@
|
|||||||
"abU" = (
|
"abU" = (
|
||||||
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
|
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
|
||||||
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
|
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
|
||||||
/turf/simulated/floor/plating,
|
/obj/effect/floor_decal/corner/purple{
|
||||||
|
dir = 9
|
||||||
|
},
|
||||||
|
/turf/simulated/floor/tiled,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"abV" = (
|
"abV" = (
|
||||||
/obj/structure/closet/crate,
|
/obj/structure/closet/crate,
|
||||||
@@ -1194,13 +1234,28 @@
|
|||||||
dir = 6
|
dir = 6
|
||||||
},
|
},
|
||||||
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
|
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
|
||||||
/turf/simulated/floor/plating,
|
/obj/effect/floor_decal/corner/purple{
|
||||||
|
dir = 9
|
||||||
|
},
|
||||||
|
/turf/simulated/floor/tiled,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"acy" = (
|
"acy" = (
|
||||||
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
|
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
|
||||||
dir = 9
|
dir = 9
|
||||||
},
|
},
|
||||||
/turf/simulated/floor/plating,
|
/obj/machinery/light/small/emergency{
|
||||||
|
dir = 4
|
||||||
|
},
|
||||||
|
/obj/structure/disposaloutlet{
|
||||||
|
name = "ore delivery outlet"
|
||||||
|
},
|
||||||
|
/obj/structure/disposalpipe/trunk{
|
||||||
|
dir = 1
|
||||||
|
},
|
||||||
|
/obj/effect/floor_decal/corner/purple{
|
||||||
|
dir = 6
|
||||||
|
},
|
||||||
|
/turf/simulated/floor/tiled,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"acz" = (
|
"acz" = (
|
||||||
/obj/structure/table/standard,
|
/obj/structure/table/standard,
|
||||||
@@ -1555,10 +1610,6 @@
|
|||||||
},
|
},
|
||||||
/turf/simulated/floor/tiled,
|
/turf/simulated/floor/tiled,
|
||||||
/area/security/brig)
|
/area/security/brig)
|
||||||
"adb" = (
|
|
||||||
/obj/structure/barricade,
|
|
||||||
/turf/simulated/floor/tiled,
|
|
||||||
/area/maintenance/security_starboard)
|
|
||||||
"adc" = (
|
"adc" = (
|
||||||
/obj/structure/table/standard,
|
/obj/structure/table/standard,
|
||||||
/obj/effect/floor_decal/corner_wide/paleblue/full{
|
/obj/effect/floor_decal/corner_wide/paleblue/full{
|
||||||
@@ -1768,11 +1819,11 @@
|
|||||||
name = "Security Blast Door";
|
name = "Security Blast Door";
|
||||||
opacity = 0
|
opacity = 0
|
||||||
},
|
},
|
||||||
/obj/machinery/door/airlock/maintenance{
|
/obj/machinery/door/airlock/glass_security{
|
||||||
name = "Security Maintenance";
|
name = "Ore Retrieval";
|
||||||
req_access = list(63)
|
req_access = list(63)
|
||||||
},
|
},
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/tiled,
|
||||||
/area/security/brig)
|
/area/security/brig)
|
||||||
"adw" = (
|
"adw" = (
|
||||||
/obj/machinery/portable_atmospherics/canister/nitrogen,
|
/obj/machinery/portable_atmospherics/canister/nitrogen,
|
||||||
@@ -3514,6 +3565,11 @@
|
|||||||
/obj/machinery/door/airlock/maintenance{
|
/obj/machinery/door/airlock/maintenance{
|
||||||
req_access = list(12)
|
req_access = list(12)
|
||||||
},
|
},
|
||||||
|
/obj/structure/cable{
|
||||||
|
d1 = 1;
|
||||||
|
d2 = 2;
|
||||||
|
icon_state = "1-2"
|
||||||
|
},
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"agD" = (
|
"agD" = (
|
||||||
@@ -7752,9 +7808,7 @@
|
|||||||
icon_state = "0-4"
|
icon_state = "0-4"
|
||||||
},
|
},
|
||||||
/obj/structure/cable/yellow{
|
/obj/structure/cable/yellow{
|
||||||
d1 = 0;
|
|
||||||
d2 = 8;
|
d2 = 8;
|
||||||
dir = 2;
|
|
||||||
icon_state = "0-8"
|
icon_state = "0-8"
|
||||||
},
|
},
|
||||||
/turf/simulated/floor/tiled,
|
/turf/simulated/floor/tiled,
|
||||||
@@ -17295,6 +17349,9 @@
|
|||||||
/turf/simulated/floor/tiled,
|
/turf/simulated/floor/tiled,
|
||||||
/area/security/warden)
|
/area/security/warden)
|
||||||
"aEx" = (
|
"aEx" = (
|
||||||
|
/obj/structure/bed/chair/remote/robot/warden{
|
||||||
|
dir = 8
|
||||||
|
},
|
||||||
/turf/simulated/floor/tiled,
|
/turf/simulated/floor/tiled,
|
||||||
/area/security/warden)
|
/area/security/warden)
|
||||||
"aEy" = (
|
"aEy" = (
|
||||||
@@ -20726,6 +20783,10 @@
|
|||||||
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
|
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
|
||||||
dir = 4
|
dir = 4
|
||||||
},
|
},
|
||||||
|
/obj/item/toy/prize/deathripley{
|
||||||
|
desc = "This is Johnny 5. Is he alive?";
|
||||||
|
name = "Johnny 5"
|
||||||
|
},
|
||||||
/turf/simulated/floor/tiled,
|
/turf/simulated/floor/tiled,
|
||||||
/area/security/prison)
|
/area/security/prison)
|
||||||
"aJV" = (
|
"aJV" = (
|
||||||
@@ -23733,31 +23794,26 @@
|
|||||||
/area/security/prison)
|
/area/security/prison)
|
||||||
"aPm" = (
|
"aPm" = (
|
||||||
/obj/structure/window/reinforced,
|
/obj/structure/window/reinforced,
|
||||||
/obj/structure/table/standard,
|
/obj/structure/bed/chair/remote/robot/prison,
|
||||||
/obj/item/storage/box/donkpockets{
|
/obj/machinery/door/window/brigdoor/northright{
|
||||||
pixel_x = 3;
|
id = "Remote Chair";
|
||||||
pixel_y = 3
|
name = "Remote Chair";
|
||||||
|
req_access = list(2)
|
||||||
|
},
|
||||||
|
/obj/structure/window/reinforced{
|
||||||
|
dir = 4
|
||||||
|
},
|
||||||
|
/obj/structure/window/reinforced{
|
||||||
|
dir = 8
|
||||||
},
|
},
|
||||||
/obj/item/storage/box/donkpockets,
|
|
||||||
/turf/simulated/floor/tiled,
|
|
||||||
/area/security/prison)
|
|
||||||
"aPn" = (
|
|
||||||
/obj/structure/window/reinforced,
|
|
||||||
/obj/structure/table/standard,
|
|
||||||
/obj/machinery/microwave,
|
|
||||||
/turf/simulated/floor/tiled,
|
|
||||||
/area/security/prison)
|
|
||||||
"aPo" = (
|
|
||||||
/obj/structure/window/reinforced,
|
|
||||||
/obj/structure/table/standard,
|
|
||||||
/obj/item/paper_bin,
|
|
||||||
/obj/item/pen,
|
|
||||||
/turf/simulated/floor/tiled,
|
/turf/simulated/floor/tiled,
|
||||||
/area/security/prison)
|
/area/security/prison)
|
||||||
"aPp" = (
|
"aPp" = (
|
||||||
/obj/machinery/newscaster{
|
/obj/machinery/newscaster{
|
||||||
pixel_x = 27
|
pixel_x = 27
|
||||||
},
|
},
|
||||||
|
/obj/structure/table/standard,
|
||||||
|
/obj/machinery/microwave,
|
||||||
/turf/simulated/floor/tiled,
|
/turf/simulated/floor/tiled,
|
||||||
/area/security/prison)
|
/area/security/prison)
|
||||||
"aPq" = (
|
"aPq" = (
|
||||||
@@ -24690,6 +24746,10 @@
|
|||||||
id = null;
|
id = null;
|
||||||
use_power = 1
|
use_power = 1
|
||||||
},
|
},
|
||||||
|
/obj/structure/window/reinforced{
|
||||||
|
dir = 1
|
||||||
|
},
|
||||||
|
/obj/structure/table/standard,
|
||||||
/turf/simulated/floor/tiled,
|
/turf/simulated/floor/tiled,
|
||||||
/area/security/prison)
|
/area/security/prison)
|
||||||
"aQT" = (
|
"aQT" = (
|
||||||
@@ -24727,18 +24787,18 @@
|
|||||||
d2 = 4;
|
d2 = 4;
|
||||||
icon_state = "2-4"
|
icon_state = "2-4"
|
||||||
},
|
},
|
||||||
|
/obj/item/stool/padded,
|
||||||
/turf/simulated/floor/tiled,
|
/turf/simulated/floor/tiled,
|
||||||
/area/security/prison)
|
/area/security/prison)
|
||||||
"aQX" = (
|
"aQX" = (
|
||||||
/obj/item/toy/prize/deathripley{
|
|
||||||
desc = "This is Johnny 5. Is he alive?";
|
|
||||||
name = "Johnny 5"
|
|
||||||
},
|
|
||||||
/obj/structure/cable/green{
|
/obj/structure/cable/green{
|
||||||
d1 = 4;
|
d1 = 4;
|
||||||
d2 = 8;
|
d2 = 8;
|
||||||
icon_state = "4-8"
|
icon_state = "4-8"
|
||||||
},
|
},
|
||||||
|
/obj/structure/table/standard,
|
||||||
|
/obj/item/paper_bin,
|
||||||
|
/obj/item/pen,
|
||||||
/turf/simulated/floor/tiled,
|
/turf/simulated/floor/tiled,
|
||||||
/area/security/prison)
|
/area/security/prison)
|
||||||
"aQZ" = (
|
"aQZ" = (
|
||||||
@@ -59368,7 +59428,10 @@
|
|||||||
/obj/machinery/meter{
|
/obj/machinery/meter{
|
||||||
name = "Air supply"
|
name = "Air supply"
|
||||||
},
|
},
|
||||||
/turf/simulated/floor/plating,
|
/obj/effect/floor_decal/corner/purple/full{
|
||||||
|
dir = 8
|
||||||
|
},
|
||||||
|
/turf/simulated/floor/tiled,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"cMI" = (
|
"cMI" = (
|
||||||
/obj/structure/cable/green{
|
/obj/structure/cable/green{
|
||||||
@@ -59718,6 +59781,10 @@
|
|||||||
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
|
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
|
||||||
dir = 6
|
dir = 6
|
||||||
},
|
},
|
||||||
|
/obj/machinery/door/airlock/maintenance{
|
||||||
|
name = "Security Maintenance";
|
||||||
|
req_access = list(63)
|
||||||
|
},
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"dEG" = (
|
"dEG" = (
|
||||||
@@ -59993,9 +60060,7 @@
|
|||||||
dir = 1
|
dir = 1
|
||||||
},
|
},
|
||||||
/obj/structure/cable/yellow{
|
/obj/structure/cable/yellow{
|
||||||
d1 = 0;
|
|
||||||
d2 = 8;
|
d2 = 8;
|
||||||
dir = 2;
|
|
||||||
icon_state = "0-8"
|
icon_state = "0-8"
|
||||||
},
|
},
|
||||||
/turf/simulated/floor/tiled,
|
/turf/simulated/floor/tiled,
|
||||||
@@ -60487,10 +60552,6 @@
|
|||||||
},
|
},
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/library)
|
/area/maintenance/library)
|
||||||
"fFq" = (
|
|
||||||
/obj/machinery/light/small/emergency,
|
|
||||||
/turf/simulated/floor/plating,
|
|
||||||
/area/maintenance/security_starboard)
|
|
||||||
"fFw" = (
|
"fFw" = (
|
||||||
/obj/machinery/light/small/emergency,
|
/obj/machinery/light/small/emergency,
|
||||||
/obj/effect/floor_decal/spline/plain{
|
/obj/effect/floor_decal/spline/plain{
|
||||||
@@ -60655,6 +60716,16 @@
|
|||||||
},
|
},
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/storage/tech)
|
/area/storage/tech)
|
||||||
|
"fZm" = (
|
||||||
|
/obj/structure/window/reinforced{
|
||||||
|
dir = 8
|
||||||
|
},
|
||||||
|
/obj/structure/window/reinforced{
|
||||||
|
dir = 4
|
||||||
|
},
|
||||||
|
/obj/structure/grille,
|
||||||
|
/turf/simulated/floor/plating,
|
||||||
|
/area/security/brig)
|
||||||
"fZq" = (
|
"fZq" = (
|
||||||
/obj/structure/closet,
|
/obj/structure/closet,
|
||||||
/obj/random/junk,
|
/obj/random/junk,
|
||||||
@@ -61102,6 +61173,15 @@
|
|||||||
},
|
},
|
||||||
/turf/simulated/floor/tiled/freezer,
|
/turf/simulated/floor/tiled/freezer,
|
||||||
/area/crew_quarters/locker/locker_toilet)
|
/area/crew_quarters/locker/locker_toilet)
|
||||||
|
"heb" = (
|
||||||
|
/obj/structure/lattice/catwalk/indoor/grate,
|
||||||
|
/obj/structure/cable{
|
||||||
|
d1 = 1;
|
||||||
|
d2 = 2;
|
||||||
|
icon_state = "1-2"
|
||||||
|
},
|
||||||
|
/turf/simulated/floor/plating,
|
||||||
|
/area/maintenance/security_starboard)
|
||||||
"heQ" = (
|
"heQ" = (
|
||||||
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
|
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
|
||||||
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
|
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
|
||||||
@@ -61479,6 +61559,13 @@
|
|||||||
},
|
},
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/research_port)
|
/area/maintenance/research_port)
|
||||||
|
"hSk" = (
|
||||||
|
/obj/structure/table/standard,
|
||||||
|
/obj/effect/floor_decal/corner/purple{
|
||||||
|
dir = 6
|
||||||
|
},
|
||||||
|
/turf/simulated/floor/tiled,
|
||||||
|
/area/maintenance/security_starboard)
|
||||||
"hSJ" = (
|
"hSJ" = (
|
||||||
/obj/structure/window/reinforced{
|
/obj/structure/window/reinforced{
|
||||||
dir = 4
|
dir = 4
|
||||||
@@ -62169,6 +62256,7 @@
|
|||||||
/obj/machinery/alarm{
|
/obj/machinery/alarm{
|
||||||
pixel_y = 28
|
pixel_y = 28
|
||||||
},
|
},
|
||||||
|
/obj/structure/lattice/catwalk/indoor/grate,
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"kbS" = (
|
"kbS" = (
|
||||||
@@ -63105,6 +63193,19 @@
|
|||||||
},
|
},
|
||||||
/turf/simulated/floor/tiled,
|
/turf/simulated/floor/tiled,
|
||||||
/area/assembly/robotics_cyborgification)
|
/area/assembly/robotics_cyborgification)
|
||||||
|
"mlY" = (
|
||||||
|
/obj/machinery/door/firedoor,
|
||||||
|
/obj/machinery/door/airlock/maintenance{
|
||||||
|
req_access = list(12)
|
||||||
|
},
|
||||||
|
/obj/structure/disposalpipe/segment,
|
||||||
|
/obj/structure/cable{
|
||||||
|
d1 = 1;
|
||||||
|
d2 = 2;
|
||||||
|
icon_state = "1-2"
|
||||||
|
},
|
||||||
|
/turf/simulated/floor/plating,
|
||||||
|
/area/maintenance/security_starboard)
|
||||||
"mmr" = (
|
"mmr" = (
|
||||||
/obj/structure/table/wood,
|
/obj/structure/table/wood,
|
||||||
/obj/item/reagent_containers/food/drinks/drinkingglass{
|
/obj/item/reagent_containers/food/drinks/drinkingglass{
|
||||||
@@ -64022,6 +64123,17 @@
|
|||||||
},
|
},
|
||||||
/turf/simulated/floor/wood,
|
/turf/simulated/floor/wood,
|
||||||
/area/crew_quarters/bar)
|
/area/crew_quarters/bar)
|
||||||
|
"orw" = (
|
||||||
|
/obj/structure/ladder{
|
||||||
|
pixel_y = 16
|
||||||
|
},
|
||||||
|
/obj/structure/cable{
|
||||||
|
d1 = 32;
|
||||||
|
d2 = 2;
|
||||||
|
icon_state = "11-2"
|
||||||
|
},
|
||||||
|
/turf/simulated/open,
|
||||||
|
/area/maintenance/security_starboard)
|
||||||
"osb" = (
|
"osb" = (
|
||||||
/obj/effect/floor_decal/corner_wide/mauve/full{
|
/obj/effect/floor_decal/corner_wide/mauve/full{
|
||||||
dir = 4
|
dir = 4
|
||||||
@@ -64512,6 +64624,10 @@
|
|||||||
/obj/effect/decal/cleanable/dirt,
|
/obj/effect/decal/cleanable/dirt,
|
||||||
/turf/simulated/floor/tiled/old,
|
/turf/simulated/floor/tiled/old,
|
||||||
/area/maintenance/engineering)
|
/area/maintenance/engineering)
|
||||||
|
"pnV" = (
|
||||||
|
/obj/structure/disposalpipe/segment,
|
||||||
|
/turf/simulated/floor/plating,
|
||||||
|
/area/maintenance/security_starboard)
|
||||||
"pok" = (
|
"pok" = (
|
||||||
/obj/structure/curtain/medical,
|
/obj/structure/curtain/medical,
|
||||||
/obj/effect/decal/cleanable/dirt,
|
/obj/effect/decal/cleanable/dirt,
|
||||||
@@ -64961,7 +65077,13 @@
|
|||||||
/obj/machinery/meter{
|
/obj/machinery/meter{
|
||||||
name = "Scrubbers"
|
name = "Scrubbers"
|
||||||
},
|
},
|
||||||
/turf/simulated/floor/plating,
|
/obj/structure/disposalpipe/segment,
|
||||||
|
/obj/effect/floor_decal/corner/purple/full{
|
||||||
|
dir = 1
|
||||||
|
},
|
||||||
|
/obj/structure/table/rack,
|
||||||
|
/obj/item/pickaxe,
|
||||||
|
/turf/simulated/floor/tiled,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"qwE" = (
|
"qwE" = (
|
||||||
/obj/machinery/door/firedoor,
|
/obj/machinery/door/firedoor,
|
||||||
@@ -65290,6 +65412,14 @@
|
|||||||
/obj/item/toy/figure/roboticist,
|
/obj/item/toy/figure/roboticist,
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/research_port)
|
/area/maintenance/research_port)
|
||||||
|
"rkv" = (
|
||||||
|
/obj/effect/decal/cleanable/dirt,
|
||||||
|
/obj/structure/disposalpipe/segment{
|
||||||
|
dir = 1;
|
||||||
|
icon_state = "pipe-c"
|
||||||
|
},
|
||||||
|
/turf/simulated/floor/plating,
|
||||||
|
/area/maintenance/security_starboard)
|
||||||
"rlF" = (
|
"rlF" = (
|
||||||
/obj/effect/decal/cleanable/dirt,
|
/obj/effect/decal/cleanable/dirt,
|
||||||
/obj/effect/decal/cleanable/dirt,
|
/obj/effect/decal/cleanable/dirt,
|
||||||
@@ -65360,6 +65490,10 @@
|
|||||||
/obj/structure/table/rack,
|
/obj/structure/table/rack,
|
||||||
/obj/random/toolbox,
|
/obj/random/toolbox,
|
||||||
/obj/random/tool,
|
/obj/random/tool,
|
||||||
|
/obj/structure/disposalpipe/segment{
|
||||||
|
dir = 4
|
||||||
|
},
|
||||||
|
/obj/structure/lattice/catwalk/indoor/grate,
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"rtt" = (
|
"rtt" = (
|
||||||
@@ -65523,6 +65657,7 @@
|
|||||||
/obj/machinery/light/small{
|
/obj/machinery/light/small{
|
||||||
dir = 8
|
dir = 8
|
||||||
},
|
},
|
||||||
|
/obj/structure/lattice/catwalk/indoor/grate,
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"rNi" = (
|
"rNi" = (
|
||||||
@@ -65581,11 +65716,6 @@
|
|||||||
/obj/effect/floor_decal/corner/grey/diagonal,
|
/obj/effect/floor_decal/corner/grey/diagonal,
|
||||||
/turf/simulated/floor/tiled/old_white,
|
/turf/simulated/floor/tiled/old_white,
|
||||||
/area/maintenance/medbay)
|
/area/maintenance/medbay)
|
||||||
"rVD" = (
|
|
||||||
/obj/structure/lattice/catwalk,
|
|
||||||
/obj/item/hoist_kit,
|
|
||||||
/turf/simulated/open,
|
|
||||||
/area/maintenance/security_starboard)
|
|
||||||
"rWE" = (
|
"rWE" = (
|
||||||
/obj/machinery/atmospherics/pipe/manifold/hidden/cyan,
|
/obj/machinery/atmospherics/pipe/manifold/hidden/cyan,
|
||||||
/obj/effect/decal/cleanable/dirt,
|
/obj/effect/decal/cleanable/dirt,
|
||||||
@@ -65801,6 +65931,20 @@
|
|||||||
},
|
},
|
||||||
/turf/simulated/floor/carpet,
|
/turf/simulated/floor/carpet,
|
||||||
/area/lawoffice)
|
/area/lawoffice)
|
||||||
|
"snv" = (
|
||||||
|
/obj/structure/cable/green{
|
||||||
|
d1 = 4;
|
||||||
|
d2 = 8;
|
||||||
|
icon_state = "4-8"
|
||||||
|
},
|
||||||
|
/obj/structure/table/standard,
|
||||||
|
/obj/item/storage/box/donkpockets{
|
||||||
|
pixel_x = 3;
|
||||||
|
pixel_y = 3
|
||||||
|
},
|
||||||
|
/obj/item/storage/box/donkpockets,
|
||||||
|
/turf/simulated/floor/tiled,
|
||||||
|
/area/security/prison)
|
||||||
"sny" = (
|
"sny" = (
|
||||||
/obj/machinery/power/apc{
|
/obj/machinery/power/apc{
|
||||||
dir = 1;
|
dir = 1;
|
||||||
@@ -66108,6 +66252,12 @@
|
|||||||
},
|
},
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/bar)
|
/area/maintenance/bar)
|
||||||
|
"sZw" = (
|
||||||
|
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
|
||||||
|
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
|
||||||
|
/obj/effect/floor_decal/corner/purple/full,
|
||||||
|
/turf/simulated/floor/tiled,
|
||||||
|
/area/maintenance/security_starboard)
|
||||||
"taq" = (
|
"taq" = (
|
||||||
/obj/structure/extinguisher_cabinet{
|
/obj/structure/extinguisher_cabinet{
|
||||||
pixel_y = -32
|
pixel_y = -32
|
||||||
@@ -66139,7 +66289,8 @@
|
|||||||
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
|
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
|
||||||
dir = 9
|
dir = 9
|
||||||
},
|
},
|
||||||
/turf/simulated/floor/plating,
|
/obj/structure/disposalpipe/segment,
|
||||||
|
/turf/simulated/wall,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"tgQ" = (
|
"tgQ" = (
|
||||||
/obj/structure/disposalpipe/segment,
|
/obj/structure/disposalpipe/segment,
|
||||||
@@ -66201,6 +66352,31 @@
|
|||||||
/obj/machinery/hologram/holopad,
|
/obj/machinery/hologram/holopad,
|
||||||
/turf/simulated/floor/tiled,
|
/turf/simulated/floor/tiled,
|
||||||
/area/engineering/atmos/storage)
|
/area/engineering/atmos/storage)
|
||||||
|
"tnQ" = (
|
||||||
|
/obj/structure/cable{
|
||||||
|
d1 = 4;
|
||||||
|
d2 = 8;
|
||||||
|
icon_state = "4-8"
|
||||||
|
},
|
||||||
|
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
|
||||||
|
dir = 4
|
||||||
|
},
|
||||||
|
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
|
||||||
|
dir = 4
|
||||||
|
},
|
||||||
|
/obj/structure/disposalpipe/segment,
|
||||||
|
/obj/structure/cable{
|
||||||
|
d1 = 1;
|
||||||
|
d2 = 8;
|
||||||
|
icon_state = "1-8"
|
||||||
|
},
|
||||||
|
/obj/structure/cable{
|
||||||
|
d1 = 1;
|
||||||
|
d2 = 4;
|
||||||
|
icon_state = "1-4"
|
||||||
|
},
|
||||||
|
/turf/simulated/floor/plating,
|
||||||
|
/area/maintenance/security_starboard)
|
||||||
"tow" = (
|
"tow" = (
|
||||||
/obj/structure/table/standard,
|
/obj/structure/table/standard,
|
||||||
/obj/effect/decal/cleanable/dirt,
|
/obj/effect/decal/cleanable/dirt,
|
||||||
@@ -67164,6 +67340,23 @@
|
|||||||
},
|
},
|
||||||
/turf/simulated/floor/tiled/white,
|
/turf/simulated/floor/tiled/white,
|
||||||
/area/rnd/lab)
|
/area/rnd/lab)
|
||||||
|
"vfO" = (
|
||||||
|
/obj/machinery/atmospherics/pipe/simple/hidden,
|
||||||
|
/obj/structure/window/reinforced,
|
||||||
|
/obj/structure/bed/chair/remote/robot/prison,
|
||||||
|
/obj/machinery/door/window/brigdoor/northright{
|
||||||
|
id = "Remote Chair";
|
||||||
|
name = "Remote Chair";
|
||||||
|
req_access = list(2)
|
||||||
|
},
|
||||||
|
/obj/structure/window/reinforced{
|
||||||
|
dir = 4
|
||||||
|
},
|
||||||
|
/obj/structure/window/reinforced{
|
||||||
|
dir = 8
|
||||||
|
},
|
||||||
|
/turf/simulated/floor/tiled,
|
||||||
|
/area/security/prison)
|
||||||
"vgi" = (
|
"vgi" = (
|
||||||
/obj/machinery/door/firedoor,
|
/obj/machinery/door/firedoor,
|
||||||
/obj/structure/window/reinforced{
|
/obj/structure/window/reinforced{
|
||||||
@@ -67323,6 +67516,17 @@
|
|||||||
/obj/effect/floor_decal/spline/plain,
|
/obj/effect/floor_decal/spline/plain,
|
||||||
/turf/simulated/floor/tiled,
|
/turf/simulated/floor/tiled,
|
||||||
/area/security/nuke_storage)
|
/area/security/nuke_storage)
|
||||||
|
"vuW" = (
|
||||||
|
/obj/structure/window/reinforced{
|
||||||
|
dir = 8
|
||||||
|
},
|
||||||
|
/obj/structure/window/reinforced{
|
||||||
|
dir = 4
|
||||||
|
},
|
||||||
|
/obj/structure/window/reinforced,
|
||||||
|
/obj/structure/grille,
|
||||||
|
/turf/simulated/floor/plating,
|
||||||
|
/area/security/brig)
|
||||||
"vvS" = (
|
"vvS" = (
|
||||||
/obj/structure/bed/chair/office/dark{
|
/obj/structure/bed/chair/office/dark{
|
||||||
dir = 8
|
dir = 8
|
||||||
@@ -67713,6 +67917,30 @@
|
|||||||
/obj/effect/floor_decal/industrial/hatch/yellow,
|
/obj/effect/floor_decal/industrial/hatch/yellow,
|
||||||
/turf/simulated/floor/tiled,
|
/turf/simulated/floor/tiled,
|
||||||
/area/hallway/primary/aft)
|
/area/hallway/primary/aft)
|
||||||
|
"wkn" = (
|
||||||
|
/obj/structure/cable{
|
||||||
|
d1 = 4;
|
||||||
|
d2 = 8;
|
||||||
|
icon_state = "4-8"
|
||||||
|
},
|
||||||
|
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
|
||||||
|
dir = 4
|
||||||
|
},
|
||||||
|
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
|
||||||
|
dir = 4
|
||||||
|
},
|
||||||
|
/obj/structure/cable{
|
||||||
|
d1 = 1;
|
||||||
|
d2 = 8;
|
||||||
|
icon_state = "1-8"
|
||||||
|
},
|
||||||
|
/obj/structure/cable{
|
||||||
|
d1 = 1;
|
||||||
|
d2 = 4;
|
||||||
|
icon_state = "1-4"
|
||||||
|
},
|
||||||
|
/turf/simulated/floor/plating,
|
||||||
|
/area/maintenance/security_starboard)
|
||||||
"wlr" = (
|
"wlr" = (
|
||||||
/obj/machinery/door/firedoor,
|
/obj/machinery/door/firedoor,
|
||||||
/obj/structure/window/reinforced{
|
/obj/structure/window/reinforced{
|
||||||
@@ -68011,6 +68239,7 @@
|
|||||||
dir = 4;
|
dir = 4;
|
||||||
pixel_x = -28
|
pixel_x = -28
|
||||||
},
|
},
|
||||||
|
/obj/structure/disposalpipe/segment,
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
"wZf" = (
|
"wZf" = (
|
||||||
@@ -68197,6 +68426,29 @@
|
|||||||
icon_state = "asteroidplating"
|
icon_state = "asteroidplating"
|
||||||
},
|
},
|
||||||
/area/mine/unexplored)
|
/area/mine/unexplored)
|
||||||
|
"xmv" = (
|
||||||
|
/obj/effect/floor_decal/industrial/warning{
|
||||||
|
dir = 1
|
||||||
|
},
|
||||||
|
/obj/structure/window/reinforced{
|
||||||
|
dir = 1
|
||||||
|
},
|
||||||
|
/obj/structure/lattice/catwalk/indoor/grate,
|
||||||
|
/obj/structure/cable{
|
||||||
|
d1 = 4;
|
||||||
|
d2 = 8;
|
||||||
|
icon_state = "4-8"
|
||||||
|
},
|
||||||
|
/obj/structure/cable{
|
||||||
|
d1 = 1;
|
||||||
|
d2 = 4;
|
||||||
|
icon_state = "1-4"
|
||||||
|
},
|
||||||
|
/obj/structure/cable{
|
||||||
|
icon_state = "1-8"
|
||||||
|
},
|
||||||
|
/turf/simulated/floor/plating,
|
||||||
|
/area/maintenance/security_starboard)
|
||||||
"xmZ" = (
|
"xmZ" = (
|
||||||
/obj/structure/plasticflaps/airtight,
|
/obj/structure/plasticflaps/airtight,
|
||||||
/obj/machinery/door/firedoor,
|
/obj/machinery/door/firedoor,
|
||||||
@@ -68246,6 +68498,15 @@
|
|||||||
/obj/machinery/atmospherics/unary/vent_pump/on,
|
/obj/machinery/atmospherics/unary/vent_pump/on,
|
||||||
/turf/simulated/floor/tiled,
|
/turf/simulated/floor/tiled,
|
||||||
/area/hallway/primary/starboard)
|
/area/hallway/primary/starboard)
|
||||||
|
"xoV" = (
|
||||||
|
/obj/structure/lattice/catwalk/indoor/grate,
|
||||||
|
/obj/structure/cable{
|
||||||
|
d1 = 2;
|
||||||
|
d2 = 4;
|
||||||
|
icon_state = "2-4"
|
||||||
|
},
|
||||||
|
/turf/simulated/floor/plating,
|
||||||
|
/area/maintenance/security_starboard)
|
||||||
"xpb" = (
|
"xpb" = (
|
||||||
/obj/effect/decal/cleanable/dirt,
|
/obj/effect/decal/cleanable/dirt,
|
||||||
/obj/structure/morgue{
|
/obj/structure/morgue{
|
||||||
@@ -68311,6 +68572,22 @@
|
|||||||
/obj/machinery/atmospherics/pipe/manifold/hidden,
|
/obj/machinery/atmospherics/pipe/manifold/hidden,
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
/area/maintenance/atmos_control)
|
/area/maintenance/atmos_control)
|
||||||
|
"xDq" = (
|
||||||
|
/obj/structure/disposalpipe/segment{
|
||||||
|
dir = 2;
|
||||||
|
icon_state = "pipe-c"
|
||||||
|
},
|
||||||
|
/obj/structure/lattice/catwalk/indoor/grate,
|
||||||
|
/turf/simulated/floor/plating,
|
||||||
|
/area/maintenance/security_starboard)
|
||||||
|
"xFo" = (
|
||||||
|
/obj/structure/table/standard,
|
||||||
|
/obj/effect/floor_decal/corner/purple/full{
|
||||||
|
dir = 4
|
||||||
|
},
|
||||||
|
/obj/item/storage/bag/crystal,
|
||||||
|
/turf/simulated/floor/tiled,
|
||||||
|
/area/maintenance/security_starboard)
|
||||||
"xGz" = (
|
"xGz" = (
|
||||||
/obj/effect/decal/cleanable/generic,
|
/obj/effect/decal/cleanable/generic,
|
||||||
/turf/simulated/floor/plating,
|
/turf/simulated/floor/plating,
|
||||||
@@ -68501,10 +68778,25 @@
|
|||||||
/turf/simulated/floor/tiled,
|
/turf/simulated/floor/tiled,
|
||||||
/area/outpost/mining_main/eva)
|
/area/outpost/mining_main/eva)
|
||||||
"yck" = (
|
"yck" = (
|
||||||
/obj/structure/lattice/catwalk,
|
/obj/structure/lattice,
|
||||||
/obj/random/tool,
|
/obj/structure/disposalpipe/down{
|
||||||
|
dir = 1
|
||||||
|
},
|
||||||
/turf/simulated/open,
|
/turf/simulated/open,
|
||||||
/area/maintenance/security_starboard)
|
/area/maintenance/security_starboard)
|
||||||
|
"ydb" = (
|
||||||
|
/obj/structure/window/reinforced{
|
||||||
|
dir = 8
|
||||||
|
},
|
||||||
|
/obj/structure/window/reinforced{
|
||||||
|
dir = 4
|
||||||
|
},
|
||||||
|
/obj/structure/window/reinforced{
|
||||||
|
dir = 1
|
||||||
|
},
|
||||||
|
/obj/structure/grille,
|
||||||
|
/turf/simulated/floor/plating,
|
||||||
|
/area/security/brig)
|
||||||
"yfc" = (
|
"yfc" = (
|
||||||
/obj/machinery/disposal,
|
/obj/machinery/disposal,
|
||||||
/obj/structure/disposalpipe/trunk{
|
/obj/structure/disposalpipe/trunk{
|
||||||
@@ -100023,9 +100315,9 @@ kbF
|
|||||||
aai
|
aai
|
||||||
rKr
|
rKr
|
||||||
aan
|
aan
|
||||||
aah
|
xoV
|
||||||
agC
|
agC
|
||||||
aaJ
|
wkn
|
||||||
aaU
|
aaU
|
||||||
abg
|
abg
|
||||||
abD
|
abD
|
||||||
@@ -100535,20 +100827,20 @@ aaa
|
|||||||
aad
|
aad
|
||||||
aag
|
aag
|
||||||
yck
|
yck
|
||||||
aaj
|
orw
|
||||||
aaj
|
heb
|
||||||
aav
|
xmv
|
||||||
aad
|
aad
|
||||||
udz
|
udz
|
||||||
aaV
|
aaV
|
||||||
abi
|
abi
|
||||||
abF
|
abF
|
||||||
abF
|
|
||||||
acm
|
acm
|
||||||
|
abF
|
||||||
|
abF
|
||||||
|
abF
|
||||||
|
abF
|
||||||
acw
|
acw
|
||||||
abF
|
|
||||||
abF
|
|
||||||
abF
|
|
||||||
adR
|
adR
|
||||||
auN
|
auN
|
||||||
afd
|
afd
|
||||||
@@ -100791,7 +101083,7 @@ aaa
|
|||||||
aaa
|
aaa
|
||||||
aad
|
aad
|
||||||
rsL
|
rsL
|
||||||
rVD
|
aaj
|
||||||
aaj
|
aaj
|
||||||
aaj
|
aaj
|
||||||
aaw
|
aaw
|
||||||
@@ -100801,10 +101093,10 @@ aaV
|
|||||||
aaV
|
aaV
|
||||||
abG
|
abG
|
||||||
aaV
|
aaV
|
||||||
aaV
|
ydb
|
||||||
aaV
|
fZm
|
||||||
aaV
|
fZm
|
||||||
aaV
|
vuW
|
||||||
aaV
|
aaV
|
||||||
adS
|
adS
|
||||||
aeC
|
aeC
|
||||||
@@ -101047,21 +101339,21 @@ aaa
|
|||||||
aaa
|
aaa
|
||||||
aaa
|
aaa
|
||||||
aad
|
aad
|
||||||
aah
|
xDq
|
||||||
aak
|
aak
|
||||||
aao
|
aao
|
||||||
aar
|
aar
|
||||||
aax
|
aax
|
||||||
agC
|
mlY
|
||||||
aaJ
|
tnQ
|
||||||
aah
|
pnV
|
||||||
wZe
|
wZe
|
||||||
aae
|
rkv
|
||||||
dED
|
dED
|
||||||
cMe
|
cMe
|
||||||
acx
|
acx
|
||||||
abU
|
abU
|
||||||
abU
|
sZw
|
||||||
adv
|
adv
|
||||||
adT
|
adT
|
||||||
aeD
|
aeD
|
||||||
@@ -101317,8 +101609,8 @@ abH
|
|||||||
tgD
|
tgD
|
||||||
qvD
|
qvD
|
||||||
acy
|
acy
|
||||||
aah
|
hSk
|
||||||
aaD
|
xFo
|
||||||
aaV
|
aaV
|
||||||
adU
|
adU
|
||||||
aeE
|
aeE
|
||||||
@@ -101572,9 +101864,9 @@ aad
|
|||||||
aaJ
|
aaJ
|
||||||
abJ
|
abJ
|
||||||
aad
|
aad
|
||||||
adb
|
aad
|
||||||
aah
|
aad
|
||||||
fFq
|
aad
|
||||||
aad
|
aad
|
||||||
aaV
|
aaV
|
||||||
adV
|
adV
|
||||||
@@ -101865,7 +102157,7 @@ aIA
|
|||||||
aJT
|
aJT
|
||||||
aLG
|
aLG
|
||||||
aNz
|
aNz
|
||||||
aLG
|
vfO
|
||||||
aQS
|
aQS
|
||||||
azK
|
azK
|
||||||
aUe
|
aUe
|
||||||
@@ -102379,7 +102671,7 @@ aIC
|
|||||||
aJV
|
aJV
|
||||||
azK
|
azK
|
||||||
azK
|
azK
|
||||||
aPn
|
aPm
|
||||||
aQU
|
aQU
|
||||||
azK
|
azK
|
||||||
aUf
|
aUf
|
||||||
@@ -102635,8 +102927,8 @@ aGA
|
|||||||
aGx
|
aGx
|
||||||
aJW
|
aJW
|
||||||
azK
|
azK
|
||||||
aGx
|
azK
|
||||||
aPo
|
aPm
|
||||||
aQV
|
aQV
|
||||||
azK
|
azK
|
||||||
aUg
|
aUg
|
||||||
@@ -103149,7 +103441,7 @@ aEC
|
|||||||
aIE
|
aIE
|
||||||
aJY
|
aJY
|
||||||
azK
|
azK
|
||||||
aEC
|
snv
|
||||||
aPp
|
aPp
|
||||||
aQX
|
aQX
|
||||||
azK
|
azK
|
||||||
|
|||||||
@@ -34,4 +34,7 @@
|
|||||||
,/area/bridge/selfdestruct
|
,/area/bridge/selfdestruct
|
||||||
,/area/medical/cryo
|
,/area/medical/cryo
|
||||||
,/area/medical/patient_c
|
,/area/medical/patient_c
|
||||||
|
,/area/security/penal_colony
|
||||||
|
,/area/security/prison/remote
|
||||||
|
,/area/security/warden/remote
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ Used In File(s): /code/game/objects/item/devices/radio/radio.dm
|
|||||||
.centradio {color: #5C5C8A;}
|
.centradio {color: #5C5C8A;}
|
||||||
.airadio {color: #FF00FF;}
|
.airadio {color: #FF00FF;}
|
||||||
.secradio {color: #A30000;}
|
.secradio {color: #A30000;}
|
||||||
|
.penradio {color: #DB1270;}
|
||||||
.engradio {color: #A66300;}
|
.engradio {color: #A66300;}
|
||||||
.medradio {color: #008160;}
|
.medradio {color: #008160;}
|
||||||
.sciradio {color: #993399;}
|
.sciradio {color: #993399;}
|
||||||
|
|||||||
Reference in New Issue
Block a user