diff --git a/code/ATMOSPHERICS/components/unary/vent_scrubber.dm b/code/ATMOSPHERICS/components/unary/vent_scrubber.dm index f75dd450c0..4cd3d342db 100644 --- a/code/ATMOSPHERICS/components/unary/vent_scrubber.dm +++ b/code/ATMOSPHERICS/components/unary/vent_scrubber.dm @@ -1,309 +1,309 @@ -/obj/machinery/atmospherics/unary/vent_scrubber - icon = 'icons/atmos/vent_scrubber.dmi' - icon_state = "map_scrubber_off" - pipe_state = "scrubber" - - name = "Air Scrubber" - desc = "Has a valve and pump attached to it" - use_power = USE_POWER_OFF - idle_power_usage = 150 //internal circuitry, friction losses and stuff - power_rating = 7500 //7500 W ~ 10 HP - - connect_types = CONNECT_TYPE_REGULAR|CONNECT_TYPE_SCRUBBER //connects to regular and scrubber pipes - - level = 1 - - var/area/initial_loc - var/id_tag = null - var/frequency = 1439 - var/datum/radio_frequency/radio_connection - var/advcontrol = 0 //YW EDIT: aac - - var/hibernate = 0 //Do we even process? - var/scrubbing = 1 //0 = siphoning, 1 = scrubbing - var/list/scrubbing_gas = list("carbon_dioxide") - - var/panic = 0 //is this scrubber panicked? - - var/area_uid - var/radio_filter_out - var/radio_filter_in - -/obj/machinery/atmospherics/unary/vent_scrubber/on - use_power = USE_POWER_IDLE - icon_state = "map_scrubber_on" - -/obj/machinery/atmospherics/unary/vent_scrubber/New() - ..() - air_contents.volume = ATMOS_DEFAULT_VOLUME_FILTER - - icon = null - initial_loc = get_area(loc) - area_uid = "\ref[initial_loc]" - if (!id_tag) - assign_uid() - id_tag = num2text(uid) - -/obj/machinery/atmospherics/unary/vent_scrubber/Destroy() - unregister_radio(src, frequency) - if(initial_loc) - initial_loc.air_scrub_info -= id_tag - initial_loc.air_scrub_names -= id_tag - return ..() - -/obj/machinery/atmospherics/unary/vent_scrubber/update_icon(var/safety = 0) - if(!check_icon_cache()) - return - - cut_overlays() - - var/scrubber_icon = "scrubber" - - var/turf/T = get_turf(src) - if(!istype(T)) - return - - if(!powered()) - scrubber_icon += "off" - else - scrubber_icon += "[use_power ? "[scrubbing ? "on" : "in"]" : "off"]" - - add_overlay(icon_manager.get_atmos_icon("device", , , scrubber_icon)) - -/obj/machinery/atmospherics/unary/vent_scrubber/update_underlays() - if(..()) - underlays.Cut() - var/turf/T = get_turf(src) - if(!istype(T)) - return - if(!T.is_plating() && node && node.level == 1 && istype(node, /obj/machinery/atmospherics/pipe)) - return - else - if(node) - add_underlay(T, node, dir, node.icon_connect_type) - else - add_underlay(T,, dir) - -/obj/machinery/atmospherics/unary/vent_scrubber/proc/set_frequency(new_frequency) - radio_controller.remove_object(src, frequency) - frequency = new_frequency - radio_connection = radio_controller.add_object(src, frequency, radio_filter_in) - -/obj/machinery/atmospherics/unary/vent_scrubber/proc/broadcast_status() - if(!radio_connection) - return 0 - - var/datum/signal/signal = new - signal.transmission_method = TRANSMISSION_RADIO //radio signal - signal.source = src - signal.data = list( - "area" = area_uid, - "tag" = id_tag, - "device" = "AScr", - "timestamp" = world.time, - "power" = use_power, - "scrubbing" = scrubbing, - "panic" = panic, - "filter_o2" = ("oxygen" in scrubbing_gas), - "filter_n2" = ("nitrogen" in scrubbing_gas), - "filter_co2" = ("carbon_dioxide" in scrubbing_gas), - "filter_phoron" = ("phoron" in scrubbing_gas), - "filter_n2o" = ("nitrous_oxide" in scrubbing_gas), - "filter_fuel" = ("volatile_fuel" in scrubbing_gas), - "sigtype" = "status" - ) - if(!initial_loc.air_scrub_names[id_tag]) - var/new_name = "[initial_loc.name] Air Scrubber #[initial_loc.air_scrub_names.len+1]" - initial_loc.air_scrub_names[id_tag] = new_name - src.name = new_name - initial_loc.air_scrub_info[id_tag] = signal.data - radio_connection.post_signal(src, signal, radio_filter_out) - - return 1 - -/obj/machinery/atmospherics/unary/vent_scrubber/atmos_init() - ..() - radio_filter_in = frequency==initial(frequency)?(RADIO_FROM_AIRALARM):null - radio_filter_out = frequency==initial(frequency)?(RADIO_TO_AIRALARM):null - if (frequency) - set_frequency(frequency) - src.broadcast_status() - -/obj/machinery/atmospherics/unary/vent_scrubber/process() - ..() - - if (hibernate) - return 1 - - if (!node) - update_use_power(USE_POWER_OFF) - //broadcast_status() - if(!use_power || (stat & (NOPOWER|BROKEN))) - return 0 - - var/datum/gas_mixture/environment = loc.return_air() - - var/power_draw = -1 - if(scrubbing) - //limit flow rate from turfs - var/transfer_moles = min(environment.total_moles, environment.total_moles*MAX_SCRUBBER_FLOWRATE/environment.volume) //group_multiplier gets divided out here - - power_draw = scrub_gas(src, scrubbing_gas, environment, air_contents, transfer_moles, power_rating) - else //Just siphon all air - //limit flow rate from turfs - var/transfer_moles = min(environment.total_moles, environment.total_moles*MAX_SIPHON_FLOWRATE/environment.volume) //group_multiplier gets divided out here - - power_draw = pump_gas(src, environment, air_contents, transfer_moles, power_rating) - - if(scrubbing && power_draw < 0 && controller_iteration > 10) //99% of all scrubbers - //Fucking hibernate because you ain't doing shit. - hibernate = 1 - spawn(rand(100,200)) //hibernate for 10 or 20 seconds randomly - hibernate = 0 - - if (power_draw >= 0) - last_power_draw = power_draw - use_power(power_draw) - - if(network) - network.update = 1 - - return 1 - -/obj/machinery/atmospherics/unary/vent_scrubber/hide(var/i) //to make the little pipe section invisible, the icon changes. - update_icon() - update_underlays() - -/obj/machinery/atmospherics/unary/vent_scrubber/receive_signal(datum/signal/signal) - if(stat & (NOPOWER|BROKEN)) - return - if(!signal.data["tag"] || (signal.data["tag"] != id_tag) || (signal.data["sigtype"]!="command")) - return 0 - - if(signal.data["power"] != null) - update_use_power(text2num(signal.data["power"])) - if(signal.data["power_toggle"] != null) - update_use_power(!use_power) - - if(signal.data["panic_siphon"]) //must be before if("scrubbing" thing - panic = text2num(signal.data["panic_siphon"]) - if(panic) - update_use_power(USE_POWER_IDLE) - scrubbing = 0 - else - scrubbing = 1 - if(signal.data["toggle_panic_siphon"] != null) - panic = !panic - if(panic) - update_use_power(USE_POWER_IDLE) - scrubbing = 0 - else - scrubbing = 1 - - if(signal.data["scrubbing"] != null) - scrubbing = text2num(signal.data["scrubbing"]) - if(scrubbing) - panic = 0 - if(signal.data["toggle_scrubbing"]) - scrubbing = !scrubbing - if(scrubbing) - panic = 0 - - var/list/toggle = list() - - if(!isnull(signal.data["o2_scrub"]) && text2num(signal.data["o2_scrub"]) != ("oxygen" in scrubbing_gas)) - toggle += "oxygen" - else if(signal.data["toggle_o2_scrub"]) - toggle += "oxygen" - - if(!isnull(signal.data["n2_scrub"]) && text2num(signal.data["n2_scrub"]) != ("nitrogen" in scrubbing_gas)) - toggle += "nitrogen" - else if(signal.data["toggle_n2_scrub"]) - toggle += "nitrogen" - - if(!isnull(signal.data["co2_scrub"]) && text2num(signal.data["co2_scrub"]) != ("carbon_dioxide" in scrubbing_gas)) - toggle += "carbon_dioxide" - else if(signal.data["toggle_co2_scrub"]) - toggle += "carbon_dioxide" - - if(!isnull(signal.data["tox_scrub"]) && text2num(signal.data["tox_scrub"]) != ("phoron" in scrubbing_gas)) - toggle += "phoron" - else if(signal.data["toggle_tox_scrub"]) - toggle += "phoron" - - if(!isnull(signal.data["n2o_scrub"]) && text2num(signal.data["n2o_scrub"]) != ("nitrous_oxide" in scrubbing_gas)) - toggle += "nitrous_oxide" - else if(signal.data["toggle_n2o_scrub"]) - toggle += "nitrous_oxide" - - if(!isnull(signal.data["fuel_scrub"]) && text2num(signal.data["fuel_scrub"]) != ("volatile_fuel" in scrubbing_gas)) - toggle += "volatile_fuel" - else if(signal.data["toggle_fuel_scrub"]) - toggle += "volatile_fuel" - - scrubbing_gas ^= toggle - - if(signal.data["init"] != null) - name = signal.data["init"] - return - - if(signal.data["status"] != null) - spawn(2) - broadcast_status() - return //do not update_icon - -// log_admin("DEBUG \[[world.timeofday]\]: vent_scrubber/receive_signal: unknown command \"[signal.data["command"]]\"\n[signal.debug_print()]") - spawn(2) - broadcast_status() - update_icon() - return - -/obj/machinery/atmospherics/unary/vent_scrubber/power_change() - var/old_stat = stat - ..() - if(old_stat != stat) - update_icon() - -/obj/machinery/atmospherics/unary/vent_scrubber/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob) - if(istype(W, /obj/item/device/multitool)) //YW EDIT: aac - update_multitool_menu(user) - return 1 - if (!W.is_wrench()) - return ..() - if (!(stat & NOPOWER) && use_power) - to_chat(user, "You cannot unwrench \the [src], turn it off first.") - return 1 - var/turf/T = src.loc - if (node && node.level==1 && isturf(T) && !T.is_plating()) - to_chat(user, "You must remove the plating first.") - return 1 - if(!can_unwrench()) - to_chat(user, "You cannot unwrench \the [src], it is too exerted due to internal pressure.") - add_fingerprint(user) - return 1 - playsound(src, W.usesound, 50, 1) - to_chat(user, "You begin to unfasten \the [src]...") - if (do_after(user, 40 * W.toolspeed)) - user.visible_message( \ - "\The [user] unfastens \the [src].", \ - "You have unfastened \the [src].", \ - "You hear a ratchet.") - deconstruct() - -/obj/machinery/atmospherics/unary/vent_scrubber/examine(mob/user) - . = ..() - if(Adjacent(user)) - . += "A small gauge in the corner reads [round(last_flow_rate, 0.1)] L/s; [round(last_power_draw)] W" - else - . += "You are too far away to read the gauge." - -//YW EDIT: aac start -/obj/machinery/atmospherics/unary/vent_scrubber/multitool_menu(var/mob/user,var/obj/item/multitool/P) - return {" - - "} +/obj/machinery/atmospherics/unary/vent_scrubber + icon = 'icons/atmos/vent_scrubber.dmi' + icon_state = "map_scrubber_off" + pipe_state = "scrubber" + + name = "Air Scrubber" + desc = "Has a valve and pump attached to it" + use_power = USE_POWER_OFF + idle_power_usage = 150 //internal circuitry, friction losses and stuff + power_rating = 7500 //7500 W ~ 10 HP + + connect_types = CONNECT_TYPE_REGULAR|CONNECT_TYPE_SCRUBBER //connects to regular and scrubber pipes + + level = 1 + + var/area/initial_loc + var/id_tag = null + var/frequency = 1439 + var/datum/radio_frequency/radio_connection + var/advcontrol = 0 //YW EDIT: aac + + var/hibernate = 0 //Do we even process? + var/scrubbing = 1 //0 = siphoning, 1 = scrubbing + var/list/scrubbing_gas = list("carbon_dioxide", "phoron") + + var/panic = 0 //is this scrubber panicked? + + var/area_uid + var/radio_filter_out + var/radio_filter_in + +/obj/machinery/atmospherics/unary/vent_scrubber/on + use_power = USE_POWER_IDLE + icon_state = "map_scrubber_on" + +/obj/machinery/atmospherics/unary/vent_scrubber/New() + ..() + air_contents.volume = ATMOS_DEFAULT_VOLUME_FILTER + + icon = null + initial_loc = get_area(loc) + area_uid = "\ref[initial_loc]" + if (!id_tag) + assign_uid() + id_tag = num2text(uid) + +/obj/machinery/atmospherics/unary/vent_scrubber/Destroy() + unregister_radio(src, frequency) + if(initial_loc) + initial_loc.air_scrub_info -= id_tag + initial_loc.air_scrub_names -= id_tag + return ..() + +/obj/machinery/atmospherics/unary/vent_scrubber/update_icon(var/safety = 0) + if(!check_icon_cache()) + return + + cut_overlays() + + var/scrubber_icon = "scrubber" + + var/turf/T = get_turf(src) + if(!istype(T)) + return + + if(!powered()) + scrubber_icon += "off" + else + scrubber_icon += "[use_power ? "[scrubbing ? "on" : "in"]" : "off"]" + + add_overlay(icon_manager.get_atmos_icon("device", , , scrubber_icon)) + +/obj/machinery/atmospherics/unary/vent_scrubber/update_underlays() + if(..()) + underlays.Cut() + var/turf/T = get_turf(src) + if(!istype(T)) + return + if(!T.is_plating() && node && node.level == 1 && istype(node, /obj/machinery/atmospherics/pipe)) + return + else + if(node) + add_underlay(T, node, dir, node.icon_connect_type) + else + add_underlay(T,, dir) + +/obj/machinery/atmospherics/unary/vent_scrubber/proc/set_frequency(new_frequency) + radio_controller.remove_object(src, frequency) + frequency = new_frequency + radio_connection = radio_controller.add_object(src, frequency, radio_filter_in) + +/obj/machinery/atmospherics/unary/vent_scrubber/proc/broadcast_status() + if(!radio_connection) + return 0 + + var/datum/signal/signal = new + signal.transmission_method = TRANSMISSION_RADIO //radio signal + signal.source = src + signal.data = list( + "area" = area_uid, + "tag" = id_tag, + "device" = "AScr", + "timestamp" = world.time, + "power" = use_power, + "scrubbing" = scrubbing, + "panic" = panic, + "filter_o2" = ("oxygen" in scrubbing_gas), + "filter_n2" = ("nitrogen" in scrubbing_gas), + "filter_co2" = ("carbon_dioxide" in scrubbing_gas), + "filter_phoron" = ("phoron" in scrubbing_gas), + "filter_n2o" = ("nitrous_oxide" in scrubbing_gas), + "filter_fuel" = ("volatile_fuel" in scrubbing_gas), + "sigtype" = "status" + ) + if(!initial_loc.air_scrub_names[id_tag]) + var/new_name = "[initial_loc.name] Air Scrubber #[initial_loc.air_scrub_names.len+1]" + initial_loc.air_scrub_names[id_tag] = new_name + src.name = new_name + initial_loc.air_scrub_info[id_tag] = signal.data + radio_connection.post_signal(src, signal, radio_filter_out) + + return 1 + +/obj/machinery/atmospherics/unary/vent_scrubber/atmos_init() + ..() + radio_filter_in = frequency==initial(frequency)?(RADIO_FROM_AIRALARM):null + radio_filter_out = frequency==initial(frequency)?(RADIO_TO_AIRALARM):null + if (frequency) + set_frequency(frequency) + src.broadcast_status() + +/obj/machinery/atmospherics/unary/vent_scrubber/process() + ..() + + if (hibernate) + return 1 + + if (!node) + update_use_power(USE_POWER_OFF) + //broadcast_status() + if(!use_power || (stat & (NOPOWER|BROKEN))) + return 0 + + var/datum/gas_mixture/environment = loc.return_air() + + var/power_draw = -1 + if(scrubbing) + //limit flow rate from turfs + var/transfer_moles = min(environment.total_moles, environment.total_moles*MAX_SCRUBBER_FLOWRATE/environment.volume) //group_multiplier gets divided out here + + power_draw = scrub_gas(src, scrubbing_gas, environment, air_contents, transfer_moles, power_rating) + else //Just siphon all air + //limit flow rate from turfs + var/transfer_moles = min(environment.total_moles, environment.total_moles*MAX_SIPHON_FLOWRATE/environment.volume) //group_multiplier gets divided out here + + power_draw = pump_gas(src, environment, air_contents, transfer_moles, power_rating) + + if(scrubbing && power_draw < 0 && controller_iteration > 10) //99% of all scrubbers + //Fucking hibernate because you ain't doing shit. + hibernate = 1 + spawn(rand(100,200)) //hibernate for 10 or 20 seconds randomly + hibernate = 0 + + if (power_draw >= 0) + last_power_draw = power_draw + use_power(power_draw) + + if(network) + network.update = 1 + + return 1 + +/obj/machinery/atmospherics/unary/vent_scrubber/hide(var/i) //to make the little pipe section invisible, the icon changes. + update_icon() + update_underlays() + +/obj/machinery/atmospherics/unary/vent_scrubber/receive_signal(datum/signal/signal) + if(stat & (NOPOWER|BROKEN)) + return + if(!signal.data["tag"] || (signal.data["tag"] != id_tag) || (signal.data["sigtype"]!="command")) + return 0 + + if(signal.data["power"] != null) + update_use_power(text2num(signal.data["power"])) + if(signal.data["power_toggle"] != null) + update_use_power(!use_power) + + if(signal.data["panic_siphon"]) //must be before if("scrubbing" thing + panic = text2num(signal.data["panic_siphon"]) + if(panic) + update_use_power(USE_POWER_IDLE) + scrubbing = 0 + else + scrubbing = 1 + if(signal.data["toggle_panic_siphon"] != null) + panic = !panic + if(panic) + update_use_power(USE_POWER_IDLE) + scrubbing = 0 + else + scrubbing = 1 + + if(signal.data["scrubbing"] != null) + scrubbing = text2num(signal.data["scrubbing"]) + if(scrubbing) + panic = 0 + if(signal.data["toggle_scrubbing"]) + scrubbing = !scrubbing + if(scrubbing) + panic = 0 + + var/list/toggle = list() + + if(!isnull(signal.data["o2_scrub"]) && text2num(signal.data["o2_scrub"]) != ("oxygen" in scrubbing_gas)) + toggle += "oxygen" + else if(signal.data["toggle_o2_scrub"]) + toggle += "oxygen" + + if(!isnull(signal.data["n2_scrub"]) && text2num(signal.data["n2_scrub"]) != ("nitrogen" in scrubbing_gas)) + toggle += "nitrogen" + else if(signal.data["toggle_n2_scrub"]) + toggle += "nitrogen" + + if(!isnull(signal.data["co2_scrub"]) && text2num(signal.data["co2_scrub"]) != ("carbon_dioxide" in scrubbing_gas)) + toggle += "carbon_dioxide" + else if(signal.data["toggle_co2_scrub"]) + toggle += "carbon_dioxide" + + if(!isnull(signal.data["tox_scrub"]) && text2num(signal.data["tox_scrub"]) != ("phoron" in scrubbing_gas)) + toggle += "phoron" + else if(signal.data["toggle_tox_scrub"]) + toggle += "phoron" + + if(!isnull(signal.data["n2o_scrub"]) && text2num(signal.data["n2o_scrub"]) != ("nitrous_oxide" in scrubbing_gas)) + toggle += "nitrous_oxide" + else if(signal.data["toggle_n2o_scrub"]) + toggle += "nitrous_oxide" + + if(!isnull(signal.data["fuel_scrub"]) && text2num(signal.data["fuel_scrub"]) != ("volatile_fuel" in scrubbing_gas)) + toggle += "volatile_fuel" + else if(signal.data["toggle_fuel_scrub"]) + toggle += "volatile_fuel" + + scrubbing_gas ^= toggle + + if(signal.data["init"] != null) + name = signal.data["init"] + return + + if(signal.data["status"] != null) + spawn(2) + broadcast_status() + return //do not update_icon + +// log_admin("DEBUG \[[world.timeofday]\]: vent_scrubber/receive_signal: unknown command \"[signal.data["command"]]\"\n[signal.debug_print()]") + spawn(2) + broadcast_status() + update_icon() + return + +/obj/machinery/atmospherics/unary/vent_scrubber/power_change() + var/old_stat = stat + ..() + if(old_stat != stat) + update_icon() + +/obj/machinery/atmospherics/unary/vent_scrubber/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob) + if(istype(W, /obj/item/device/multitool)) //YW EDIT: aac + update_multitool_menu(user) + return 1 + if (!W.is_wrench()) + return ..() + if (!(stat & NOPOWER) && use_power) + to_chat(user, "You cannot unwrench \the [src], turn it off first.") + return 1 + var/turf/T = src.loc + if (node && node.level==1 && isturf(T) && !T.is_plating()) + to_chat(user, "You must remove the plating first.") + return 1 + if(!can_unwrench()) + to_chat(user, "You cannot unwrench \the [src], it is too exerted due to internal pressure.") + add_fingerprint(user) + return 1 + playsound(src, W.usesound, 50, 1) + to_chat(user, "You begin to unfasten \the [src]...") + if (do_after(user, 40 * W.toolspeed)) + user.visible_message( \ + "\The [user] unfastens \the [src].", \ + "You have unfastened \the [src].", \ + "You hear a ratchet.") + deconstruct() + +/obj/machinery/atmospherics/unary/vent_scrubber/examine(mob/user) + . = ..() + if(Adjacent(user)) + . += "A small gauge in the corner reads [round(last_flow_rate, 0.1)] L/s; [round(last_power_draw)] W" + else + . += "You are too far away to read the gauge." + +//YW EDIT: aac start +/obj/machinery/atmospherics/unary/vent_scrubber/multitool_menu(var/mob/user,var/obj/item/multitool/P) + return {" + + "} //YW EDIT: aac end \ No newline at end of file diff --git a/code/modules/client/preference_setup/loadout/loadout_fluffitems_vr.dm b/code/modules/client/preference_setup/loadout/loadout_fluffitems_vr.dm index 42aa7f50d2..7b62f58a9c 100644 --- a/code/modules/client/preference_setup/loadout/loadout_fluffitems_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_fluffitems_vr.dm @@ -78,6 +78,24 @@ ckeywhitelist = list("alfalah") character_name = list("Charlotte Graves") +/datum/gear/fluff/fifi_hat + path = /obj/item/clothing/head/fluff/fifi_hat + display_name = "Fifi's hat" + ckeywhitelist = list("allweek") + character_name = list("Fifi the Magnificent") + +/datum/gear/fluff/fifi_jumpsuit + path = /obj/item/clothing/under/fluff/fifi_jumpsuit + display_name = "Fifi's jumpsuit" + ckeywhitelist = list("allweek") + character_name = list("Fifi the Magnificent") + +/datum/gear/fluff/fifi_hat + path = /obj/item/clothing/shoes/fluff/fifi_socks + display_name = "Fifi's socks" + ckeywhitelist = list("allweek") + character_name = list("Fifi the Magnificent") + /datum/gear/fluff/lynn_penlight path = /obj/item/device/flashlight/pen/fluff/lynn display_name = "Lynn's Penlight" diff --git a/code/modules/client/preference_setup/loadout/loadout_fluffitems_yw.dm b/code/modules/client/preference_setup/loadout/loadout_fluffitems_yw.dm index 57a9677c05..58215dea6e 100644 --- a/code/modules/client/preference_setup/loadout/loadout_fluffitems_yw.dm +++ b/code/modules/client/preference_setup/loadout/loadout_fluffitems_yw.dm @@ -1,3 +1,16 @@ +// Note for newly added fluff items: Ckeys should not contain any spaces, underscores or capitalizations, +// or else the item will not be usable. +// Example: Someone whose username is "Master Pred_Man" should be written as "masterpredman" instead +// Note: Do not use characters such as # in the display_name. It will cause the item to be unable to be selected. + +/datum/gear/fluff + path = /obj/item + sort_category = "Fluff Items" + display_name = "If this item can be chosen or seen, ping a coder immediately!" + ckeywhitelist = list("This entry should never be choosable with this variable set.") //If it does, then that means somebody fucked up the whitelist system pretty hard + character_name = list("This entry should never be choosable with this variable set.") + cost = 0 + /* /datum/gear/fluff/testhorn path = /obj/item/weapon/bikehorn @@ -8,6 +21,13 @@ character_name = list("shitfacemcgee") //Character name. this variable is required, or the item doesn't show in loadout. Change to "character_name = null" if not character restricted. */ +/datum/gear/fluff/collar //Use this as a base path for collars if you'd like to set tags in loadout. Make sure you don't use apostrophes in the display name or this breaks! + slot = slot_tie + +/datum/gear/fluff/collar/New() + ..() + gear_tweaks += gear_tweak_collar_tag + // 0-9 CKEYS // A CKEYS diff --git a/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm b/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm index 12bf14ad2f..417b1c5257 100644 --- a/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm @@ -124,3 +124,8 @@ Talon winter coat display_name = "hazard vest, atmospherics" path = /obj/item/clothing/suit/storage/hazardvest/atmos allowed_roles = list("Chief Engineer","Atmospheric Technician", "Engineer") + +//Long fur coat +/datum/gear/suit/russofurcoat + display_name = "long fur coat" + path = /obj/item/clothing/suit/storage/vest/hoscoat/russofurcoat diff --git a/code/modules/clothing/under/accessories/accessory_vr.dm b/code/modules/clothing/under/accessories/accessory_vr.dm index a2d996cb2f..d337ef47a4 100644 --- a/code/modules/clothing/under/accessories/accessory_vr.dm +++ b/code/modules/clothing/under/accessories/accessory_vr.dm @@ -271,7 +271,7 @@ /obj/item/clothing/accessory/collar/collarplanet_earth name = "planet collar" - desc = "A collar featuring a surprisingly detailed replica of planet earth surrounded by a weak battery powered force shield. There is a button to turn it off." + desc = "A collar featuring a surprisingly detailed replica of a earth-like planet surrounded by a weak battery powered force shield. There is a button to turn it off." icon_state = "collarplanet_earth" item_state = "collarplanet_earth" overlay_state = "collarplanet_earth" diff --git a/code/modules/economy/vending_machines_vr.dm b/code/modules/economy/vending_machines_vr.dm index a2bc835230..66fea29cd1 100644 --- a/code/modules/economy/vending_machines_vr.dm +++ b/code/modules/economy/vending_machines_vr.dm @@ -754,7 +754,8 @@ /obj/item/clothing/mask/bandana/red = 50, /obj/item/clothing/mask/surgical = 50) premium = list(/obj/item/weapon/bedsheet/rainbow = 1) - contraband = list(/obj/item/clothing/mask/gas/clown_hat = 1) + contraband = list(/obj/item/clothing/mask/gas/clown_hat = 1, + /obj/item/clothing/accessory/collar/collarplanet_earth = 5) /obj/machinery/vending/loadout/clothing name = "General Jump" diff --git a/code/modules/vore/fluffstuff/custom_clothes_vr.dm b/code/modules/vore/fluffstuff/custom_clothes_vr.dm index db232eead8..dd570ad0b1 100644 --- a/code/modules/vore/fluffstuff/custom_clothes_vr.dm +++ b/code/modules/vore/fluffstuff/custom_clothes_vr.dm @@ -207,6 +207,20 @@ icon_override = 'icons/vore/custom_clothes_vr.dmi' item_state = "greatcoat_mob" +//For general use +/obj/item/clothing/suit/storage/vest/hoscoat/russofurcoat + name = "long fur coat" + desc = "A sophisticated long coat made of fur." + + icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "russofurcoat" + + icon_override = 'icons/inventory/suit/mob_vr.dmi' + item_state = "russofurcoat" + + allowed = list (/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight, /obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes, /obj/item/weapon/storage/box/matches, /obj/item/weapon/reagent_containers/food/drinks/flask) + flags_inv = HIDETIE|HIDEHOLSTER + //For general use /obj/item/clothing/suit/storage/fluff/fedcoat name = "Federation Uniform Jacket (Red)" @@ -2433,6 +2447,39 @@ Departamental Swimsuits, for general use else RemoveHood_evelyn() +//Allweek:Fifi the Magnificent +/obj/item/clothing/head/fluff/fifi_hat + name = "fifi's hat" + desc = "It's a colorful hat for an eccentric entertaining cat." + + icon = 'icons/vore/custom_clothes_vr.dmi' + icon_state = "fifi_hat" + + icon_override = 'icons/vore/custom_clothes_vr.dmi' + item_state = "fifi_hat" + +/obj/item/clothing/under/fluff/fifi_jumpsuit + name = "fifi's jumpsuit" + desc = "It's a colorful outfit for an eccentric entertaining cat." + + icon = 'icons/vore/custom_clothes_vr.dmi' + icon_state = "fifi_jumpsuit" + + icon_override = 'icons/vore/custom_clothes_vr.dmi' + item_state = "fifi_jumpsuit" + +/obj/item/clothing/shoes/fluff/fifi_socks + name = "fifi's socks" + desc = "A pair of colorful socks for an eccentric entertaining cat." + + icon = 'icons/vore/custom_clothes_vr.dmi' + icon_state = "fifi_socks" + + icon_override = 'icons/vore/custom_clothes_vr.dmi' + item_state = "fifi_socks" + + + //Uncle_Fruit_VEVO - Bradley Khatibi /obj/item/clothing/shoes/fluff/airjordans name = "A pair of Air Jordan 1 Mid 'Black Gym Red's" diff --git a/icons/vore/custom_clothes_vr.dmi b/icons/vore/custom_clothes_vr.dmi index cc7b242670..217c90c4b4 100644 Binary files a/icons/vore/custom_clothes_vr.dmi and b/icons/vore/custom_clothes_vr.dmi differ diff --git a/maps/groundbase/gb-z1.dmm b/maps/groundbase/gb-z1.dmm index 2335d3a264..9961fcef26 100644 --- a/maps/groundbase/gb-z1.dmm +++ b/maps/groundbase/gb-z1.dmm @@ -1345,6 +1345,9 @@ outdoors = 0 }, /area/maintenance/groundbase/level1/swtunnel) +"dA" = ( +/turf/simulated/mineral/cave/virgo3c, +/area/maintenance/groundbase/level1/setunnel) "dB" = ( /obj/machinery/light{ dir = 8 @@ -2951,6 +2954,13 @@ }, /turf/simulated/floor/lino, /area/groundbase/civilian/cafe) +"hG" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/turf/simulated/floor/outdoors/sidewalk/slab/virgo3c, +/area/groundbase/level1/eastspur) "hH" = ( /obj/machinery/alarm{ dir = 8 @@ -8149,6 +8159,12 @@ }, /turf/simulated/floor/tiled/dark, /area/groundbase/civilian/bar) +"uh" = ( +/obj/structure/stairs/spawner/south, +/turf/simulated/floor/outdoors/newdirt_nograss/virgo3c{ + outdoors = 0 + }, +/area/maintenance/groundbase/level1/setunnel) "ui" = ( /obj/machinery/light/floortube{ dir = 8; @@ -14572,6 +14588,14 @@ }, /turf/simulated/floor/tiled, /area/groundbase/security/processing) +"JB" = ( +/obj/structure/stairs/spawner/west, +/obj/structure/railing/grey{ + dir = 1 + }, +/obj/structure/railing/grey, +/turf/simulated/floor/outdoors/sidewalk/slab/virgo3c, +/area/groundbase/level1/eastspur) "JC" = ( /turf/simulated/floor/tiled, /area/groundbase/command/tcomms/foyer) @@ -17929,6 +17953,12 @@ }, /turf/simulated/floor/wood, /area/groundbase/civilian/cafe) +"RJ" = ( +/obj/structure/stairs/spawner/north, +/turf/simulated/floor/outdoors/newdirt_nograss/virgo3c{ + outdoors = 0 + }, +/area/maintenance/groundbase/level1/nwtunnel) "RK" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -20769,6 +20799,13 @@ /obj/structure/cable/yellow, /turf/simulated/floor/reinforced, /area/groundbase/engineering/engine) +"YI" = ( +/obj/structure/railing/grey{ + dir = 1 + }, +/obj/structure/railing/grey, +/turf/simulated/floor/outdoors/sidewalk/slab/virgo3c, +/area/groundbase/level1/eastspur) "YJ" = ( /obj/structure/closet{ name = "Evidence Closet" @@ -21751,9 +21788,9 @@ MO MO MO MO -MO -MO -MO +RJ +FF +FF MO MO MO @@ -21893,11 +21930,11 @@ MO MO MO MO -MO -MO -MO -MO -MO +RJ +FF +FF +FF +FF FF FF FF @@ -22037,7 +22074,7 @@ MO MO MO MO -MO +FF FF FF FF @@ -35671,7 +35708,7 @@ Ro MK MK MK -MK +JB qE sm my @@ -35813,7 +35850,7 @@ KT MK MK MK -MK +YI MK MK MK @@ -35953,10 +35990,10 @@ iG MK KT MK -MK -MK -MK Ah +MK +Os +MK Ah MK MK @@ -36095,10 +36132,10 @@ MK MK KT MK +Ah +MK +Os MK -Ah -Ah -Ah Ah Ah Ah @@ -36238,9 +36275,9 @@ eR KT MK Ah -Ah -Ah -Ah +MK +Os +MK Ah Ah Ah @@ -36381,7 +36418,7 @@ KT XX MK MK -MK +Os MK MK MK @@ -36523,7 +36560,7 @@ HG ho ho ho -ho +hG ho ho ho @@ -39823,7 +39860,7 @@ iW iW ce ce -ce +iW Cw jF vu @@ -39965,7 +40002,7 @@ iW ce ce ce -ce +iW iW iW zf @@ -40107,7 +40144,7 @@ iW ce ce ce -ce +iW iW iW zf @@ -40250,8 +40287,8 @@ ce ce ce ce -ce -ce +iW +vj Cw jF jF @@ -40392,13 +40429,13 @@ ce ce ce ce +iW +vj +vj +uh +dA ce ce -iW -iW -iW -iW -iW ce ce ce @@ -40535,11 +40572,11 @@ ce ce ce ce +vj +vj +uh +dA ce -iW -iW -iW -iW ce ce ce @@ -40677,10 +40714,10 @@ ce ce ce ce -ce -ce -ce -ce +dA +dA +dA +dA ce ce ce diff --git a/maps/groundbase/gb-z2.dmm b/maps/groundbase/gb-z2.dmm index 6a67f3c585..0b91d7cd41 100644 --- a/maps/groundbase/gb-z2.dmm +++ b/maps/groundbase/gb-z2.dmm @@ -859,6 +859,9 @@ icon_state = "pipe-c" }, /obj/structure/table/standard, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/simulated/floor/tiled, /area/groundbase/cargo/office) "cs" = ( @@ -1219,7 +1222,7 @@ "dx" = ( /obj/machinery/door/airlock{ id_tag = "toilet1"; - name = "Toilet 1" + name = "Room 9" }, /turf/simulated/floor/tiled/white, /area/groundbase/dorms/bathroom) @@ -1453,10 +1456,14 @@ /turf/simulated/floor/carpet/blucarpet, /area/groundbase/command/captain) "en" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/outdoors/sidewalk/virgo3c, -/area/groundbase/medical/lobby) +/obj/machinery/door/firedoor/glass, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/simulated/floor/plating, +/area/groundbase/cargo/office) "eo" = ( /obj/structure/table/standard, /obj/item/weapon/reagent_containers/dropper, @@ -1962,7 +1969,7 @@ dir = 4 }, /turf/simulated/floor/outdoors/grass/virgo3c, -/area/groundbase/medical/lobby) +/area/groundbase/level2/ne) "fK" = ( /obj/structure/cable/yellow{ icon_state = "1-2" @@ -2108,6 +2115,9 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, /turf/simulated/floor/tiled, /area/groundbase/cargo/office) "gd" = ( @@ -2318,7 +2328,7 @@ "gP" = ( /obj/machinery/button/remote/airlock{ dir = 4; - id = "dorm6"; + id = "dorm4"; pixel_x = -27; specialfunctions = 4 }, @@ -3471,8 +3481,11 @@ /turf/simulated/floor/tiled, /area/groundbase/civilian/janitor) "jY" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/simulated/floor/outdoors/sidewalk/virgo3c, -/area/groundbase/cargo/office) +/area/groundbase/level2/ne) "ka" = ( /obj/structure/sign/directions/stairs_up{ dir = 8; @@ -3876,6 +3889,9 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, /turf/simulated/floor/outdoors/sidewalk/slab/virgo3c, /area/groundbase/level2/ne) "ll" = ( @@ -4936,6 +4952,9 @@ /obj/machinery/light, /turf/simulated/floor/tiled, /area/groundbase/science/xenobot) +"oy" = ( +/turf/simulated/floor/outdoors/sidewalk/slab/virgo3c, +/area/groundbase/level2/se) "oA" = ( /obj/machinery/door/blast/regular{ id = "xenobiodiv3"; @@ -5702,6 +5721,9 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/wood, /area/groundbase/dorms/room6) +"qG" = ( +/turf/simulated/floor/outdoors/sidewalk/side/virgo3c, +/area/groundbase/level2/ne) "qH" = ( /obj/structure/table/woodentable, /obj/random/donkpocketbox, @@ -6035,7 +6057,7 @@ dir = 1 }, /turf/simulated/floor/outdoors/grass/virgo3c, -/area/groundbase/cargo/office) +/area/groundbase/level2/ne) "rF" = ( /obj/machinery/light/small, /turf/simulated/floor/outdoors/grass/virgo3c, @@ -6462,6 +6484,13 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/bmarble, /area/groundbase/cargo/office) +"sQ" = ( +/obj/structure/railing/grey, +/obj/structure/railing/grey{ + dir = 1 + }, +/turf/simulated/floor/outdoors/sidewalk/slab/virgo3c, +/area/groundbase/level2/eastspur) "sS" = ( /obj/structure/grille, /obj/structure/window/reinforced/polarized/full{ @@ -7177,7 +7206,7 @@ "vb" = ( /obj/machinery/light/bigfloorlamp, /turf/simulated/floor/outdoors/grass/virgo3c, -/area/groundbase/medical/Chemistry) +/area/groundbase/level2/ne) "vc" = ( /obj/structure/sign/department/chem, /turf/simulated/wall, @@ -7792,7 +7821,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/outdoors/sidewalk/virgo3c, -/area/groundbase/cargo/office) +/area/groundbase/level2/ne) "wY" = ( /obj/machinery/alarm{ dir = 8 @@ -8535,6 +8564,9 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/simulated/floor/tiled, /area/groundbase/cargo/office) "zg" = ( @@ -9176,11 +9208,6 @@ }, /turf/simulated/wall, /area/groundbase/cargo/office) -"AV" = ( -/turf/simulated/floor/virgo3c{ - edge_blending_priority = -1 - }, -/area/groundbase/level2/westspur) "AX" = ( /obj/structure/table/woodentable, /obj/random/coin/sometimes, @@ -11894,8 +11921,15 @@ /turf/simulated/floor/tiled, /area/groundbase/science/xenobot) "IK" = ( -/turf/simulated/floor/outdoors/grass/virgo3c, -/area/groundbase/medical/lobby) +/obj/effect/floor_decal/industrial/outline/yellow, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/virgo3c{ + edge_blending_priority = -1; + outdoors = 0 + }, +/area/groundbase/cargo/office) "IL" = ( /obj/machinery/transhuman/resleever, /turf/simulated/floor/tiled, @@ -12498,8 +12532,8 @@ /turf/simulated/floor/tiled, /area/groundbase/cargo/office) "Kl" = ( -/turf/simulated/floor/outdoors/grass/virgo3c, -/area/groundbase/cargo/office) +/turf/simulated/open/virgo3c, +/area/groundbase/level2/nw) "Km" = ( /obj/effect/shuttle_landmark{ base_area = /area/groundbase/cargo/bay; @@ -12595,7 +12629,7 @@ dir = 4 }, /turf/simulated/floor/outdoors/sidewalk/side/virgo3c, -/area/groundbase/medical/triage) +/area/groundbase/level2/ne) "KB" = ( /obj/structure/flora/pottedplant/minitree, /turf/simulated/floor/wood, @@ -13426,6 +13460,9 @@ dir = 1 }, /obj/item/weapon/stamp/accepted, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/simulated/floor/tiled, /area/groundbase/cargo/office) "MR" = ( @@ -13444,12 +13481,6 @@ edge_blending_priority = -1 }, /area/groundbase/level2/ne) -"MU" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/simulated/floor/outdoors/grass/virgo3c, -/area/groundbase/medical/Chemistry) "MV" = ( /obj/machinery/alarm{ dir = 8 @@ -13650,7 +13681,7 @@ dir = 8 }, /turf/simulated/floor/outdoors/grass/virgo3c, -/area/groundbase/medical/triage) +/area/groundbase/level2/ne) "Ny" = ( /turf/simulated/floor/tiled/dark, /area/groundbase/civilian/bar/upper) @@ -13999,7 +14030,7 @@ pixel_y = -32 }, /turf/simulated/floor/outdoors/grass/virgo3c, -/area/groundbase/medical/lobby) +/area/groundbase/level2/ne) "Ov" = ( /obj/structure/closet/wardrobe/robotics_black, /turf/simulated/floor/tiled, @@ -14099,7 +14130,7 @@ /turf/simulated/floor/virgo3c{ edge_blending_priority = -1 }, -/area/groundbase/level2/northspur) +/area/groundbase/level2/nw) "OJ" = ( /obj/structure/cable/yellow{ icon_state = "4-8" @@ -14300,6 +14331,9 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 6 }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/simulated/floor/tiled, /area/groundbase/cargo/office) "Pp" = ( @@ -15024,11 +15058,14 @@ /turf/simulated/floor/tiled, /area/groundbase/science/xenobot/storage) "Ro" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 +/obj/structure/cable/yellow{ + icon_state = "1-2" }, -/turf/simulated/floor/outdoors/sidewalk/side/virgo3c, -/area/groundbase/medical/lobby) +/turf/simulated/floor/tiled/virgo3c{ + edge_blending_priority = -1; + outdoors = 0 + }, +/area/groundbase/cargo/office) "Rp" = ( /mob/living/simple_mob/animal/passive/cow, /turf/simulated/floor/outdoors/grass/forest/virgo3c, @@ -15141,6 +15178,9 @@ }, /turf/simulated/floor/outdoors/grass/virgo3c, /area/groundbase/science/rnd) +"RF" = ( +/turf/simulated/open/virgo3c, +/area/groundbase/level2/se) "RG" = ( /obj/machinery/camera/network/civilian{ dir = 8 @@ -16192,8 +16232,14 @@ /turf/simulated/mineral/cave/virgo3c, /area/groundbase/unexplored/rock) "UI" = ( -/turf/simulated/floor/outdoors/grass/virgo3c, -/area/groundbase/medical/Chemistry) +/obj/machinery/power/apc{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/simulated/floor/outdoors/sidewalk/slab/virgo3c, +/area/groundbase/level2/ne) "UK" = ( /obj/structure/table/glass, /obj/item/weapon/storage/box/beakers{ @@ -16397,7 +16443,7 @@ "Vm" = ( /obj/machinery/light/small, /turf/simulated/floor/outdoors/grass/virgo3c, -/area/groundbase/medical/lobby) +/area/groundbase/level2/ne) "Vo" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 6 @@ -16418,8 +16464,14 @@ /turf/simulated/floor/tiled, /area/groundbase/science/hall) "Vs" = ( -/turf/simulated/open/virgo3c, -/area/groundbase/level2/se) +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/simulated/floor/outdoors/sidewalk/side/virgo3c, +/area/groundbase/level2/ne) "Vt" = ( /obj/structure/cable/yellow{ icon_state = "4-8" @@ -17762,6 +17814,9 @@ }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/effect/landmark/start/qm, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/simulated/floor/tiled, /area/groundbase/cargo/office) "Zz" = ( @@ -17798,8 +17853,14 @@ /turf/simulated/floor/wood, /area/groundbase/cargo/qm) "ZE" = ( -/turf/simulated/floor/outdoors/newdirt/virgo3c, -/area/groundbase/cargo/office) +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/turf/simulated/floor/outdoors/sidewalk/side/virgo3c, +/area/groundbase/level2/ne) "ZF" = ( /obj/structure/table/glass, /obj/item/weapon/storage/box/gloves{ @@ -18121,12 +18182,12 @@ UH UH UH UH -UH -UH -UH -UH -UH -UH +xE +xE +xE +xE +xE +xE xE xE xE @@ -18263,12 +18324,12 @@ UH UH UH UH -UH -UH -UH -UH -UH -UH +xE +xE +xE +xE +xE +xE xE xE xE @@ -18404,13 +18465,13 @@ UH UH UH UH -UH -UH -UH -UH -UH -UH wS +Hn +Kl +Kl +xE +xE +KW xE xE xE @@ -18545,14 +18606,14 @@ UH UH UH UH -UH -UH -UH -UH wS wS -wS -Fw +Hn +Kl +Kl +xE +KW +Fs Fs pw bY @@ -18687,14 +18748,14 @@ UH UH UH UH -UH wS wS wS wS wS -wS -Fw +xE +Fs +Fs Fs pw bY @@ -18834,9 +18895,9 @@ wS wS UH wS -UH -UH -Fw +xE +Fs +Fs Fs pw bY @@ -18975,11 +19036,11 @@ wS wS wS wS -wS -UH -UH Fw Fs +Fs +Fs +Fs xE bY bY @@ -19116,11 +19177,11 @@ wS wS wS wS -wS -UH -UH -UH -wS +Fw +Fw +Fs +Fs +KW KW xE bY @@ -19260,9 +19321,9 @@ wS wS wS wS -UH -UH -UH +Fs +xE +xE xE xE bY @@ -25544,12 +25605,12 @@ In bY bY bY -AV -AV -AV -AV -AV -AV +OI +OI +OI +OI +OI +OI eN eN eN @@ -25688,10 +25749,10 @@ bY bY bY bY -AV -AV -AV -AV +OI +OI +OI +OI eN eN eN @@ -25830,10 +25891,10 @@ bY bY bY bY -AV -AV -AV -AV +OI +OI +OI +OI eN eN eN @@ -25972,10 +26033,10 @@ bY bY bY bY -AV -AV -AV -AV +OI +OI +OI +OI eN eN eN @@ -26113,11 +26174,11 @@ bY bY bY bY -AV -AV -AV -AV -AV +OI +OI +OI +OI +OI eN eN eN @@ -26254,12 +26315,12 @@ In bY bY bY -AV -AV -AV -AV -AV -AV +OI +OI +OI +OI +OI +OI eN eN eN @@ -28223,16 +28284,16 @@ VR VR VR to -OI -OI +fp +fp to to to VR -QD -QD -QD -QD +fp +fp +fp +fp VR oH oH @@ -28370,12 +28431,12 @@ to to to to -QD -QD -QD -QD -QD -QD +fp +fp +fp +fp +fp +fp oH oH oH @@ -28512,12 +28573,12 @@ iw iw to to -QD -QD -QD -QD -QD -QD +fp +fp +fp +fp +fp +fp oH oH oH @@ -28632,7 +28693,7 @@ Qi PJ nP YZ -Kl +to Aw XJ to @@ -28656,10 +28717,10 @@ iw to to to -QD -QD -QD -QD +fp +fp +fp +fp oH oH oH @@ -28774,14 +28835,14 @@ sP sI Zh nP -ZE +XJ Aw to to Ou -IK -IK -Ro +to +to +NC fJ to to @@ -28799,9 +28860,9 @@ to to to to -QD -QD -QD +fp +fp +fp oH oH oH @@ -28920,7 +28981,7 @@ wX Sp to to -IK +to Du mv ci @@ -28941,9 +29002,9 @@ to to to to -QD -QD -QD +fp +fp +fp oH oH oH @@ -29058,11 +29119,11 @@ mq uq nP nP -Kl +to iD XJ to -IK +to mv We tw @@ -29084,8 +29145,8 @@ to to to to -QD -QD +fp +fp oH oH oH @@ -29196,15 +29257,15 @@ cr Po Zy MQ -mq -uq -nP -nP +en +IK +Ro +Ro jY lk gZ gZ -en +gZ Ft mT lr @@ -29226,8 +29287,8 @@ to to to to -QD -QD +fp +fp oH oH oH @@ -29342,8 +29403,8 @@ UL gn nP nP -ZE -NC +XJ +Vs to to Vm @@ -29368,8 +29429,8 @@ to to to to -QD -QD +fp +fp oH oH oH @@ -29484,8 +29545,8 @@ dH Jt gI Lz -Kl -NC +to +Vs to to to @@ -29509,9 +29570,9 @@ to to to to -QD -QD -QD +fp +fp +fp oH oH oH @@ -29627,7 +29688,7 @@ oa oa Wj rE -NC +Vs to to to @@ -29649,11 +29710,11 @@ yG yL to to -QD -QD -QD -QD -QD +fp +fp +fp +fp +fp oH oH oH @@ -29767,9 +29828,9 @@ dv Wj to to -to -to -NC +UI +jY +ZE to to to @@ -29792,9 +29853,9 @@ yL to to to -QD -QD -QD +fp +fp +fp oH oH oH @@ -30220,7 +30281,7 @@ to to to to -QD +fp oH oH oH @@ -30362,7 +30423,7 @@ to to to to -QD +fp oH oH oH @@ -30504,7 +30565,7 @@ to to to to -QD +fp oH oH oH @@ -30646,7 +30707,7 @@ to to to to -QD +fp oH oH oH @@ -30788,7 +30849,7 @@ to iw to to -QD +fp oH oH oH @@ -30929,8 +30990,8 @@ to iw to to -QD -QD +fp +fp oH oH oH @@ -31071,8 +31132,8 @@ to iw to to -QD -QD +fp +fp oH oH oH @@ -31213,8 +31274,8 @@ to iw to to -QD -QD +fp +fp oH oH oH @@ -31355,8 +31416,8 @@ to iw iw to -QD -QD +fp +fp oH oH oH @@ -31618,7 +31679,7 @@ to NC to to -UI +to sW Mi Xc @@ -31760,7 +31821,7 @@ to NC to vb -UI +to sW sW ki @@ -31902,9 +31963,9 @@ to NC XJ to -UI -MU -UI +to +Nw +to to to to @@ -32183,7 +32244,7 @@ vk zt to vb -to +qG to to to @@ -32325,7 +32386,7 @@ to oH oH oH -oH +sQ to to to @@ -36036,7 +36097,7 @@ Bo At Bo Bo -Bo +UE UE UE Bo @@ -36178,10 +36239,10 @@ Bo At tA Bo +Bo +UE UE UE -Bo -Bo Bo Bu KG @@ -36319,12 +36380,12 @@ oH Bo At gC -UE -UE -UE Bo Bo Bo +UE +UE +Bo Bu KG cG @@ -36461,11 +36522,11 @@ oH Bo Bo sr -UE -UE -UE Bo Bo +UE +UE +Bo Bo pe nT @@ -36604,7 +36665,7 @@ Bo Bo Bo Bo -UE +Bo UE Bo Bo @@ -36745,7 +36806,7 @@ Bo Bo Bo Bo -Bo +UE Bo Bo Bo @@ -36764,10 +36825,10 @@ cG Zc pe fk -UH +fk UH wS -UH +wS UH UH wS @@ -36906,11 +36967,11 @@ Ju Vz pe fk -UH +fk +tN +tN wS wS -UH -UH wS wS wS @@ -37025,7 +37086,7 @@ oH oH oH oH -Vs +oH fk fk fk @@ -37047,13 +37108,13 @@ pe Vj LJ pe -fk -UH +RF +RF +oy +tN wS wS wS -UH -wS wS wS wS @@ -37189,10 +37250,10 @@ pe pe pe pe -fk -UH -wS -wS +RF +RF +oy +tN wS wS wS @@ -37332,9 +37393,9 @@ fk fk fk fk -UH -wS -wS +fk +tN +tN wS wS wS @@ -37474,10 +37535,10 @@ fk fk fk fk -UH -UH -wS -wS +fk +fk +tN +tN wS UH UH @@ -37616,10 +37677,10 @@ fk fk fk fk -UH -UH -UH -UH +fk +fk +fk +fk UH UH UH diff --git a/maps/groundbase/gb-z3.dmm b/maps/groundbase/gb-z3.dmm index ca76c1335f..f8b3d9e6fa 100644 --- a/maps/groundbase/gb-z3.dmm +++ b/maps/groundbase/gb-z3.dmm @@ -455,6 +455,9 @@ }, /turf/simulated/floor, /area/groundbase/medical/patient4) +"ip" = ( +/turf/simulated/floor/carpet/retro, +/area/groundbase/dorms/bathroom) "it" = ( /obj/structure/grille, /obj/structure/window/reinforced/full, @@ -547,6 +550,10 @@ }, /turf/simulated/floor/tiled/steel_ridged, /area/groundbase/medical/cmo) +"jP" = ( +/obj/structure/bed/chair/sofa/corp/right, +/turf/simulated/floor/carpet/retro, +/area/groundbase/dorms/bathroom) "jX" = ( /obj/structure/grille, /obj/machinery/door/firedoor, @@ -628,6 +635,23 @@ }, /turf/simulated/floor/tiled/white, /area/groundbase/medical/patient4) +"lD" = ( +/obj/machinery/door/window/southleft{ + dir = 1; + name = "shower door"; + req_access = null + }, +/obj/machinery/light/small{ + dir = 8 + }, +/obj/effect/floor_decal/steeldecal/steel_decals10{ + dir = 10 + }, +/obj/effect/floor_decal/steeldecal/steel_decals10{ + dir = 9 + }, +/turf/simulated/floor/tiled/white, +/area/groundbase/dorms/bathroom) "lF" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/tiled/white, @@ -1130,6 +1154,12 @@ }, /turf/simulated/floor/tiled, /area/shuttle/groundbase/exploration) +"uv" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/turf/simulated/floor/tiled/white, +/area/groundbase/dorms/bathroom) "uF" = ( /obj/structure/cable/yellow{ icon_state = "1-2" @@ -1193,6 +1223,11 @@ edge_blending_priority = -1 }, /area/groundbase/exploration/shuttlepad) +"vD" = ( +/obj/machinery/alarm, +/obj/structure/bed/chair/sofa/corp/left, +/turf/simulated/floor/carpet/retro, +/area/groundbase/dorms/bathroom) "vV" = ( /obj/structure/bed/chair/shuttle{ dir = 8 @@ -1473,6 +1508,12 @@ }, /turf/simulated/floor/tiled, /area/shuttle/groundbase/exploration) +"Al" = ( +/obj/machinery/light, +/obj/structure/table/woodentable, +/obj/random/donkpocketbox, +/turf/simulated/floor/carpet/retro, +/area/groundbase/dorms/bathroom) "As" = ( /obj/structure/grille, /obj/machinery/door/firedoor, @@ -1481,6 +1522,13 @@ }, /turf/simulated/floor, /area/groundbase/medical/patient2) +"AY" = ( +/obj/structure/bed/double/padded, +/obj/item/weapon/bedsheet/cosmosdouble{ + icon_state = "dobulesheetcosmos" + }, +/turf/simulated/floor/wood, +/area/groundbase/dorms/bathroom) "Bd" = ( /obj/effect/floor_decal/industrial/warning{ dir = 1 @@ -1543,6 +1591,13 @@ "BH" = ( /turf/simulated/wall, /area/groundbase/medical/patient3) +"Ck" = ( +/obj/structure/table/woodentable, +/obj/machinery/computer/security/telescreen/entertainment{ + pixel_y = -32 + }, +/turf/simulated/floor/carpet/retro, +/area/groundbase/dorms/bathroom) "Cv" = ( /obj/structure/bed/padded, /obj/item/weapon/bedsheet/medical, @@ -1565,12 +1620,27 @@ }, /turf/simulated/floor/tiled, /area/groundbase/exploration/equipment) +"De" = ( +/obj/structure/curtain/open/shower, +/obj/machinery/shower{ + pixel_y = 16 + }, +/turf/simulated/floor/tiled{ + icon_state = "techmaint" + }, +/area/groundbase/dorms/bathroom) "Dm" = ( /obj/structure/bed/chair/shuttle{ dir = 1 }, /turf/simulated/floor/tiled, /area/shuttle/groundbase/exploration) +"Dw" = ( +/obj/machinery/firealarm{ + dir = 4 + }, +/turf/simulated/floor/wood, +/area/groundbase/dorms/bathroom) "Dy" = ( /obj/effect/floor_decal/industrial/warning{ dir = 4 @@ -1757,6 +1827,9 @@ }, /turf/simulated/floor/tiled/steel_ridged, /area/groundbase/medical/patient2) +"Fh" = ( +/turf/simulated/floor/wood, +/area/groundbase/dorms/bathroom) "Fx" = ( /obj/structure/cable/yellow{ icon_state = "4-8" @@ -2063,6 +2136,13 @@ "JL" = ( /turf/unsimulated/wall/planetary/virgo3c, /area/groundbase/level3/se) +"JU" = ( +/obj/machinery/door/airlock{ + id_tag = null; + name = "Bathroom" + }, +/turf/simulated/floor/tiled/steel_ridged, +/area/groundbase/dorms/bathroom) "JW" = ( /obj/structure/table/glass, /obj/machinery/computer/med_data/laptop{ @@ -2214,6 +2294,22 @@ }, /turf/simulated/floor/tiled/white, /area/groundbase/medical/paramedic) +"NT" = ( +/obj/machinery/alarm{ + dir = 8 + }, +/obj/machinery/door/window/southright{ + dir = 1; + name = "shower door" + }, +/obj/effect/floor_decal/steeldecal/steel_decals10{ + dir = 10 + }, +/obj/effect/floor_decal/steeldecal/steel_decals10{ + dir = 9 + }, +/turf/simulated/floor/tiled/white, +/area/groundbase/dorms/bathroom) "NX" = ( /obj/structure/table/rack/shelf, /obj/item/weapon/tank/oxygen, @@ -2290,6 +2386,10 @@ }, /turf/simulated/floor/outdoors/sidewalk/slab/virgo3c, /area/groundbase/level3/nw) +"OT" = ( +/obj/structure/lattice, +/turf/simulated/open/virgo3c, +/area/groundbase/dorms/bathroom) "Pd" = ( /obj/item/device/radio/intercom{ pixel_y = -24 @@ -2331,6 +2431,16 @@ "Px" = ( /turf/simulated/open, /area/groundbase/cargo/office) +"PC" = ( +/obj/structure/bed/chair/sofa/corp, +/turf/simulated/floor/carpet/retro, +/area/groundbase/dorms/bathroom) +"PG" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/simulated/floor/wood, +/area/groundbase/dorms/bathroom) "PH" = ( /turf/simulated/wall/rshull, /area/shuttle/groundbase/exploration) @@ -2343,6 +2453,18 @@ }, /turf/simulated/floor/tiled/white, /area/groundbase/medical/patient3) +"PO" = ( +/obj/structure/mirror{ + dir = 4; + pixel_x = -23 + }, +/obj/structure/sink{ + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/turf/simulated/floor/tiled/white, +/area/groundbase/dorms/bathroom) "PQ" = ( /obj/machinery/camera/network/medbay{ dir = 8 @@ -2457,6 +2579,9 @@ outdoors = 0 }, /area/groundbase/level3/escapepad) +"Rq" = ( +/turf/simulated/wall/r_wall, +/area/groundbase/dorms/bathroom) "RM" = ( /obj/machinery/photocopier/faxmachine{ department = "Exploration" @@ -2608,6 +2733,11 @@ /obj/effect/map_helper/airlock/door/simple, /turf/simulated/floor/tiled/steel_ridged, /area/shuttle/groundbase/exploration) +"TU" = ( +/obj/structure/table/woodentable, +/obj/machinery/microwave, +/turf/simulated/floor/carpet/retro, +/area/groundbase/dorms/bathroom) "TV" = ( /obj/structure/cable/yellow{ icon_state = "4-8" @@ -2805,6 +2935,9 @@ /obj/machinery/computer/ship/helm, /turf/simulated/floor/tiled, /area/shuttle/groundbase/exploration) +"Yn" = ( +/turf/simulated/floor/tiled/white, +/area/groundbase/dorms/bathroom) "Yy" = ( /obj/structure/table/rack, /obj/item/clothing/shoes/magboots, @@ -2813,6 +2946,12 @@ /obj/item/clothing/head/helmet/space/void/medical/emt, /turf/simulated/floor/tiled/white, /area/groundbase/medical/paramedic) +"Yz" = ( +/obj/structure/toilet{ + dir = 8 + }, +/turf/simulated/floor/tiled/white, +/area/groundbase/dorms/bathroom) "YJ" = ( /obj/structure/cable/yellow{ icon_state = "2-8" @@ -8325,12 +8464,12 @@ Bg "} (39,1,1) = {" mr -jv -jv -jv -jv -jv -jv +Rq +Rq +Rq +Rq +Rq +Rq jv jv jv @@ -8467,12 +8606,12 @@ Bg "} (40,1,1) = {" mr -jv -jv -jv -jv -jv -jv +Rq +De +lD +PO +uv +Rq jv jv jv @@ -8609,12 +8748,12 @@ Bg "} (41,1,1) = {" mr -jv -jv -jv -jv -jv -jv +Rq +De +NT +Yn +Yz +Rq jv jv jv @@ -8751,12 +8890,12 @@ Bg "} (42,1,1) = {" mr -jv -jv -jv -jv -jv -jv +Rq +Rq +Rq +JU +Rq +Rq jv jv jv @@ -8893,12 +9032,12 @@ Bg "} (43,1,1) = {" mr -jv -jv -jv -jv -jv -jv +Rq +jP +ip +ip +TU +Rq jv jv jv @@ -9035,12 +9174,12 @@ Bg "} (44,1,1) = {" mr -jv -jv -jv -jv -jv -jv +Rq +PC +ip +ip +Al +Rq jv jv jv @@ -9177,12 +9316,12 @@ Bg "} (45,1,1) = {" mr -jv -jv -jv -jv -jv -jv +Rq +vD +ip +ip +Ck +Rq jv jv jv @@ -9319,12 +9458,12 @@ Bg "} (46,1,1) = {" mr -jv -jv -jv -jv -jv -jv +Rq +Fh +Fh +Fh +Rq +Rq jv jv jv @@ -9461,11 +9600,11 @@ Bg "} (47,1,1) = {" mr -jv -jv -jv -jv -jv +Rq +PG +Fh +AY +Rq jv jv jv @@ -9603,11 +9742,11 @@ Bg "} (48,1,1) = {" mr -jv -jv -jv -jv -jv +Rq +Fh +Fh +Dw +Rq jv jv Zo @@ -9745,11 +9884,11 @@ Bg "} (49,1,1) = {" mr -jv -jv -jv -jv -jv +Rq +OT +Rq +Rq +Rq jv jv Zo @@ -9887,9 +10026,9 @@ Bg "} (50,1,1) = {" mr -jv -jv -jv +Rq +Rq +Rq jv jv jv diff --git a/vorestation.dme b/vorestation.dme index 139c0ed46c..0d58d6414b 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -1950,7 +1950,6 @@ #include "code\modules\client\preference_setup\loadout\loadout_eyes.dm" #include "code\modules\client\preference_setup\loadout\loadout_eyes_vr.dm" #include "code\modules\client\preference_setup\loadout\loadout_eyes_yw.dm" -#include "code\modules\client\preference_setup\loadout\loadout_fluffitems_vr.dm" #include "code\modules\client\preference_setup\loadout\loadout_fluffitems_yw.dm" #include "code\modules\client\preference_setup\loadout\loadout_general.dm" #include "code\modules\client\preference_setup\loadout\loadout_general_vr.dm"