diff --git a/code/__defines/species_languages_vr.dm b/code/__defines/species_languages_vr.dm index 8c5c505f82..224478646d 100644 --- a/code/__defines/species_languages_vr.dm +++ b/code/__defines/species_languages_vr.dm @@ -4,6 +4,7 @@ #define LANGUAGE_ECUREUILIAN "Ecureuilian" #define LANGUAGE_DAEMON "Daemon" #define LANGUAGE_ENOCHIAN "Enochian" +#define LANGUAGE_VESPINAE "Vespinae" #define LANGUAGE_CHIMPANZEE "Chimpanzee" #define LANGUAGE_NEAERA "Neaera" diff --git a/code/_helpers/global_lists_vr.dm b/code/_helpers/global_lists_vr.dm index fa755e6eeb..09911f4761 100644 --- a/code/_helpers/global_lists_vr.dm +++ b/code/_helpers/global_lists_vr.dm @@ -28,24 +28,17 @@ var/global/list/vantag_choices_list = list( VANTAG_KIDNAP = "Be Kidnapped", VANTAG_KILL = "Be Killed") -/* Time to finally undo this. Replaced with digest_act on these items. -//Important items that are preserved when people are digested, etc. -//On Polaris, different from Cryo list as MMIs need to be removed for FBPs to be logged out. -var/global/list/important_items = list( +//Blacklist to exclude items from object ingestion. Digestion blacklist located in digest_act_vr.dm +var/global/list/item_vore_blacklist = list( /obj/item/weapon/hand_tele, /obj/item/weapon/card/id/gold/captain/spare, - /obj/item/device/aicard, - /obj/item/device/mmi/digital/posibrain, - /obj/item/device/paicard, /obj/item/weapon/gun, /obj/item/weapon/pinpointer, /obj/item/clothing/shoes/magboots, /obj/item/blueprints, /obj/item/clothing/head/helmet/space, /obj/item/weapon/disk/nuclear, - /obj/item/clothing/suit/storage/hooded/wintercoat/roiz, - /obj/item/device/perfect_tele_beacon) -*/ + /obj/item/clothing/suit/storage/hooded/wintercoat/roiz) var/global/list/digestion_sounds = list( 'sound/vore/digest1.ogg', diff --git a/code/controllers/Processes/scheduler.dm b/code/controllers/Processes/scheduler.dm index c852264bb7..c68ef116b6 100644 --- a/code/controllers/Processes/scheduler.dm +++ b/code/controllers/Processes/scheduler.dm @@ -137,6 +137,7 @@ var/datum/callback/callback /datum/scheduled_task/callback/New(var/trigger_time, var/datum/callback, var/proc/task_after_process, var/list/task_after_process_args) + src.callback = callback ..(trigger_time = trigger_time, task_after_process = task_after_process, task_after_process_args = task_after_process_args) /datum/scheduled_task/callback/process() diff --git a/code/datums/autolathe/tools_vr.dm b/code/datums/autolathe/tools_vr.dm new file mode 100644 index 0000000000..c89d768f0b --- /dev/null +++ b/code/datums/autolathe/tools_vr.dm @@ -0,0 +1,3 @@ +/datum/category_item/autolathe/tools/prybar + name = "prybar" + path =/obj/item/weapon/tool/prybar diff --git a/code/datums/supplypacks/hospitality_vr.dm b/code/datums/supplypacks/hospitality_vr.dm index 642032d46f..95a921f817 100644 --- a/code/datums/supplypacks/hospitality_vr.dm +++ b/code/datums/supplypacks/hospitality_vr.dm @@ -81,4 +81,4 @@ containername = "Chinese takeout crate" /datum/supply_pack/randomised/hospitality/pizza - cost = 50 \ No newline at end of file + cost = 25 diff --git a/code/datums/underwear/socks.dm b/code/datums/underwear/socks.dm index fc1c96ce53..e1fe7e07f2 100644 --- a/code/datums/underwear/socks.dm +++ b/code/datums/underwear/socks.dm @@ -56,4 +56,8 @@ /datum/category_item/underwear/socks/fishnet name = "Fishnet" - icon_state = "fishnet" \ No newline at end of file + icon_state = "fishnet" + +/datum/category_item/underwear/socks/leggings + name = "Leggings" + icon_state = "leggings" \ No newline at end of file diff --git a/code/datums/underwear/top.dm b/code/datums/underwear/top.dm index 72ac72c232..28a17c3ab7 100644 --- a/code/datums/underwear/top.dm +++ b/code/datums/underwear/top.dm @@ -62,4 +62,12 @@ /datum/category_item/underwear/top/striped_bra name = "Striped Bra" icon_state = "striped_bra" - has_color = TRUE \ No newline at end of file + has_color = TRUE + +/datum/category_item/underwear/top/binder + name = "Binder" + icon_state = "binder_s" + +/datum/category_item/underwear/top/straplessbinder + name = "Binder Strapless" + icon_state = "straplessbinder_s" \ No newline at end of file diff --git a/code/datums/underwear/undershirts.dm b/code/datums/underwear/undershirts.dm index 1bbbae7fb5..1f91d1222c 100644 --- a/code/datums/underwear/undershirts.dm +++ b/code/datums/underwear/undershirts.dm @@ -165,4 +165,16 @@ /datum/category_item/underwear/undershirt/tiedye name = "Tiedye Shirt" - icon_state = "tiedye" \ No newline at end of file + icon_state = "tiedye" + +/datum/category_item/underwear/undershirt/longstripe_pink + name = "Longsleeve Striped Shirt, Pink" + icon_state = "longstripe_pink_s" + +/datum/category_item/underwear/undershirt/wingshirt + name = "Pink Wing Shirt" + icon_state = "wing_shirt_s" + +/datum/category_item/underwear/undershirt/pinkblack_tshirt + name = "Pink and Black T-Shirt" + icon_state = "pinkblack_tshirt" \ No newline at end of file diff --git a/code/game/jobs/access_datum_vr.dm b/code/game/jobs/access_datum_vr.dm new file mode 100644 index 0000000000..872db2ae73 --- /dev/null +++ b/code/game/jobs/access_datum_vr.dm @@ -0,0 +1,12 @@ +//Moved from southern_cross_jobs.vr to fix a runtime +var/const/access_explorer = 43 +/datum/access/explorer + id = access_explorer + desc = "Explorer" + region = ACCESS_REGION_GENERAL + +var/const/access_pilot = 67 +/datum/access/pilot + id = access_pilot + desc = "Pilot" + region = ACCESS_REGION_SUPPLY diff --git a/code/game/jobs/job/security.dm b/code/game/jobs/job/security.dm index d9623d06e8..0316f824c8 100644 --- a/code/game/jobs/job/security.dm +++ b/code/game/jobs/job/security.dm @@ -18,7 +18,7 @@ access_heads, access_hos, access_RC_announce, access_keycard_auth, access_gateway, access_external_airlocks)//VOREStation Edit minimal_access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory, access_forensics_lockers, access_morgue, access_maint_tunnels, access_all_personal_lockers, - access_research, access_engine, access_mining, access_medical, access_construction, access_mailsorting, + access_research, access_engine, access_mining, access_construction, access_mailsorting, access_heads, access_hos, access_RC_announce, access_keycard_auth, access_gateway, access_external_airlocks)//VOREStation Edit minimum_character_age = 25 minimal_player_age = 14 diff --git a/code/game/jobs/jobs.dm b/code/game/jobs/jobs.dm index 395b46e934..cd698067f5 100644 --- a/code/game/jobs/jobs.dm +++ b/code/game/jobs/jobs.dm @@ -73,7 +73,7 @@ var/list/medical_positions = list( "Geneticist", "Psychiatrist", "Chemist", - "Search and Rescue", // VOREStation Edit - Moved SAR from planetary -> medical + "Field Medic", // VOREStation Edit - Moved SAR from planetary -> medical "Paramedic" ) diff --git a/code/game/machinery/cryopod.dm b/code/game/machinery/cryopod.dm index fd1dbf529d..389901c273 100644 --- a/code/game/machinery/cryopod.dm +++ b/code/game/machinery/cryopod.dm @@ -391,6 +391,13 @@ var/obj/belly/B = belly for(var/mob/living/sub_L in B) despawn_occupant(sub_L) + for(var/obj/item/W in B) + W.forceMove(src) + if(W.contents.len) + for(var/obj/item/O in W.contents) + if(istype(O,/obj/item/weapon/storage/internal)) + continue + O.forceMove(src) if(ishuman(to_despawn)) var/mob/living/carbon/human/H = to_despawn if(H.nif) diff --git a/code/game/machinery/spaceheater.dm b/code/game/machinery/spaceheater.dm index 4c447e91f3..fa808ea051 100644 --- a/code/game/machinery/spaceheater.dm +++ b/code/game/machinery/spaceheater.dm @@ -132,7 +132,7 @@ if("cellremove") if(panel_open && cell && !usr.get_active_hand()) - usr.visible_message("\The usr] removes \the [cell] from \the [src].", "You remove \the [cell] from \the [src].") + usr.visible_message("\The [usr] removes \the [cell] from \the [src].", "You remove \the [cell] from \the [src].") cell.update_icon() usr.put_in_hands(cell) cell.add_fingerprint(usr) diff --git a/code/game/machinery/washing_machine.dm b/code/game/machinery/washing_machine.dm index 672b0a2c4e..480e613c27 100644 --- a/code/game/machinery/washing_machine.dm +++ b/code/game/machinery/washing_machine.dm @@ -50,6 +50,7 @@ else state = 5 update_icon() + playsound(src, 'sound/items/washingmachine.ogg', 50, 1, 1) sleep(200) for(var/atom/A in washing) A.clean_blood() diff --git a/code/game/mecha/combat/durand.dm b/code/game/mecha/combat/durand.dm index 7b9eb67691..ab46a48fbc 100644 --- a/code/game/mecha/combat/durand.dm +++ b/code/game/mecha/combat/durand.dm @@ -48,6 +48,7 @@ set popup_menu = 0 if(usr!=src.occupant) return + playsound(src, 'sound/mecha/duranddefencemode.ogg', 50, 1) defence = !defence if(defence) deflect_chance = defence_deflect diff --git a/code/game/mecha/combat/gygax.dm b/code/game/mecha/combat/gygax.dm index 591351032b..978bbdeda8 100644 --- a/code/game/mecha/combat/gygax.dm +++ b/code/game/mecha/combat/gygax.dm @@ -37,6 +37,7 @@ wreckage = /obj/effect/decal/mecha_wreckage/gygax/dark max_equip = 4 step_energy_drain = 5 + mech_faction = MECH_FACTION_SYNDI max_hull_equip = 1 max_weapon_equip = 2 @@ -84,6 +85,7 @@ step_energy_drain = step_energy_drain*overload_coeff src.occupant_message("You enable leg actuators overload.") src.log_message("Toggled leg actuators overload.") + playsound(src, 'sound/mecha/mechanical_toggle.ogg', 50, 1) return /obj/mecha/combat/gygax/dyndomove(direction) diff --git a/code/game/mecha/combat/marauder.dm b/code/game/mecha/combat/marauder.dm index 3236600309..27bdf905a9 100644 --- a/code/game/mecha/combat/marauder.dm +++ b/code/game/mecha/combat/marauder.dm @@ -22,6 +22,7 @@ internal_damage_threshold = 25 force = 45 max_equip = 4 + mech_faction = MECH_FACTION_NT max_hull_equip = 3 max_weapon_equip = 3 @@ -42,6 +43,7 @@ force = 55 max_equip = 5 + /obj/mecha/combat/marauder/mauler desc = "Heavy-duty, combat exosuit, developed off of the existing Marauder model." name = "Mauler" @@ -49,6 +51,7 @@ initial_icon = "mauler" operation_req_access = list(access_syndicate) wreckage = /obj/effect/decal/mecha_wreckage/mauler + mech_faction = MECH_FACTION_SYNDI /obj/mecha/combat/marauder/New() ..() diff --git a/code/game/mecha/equipment/mecha_equipment.dm b/code/game/mecha/equipment/mecha_equipment.dm index fec8c18e1d..825dfde5f5 100644 --- a/code/game/mecha/equipment/mecha_equipment.dm +++ b/code/game/mecha/equipment/mecha_equipment.dm @@ -20,10 +20,13 @@ var/required_type = /obj/mecha //may be either a type or a list of allowed types var/equip_type = null //mechaequip2 var/allow_duplicate = FALSE + var/ready_sound = 'sound/mecha/mech_reload_default.ogg' //Sound to play once the fire delay passed. /obj/item/mecha_parts/mecha_equipment/proc/do_after_cooldown(target=1) sleep(equip_cooldown) set_ready_state(1) + if(ready_sound) //Kind of like the kinetic accelerator. + playsound(loc, ready_sound, 50, 1, -1) if(target && chassis) return 1 return 0 @@ -69,10 +72,22 @@ src.update_chassis_page() chassis.occupant_message("The [src] is destroyed!") chassis.log_append_to_last("[src] is destroyed.",1) - if(istype(src, /obj/item/mecha_parts/mecha_equipment/weapon)) - chassis.occupant << sound('sound/mecha/weapdestr.ogg',volume=50) - else - chassis.occupant << sound('sound/mecha/critdestr.ogg',volume=50) + if(istype(src, /obj/item/mecha_parts/mecha_equipment/weapon))//Gun + switch(chassis.mech_faction) + if(MECH_FACTION_NT) + src.chassis.occupant << sound('sound/mecha/weapdestrnano.ogg',volume=70) + if(MECH_FACTION_SYNDI) + src.chassis.occupant << sound('sound/mecha/weapdestrsyndi.ogg',volume=60) + else + src.chassis.occupant << sound('sound/mecha/weapdestr.ogg',volume=50) + else //Not a gun + switch(chassis.mech_faction) + if(MECH_FACTION_NT) + src.chassis.occupant << sound('sound/mecha/critdestrnano.ogg',volume=70) + if(MECH_FACTION_SYNDI) + src.chassis.occupant << sound('sound/mecha/critdestrsyndi.ogg',volume=70) + else + src.chassis.occupant << sound('sound/mecha/critdestr.ogg',volume=50) spawn qdel(src) return diff --git a/code/game/mecha/equipment/tools/tools.dm b/code/game/mecha/equipment/tools/tools.dm index 263bd93d7e..8dcadc42b6 100644 --- a/code/game/mecha/equipment/tools/tools.dm +++ b/code/game/mecha/equipment/tools/tools.dm @@ -128,7 +128,7 @@ desc = "This is an upgraded version of the drill that'll pierce the heavens! (Can be attached to: Combat and Engineering Exosuits)" icon_state = "mecha_diamond_drill" origin_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 3) - equip_cooldown = 20 + equip_cooldown = 10 force = 15 /obj/item/mecha_parts/mecha_equipment/tool/drill/diamonddrill/action(atom/target) diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index edb275a2fa..2605e7e0eb 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -7,6 +7,11 @@ #define MELEE 1 #define RANGED 2 + +#define MECH_FACTION_NT "nano" +#define MECH_FACTION_SYNDI "syndi" +#define MECH_FACTION_NONE "none" + /obj/mecha name = "Mecha" desc = "Exosuit" @@ -41,6 +46,10 @@ var/lights_power = 6 var/force = 0 + var/mech_faction = null + var/firstactivation = 0 //It's simple. If it's 0, no one entered it yet. Otherwise someone entered it at least once. + + //inner atmos var/use_internal_tank = 0 var/internal_tank_valve = ONE_ATMOSPHERE @@ -500,7 +509,7 @@ internal_damage |= int_dam_flag pr_internal_damage.start() log_append_to_last("Internal damage of type [int_dam_flag].",1) - occupant << sound('sound/machines/warning-buzzer.ogg',wait=0) + occupant << sound('sound/mecha/internaldmgalarm.ogg',volume=50) //Better sounding. return /obj/mecha/proc/clearInternalDamage(int_dam_flag) @@ -1008,6 +1017,7 @@ if(network && !(internal_tank.return_air() in network.gases)) network.gases += internal_tank.return_air() network.update = 1 + playsound(src, 'sound/mecha/gasconnected.ogg', 50, 1) log_message("Connected to gas port.") return 1 @@ -1021,6 +1031,7 @@ connected_port.connected_device = null connected_port = null + playsound(src, 'sound/mecha/gasdisconnected.ogg', 50, 1) src.log_message("Disconnected from gas port.") return 1 @@ -1078,6 +1089,7 @@ else set_light(light_range - lights_power) src.occupant_message("Toggled lights [lights?"on":"off"].") log_message("Toggled lights [lights?"on":"off"].") + playsound(src, 'sound/mecha/heavylightswitch.ogg', 50, 1) return @@ -1178,8 +1190,22 @@ src.icon_state = src.reset_icon() set_dir(dir_in) playsound(src, 'sound/machines/windowdoor.ogg', 50, 1) - if(!hasInternalDamage()) - src.occupant << sound('sound/mecha/nominal.ogg',volume=50) + if(!hasInternalDamage()) //Otherwise it's not nominal! + switch(mech_faction) + if(MECH_FACTION_NT)//The good guys category + if(firstactivation)//First time = long activation sound + firstactivation = 1 + src.occupant << sound('sound/mecha/LongNanoActivation.ogg',volume=50) + else + src.occupant << sound('sound/mecha/nominalnano.ogg',volume=50) + if(MECH_FACTION_SYNDI)//Bad guys + if(firstactivation) + firstactivation = 1 + src.occupant << sound('sound/mecha/LongSyndiActivation.ogg',volume=50) + else + src.occupant << sound('sound/mecha/nominalsyndi.ogg',volume=50) + else//Everyone else gets the normal noise + src.occupant << sound('sound/mecha/nominal.ogg',volume=50) return 1 else return 0 diff --git a/code/game/objects/items/devices/PDA/PDA_vr.dm b/code/game/objects/items/devices/PDA/PDA_vr.dm index e21fcbea8b..20558c965c 100644 --- a/code/game/objects/items/devices/PDA/PDA_vr.dm +++ b/code/game/objects/items/devices/PDA/PDA_vr.dm @@ -6,4 +6,12 @@ /obj/item/device/pda/pathfinder default_cartridge = /obj/item/weapon/cartridge/signal/science + icon_state = "pda-lawyer-old" + +/obj/item/device/pda/explorer + default_cartridge = /obj/item/weapon/cartridge/signal/science + icon_state = "pda-det" + +/obj/item/device/pda/sar + default_cartridge = /obj/item/weapon/cartridge/medical icon_state = "pda-h" diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm index 44d3c98c8c..b25d86897f 100644 --- a/code/game/objects/items/devices/flashlight.dm +++ b/code/game/objects/items/devices/flashlight.dm @@ -68,6 +68,7 @@ cell.charge = 0 visible_message("\The [src] flickers before going dull.") set_light(0) + playsound(src.loc, 'sound/effects/sparks3.ogg', 10, 1, -3) //Small cue that your light went dull in your pocket. on = 0 update_icon() @@ -180,6 +181,7 @@ user.put_in_hands(cell) cell = null user << "You remove the cell from the [src]." + playsound(src, 'sound/machines/button.ogg', 30, 1, 0) on = 0 update_icon() return @@ -228,6 +230,7 @@ W.loc = src cell = W user << "You install a cell in \the [src]." + playsound(src, 'sound/machines/button.ogg', 30, 1, 0) update_icon() else user << "\The [src] already has a cell." diff --git a/code/game/objects/items/devices/radio/jammer_vr.dm b/code/game/objects/items/devices/radio/jammer_vr.dm new file mode 100644 index 0000000000..a92005621a --- /dev/null +++ b/code/game/objects/items/devices/radio/jammer_vr.dm @@ -0,0 +1,4 @@ +//Unlimited use, unlimited range jammer for admins. Turn it on, drop it somewhere, it works. +/obj/item/device/radio_jammer/admin + jam_range = 255 + tick_cost = 0 diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index 231693305f..9e03e7ff63 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -1,4 +1,5 @@ // Access check is of the type requires one. These have been carefully selected to avoid allowing the janitor to see channels he shouldn't +//VOREStation Edit Start - Updating this for Virgo var/global/list/default_internal_channels = list( num2text(PUB_FREQ) = list(), num2text(AI_FREQ) = list(access_synth), @@ -10,16 +11,18 @@ var/global/list/default_internal_channels = list( num2text(MED_I_FREQ)=list(access_medical_equip), num2text(SEC_FREQ) = list(access_security), num2text(SEC_I_FREQ)=list(access_security), - num2text(SCI_FREQ) = list(access_tox,access_robotics,access_xenobiology), - num2text(SUP_FREQ) = list(access_cargo), - num2text(SRV_FREQ) = list(access_janitor, access_hydroponics) + num2text(SCI_FREQ) = list(access_tox, access_robotics, access_xenobiology, access_explorer), + num2text(SUP_FREQ) = list(access_cargo, access_mining_station), + num2text(SRV_FREQ) = list(access_janitor, access_library, access_hydroponics, access_bar, access_kitchen), + num2text(EXP_FREQ) = list(access_explorer, access_pilot, access_rd) ) var/global/list/default_medbay_channels = list( num2text(PUB_FREQ) = list(), - num2text(MED_FREQ) = list(access_medical_equip), - num2text(MED_I_FREQ) = list(access_medical_equip) + num2text(MED_FREQ) = list(), + num2text(MED_I_FREQ) = list() ) +//VOREStation Edit End /obj/item/device/radio icon = 'icons/obj/radio_vr.dmi' //VOREStation Edit @@ -480,6 +483,13 @@ var/global/list/default_medbay_channels = list( //THIS IS TEMPORARY. YEAH RIGHT if(!connection) return 0 //~Carn +//VOREStation Add Start + if(bluespace_radio) + return Broadcast_Message(connection, M, voicemask, pick(M.speak_emote), + src, message, displayname, jobname, real_name, M.voice_name, + 0, signal.data["compression"], list(0), connection.frequency,verb,speaking) +//VOREStation Add End + return Broadcast_Message(connection, M, voicemask, pick(M.speak_emote), src, message, displayname, jobname, real_name, M.voice_name, filter_type, signal.data["compression"], list(position.z), connection.frequency,verb,speaking) @@ -518,7 +528,8 @@ var/global/list/default_medbay_channels = list( if(!(0 in level)) var/turf/position = get_turf(src) if(!position || !(position.z in level)) - return -1 + if(!bluespace_radio) //VOREStation Edit + return -1 if(freq in ANTAG_FREQS) if(!(src.syndie))//Checks to see if it's allowed on that frequency, based on the encryption keys return -1 diff --git a/code/game/objects/items/devices/radio/radio_vr.dm b/code/game/objects/items/devices/radio/radio_vr.dm new file mode 100644 index 0000000000..d3681423f3 --- /dev/null +++ b/code/game/objects/items/devices/radio/radio_vr.dm @@ -0,0 +1,146 @@ +/obj/item/device/radio + var/bluespace_radio = FALSE + +/obj/item/device/radio/phone + subspace_transmission = 1 + canhear_range = 0 + adhoc_fallback = TRUE + +/obj/item/device/radio/emergency + name = "Medbay Emergency Radio Link" + icon_state = "med_walkietalkie" + frequency = MED_I_FREQ + subspace_transmission = 1 + adhoc_fallback = TRUE + +/obj/item/device/radio/emergency/New() + ..() + internal_channels = default_medbay_channels.Copy() + +//Pathfinder's Subspace Radio +/obj/item/device/subspaceradio + name = "subspace radio" + desc = "A powerful new radio recently gifted to Nanotrasen from KHI, this communications device has the ability to send and recieve transmissions from anywhere." + icon = 'icons/vore/custom_items_vr.dmi' + icon_state = "radiopack" + item_state = "parachute" + slot_flags = SLOT_BACK + force = 5 + throwforce = 6 + preserve_item = 1 + w_class = ITEMSIZE_LARGE + action_button_name = "Remove/Replace Handset" + + var/obj/item/device/radio/subspacehandset/linked/handset + +/obj/item/device/subspaceradio/New() //starts without a cell for rnd + ..() + if(ispath(handset)) + handset = new handset(src, src) + else + handset = new(src, src) + +/obj/item/device/subspaceradio/Destroy() + . = ..() + QDEL_NULL(handset) + +/obj/item/device/subspaceradio/ui_action_click() + toggle_handset() + +/obj/item/device/subspaceradio/attack_hand(mob/user) + if(loc == user) + toggle_handset() + else + ..() + +/obj/item/device/subspaceradio/MouseDrop() + if(ismob(loc)) + if(!CanMouseDrop(src)) + return + var/mob/M = loc + if(!M.unEquip(src)) + return + add_fingerprint(usr) + M.put_in_any_hand_if_possible(src) + +/obj/item/device/subspaceradio/attackby(obj/item/weapon/W, mob/user, params) + if(W == handset) + reattach_handset(user) + else + return ..() + +/obj/item/device/subspaceradio/verb/toggle_handset() + set name = "Toggle Handset" + set category = "Object" + + var/mob/living/carbon/human/user = usr + if(!handset) + to_chat(user, "The handset is missing!") + return + + if(handset.loc != src) + reattach_handset(user) //Remove from their hands and back onto the defib unit + return + + if(!slot_check()) + to_chat(user, "You need to equip [src] before taking out [handset].") + else + if(!usr.put_in_hands(handset)) //Detach the handset into the user's hands + to_chat(user, "You need a free hand to hold the handset!") + update_icon() //success + +//checks that the base unit is in the correct slot to be used +/obj/item/device/subspaceradio/proc/slot_check() + var/mob/M = loc + if(!istype(M)) + return 0 //not equipped + + if((slot_flags & SLOT_BACK) && M.get_equipped_item(slot_back) == src) + return 1 + if((slot_flags & SLOT_BELT) && M.get_equipped_item(slot_belt) == src) + return 1 + + return 0 + +/obj/item/device/subspaceradio/dropped(mob/user) + ..() + reattach_handset(user) //handset attached to a base unit should never exist outside of their base unit or the mob equipping the base unit + +/obj/item/device/subspaceradio/proc/reattach_handset(mob/user) + if(!handset) return + + if(ismob(handset.loc)) + var/mob/M = handset.loc + if(M.drop_from_inventory(handset, src)) + to_chat(user, "\The [handset] snap back into the main unit.") + else + handset.forceMove(src) + +//Subspace Radio Handset +/obj/item/device/radio/subspacehandset + name = "subspace radio handset" + desc = "A large walkie talkie attached to the subspace radio by a retractable cord. It sits comfortably on a slot in the radio when not in use." + bluespace_radio = TRUE + icon_state = "signaller" + slot_flags = null + w_class = ITEMSIZE_LARGE + +/obj/item/device/radio/subspacehandset/linked + var/obj/item/device/subspaceradio/base_unit + +/obj/item/device/radio/subspacehandset/linked/New(newloc, obj/item/device/subspaceradio/radio) + base_unit = radio + ..(newloc) + +/obj/item/device/radio/subspacehandset/linked/Destroy() + if(base_unit) + //ensure the base unit's icon updates + if(base_unit.handset == src) + base_unit.handset = null + base_unit = null + return ..() + +/obj/item/device/radio/subspacehandset/linked/dropped(mob/user) + ..() //update twohanding + if(base_unit) + base_unit.reattach_handset(user) //handset attached to a base unit should never exist outside of their base unit or the mob equipping the base unit diff --git a/code/game/objects/items/weapons/RSF.dm b/code/game/objects/items/weapons/RSF.dm index d404b5cd44..260a01b04d 100644 --- a/code/game/objects/items/weapons/RSF.dm +++ b/code/game/objects/items/weapons/RSF.dm @@ -7,55 +7,82 @@ RSF /obj/item/weapon/rsf name = "\improper Rapid-Service-Fabricator" desc = "A device used to rapidly deploy service items." - icon = 'icons/obj/items.dmi' + description_info = "Control Clicking on the device will allow you to choose the glass it dispenses when in the proper mode." + icon = 'icons/obj/tools.dmi' icon_state = "rcd" opacity = 0 density = 0 anchored = 0.0 var/stored_matter = 30 var/mode = 1 + var/obj/item/weapon/reagent_containers/glasstype = /obj/item/weapon/reagent_containers/food/drinks/metaglass + + var/list/container_types = list( + "metamorphic glass" = /obj/item/weapon/reagent_containers/food/drinks/metaglass, + "half-pint glass" = /obj/item/weapon/reagent_containers/food/drinks/glass2/square, + "rocks glass" = /obj/item/weapon/reagent_containers/food/drinks/glass2/rocks, + "milkshake glass" = /obj/item/weapon/reagent_containers/food/drinks/glass2/shake, + "cocktail glass" = /obj/item/weapon/reagent_containers/food/drinks/glass2/cocktail, + "shot glass" = /obj/item/weapon/reagent_containers/food/drinks/glass2/shot, + "pint glass" = /obj/item/weapon/reagent_containers/food/drinks/glass2/pint, + "mug" = /obj/item/weapon/reagent_containers/food/drinks/glass2/mug, + "wine glass" = /obj/item/weapon/reagent_containers/food/drinks/glass2/wine, + "condiment bottle" = /obj/item/weapon/reagent_containers/food/condiment + ) + w_class = ITEMSIZE_NORMAL /obj/item/weapon/rsf/examine(mob/user) if(..(user, 0)) - user << "It currently holds [stored_matter]/30 fabrication-units." + to_chat(user,"It currently holds [stored_matter]/30 fabrication-units.") /obj/item/weapon/rsf/attackby(obj/item/weapon/W as obj, mob/user as mob) ..() if (istype(W, /obj/item/weapon/rcd_ammo)) if ((stored_matter + 10) > 30) - user << "The RSF can't hold any more matter." + to_chat(user, "The RSF can't hold any more matter.") return qdel(W) stored_matter += 10 playsound(src.loc, 'sound/machines/click.ogg', 10, 1) - user << "The RSF now holds [stored_matter]/30 fabrication-units." + to_chat(user,"The RSF now holds [stored_matter]/30 fabrication-units.") return +/obj/item/weapon/rsf/CtrlClick(mob/living/user) + if(!Adjacent(user) || !istype(user)) + to_chat(user,"You are too far away.") + return + var/glass_choice = input(user, "Please choose which type of glass you would like to produce.") as null|anything in container_types + + if(glass_choice) + glasstype = container_types[glass_choice] + else + glasstype = /obj/item/weapon/reagent_containers/food/drinks/metaglass + /obj/item/weapon/rsf/attack_self(mob/user as mob) playsound(src.loc, 'sound/effects/pop.ogg', 50, 0) if (mode == 1) mode = 2 - user << "Changed dispensing mode to 'Drinking Glass:Pint'" + to_chat(user,"Changed dispensing mode to 'Container'.") return if (mode == 2) mode = 3 - user << "Changed dispensing mode to 'Paper'" + to_chat(user,"Changed dispensing mode to 'Paper'") return if (mode == 3) mode = 4 - user << "Changed dispensing mode to 'Pen'" + to_chat(user,"Changed dispensing mode to 'Pen'") return if (mode == 4) mode = 5 - user << "Changed dispensing mode to 'Dice Pack'" + to_chat(user,"Changed dispensing mode to 'Dice Pack'") return if (mode == 5) mode = 1 - user << "Changed dispensing mode to 'Cigarette'" + to_chat(user,"Changed dispensing mode to 'Cigarette'") return /obj/item/weapon/rsf/afterattack(atom/A, mob/user as mob, proximity) @@ -82,7 +109,7 @@ RSF product = new /obj/item/clothing/mask/smokable/cigarette() used_energy = 10 if(2) - product = new /obj/item/weapon/reagent_containers/food/drinks/glass2/pint() + product = new glasstype() used_energy = 50 if(3) product = new /obj/item/weapon/paper() @@ -94,7 +121,7 @@ RSF product = new /obj/item/weapon/storage/pill_bottle/dice() used_energy = 200 - user << "Dispensing [product ? product : "product"]..." + to_chat(user,"Dispensing [product ? product : "product"]...") product.loc = get_turf(A) if(isrobot(user)) @@ -103,4 +130,4 @@ RSF R.cell.use(used_energy) else stored_matter-- - user << "The RSF now holds [stored_matter]/30 fabrication-units." + to_chat(user,"The RSF now holds [stored_matter]/30 fabrication-units.") diff --git a/code/game/objects/items/weapons/implants/implant_vr.dm b/code/game/objects/items/weapons/implants/implant_vr.dm index ebcc2d9f54..006c4884e1 100644 --- a/code/game/objects/items/weapons/implants/implant_vr.dm +++ b/code/game/objects/items/weapons/implants/implant_vr.dm @@ -39,3 +39,101 @@ source.mind.store_memory("A implant can be activated by using the smile emote, say *smile to attempt to activate.", 0, 0) to_chat(source,"The implanted language implant can be activated by using the smile emote, say *smile to attempt to activate.") return 1 + +////////////////////////////// +// Size Control Implant +////////////////////////////// +/obj/item/weapon/implant/sizecontrol + name = "size control implant" + desc = "Implant which allows to control host size via voice commands." + icon_state = "implant_evil" + var/owner + var/active = TRUE + +/obj/item/weapon/implant/sizecontrol/get_data() + var/dat = {" +Implant Specifications:
+Name:L3-WD Size Controlling Implant
+Life:1-2 weeks after implanting
+
+Function: Resizes the host whenever specific verbal command is received
"} + return dat + +/obj/item/weapon/implant/sizecontrol/hear_talk(mob/M, msg) + if(M == imp_in) + return + if(owner) + if(M != owner) + return + if(findtext(msg,"ignore")) + return + var/list/replacechars = list("'" = "",">" = "","<" = "","(" = "",")" = "", "~" = "") + msg = replace_characters(msg, replacechars) + hear(msg) + return + +/obj/item/weapon/implant/sizecontrol/see_emote(mob/living/M, message, m_type) + if(M == imp_in) + return + if(owner) + if(M != owner) + return + var/list/replacechars = list("'" = "",">" = "","<" = "","(" = "",")" = "", "~" = "") + message = replace_characters(message, replacechars) + var/static/regex/say_in_me = new/regex("(")(.*?)(&#)", "g") + while(say_in_me.Find(message)) + if(findtext(say_in_me.match,"ignore")) + return + hear(say_in_me.group[2]) + + +/obj/item/weapon/implant/sizecontrol/hear(var/msg) + if (malfunction) + return + + if(istype(imp_in, /mob/living)) + var/mob/living/H = imp_in + if(findtext(msg,"implant-toggle")) + active = !active + if(active) + if(findtext(msg,"grow")) + H.resize(min(H.size_multiplier*1.5, 2)) + else if(findtext(msg,"shrink")) + H.resize(max(H.size_multiplier*0.5, 0.25)) + else if(findtext(msg, "resize")) + var/static/regex/size_mult = new/regex("\\d+") + if(size_mult.Find(msg)) + var/resizing_value = text2num(size_mult.match) + if(findtext(msg, "centimeter")) //Because metric system rules + H.resize(Clamp(resizing_value/170 , 0.25, 2)) //170 cm is average crewmember, I think + else + H.resize(Clamp(resizing_value , 0.25, 2)) + + + +/obj/item/weapon/implant/sizecontrol/post_implant(mob/source, mob/living/user = usr) + if(source != user) + owner = user + + +/obj/item/weapon/implant/sizecontrol/emp_act(severity) + if(istype(imp_in, /mob/living)) + var/newsize = pick(RESIZE_HUGE,RESIZE_BIG,RESIZE_NORMAL,RESIZE_SMALL,RESIZE_TINY,RESIZE_A_HUGEBIG,RESIZE_A_BIGNORMAL,RESIZE_A_NORMALSMALL,RESIZE_A_SMALLTINY) + var/mob/living/H = imp_in + H.resize(newsize) + +/obj/item/weapon/implanter/sizecontrol + name = "size control implant" + desc = "Implant which allows to control host size via voice commands." + description_info = {"Only accessable by those who implanted the victim. Self-implanting allows everyone to change host size. The following special commands are available: +'Shrink' - host size decreases. +'Grow' - host size increases. +'Resize (NUMBER)' or 'Resize (NUMBER) centimeter(s)' - for accurate size control. +'Ignore' - keywords in the speech won't have any effect. +'Implant-toggle' - toggles implant."} + +/obj/item/weapon/implanter/sizecontrol/New() + src.imp = new /obj/item/weapon/implant/sizecontrol( src ) + ..() + update() + return \ No newline at end of file diff --git a/code/game/objects/items/weapons/implants/implantreagent_vr.dm b/code/game/objects/items/weapons/implants/implantreagent_vr.dm index 83a586d2ba..0b227d9539 100644 --- a/code/game/objects/items/weapons/implants/implantreagent_vr.dm +++ b/code/game/objects/items/weapons/implants/implantreagent_vr.dm @@ -82,10 +82,11 @@ var/obj/item/weapon/implant/reagent_generator/rimplant - for(var/I in src.contents) - if(istype(I, /obj/item/weapon/implant/reagent_generator)) - rimplant = I - break + for(var/obj/item/organ/external/E in organs) + for(var/obj/item/weapon/implant/I in E.implants) + if(istype(I, /obj/item/weapon/implant/reagent_generator)) + rimplant = I + break if(rimplant) if(container.reagents.total_volume < container.volume) var/container_name = container.name diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm index b6dde04e70..2dd06bc0bc 100644 --- a/code/game/objects/items/weapons/storage/boxes.dm +++ b/code/game/objects/items/weapons/storage/boxes.dm @@ -56,7 +56,6 @@ name = "emergency supply box" desc = "A survival box issued to crew members for use in emergency situations." starts_with = list( - /obj/item/clothing/glasses/goggles, //VOREStation Add - Goggles for the phoron atmosphere, /obj/item/clothing/mask/breath ) @@ -64,7 +63,6 @@ name = "synthetic supply box" desc = "A survival box issued to synthetic crew members for use in emergency situations." starts_with = list( - /obj/item/clothing/glasses/goggles //VOREStation Add - Goggles for the phoron atmosphere, ) /obj/item/weapon/storage/box/survival/comp @@ -72,7 +70,6 @@ desc = "A comprehensive survival box issued to crew members for use in emergency situations. Contains additional supplies." icon_state = "survival" starts_with = list( - /obj/item/clothing/glasses/goggles, //VOREStation Add - Goggles for the phoron atmosphere, /obj/item/weapon/reagent_containers/hypospray/autoinjector, /obj/item/stack/medical/bruise_pack, /obj/item/device/flashlight/glowstick, diff --git a/code/game/objects/items/weapons/storage/boxes_vr.dm b/code/game/objects/items/weapons/storage/boxes_vr.dm index d3dcd936da..81833a29a1 100644 --- a/code/game/objects/items/weapons/storage/boxes_vr.dm +++ b/code/game/objects/items/weapons/storage/boxes_vr.dm @@ -1,3 +1,27 @@ +/obj/item/weapon/storage/box/survival + starts_with = list( + /obj/item/weapon/tool/prybar/red, + /obj/item/clothing/glasses/goggles, + /obj/item/clothing/mask/breath + ) + +/obj/item/weapon/storage/box/survival/synth + starts_with = list( + /obj/item/weapon/tool/prybar/red, + /obj/item/clothing/glasses/goggles + ) + +/obj/item/weapon/storage/box/survival/comp + starts_with = list( + /obj/item/weapon/tool/prybar/red, + /obj/item/clothing/glasses/goggles, + /obj/item/weapon/reagent_containers/hypospray/autoinjector, + /obj/item/stack/medical/bruise_pack, + /obj/item/device/flashlight/glowstick, + /obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar, + /obj/item/clothing/mask/breath + ) + /obj/item/weapon/storage/box/explorerkeys name = "box of volunteer headsets" desc = "A box full of volunteer headsets, for issuing out to exploration volunteers." diff --git a/code/game/objects/items/weapons/tools/crowbar_vr.dm b/code/game/objects/items/weapons/tools/crowbar_vr.dm new file mode 100644 index 0000000000..49cbfa63a9 --- /dev/null +++ b/code/game/objects/items/weapons/tools/crowbar_vr.dm @@ -0,0 +1,32 @@ +/* + * Prybar + */ + +/obj/item/weapon/tool/prybar + name = "pry bar" + desc = "A steel bar with a wedge, designed specifically for opening unpowered doors in an emergency. It comes in a variety of configurations - collect them all!" + icon = 'icons/obj/tools_vr.dmi' + icon_state = "prybar" + flags = CONDUCT + slot_flags = SLOT_BELT + force = 4 + throwforce = 5 + pry = 1 + item_state = "crowbar" + w_class = ITEMSIZE_SMALL + origin_tech = list(TECH_ENGINEERING = 1) + matter = list(DEFAULT_WALL_MATERIAL = 30) + attack_verb = list("whapped", "smacked", "swatted", "thwacked", "hit") + usesound = 'sound/items/crowbar.ogg' + toolspeed = 1 + var/random_color = TRUE + +/obj/item/weapon/tool/prybar/red + icon_state = "prybar_red" + item_state = "crowbar_red" + random_color = FALSE + +/obj/item/weapon/tool/prybar/New() + if(random_color) + icon_state = "prybar[pick("","_green","_aubergine","_blue")]" + . = ..() diff --git a/code/game/objects/structures/trash_pile.dm b/code/game/objects/structures/trash_pile.dm index bdb8207cbd..01c0554170 100644 --- a/code/game/objects/structures/trash_pile.dm +++ b/code/game/objects/structures/trash_pile.dm @@ -221,6 +221,7 @@ prob(4);/obj/item/weapon/storage/pill_bottle/happy, prob(4);/obj/item/weapon/storage/pill_bottle/zoom, prob(4);/obj/item/weapon/gun/energy/sizegun, + prob(3);/obj/item/weapon/implanter/sizecontrol, prob(3);/obj/item/weapon/material/butterfly, prob(3);/obj/item/weapon/material/butterfly/switchblade, prob(3);/obj/item/clothing/gloves/knuckledusters, diff --git a/code/modules/admin/verbs/adminhelp.dm b/code/modules/admin/verbs/adminhelp.dm index 718b7da615..0327e0c84a 100644 --- a/code/modules/admin/verbs/adminhelp.dm +++ b/code/modules/admin/verbs/adminhelp.dm @@ -343,8 +343,8 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new) return var/msg = "- AdminHelp marked as IC issue! -
" - msg += "Losing is part of the game!
" - msg += "Your AdminHelp may also be unabled to be answered due to ongoing events." + msg += "This is something that can be solved ICly, and does not currently require admin intervention.
" //VOREStation Edit + msg += "Your AdminHelp may also be unable to be answered due to ongoing events." //VOREStation Edit if(initiator) to_chat(initiator, msg) diff --git a/code/modules/client/preference_setup/loadout/loadout_accessories_vr.dm b/code/modules/client/preference_setup/loadout/loadout_accessories_vr.dm index 86ea0381d0..c3d4adc34b 100644 --- a/code/modules/client/preference_setup/loadout/loadout_accessories_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_accessories_vr.dm @@ -30,11 +30,36 @@ display_name = "collar, holo" path = /obj/item/clothing/accessory/collar/holo -/datum/gear/accessory/white_drop_pouches - allowed_roles = list("Paramedic","Chief Medical Officer","Medical Doctor","Chemist") +/datum/gear/accessory/holster + display_name = "holster selection (Security, CD, HoP, Exploration)" + allowed_roles = list("Colony Director", "Head of Personnel", "Security Officer", "Warden", "Head of Security","Detective","Explorer","Pathfinder") + +/datum/gear/accessory/brown_vest + display_name = "webbing, brown" + allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor","Chemist","Field Medic","Pathfinder") + +/datum/gear/accessory/black_vest + display_name = "webbing, black" + allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor","Chemist","Field Medic","Pathfinder") /datum/gear/accessory/white_vest - allowed_roles = list("Paramedic","Chief Medical Officer","Medical Doctor","Chemist") + display_name = "webbing, white (Medical)" + allowed_roles = list("Paramedic","Chief Medical Officer","Medical Doctor","Chemist","Field Medic") + +/datum/gear/accessory/brown_drop_pouches + display_name = "drop pouches, brown" + allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor","Chemist","Field Medic","Pathfinder") + +/datum/gear/accessory/black_drop_pouches + display_name = "drop pouches, black" + allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor","Chemist","Field Medic","Pathfinder") + +/datum/gear/accessory/white_drop_pouches + display_name = "drop pouches, white (Medical)" + allowed_roles = list("Paramedic","Chief Medical Officer","Medical Doctor","Chemist","Field Medic") + +/datum/gear/accessory/stethoscope + allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Psychiatrist","Paramedic", "Field Medic") /datum/gear/accessory/khcrystal display_name = "KH Life Crystal" diff --git a/code/modules/client/preference_setup/loadout/loadout_eyes_vr.dm b/code/modules/client/preference_setup/loadout/loadout_eyes_vr.dm index 94094428c9..da9ad9021d 100644 --- a/code/modules/client/preference_setup/loadout/loadout_eyes_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_eyes_vr.dm @@ -1,3 +1,10 @@ +/datum/gear/eyes/medical + allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist", "Field Medic") + +/datum/gear/eyes/meson + display_name = "Optical Meson Scanners (Engineering, Science)" + allowed_roles = list("Station Engineer","Chief Engineer","Atmospheric Technician", "Scientist", "Research Director", "Explorer", "Pathfinder") + /datum/gear/eyes/arglasses display_name = "AR glasses" path = /obj/item/clothing/glasses/omnihud diff --git a/code/modules/client/preference_setup/loadout/loadout_shoes_vr.dm b/code/modules/client/preference_setup/loadout/loadout_shoes_vr.dm index ff04b6a989..73cce9a17e 100644 --- a/code/modules/client/preference_setup/loadout/loadout_shoes_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_shoes_vr.dm @@ -1,3 +1,9 @@ +/datum/gear/shoes/boots/winter/science + allowed_roles = list("Research Director","Scientist", "Roboticist", "Xenobiologist", "Explorer", "Pathfinder") + +/datum/gear/shoes/boots/winter/medical + allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist", "Field Medic") + /datum/gear/shoes/black/cuffs display_name = "legwraps, black" path = /obj/item/clothing/shoes/black/cuffs 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 002d032a3d..719ba98a38 100644 --- a/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm @@ -1,3 +1,21 @@ +/datum/gear/suit/roles/poncho/cloak/research + allowed_roles = list("Research Director","Scientist", "Roboticist", "Xenobiologist", "Explorer", "Pathfinder") + +/datum/gear/suit/roles/poncho/cloak/medical + allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist", "Field Medic") + +/datum/gear/suit/wintercoat/medical + allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist", "Field Medic") + +/datum/gear/suit/wintercoat/science + allowed_roles = list("Research Director","Scientist", "Roboticist", "Xenobiologist", "Explorer", "Pathfinder") + +/datum/gear/suit/snowsuit/medical + allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist", "Field Medic") + +/datum/gear/suit/snowsuit/science + allowed_roles = list("Research Director","Scientist", "Roboticist", "Xenobiologist", "Explorer", "Pathfinder") + /datum/gear/suit/labcoat_colorable display_name = "labcoat, colorable" path = /obj/item/clothing/suit/storage/toggle/labcoat diff --git a/code/modules/client/preference_setup/loadout/loadout_utility_vr.dm b/code/modules/client/preference_setup/loadout/loadout_utility_vr.dm index 65bc2af8bd..4edfe9246f 100644 --- a/code/modules/client/preference_setup/loadout/loadout_utility_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_utility_vr.dm @@ -35,7 +35,7 @@ /datum/gear/utility/dufflebag/med display_name = "medical dufflebag" path = /obj/item/weapon/storage/backpack/dufflebag/med - allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist","Psychiatrist","Search and Rescue") + allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist","Psychiatrist","Field Medic") /datum/gear/utility/dufflebag/med/emt display_name = "EMT dufflebag" @@ -54,4 +54,4 @@ /datum/gear/utility/dufflebag/sci display_name = "science dufflebag" path = /obj/item/weapon/storage/backpack/dufflebag/sci - allowed_roles = list("Research Director","Scientist","Roboticist","Xenobiologist","Explorer") + allowed_roles = list("Research Director","Scientist","Roboticist","Xenobiologist","Explorer","Pathfinder") diff --git a/code/modules/clothing/suits/hooded_vr.dm b/code/modules/clothing/suits/hooded_vr.dm new file mode 100644 index 0000000000..ef13979bdc --- /dev/null +++ b/code/modules/clothing/suits/hooded_vr.dm @@ -0,0 +1,3 @@ +// Field Medic Suit - Someone who can sprite should probably reskin this +/obj/item/clothing/suit/storage/hooded/explorer/medic + starting_accessories = list(/obj/item/clothing/accessory/armband/med/cross) diff --git a/code/modules/clothing/under/accessories/accessory_vr.dm b/code/modules/clothing/under/accessories/accessory_vr.dm index 064f5b37b8..25148b8813 100644 --- a/code/modules/clothing/under/accessories/accessory_vr.dm +++ b/code/modules/clothing/under/accessories/accessory_vr.dm @@ -6,6 +6,7 @@ slot_flags = SLOT_TIE | SLOT_OCLOTHING icon = 'icons/obj/clothing/collars_vr.dmi' icon_override = 'icons/obj/clothing/collars_vr.dmi' + var/writtenon = 0 /obj/item/clothing/accessory/collar/silver name = "Silver tag collar" @@ -27,6 +28,20 @@ icon_state = "collar_bell" item_state = "collar_bell_overlay" overlay_state = "collar_bell_overlay" + var/jingled = 0 + +/obj/item/clothing/accessory/collar/bell/verb/jinglebell() + set name = "Jingle Bell" + set category = "Object" + set src in usr + if(!istype(usr, /mob/living)) return + if(usr.stat) return + + if(!jingled) + usr.audible_message("[usr] jingles the [src]'s bell.") + jingled = 1 + schedule_callback_in(5 SECONDS, VARSET_CALLBACK(src, jingled, 0)) + return /obj/item/clothing/accessory/collar/shock name = "Shock collar" @@ -164,8 +179,14 @@ item_state = "collar_holo_overlay" overlay_state = "collar_holo_overlay" -/obj/item/clothing/accessory/collar/holo/attack_self(mob/user as mob) - to_chat(user,"[name]'s interface is projected onto your hand.") +/obj/item/clothing/accessory/collar/attack_self(mob/user as mob) + if(istype(src,/obj/item/clothing/accessory/collar/holo)) + to_chat(user,"[name]'s interface is projected onto your hand.") + else + if(writtenon) + to_chat(user,"You need a pen or a screwdriver to edit the tag on this collar.") + return + to_chat(user,"You adjust the [name]'s tag.") var/str = copytext(reject_bad_text(input(user,"Tag text?","Set tag","")),1,MAX_NAME_LEN) @@ -176,7 +197,49 @@ else to_chat(user,"You set the [name]'s tag to '[str]'.") name = initial(name) + " ([str])" - desc = initial(desc) + " The tag says \"[str]\"." + if(istype(src,/obj/item/clothing/accessory/collar/holo)) + desc = initial(desc) + " The tag says \"[str]\"." + else + desc = initial(desc) + " \"[str]\" has been engraved on the tag." + writtenon = 1 + +/obj/item/clothing/accessory/collar/attackby(obj/item/I, mob/user) + if(istype(src,/obj/item/clothing/accessory/collar/holo)) + return + + if(istype(I,/obj/item/weapon/tool/screwdriver)) + update_collartag(user, I, "scratched out", "scratch out", "engraved") + return + + if(istype(I,/obj/item/weapon/pen)) + update_collartag(user, I, "crossed out", "cross out", "written") + return + + to_chat(user,"You need a pen or a screwdriver to edit the tag on this collar.") + +/obj/item/clothing/accessory/collar/proc/update_collartag(mob/user, obj/item/I, var/erasemethod, var/erasing, var/writemethod) + if(!(istype(user.get_active_hand(),I)) || !(istype(user.get_inactive_hand(),src)) || (user.stat)) + return + + var/str = copytext(reject_bad_text(input(user,"Tag text?","Set tag","")),1,MAX_NAME_LEN) + + if(!str || !length(str)) + if(!writtenon) + to_chat(user,"You don't write anything.") + else + to_chat(user,"You [erasing] the words with the [I].") + name = initial(name) + desc = initial(desc) + " The tag has had the words [erasemethod]." + else + if(!writtenon) + to_chat(user,"You write '[str]' on the tag with the [I].") + name = initial(name) + " ([str])" + desc = initial(desc) + " \"[str]\" has been [writemethod] on the tag." + writtenon = 1 + else + to_chat(user,"You [erasing] the words on the tag with the [I], and write '[str]'.") + name = initial(name) + " ([str])" + desc = initial(desc) + " Something has been [erasemethod] on the tag, and it now has \"[str]\" [writemethod] on it." //Machete Holsters /obj/item/clothing/accessory/holster/machete @@ -193,4 +256,4 @@ /obj/item/clothing/accessory/medal/silver/unity name = "medal of unity" - desc = "A silver medal awarded to a group which has demonstrated exceptional teamwork to achieve a notable feat." \ No newline at end of file + desc = "A silver medal awarded to a group which has demonstrated exceptional teamwork to achieve a notable feat." diff --git a/code/modules/food/food/snacks_vr.dm b/code/modules/food/food/snacks_vr.dm index b8acc3377e..13b6e2e88f 100644 --- a/code/modules/food/food/snacks_vr.dm +++ b/code/modules/food/food/snacks_vr.dm @@ -308,3 +308,195 @@ /obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped/wolpincube name = "wolpin cube" monkey_type = "Wolpin" + +/obj/item/weapon/reagent_containers/food/snacks/pizza/margfrozen + name = "frozen margherita pizza" + desc = "It's frozen rock solid, better thaw it in a microwave." + icon = 'icons/obj/food_vr.dmi' + icon_state = "margharita_pizza_frozen" + center_of_mass = list("x"=16, "y"=11) + nutriment_amt = 15 + nutriment_desc = list("ice" = 5, "toothache" = 1, "frozen cheese" = 5, "frozen tomato" = 5) + +/obj/item/weapon/reagent_containers/food/snacks/pizza/margfrozen/New() + ..() + bitesize = 20 + reagents.add_reagent("frostoil",3) + +/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/margcargo + name = "Margherita" + desc = "The golden standard of pizzas, it looks drowned in tomato sauce." + icon = 'icons/obj/food_vr.dmi' + icon_state = "margharita_pizza_cargo" + slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/margcargo + slices_num = 6 + center_of_mass = list("x"=16, "y"=11) + nutriment_desc = list("pizza crust" = 10, "tomato" = 15, "cheese" = 5) + nutriment_amt = 10 + +/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/margcargo/New() + ..() + reagents.add_reagent("protein", 2) + reagents.add_reagent("tomatojuice", 10) + bitesize = 2 + reagents.remove_reagent("frostoil",3) + +/obj/item/weapon/reagent_containers/food/snacks/slice/margcargo + name = "Margherita slice" + desc = "A slice of the classic pizza, it's hard not to spill any tomato juice on yourself." + icon = 'icons/obj/food_vr.dmi' + icon_state = "margharita_pizza_slice_cargo" + filling_color = "#BAA14C" + bitesize = 2 + center_of_mass = list("x"=16, "y"=13) + whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/margcargo + +/obj/item/weapon/reagent_containers/food/snacks/slice/margcargo/filled + filled = TRUE + +/obj/item/weapon/reagent_containers/food/snacks/pizza/meatfrozen + name = "frozen meat pizza" + desc = "It's frozen rock solid, better thaw it in a microwave." + icon = 'icons/obj/food_vr.dmi' + icon_state = "meat_pizza_frozen" + center_of_mass = list("x"=16, "y"=11) + nutriment_amt = 15 + nutriment_desc = list("ice" = 5, "toothache" = 1, "frozen meat" = 5, "frozen cow screams" = 5) + +/obj/item/weapon/reagent_containers/food/snacks/pizza/meatfrozen/New() + ..() + bitesize = 20 + reagents.add_reagent("frostoil",3) + +/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/meatcargo + name = "Meatpizza" + desc = "A pizza with meat topping, some of it suspiciously pink." + icon = 'icons/obj/food_vr.dmi' + icon_state = "meat_pizza_cargo" + slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/meatcargo + slices_num = 6 + center_of_mass = list("x"=16, "y"=11) + nutriment_desc = list("meat" = 10, "beef" = 10, "squeaky pork" = 15, "longpig" = 5) + nutriment_amt = 10 + +/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/meatcargo/New() + ..() + reagents.add_reagent("protein", 20) + reagents.add_reagent("tomatojuice", 6) + bitesize = 2 + reagents.remove_reagent("frostoil",3) + +/obj/item/weapon/reagent_containers/food/snacks/slice/meatcargo + name = "Meatpizza slice" + desc = "A slice of a meaty pizza, there are some bits of supiciously pink meat." + icon = 'icons/obj/food_vr.dmi' + icon_state = "meat_pizza_slice_cargo" + filling_color = "#BAA14C" + bitesize = 2 + center_of_mass = list("x"=16, "y"=13) + whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/meatcargo + +/obj/item/weapon/reagent_containers/food/snacks/slice/meatcargo/filled + filled = TRUE + +/obj/item/weapon/reagent_containers/food/snacks/pizza/mushfrozen + name = "frozen mushroom pizza" + desc = "It's frozen rock solid, better thaw it in a microwave." + icon = 'icons/obj/food_vr.dmi' + icon_state = "mushroom_pizza_frozen" + center_of_mass = list("x"=16, "y"=11) + nutriment_amt = 15 + nutriment_desc = list("ice" = 5, "toothache" = 1, "frozen mushrooms" = 5, "frozen cream" = 5) + +/obj/item/weapon/reagent_containers/food/snacks/pizza/mushfrozen/New() + ..() + bitesize = 20 + reagents.add_reagent("frostoil",3) + +/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/mushcargo + name = "Mushroompizza" + desc = "Very special pizza, it looks to be drowned in cream." + icon = 'icons/obj/food_vr.dmi' + icon_state = "mushroom_pizza_cargo" + slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/mushcargo + slices_num = 6 + center_of_mass = list("x"=16, "y"=11) + nutriment_desc = list("pizza crust" = 10, "cheese" = 5, "creamy sauce" = 5, "mushroom" = 5) + nutriment_amt = 10 + +/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/mushcargo/New() + ..() + reagents.add_reagent("protein", 4) + bitesize = 2 + reagents.remove_reagent("frostoil",3) + +/obj/item/weapon/reagent_containers/food/snacks/slice/mushcargo + name = "Mushroompizza slice" + desc = "Very special pizza slice, it looks to be drowned in cream." + icon = 'icons/obj/food_vr.dmi' + icon_state = "mushroom_pizza_slice_cargo" + filling_color = "#BAA14C" + bitesize = 2 + center_of_mass = list("x"=16, "y"=13) + whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/mushcargo + +/obj/item/weapon/reagent_containers/food/snacks/slice/mushcargp/filled + filled = TRUE + +/obj/item/weapon/reagent_containers/food/snacks/pizza/vegfrozen + name = "frozen vegtable pizza" + desc = "It's frozen rock solid, better thaw it in a microwave." + icon = 'icons/obj/food_vr.dmi' + icon_state = "vegetable_pizza_frozen" + center_of_mass = list("x"=16, "y"=11) + nutriment_amt = 15 + nutriment_desc = list("ice" = 5, "toothache" = 1, "frozen vegtable chunks" = 5) + +/obj/item/weapon/reagent_containers/food/snacks/pizza/vegfrozen/New() + ..() + bitesize = 20 + reagents.add_reagent("frostoil",3) + +/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/vegcargo + name = "Vegetablepizza" + desc = "At least 10 of Tomato Sapiens were harmed during making this pizza." + icon = 'icons/obj/food_vr.dmi' + icon_state = "vegetable_pizza_cargo" + slice_path = /obj/item/weapon/reagent_containers/food/snacks/slice/vegcargo + slices_num = 6 + center_of_mass = list("x"=16, "y"=11) + nutriment_desc = list("pizza crust" = 10, "tomato" = 20, "cheese" = 5, "eggplant" = 5, "carrot" = 5, "corn" = 5) + nutriment_amt = 5 + +/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/vegcargo/New() + ..() + reagents.add_reagent("protein", 4) + reagents.add_reagent("tomatojuice", 15) + reagents.add_reagent("imidazoline", 10) + bitesize = 2 + reagents.remove_reagent("frostoil",3) + +/obj/item/weapon/reagent_containers/food/snacks/slice/vegcargo + name = "Vegtablepizza slice" + desc = "At least 10 of Tomato Sapiens were harmed during making this pizza." + icon = 'icons/obj/food_vr.dmi' + icon_state = "vegetable_pizza_slice_cargo" + filling_color = "#BAA14C" + bitesize = 2 + center_of_mass = list("x"=16, "y"=13) + whole_path = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/vegcargo + +/obj/item/weapon/reagent_containers/food/snacks/slice/vegcargo/filled + filled = TRUE + +/obj/item/pizzabox/margherita/New() + pizza = new /obj/item/weapon/reagent_containers/food/snacks/pizza/margfrozen(src) + +/obj/item/pizzabox/vegetable/New() + pizza = new /obj/item/weapon/reagent_containers/food/snacks/pizza/vegfrozen(src) + +/obj/item/pizzabox/mushroom/New() + pizza = new /obj/item/weapon/reagent_containers/food/snacks/pizza/mushfrozen(src) + +/obj/item/pizzabox/meat/New() + pizza = new /obj/item/weapon/reagent_containers/food/snacks/pizza/meatfrozen(src) diff --git a/code/modules/reagents/reagent_containers/glass/bottle_vr.dm b/code/modules/food/glass/bottle_vr.dm similarity index 100% rename from code/modules/reagents/reagent_containers/glass/bottle_vr.dm rename to code/modules/food/glass/bottle_vr.dm diff --git a/code/game/machinery/kitchen/smartfridge_vr.dm b/code/modules/food/kitchen/smartfridge_vr.dm similarity index 100% rename from code/game/machinery/kitchen/smartfridge_vr.dm rename to code/modules/food/kitchen/smartfridge_vr.dm diff --git a/code/modules/food/recipes_microwave_vr.dm b/code/modules/food/recipes_microwave_vr.dm index ddf3a70de1..f9aadda69d 100644 --- a/code/modules/food/recipes_microwave_vr.dm +++ b/code/modules/food/recipes_microwave_vr.dm @@ -152,3 +152,31 @@ /obj/item/weapon/reagent_containers/food/snacks/cheesewedge ) result = /obj/item/weapon/reagent_containers/food/snacks/makaroni + +/datum/recipe/margheritapizzacargo + reagents = list() + items = list( + /obj/item/weapon/reagent_containers/food/snacks/pizza/margfrozen + ) + result = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/margcargo + +/datum/recipe/mushroompizzacargo + reagents = list() + items = list( + /obj/item/weapon/reagent_containers/food/snacks/pizza/mushfrozen + ) + result = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/mushcargo + +/datum/recipe/meatpizzacargo + reagents = list() + items = list( + /obj/item/weapon/reagent_containers/food/snacks/pizza/meatfrozen + ) + result = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/meatcargo + +/datum/recipe/vegtablepizzacargo + reagents = list() + items = list( + /obj/item/weapon/reagent_containers/food/snacks/pizza/vegfrozen + ) + result = /obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/vegcargo diff --git a/code/modules/maps/tg/reader.dm b/code/modules/maps/tg/reader.dm index 30de8067dc..b8fbf2cab6 100644 --- a/code/modules/maps/tg/reader.dm +++ b/code/modules/maps/tg/reader.dm @@ -99,6 +99,11 @@ var/global/use_preloader = FALSE var/ycrd = text2num(dmmRegex.group[4]) + y_offset - 1 var/zcrd = text2num(dmmRegex.group[5]) + z_offset - 1 + if(orientation & (EAST | WEST)) //VOREStation edit we just have to pray the upstream spacebrains take into consideration before their refator is done. + xcrd = ycrd // temp variable + ycrd = xcrdStart + xcrdStart = xcrd + var/zexpansion = zcrd > world.maxz if(zexpansion && !measureOnly) if(cropMap) diff --git a/code/modules/mining/shelter_atoms.dm b/code/modules/mining/shelter_atoms.dm index 25af7b1394..51b61cd5b1 100644 --- a/code/modules/mining/shelter_atoms.dm +++ b/code/modules/mining/shelter_atoms.dm @@ -87,6 +87,11 @@ desc = "An exorbitantly expensive luxury suite programmed into construction nanomachines. There's a license for use printed on the bottom." template_id = "shelter_beta" +/obj/item/device/survivalcapsule/tabiranth + name = "silver-trimmed surfluid shelter capsule" + desc = "An exorbitantly expensive luxury suite programmed into construction nanomachines. This one is a particularly rare and expensive model. There's a license for use printed on the bottom." + template_id = "shelter_gamma" + //Pod objects //Walls /turf/simulated/shuttle/wall/voidcraft/survival @@ -197,6 +202,9 @@ icon = 'icons/obj/survival_pod.dmi' icon_state = "bed" +/obj/structure/bed/pod/New(var/newloc) + ..(newloc,DEFAULT_WALL_MATERIAL,"cotton") + //Survival Storage Unit /obj/machinery/smartfridge/survival_pod name = "survival pod storage" @@ -209,25 +217,13 @@ light_power = 1.2 light_color = "#DDFFD3" pixel_y = -4 - max_n_of_items = 10 - var/empty = FALSE + max_n_of_items = 100 -/obj/machinery/smartfridge/survival_pod/initialize(mapload) +/obj/machinery/smartfridge/survival_pod/initialize() . = ..() - if(empty) - return - for(var/i in 1 to 5) - var/obj/item/weapon/reagent_containers/food/snacks/liquidfood/W = new(src) - stock(W) - for(var/i in 1 to 2) - var/obj/item/device/fbp_backup_cell/W = new(src) - stock(W) - if(prob(50)) - var/obj/item/weapon/storage/pill_bottle/dice/D = new(src) - stock(D) - else - var/obj/item/device/instrument/violin/V = new(src) - stock(V) + for(var/obj/item/O in loc) + if(accept_check(O)) + stock(O) /obj/machinery/smartfridge/survival_pod/accept_check(obj/item/O) return isitem(O) @@ -235,7 +231,6 @@ /obj/machinery/smartfridge/survival_pod/empty name = "dusty survival pod storage" desc = "A heated storage unit. This one's seen better days." - empty = TRUE //Fans /obj/structure/fans diff --git a/code/modules/mining/shelters.dm b/code/modules/mining/shelters.dm index 5ac1a7f6cd..b68606f914 100644 --- a/code/modules/mining/shelters.dm +++ b/code/modules/mining/shelters.dm @@ -70,3 +70,18 @@ whitelisted_turfs = typecacheof(/turf/simulated/mineral) banned_objects = list() +/datum/map_template/shelter/gamma + name = "Shelter Gamma" + shelter_id = "shelter_gamma" + description = "An heavily modified variant of the luxury shelter, \ + this particular model has extra food, drinks, and other supplies. \ + Originally designed for use by colonists on worlds with little to \ + to no contact, the expense of these shelters have prevented them \ + from seeing common use." + mappath = "maps/submaps/shelters/shelter_3.dmm" + roof = "roof_beta" + +/datum/map_template/shelter/gamma/New() + . = ..() + whitelisted_turfs = typecacheof(/turf/simulated/mineral) + banned_objects = list() diff --git a/code/modules/mob/language/station_vr.dm b/code/modules/mob/language/station_vr.dm index 7c610ab9a2..488167dc17 100644 --- a/code/modules/mob/language/station_vr.dm +++ b/code/modules/mob/language/station_vr.dm @@ -70,6 +70,18 @@ syllables = list("salve","sum","loqui","operatur","iusta","et","permittit","facere","effercio","pluribus","enim","hoc", "mihi","wan","six","salve","tartu") machine_understands = FALSE + +/datum/language/bug + name = LANGUAGE_VESPINAE + desc = "A jarring and clicky language developed and used by Vasilissans, it is designed for use with mouthparts and as a result has become a common language for various arthropod species." + speech_verb = "clicks" + ask_verb = "chitters" + exclaim_verb = "rasps" + colour = "bug" + key = "x" + syllables = list("vaur","uyek","uyit","avek","sc'theth","k'ztak","teth","wre'ge","lii","dra'","zo'","ra'","kax'","zz","vh","ik","ak", + "uhk","zir","sc'orth","sc'er","thc'yek","th'zirk","th'esk","k'ayek","ka'mil","sc'","ik'yir","yol","kig","k'zit","'","'","zrk","krg","isk'yet","na'k", + "sc'azz","th'sc","nil","n'ahk","sc'yeth","aur'sk","iy'it","azzg","a'","i'","o'","u'","a","i","o","u","zz","kr","ak","nrk","tzzk","bz","xic'","k'lax'","histh") /datum/language/unathi flags = 0 diff --git a/code/modules/mob/living/carbon/human/examine_vr.dm b/code/modules/mob/living/carbon/human/examine_vr.dm index 44488ae319..fd6a426447 100644 --- a/code/modules/mob/living/carbon/human/examine_vr.dm +++ b/code/modules/mob/living/carbon/human/examine_vr.dm @@ -113,7 +113,7 @@ message = "[t_He] [t_is] engorged with a huge stomach that sags and wobbles as they move. [t_He] must have consumed at least twice their body weight. It looks incredibly soft.\n" if(3005 to 4074) // Three people. message = "[t_His] stomach is firmly packed with digesting slop. [t_He] must have eaten at least a few times worth their body weight! It looks hard for them to stand, and [t_his] gut jiggles when they move.\n" - if(4075 to 10000) // Four or more people. + if(4075 to INFINITY) // Four or more people. message = "[t_He] [t_is] so absolutely stuffed that you aren't sure how it's possible to move. [t_He] can't seem to swell any bigger. The surface of [t_his] belly looks sorely strained!\n" return message diff --git a/code/modules/mob/living/carbon/human/life_vr.dm b/code/modules/mob/living/carbon/human/life_vr.dm index 1dc37ff8cc..46476a636a 100644 --- a/code/modules/mob/living/carbon/human/life_vr.dm +++ b/code/modules/mob/living/carbon/human/life_vr.dm @@ -1,5 +1,5 @@ /mob/living/carbon/human/proc/weightgain() - if (nutrition > 0 && stat != 2) + if (nutrition >= 0 && stat != 2) if (nutrition > MIN_NUTRITION_TO_GAIN && weight < MAX_MOB_WEIGHT && weight_gain) weight += species.metabolism*(0.01*weight_gain) @@ -28,15 +28,16 @@ holder.icon_state = "hudblank" - for(var/obj/item/weapon/implant/I in src) - if(I.implanted) - if(istype(I,/obj/item/weapon/implant/backup)) - if(!mind) - holder.icon_state = "hud_backup_nomind" - else if(!(mind.name in SStranscore.body_scans)) - holder.icon_state = "hud_backup_nobody" - else - holder.icon_state = "hud_backup_norm" + for(var/obj/item/organ/external/E in organs) + for(var/obj/item/weapon/implant/I in E.implants) + if(I.implanted) + if(istype(I,/obj/item/weapon/implant/backup)) + if(!mind) + holder.icon_state = "hud_backup_nomind" + else if(!(mind.name in SStranscore.body_scans)) + holder.icon_state = "hud_backup_nobody" + else + holder.icon_state = "hud_backup_norm" apply_hud(BACKUP_HUD, holder) @@ -67,6 +68,8 @@ M.nutrition -= M.species.hunger_factor/10 if(M.m_intent == "run") M.nutrition -= M.species.hunger_factor/10 + if(M.nutrition < 0) + M.nutrition = 0 else src.nutrition -= DEFAULT_HUNGER_FACTOR/10 if(src.m_intent == "run") diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm index 6ecb93e295..d3a50f3755 100644 --- a/code/modules/mob/living/carbon/human/species/species.dm +++ b/code/modules/mob/living/carbon/human/species/species.dm @@ -61,7 +61,7 @@ // The languages the species can't speak without an assisted organ. // This list is a guess at things that no one other than the parent species should be able to speak - var/list/assisted_langs = list(LANGUAGE_EAL, LANGUAGE_TERMINUS, LANGUAGE_SKRELLIAN, LANGUAGE_SKRELLIANFAR, LANGUAGE_ROOTLOCAL, LANGUAGE_ROOTGLOBAL, LANGUAGE_VOX) + var/list/assisted_langs = list(LANGUAGE_EAL, LANGUAGE_SKRELLIAN, LANGUAGE_SKRELLIANFAR, LANGUAGE_ROOTLOCAL, LANGUAGE_ROOTGLOBAL, LANGUAGE_VOX) //VOREStation Edit //Soundy emotey things. var/scream_verb = "screams" diff --git a/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm index f234244240..1857e59bcd 100644 --- a/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm @@ -323,7 +323,7 @@ burn_mod = 1.15 //15% burn damage increase. They're spiders. Aerosol can+lighter = dead spiders. num_alternate_languages = 2 - secondary_langs = list("Sol Common") + secondary_langs = list(LANGUAGE_VESPINAE) color_mult = 1 tail = "tail" //Spider tail. icobase_tail = 1 diff --git a/code/modules/mob/living/carbon/human/species/station/station_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_vr.dm index 58cf208d0e..2a6c9878f1 100644 --- a/code/modules/mob/living/carbon/human/species/station/station_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/station_vr.dm @@ -77,6 +77,7 @@ name_language = LANGUAGE_SKRELLIAN color_mult = 1 inherent_verbs = list(/mob/living/proc/shred_limb) + assisted_langs = list(LANGUAGE_EAL, LANGUAGE_ROOTLOCAL, LANGUAGE_ROOTGLOBAL, LANGUAGE_VOX) min_age = 18 max_age = 80 @@ -327,6 +328,7 @@ color_mult = 1 min_age = 18 reagent_tag = null + assisted_langs = list(LANGUAGE_EAL, LANGUAGE_ROOTLOCAL, LANGUAGE_ROOTGLOBAL, LANGUAGE_VOX) /datum/species/diona spawn_flags = SPECIES_CAN_JOIN | SPECIES_IS_WHITELISTED diff --git a/code/modules/mob/living/carbon/human/species/station/traits_vr/negative.dm b/code/modules/mob/living/carbon/human/species/station/traits_vr/negative.dm index 20db108099..402c1928dd 100644 --- a/code/modules/mob/living/carbon/human/species/station/traits_vr/negative.dm +++ b/code/modules/mob/living/carbon/human/species/station/traits_vr/negative.dm @@ -90,12 +90,6 @@ cost = -2 var_changes = list("siemens_coefficient" = 2.0) //This makes you extremely weak to tasers. -/datum/trait/photosensitive - name = "Photosensitive" - desc = "Increases stun duration from flashes and other light-based stuns." - cost = -1 - var_changes = list("flash_mod" = 2.0) - /datum/trait/hollow name = "Hollow Bones/Aluminum Alloy" desc = "Your bones and robot limbs are much easier to break." diff --git a/code/modules/mob/living/carbon/human/species/station/traits_vr/positive.dm b/code/modules/mob/living/carbon/human/species/station/traits_vr/positive.dm index 44238cc16a..a415469215 100644 --- a/code/modules/mob/living/carbon/human/species/station/traits_vr/positive.dm +++ b/code/modules/mob/living/carbon/human/species/station/traits_vr/positive.dm @@ -42,13 +42,13 @@ name = "Darksight" desc = "Allows you to see a short distance in the dark." cost = 1 - var_changes = list("darksight" = 3) + var_changes = list("darksight" = 3, "flash_mod" = 2.0) /datum/trait/darksight_plus name = "Darksight (Major)" desc = "Allows you to see in the dark for the whole screen." cost = 2 - var_changes = list("darksight" = 7) + var_changes = list("darksight" = 7, "flash_mod" = 3.0) /datum/trait/melee_attack name = "Sharp Melee" diff --git a/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm b/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm index 360c805e04..934db0a1ed 100644 --- a/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm +++ b/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm @@ -60,6 +60,9 @@ return if(compactor) + if(is_type_in_list(target,item_vore_blacklist)) + to_chat(user, "You are hard-wired to not ingest this item.") + return if(istype(target, /obj/item) || istype(target, /obj/effect/decal/remains)) var/obj/target_obj = target if(target_obj.w_class > ITEMSIZE_LARGE) @@ -224,7 +227,7 @@ dat += "Cargo compartment slot: Fuel.
" dat += "([list2text(contents - (deliveryslot_1 + deliveryslot_2 + deliveryslot_3),", ")])

" - if(analyzer && synced) + if(analyzer && !synced) dat += "Sync Files
" //Cleaning and there are still un-preserved items @@ -666,4 +669,4 @@ desc = "A mounted cargo bay unit for tagged deliveries." icon_state = "decompiler" max_item_count = 20 - delivery = TRUE \ No newline at end of file + delivery = TRUE diff --git a/code/modules/mob/living/silicon/robot/robot_vr.dm b/code/modules/mob/living/silicon/robot/robot_vr.dm index 332fabb19f..e453f4c595 100644 --- a/code/modules/mob/living/silicon/robot/robot_vr.dm +++ b/code/modules/mob/living/silicon/robot/robot_vr.dm @@ -29,7 +29,14 @@ "mechoid-Service", "mechoid-Janitor", "mechoid-Combat", - "mechoid-Combat-roll" + "mechoid-Combat-roll", + "Noble-CLN", + "Noble-SRV", + "Noble-DIG", + "Noble-MED", + "Noble-SEC", + "Noble-ENG", + "Noble-STD" ) //List of all used sprites that are in robots_vr.dmi @@ -133,13 +140,7 @@ only_one_driver = TRUE // If true, only the person in 'front' (first on list of riding mobs) can drive. /datum/riding/dogborg/handle_vehicle_layer() - if(ridden.has_buckled_mobs()) - if(ridden.dir != NORTH) - ridden.layer = ABOVE_MOB_LAYER - else - ridden.layer = initial(ridden.layer) - else - ridden.layer = initial(ridden.layer) + ridden.layer = initial(ridden.layer) /datum/riding/dogborg/ride_check(mob/living/M) var/mob/living/L = ridden @@ -158,10 +159,10 @@ var/scale = L.size_multiplier var/list/values = list( - "[NORTH]" = list(0, 8*scale, ABOVE_MOB_LAYER), - "[SOUTH]" = list(0, 8*scale, BELOW_MOB_LAYER), - "[EAST]" = list(-5*scale, 8*scale, ABOVE_MOB_LAYER), - "[WEST]" = list(5*scale, 8*scale, ABOVE_MOB_LAYER)) + "[NORTH]" = list(0, 10*scale, ABOVE_MOB_LAYER), + "[SOUTH]" = list(0, 10*scale, BELOW_MOB_LAYER), + "[EAST]" = list(-5*scale, 10*scale, ABOVE_MOB_LAYER), + "[WEST]" = list(5*scale, 10*scale, ABOVE_MOB_LAYER)) return values @@ -172,7 +173,7 @@ buckle_movable = TRUE buckle_lying = FALSE -/mob/living/silicon/robot/New() +/mob/living/silicon/robot/New(loc,var/unfinished = 0) ..() riding_datum = new /datum/riding/dogborg(src) diff --git a/code/modules/mob/living/simple_animal/simple_animal_vr.dm b/code/modules/mob/living/simple_animal/simple_animal_vr.dm index 37ed5a6bf0..a116a9cf0e 100644 --- a/code/modules/mob/living/simple_animal/simple_animal_vr.dm +++ b/code/modules/mob/living/simple_animal/simple_animal_vr.dm @@ -33,6 +33,9 @@ var/vore_icons = 0 // Bitfield for which fields we have vore icons for. var/life_disabled = 0 // For performance reasons + var/mount_offset_x = 5 // Horizontal riding offset. + var/mount_offset_y = 8 // Vertical riding offset + // Release belly contents before being gc'd! /mob/living/simple_mob/Destroy() release_vore_contents() @@ -243,3 +246,89 @@ if(a_intent == I_GRAB && isliving(A) && !has_hands) animal_nom(A) + +// Riding +/datum/riding/simple_animal + keytype = /obj/item/weapon/material/twohanded/fluff/riding_crop // Crack! + nonhuman_key_exemption = FALSE // If true, nonhumans who can't hold keys don't need them, like borgs and simplemobs. + key_name = "a riding crop" // What the 'keys' for the thing being rided on would be called. + only_one_driver = TRUE // If true, only the person in 'front' (first on list of riding mobs) can drive. + +/datum/riding/simple_animal/handle_vehicle_layer() + ridden.layer = initial(ridden.layer) + +/datum/riding/simple_animal/ride_check(mob/living/M) + var/mob/living/L = ridden + if(L.stat) + force_dismount(M) + return FALSE + return TRUE + +/datum/riding/simple_animal/force_dismount(mob/M) + . =..() + ridden.visible_message("[M] stops riding [ridden]!") + +/datum/riding/simple_animal/get_offsets(pass_index) // list(dir = x, y, layer) + var/mob/living/simple_animal/L = ridden + var/scale = L.size_multiplier + + var/list/values = list( + "[NORTH]" = list(0, L.mount_offset_y*scale, ABOVE_MOB_LAYER), + "[SOUTH]" = list(0, L.mount_offset_y*scale, BELOW_MOB_LAYER), + "[EAST]" = list(-L.mount_offset_x*scale, L.mount_offset_y*scale, ABOVE_MOB_LAYER), + "[WEST]" = list(L.mount_offset_x*scale, L.mount_offset_y*scale, ABOVE_MOB_LAYER)) + + return values + +/mob/living/simple_animal/buckle_mob(mob/living/M, forced = FALSE, check_loc = TRUE) + if(forced) + return ..() // Skip our checks + if(!riding_datum) + return FALSE + if(lying) + return FALSE + if(!ishuman(M)) + return FALSE + if(M in buckled_mobs) + return FALSE + if(M.size_multiplier > size_multiplier * 1.2) + to_chat(src,"This isn't a pony show! You need to be bigger for them to ride.") + return FALSE + + var/mob/living/carbon/human/H = M + + if(H.loc != src.loc) + if(H.Adjacent(src)) + H.forceMove(get_turf(src)) + + . = ..() + if(.) + buckled_mobs[H] = "riding" + +/mob/living/simple_animal/attack_hand(mob/user as mob) + if(riding_datum && LAZYLEN(buckled_mobs)) + //We're getting off! + if(user in buckled_mobs) + riding_datum.force_dismount(user) + //We're kicking everyone off! + if(user == src) + for(var/rider in buckled_mobs) + riding_datum.force_dismount(rider) + else + . = ..() + +/mob/living/simple_animal/proc/animal_mount(var/mob/living/M in living_mobs(1)) + set name = "Animal Mount/Dismount" + set category = "Abilities" + set desc = "Let people ride on you." + + if(LAZYLEN(buckled_mobs)) + for(var/rider in buckled_mobs) + riding_datum.force_dismount(rider) + return + if (stat != CONSCIOUS) + return + if(!can_buckle || !istype(M) || !M.Adjacent(src) || M.buckled) + return + if(buckle_mob(M)) + visible_message("[M] starts riding [name]!") diff --git a/code/modules/mob/living/simple_animal/vore/corrupt_hounds.dm b/code/modules/mob/living/simple_animal/vore/corrupt_hounds.dm index d534205f7e..bbf9c9f9d9 100644 --- a/code/modules/mob/living/simple_animal/vore/corrupt_hounds.dm +++ b/code/modules/mob/living/simple_animal/vore/corrupt_hounds.dm @@ -49,6 +49,11 @@ minbodytemp = 150 maxbodytemp = 900 + max_buckled_mobs = 1 //Yeehaw + can_buckle = TRUE + buckle_movable = TRUE + buckle_lying = FALSE + var/image/eye_layer = null @@ -114,3 +119,12 @@ remove_eyes() if(stat == CONSCIOUS && !resting) add_eyes() + +/mob/living/simple_animal/hostile/corrupthound/Login() + . = ..() + if(!riding_datum) + riding_datum = new /datum/riding/simple_animal(src) + verbs |= /mob/living/simple_animal/proc/animal_mount + +/mob/living/simple_animal/hostile/corrupthound/MouseDrop_T(mob/living/M, mob/living/user) + return \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/vore/deathclaw.dm b/code/modules/mob/living/simple_animal/vore/deathclaw.dm index 4497e8b6eb..e015c07b9e 100644 --- a/code/modules/mob/living/simple_animal/vore/deathclaw.dm +++ b/code/modules/mob/living/simple_animal/vore/deathclaw.dm @@ -22,6 +22,13 @@ pixel_x = -16 pixel_y = 0 + max_buckled_mobs = 1 //Yeehaw + can_buckle = TRUE + buckle_movable = TRUE + buckle_lying = FALSE + mount_offset_x = 5 + mount_offset_y = 30 + // Activate Noms! /mob/living/simple_mob/hostile/deathclaw vore_active = 1 @@ -30,3 +37,12 @@ vore_min_size = RESIZE_SMALL vore_pounce_chance = 0 // Beat them into crit before eating. vore_icons = SA_ICON_LIVING + +/mob/living/simple_animal/hostile/deathclaw/Login() + . = ..() + if(!riding_datum) + riding_datum = new /datum/riding/simple_animal(src) + verbs |= /mob/living/simple_animal/proc/animal_mount + +/mob/living/simple_animal/hostile/deathclaw/MouseDrop_T(mob/living/M, mob/living/user) + return \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/vore/dragon.dm b/code/modules/mob/living/simple_animal/vore/dragon.dm index 3e6493d56d..10934e4b38 100644 --- a/code/modules/mob/living/simple_animal/vore/dragon.dm +++ b/code/modules/mob/living/simple_animal/vore/dragon.dm @@ -49,3 +49,12 @@ maxHealth = 200 health = 200 faction = "virgo3b" + +/mob/living/simple_animal/hostile/dragon/Login() + . = ..() + if(!riding_datum) + riding_datum = new /datum/riding/simple_animal(src) + verbs |= /mob/living/simple_animal/proc/animal_mount + +/mob/living/simple_animal/hostile/dragon/MouseDrop_T(mob/living/M, mob/living/user) + return \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/vore/hippo.dm b/code/modules/mob/living/simple_animal/vore/hippo.dm index b18d14f7ef..4366395d38 100644 --- a/code/modules/mob/living/simple_animal/vore/hippo.dm +++ b/code/modules/mob/living/simple_animal/vore/hippo.dm @@ -49,6 +49,12 @@ meat_amount = 10 //Infinite meat! meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + max_buckled_mobs = 1 //Yeehaw + can_buckle = TRUE + buckle_movable = TRUE + buckle_lying = FALSE + mount_offset_y = 20 + // Activate Noms! /mob/living/simple_mob/retaliate/hippo //I don't know why it's in a seperate line but everyone does it so i do it vore_active = 1 @@ -64,3 +70,12 @@ vore_stomach_name = "rumen" //First stomach of a ruminant. It's where the pre digestion bacteria stuff happens. Very warm. vore_stomach_flavor = "You are squeezed into the sweltering insides of the herbivore rumen." vore_icons = SA_ICON_LIVING + +/mob/living/simple_animal/retaliate/hippo/Login() + . = ..() + if(!riding_datum) + riding_datum = new /datum/riding/simple_animal(src) + verbs |= /mob/living/simple_animal/proc/animal_mount + +/mob/living/simple_animal/retaliate/hippo/MouseDrop_T(mob/living/M, mob/living/user) + return \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/vore/horse.dm b/code/modules/mob/living/simple_animal/vore/horse.dm index f9bada661f..9332ae043c 100644 --- a/code/modules/mob/living/simple_animal/vore/horse.dm +++ b/code/modules/mob/living/simple_animal/vore/horse.dm @@ -31,7 +31,22 @@ meat_amount = 4 meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + max_buckled_mobs = 1 //Yeehaw + can_buckle = TRUE + buckle_movable = TRUE + buckle_lying = FALSE + mount_offset_x = 0 + // Activate Noms! /mob/living/simple_mob/horse vore_active = 1 vore_icons = SA_ICON_LIVING + +/mob/living/simple_animal/horse/Login() + . = ..() + if(!riding_datum) + riding_datum = new /datum/riding/simple_animal(src) + verbs |= /mob/living/simple_animal/proc/animal_mount + +/mob/living/simple_animal/horse/MouseDrop_T(mob/living/M, mob/living/user) + return \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/vore/otie.dm b/code/modules/mob/living/simple_animal/vore/otie.dm index f7d7dbbf8e..c837ea7b12 100644 --- a/code/modules/mob/living/simple_animal/vore/otie.dm +++ b/code/modules/mob/living/simple_animal/vore/otie.dm @@ -46,6 +46,12 @@ pixel_x = -16 pixel_y = 0 + max_buckled_mobs = 1 //Yeehaw + can_buckle = TRUE + buckle_movable = TRUE + buckle_lying = FALSE + mount_offset_y = 10 + var/glowyeyes = FALSE var/image/eye_layer = null var/eyetype @@ -382,4 +388,13 @@ /mob/living/simple_mob/otie/death(gibbed, deathmessage = "dies!") .=..() resting = 0 - icon_state = icon_dead \ No newline at end of file + icon_state = icon_dead + +/mob/living/simple_animal/otie/Login() + . = ..() + if(!riding_datum) + riding_datum = new /datum/riding/simple_animal(src) + verbs |= /mob/living/simple_animal/proc/animal_mount + +/mob/living/simple_animal/otie/MouseDrop_T(mob/living/M, mob/living/user) + return \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/vore/panther.dm b/code/modules/mob/living/simple_animal/vore/panther.dm index 82e4b1e344..fb992e49ed 100644 --- a/code/modules/mob/living/simple_animal/vore/panther.dm +++ b/code/modules/mob/living/simple_animal/vore/panther.dm @@ -27,9 +27,24 @@ pixel_x = -16 pixel_y = 0 + max_buckled_mobs = 1 //Yeehaw + can_buckle = TRUE + buckle_movable = TRUE + buckle_lying = FALSE + mount_offset_y = 12 + // Activate Noms! /mob/living/simple_mob/hostile/panther vore_active = 1 vore_capacity = 2 vore_pounce_chance = 10 vore_icons = SA_ICON_LIVING | SA_ICON_REST + +/mob/living/simple_animal/hostile/panther/Login() + . = ..() + if(!riding_datum) + riding_datum = new /datum/riding/simple_animal(src) + verbs |= /mob/living/simple_animal/proc/animal_mount + +/mob/living/simple_animal/hostile/panther/MouseDrop_T(mob/living/M, mob/living/user) + return \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/vore/rat.dm b/code/modules/mob/living/simple_animal/vore/rat.dm index 8a865faea7..7cdd2c3bfd 100644 --- a/code/modules/mob/living/simple_animal/vore/rat.dm +++ b/code/modules/mob/living/simple_animal/vore/rat.dm @@ -36,6 +36,12 @@ pixel_x = -16 pixel_y = 0 + max_buckled_mobs = 1 //Yeehaw + can_buckle = TRUE + buckle_movable = TRUE + buckle_lying = FALSE + mount_offset_y = 10 + vore_active = TRUE vore_capacity = 1 vore_pounce_chance = 45 @@ -159,3 +165,12 @@ /mob/living/simple_mob/hostile/rat/death() playsound(src, 'sound/effects/mouse_squeak_loud.ogg', 50, 1) ..() + +/mob/living/simple_animal/hostile/rat/Login() + . = ..() + if(!riding_datum) + riding_datum = new /datum/riding/simple_animal(src) + verbs |= /mob/living/simple_animal/proc/animal_mount + +/mob/living/simple_animal/hostile/rat/MouseDrop_T(mob/living/M, mob/living/user) + return \ No newline at end of file diff --git a/code/modules/mob/new_player/sprite_accessories.dm b/code/modules/mob/new_player/sprite_accessories.dm index 3835bbb144..3a0499b7b2 100644 --- a/code/modules/mob/new_player/sprite_accessories.dm +++ b/code/modules/mob/new_player/sprite_accessories.dm @@ -750,9 +750,14 @@ icon_state = "hair_belenkotied" flags = HAIR_TIEABLE - belenkotied - name = "Supernova" - icon_state = "hair_supernova" + glossy + name = "Glossy" + icon_state = "hair_glossy" + flags = HAIR_TIEABLE + + sharpponytail + name = "Sharp Ponytail" + icon_state = "hair_sharpponytail" flags = HAIR_TIEABLE /* diff --git a/code/modules/projectiles/ammunition/magazines_vr.dm b/code/modules/projectiles/ammunition/magazines_vr.dm new file mode 100644 index 0000000000..56221e2dde --- /dev/null +++ b/code/modules/projectiles/ammunition/magazines_vr.dm @@ -0,0 +1,3 @@ +/obj/item/ammo_magazine/m9mm/large/preban/hp // Hollow Point Version + name = "magazine (9mm hollow-point)" + ammo_type = /obj/item/ammo_casing/a9mm/hp \ No newline at end of file diff --git a/code/modules/projectiles/ammunition/rounds.dm b/code/modules/projectiles/ammunition/rounds.dm index 406dbcae88..e87c91409d 100644 --- a/code/modules/projectiles/ammunition/rounds.dm +++ b/code/modules/projectiles/ammunition/rounds.dm @@ -92,6 +92,11 @@ projectile_type = /obj/item/projectile/bullet/pistol/ap matter = list(DEFAULT_WALL_MATERIAL = 80) +/obj/item/ammo_casing/a9mm/hp + desc = "A 9mm hollow-point bullet casing." + projectile_type = /obj/item/projectile/bullet/pistol/hp + + /obj/item/ammo_casing/a9mm/flash desc = "A 9mm flash shell casing." icon_state = "r-casing" @@ -149,7 +154,7 @@ /obj/item/ammo_casing/a45/hp desc = "A .45 hollow-point bullet casing." - projectile_type = /obj/item/projectile/bullet/pistol/medium/hollow + projectile_type = /obj/item/projectile/bullet/pistol/medium/hp /* * 10mm @@ -265,7 +270,7 @@ /obj/item/ammo_casing/a762/hp desc = "A 7.62mm hollow-point bullet casing." - projectile_type = /obj/item/projectile/bullet/rifle/a762/hollow + projectile_type = /obj/item/projectile/bullet/rifle/a762/hp /obj/item/ammo_casing/a762/hunter desc = "A 7.62mm hunting bullet casing." @@ -311,7 +316,7 @@ /obj/item/ammo_casing/a545/hp desc = "A 5.45mm hollow-point bullet casing." - projectile_type = /obj/item/projectile/bullet/rifle/a545/hollow + projectile_type = /obj/item/projectile/bullet/rifle/a545/hp /obj/item/ammo_casing/a545/hunter desc = "A 5.45mm hunting bullet casing." diff --git a/code/modules/projectiles/guns/energy/netgun_vr.dm b/code/modules/projectiles/guns/energy/netgun_vr.dm index 8678d2c5dc..3e82aef282 100644 --- a/code/modules/projectiles/guns/energy/netgun_vr.dm +++ b/code/modules/projectiles/guns/energy/netgun_vr.dm @@ -1,6 +1,6 @@ /obj/item/weapon/gun/energy/netgun - name = "\improper KHI \"Hunter\" capture gun" - desc = "A Kitsuhana-designed 'non-lethal capture device' stunner and energy net launcher, \ + name = "energy net gun" + desc = "A Kitsuhana-designed, usually dubbed 'Hunter' or 'non-lethal capture device' stunner and energy net launcher, \ for when you want criminals to stop acting like they're on a 20th century British comedy sketch show." icon = 'icons/obj/gun_vr.dmi' icon_state = "hunter" diff --git a/code/modules/projectiles/guns/projectile/pistol_vr.dm b/code/modules/projectiles/guns/projectile/pistol_vr.dm index e7e369cebf..7a76b12552 100644 --- a/code/modules/projectiles/guns/projectile/pistol_vr.dm +++ b/code/modules/projectiles/guns/projectile/pistol_vr.dm @@ -6,4 +6,7 @@ /obj/item/weapon/gun/projectile/p92x/large/preban icon_state = "p92x-brown" - magazine_type = /obj/item/ammo_magazine/m9mm/large/preban // Spawns with big magazines that are legal. \ No newline at end of file + magazine_type = /obj/item/ammo_magazine/m9mm/large/preban // Spawns with big magazines that are legal. + +/obj/item/weapon/gun/projectile/p92x/large/preban/hp + magazine_type = /obj/item/ammo_magazine/m9mm/large/preban/hp // Spawns with legal hollow-point mag \ No newline at end of file diff --git a/code/modules/projectiles/projectile/bullets.dm b/code/modules/projectiles/projectile/bullets.dm index e4b7241bb0..ed16105939 100644 --- a/code/modules/projectiles/projectile/bullets.dm +++ b/code/modules/projectiles/projectile/bullets.dm @@ -64,38 +64,43 @@ /* short-casing projectiles, like the kind used in pistols or SMGs */ -/obj/item/projectile/bullet/pistol - fire_sound = 'sound/weapons/gunshot/gunshot_pistol.ogg' +/obj/item/projectile/bullet/pistol // 9mm pistols and most SMGs. Sacrifice power for capacity. + fire_sound = 'sound/weapons/gunshot/gunshot_pistol.ogg' // ToDo: Different shot sounds for different strength pistols. -Ace damage = 20 /obj/item/projectile/bullet/pistol/ap damage = 15 armor_penetration = 30 -/obj/item/projectile/bullet/pistol/medium +/obj/item/projectile/bullet/pistol/hp + damage = 25 + armor_penetration = -50 + +/obj/item/projectile/bullet/pistol/medium // .45 (and maybe .40 if it ever gets added) caliber security pistols. Balance between capacity and power. + // fire_sound = 'sound/weapons/gunshot3.ogg' // ToDo: Different shot sounds for different strength pistols. damage = 25 /obj/item/projectile/bullet/pistol/medium/ap damage = 20 armor_penetration = 15 -/obj/item/projectile/bullet/pistol/medium/hollow +/obj/item/projectile/bullet/pistol/medium/hp damage = 30 armor_penetration = -50 -/obj/item/projectile/bullet/pistol/strong //revolvers and matebas - fire_sound = 'sound/weapons/gunshot/gunshot_strong.ogg' +/obj/item/projectile/bullet/pistol/strong // .357 and .44 caliber stuff. High power pistols like the Mateba or Desert Eagle. Sacrifice capacity for power. + fire_sound = 'sound/weapons/gunshot/gunshot_strong.ogg' // ToDo: Replace with something less ugly. I recommend weapons/gunshot3.ogg damage = 60 -/obj/item/projectile/bullet/pistol/rubber/strong //"rubber" bullets for revolvers and matebas - fire_sound = 'sound/weapons/gunshot/gunshot_strong.ogg' +/obj/item/projectile/bullet/pistol/rubber/strong // "Rubber" bullets for high power pistols. + fire_sound = 'sound/weapons/gunshot/gunshot_strong.ogg' // ToDo: Same as above. damage = 10 agony = 60 embed_chance = 0 sharp = 0 check_armour = "melee" -/obj/item/projectile/bullet/pistol/rubber //"rubber" bullets +/obj/item/projectile/bullet/pistol/rubber // "Rubber" bullets for all other pistols. name = "rubber bullet" damage = 5 agony = 40 @@ -167,7 +172,7 @@ damage = 30 armor_penetration = 50 // At 30 or more armor, this will do more damage than standard rounds. -/obj/item/projectile/bullet/rifle/a762/hollow +/obj/item/projectile/bullet/rifle/a762/hp damage = 40 armor_penetration = -50 penetrating = 0 @@ -184,7 +189,7 @@ damage = 20 armor_penetration = 50 // At 40 or more armor, this will do more damage than standard rounds. -/obj/item/projectile/bullet/rifle/a545/hollow +/obj/item/projectile/bullet/rifle/a545/hp damage = 35 armor_penetration = -50 penetrating = 0 diff --git a/code/modules/research/designs_vr.dm b/code/modules/research/designs_vr.dm index cc9b649b75..94fbb9ce09 100644 --- a/code/modules/research/designs_vr.dm +++ b/code/modules/research/designs_vr.dm @@ -13,6 +13,14 @@ materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 2000) build_path = /obj/item/weapon/implantcase/backup +/datum/design/item/implant/sizecontrol + name = "Size control implant" + id = "implant_size" + req_tech = list(TECH_MATERIAL = 3, TECH_BIO = 4, TECH_DATA = 4, TECH_ENGINEERING = 3) + materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 2000, "silver" = 3000) + build_path = /obj/item/weapon/implanter/sizecontrol + sort_string = "TAAAA" + /datum/design/item/weapon/sizegun name = "Size gun" id = "sizegun" diff --git a/code/modules/virus2/disease2.dm b/code/modules/virus2/disease2.dm index 3670f60bea..9c0c80c28d 100644 --- a/code/modules/virus2/disease2.dm +++ b/code/modules/virus2/disease2.dm @@ -88,6 +88,13 @@ else resistance += rand(1,9) + //VOREStation Add Start - Corophazine can treat higher stages + var/antibiotics = mob.chem_effects[CE_ANTIBIOTIC] + if(antibiotics == ANTIBIO_SUPER) + if(prob(70)) + src.cure(mob) + //VOREStation Add End + //Resistance is capped at 90 without being manually set to 100 if(resistance > 90 && resistance < 100) resistance = 90 diff --git a/code/modules/vore/appearance/sprite_accessories_taur_vr.dm b/code/modules/vore/appearance/sprite_accessories_taur_vr.dm index 6d0f63e95c..301d0841be 100644 --- a/code/modules/vore/appearance/sprite_accessories_taur_vr.dm +++ b/code/modules/vore/appearance/sprite_accessories_taur_vr.dm @@ -6,10 +6,7 @@ /datum/riding/taur/handle_vehicle_layer() if(ridden.has_buckled_mobs()) - if(ridden.dir != NORTH) - ridden.layer = ABOVE_MOB_LAYER - else - ridden.layer = initial(ridden.layer) + ridden.layer = initial(ridden.layer) else var/mob/living/L = ridden if(!(istype(L) && (L.status_flags & HIDING))) @@ -463,3 +460,12 @@ msg_owner_grab_fail = "You step down onto %prey with one of your vines, forcing them onto the ground!" msg_prey_grab_fail = "%owner steps down onto you with one of their vines, squishing you and forcing you onto the ground!" + +/datum/sprite_accessory/tail/taur/alraune/alraune_2c + name = "Alraune (dual color)" + icon_state = "alraunecolor_s" + ani_state = "alraunecolor_closed_s" + ckeys_allowed = null + do_colouration = 1 + extra_overlay = "alraunecolor_markings" + extra_overlay_w = "alraunecolor_closed_markings" \ No newline at end of file diff --git a/code/modules/vore/eating/contaminate_vr.dm b/code/modules/vore/eating/contaminate_vr.dm index 7d09d1e245..36ecb8f470 100644 --- a/code/modules/vore/eating/contaminate_vr.dm +++ b/code/modules/vore/eating/contaminate_vr.dm @@ -90,6 +90,9 @@ var/image/gurgled_overlay = image('icons/effects/sludgeoverlay_vr.dmi') digest_act(item_storage) //Digesting these anyway return TRUE +/obj/item/device/pda/gurgle_contaminate(var/atom/movable/item_storage = null) + return FALSE + /obj/item/weapon/reagent_containers/food/gurgle_contaminate(var/atom/movable/item_storage = null) digest_act(item_storage) return TRUE diff --git a/code/modules/vore/eating/digest_act_vr.dm b/code/modules/vore/eating/digest_act_vr.dm index f06cd1b741..b78a91146d 100644 --- a/code/modules/vore/eating/digest_act_vr.dm +++ b/code/modules/vore/eating/digest_act_vr.dm @@ -87,7 +87,8 @@ else if(isrobot(B.owner)) var/mob/living/silicon/robot/R = B.owner R.cell.charge += 150 - + qdel(src) + return w_class . = ..() /obj/item/weapon/holder/digest_act(var/atom/movable/item_storage = null) @@ -100,7 +101,11 @@ /obj/item/organ/digest_act(var/atom/movable/item_storage = null) if((. = ..())) - . += 70 //Organs give a little more + if(isbelly(item_storage)) + var/obj/belly/B = item_storage + . += 5 * (B.digest_brute + B.digest_burn) + else + . += 70 //Organs give a little more /obj/item/weapon/storage/digest_act(var/atom/movable/item_storage = null) for(var/obj/item/I in contents) @@ -117,4 +122,4 @@ // Gradual damage measurement /obj/item - var/digest_stage = null \ No newline at end of file + var/digest_stage = null diff --git a/code/modules/vore/eating/living_vr.dm b/code/modules/vore/eating/living_vr.dm index 98fac950aa..cb0b64ba13 100644 --- a/code/modules/vore/eating/living_vr.dm +++ b/code/modules/vore/eating/living_vr.dm @@ -458,9 +458,9 @@ // This is about 0.896m^3 of atmosphere /datum/gas_mixture/belly_air - volume = 1000 + volume = 2500 temperature = 293.150 - total_moles = 40 + total_moles = 104 /datum/gas_mixture/belly_air/New() . = ..() @@ -553,6 +553,10 @@ to_chat(src, "You are not holding anything.") return + if(is_type_in_list(I,item_vore_blacklist)) + to_chat(src, "You are not allowed to eat this.") + return + if(is_type_in_list(I,edible_trash)) if(I.hidden_uplink) to_chat(src, "You really should not be eating this.") diff --git a/code/modules/vore/fluffstuff/custom_boxes_vr.dm b/code/modules/vore/fluffstuff/custom_boxes_vr.dm index 68a31f06c9..ba0e72238c 100644 --- a/code/modules/vore/fluffstuff/custom_boxes_vr.dm +++ b/code/modules/vore/fluffstuff/custom_boxes_vr.dm @@ -228,12 +228,13 @@ /obj/item/clothing/gloves/fluff/morsleeves, /obj/item/clothing/under/fluff/morunder) -// Mewchild: Phi Vietsi -/obj/item/weapon/storage/box/fluff/vietsi +// Mewchild: Phi Ahkeen +/obj/item/weapon/storage/box/fluff/phi name = "Phi's Personal Items" has_items = list( /obj/item/clothing/accessory/medal/bronze_heart, /obj/item/clothing/gloves/ring/seal/signet/fluff/vietsi) + /* //VORESTATION AI TEMPORARY REMOVAL // Tabiranth: Ascian /obj/item/weapon/grenade/spawnergrenade/spirit diff --git a/code/modules/vore/fluffstuff/custom_clothes_vr.dm b/code/modules/vore/fluffstuff/custom_clothes_vr.dm index 4658c2b0f5..17c734e240 100644 --- a/code/modules/vore/fluffstuff/custom_clothes_vr.dm +++ b/code/modules/vore/fluffstuff/custom_clothes_vr.dm @@ -780,6 +780,9 @@ /obj/item/clothing/head/fluff/pompom/digest_act(var/atom/movable/item_storage = null) return FALSE +/obj/item/clothing/head/fluff/pompom/gurgle_contaminate(var/atom/movable/item_storage = null) + return FALSE + /obj/item/clothing/head/fluff/pompom/attack_self(mob/user) //if(!isturf(user.loc)) -- doesn't seem to cause problems to allow this and it's silly not to // to_chat(user, "You cannot turn the light on while in this [user.loc]") @@ -1686,16 +1689,15 @@ Departamental Swimsuits, for general use icon_state = "kilanosuit_p" item_state = "kilanosuit_p" -//Mewchild: Phi Vietsi -/obj/item/clothing/gloves/ring/seal/signet/fluff/vietsi - name = "Phi Vietsi's Bone Signet Ring" - desc = "A signet ring belonging to Phi Vietsi, carved from the bones of something long extinct, as a ward against bad luck." - var/signet_name = "Phi Vietsi" +//Mewchild: Phi Ahkeen +/obj/item/clothing/gloves/ring/seal/signet/fluff/phi + name = "Phi's Bone Signet Ring" + desc = "A signet ring belonging to Phi, carved from the bones of something long extinct, as a ward against bad luck." icon = 'icons/vore/custom_clothes_vr.dmi' - icon_state = "vietsi_ring" + icon_state = "phi_ring" -/obj/item/clothing/gloves/ring/seal/signet/fluff/vietsi/change_name(var/signet_name = "Unknown") +/obj/item/clothing/gloves/ring/seal/signet/fluff/phi/change_name(var/signet_name = "Unknown") name = "[signet_name]'s Bone Signet Ring" desc = "A signet ring belonging to [signet_name], carved from the bones of something long extinct, as a ward against bad luck." diff --git a/code/modules/vore/fluffstuff/custom_items_vr.dm b/code/modules/vore/fluffstuff/custom_items_vr.dm index cdd2bb770f..dbb99b910d 100644 --- a/code/modules/vore/fluffstuff/custom_items_vr.dm +++ b/code/modules/vore/fluffstuff/custom_items_vr.dm @@ -1948,3 +1948,9 @@ name = "nobel sciences award" desc = "A bronze medal which represents significant contributions to the field of science or engineering, this one has Ashley Kifer engraved on it." +//lm40 - Kenzie Houser +/obj/item/weapon/reagent_containers/hypospray/vial/kenzie + name = "gold-trimmed hypospray" + desc = "A gold-trimmed MKII hypospray. The name 'Kenzie Houser' is engraved on the side." + icon = 'icons/vore/custom_items_vr.dmi' + icon_state = "kenziehypo" \ No newline at end of file diff --git a/code/modules/vore/fluffstuff/guns/dominator.dm b/code/modules/vore/fluffstuff/guns/dominator.dm index 25ca2610f3..657ba95738 100644 --- a/code/modules/vore/fluffstuff/guns/dominator.dm +++ b/code/modules/vore/fluffstuff/guns/dominator.dm @@ -1,7 +1,7 @@ // -------------- Dominator ------------- /obj/item/weapon/gun/energy/gun/fluff/dominator - name = "\improper MWPSB Dominator" - desc = "A MWPSB's Dominator from the Federation. Like the basic Energy Gun, this gun has two settings. It is used by the United Federation Public Safety Bureau's Criminal Investigation Division. The weapon can only be fired by the owner and is alert-level locked." + name = "bulky energy gun" + desc = "A MWPSB Dominator from the Federation. Like the basic Energy Gun, this gun has two settings. It is used by the United Federation Public Safety Bureau's Criminal Investigation Division. The weapon can only be fired by the owner and is alert-level locked." icon = 'icons/vore/custom_guns_vr.dmi' icon_state = "dominatorstun100" diff --git a/code/modules/vore/fluffstuff/guns/gunsword.dm b/code/modules/vore/fluffstuff/guns/gunsword.dm index 63be249006..f6bb1a3026 100644 --- a/code/modules/vore/fluffstuff/guns/gunsword.dm +++ b/code/modules/vore/fluffstuff/guns/gunsword.dm @@ -1,6 +1,6 @@ /obj/item/weapon/gun/energy/gun/fluff/gunsword name = "Sword Buster" - desc = "A gun custom built using the science behind a Golden Empire pistol." + desc = "The Sword Buster gun is custom built using the science behind a Golden Empire pistol. The cell can be removed in close range and used as energy shortsword." icon = 'icons/vore/custom_guns_vr.dmi' icon_state = "gbuster100" diff --git a/code/modules/vore/fluffstuff/guns/nsfw.dm b/code/modules/vore/fluffstuff/guns/nsfw.dm index bc570697d6..a0c7d89196 100644 --- a/code/modules/vore/fluffstuff/guns/nsfw.dm +++ b/code/modules/vore/fluffstuff/guns/nsfw.dm @@ -1,7 +1,7 @@ // -------------- NSFW ------------- /obj/item/weapon/gun/projectile/nsfw - name = "KHI-102b \'NSFW\'" - desc = "Variety is the spice of life! The 'Nanotech Selectable-Fire Weapon' is an unholy hybrid of an ammo-driven \ + name = "cell-loaded revolver" + desc = "Variety is the spice of life! The KHI-102b 'Nanotech Selectable-Fire Weapon', or NSFW for short, is an unholy hybrid of an ammo-driven \ energy weapon that allows the user to mix and match their own fire modes. Up to three combinations of \ energy beams can be configured at once. Ammo not included." diff --git a/code/modules/vore/fluffstuff/guns/protector.dm b/code/modules/vore/fluffstuff/guns/protector.dm index 173c00b637..b1b39e6f2d 100644 --- a/code/modules/vore/fluffstuff/guns/protector.dm +++ b/code/modules/vore/fluffstuff/guns/protector.dm @@ -1,7 +1,7 @@ // -------------- Protector ------------- /obj/item/weapon/gun/energy/protector - name = "\improper KHI-98a \'Protector\'" - desc = "The KHI-98a is the first firearm custom-designed for Nanotrasen by KHI. It features a powerful stun mode, and \ + name = "small energy gun" + desc = "The KHI-98a 'Protector' is the first firearm custom-designed for Nanotrasen by KHI. It features a powerful stun mode, and \ an alert-level-locked lethal mode, only usable on code blue and higher. It also features an integrated flashlight!" description_info = "This gun can only be fired in lethal mode while on higher security alert levels. It is legal for sec to carry for this reason, since it cannot be used for lethal force until SOP allows it, in essence." diff --git a/code/modules/vore/fluffstuff/guns/pummeler.dm b/code/modules/vore/fluffstuff/guns/pummeler.dm index b12ce223e8..f3d6c546ee 100644 --- a/code/modules/vore/fluffstuff/guns/pummeler.dm +++ b/code/modules/vore/fluffstuff/guns/pummeler.dm @@ -1,7 +1,7 @@ // -------------- Pummeler ------------- /obj/item/weapon/gun/energy/pummeler - name = "\improper PML9 \'Pummeler\'" - desc = "For when you want to get that pesky marketing guy out of your face ASAP. The pummeler fires one HUGE \ + name = "hypersonic gun" + desc = "For when you want to get that pesky marketing guy out of your face ASAP. The PML9 'Pummeler' fires one HUGE \ sonic blast in the direction of fire, throwing the target away from you at high speed. Now you can REALLY \ turn up the bass to max." diff --git a/code/modules/vore/fluffstuff/guns/sickshot.dm b/code/modules/vore/fluffstuff/guns/sickshot.dm index ea0820a908..6afda74a9c 100644 --- a/code/modules/vore/fluffstuff/guns/sickshot.dm +++ b/code/modules/vore/fluffstuff/guns/sickshot.dm @@ -1,7 +1,7 @@ // -------------- Sickshot ------------- /obj/item/weapon/gun/energy/sickshot - name = "\improper MPA6 \'Sickshot\'" - desc = "Need to stun someone? Don't mind having to clean up the mess afterwards? The Sickshot is the answer to your prayers. \ + name = "\'Sickshot\' revolver" + desc = "Need to stun someone? Don't mind having to clean up the mess afterwards? The MPA6 'Sickshot' is the answer to your prayers. \ Using a short-range concentrated blast of disruptive sound, the Sickshot will nauseate and confuse the target for several seconds. NOTE: Not suitable \ for use in vacuum. Usage on animals may cause panic and rage without stunning. May cause contraction and release of various 'things' from various 'orifices', even if the target is already dead." @@ -44,7 +44,7 @@ var/mob/living/carbon/human/H = target H.vomit() H.Confuse(2) - + return 1 //R&D Design diff --git a/code/modules/xenoarcheaology/misc.dm b/code/modules/xenoarcheaology/misc.dm index 0f51e4fd77..b457e98984 100644 --- a/code/modules/xenoarcheaology/misc.dm +++ b/code/modules/xenoarcheaology/misc.dm @@ -65,6 +65,7 @@ /obj/item/clothing/under/rank/scientist, /obj/item/clothing/suit/storage/toggle/labcoat, /obj/item/clothing/shoes/white, + /obj/item/weapon/melee/umbrella, // vorestation addition, /obj/item/clothing/glasses/science, /obj/item/device/radio/headset/headset_sci, /obj/item/weapon/storage/belt/archaeology, diff --git a/code/stylesheet.dm b/code/stylesheet.dm index dd992a62bf..1a09a30f40 100644 --- a/code/stylesheet.dm +++ b/code/stylesheet.dm @@ -102,6 +102,7 @@ h1.alert, h2.alert {color: #000000;} .vulpkanin {color: #B97A57;} .enochian {color: #848A33; letter-spacing:-1pt; word-spacing:4pt; font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif;} .daemon {color: #5E339E; letter-spacing:-1pt; word-spacing:0pt; font-family: "Courier New", Courier, monospace;} +.bug {color: #9e9e39;} .vox {color: #AA00AA;} .rough {font-family: "Trebuchet MS", cursive, sans-serif;} .say_quote {font-family: Georgia, Verdana, sans-serif;} diff --git a/config/alienwhitelist.txt b/config/alienwhitelist.txt index 76f2a9b196..3db20fb9c1 100644 --- a/config/alienwhitelist.txt +++ b/config/alienwhitelist.txt @@ -1,3 +1,5 @@ +some~user - Species + admiraldragon - Vox aether_elemental - Daemon arokha - Protean @@ -16,6 +18,7 @@ ktccd - Diona mewchild - Diona mewchild - Vox natje - Xenochimera +oreganovulgaris - Xenochimera paradoxspace - Xenochimera rapidvalj - Vox rikaru19xjenkins - Xenomorph Hybrid @@ -29,8 +32,8 @@ silverTalismen - Diona silverTalismen - Vox silvertalismen - Xenochimera singo - Gutter -some~user - Species tastypred - Xenochimera +varonis - Xenochimera verkister - Xenochimera wickedtemp - Shadekin Empathy wtfismyname - Xenomorph Hybrid diff --git a/config/custom_items.txt b/config/custom_items.txt index 2291f4c410..dd83a67c10 100644 --- a/config/custom_items.txt +++ b/config/custom_items.txt @@ -177,6 +177,18 @@ character_name: Diana Kuznetsova item_path: /obj/item/clothing/head/fluff/pink_tiara } +{ +ckey: cross_exonar +character_name: Sari-U +item_path: /obj/item/weapon/disk/limb/eggnerdltd +} + +{ +ckey: cross_exonar +character_name: Sari-E +item_path: /obj/item/weapon/disk/limb/eggnerdltd +} + # ######## D CKEYS { ckey: deepindigo @@ -390,14 +402,14 @@ req_access = 3 { ckey: jertheace character_name: Jeremiah Acacius -item_path: /obj/item/weapon/gun/projectile/p92x/large/preban #Todo: Replace with HP version allowed in the application. +item_path: /obj/item/weapon/gun/projectile/p92x/large/preban/hp req_access = 3 } { ckey: jertheace character_name: Jeremiah Acacius -item_path: /obj/item/ammo_magazine/m9mm/large/preban #Spare ammo. #Todo: Replace with HP version allowed in the application. +item_path: /obj/item/ammo_magazine/m9mm/large/preban/hp #Spare ammo req_access = 3 } @@ -543,6 +555,13 @@ item_path: /obj/item/clothing/accessory/medal/nobel_science/fluff/ashley # ######## L CKEYS +{ +ckey: lm40 +character_name: Kenzie Houser +item_path: /obj/item/weapon/reagent_containers/hypospray/vial/kenzie +req_access: 5 +} + #Weapon Box. Permit Expired #{ #ckey: luminescentring @@ -565,8 +584,8 @@ item_path: /obj/item/weapon/implanter/reagent_generator/savannah # ######## M CKEYS { ckey: mewchild -character_name: Phi Vietsi -item_path: /obj/item/weapon/storage/box/fluff/vietsi +character_name: Phi Ahkeen +item_path: /obj/item/weapon/storage/box/fluff/phi } { @@ -845,6 +864,18 @@ character_name: Ascian item_path: /obj/item/clothing/accessory/medal/silver/unity } +{ +ckey: tabiranth +character_name: Ascian +item_path: /obj/item/weapon/grenade/spawnergrenade/spirit +} + +{ +ckey: tabiranth +character_name: Ascian +item_path: /obj/item/device/survivalcapsule/tabiranth +} + { ckey: techtypes character_name: Lasshseeki Korss @@ -863,12 +894,6 @@ character_name: Tony Bingham item_path: /obj/item/clothing/head/fluff/runac } -{ -ckey: tabiranth -character_name: Ascian -item_path: /obj/item/weapon/grenade/spawnergrenade/spirit -} - # ######## U CKEYS # ######## V CKEYS { diff --git a/config/names/first_female.txt b/config/names/first_female.txt index b500f027ef..3f8c53a7a9 100644 --- a/config/names/first_female.txt +++ b/config/names/first_female.txt @@ -306,7 +306,6 @@ Yolanda Ysabel Zelda Zune -Emma Isabella Emily Madison @@ -314,13 +313,11 @@ Ava Olivia Sophia Abigail -Elizabeth Chloe Samantha Addison Natalie Mia -Alexis Alyssa Hannah Ashley @@ -330,7 +327,6 @@ Grace Taylor Brianna Lily -Hailey Anna Victoria Kayla @@ -345,19 +341,13 @@ Sofia Makayla Avery Riley -Julia Leah -Aubrey -Jasmine Audrey Katherine Morgan Brooklyn Destiny -Sydney -Alexa Kylie -Brooke Kaitlyn Evelyn Layla @@ -379,7 +369,6 @@ Trinity Andrea Maya Valeria -Sophie Rachel Vanessa Aaliyah @@ -406,7 +395,6 @@ Zoey Gracie Megan Haley -Mya Michelle Molly Stephanie @@ -427,7 +415,6 @@ Rebecca Lydia Daniela Bella -Keira Adriana Lilly Hayden @@ -464,7 +451,6 @@ London Juliana Shelby Cheyenne -Angel Daisy Makenzie Miranda @@ -478,7 +464,6 @@ Mikayla Summer Piper Adrianna -Jillian Sierra Jayden Sienna @@ -493,7 +478,6 @@ Sabrina Stella Aniyah Annabelle -Alexandria Kathryn Skylar Aliyah @@ -501,7 +485,6 @@ Delilah Julianna Kelsey Khloe -Carly Amaya Mariana Christina @@ -516,7 +499,6 @@ Josephine Delaney Scarlett Elena -Cadence Alexia Maggie Laura @@ -543,7 +525,6 @@ Caitlin Kendra Karina Kyra -Kayleigh Addyson Kiara Jazmine @@ -554,11 +535,9 @@ Lola Kyla Kelly Fatima -Tiffany Kira Crystal Mallory -Esmeralda Alejandra Eleanor Angelica @@ -607,14 +586,12 @@ Lexi Camille Savanna Dulce -Daniella Lucia Emely Joselyn Kiley Kailey Miriam -Cynthia Rihanna Georgia Rylie @@ -652,7 +629,6 @@ Rose Malia Shayla Fiona -Phoebe Nayeli Paola Kaelyn @@ -675,8 +651,6 @@ Hanna Tatum Marlee Nataly -Helen -Janelle Lizbeth Serena Anya @@ -686,13 +660,11 @@ Jazlyn Nancy Lindsay Desiree -Hayley Itzel Imani Madelynn Asia Kadence -Madyson Talia Jane Kayden @@ -704,7 +676,6 @@ Jadyn Celeste Jimena Luna -Yasmin Emilia Annika Estrella @@ -718,7 +689,6 @@ Dayana Lilah Lilliana Natasha -Hadley Harley Priscilla Claudia @@ -753,7 +723,6 @@ Meredith Kailyn Lesly Johanna -Diamond Evangeline Juliet Kathleen @@ -786,22 +755,660 @@ Perla Amiyah Alyson Rachael -Shannon Aileen Miracle Lillie Danika -Heather Kassidy Taryn -Tori Francesca Kristen Amya -Elle Kristina Cheyanne Haylie Patricia -Anne -Samara \ No newline at end of file +Samara +Balina +Skiftere +Albana +Fatushe +Vilna +Hamia +Kalila +Noura +Shadia +Selima +Herri +Zwina +Tanit +Satna +Batti +Loula +Nuja +Kassu +Aketa +Pherenike +Cyrene +Megare +Hekaline +Axiothea +Atheer +Hamda +Hakeema +Nadeera +Farha +Nasreen +Arwa +Pilar +Gezana +Dukinea +Reyna +Gala +Cira +Violeta +Arpi +Noushig +Zabel +Nane +Arev +Asiah +Ishtar +Zaminy +Durna +Liboko +Mathe +Ratu +Nana +Ntsebo +Uraburu +Ino +Itzalle +Graziana +Ixone +Celien +Jente +Marianne +Floriane +Stefanie +Eloise +Anke +Dristi +Chitra +Geeta +Shila +Suravi +Rani +Ekta +Fullara +Anasuya +Manali +Annapurna +Vanita +Belma +Elmedina +Zineta +Habiba +Yi +Eka +Thi +New +Aye +Azah +Hapsatou +Aibell +Bethan +Carys +Branwyn +Alis +Gwen +Gwendolyn +Caitriona +Morag +Muireall +Khazan +Yahita +Yisa +Sovbika +Zheng +Liuxian +Chao +Ping +Yan +Hai +Ling +Min +Ru +Bao +Sanja +Gordana +Dorotea +Ruzena +Tatjana +Vilma +Dagmar +Blanka +Yvonne +Hertha +Lise +Liv +Randi +Ester +Ziba +Taban +Shireen +Yasaman +Karlien +Saar +Liene +Khat +Maat +Tauret +Sitra +Anta +Niut +Ankhi +Bennu +Anku +Sagira +Kakra +Safa +Masika +Salma +Aya +Nesma +Myrrh +Wynfride +Millicent +Sybell +Inna +Rebeka +Esta +Endla +Nanni +Awet +Sisay +Lakech +Jaana +Kirsi +Roosa +Saimi +Hilda +Berta +Rauna +Reeta +Kanerva +Germaine +Sabine +Laurette +Yvette +Mara +Elsbeth +Maike +Agatha +Nadja +Gerda +Thalia +Dora +Corinna +Lambrini +Vassia +Panagoita +Leena +Dayita +Purva +Hardi +Pani +Vedi +Lasya +Charvi +Yanina +Eliora +Shir +Ayelet +Fanya +Liza +Gaya +Zimra +Nehal +Ananya +Jyoti +Neha +Salani +Ruhi +Karnavati +Jaya +Padmini +Anu +Sa +Sua +Neng +True +Fridlin +Silfa +Iren +Iva +Tamara +Solny +Snaiborg +Dagny +Holmfridur +Hellveig +Thula +Hjalta +Alfdis +Freygerdur +Aldis +Thorhalla +Pala +Ingis +Grima +Telma +Yobanna +Kambiri +Adanna +Oluchi +Amachey +Mgbeke +Yuka +Koken +Chiho +Akae +Taka +Ritsuko +Hasumi +Tama +Yumako +Haniko +Kaori +Setsu +Shoken +Sakura +Sen +Tane +Yoshe +Imari +Cho +Jupar +Janna +Albina +Maira +Aru +Nazira +Aliya +Zubaira +Sang +Phan +Preap +Kim +Jey +Meang +Moul +Touch +Rous +Sok +Priti +Damini +Ihita +Amrita +Kalyani +Rashmi +Kunda +Vani +Sarika +Wacu +Nduta +Noni +Muthoni +Nyambura +Mukondi +Wandia +Magiri +Njoki +Mun +Ya +Noe +Kal +Pak +Ton +Wi +Fulcina +Vibia +Sextia +Cania +Modesta +Cordia +Lae +Moana +Oke +Lilo +Wanika +Kalena +Napua +Kalama +Alona +Kalia +Makani +Kawena +Lani +Halina +Asola +Salitia +Dianna +Denisa +Katre +Gaiva +Rima +Apollonia +Kornelia +Zofia +Vika +Anyang +Ambala +Apudo +Awuor +Naamah +Akoth +Atuku +Farhat +Aisyah +Jeelaan +Rihaab +Mayang +Meriam +Rona +Uruewa +Marama +Ruihi +Neni +Manewa +Tapu +Shefali +Vritika +Namita +Ena +Manisha +Akshata +Aaruni +Orbei +Temulun +Saran +Chagur +Ghoa +Aysha +Zaheda +Nezha +Ahlam +Fiza +Hafida +Saida +Awinita +Tuwa +Orenda +Pamuya +Tsomah +Hola +Washta +Yutu +Catori +Tablita +Kasa +Muna +Weeko +Minku +Seti +Sajal +Thaili +Rajani +Kopeela +Pratik +Erna +Sonja +Margrete +Turid +Evy +Tordis +Anette +Kristin +Elna +Malin +Bente +Frida +Magnhild +Astrid +Monika +Hamna +Yesim +Nira +Diba +Salwa +Arta +Nakisa +Sima +Tumay +Maryam +Soraya +Fariba +Pouri +Pari +Nikou +Soheila +Nasim +Hanieh +Shamsi +Nassim +Maja +Szarlota +Kinga +Marietta +Donata +Lidia +Luiza +Adelina +Josefina +Sonia +Salome +Dores +Amor +Bruna +Jassi +Avneet +Livnoor +Yasmine +Hir +Lakh +Shaminder +Mashaal +Ruza +Kostana +Esma +Masilda +Viollca +Lajaria +Tsura +Jeta +Vai +Melania +Teodora +Aurelia +Viorica +Dominique +Mariutza +Dumitra +Uta +Delia +Ylenia +Grusha +Galka +Valeriya +Lera +Mashka +Nelya +Feodora +Jelena +Sveta +Jenya +Lara +Matryosha +Matryona +Tina +Eseta +Emere +Pele +Svetlana +Stanislava +Jasna +Olga +Anka +Dragica +Bogdana +Bozena +Petra +Jaroslava +Jolana +Alena +Nikola +Sona +Vanda +Zawati +Tisa +Hawa +Jaha +Shauriana +Rashida +Koffi +Satsobek +Sigrid +Tilda +Oleana +Nelly +Kerstin +Britt +Maj +Siv +Siri +Agneta +Asgard +Rishmeka +Oppila +Rajanitha +Vyshu +Rabika +Shai +Nirai +Kayala +Mae +Yodman +Kwanjai +Praitun +Choi +Phajee +Sumana +Adak +Sevil +Gunes +Isil +Izel +Latife +Kieu +Minh +Le +Cat +Thu +Tien +Jofrid +Vigdis +Signy +Arnora +Fridgerd +Skuld +Brynhild +Bolla +Gyrd +Fastvi +Disai +Zena +Katha +Nith +Navpreet +Izula +Sihle +Ethwasa +Xolani +Thando +Neith +Zamani +Zinhle +Msizi +Amehlo +Fatiha +Aicha +Fatma +Khiera +Dalal +Gamalat +Hana +Rania +Milagrosa +Amahle +Lesedi +Reem +Aria +Noemi +Concepcion +Antonella +Aadya +Diya +Jing +Ying +Xiaoyan +Xinyi +Tingting +Tala +Rimas +Adi +Noam +Tamar +Yael +Zara +Seo +Shu +Althea +Kabita +Nor +Zeynep +Aura +Chastity +Rebel +Vixen +Zero +Nix +Wren +India +Pearl +Natuna +Dawn +Aditya +Mio +Discovery +Cas +Zee +Rewi +Lusia +Olympia +Freya +Chani +Ash +Val +Okra +Verda +Mania +Peace +Fortuna +Hathor +Lucky +Wish +Africa +Proxima +Ceti +Sabik \ No newline at end of file diff --git a/config/names/first_male.txt b/config/names/first_male.txt index f2b03e1686..84270df02e 100644 --- a/config/names/first_male.txt +++ b/config/names/first_male.txt @@ -223,26 +223,21 @@ Woodrow Zack Zane Zeke -Jacob -Michael Ethan Joshua Daniel Alexander Anthony -William Christopher Matthew Jayden Andrew Joseph David -Noah Aiden James Ryan Logan -John Nathan Elijah Christian @@ -265,15 +260,12 @@ Jack Kevin Jose Isaiah -Luke Landon Justin -Lucas Zachary Jordan Robert Aaron -Brayden Thomas Cameron Hunter @@ -285,9 +277,7 @@ Aidan Jason Julian Wyatt -Charles Luis -Carter Juan Chase Diego @@ -299,7 +289,6 @@ Carlos Sebastian Liam Hayden -Nathaniel Henry Jesus Ian @@ -307,18 +296,14 @@ Tristan Bryan Sean Cole -Alex Eric Brian Jaden Carson -Blake Ayden Cooper -Dominic Brady Caden -Josiah Kyle Colton Kaden @@ -329,16 +314,11 @@ Parker Steven Alejandro Riley -Richard -Timothy -Devin Jesse Victor -Jake Joel Colin Kaleb -Bryce Levi Oliver Oscar @@ -348,16 +328,12 @@ Cody Micah Preston Marcus -Max -Patrick Seth Jeremy Peyton Nolan Ivan -Damian Maxwell -Alan Kenneth Jonah Jorge @@ -365,10 +341,8 @@ Mark Giovanni Eduardo Grant -Collin Gage Omar -Emmanuel Trevor Edward Ricardo @@ -384,7 +358,6 @@ Andres Derek Garrett Tanner -Malachi Conner Fernando Cesar @@ -396,7 +369,6 @@ Leonardo Santiago Francisco Cayden -Shane Edwin Hudson Travis @@ -415,21 +387,18 @@ Damien Kaiden Spencer Stephen -Edgar Wesley Shawn Trenton Jared Jeffrey Landen -Johnathan Bradley Braxton Ryder Camden Roman Asher -Brendan Maddox Sergio Israel @@ -437,7 +406,6 @@ Andy Lincoln Erik Donovan -Raymond Avery Rylan Dalton @@ -447,7 +415,6 @@ Martin Keegan Marco Jude -Sawyer Dakota Leo Calvin @@ -457,7 +424,6 @@ Troy Zion Clayton Roberto -Zane Gregory Tucker Rafael @@ -468,7 +434,6 @@ Griffin Devon Drew Lukas -Johnny Ty Pedro Tyson @@ -478,12 +443,10 @@ Braylon Cash Aden Chance -Taylor Marcos Maximus Ruben Emanuel -Simon Corbin Brennan Dillon @@ -499,8 +462,6 @@ Colby Jonas Joaquin Payton -Brock -Frank Enrique Quinn Emilio @@ -516,7 +477,6 @@ Gerardo Dante Ezra Armando -Allen Theodore Gael Amir @@ -552,7 +512,6 @@ Anderson Rodrigo Pablo Saul -Danny Donald Elliot Brayan @@ -580,12 +539,9 @@ Felix Jimmy Cohen Tony -Holden Reid -Abel Bennett Zackary -Arthur Nehemiah Ricky Esteban @@ -611,11 +567,9 @@ Darren Elliott Uriel Alfredo -Hugo Alec Jamari Marshall -Walter Judah Jay Lance @@ -629,13 +583,11 @@ Kobe Bryant Maurice Russell -Leland Colten Reed Davis Joe Ernesto -Desmond Kade Reece Morgan @@ -648,15 +600,12 @@ Paxton Jacoby Douglas Kristopher -Gary Lawrence Izaiah Solomon -Nikolas Mekhi Justice Tate -Jaydon Salvador Shaun Alvin @@ -664,7 +613,6 @@ Eddie Kane Davion Zachariah -Damien Titus Kellen Camron @@ -673,9 +621,7 @@ Javon Nasir Milo Johan -Byron Jasper -Jonathon Chad Marc Kelvin @@ -685,7 +631,6 @@ Cory Deandre River Reese -Roger Quinton Talon Romeo @@ -698,7 +643,6 @@ Damon Jadon Emerson Micheal -Bruce Terry Kolton Melvin @@ -712,7 +656,6 @@ Leonel Karson Zayden Keagan -Carl Khalil Cristopher Nelson @@ -722,4 +665,712 @@ Isaias Roy Triston Walker -Kale \ No newline at end of file +Kale +Tafil +Ismet +Bardhal +Valm +Ermir +Milosh +Lunik +Rahul +Sabir +Majed +Bakri +Feroz +Taysir +Hamal +Mawel +Amadsu +Mastina +Deren +Ides +Masar +Belkin +Kriton +Aktis +Lemnus +Agastrophos +Charax +Cylon +Theomestor +Telephus +Aatif +Abdul +Ridwaan +Isaam +Azmi +Kaleem +Akram +Jafar +Humaid +Umar +Masood +Angelito +Bautista +Humberto +Enzo +Rey +Taniel +Matsag +Movses +Antog +Moushegh +Ismail +Arseen +Balishar +Cavad +Akif +Orxun +Thuso +Malefane +Makolo +Refilwe +Likotsi +Mohau +Amose +Xurio +Zipselo +Patrizio +Luze +Benoit +Emiel +Bastien +Anas +Kylian +Florent +Rik +Arjun +Indranil +Balinder +Bimal +Guru +Hari +Lalit +Sudeep +Sonu +Subhash +Anil +Dipen +Chandra +Musa +Vildan +Hamza +Mevludin +Wai +Linn +Soe +Kaung +Khine +Aung +Phyo +Thiha +Entekele +Leke +Sakeh +Dufach +Rohan +Glyn +Elwyn +Iver +Berian +Mercher +Jesstin +Ermid +Dermid +Dafydd +Sion +Conall +Conn +Alasdair +Ruaraidh +Rustam +Asu +Vakha +Beksolta +Nezh +Illyas +Tian +Bai +Delan +Shun +Gengxin +Liang +Jun +Shui +Chun +Fang +Zhenya +Bo +Dubravko +Branko +Davor +Damir +Mislav +Lucijan +Milovan +Andrej +Drahoslav +Oluf +Frans +Rune +Bernt +Fardin +Kalan +Jebran +Shapoor +Klaas +Siert +Elco +Jan +Karst +Aker +Anum +Kha +Anhur +Pakhrua +Ahmes +Hotep +Tutamen +Meri +Sneferu +Imhotep +Nefer +Pepi +Hanif +Odion +Adel +Aymn +Mando +Dodi +Mustafa +Adham +Manu +Darwishi +Erasmus +Cleeve +Taaniel +Kaljo +Timmo +Uno +Nega +Ayene +Bekele +Abenet +Haile +Mahmoud +Aldo +Benjam +Sampo +Oskari +Mika +Sampsa +Risto +Yves +Antoine +Theo +Henri +Maxime +Mathis +Eugene +Jorg +Ulrich +Hubert +Raimund +Gunter +Christoforos +Markos +Romanos +Vasilios +Valentinos +Lambros +Emmanouil +Devnand +Inesh +Savit +Yatnesh +Vishay +Manek +Amit +Munish +Oris +Jamiel +Ahron +Levey +Yesochor +Avidan +Harrod +Hanan +Tabor +Ephron +Absolom +Makis +Ichabod +Taaveti +Sumit +Vineet +Rishnu +Chand +Madhavacharta +Navin +Pranav +Tsim +Fue +Lung +Pheng +Sigbjorn +Heidrekur +Saimundur +Jovin +Ulfar +Velaugur +Hunn +Edvald +Sigurd +Sigfinnur +Bjarni +Oddur +Isar +Vemundur +Herluf +Linberg +Fenrir +Uranus +Skidi +Gudgeir +Geir +Akuchi +Okparo +Chikere +Chinou +Jelani +Chidy +Natsuo +Kyoden +Kakuei +Sotaro +Masakado +Kenji +Konyo +Kazuko +Kenko +Shogo +Jo +Shoji +Kazi +Shinji +Akira +Kakuzo +Hiro +Arman +Nurbolat +Alen +Iskander +Marat +Lorn +Moul +Phann +Pang +Dith +Chin +Chim +Aang +Kovind +Madhab +Lalu +Uttam +Nayan +Yasti +Waigwa +Theuri +Chege +Nyoro +Ngure +Kimaru +Min +Pak +Changgok +Gok +Kim +Nam +Tycho +Lycus +Hadrius +Cocus +Augustus +Virgo +Hegio +Leonida +Leonid +Nero +Kanoa +Loe +Lilo +Keon +Makan +Sommai +Makaio +Oke +Kalei +Alens +Ruriks +Falks +Osvalds +Godvars +Gytis +Naglis +Mykolas +Kestas +Vaidas +Mikas +Artemas +Okeyo +Othiambo +Onindo +Odede +Otiya +Muda +Jusoh +Desa +Raadi +Raaji +Jati +Tuna +Kingi +Urutu +Ruhi +Taika +Mahora +Eteka +Vivek +Tarak +Umanath +Punit +Dev +Nirmal +Kunal +Tartu +Bogen +Yegu +Bukdai +Yul +Ayoub +Muslih +Jaul +Youssef +Zamen +Aqil +Fala +Tocho +Wikvaya +Wanahton +Nantan +Hinto +Sugmuk +Mikasi +Alo +Ouray +Prakash +Subodh +Bishwa +Mukesh +Nikhil +Dheer +Yngvar +Sivert +Christer +Age +Svend +Gudmund +Tore +Viggo +Georg +Torbjorn +Vebjorn +Isak +Oystein +Halvard +Alf +Helge +Joar +Thor +Mats +Husain +Ziyaad +Demir +Sahand +Sabahattin +Hamood +Birtan +Ihsan +Harun +Balash +Daud +Jaffar +Shahab +Hossein +Heshmat +Arash +Karim +Sadeq +Aref +Parsa +Abbas +Aziz +Morteza +Hashem +Feliks +Prots +Luboslaw +Leslaw +Urban +Mieszko +Hanusz +Stojan +Kasper +Jozafat +Wit +Teobaldo +Balbino +Viriato +Candido +Ramiro +Gaspar +Godofredo +Navjeev +Uddam +Kabir +Sukhinidhan +Biradol +Mahanleen +Harbeer +Django +Yanko +Chal +Lasho +Tobar +Durril +Shandor +Zale +Bosnik +Boiko +Radu +Vasile +Marku +Nicu +Skender +Grigore +Toma +Costache +Catarino +Sasha +Aleksandr +Filya +Krasimir +Kliment +Vadim +Rasim +Vadik +Iosif +Danya +Nikita +Lukyan +Petr +Valentin +Valya +Ruslan +Pili +Malosi +Losi +Atini +Vujadin +Duro +Miran +Kalinik +Jezdimir +Gavrilo +Lubos +Henrich +Silvester +Miroslav +Viliam +Konrad +Jakub +Hodari +Jamba +Mosi +Abasi +Sefu +Ayo +Tamu +Khalfani +Ludvig +Hakan +Onne +Zakarias +Mikael +Elton +Sigge +Roland +Stefan +Ovid +Ravel +Srinan +Natheep +Lithik +Shikan +Yasmith +Sayan +Venujayan +Tadthon +Chakan +Vidura +Trat +Thorn +Taat +Vitaya +Nattanan +Somsak +Pasat +Ertek +Haldun +Eray +Suat +Erksun +Mehmet +Aytek +Ergin +Dogander +Quang +Quoc +Tuan +Viet +Loc +Khang +Blann +Skarf +Thorvard +Jorund +Starolf +Steinolf +Haki +Throst +Rognvald +Bolverk +Vigi +Odinkar +Hjor +Beinir +Ingolf +Ragnar +Badahar +Heru +Abrik +Darshanbir +Baljeet +Daldir +Fakeer +Puneet +Maskeen +Lungelo +Phakama +Horus +Xeghu +Ukuza +Dundubala +Thembelani +Dumesani +Mohamed +Abdelkader +Rachid +Said +Brahim +Djamel +Abdallah +Habib +Murad +Fadi +Mohammed +Tareq +Mamadou +Junior +Bandile +Prince +Mehdi +Santino +Keven +Heitor +Agustin +Vicente +Iker +Jie +Fenf +Yong +Bin +Aarav +Wei +Reza +Noam +Itai +Rahman +Batkhaan +Ichika +So +Minato +Ren +Hinata +Haruta +Ryo +Somchai +Prasert +Maksim +Cyrus +Rip +Ripley +Colt +Kilroy +Zero +Armitage +Lucky +Blitz +Kroner +Zak +Basque +Tau +Kepler +Neo +Nova +Cas +Cypher +Switch +Thadeus +Lock +Morpheus +Sifat +Ose +Havdid +Bruno +Jossen +Tetsuo +Talos +Solo +Tobor +Huey +Dewey +Louie +Ash +Sonny +Titan +Bax +Casper +Finnegan +Loki +Odin +Finley +Flynn +Shamus +Ultan +German +Sirius +Castor +Pollux \ No newline at end of file diff --git a/config/names/last.txt b/config/names/last.txt index 6080967e2d..926773a672 100644 --- a/config/names/last.txt +++ b/config/names/last.txt @@ -36,7 +36,6 @@ Logue Reichard Day Dugmore -Murray Greenawalt Jyllian Osterwise @@ -224,13 +223,11 @@ Unk Otis Quinn Bell -Roberts Wood Ullman Bicknell Gibson Rohtin -James Wallick Eggbert Losey @@ -273,7 +270,6 @@ Hook Reighner Welty Jenkins -Bennett Swarner Hawker Agg @@ -341,7 +337,6 @@ Laurenzi Minnie Houser Langston -Anderson Barrett Wible Hujsak @@ -398,7 +393,6 @@ Ratcliff Riggle Newton Sanders -Mitchell Lauffer Aggley Moberly @@ -438,13 +432,9 @@ Smith Steele Leach Armstrong -Wheeler Easter Greenwood -Woodward -Pratt Buzzard -Cox Eliza Rockwell Zeal @@ -468,7 +458,6 @@ Digson Byers Hincken Shaner -Todd Whiteman Lineman Albright @@ -505,68 +494,36 @@ Dawkins McShain McDonohugh Power -Smith Jones Williams Brown Taylor Davies Wilson -Evans -Thomas -Roberts -Johnson Walker Wright -Robinson Thompson -Hughes -White -Edwards -Hall Patel -Green Martins Lewis -Wood -Jackson -Clarke Harris Clark -Scott Turner -Hill -Moore Cooper Morris -Ward -Watson Morgan -Anderson Harrison -King -Campbell -Young -Mitchell -Baker -James Kelly Allen -Bell Phillips Lee -Stewart -Miller Parker Simpson -Bennett -Davis Griffiths Shaw Price Cook Richardson -Murray Marshall Begum Murphy @@ -577,9 +534,6 @@ Bailey Carter Robertson Graham -Adams -Richards -Cox Singh Hussain Ellis @@ -591,22 +545,18 @@ Ali Reid Rathens Rathen -Mason Chapman Powell Owen Ahmed -Gibson Rogers Webb Holmes Mills Matthews -Hunt Palmer Lloyd Kaur -Fisher Ivanov Smirnov Vasilyev @@ -616,4 +566,1061 @@ Mikhaylov Pavlov Semenov Andreev -Alekseev \ No newline at end of file +Alekseev +Mali +Troshani +Nano +Kupi +Syla +Lucca +Hasani +Khalef +Benita +Fahas +Seghir +Ziani +Saadi +Beghal +Yamin +Mousa +Bilal +Khalaf +Zafar +Salman +Naderi +Usman +Al-Hassen +El-Salame +Al-Fadel +El-Shaer +El-Amini +Al-Miah +Al-Meskin +El-Nazar +Villar +Caceres +Dominguez +Ortiz +Vidal +Escobar +Schiavone +Hagopian +Petrosian +Baronian +Kostanian +Ismailyan +Jamshidova +Kyrimsoy +Maharramova +Jurio +Zabalain +Ilurdoz +Menda +Anchoverri +Osteriz +Basque +Duquesne +Peeters +Blindeman +Piat +Raes +Delporte +Verplancke +Vandevelde +Carton +Basak +Khuro +Sastri +Thakur +Chakraborty +Paramahamsa +Mazumdar +Momen +Sanu +Chatterjee +Saraswat +Ghosh +Rakib +Majumder +Terzic +Alagic +Topalovic +Bajramovic +Ivanovic +Vidovic +Yadanar +Nway +Myat +Naing +Ebot +Njoya +Ewaso +Lekeaka +Lukombo +Masumbuku +Mukendi +Dimonekene +Kosi +Linzenge +Nguo +Boko +Manoka +Gower +Pumphrey +Priddy +Clough +Sealy +Bethel +Ros +MacLeoir +MacCrum +Tsarnaeva +Khadzhiev +Maskhadov +Hamidov +Musaeva +Usamova +Xing +Feng +Qui +Zhang +Xun +Teng +Huang +Deng +Pan +Zhou +Kong +Cheng +Mao +Zou +Solic +Kopic +Paunovic +Papratovic +Spiljak +Marek +Capek +Prusik +Vecerova +Karaskova +Jansen +Ludvigsen +Bentsen +Berg +Jepsen +Karlsen +Ebbesen +Dogger +Bakker +Keulen +Harloff +Ossen +Storteboom +Vermeer +Gasner +Dam +Boer +Hurmann +Geerts +Cheverton +Goddard +Harpham +Ashpole +Hillyard +Lochty +Relish +Fernsby +Khepera +Nebka +Amemu +Neferu +Horemhebi +Kharatanekha +Anuketma +Cham +Bata +Tannous +Tuma +Asghar +Mallouf +Bishara +Aswan +Kouri +Hackeman +Bulstrode +Fane +Norwood +Goodstone +Milner +Parn +Teder +Sirel +Magi +Kask +Lepmets +Jogi +Girma +Abebe +Lebna +Anom +Feleke +Bereket +Selassie +Panaligan +Manalastas +Zoleta +Decatoria +Solonen +Paananen +Latvala +Kukkonen +Waris +Niemi +Kallo +Delon +Allard +Renaud +Blanc +Gerin +Aubert +Geiger +Landry +Vannier +Saint-Yves +Gauthier +Ehrenfest +Konig +Kindler +Ruhl +Voigt +Rickenbacker +Strasburger +Stratos +Rota +Economos +Romanos +Hallos +Floros +Fotopoulos +Constantinos +Stamou +Demetrios +Stavropoulos +Demetriou +Panagopoulou +Desai +Vyas +Chudasama +Kotak +Tripathi +Bhansali +Chitalia +Sarabhai +Modi +Adani +Silberstein +Dresner +Cohen +Metz +Bashevis +Laski +Yedidyah +Ginsberg +Levinstein +Abraham +Federman +Adler +Gottesman +Rabinowicz +Seth +Vad +Mahanta +Chadda +Bhaumik +Jadhav +Dvivedi +Lata +Poddar +Talavalakar +Satavelekar +Mudaliyar +Nayar +Nan +Tsab +Chue +Wong +Thao +Thai +Song +Finnsson +Finnsdottir +Kristvinsson +Krisovinsdottir +Ingvaldsson +Ingvaldsdottir +Abelsson +Abelsdottir +Sigurdsson +Sigurdsdottir +Holmsson +Holmsdottir +Chidey +Onuchukwu +Akachi +Mazzi +Onyekachi +Ndulu +Ngozi +Obasi +Jajah +Uchechea +Zebenjo +Ishida +Ito +Matsushita +Yoshimi +Horikiri +Sakai +Kase +Watari +Tano +Fuji +Okada +Yadama +Yagami +Homura +Tanimoto +Kugo +Fuse +Sugita +Naya +Hamakawa +Kobayashi +Serikov +Fauskeev +Yerbolatev +Ayatova +Ericova +Khazretgaliev +Baurzhanova +Khemera +Nhean +Narith +Sourkea +Visal +Poeu +Kalliyan +Akara +Chantou +Rachana +Kunthea +Rasmey +Nuon +Akash +Vrsiini +Ijay +Navin +Ikshu +Asheesh +Harihar +Paramartha +Mukesh +Ngendo +Mumbi +Murugi +Kioni +Nyagura +Njambi +Mugo +Kiongo +Mburu +Sook +Eon +Ri +So-Yung +So-Ri +Dae-Jung +Jin +Joon +Yong +Yung +Scaro +Decius +Geta +Nero +Natalis +Pollienus +Docilus +Castus +Nerva +Siyavong +Chanthraphone +Sengtavisouk +Thonemany +Vatthana +Keobunta +Savang +Rattanavongsa +Khanthavong +Lapsina +Lodina +Caune +Veiss +Ozers +Lielmanis +Lidaks +Rubenis +Tucs +Bekeryte +Vaiciute +Pakeryte +Maczinskiene +Pretkelis +Naidicas +Suksta +Kanapickas +Straksys +Remeza +Kantautine +Leipute +Ogutu +Ondiek +Were +Kowa +Sialo +Ochola +Obonyo +Akelo +Hongo +Julu +Oduyu +Orombi +Noh +Che +Dhareef +Taufan +Petera +Witika +Pikari +Enoka +Timoti +Piripi +Arona +Romana +Natana +Kapale +Agarkar +Karve +Rasam +Deshmane +Sonarkar +Lagu +Shinde +Javkar +Sawant +Ranganakar +Hardas +Pawgi +Sibari +Khatibi +Mernissi +Bikri +Samie +Zniber +Lemsih +Wasti +Subba +Karkee +Pandeya +Belbase +Rawal +Osland +Thygesen +Reiten +Davidsen +Haller +Tofte +Pettersen +Island +Handeland +Saltvik +Bakke +Hotvedt +Kampen +Vangsness +Fjerstad +Underberg +Munch +Lodhra +Ansari +Banday +Karlal +Hameed +Sarpara +Bhatti +Tareen +Marri +Kirmani +Daudpota +Ghazali +Mangi +Vele +Paiyo +Apa +Henao +Kasi +Injia +Kewa +Tajik +Raad +Vakili +Mashayekhi +Hosseini +Panahi +Rashidi +Fallah +Mostofi +Kasebi +Afshani +Boromand +Qaderi +Safavi +Golshani +Barbarz +Bina +Raoufi +Ahangar +Kabat +Loszowska +Ras +Murawska +Kwasny +Halas +Kabacinska +Maszowska +Rojek +Maczko +Makos +Hodor +Kapitan +Sirek +Kopinski +Cordeiro +Seixas +Tavares +Carneiro +Neves +Queiroz +Nunes +Hind +Abril +Baptista +Montenegro +Azevedo +Sousa +Bandiera +Barboza +Dhir +Gora +Tott +Tatran +Jhaal +Motsara +Dhama +Bhadu +Bargoti +Sherred +Heron +Jell +Kitt +Driskin +Ilica +Gupta +Cristea +Ragar +Lascar +Troester +Rosetti +Bus +Dita +Trelles +Macek +Moscovici +Gavrikova +Bylinkaina +Stepnova +Kaverina +Antipov +Vadimovich +Pavlovich +Victorovna +Denisovna +Panina +Desyatkova +Burkov +Kuzkin +Dmitrivich +Rusakov +Safenu +Niu +Savali +Pelesa +Tilo +Pule +Lotomau +Milovic +Jelic +Pesic +Zoric +Ristovski +Karanovic +Pejakovski +Janketic +Kovacova +Tesarova +Botosova +Bartos +Holub +Koren +Mokry +Ekholm +Wikstrom +Malmquist +Almgren +Westermark +Dahlman +Wallin +Mattson +Ostlund +Bjork +Linden +Stenbeck +Forslund +Sandstrom +Srinan +Natheep +Lithik +Shikan +Yasmith +Sayan +Venujayan +Palapol +Sudham +Kitjakarn +Montri +Singhapat +Gason +Wongsawat +Juntasa +Yao +Tahir +Sakir +Keles +Usta +Hasim +Karaduman +Bayat +Korkut +Altun +Nguyen +Chu +Hoang +Do +Huynh +Duong +Vu +Quang +Gunnsteinssen +Ketilssen +Skialgssen +Kotkelldottir +Ufidottir +Warydottir +Ragnarssen +Junhi +Rakhya +Bhander +Sadho +Rajwa +Kes +Dhesi +Sohi +Puriwal +Jawia +Hayre +Wains +Asar +Bati +Li +Truong +Jang +Wang +Ruan +Smirnova +Mammadov +Ailyev +Hasanov +Kazi +Mina +Pal +Saha +Roy +Dewan +Hasan +Islam +Wazen +Rohman +Akter +Banik +Bishwas +Chakma +Dey +Gazi +Shekh +Xu +Ho +Law +Lam +Zhu +Bedrize +Gill +Joshi +Babu +Dutta +Kumar +Patil +Mehta +Mittal +Pandit +Levi +Mizrachi +Peretz +Biton +Sato +Kato +Suzuki +Takahashi +Tanaka +Watanabe +Nakamura +Yamamoto +Kimura +Abe +Endo +Park +Shreshtha +Thapa +Navarro +Perara +Kumara +Gamage +Kaya +Demir +Gruber +Huber +Bauer +Wagner +Pichler +Moser +Mayer +Maier +Schuster +Ivanou +Kazlou +janssens +Maes +Jacobs +Mertens +Simon +Hodzic +Petrovic +Jovanovic +Dimitrov +Boyanov +Tasev +Nikolov +Gruev +Horvat +Kovacevic +Babic +Maric +Novak +Svoboda +Nielsen +Jensen +Pedersen +Sorensen +Tamm +Saar +Sepp +Joensen +Korhonen +Virtanen +Makinen +Laine +Salo +Dubois +Martin +Roux +Laurent +Mercier +Dupont +Lambert +Francois +Michel +Nagy +Giannopoulos +Kovacs +Horvath +Kiss +Byrne +Reilly +Doyle +Doherty +Rossi +Russo +Ferrari +Esposito +Bianchi +Colombo +Ricci +Rizzo +Leone +Conte +Neri +Caputo +Grassi +Monti +Krasniqi +Morina +Ozols +Berzins +Kazlauskas +Petrauskas +Jankauskas +Borg +Camilleri +Andov +Heaven +Bozinov +Rusu +Ceban +Popa +Bos +Vos +Hendriks +Dijkstra +Smits +Janse +Hansen +Johansen +Dahl +Lund +Nowak +Kowalski +Wisniewski +Wojak +Mazur +Wozniak +Silva +Jesus +Freitas +Radu +Stoica +Popov +Haven +Moreno +Sanz +Bernasconi +Fontana +Yilmaz +Melnyk +Shevchenko +Boyko +MacDonald +Driscoll +Mackintosh +Craig +MacLean +Cormack +Keenan +MacCulloch +Mackinnon +Tremblay +Jimenez +Gagnon +Mora +Solis +Tjon +Mars +Venus +Mercury +Luna +Ceres +Deimos +Phobos +Ganymede +Io +Europa +Amalthea +Himalia +Thebe +Elara +Pasiphae +Metis +Carme +Sinope +Lysithea +Ananke +Leda +Themisto +Praxidike +Locaste +Kalyke +Megaclite +Taygete +Callirrhoe +Autonoe +Harpalyke +Thyone +Hermippe +Chalende +Aoede +Eukalade +Isonoe +Helike +Carpo +Aitne +Eurydome +Hegomone +Arche +Euanthe +Sponde +Euporie +Mneme +Kore +Kallichore +Valetudo +Titan +Thea +Iapetus +Dione +Tethys +Enceladus +Mimas +Hyperion +Pheobe +Janus +Epimethus +Prometheus +Pandora +Siarnaq +Helene +Albiorix +Atlas +Telesto +Paaliaq +Calypso +Ymir +Tarvos +Skathi +Narvi +Kari +Skoll +Bestla +Methone +Pallene +Anthe +Titania +Oberon +Umbriel +Ariel +Miranda +Sycorax +Puck +Portia +Juliet +Caliban +Belinda +Rosalina +Bianca +Cupid +Mab +Triton +Proteus +Larissa +Halimede +Sao +Charon +Hydra +Nix +Kerberos +Styx +Jupiter +Saturn +Uranus +Neptune +Pluto +Orcus +Haumea +Quaoar +Makemake +Eris +Salacia +Sedna +Nova +Trask +Ripley +Kilroy +Simms +Winters +Renard +Reeves +Looper +Cassini +Juno +Dawn +Kepler +Akatsuki +Ofako +Zeng +Fong +Said +Halward +Tetsuo +Onishi +Link +Score +Asimov +Strugatsky +Gort +Gallagher +Nimrod +Jovian +Crichton +Andromeda +Llewellyn +Naylor +Thorax +Curie +Zisa +Zax +Aegis +Bishop +Alpha +Omega +Delta +Ohm +Cain +Brax +Bracket +Bolt +Weld +Apogee +Gliese +Zeta +Leporis +Barnard +Vega +Altair \ No newline at end of file diff --git a/html/changelogs/Cerebulon - Namelists.yml b/html/changelogs/Cerebulon - Namelists.yml new file mode 100644 index 0000000000..6fd7911131 --- /dev/null +++ b/html/changelogs/Cerebulon - Namelists.yml @@ -0,0 +1,7 @@ + +author: Cerebulon + +delete-after: True + +changes: + - rscadd: "Added 1000+ surnames and 1200+ forenames from various world cultures to human namelists" diff --git a/html/changelogs/Mechoid-RSFs.yml b/html/changelogs/Mechoid-RSFs.yml new file mode 100644 index 0000000000..72c7ac0b09 --- /dev/null +++ b/html/changelogs/Mechoid-RSFs.yml @@ -0,0 +1,37 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: Mechoid + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "Ctrl clicking a Rapid Service Fabricator when held will allow you to choose the container it deploys." + - bugfix: "The Rapid Service Fabricator's icon is correctly set." diff --git a/html/changelogs/kartagrafi-NewHairAndUnderwear.yml b/html/changelogs/kartagrafi-NewHairAndUnderwear.yml new file mode 100644 index 0000000000..f28a41c04b --- /dev/null +++ b/html/changelogs/kartagrafi-NewHairAndUnderwear.yml @@ -0,0 +1,39 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: kartagrafi + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "Adds new hairstyle ''Sharp Ponytail''" + - rscadd: "Adds several new underwear - ''Binder'', ''Strapless Binder'', ''Longsleeve Striped Shirt, Pink'', ''Pink Wing Shirt'', ''Pink and Black T-Shirt'', ''Leggings''" + - tweak: "Changes name of ''Supernova'' hairstyle to ''Glossy'', and makes the sprite somewhat neater" + - bugfix: "Fixes a hairstyle not appearing" \ No newline at end of file diff --git a/icons/mob/back_vr.dmi b/icons/mob/back_vr.dmi index 4048e02bfe..84aec25ab3 100644 Binary files a/icons/mob/back_vr.dmi and b/icons/mob/back_vr.dmi differ diff --git a/icons/mob/human.dmi b/icons/mob/human.dmi index fbea9c563e..cbf20402e6 100644 Binary files a/icons/mob/human.dmi and b/icons/mob/human.dmi differ diff --git a/icons/mob/human_face.dmi b/icons/mob/human_face.dmi index 75929194f9..a65de5defd 100644 Binary files a/icons/mob/human_face.dmi and b/icons/mob/human_face.dmi differ diff --git a/icons/mob/human_face_m.dmi b/icons/mob/human_face_m.dmi index 457dd0e5df..fe62645869 100644 Binary files a/icons/mob/human_face_m.dmi and b/icons/mob/human_face_m.dmi differ diff --git a/icons/mob/human_races/cyberlimbs/DSILizard/dsi_lizard.dmi b/icons/mob/human_races/cyberlimbs/DSILizard/dsi_lizard.dmi index 7700cc1d17..ce86dcadfd 100644 Binary files a/icons/mob/human_races/cyberlimbs/DSILizard/dsi_lizard.dmi and b/icons/mob/human_races/cyberlimbs/DSILizard/dsi_lizard.dmi differ diff --git a/icons/mob/human_races/cyberlimbs/DSILizard/dsi_lizard_a.dmi b/icons/mob/human_races/cyberlimbs/DSILizard/dsi_lizard_a.dmi index 4d3223b41e..1361b9e5fb 100644 Binary files a/icons/mob/human_races/cyberlimbs/DSILizard/dsi_lizard_a.dmi and b/icons/mob/human_races/cyberlimbs/DSILizard/dsi_lizard_a.dmi differ diff --git a/icons/mob/human_races/cyberlimbs/DSINevrean/dsi_nevrean.dmi b/icons/mob/human_races/cyberlimbs/DSINevrean/dsi_nevrean.dmi index f19af52106..5424d46b78 100644 Binary files a/icons/mob/human_races/cyberlimbs/DSINevrean/dsi_nevrean.dmi and b/icons/mob/human_races/cyberlimbs/DSINevrean/dsi_nevrean.dmi differ diff --git a/icons/mob/human_races/markings_vr.dmi b/icons/mob/human_races/markings_vr.dmi index 0abfa5e0cb..300caaa9d8 100644 Binary files a/icons/mob/human_races/markings_vr.dmi and b/icons/mob/human_races/markings_vr.dmi differ diff --git a/icons/mob/human_races/r_harpy_vr.dmi b/icons/mob/human_races/r_harpy_vr.dmi index b4173fb818..827e0d605f 100644 Binary files a/icons/mob/human_races/r_harpy_vr.dmi and b/icons/mob/human_races/r_harpy_vr.dmi differ diff --git a/icons/mob/human_races/r_human_vr.dmi b/icons/mob/human_races/r_human_vr.dmi index 24413995a7..7a91929aad 100644 Binary files a/icons/mob/human_races/r_human_vr.dmi and b/icons/mob/human_races/r_human_vr.dmi differ diff --git a/icons/mob/human_races/r_lizard_vr.dmi b/icons/mob/human_races/r_lizard_vr.dmi index b2b6dfac12..0bfbfb04ee 100644 Binary files a/icons/mob/human_races/r_lizard_vr.dmi and b/icons/mob/human_races/r_lizard_vr.dmi differ diff --git a/icons/mob/human_races/r_nevrean.dmi b/icons/mob/human_races/r_nevrean.dmi index d937299dc5..d2bebc171a 100644 Binary files a/icons/mob/human_races/r_nevrean.dmi and b/icons/mob/human_races/r_nevrean.dmi differ diff --git a/icons/mob/taursuits_horse_vr.dmi b/icons/mob/taursuits_horse_vr.dmi index 7a67ec72a2..12f309f9fe 100644 Binary files a/icons/mob/taursuits_horse_vr.dmi and b/icons/mob/taursuits_horse_vr.dmi differ diff --git a/icons/mob/taursuits_naga_vr.dmi b/icons/mob/taursuits_naga_vr.dmi index 49cc236089..38640c904d 100644 Binary files a/icons/mob/taursuits_naga_vr.dmi and b/icons/mob/taursuits_naga_vr.dmi differ diff --git a/icons/mob/taursuits_wolf_vr.dmi b/icons/mob/taursuits_wolf_vr.dmi index d5099056b5..03ad5e3929 100644 Binary files a/icons/mob/taursuits_wolf_vr.dmi and b/icons/mob/taursuits_wolf_vr.dmi differ diff --git a/icons/mob/vore.dmi b/icons/mob/vore.dmi index 0357739b9c..4479212c1b 100644 Binary files a/icons/mob/vore.dmi and b/icons/mob/vore.dmi differ diff --git a/icons/mob/vore/taurs_vr.dmi b/icons/mob/vore/taurs_vr.dmi index 203119e9c3..0a1e2e4816 100644 Binary files a/icons/mob/vore/taurs_vr.dmi and b/icons/mob/vore/taurs_vr.dmi differ diff --git a/icons/mob/vore/wings_vr.dmi b/icons/mob/vore/wings_vr.dmi index 42d2cf426d..b290bfca7b 100644 Binary files a/icons/mob/vore/wings_vr.dmi and b/icons/mob/vore/wings_vr.dmi differ diff --git a/icons/mob/vore64x64.dmi b/icons/mob/vore64x64.dmi index 8454da40d7..76c5830021 100644 Binary files a/icons/mob/vore64x64.dmi and b/icons/mob/vore64x64.dmi differ diff --git a/icons/obj/food_vr.dmi b/icons/obj/food_vr.dmi index e7bd78f8bf..95b293d9f4 100644 Binary files a/icons/obj/food_vr.dmi and b/icons/obj/food_vr.dmi differ diff --git a/icons/obj/tools_vr.dmi b/icons/obj/tools_vr.dmi new file mode 100644 index 0000000000..72316467dd Binary files /dev/null and b/icons/obj/tools_vr.dmi differ diff --git a/icons/vore/custom_clothes_vr.dmi b/icons/vore/custom_clothes_vr.dmi index 73e5e7f363..be9148ca02 100644 Binary files a/icons/vore/custom_clothes_vr.dmi and b/icons/vore/custom_clothes_vr.dmi differ diff --git a/icons/vore/custom_items_vr.dmi b/icons/vore/custom_items_vr.dmi index aa2910fb65..97578011b4 100644 Binary files a/icons/vore/custom_items_vr.dmi and b/icons/vore/custom_items_vr.dmi differ diff --git a/maps/southern_cross/items/encryptionkey_sc.dm b/maps/southern_cross/items/encryptionkey_sc.dm index 6896bf1c6c..feb63e5894 100644 --- a/maps/southern_cross/items/encryptionkey_sc.dm +++ b/maps/southern_cross/items/encryptionkey_sc.dm @@ -6,7 +6,7 @@ /obj/item/device/encryptionkey/explorer name = "explorer radio encryption key" icon_state = "com_cypherkey" - channels = list("Science" = 1, "Explorer" = 1) //VOREStation Edit + channels = list("Explorer" = 1) /obj/item/device/encryptionkey/sar name = "sar's encryption key" diff --git a/maps/southern_cross/items/encryptionkey_vr.dm b/maps/southern_cross/items/encryptionkey_vr.dm index 54f26ccebe..94b12bdd2c 100644 --- a/maps/southern_cross/items/encryptionkey_vr.dm +++ b/maps/southern_cross/items/encryptionkey_vr.dm @@ -1,3 +1,6 @@ /obj/item/device/encryptionkey/pilot icon_state = "cypherkey" channels = list("Explorer" = 1) + +/obj/item/device/encryptionkey/explorer + channels = list("Science" = 1, "Explorer" = 1) diff --git a/maps/southern_cross/items/headset_sc.dm b/maps/southern_cross/items/headset_sc.dm index ec73fbc7c7..eca7eeb27d 100644 --- a/maps/southern_cross/items/headset_sc.dm +++ b/maps/southern_cross/items/headset_sc.dm @@ -1,30 +1,25 @@ /obj/item/device/radio/headset/pilot name = "pilot's headset" - desc = "A headset used by pilots, has access to the explorer channel." //VOREStation Edit + desc = "A headset used by pilots, has access to supply and explorer channels." icon_state = "pilot_headset" adhoc_fallback = TRUE ks2type = /obj/item/device/encryptionkey/pilot /obj/item/device/radio/headset/pilot/alt name = "pilot's bowman headset" - desc = "A bowman headset used by pilots, has access to the explorer channel." //VOREStation Edit - icon_state = "pilot_headset_alt" - -/obj/item/device/radio/headset/pilot/alt - name = "pilot's bowman headset" - desc = "A bowman headset used by pilots, has access to the explorer channel." //VOREStation Edit + desc = "A bowman headset used by pilots, has access to supply and explorer channels." icon_state = "pilot_headset_alt" /obj/item/device/radio/headset/explorer name = "explorer's headset" - desc = "Headset used by explorers for exploring. Access to explorer and science channels." //VOREStation Edit + desc = "Headset used by explorers for exploring. Access to the explorer channel." icon_state = "exp_headset" adhoc_fallback = TRUE ks2type = /obj/item/device/encryptionkey/explorer /obj/item/device/radio/headset/explorer/alt name = "explorer's bowman headset" - desc = "Bowman headset used by explorers for exploring. Access to explorer and science channels." //VOREStation Edit + desc = "Bowman headset used by explorers for exploring. Access to the explorer channel." icon_state = "exp_headset_alt" /obj/item/device/radio/headset/sar diff --git a/maps/southern_cross/items/headset_vr.dm b/maps/southern_cross/items/headset_vr.dm index c100fcf441..ac737845b5 100644 --- a/maps/southern_cross/items/headset_vr.dm +++ b/maps/southern_cross/items/headset_vr.dm @@ -1,3 +1,23 @@ +/obj/item/device/radio/headset/pilot + desc = "A headset used by pilots, has access to the explorer channel." + +/obj/item/device/radio/headset/pilot/alt + desc = "A bowman headset used by pilots, has access to the explorer channel." + +/obj/item/device/radio/headset/explorer + desc = "Headset used by explorers for exploring. Access to explorer and science channels." + +/obj/item/device/radio/headset/explorer/alt + desc = "Bowman headset used by explorers for exploring. Access to explorer and science channels." + +/obj/item/device/radio/headset/sar + name = "fm radio headset" + desc = "A headset for field medics." + +/obj/item/device/radio/headset/sar/alt + name = "fm radio bowman headset" + desc = "A bowman headset for field medics." + /obj/item/device/radio/headset/volunteer name = "volunteer's headset" desc = "A headset used by volunteers to expedition teams, has access to the exploration channel." diff --git a/maps/southern_cross/job/outfits.dm b/maps/southern_cross/job/outfits.dm index a32b784c0d..159701decd 100644 --- a/maps/southern_cross/job/outfits.dm +++ b/maps/southern_cross/job/outfits.dm @@ -13,8 +13,8 @@ Keep outfits simple. Spawn with basic uniforms and minimal gear. Gear instead go l_ear = /obj/item/device/radio/headset/explorer id_slot = slot_wear_id pda_slot = slot_l_store - pda_type = /obj/item/device/pda/cargo // Brown looks more rugged - id_type = /obj/item/weapon/card/id/civilian/explorer + pda_type = /obj/item/device/pda/explorer //VORESTation Edit - Better Brown + id_type = /obj/item/weapon/card/id/explorer/explorer //VOREStation Edit id_pda_assignment = "Explorer" flags = OUTFIT_HAS_BACKPACK|OUTFIT_COMPREHENSIVE_SURVIVAL backpack_contents = list(/obj/item/clothing/accessory/permit/gun/planetside = 1) @@ -46,20 +46,21 @@ Keep outfits simple. Spawn with basic uniforms and minimal gear. Gear instead go l_ear = /obj/item/device/radio/headset/pilot/alt id_slot = slot_wear_id pda_slot = slot_belt - pda_type = /obj/item/device/pda/cargo // Brown looks more rugged - id_type = /obj/item/weapon/card/id/civilian/pilot + pda_type = /obj/item/device/pda //VOREStation Edit - Civilian + id_type = /obj/item/weapon/card/id/explorer/pilot //VOREStation Edit id_pda_assignment = "Pilot" flags = OUTFIT_HAS_BACKPACK|OUTFIT_COMPREHENSIVE_SURVIVAL /decl/hierarchy/outfit/job/medical/sar - name = OUTFIT_JOB_NAME("Search and Rescue") + name = OUTFIT_JOB_NAME("Field Medic") //VOREStation Edit uniform = /obj/item/clothing/under/utility/blue - suit = /obj/item/clothing/suit/storage/hooded/wintercoat/medical/sar + //suit = /obj/item/clothing/suit/storage/hooded/wintercoat/medical/sar //VOREStation Edit shoes = /obj/item/clothing/shoes/boots/winter/explorer l_ear = /obj/item/device/radio/headset/sar l_hand = /obj/item/weapon/storage/firstaid/regular belt = /obj/item/weapon/storage/belt/medical/emt pda_slot = slot_l_store + pda_type = /obj/item/device/pda/sar //VOREStation Add id_type = /obj/item/weapon/card/id/medical/sar - id_pda_assignment = "Search and Rescue" + id_pda_assignment = "Field Medic" //VOREStation Edit flags = OUTFIT_HAS_BACKPACK|OUTFIT_EXTENDED_SURVIVAL|OUTFIT_COMPREHENSIVE_SURVIVAL diff --git a/maps/southern_cross/job/outfits_vr.dm b/maps/southern_cross/job/outfits_vr.dm index 51b3c3670e..902a0658cc 100644 --- a/maps/southern_cross/job/outfits_vr.dm +++ b/maps/southern_cross/job/outfits_vr.dm @@ -6,7 +6,7 @@ id_slot = slot_wear_id pda_slot = slot_l_store pda_type = /obj/item/device/pda/pathfinder - id_type = /obj/item/weapon/card/id/science/head/pathfinder + id_type = /obj/item/weapon/card/id/explorer/head/pathfinder id_pda_assignment = "Pathfinder" flags = OUTFIT_HAS_BACKPACK|OUTFIT_EXTENDED_SURVIVAL|OUTFIT_COMPREHENSIVE_SURVIVAL backpack_contents = list(/obj/item/clothing/accessory/permit/gun/planetside = 1) diff --git a/maps/southern_cross/southern_cross_jobs.dm b/maps/southern_cross/southern_cross_jobs.dm index df8aae6e98..12166d1478 100644 --- a/maps/southern_cross/southern_cross_jobs.dm +++ b/maps/southern_cross/southern_cross_jobs.dm @@ -1,9 +1,8 @@ -//VORESTATION EDIT!!! This whole file is being included by hand to get these jobs rather than using the map datum itself. // Pilots var/const/SAR =(1<<11) -var/const/PILOT =(1<<15) //VOREStation Edit - Bumped up 2 -var/const/EXPLORER =(1<<12) //VOREStation Edit - Moved to science +var/const/PILOT =(1<<13) +var/const/EXPLORER =(1<<14) var/const/access_pilot = 67 var/const/access_explorer = 43 @@ -77,28 +76,28 @@ var/const/access_explorer = 43 faction = "Station" total_positions = 2 spawn_positions = 2 - supervisors = "the pathfinder and the head of personnel" //VOREStation Edit + supervisors = "the head of personnel" selection_color = "#515151" idtype = /obj/item/weapon/card/id/civilian/pilot - economic_modifier = 5 //VOREStation Edit - access = list(access_pilot) //VOREStation Edit - minimal_access = list(access_pilot) //VOREStation Edit + economic_modifier = 4 + access = list(access_pilot, access_cargo, access_mining, access_mining_station) + minimal_access = list(access_pilot, access_cargo, access_mining, access_mining_station) outfit_type = /decl/hierarchy/outfit/job/pilot /datum/job/explorer title = "Explorer" flag = EXPLORER - department = "Science" //VOREStation Edit - department_flag = MEDSCI //VOREStation Edit + department = "Civilian" + department_flag = CIVILIAN faction = "Station" - total_positions = 2 //VOREStation Edit - spawn_positions = 2 //VOREStation Edit - supervisors = "the pathfinder and the research director" //VOREStation Edit - selection_color = "#633D63" //VOREStation Edit + total_positions = 4 + spawn_positions = 4 + supervisors = "the explorer leader and the head of personnel" + selection_color = "#515151" idtype = /obj/item/weapon/card/id/civilian/explorer - economic_modifier = 6 //VOREStation Edit - access = list(access_pilot, access_explorer, access_research) //VOREStation Edit - minimal_access = list(access_pilot, access_explorer, access_research) //VOREStation Edit + economic_modifier = 4 + access = list(access_explorer) + minimal_access = list(access_explorer) outfit_type = /decl/hierarchy/outfit/job/explorer2 /* alt_titles = list( @@ -114,10 +113,10 @@ var/const/access_explorer = 43 faction = "Station" total_positions = 2 spawn_positions = 2 - supervisors = "the pathfinder and the chief medical officer" //VOREStation Edit - selection_color = "#013D3B" //VOREStation Edit + supervisors = "the chief medical officer" + selection_color = "#515151" idtype = /obj/item/weapon/card/id/medical - economic_modifier = 6 //VOREStation Edit + economic_modifier = 4 access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_chemistry, access_virology, access_eva, access_maint_tunnels, access_external_airlocks, access_psychiatrist, access_explorer) minimal_access = list(access_medical, access_medical_equip, access_morgue, access_explorer) outfit_type = /decl/hierarchy/outfit/job/medical/sar \ No newline at end of file diff --git a/maps/southern_cross/southern_cross_jobs_vr.dm b/maps/southern_cross/southern_cross_jobs_vr.dm index 600ace3885..251417dbba 100644 --- a/maps/southern_cross/southern_cross_jobs_vr.dm +++ b/maps/southern_cross/southern_cross_jobs_vr.dm @@ -1,7 +1,41 @@ -var/const/PATHFINDER =(1<<13) //VOREStation Edit - Added Pathfinder +var/const/SAR =(1<<11) +var/const/PILOT =(1<<15) +var/const/EXPLORER =(1<<12) +var/const/PATHFINDER =(1<<13) -/obj/item/weapon/card/id/science/head/pathfinder +/obj/item/weapon/card/id/medical/sar + assignment = "Field Medic" + rank = "Field Medic" + icon_state = "cyan" + primary_color = rgb(47,189,189) + secondary_color = rgb(127,223,223) + job_access_type = /datum/job/sar + +/obj/item/weapon/card/id/explorer + name = "identification card" + desc = "A card issued to station exploration staff." + icon_state = "green" + primary_color = rgb(47,189,0) + secondary_color = rgb(127,223,95) + +/obj/item/weapon/card/id/explorer/pilot + assignment = "Pilot" + rank = "Pilot" + job_access_type = /datum/job/pilot + +/obj/item/weapon/card/id/explorer/explorer + assignment = "Explorer" + rank = "Explorer" + job_access_type = /datum/job/explorer + +/obj/item/weapon/card/id/explorer/head/ + name = "identification card" desc = "A card which represents discovery of the unknown." + icon_state = "greenGold" + primary_color = rgb(47,189,0) + secondary_color = rgb(127,223,95) + +/obj/item/weapon/card/id/explorer/head/pathfinder assignment = "Pathfinder" rank = "Pathfinder" job_access_type = /datum/job/pathfinder @@ -16,9 +50,60 @@ var/const/PATHFINDER =(1<<13) //VOREStation Edit - Added Pathfinder spawn_positions = 1 supervisors = "the research director" selection_color = "#AD6BAD" - idtype = /obj/item/weapon/card/id/science/head/pathfinder + idtype = /obj/item/weapon/card/id/explorer/head/pathfinder economic_modifier = 7 - + minimal_player_age = 7 + access = list(access_eva, access_maint_tunnels, access_external_airlocks, access_pilot, access_explorer, access_research, access_gateway) minimal_access = list(access_eva, access_pilot, access_explorer, access_research, access_gateway) outfit_type = /decl/hierarchy/outfit/job/pathfinder + +/datum/job/pilot + title = "Pilot" + flag = PILOT + department = "Civilian" + department_flag = CIVILIAN + faction = "Station" + total_positions = 2 + spawn_positions = 2 + supervisors = "the pathfinder and the head of personnel" + selection_color = "#515151" + idtype = /obj/item/weapon/card/id/explorer/pilot + economic_modifier = 5 + minimal_player_age = 3 + access = list(access_pilot) + minimal_access = list(access_pilot) + outfit_type = /decl/hierarchy/outfit/job/pilot + +/datum/job/explorer + title = "Explorer" + flag = EXPLORER + department = "Science" + department_flag = MEDSCI + faction = "Station" + total_positions = 2 + spawn_positions = 2 + supervisors = "the pathfinder and the research director" + selection_color = "#633D63" + idtype = /obj/item/weapon/card/id/explorer/explorer + economic_modifier = 6 + access = list(access_explorer, access_research) + minimal_access = list(access_explorer, access_research) + outfit_type = /decl/hierarchy/outfit/job/explorer2 + +/datum/job/sar + title = "Field Medic" + flag = SAR + department = "Medical" + department_flag = MEDSCI + faction = "Station" + total_positions = 2 + spawn_positions = 2 + supervisors = "the pathfinder and the chief medical officer" + selection_color = "#013D3B" + idtype = /obj/item/weapon/card/id/medical/sar + economic_modifier = 6 + minimal_player_age = 3 + access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_chemistry, access_eva, access_maint_tunnels, access_external_airlocks, access_pilot) + minimal_access = list(access_medical, access_medical_equip, access_morgue, access_pilot) + outfit_type = /decl/hierarchy/outfit/job/medical/sar diff --git a/maps/southern_cross/structures/closets/misc.dm b/maps/southern_cross/structures/closets/misc.dm index 7fc5b62889..82b2bd65cb 100644 --- a/maps/southern_cross/structures/closets/misc.dm +++ b/maps/southern_cross/structures/closets/misc.dm @@ -36,15 +36,6 @@ /obj/structure/closet/secure_closet/explorer name = "explorer locker" - //VOREStation Add begin - icon = 'icons/obj/closet_vr.dmi' //VOREStation Add - icon_state = "secureexp1" - icon_closed = "secureexp" - icon_locked = "secureexp1" - icon_opened = "secureexpopen" - icon_broken = "secureexpbroken" - icon_off = "secureexpoff" - //VOREStation Add end req_access = list(access_explorer) starts_with = list( @@ -60,11 +51,7 @@ /obj/item/device/geiger, /obj/item/weapon/cell/device, /obj/item/device/radio, - /obj/item/stack/marker_beacon/thirty, - /obj/item/weapon/material/knife/tacknife/survival, //VOREStation Add, - /obj/item/weapon/material/knife/machete, //VOREStation Add, - /obj/item/clothing/accessory/holster/machete, //VOREStation Add, - /obj/item/weapon/reagent_containers/food/snacks/liquidfood = 2) //VOREStation Add + /obj/item/stack/marker_beacon/thirty) /obj/structure/closet/secure_closet/explorer/initialize() if(prob(50)) @@ -99,7 +86,6 @@ /obj/item/weapon/reagent_containers/glass/bottle/inaprovaline, /obj/item/weapon/reagent_containers/glass/bottle/antitoxin, /obj/item/weapon/storage/belt/medical/emt, - /obj/item/weapon/material/knife/tacknife/survival, //VOREStation Add, /obj/item/clothing/mask/gas, /obj/item/clothing/suit/storage/hooded/wintercoat/medical/sar, /obj/item/clothing/shoes/boots/winter/explorer, diff --git a/maps/southern_cross/structures/closets/misc_vr.dm b/maps/southern_cross/structures/closets/misc_vr.dm index 48b2f88d5b..07d98e8434 100644 --- a/maps/southern_cross/structures/closets/misc_vr.dm +++ b/maps/southern_cross/structures/closets/misc_vr.dm @@ -1,3 +1,85 @@ +/obj/structure/closet/secure_closet/explorer + icon = 'icons/obj/closet_vr.dmi' + icon_state = "secureexp1" + icon_closed = "secureexp" + icon_locked = "secureexp1" + icon_opened = "secureexpopen" + icon_broken = "secureexpbroken" + icon_off = "secureexpoff" + + starts_with = list( + /obj/item/clothing/under/explorer, + /obj/item/clothing/suit/storage/hooded/explorer, + /obj/item/clothing/mask/gas/explorer, + /obj/item/clothing/shoes/boots/winter/explorer, + /obj/item/clothing/gloves/black, + /obj/item/device/radio/headset/explorer, + /obj/item/device/flashlight, + /obj/item/device/gps/explorer, + /obj/item/weapon/storage/box/flare, + /obj/item/device/geiger, + /obj/item/weapon/cell/device, + /obj/item/device/radio, + /obj/item/stack/marker_beacon/thirty, + /obj/item/weapon/material/knife/tacknife/survival, + /obj/item/weapon/material/knife/machete, + /obj/item/clothing/accessory/holster/machete, + /obj/item/weapon/reagent_containers/food/snacks/liquidfood = 2) + +/obj/structure/closet/secure_closet/sar + name = "field medic locker" + + starts_with = list( + /obj/item/weapon/storage/backpack/dufflebag/emt, + /obj/item/weapon/storage/box/autoinjectors, + /obj/item/weapon/storage/box/syringes, + /obj/item/weapon/reagent_containers/glass/bottle/inaprovaline, + /obj/item/weapon/reagent_containers/glass/bottle/antitoxin, + /obj/item/weapon/storage/belt/medical/emt, + /obj/item/weapon/material/knife/tacknife/survival, + /obj/item/weapon/gun/energy/frontier/locked/holdout, + /obj/item/clothing/mask/gas/explorer, + /obj/item/clothing/suit/storage/hooded/explorer/medic, + /obj/item/clothing/suit/storage/hooded/wintercoat/medical/sar, + /obj/item/clothing/shoes/boots/winter/explorer, + /obj/item/device/radio/headset/sar, + /obj/item/weapon/cartridge/medical, + /obj/item/device/flashlight, + /obj/item/weapon/tank/emergency/oxygen/engi, + /obj/item/clothing/glasses/hud/health, + /obj/item/device/healthanalyzer, + /obj/item/device/radio/off, + /obj/random/medical, + /obj/item/weapon/reagent_containers/food/snacks/liquidfood = 3, + /obj/item/weapon/tool/crowbar, + /obj/item/weapon/extinguisher/mini, + /obj/item/weapon/storage/box/freezer, + /obj/item/clothing/accessory/storage/white_vest, + /obj/item/taperoll/medical, + /obj/item/device/gps, + /obj/item/device/geiger, + /obj/item/bodybag/cryobag) + +/obj/structure/closet/secure_closet/pilot + starts_with = list( + /obj/item/weapon/storage/backpack/parachute, + /obj/item/weapon/material/knife/tacknife/survival, + /obj/item/weapon/gun/energy/frontier/locked/holdout, + /obj/item/clothing/head/pilot, + /obj/item/clothing/under/rank/pilot1, + /obj/item/clothing/suit/storage/toggle/bomber/pilot, + /obj/item/clothing/shoes/boots/winter/explorer, + /obj/item/clothing/mask/gas/half, + /obj/item/clothing/shoes/black, + /obj/item/clothing/gloves/fingerless, + /obj/item/device/radio/headset/pilot/alt, + /obj/item/device/flashlight, + /obj/item/weapon/reagent_containers/food/snacks/liquidfood = 2, + /obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle, + /obj/item/weapon/storage/box/flare, + /obj/item/weapon/cell/device, + /obj/item/device/radio) + /obj/structure/closet/secure_closet/pathfinder name = "pathfinder locker" icon = 'icons/obj/closet_vr.dmi' @@ -23,6 +105,7 @@ /obj/item/device/geiger, /obj/item/weapon/cell/device, /obj/item/device/radio, + /obj/item/device/subspaceradio, /obj/item/stack/marker_beacon/thirty, /obj/item/weapon/material/knife/tacknife/survival, /obj/item/weapon/material/knife/machete/deluxe, diff --git a/maps/submaps/engine_submaps/engine_tesla.dmm b/maps/submaps/engine_submaps/engine_tesla.dmm index 415b6de6b6..ea807840f4 100644 --- a/maps/submaps/engine_submaps/engine_tesla.dmm +++ b/maps/submaps/engine_submaps/engine_tesla.dmm @@ -13,8 +13,8 @@ "am" = (/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/cyan{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/airless,/area/space) "an" = (/obj/structure/cable/cyan{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/airless,/area/space) "ao" = (/obj/structure/closet/emcloset,/obj/machinery/embedded_controller/radio/airlock/airlock_controller{frequency = 1379; id_tag = "eng_north_airlock"; pixel_x = 24; pixel_y = 0; req_one_access = list(10,11); tag_airpump = "eng_north_pump"; tag_chamber_sensor = "eng_north_sensor"; tag_exterior_door = "eng_north_outer"; tag_interior_door = "eng_north_inner"},/turf/simulated/floor/tiled/dark,/area/engineering/engine_room) -"ap" = (/obj/machinery/portable_atmospherics/canister/phoron,/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"},/turf/simulated/floor,/area/engineering/engine_gas) -"aq" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/dispenser/phoron,/turf/simulated/floor,/area/engineering/engine_gas) +"ap" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"},/turf/simulated/floor,/area/engineering/engine_gas) +"aq" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/table/standard,/obj/item/stack/cable_coil/random,/obj/item/weapon/tool/wrench,/obj/item/weapon/tool/screwdriver,/turf/simulated/floor,/area/engineering/engine_gas) "ar" = (/obj/structure/cable/cyan,/obj/machinery/power/emitter{anchored = 1; state = 1},/turf/simulated/floor/airless,/area/space) "as" = (/obj/structure/cable/cyan{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/rust/mono_rusted1,/turf/simulated/floor/airless,/area/space) "at" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "eng_north_airlock"; name = "exterior access button"; pixel_x = -5; pixel_y = -26; req_one_access = list(10,11,13)},/obj/machinery/door/airlock/glass_external{frequency = 1379; icon_state = "door_locked"; id_tag = "eng_north_outer"; locked = 1; name = "Engine North Airlock Exterior"},/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/engineering/engine_room) @@ -24,15 +24,15 @@ "ax" = (/obj/structure/cable/cyan{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/yellow/border{dir = 5},/turf/simulated/floor/tiled,/area/engineering/engine_room) "ay" = (/obj/structure/cable/cyan{d1 = 0; d2 = 4; icon_state = "0-4"},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -28},/turf/simulated/floor,/area/engineering/engine_gas) "az" = (/obj/structure/cable/cyan{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/power/sensor{name = "Powernet Sensor - Engine Power"; name_tag = "Engine Power"},/obj/structure/cable/cyan{d2 = 2; icon_state = "0-2"},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/engineering/engine_gas) -"aA" = (/obj/machinery/camera/network/engine{dir = 1},/obj/structure/table/standard,/obj/item/weapon/circuitboard/tesla_coil{pixel_x = -2; pixel_y = -2},/obj/item/weapon/circuitboard/tesla_coil{pixel_x = 2; pixel_y = 2},/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/capacitor{pixel_x = -2; pixel_y = 2},/turf/simulated/floor,/area/engineering/engine_gas) +"aA" = (/obj/machinery/camera/network/engine{dir = 1},/obj/structure/table/standard,/obj/item/weapon/circuitboard/grounding_rod{pixel_x = 2; pixel_y = 2},/obj/item/weapon/circuitboard/grounding_rod{pixel_x = -2; pixel_y = -2},/turf/simulated/floor,/area/engineering/engine_gas) "aB" = (/obj/machinery/camera/network/engine{dir = 8},/turf/space,/area/space) "aC" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 0; pixel_y = 0},/turf/simulated/wall/r_wall,/area/engineering/engine_room) "aD" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/industrial/warning/corner{icon_state = "warningcorner"; dir = 1},/turf/simulated/floor/tiled,/area/engineering/engine_room) "aE" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/yellow/border{dir = 4},/turf/simulated/floor/tiled,/area/engineering/engine_room) -"aF" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/engineering,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/engineering/engine_gas) +"aF" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/engineering,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/door/firedoor/glass,/turf/simulated/floor,/area/engineering/engine_gas) "aG" = (/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for the engine charging port."; dir = 1; id = "SupermatterPort"; name = "Observation Blast Doors"; pixel_x = -4; pixel_y = -24; req_access = list(10)},/turf/simulated/floor/tiled,/area/engineering/engine_room) "aH" = (/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for the engine charging port."; id = "SupermatterPort"; name = "Observation Blast Doors"; pixel_x = -4; pixel_y = 24; req_access = list(10)},/turf/simulated/floor/tiled,/area/engineering/engine_room) -"aI" = (/obj/machinery/power/tesla_coil,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/airless,/area/space) +"aI" = (/obj/item/weapon/extinguisher,/turf/space,/area/space) "aJ" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/engineering/engine_room) "aK" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/cyan{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/engineering/engine_room) "aL" = (/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/turf/simulated/floor/tiled,/area/engineering/engine_room) @@ -56,14 +56,16 @@ "bd" = (/obj/structure/grille,/obj/structure/window/reinforced/full,/obj/machinery/door/firedoor/glass,/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/structure/window/reinforced,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "EngineRadiatorViewport"; name = "Engine Radiator Viewport Shutter"; opacity = 0},/turf/simulated/floor,/area/submap/pa_room) "be" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/engineering/engine_room) "bf" = (/turf/simulated/floor/tiled,/area/submap/pa_room) +"bg" = (/obj/machinery/power/grounding_rod,/turf/simulated/floor/airless,/area/space) "bh" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 0; pixel_y = 0},/turf/simulated/wall/r_wall,/area/submap/pa_room) "bi" = (/turf/simulated/wall/r_wall,/area/submap/pa_room) -"bj" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/glass_engineering,/turf/simulated/floor/tiled,/area/submap/pa_room) +"bj" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/power/tesla_coil,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/airless,/area/space) "bk" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/borderfloor{dir = 8},/turf/simulated/floor/tiled,/area/engineering/engine_room) "bl" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 4; icon_state = "tube1"; pixel_x = 0},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/yellow/border{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/yellow/bordercorner2{dir = 6},/turf/simulated/floor/tiled,/area/engineering/engine_room) "bm" = (/turf/simulated/wall/r_wall,/area/template_noop) "bn" = (/obj/structure/grille,/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "EngineRadiatorViewport"; name = "Engine Radiator Viewport Shutter"; opacity = 0},/obj/machinery/door/firedoor/glass,/turf/simulated/floor,/area/submap/pa_room) "bo" = (/obj/effect/floor_decal/techfloor/orange{dir = 5},/turf/simulated/floor/tiled/techfloor/grid,/area/submap/pa_room) +"bp" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/item/clothing/head/hardhat,/turf/simulated/floor/airless,/area/space) "bq" = (/obj/effect/floor_decal/steeldecal,/turf/simulated/floor/tiled,/area/submap/pa_room) "br" = (/obj/machinery/light{dir = 1},/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for the engine charging port."; id = "EngineRadiatorViewport"; name = "Viewport Blast Doors"; pixel_x = -4; pixel_y = 24; req_access = list(10)},/turf/simulated/floor/tiled,/area/submap/pa_room) "bs" = (/obj/structure/cable/cyan{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled,/area/submap/pa_room) @@ -74,7 +76,7 @@ "bx" = (/obj/structure/particle_accelerator/particle_emitter/left{dir = 8},/obj/effect/floor_decal/techfloor/orange{dir = 1},/turf/simulated/floor/tiled/techfloor,/area/submap/pa_room) "by" = (/obj/effect/floor_decal/techfloor/orange{dir = 1},/turf/simulated/floor/tiled/techfloor,/area/submap/pa_room) "bz" = (/obj/machinery/particle_accelerator/control_box,/obj/effect/floor_decal/techfloor/orange{dir = 1},/turf/simulated/floor/tiled/techfloor,/area/submap/pa_room) -"bA" = (/obj/effect/floor_decal/techfloor/orange{dir = 5},/obj/item/stack/cable_coil/random,/turf/simulated/floor/tiled/techfloor,/area/submap/pa_room) +"bA" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/glass_engineering,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/submap/pa_room) "bB" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled,/area/submap/pa_room) "bC" = (/obj/structure/grille,/obj/structure/window/reinforced/full,/obj/machinery/door/firedoor/glass,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor,/area/submap/pa_room) "bD" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled,/area/engineering/engine_room) @@ -99,6 +101,7 @@ "bW" = (/obj/effect/floor_decal/techfloor/orange/corner,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/techfloor/grid,/area/submap/pa_room) "bX" = (/obj/effect/floor_decal/techfloor/orange{icon_state = "techfloororange_edges"; dir = 6},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/techfloor/grid,/area/submap/pa_room) "bY" = (/obj/machinery/alarm{dir = 8; pixel_x = 25; pixel_y = 0},/obj/effect/floor_decal/steeldecal/steel_decals8,/obj/structure/table/standard,/obj/item/weapon/book/manual/tesla_engine,/obj/item/weapon/book/manual/engineering_particle_accelerator{pixel_x = 5; pixel_y = 5},/turf/simulated/floor/tiled,/area/submap/pa_room) +"bZ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/power/tesla_coil,/turf/simulated/floor/airless,/area/space) "ca" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/submap/pa_room) "cb" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 4; icon_state = "tube1"; pixel_x = 0},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/yellow/border{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/corner/yellow/bordercorner2{dir = 5},/turf/simulated/floor/tiled,/area/engineering/engine_room) "cc" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/simulated/floor/tiled,/area/engineering/engine_room) @@ -117,7 +120,7 @@ "cp" = (/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/yellow/border,/turf/simulated/floor/tiled,/area/engineering/engine_room) "cq" = (/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/yellow/border,/turf/simulated/floor/tiled,/area/engineering/engine_room) "cr" = (/obj/structure/cable/cyan{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/yellow/border{dir = 6},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/tiled,/area/engineering/engine_room) -"cs" = (/obj/machinery/power/emitter{anchored = 1; dir = 1; state = 1},/obj/structure/cable/cyan{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/airless,/area/space) +"cs" = (/obj/item/weapon/weldingtool,/turf/simulated/floor/airless,/area/space) "ct" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "eng_south_airlock"; name = "exterior access button"; pixel_x = -5; pixel_y = 26; req_one_access = list(10,11,13)},/obj/machinery/door/airlock/glass_external{frequency = 1379; icon_state = "door_locked"; id_tag = "eng_south_outer"; locked = 1; name = "Engine South Airlock Exterior"},/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/engineering/engine_room) "cu" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "eng_south_pump"},/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "eng_south_sensor"; pixel_x = 0; pixel_y = 25},/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/tiled/dark,/area/engineering/engine_room) "cv" = (/obj/machinery/door/airlock/glass_external{frequency = 1379; icon_state = "door_locked"; id_tag = "eng_south_inner"; locked = 1; name = "Engine South Airlock Interior"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "eng_south_airlock"; name = "interior access button"; pixel_x = 8; pixel_y = -26; req_one_access = list(10,11)},/turf/simulated/floor/tiled/dark,/area/engineering/engine_room) @@ -128,14 +131,15 @@ "cA" = (/obj/structure/cable/cyan{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/rust,/turf/simulated/floor/airless,/area/space) "cB" = (/obj/structure/closet/emcloset,/obj/machinery/embedded_controller/radio/airlock/airlock_controller{frequency = 1379; id_tag = "eng_south_airlock"; pixel_x = 24; pixel_y = 0; req_one_access = list(10,11); tag_airpump = "eng_south_pump"; tag_chamber_sensor = "eng_south_sensor"; tag_exterior_door = "eng_south_outer"; tag_interior_door = "eng_south_inner"},/turf/simulated/floor/tiled/dark,/area/engineering/engine_room) "cC" = (/turf/simulated/wall/r_wall,/area/space) -"cD" = (/obj/structure/lattice,/obj/machinery/power/grounding_rod,/turf/space,/area/space) +"cD" = (/obj/effect/floor_decal/techfloor/orange{dir = 5},/turf/simulated/floor/tiled/techfloor,/area/submap/pa_room) "cE" = (/obj/machinery/door/blast/regular{density = 0; dir = 2; icon_state = "pdoor0"; id = "SupermatterPort"; layer = 2.7; name = "Reactor Blast Door"; opacity = 0},/obj/machinery/door/firedoor/glass,/obj/structure/grille,/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 8; health = 1e+006},/turf/simulated/floor,/area/engineering/engine_room) -"cF" = (/obj/machinery/power/emitter{anchored = 1; state = 1},/obj/structure/cable/cyan,/turf/simulated/floor/airless,/area/space) +"cF" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow,/obj/machinery/power/tesla_coil,/turf/simulated/floor/airless,/area/space) "cG" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled,/area/submap/pa_room) -"cH" = (/obj/machinery/door/airlock/glass_engineering,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/submap/pa_room) +"cH" = (/obj/machinery/door/airlock/glass_engineering,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/submap/pa_room) "cI" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/engineering/engine_room) +"cJ" = (/obj/item/weapon/tool/wirecutters,/turf/simulated/floor/airless,/area/space) "cK" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/airless,/area/space) -"cL" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/airless,/area/space) +"cL" = (/obj/structure/cable/cyan{d2 = 2; icon_state = "0-2"},/obj/machinery/power/emitter{dir = 1; anchored = 1; state = 1},/turf/simulated/floor/airless,/area/space) "cM" = (/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/yellow/border,/turf/simulated/floor/tiled,/area/engineering/engine_room) "cN" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless,/area/space) "cQ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/airless,/area/space) @@ -149,25 +153,25 @@ aaacababababababababababababababababababababababababababaaaa aaacababababababababababababababababababababababababababaaaa aaadabababababababababababababababababababaeaeaeaeaeababaaaa aaacacacacacacacacacacacacacacacafafafababaeagahaiaeababaaaa -aaacababajajajakalalalamalalalanafaoafafafaeagapaqaeababaaaa -aaacabababajajcFajajajarajajadasatauavawaxaeayazaAaaaaaaaaaa -aaacababababadabababababadababaBafafaCaDaEaeaeaFaeaaaaaaaaaa -aaacababababcDabababababcDabababababcEaJaKaLaMaNaOaaaaaaaaaa -aaacababababadabababababadabababababcEaQaRaSaUaVaWaaaaaaaaaa -aaacadadadajcocKcKaIcKcKaIcLababababcEaGbabbbcaZbeaaaaaaaaaa -aaacabababajadadadadadadadcNabaYbPbPbhbibjbibibkblbmbmaaaaaa -aaacabababajadaXadadadaXadcNabbnbobfbqbrbsbtbibkaEaabubvaaaa -aaacabababajadadajajajadadcNadbnbwbxbybzbAbBbCbDaEaaaaaaaaaa -aaacabababajadadajbEajadadaPcKbFbQbGbHbIbJbKbLbMbNaaaabOaaaa +aaacababajajakalalalalalamalalanafaoafafafaeagapaqaeababaaaa +aaacabababajarajajajajajarajadasatauavawaxaeayazaAaaaaaaaaaa +aaacababababadababadababadababaBafafaCaDaEaeaeaFaeaaaaaaaaaa +aaacababababadababadababadabababababcEaJaKaLaMaNaOaaaaaaaaaa +aaacababaIabadababadababadadbgabababcEaQaRaSaUaVaWaaaaaaaaaa +aaacabababbgajcocKcKcKbjcKbpadabababcEaGbabbbcaZbeaaaaaaaaaa +aaacadadadajaXabadabadabaXcNadaYbPbPbhbibAbibibkblbmbmaaaaaa +aaacabababajababadabadababbZadbnbobfbqbrbsbtbibkaEaabubvaaaa +aaacabababajadadcsajajadadcNadbnbwbxbybzcDbBbCbDaEaaaaaaaaaa +aaacabababajababajbEajababaPcKbFbQbGbHbIbJbKbLbMbNaaaabOaaaa aaacabababajadadajajajadadcNadbnbWbRbSbTbUbVbCbDaEaaaaaaaaaa -aaacabababajadaXadadadaXadcNabbnbXcacacdcGbYbibkaEaaaaaaaaaa -aaacabababajadadadadadadadcNabbdcmcmbhbicHbibibkcbbmbmaaaaaa -aaacadadadajcocKcKaIcKcKaIcQababababcEaHcIcecfcgbaaaaaaaaaaa -aaacababababadabababababadabababababcEccchaTcjckclaaaaaaaaaa -aaacababababcDabababababcDabababababcEaJcncMcpcqcraaaaaaaaaa -aaacababababadabababababadababaBafafaCciaEafafafafaaaaaaaaaa -aaacabababajajcsajajajcsajajadakctcucvcwcxafaaaaaaaaaaaaaaaa -aaacabadajajajcyalalalczalalalcAafcBafafafafaaaaaaaaaaaaaaaa +aaacabababajababadabadababcFadbnbXcacacdcGbYbibkaEaaaaaaaaaa +aaacadadadajaXabadabadabaXcNadbdcmcmbhbicHbibibkcbbmbmaaaaaa +aaacabababbgajcocKcKcKbjcKcQadabababcEaHcIcecfcgbaaaaaaaaaaa +aaacababababadababadababadadbgabababcEccchaTcjckclaaaaaaaaaa +aaacababababadababadababadabababababcEaJcncMcpcqcraaaaaaaaaa +aaacababababadababadababadababaBafafaCciaEafafafafaaaaaaaaaa +aaacabababcJcLajajajajajcLajadakctcucvcwcxafaaaaaaaaaaaaaaaa +aaacabadajajcyalalalalalczalalcAafcBafafafafaaaaaaaaaaaaaaaa aaacadadcCcCcCcCcCcCcCcCcCcCcCcCafafaCaaaaaaaaaaaaaaaaaaaaaa aaacababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/maps/submaps/shelters/shelter_1.dmm b/maps/submaps/shelters/shelter_1.dmm index 8b85eea25e..66eba3541d 100644 --- a/maps/submaps/shelters/shelter_1.dmm +++ b/maps/submaps/shelters/shelter_1.dmm @@ -14,6 +14,17 @@ /area/survivalpod) "d" = ( /obj/machinery/smartfridge/survival_pod, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/device/fbp_backup_cell, +/obj/item/device/fbp_backup_cell, +/obj/item/device/fbp_backup_cell, +/obj/item/device/fbp_backup_cell, +/obj/item/device/fbp_backup_cell, +/obj/item/weapon/storage/pill_bottle/dice, /turf/simulated/shuttle/floor/voidcraft, /area/survivalpod) "e" = ( diff --git a/maps/submaps/shelters/shelter_2.dmm b/maps/submaps/shelters/shelter_2.dmm index f06fb90420..b7e8721544 100644 --- a/maps/submaps/shelters/shelter_2.dmm +++ b/maps/submaps/shelters/shelter_2.dmm @@ -32,6 +32,24 @@ /area/survivalpod) "f" = ( /obj/machinery/smartfridge/survival_pod, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/device/fbp_backup_cell, +/obj/item/device/fbp_backup_cell, +/obj/item/device/fbp_backup_cell, +/obj/item/device/fbp_backup_cell, +/obj/item/device/fbp_backup_cell, +/obj/item/weapon/storage/pill_bottle/antitox, +/obj/item/device/healthanalyzer, +/obj/item/weapon/storage/pill_bottle/dice_nerd, /turf/simulated/shuttle/floor/voidcraft, /area/survivalpod) "g" = ( @@ -87,9 +105,7 @@ /area/survivalpod) "p" = ( /obj/structure/table/survival_pod, -/obj/item/weapon/storage/firstaid/adv{ - pixel_x = 4 - }, +/obj/item/weapon/storage/firstaid/adv, /turf/simulated/shuttle/floor/voidcraft, /area/survivalpod) "q" = ( diff --git a/maps/submaps/shelters/shelter_3.dmm b/maps/submaps/shelters/shelter_3.dmm new file mode 100644 index 0000000000..4b7e36706f --- /dev/null +++ b/maps/submaps/shelters/shelter_3.dmm @@ -0,0 +1,336 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/shuttle/wall/voidcraft/survival, +/area/survivalpod) +"b" = ( +/obj/structure/sign/mining/survival{ + dir = 1 + }, +/turf/simulated/shuttle/wall/voidcraft/survival, +/area/survivalpod) +"c" = ( +/obj/structure/window/reinforced/survival_pod{ + dir = 8; + layer = 2.6 + }, +/obj/machinery/door/window/survival_pod{ + dir = 1; + icon_state = "windoor" + }, +/turf/simulated/floor/carpet/sblucarpet, +/area/survivalpod) +"d" = ( +/obj/structure/sign/mining/survival{ + dir = 8 + }, +/turf/simulated/shuttle/wall/voidcraft/survival, +/area/survivalpod) +"e" = ( +/obj/structure/fans, +/turf/simulated/shuttle/floor/voidcraft, +/area/survivalpod) +"f" = ( +/obj/machinery/smartfridge/survival_pod, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/weapon/reagent_containers/food/snacks/liquidfood, +/obj/item/device/fbp_backup_cell, +/obj/item/device/fbp_backup_cell, +/obj/item/device/fbp_backup_cell, +/obj/item/device/fbp_backup_cell, +/obj/item/device/fbp_backup_cell, +/obj/item/weapon/storage/pill_bottle/dice_nerd, +/obj/item/weapon/storage/pill_bottle/antitox, +/obj/item/weapon/storage/firstaid/adv, +/obj/item/weapon/storage/firstaid/regular, +/obj/item/weapon/storage/box/survival/comp{ + starts_with = list(/obj/item/weapon/tool/prybar/red,/obj/item/clothing/glasses/goggles,/obj/item/weapon/reagent_containers/hypospray/autoinjector,/obj/item/stack/medical/bruise_pack,/obj/item/device/flashlight/glowstick,/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar,/obj/item/clothing/mask/breath,/obj/item/weapon/tank/emergency/oxygen/engi) + }, +/obj/item/weapon/extinguisher/mini, +/obj/item/device/radio{ + icon_state = "walkietalkieOLD"; + name = "emergency radio" + }, +/obj/item/weapon/towel{ + color = "#800080" + }, +/obj/item/weapon/towel{ + color = "#800080" + }, +/obj/item/weapon/storage/box/donkpockets, +/obj/item/weapon/storage/box/donkpockets, +/obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask/proteinshake, +/obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask/proteinshake, +/obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask/proteinshake, +/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar, +/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar, +/obj/item/weapon/reagent_containers/food/snacks/candy, +/obj/item/weapon/reagent_containers/food/snacks/candy, +/obj/item/weapon/reagent_containers/food/drinks/dry_ramen, +/obj/item/weapon/reagent_containers/food/drinks/dry_ramen, +/obj/item/weapon/reagent_containers/food/drinks/dry_ramen, +/obj/item/weapon/reagent_containers/food/snacks/chips, +/obj/item/weapon/reagent_containers/food/snacks/chips, +/obj/item/weapon/reagent_containers/food/snacks/sosjerky, +/obj/item/weapon/reagent_containers/food/snacks/sosjerky, +/obj/item/weapon/reagent_containers/food/snacks/no_raisin, +/obj/item/weapon/reagent_containers/food/snacks/no_raisin, +/obj/item/weapon/reagent_containers/food/snacks/spacetwinkie, +/obj/item/weapon/reagent_containers/food/snacks/spacetwinkie, +/obj/item/weapon/reagent_containers/food/snacks/cheesiehonkers, +/obj/item/weapon/reagent_containers/food/snacks/cheesiehonkers, +/obj/item/weapon/reagent_containers/food/snacks/tastybread, +/obj/item/weapon/reagent_containers/food/snacks/tastybread, +/obj/item/weapon/reagent_containers/food/snacks/tastybread, +/obj/item/weapon/reagent_containers/food/snacks/syndicake, +/obj/item/weapon/reagent_containers/food/snacks/unajerky, +/obj/item/weapon/storage/box/mixedglasses, +/obj/item/weapon/reagent_containers/food/drinks/flask/vacuumflask, +/obj/item/weapon/reagent_containers/food/drinks/flask/vacuumflask, +/obj/item/weapon/reagent_containers/food/drinks/bottle/orangejuice, +/obj/item/weapon/reagent_containers/food/drinks/bottle/tomatojuice, +/obj/item/weapon/reagent_containers/food/drinks/bottle/limejuice, +/obj/item/weapon/reagent_containers/food/drinks/bottle/lemonjuice, +/obj/item/weapon/reagent_containers/food/drinks/bottle/applejuice, +/obj/item/weapon/reagent_containers/food/drinks/bottle/milk, +/obj/item/weapon/reagent_containers/food/drinks/bottle/cream, +/obj/item/weapon/reagent_containers/food/drinks/bottle/cola, +/obj/item/weapon/reagent_containers/food/drinks/bottle/space_up, +/obj/item/weapon/reagent_containers/food/drinks/bottle/space_mountain_wind, +/obj/item/weapon/reagent_containers/food/drinks/cans/grape_juice, +/obj/item/weapon/reagent_containers/food/drinks/cans/grape_juice, +/obj/item/weapon/reagent_containers/food/drinks/cans/sodawater, +/obj/item/weapon/reagent_containers/food/drinks/cans/sodawater, +/obj/item/weapon/reagent_containers/food/drinks/cans/gingerale, +/obj/item/weapon/reagent_containers/food/drinks/cans/gingerale, +/obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle, +/obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle, +/obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle, +/obj/item/weapon/reagent_containers/food/drinks/ice, +/obj/item/weapon/reagent_containers/food/drinks/ice, +/obj/item/weapon/reagent_containers/food/drinks/tea, +/obj/item/weapon/reagent_containers/food/drinks/tea, +/obj/item/weapon/reagent_containers/food/drinks/h_chocolate, +/obj/item/weapon/reagent_containers/food/drinks/h_chocolate, +/obj/item/weapon/reagent_containers/food/drinks/h_chocolate, +/obj/item/toy/plushie/kitten, +/turf/simulated/shuttle/floor/voidcraft, +/area/survivalpod) +"g" = ( +/obj/item/device/gps/computer, +/turf/simulated/shuttle/floor/voidcraft, +/area/survivalpod) +"h" = ( +/obj/machinery/shower, +/obj/item/weapon/soap/deluxe, +/obj/structure/curtain, +/turf/simulated/shuttle/floor/voidcraft, +/area/survivalpod) +"i" = ( +/obj/structure/toilet, +/turf/simulated/shuttle/floor/voidcraft, +/area/survivalpod) +"j" = ( +/obj/structure/sign/mining/survival{ + dir = 4 + }, +/turf/simulated/shuttle/wall/voidcraft/survival, +/area/survivalpod) +"k" = ( +/obj/machinery/sleeper/survival_pod, +/turf/simulated/shuttle/floor/voidcraft, +/area/survivalpod) +"l" = ( +/turf/simulated/shuttle/floor/voidcraft, +/area/survivalpod) +"m" = ( +/obj/structure/bed/pod, +/obj/item/weapon/bedsheet/hos, +/turf/simulated/shuttle/floor/voidcraft, +/area/survivalpod) +"n" = ( +/obj/structure/window/reinforced/survival_pod{ + icon_state = "pwindow"; + dir = 1 + }, +/obj/structure/bed/padded, +/obj/item/weapon/bedsheet/hop, +/turf/simulated/floor/carpet/sblucarpet, +/area/survivalpod) +"o" = ( +/obj/structure/window/reinforced/survival_pod{ + dir = 8; + icon_state = "pwindow" + }, +/turf/simulated/floor/carpet/sblucarpet, +/area/survivalpod) +"p" = ( +/obj/structure/table/survival_pod, +/obj/machinery/microwave{ + pixel_y = 6 + }, +/obj/structure/sink/kitchen{ + icon_state = "sink_alt"; + dir = 4; + pixel_x = -13 + }, +/turf/simulated/shuttle/floor/voidcraft, +/area/survivalpod) +"q" = ( +/obj/structure/tubes, +/obj/machinery/recharge_station, +/turf/simulated/shuttle/floor/voidcraft, +/area/survivalpod) +"r" = ( +/obj/machinery/light{ + dir = 4; + light_color = "#DDFFD3" + }, +/obj/structure/flora/pottedplant/stoutbush, +/turf/simulated/floor/carpet/sblucarpet, +/area/survivalpod) +"s" = ( +/obj/structure/window/reinforced/survival_pod{ + icon_state = "pwindow"; + dir = 1 + }, +/obj/structure/bed/chair/comfy/black, +/turf/simulated/floor/carpet/sblucarpet, +/area/survivalpod) +"t" = ( +/obj/machinery/door/window/survival_pod{ + icon_state = "windoor"; + dir = 1 + }, +/turf/simulated/floor/carpet/sblucarpet, +/area/survivalpod) +"u" = ( +/obj/structure/window/reinforced/survival_pod{ + icon_state = "pwindow"; + dir = 1 + }, +/turf/simulated/floor/carpet/sblucarpet, +/area/survivalpod) +"v" = ( +/obj/structure/window/reinforced/survival_pod{ + density = 0; + dir = 9; + icon_state = "pwindow" + }, +/turf/simulated/floor/carpet/sblucarpet, +/area/survivalpod) +"w" = ( +/obj/structure/bed/chair/comfy/black, +/turf/simulated/floor/carpet/sblucarpet, +/area/survivalpod) +"x" = ( +/obj/machinery/light, +/obj/structure/bed/chair/comfy/black{ + dir = 8 + }, +/turf/simulated/floor/carpet/sblucarpet, +/area/survivalpod) +"y" = ( +/obj/structure/table/steel, +/turf/simulated/floor/carpet/sblucarpet, +/area/survivalpod) +"z" = ( +/turf/simulated/floor/carpet/sblucarpet, +/area/survivalpod) +"A" = ( +/obj/machinery/button/remote/airlock/survival_pod{ + dir = 10; + id = "shelter_gamma"; + pixel_y = -24 + }, +/obj/structure/bed/chair/comfy/black{ + dir = 4 + }, +/turf/simulated/floor/carpet/sblucarpet, +/area/survivalpod) +"C" = ( +/obj/structure/sign/mining/survival, +/turf/simulated/shuttle/wall/voidcraft/survival, +/area/survivalpod) +"D" = ( +/obj/structure/fans/tiny, +/obj/machinery/door/airlock/voidcraft/survival_pod{ + id_tag = "shelter_gamma" + }, +/turf/simulated/shuttle/floor/voidcraft, +/area/survivalpod) +"E" = ( +/obj/structure/sign/mining, +/turf/simulated/shuttle/wall/voidcraft/survival, +/area/survivalpod) + +(1,1,1) = {" +a +d +a +d +a +d +a +"} +(2,1,1) = {" +b +e +k +p +s +y +C +"} +(3,1,1) = {" +a +f +l +l +t +x +a +"} +(4,1,1) = {" +b +g +m +q +u +z +D +"} +(5,1,1) = {" +a +i +c +o +v +A +a +"} +(6,1,1) = {" +b +h +n +r +w +y +E +"} +(7,1,1) = {" +a +j +a +j +a +j +a +"} diff --git a/maps/tether/submaps/_tether_submaps.dm b/maps/tether/submaps/_tether_submaps.dm index 5c30fad0df..11e6c44b2d 100644 --- a/maps/tether/submaps/_tether_submaps.dm +++ b/maps/tether/submaps/_tether_submaps.dm @@ -37,12 +37,13 @@ name = "Underdark" flags = MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER base_turf = /turf/simulated/mineral/floor/virgo3b + z = Z_LEVEL_UNDERDARK /datum/map_template/tether_lateload/tether_underdark/on_map_loaded(z) . = ..() - seed_submaps(list(z), 100, /area/mine/unexplored/underdark, /datum/map_template/underdark) - new /datum/random_map/automata/cave_system/no_cracks(null, 1, 1, z, world.maxx, world.maxy) // Create the mining Z-level. - new /datum/random_map/noise/ore(null, 1, 1, z, 64, 64) // Create the mining ore distribution map. + seed_submaps(list(Z_LEVEL_UNDERDARK), 100, /area/mine/unexplored/underdark, /datum/map_template/underdark) + new /datum/random_map/automata/cave_system/no_cracks(null, 1, 1, Z_LEVEL_UNDERDARK, world.maxx, world.maxy) // Create the mining Z-level. + new /datum/random_map/noise/ore(null, 1, 1, Z_LEVEL_UNDERDARK, 64, 64) // Create the mining ore distribution map. ////////////////////////////////////////////////////////////////////////////// /// Away Missions @@ -63,6 +64,7 @@ /datum/map_z_level/tether_lateload/away_beach name = "Away Mission - Desert Beach" + z = Z_LEVEL_BEACH /datum/map_template/tether_lateload/away_beach_cave name = "Desert Planet - Z2 Cave" @@ -70,8 +72,18 @@ mappath = 'beach/cave.dmm' associated_map_datum = /datum/map_z_level/tether_lateload/away_beach_cave +/datum/map_template/tether_lateload/away_beach_cave/on_map_loaded(z) + . = ..() + seed_submaps(list(Z_LEVEL_BEACH_CAVE), 50, /area/tether_away/cave/unexplored/normal, /datum/map_template/surface/mountains/normal) + seed_submaps(list(Z_LEVEL_BEACH_CAVE), 50, /area/tether_away/cave/unexplored/deep, /datum/map_template/surface/mountains/deep) + + // Now for the tunnels. + new /datum/random_map/automata/cave_system/no_cracks(null, 1, 1, Z_LEVEL_BEACH_CAVE, world.maxx, world.maxy) + new /datum/random_map/noise/ore/beachmine(null, 1, 1, Z_LEVEL_BEACH_CAVE, 64, 64) + /datum/map_z_level/tether_lateload/away_beach_cave name = "Away Mission - Desert Cave" + z = Z_LEVEL_BEACH_CAVE /obj/effect/step_trigger/zlevel_fall/beach var/static/target_z @@ -86,6 +98,7 @@ /datum/map_z_level/tether_lateload/away_alienship name = "Away Mission - Alien Ship" + z = Z_LEVEL_ALIENSHIP #include "aerostat/_aerostat.dm" @@ -97,6 +110,7 @@ /datum/map_z_level/tether_lateload/away_aerostat name = "Away Mission - Aerostat" + z = Z_LEVEL_AEROSTAT /datum/map_template/tether_lateload/away_aerostat_surface name = "Remmi Aerostat - Z2 Surface" @@ -104,8 +118,15 @@ mappath = 'aerostat/surface.dmm' associated_map_datum = /datum/map_z_level/tether_lateload/away_aerostat_surface +/datum/map_template/tether_lateload/away_aerostat_surface/on_map_loaded(z) + . = ..() + seed_submaps(list(Z_LEVEL_AEROSTAT_SURFACE), 50, /area/tether_away/aerostat/surface/unexplored, /datum/map_template/virgo2) + new /datum/random_map/automata/cave_system/no_cracks(null, 1, 1, Z_LEVEL_AEROSTAT_SURFACE, world.maxx, world.maxy) + new /datum/random_map/noise/ore/virgo2(null, 1, 1, Z_LEVEL_AEROSTAT_SURFACE, 64, 64) + /datum/map_z_level/tether_lateload/away_aerostat_surface name = "Away Mission - Aerostat Surface" + z = Z_LEVEL_AEROSTAT_SURFACE ////////////////////////////////////////////////////////////////////////////////////// @@ -144,7 +165,7 @@ flags = MAP_LEVEL_SEALED /datum/map_z_level/tether_lateload/New(var/datum/map/map, mapZ) - if(mapZ) + if(mapZ && !z) z = mapZ return ..(map) diff --git a/maps/tether/submaps/aerostat/_aerostat.dm b/maps/tether/submaps/aerostat/_aerostat.dm index b66caa5630..a41331fe2f 100644 --- a/maps/tether/submaps/aerostat/_aerostat.dm +++ b/maps/tether/submaps/aerostat/_aerostat.dm @@ -49,9 +49,9 @@ destinations = list(/datum/shuttle_destination/excursion/virgo2orbit, /datum/shuttle_destination/excursion/aerostat) /obj/away_mission_init/aerostat/initialize() - seed_submaps(list(z), 50, /area/tether_away/aerostat/surface/unexplored, /datum/map_template/virgo2) - new /datum/random_map/automata/cave_system/no_cracks(null, 1, 1, z, world.maxx, world.maxy) - new /datum/random_map/noise/ore/virgo2(null, 1, 1, z, 64, 64) + /*seed_submaps(list(Z_LEVEL_AEROSTAT_SURFACE), 50, /area/tether_away/aerostat/surface/unexplored, /datum/map_template/virgo2) + new /datum/random_map/automata/cave_system/no_cracks(null, 1, 1, Z_LEVEL_AEROSTAT_SURFACE, world.maxx, world.maxy) + new /datum/random_map/noise/ore/virgo2(null, 1, 1, Z_LEVEL_AEROSTAT_SURFACE, 64, 64)*/ initialized = TRUE return INITIALIZE_HINT_QDEL diff --git a/maps/tether/submaps/beach/_beach.dm b/maps/tether/submaps/beach/_beach.dm index f90c5b5c3a..bd43f82dde 100644 --- a/maps/tether/submaps/beach/_beach.dm +++ b/maps/tether/submaps/beach/_beach.dm @@ -74,12 +74,12 @@ //In our case, it initializes the ores and random submaps in the beach's cave, then deletes itself /obj/away_mission_init/beachcave/initialize() // Cave submaps are first. - seed_submaps(list(z), 50, /area/tether_away/cave/unexplored/normal, /datum/map_template/surface/mountains/normal) + /*seed_submaps(list(z), 50, /area/tether_away/cave/unexplored/normal, /datum/map_template/surface/mountains/normal) seed_submaps(list(z), 50, /area/tether_away/cave/unexplored/deep, /datum/map_template/surface/mountains/deep) // Now for the tunnels. - new /datum/random_map/automata/cave_system/no_cracks(null, 1, 1, z, world.maxx, world.maxy) - new /datum/random_map/noise/ore/beachmine(null, 1, 1, z, 64, 64) + new /datum/random_map/automata/cave_system/no_cracks(null, 1, 1, Z_LEVEL_BEACH_CAVE, world.maxx, world.maxy) + new /datum/random_map/noise/ore/beachmine(null, 1, 1, Z_LEVEL_BEACH_CAVE, 64, 64)*/ initialized = TRUE return INITIALIZE_HINT_QDEL diff --git a/maps/tether/tether-01-surface1.dmm b/maps/tether/tether-01-surface1.dmm index 2f3d16e25a..b7c6a77749 100644 --- a/maps/tether/tether-01-surface1.dmm +++ b/maps/tether/tether-01-surface1.dmm @@ -13773,11 +13773,7 @@ "aGx" = ( /obj/structure/table/glass, /obj/item/weapon/storage/toolbox/emergency, -/obj/item/device/radio{ - frequency = 1487; - icon_state = "med_walkietalkie"; - name = "Medbay Emergency Radio Link" - }, +/obj/item/device/radio/emergency, /obj/machinery/recharger, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/first_aid_west) @@ -14750,14 +14746,7 @@ /area/engineering/atmos/processing) "aJj" = ( /obj/structure/table/glass, -/obj/item/device/radio{ - anchored = 1; - broadcasting = 0; - canhear_range = 1; - frequency = 1487; - icon = 'icons/obj/items.dmi'; - icon_state = "red_phone"; - listening = 1; +/obj/item/device/radio/phone/medbay{ name = "Medical Emergency Phone" }, /obj/machinery/atmospherics/unary/vent_pump/on{ diff --git a/maps/tether/tether-02-surface2.dmm b/maps/tether/tether-02-surface2.dmm index a4f35926d3..f95e5e4bf8 100644 --- a/maps/tether/tether-02-surface2.dmm +++ b/maps/tether/tether-02-surface2.dmm @@ -4381,6 +4381,7 @@ "jG" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/remains/human, +/obj/random/action_figure, /turf/simulated/floor/plating, /area/maintenance/lower/rnd) "jH" = ( @@ -4441,7 +4442,7 @@ "jP" = ( /obj/item/weapon/storage/fancy/cigar/havana, /obj/effect/decal/cleanable/dirt, -/mob/living/simple_animal/hostile/mimic/crate, +/obj/random/drinkbottle, /turf/simulated/floor/plating, /area/maintenance/lower/rnd) "jQ" = ( diff --git a/maps/tether/tether-05-station1.dmm b/maps/tether/tether-05-station1.dmm index f8d7b4cf9f..ac19de75b0 100644 --- a/maps/tether/tether-05-station1.dmm +++ b/maps/tether/tether-05-station1.dmm @@ -21787,7 +21787,7 @@ icon_state = "1-8" }, /obj/effect/landmark/start{ - name = "Search and Rescue" + name = "Field Medic" }, /turf/simulated/floor/tiled, /area/tether/station/explorer_meeting) @@ -21851,7 +21851,7 @@ dir = 1 }, /obj/effect/landmark/start{ - name = "Search and Rescue" + name = "Field Medic" }, /turf/simulated/floor/tiled, /area/tether/station/explorer_meeting) @@ -21912,7 +21912,7 @@ dir = 4 }, /obj/effect/landmark/start{ - name = "Search and Rescue" + name = "Field Medic" }, /turf/simulated/floor/tiled, /area/tether/station/explorer_meeting) diff --git a/maps/tether/tether-06-station2.dmm b/maps/tether/tether-06-station2.dmm index 95bba7abe9..c2928919a6 100644 --- a/maps/tether/tether-06-station2.dmm +++ b/maps/tether/tether-06-station2.dmm @@ -16384,7 +16384,7 @@ /obj/effect/floor_decal/corner/paleblue/diagonal, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/effect/landmark/start{ - name = "Search and Rescue" + name = "Field Medic" }, /turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) @@ -16500,7 +16500,7 @@ }, /obj/effect/floor_decal/corner/paleblue/diagonal, /obj/effect/landmark/start{ - name = "Search and Rescue" + name = "Field Medic" }, /turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) diff --git a/maps/tether/tether-07-station3.dmm b/maps/tether/tether-07-station3.dmm index d911465a74..f3de244601 100644 --- a/maps/tether/tether-07-station3.dmm +++ b/maps/tether/tether-07-station3.dmm @@ -122,14 +122,6 @@ }, /turf/simulated/floor, /area/security/eva) -"an" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/security{ - name = "Security Restroom"; - req_one_access = list(1,38) - }, -/turf/simulated/floor/tiled/white, -/area/security/security_bathroom) "ao" = ( /turf/simulated/wall/r_wall, /area/security/armory/blue) @@ -167,20 +159,12 @@ /turf/simulated/floor/tiled, /area/security/briefing_room) "ar" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/cable/green{ - d1 = 1; - d2 = 2; - icon_state = "1-2" +/obj/structure/table/woodentable, +/obj/machinery/photocopier/faxmachine{ + department = "Head of Security" }, -/obj/machinery/door/airlock/security{ - name = "Security Restroom"; - req_one_access = list(1,38) - }, -/turf/simulated/floor/tiled, -/area/security/security_bathroom) +/turf/simulated/floor/wood, +/area/crew_quarters/heads/hos) "as" = ( /obj/machinery/door/firedoor/glass, /obj/machinery/door/airlock/glass_security{ @@ -222,15 +206,16 @@ d2 = 8; icon_state = "4-8" }, -/obj/machinery/door/airlock/glass_security{ - name = "Break Room"; - req_one_access = list(1,38) - }, /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/machinery/door/airlock/command{ + id_tag = "HoSdoor"; + name = "Head of Security"; + req_access = list(58) + }, /turf/simulated/floor/wood, -/area/security/breakroom) +/area/crew_quarters/heads/hos) "aw" = ( /obj/machinery/door/window/northright, /obj/effect/floor_decal/industrial/outline/yellow, @@ -353,6 +338,18 @@ }, /turf/simulated/floor/tiled, /area/security/range) +"aF" = ( +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/table/rack{ + dir = 1 + }, +/obj/random/maintenance/cargo, +/obj/random/maintenance/clean, +/obj/random/maintenance/engineering, +/turf/simulated/floor, +/area/maintenance/station/ai) "aG" = ( /obj/effect/floor_decal/borderfloor{ dir = 4 @@ -1206,6 +1203,12 @@ maxcharge = 15000 }, /obj/machinery/light/small, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = -32 + }, /turf/simulated/floor, /area/maintenance/substation/security) "bU" = ( @@ -1470,16 +1473,6 @@ /obj/structure/closet/bombcloset/double, /turf/simulated/floor/tiled/dark, /area/security/armory/blue) -"cn" = ( -/obj/effect/floor_decal/borderfloor{ - dir = 8 - }, -/obj/effect/floor_decal/corner/red/border{ - dir = 8 - }, -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor/tiled, -/area/security/hallwayaux) "co" = ( /obj/effect/floor_decal/borderfloor{ dir = 4 @@ -1496,6 +1489,7 @@ }, /obj/structure/disposalpipe/segment, /obj/machinery/door/firedoor/glass, +/obj/machinery/door/airlock/glass_security, /turf/simulated/floor/tiled, /area/security/hallwayaux) "cp" = ( @@ -1504,23 +1498,10 @@ }, /area/maintenance/cargo) "cq" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/green{ - d2 = 4; - icon_state = "0-4" - }, -/obj/structure/cable/green{ - d2 = 2; - icon_state = "0-2" - }, /obj/structure/grille, -/obj/structure/window/reinforced/polarized{ - dir = 10; - icon_state = "fwindow"; - id = "hos_office" - }, +/obj/structure/window/reinforced/full, /turf/simulated/floor, -/area/crew_quarters/heads/hos) +/area/security/breakroom) "cr" = ( /obj/effect/floor_decal/borderfloor{ dir = 4 @@ -1533,20 +1514,6 @@ }, /turf/simulated/floor/tiled, /area/security/hallwayaux) -"cs" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/green{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/polarized{ - dir = 10; - icon_state = "fwindow"; - id = "hos_office" - }, -/turf/simulated/floor, -/area/crew_quarters/heads/hos) "ct" = ( /obj/machinery/door/firedoor/glass, /obj/machinery/door/blast/regular{ @@ -1571,16 +1538,6 @@ "cv" = ( /turf/simulated/wall/r_wall, /area/security/range) -"cw" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/door/airlock/engineering{ - name = "Security Substation"; - req_one_access = list(1,11,24) - }, -/turf/simulated/floor, -/area/maintenance/substation/security) "cx" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 9 @@ -1606,14 +1563,13 @@ /turf/simulated/floor, /area/maintenance/station/ai) "cz" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, /obj/random/junk, /obj/effect/decal/cleanable/dirt, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, /turf/simulated/floor, /area/maintenance/substation/security) "cA" = ( @@ -1757,33 +1713,21 @@ /turf/simulated/floor/tiled/dark, /area/security/warden) "cO" = ( -/obj/structure/bed/chair/comfy/black{ - dir = 8 +/obj/structure/table/woodentable, +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" }, -/obj/machinery/button/remote/blast_door{ - id = "security_lockdown"; - name = "Brig Lockdown"; - pixel_x = -28; - pixel_y = -36; - req_access = list(2) +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 }, -/obj/machinery/button/remote/airlock{ - id = "HoSdoor"; - name = "Office Door"; - pixel_x = -28; - pixel_y = -24 - }, -/obj/machinery/button/windowtint{ - id = "hos_office"; - pixel_x = -36; - pixel_y = -26; - req_access = list(58) - }, -/obj/effect/landmark/start{ - name = "Head of Security" +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 }, +/obj/item/weapon/deck/cards, /turf/simulated/floor/carpet, -/area/crew_quarters/heads/hos) +/area/security/breakroom) "cP" = ( /turf/simulated/wall, /area/security/observation) @@ -1893,38 +1837,18 @@ /turf/simulated/floor/wood, /area/crew_quarters/heads/hos) "da" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/table/woodentable, +/obj/structure/bed/chair/office/dark{ + dir = 1 + }, /turf/simulated/floor/carpet, -/area/crew_quarters/heads/hos) -"db" = ( -/obj/random/trash_pile, -/turf/simulated/floor, -/area/maintenance/station/sec_upper) +/area/security/breakroom) "dc" = ( /turf/simulated/floor/plating, /area/maintenance/station/ai) "dd" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/station/sec_upper) -"de" = ( -/obj/effect/floor_decal/rust, -/obj/effect/decal/cleanable/dirt, -/turf/simulated/floor, -/area/maintenance/station/sec_upper) -"df" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = 0 - }, -/turf/simulated/wall, -/area/maintenance/substation/security) +/obj/machinery/recharge_station, +/turf/simulated/floor/tiled/white, +/area/security/security_bathroom) "dg" = ( /obj/effect/floor_decal/borderfloorblack{ dir = 9 @@ -2006,44 +1930,36 @@ /obj/effect/floor_decal/industrial/outline/yellow, /turf/simulated/floor/tiled, /area/security/hallwayaux) -"dq" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/green, -/obj/structure/grille, -/obj/structure/window/reinforced/polarized{ - dir = 10; - icon_state = "fwindow"; - id = "hos_office" +"ds" = ( +/obj/structure/bed/chair/office/dark{ + dir = 8 }, -/turf/simulated/floor, -/area/crew_quarters/heads/hos) -"dr" = ( -/obj/structure/disposalpipe/segment, /obj/structure/cable/green{ d1 = 1; d2 = 2; icon_state = "1-2" }, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) -"ds" = ( -/turf/simulated/floor/wood, -/area/crew_quarters/heads/hos) +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/floor/carpet, +/area/security/breakroom) "dt" = ( -/obj/machinery/alarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 +/obj/structure/cable/green{ + d1 = 1; + d2 = 2; + icon_state = "1-2" }, -/turf/simulated/floor/wood, -/area/crew_quarters/heads/hos) +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 + }, +/turf/simulated/floor/carpet, +/area/security/breakroom) "du" = ( -/obj/structure/table/woodentable, -/obj/machinery/newscaster/security_unit{ - pixel_y = -32 +/obj/structure/disposalpipe/trunk{ + dir = 1 }, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) +/obj/machinery/disposal, +/turf/simulated/floor/wood, +/area/security/breakroom) "dv" = ( /obj/machinery/atmospherics/pipe/simple/hidden/cyan, /obj/machinery/door/firedoor/glass, @@ -2055,19 +1971,14 @@ /obj/structure/catwalk, /turf/simulated/floor, /area/maintenance/station/sec_upper) -"dx" = ( -/obj/structure/cable{ - icon_state = "1-4" - }, +"dy" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/catwalk, -/turf/simulated/floor, -/area/maintenance/station/sec_upper) -"dy" = ( /obj/structure/cable{ - icon_state = "4-8" + d1 = 1; + d2 = 4; + icon_state = "1-4" }, -/obj/structure/catwalk, /turf/simulated/floor, /area/maintenance/station/sec_upper) "dz" = ( @@ -2079,6 +1990,10 @@ /area/security/security_equiptment_storage) "dA" = ( /obj/effect/decal/cleanable/dirt, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/catwalk, /turf/simulated/floor, /area/maintenance/station/sec_upper) "dB" = ( @@ -2266,17 +2181,6 @@ }, /turf/simulated/floor/tiled, /area/security/hallwayaux) -"dN" = ( -/obj/structure/table/woodentable, -/obj/machinery/photocopier/faxmachine{ - department = "Head of Security" - }, -/obj/item/device/radio/intercom{ - dir = 4; - pixel_x = 24 - }, -/turf/simulated/floor/wood, -/area/crew_quarters/heads/hos) "dO" = ( /obj/effect/floor_decal/borderfloor{ dir = 9 @@ -2291,12 +2195,6 @@ "dP" = ( /turf/simulated/wall, /area/security/security_bathroom) -"dQ" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/white, -/area/security/security_bathroom) "dR" = ( /turf/simulated/wall/r_wall, /area/security/breakroom) @@ -2510,29 +2408,23 @@ /turf/simulated/floor/tiled, /area/security/hallwayaux) "el" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 }, -/obj/structure/cable/green{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable/green{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/hologram/holopad, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) +/turf/simulated/floor/wood, +/area/security/breakroom) "em" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -2543,28 +2435,12 @@ /turf/simulated/wall, /area/maintenance/station/ai) "en" = ( -/obj/structure/table/woodentable, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/folder/red_hos, -/obj/item/weapon/pen/multi, -/obj/item/device/radio/intercom/department/security{ - dir = 4; - icon_state = "secintercom"; - pixel_x = 24; - pixel_y = 0 +/obj/machinery/camera/network/security{ + c_tag = "SEC - Vault Exterior West"; + dir = 8 }, /turf/simulated/floor/wood, -/area/crew_quarters/heads/hos) -"eo" = ( -/obj/machinery/light_switch{ - dir = 1; - pixel_y = -24 - }, -/turf/simulated/floor/tiled/white, -/area/security/security_bathroom) +/area/security/breakroom) "ep" = ( /turf/simulated/wall, /area/security/security_lockerroom) @@ -2600,15 +2476,11 @@ /turf/simulated/floor, /area/maintenance/cargo) "et" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/cable/green{ - d1 = 1; - d2 = 2; - icon_state = "1-2" +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 }, -/turf/simulated/floor/wood, -/area/security/breakroom) +/turf/simulated/floor/carpet, +/area/crew_quarters/heads/hos) "eu" = ( /obj/effect/floor_decal/borderfloorblack{ dir = 8 @@ -2748,51 +2620,32 @@ /obj/structure/window/reinforced/full, /turf/simulated/floor, /area/security/observation) -"eE" = ( -/obj/machinery/computer/secure_data{ - dir = 1 - }, -/turf/simulated/floor/carpet, -/area/crew_quarters/heads/hos) "eF" = ( -/obj/structure/table/woodentable, -/obj/item/clothing/accessory/permit/gun, -/obj/item/clothing/accessory/permit/gun, -/obj/item/clothing/accessory/permit/gun, -/obj/item/clothing/accessory/permit/gun, -/obj/item/clothing/accessory/permit/gun, -/obj/item/weapon/paper{ - desc = ""; - info = "In the event that more weapon permits are needed, please fax Central Command to request more. Please also include a reason for the request. Blank permits will be shipped to cargo for pickup. If long-term permits are desired, please contact your NanoTrasen Employee Representitive for more information."; - name = "note from CentCom about permits" - }, -/obj/item/weapon/storage/secure/safe{ - pixel_x = 38; - pixel_y = 0 - }, -/turf/simulated/floor/wood, -/area/crew_quarters/heads/hos) -"eG" = ( /obj/structure/cable/green{ - d1 = 1; - d2 = 2; - icon_state = "1-2" + d1 = 4; + d2 = 8; + icon_state = "4-8" }, -/obj/structure/table/woodentable, -/obj/machinery/atmospherics/unary/vent_pump/on{ +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, -/turf/simulated/floor/carpet, -/area/security/breakroom) -"eH" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/obj/structure/bed/chair{ - dir = 8 - }, -/turf/simulated/floor/carpet, +/turf/simulated/floor/wood, /area/security/breakroom) +"eG" = ( +/obj/structure/table/woodentable, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/turf/simulated/floor/carpet, +/area/crew_quarters/heads/hos) +"eH" = ( +/obj/structure/table/woodentable, +/obj/item/weapon/folder/red_hos, +/obj/item/weapon/stamp/hos, +/turf/simulated/floor/carpet, +/area/crew_quarters/heads/hos) "eI" = ( /obj/machinery/door/firedoor/glass, /obj/structure/catwalk, @@ -2820,15 +2673,12 @@ }, /turf/simulated/floor/tiled/dark, /area/security/security_lockerroom) -"eL" = ( -/turf/simulated/floor/tiled/white, -/area/security/security_bathroom) "eM" = ( -/obj/item/weapon/coin/gold, -/obj/item/weapon/coin/silver, -/obj/item/weapon/bone/skull, -/mob/living/simple_animal/hostile/mimic/crate, -/turf/simulated/mineral/floor/cave, +/obj/structure/railing{ + dir = 4 + }, +/obj/random/junk, +/turf/simulated/floor, /area/maintenance/station/ai) "eN" = ( /obj/structure/cable{ @@ -2964,17 +2814,11 @@ /turf/simulated/floor, /area/security/briefing_room) "eY" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "east bump"; - pixel_x = 28 - }, -/obj/structure/cable/green{ - d2 = 8; - icon_state = "0-8" +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 }, /turf/simulated/floor/wood, -/area/crew_quarters/heads/hos) +/area/security/breakroom) "eZ" = ( /obj/effect/floor_decal/borderfloor{ dir = 5 @@ -2987,32 +2831,14 @@ /obj/structure/table/reinforced, /turf/simulated/floor/tiled, /area/security/briefing_room) -"fa" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, -/obj/structure/cable/green{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/wood, -/area/security/breakroom) "fb" = ( -/obj/effect/floor_decal/rust, -/obj/structure/railing{ - dir = 4 +/obj/machinery/light_switch{ + dir = 4; + icon_state = "light1"; + pixel_x = -24 }, -/obj/structure/table/rack{ - dir = 8; - layer = 2.9 - }, -/obj/random/maintenance/security, -/obj/random/maintenance/security, -/obj/random/maintenance/clean, -/turf/simulated/floor, -/area/maintenance/station/sec_upper) +/turf/simulated/floor/tiled/white, +/area/security/security_bathroom) "fc" = ( /obj/structure/catwalk, /turf/simulated/floor, @@ -3054,23 +2880,23 @@ /turf/simulated/floor/tiled, /area/security/hallway) "ff" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, /obj/structure/cable/green{ d1 = 4; d2 = 8; icon_state = "4-8" }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, /turf/simulated/floor/wood, -/area/security/breakroom) +/area/crew_quarters/heads/hos) "fg" = ( /obj/machinery/alarm{ dir = 1; @@ -3231,13 +3057,15 @@ /turf/simulated/floor, /area/maintenance/station/sec_upper) "fr" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -24 +/obj/machinery/photocopier, +/obj/machinery/power/apc{ + dir = 2; + name = "south bump"; + pixel_y = -28 }, +/obj/structure/cable/green, /turf/simulated/floor/wood, -/area/security/breakroom) +/area/crew_quarters/heads/hos) "fs" = ( /obj/structure/flora/pottedplant/stoutbush, /turf/simulated/floor/tiled, @@ -3391,11 +3219,19 @@ /turf/simulated/open, /area/maintenance/station/ai) "fG" = ( -/obj/structure/railing{ - dir = 4 +/obj/effect/floor_decal/steeldecal/steel_decals10{ + dir = 10 }, -/turf/simulated/floor, -/area/maintenance/station/sec_upper) +/obj/effect/floor_decal/steeldecal/steel_decals10{ + dir = 9 + }, +/obj/machinery/shower{ + icon_state = "shower"; + dir = 1 + }, +/obj/structure/curtain/open/shower/security, +/turf/simulated/floor/tiled, +/area/security/security_bathroom) "fH" = ( /turf/simulated/wall, /area/security/detectives_office) @@ -3434,6 +3270,12 @@ /obj/structure/table/reinforced, /obj/machinery/computer/med_data/laptop, /obj/machinery/camera/network/security, +/obj/machinery/power/apc{ + dir = 1; + name = "north bump"; + pixel_x = 0; + pixel_y = 24 + }, /turf/simulated/floor/tiled/white, /area/security/forensics) "fK" = ( @@ -4324,6 +4166,16 @@ "hr" = ( /turf/simulated/floor/tiled, /area/security/eva) +"hs" = ( +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/closet/crate, +/obj/random/maintenance/research, +/obj/random/maintenance/clean, +/obj/random/cigarettes, +/turf/simulated/floor, +/area/maintenance/station/ai) "hu" = ( /obj/machinery/door/firedoor/glass, /obj/machinery/door/blast/regular{ @@ -4355,6 +4207,10 @@ }, /turf/simulated/floor/tiled, /area/security/eva) +"hx" = ( +/obj/structure/undies_wardrobe, +/turf/simulated/floor/tiled/white, +/area/security/security_bathroom) "hy" = ( /turf/simulated/mineral/floor/cave, /area/maintenance/station/ai) @@ -4916,10 +4772,6 @@ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 - }, /obj/structure/cable/green{ d1 = 1; d2 = 8; @@ -5647,60 +5499,13 @@ /obj/structure/disposalpipe/segment, /turf/simulated/floor/tiled, /area/security/hallwayaux) -"jm" = ( -/obj/structure/disposalpipe/trunk, -/obj/machinery/disposal, -/obj/structure/cable/green{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable/green{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable/green{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) "jn" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 +/obj/machinery/newscaster/security_unit{ + pixel_y = 32 }, -/obj/structure/table/woodentable, -/obj/item/weapon/reagent_containers/food/drinks/flask/barflask{ - pixel_x = -4; - pixel_y = 8 - }, -/obj/item/device/taperecorder{ - pixel_y = 0 - }, -/obj/structure/cable/green{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) +/turf/simulated/floor/wood, +/area/security/breakroom) "jo" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/obj/structure/table/woodentable, -/obj/item/device/radio/off, -/obj/item/device/megaphone, -/obj/structure/cable/green{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, /obj/machinery/light{ dir = 1 }, @@ -5711,19 +5516,13 @@ pixel_y = 26 }, /turf/simulated/floor/wood, -/area/crew_quarters/heads/hos) +/area/security/breakroom) "jp" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/obj/machinery/photocopier, -/obj/structure/cable/green{ - d1 = 1; - d2 = 8; - icon_state = "1-8" +/obj/machinery/alarm{ + pixel_y = 22 }, /turf/simulated/floor/wood, -/area/crew_quarters/heads/hos) +/area/security/breakroom) "jq" = ( /obj/machinery/space_heater, /turf/simulated/floor, @@ -5856,13 +5655,13 @@ /turf/simulated/floor/tiled, /area/security/hallwayaux) "jB" = ( -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) +/obj/machinery/hologram/holopad, +/turf/simulated/floor/carpet, +/area/security/breakroom) "jC" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/wood, -/area/crew_quarters/heads/hos) +/obj/structure/bed/chair/office/dark, +/turf/simulated/floor/carpet, +/area/security/breakroom) "jD" = ( /obj/random/junk, /turf/simulated/mineral/floor/cave, @@ -5998,29 +5797,10 @@ /turf/simulated/floor/carpet, /area/crew_quarters/heads/hos) "jN" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/structure/table/woodentable, -/obj/machinery/computer/skills{ - icon_state = "laptop"; - dir = 4 - }, -/obj/item/clothing/accessory/permit/gun{ - desc = "An example of a card indicating that the owner is allowed to carry a firearm. There's a note saying to fax CentCom if you want to order more blank permits."; - name = "sample weapon permit"; - owner = 1 - }, -/obj/item/weapon/paper{ - desc = ""; - info = "The Chief of Security at CentCom is debating a new policy. It's not official yet, and probably won't be since it's hard to enforce, but I suggest following it anyway. That policy is, if a security officer claims they need more than two extra magazines (or batteries) to go on routine patrols, fire them. If they cannot subdue a single suspect using all that ammo, they are not competent as Security.\[br]-Jeremiah Acacius"; - name = "note to the Head of Security" - }, +/obj/item/weapon/storage/box/donut, /turf/simulated/floor/carpet, -/area/crew_quarters/heads/hos) -"jO" = ( -/obj/machinery/computer/security, -/turf/simulated/floor/carpet, -/area/crew_quarters/heads/hos) +/area/security/breakroom) "jP" = ( /obj/structure/table/rack{ dir = 4 @@ -6094,56 +5874,58 @@ /turf/simulated/floor/tiled, /area/security/hallwayaux) "jV" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 +/obj/machinery/door/airlock/glass_security{ + name = "Break Room"; + req_one_access = list(1,38) }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/door/firedoor/glass, /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, /obj/structure/cable/green{ d1 = 4; d2 = 8; icon_state = "4-8" }, -/obj/machinery/door/airlock/command{ - id_tag = "HoSdoor"; - name = "Head of Security"; - req_access = list(58) - }, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) -"jW" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, +/turf/simulated/floor/wood, +/area/security/breakroom) +"jW" = ( +/obj/structure/bed/chair/office/dark{ + dir = 4 + }, +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, -/obj/structure/bed/chair{ +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, /turf/simulated/floor/carpet, -/area/crew_quarters/heads/hos) +/area/security/breakroom) "jX" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, /obj/structure/table/woodentable, -/obj/item/weapon/stamp/hos, -/obj/item/device/flashlight/lamp/green{ - dir = 2; - pixel_x = -4; - pixel_y = 12 +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 }, /turf/simulated/floor/carpet, -/area/crew_quarters/heads/hos) +/area/security/breakroom) "jY" = ( /obj/random/trash_pile, /turf/simulated/mineral/floor/cave, @@ -6225,18 +6007,9 @@ /turf/simulated/wall/r_wall, /area/security/armory/blue) "kh" = ( -/obj/structure/cable/green{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/light_switch{ - dir = 4; - pixel_x = -28; - pixel_y = 0 - }, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) +/obj/structure/disposalpipe/segment, +/turf/simulated/floor/wood, +/area/security/breakroom) "ki" = ( /obj/structure/closet/crate, /obj/random/maintenance/clean, @@ -6318,37 +6091,6 @@ /obj/structure/disposalpipe/segment, /turf/simulated/floor/tiled, /area/security/hallwayaux) -"ks" = ( -/obj/structure/cable/green{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable/green{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) -"kt" = ( -/obj/structure/cable/green{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) -"ku" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/cable/green{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/wood, -/area/crew_quarters/heads/hos) "kv" = ( /obj/structure/cable/green{ d1 = 4; @@ -6470,49 +6212,23 @@ /turf/simulated/floor/tiled, /area/security/observation) "kF" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 +/obj/machinery/light_switch{ + dir = 1; + pixel_y = -24 }, -/obj/structure/table/woodentable, -/obj/machinery/recharger{ - pixel_y = 4 - }, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Head of Security's Desk"; - departmentType = 5; - name = "Head of Security RC"; - pixel_x = 0; - pixel_y = -32 - }, -/obj/machinery/camera/network/security{ - dir = 1 - }, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) +/turf/simulated/floor/wood, +/area/security/breakroom) "kG" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/obj/structure/closet/secure_closet/hos2, +/obj/structure/table/woodentable, +/obj/machinery/chemical_dispenser/bar_soft/full, /obj/machinery/light, -/obj/machinery/keycard_auth{ - pixel_y = -28 - }, /turf/simulated/floor/wood, -/area/crew_quarters/heads/hos) +/area/security/breakroom) "kH" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/obj/structure/closet/secure_closet/hos, -/obj/item/clothing/suit/space/void/security/fluff/hos, -/obj/item/clothing/head/helmet/space/void/security/fluff/hos, +/obj/structure/table/woodentable, +/obj/item/weapon/storage/box/glasses/square, /turf/simulated/floor/wood, -/area/crew_quarters/heads/hos) +/area/security/breakroom) "kI" = ( /obj/structure/bookcase, /obj/item/weapon/book/manual/security_space_law, @@ -6520,20 +6236,6 @@ /obj/item/weapon/book/manual/command_guide, /turf/simulated/floor/wood, /area/crew_quarters/heads/hos) -"kJ" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5, -/obj/effect/floor_decal/steeldecal/steel_decals10{ - dir = 5 - }, -/obj/effect/floor_decal/steeldecal/steel_decals10{ - dir = 6 - }, -/obj/machinery/shower{ - pixel_y = 16 - }, -/obj/structure/curtain/open/shower/security, -/turf/simulated/floor/tiled, -/area/security/security_bathroom) "kK" = ( /obj/effect/floor_decal/borderfloorblack{ dir = 8 @@ -6560,6 +6262,12 @@ /obj/machinery/light/small{ dir = 8 }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/catwalk, /turf/simulated/floor, /area/maintenance/station/sec_upper) "kN" = ( @@ -6629,6 +6337,10 @@ icon_state = "camera"; dir = 8 }, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, /turf/simulated/floor/tiled, /area/security/hallwayaux) "kQ" = ( @@ -6674,26 +6386,12 @@ }, /turf/simulated/floor, /area/maintenance/station/ai) -"kV" = ( -/obj/machinery/recharge_station, -/obj/machinery/light/small{ - icon_state = "bulb1"; - dir = 1 - }, -/turf/simulated/floor/tiled/white, -/area/security/security_bathroom) "kW" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 6 }, /turf/simulated/floor/tiled/white, /area/security/security_bathroom) -"kX" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/turf/simulated/floor/tiled/white, -/area/security/security_bathroom) "kY" = ( /obj/effect/floor_decal/borderfloorblack{ dir = 10 @@ -6765,8 +6463,10 @@ d2 = 2; icon_state = "1-2" }, -/obj/machinery/door/airlock/glass_security, /obj/structure/disposalpipe/segment, +/obj/machinery/door/airlock/glass_security{ + req_one_access = list(1,38) + }, /turf/simulated/floor/tiled, /area/security/hallwayaux) "le" = ( @@ -6836,21 +6536,6 @@ }, /turf/simulated/floor/tiled, /area/security/briefing_room) -"lj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/railing{ - dir = 8 - }, -/obj/structure/railing{ - dir = 1 - }, -/obj/structure/table/rack{ - dir = 8; - layer = 2.9 - }, -/obj/random/maintenance, -/turf/simulated/floor, -/area/maintenance/station/sec_upper) "lk" = ( /obj/effect/floor_decal/techfloor{ dir = 8 @@ -6928,34 +6613,6 @@ }, /turf/simulated/floor, /area/maintenance/station/ai) -"lu" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/obj/structure/undies_wardrobe, -/obj/machinery/light{ - dir = 8 - }, -/turf/simulated/floor/tiled/white, -/area/security/security_bathroom) -"lv" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/white, -/area/security/security_bathroom) -"lw" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/alarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/simulated/floor/tiled/white, -/area/security/security_bathroom) "lx" = ( /obj/machinery/door/firedoor/glass, /obj/machinery/door/airlock/security{ @@ -7125,11 +6782,9 @@ /turf/simulated/floor/tiled, /area/security/briefing_room) "lL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/railing{ - dir = 8 - }, -/obj/random/trash_pile, +/obj/structure/catwalk, +/obj/machinery/door/firedoor/glass, +/obj/machinery/door/airlock/maintenance/common, /turf/simulated/floor, /area/maintenance/station/sec_upper) "lM" = ( @@ -7251,37 +6906,6 @@ "lY" = ( /turf/space, /area/shuttle/antag_space/north) -"lZ" = ( -/obj/structure/toilet{ - dir = 4 - }, -/obj/machinery/light/small{ - icon_state = "bulb1"; - dir = 1 - }, -/turf/simulated/floor/tiled/white, -/area/security/security_bathroom) -"ma" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "south bump"; - pixel_y = -28 - }, -/obj/structure/cable/green{ - icon_state = "0-4" - }, -/turf/simulated/floor/tiled/white, -/area/security/security_bathroom) -"mb" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/cable/green{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/simulated/floor/tiled/white, -/area/security/security_bathroom) "mc" = ( /obj/effect/floor_decal/borderfloorblack{ dir = 9 @@ -7573,9 +7197,11 @@ /turf/simulated/floor/tiled/dark, /area/security/security_lockerroom) "my" = ( -/obj/structure/sign/warning/secure_area, -/turf/simulated/wall/r_wall, -/area/security/security_bathroom) +/obj/structure/closet/secure_closet/hos, +/obj/item/clothing/suit/space/void/security/fluff/hos, +/obj/item/clothing/head/helmet/space/void/security/fluff/hos, +/turf/simulated/floor/wood, +/area/crew_quarters/heads/hos) "mz" = ( /obj/effect/floor_decal/borderfloor{ dir = 4 @@ -7777,12 +7403,6 @@ /obj/structure/catwalk, /turf/simulated/floor, /area/maintenance/station/sec_upper) -"mS" = ( -/obj/structure/catwalk, -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/maintenance/common, -/turf/simulated/floor, -/area/maintenance/cargo) "mT" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/catwalk, @@ -7849,32 +7469,6 @@ }, /turf/simulated/floor/wood, /area/security/breakroom) -"nf" = ( -/obj/machinery/camera/network/security, -/obj/machinery/newscaster/security_unit{ - pixel_y = 32 - }, -/turf/simulated/floor/wood, -/area/security/breakroom) -"ng" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "north bump"; - pixel_x = 0; - pixel_y = 24 - }, -/obj/structure/cable/green{ - d2 = 2; - icon_state = "0-2" - }, -/turf/simulated/floor/wood, -/area/security/breakroom) -"nh" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/simulated/floor/wood, -/area/security/breakroom) "ni" = ( /obj/structure/bookcase, /obj/item/weapon/book/manual/security_space_law, @@ -8123,45 +7717,85 @@ /turf/simulated/floor, /area/maintenance/station/ai) "nD" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/green{ - d2 = 2; - icon_state = "0-2" +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 4 }, -/obj/machinery/door/blast/regular{ - density = 0; - dir = 1; - icon_state = "pdoor0"; +/obj/machinery/newscaster/security_unit{ + pixel_x = -32; + pixel_y = 0 + }, +/turf/simulated/floor/wood, +/area/crew_quarters/heads/hos) +"nE" = ( +/obj/structure/table/woodentable, +/obj/item/weapon/paper{ + desc = ""; + info = "The Chief of Security at CentCom is debating a new policy. It's not official yet, and probably won't be since it's hard to enforce, but I suggest following it anyway. That policy is, if a security officer claims they need more than two extra magazines (or batteries) to go on routine patrols, fire them. If they cannot subdue a single suspect using all that ammo, they are not competent as Security.\[br]-Jeremiah Acacius"; + name = "note to the Head of Security" + }, +/obj/item/clothing/accessory/permit/gun{ + desc = "An example of a card indicating that the owner is allowed to carry a firearm. There's a note saying to fax CentCom if you want to order more blank permits."; + name = "sample weapon permit"; + owner = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/weapon/pen/multi, +/turf/simulated/floor/carpet, +/area/crew_quarters/heads/hos) +"nF" = ( +/obj/structure/bed/chair/comfy/black, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 6 + }, +/obj/machinery/button/windowtint{ + id = "hos_office"; + pixel_x = -36; + pixel_y = -26; + req_access = list(58) + }, +/obj/machinery/button/remote/airlock{ + id = "HoSdoor"; + name = "Office Door"; + pixel_x = -28; + pixel_y = -24 + }, +/obj/machinery/button/remote/blast_door{ id = "security_lockdown"; - name = "Security Blast Doors"; - opacity = 0 + name = "Brig Lockdown"; + pixel_x = -28; + pixel_y = -36; + req_access = list(2) }, -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced{ +/obj/effect/landmark/start{ + name = "Head of Security" + }, +/turf/simulated/floor/carpet, +/area/crew_quarters/heads/hos) +"nG" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ dir = 8 }, -/turf/simulated/floor, -/area/security/breakroom) -"nE" = ( -/obj/structure/bed/chair, -/turf/simulated/floor/carpet, -/area/security/breakroom) -"nF" = ( -/obj/structure/cable/green{ - d1 = 1; - d2 = 2; - icon_state = "1-2" +/obj/item/device/radio/intercom/department/security{ + dir = 4; + icon_state = "secintercom"; + pixel_x = 24; + pixel_y = 0 + }, +/obj/machinery/camera/network/security{ + icon_state = "camera"; + dir = 8 }, -/obj/structure/bed/chair, -/turf/simulated/floor/carpet, -/area/security/breakroom) -"nG" = ( -/obj/structure/table/steel, -/obj/machinery/chemical_dispenser/bar_soft/full, -/obj/item/weapon/storage/box/glasses/square, /turf/simulated/floor/wood, -/area/security/breakroom) +/area/crew_quarters/heads/hos) "nH" = ( /obj/effect/floor_decal/borderfloorblack{ dir = 8 @@ -8341,59 +7975,39 @@ /turf/simulated/floor, /area/maintenance/station/ai) "nW" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/green{ - d2 = 2; - icon_state = "0-2" +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -26 }, -/obj/structure/cable/green, -/obj/machinery/door/blast/regular{ - density = 0; - dir = 1; - icon_state = "pdoor0"; - id = "security_lockdown"; - name = "Security Blast Doors"; - opacity = 0 - }, -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced{ +/obj/machinery/light{ + icon_state = "tube1"; dir = 8 }, -/turf/simulated/floor, -/area/security/breakroom) +/turf/simulated/floor/wood, +/area/crew_quarters/heads/hos) "nX" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/turf/simulated/floor/carpet, -/area/security/breakroom) -"nY" = ( -/obj/structure/table/woodentable, -/turf/simulated/floor/carpet, -/area/security/breakroom) -"nZ" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/structure/cable/green{ d1 = 1; d2 = 2; icon_state = "1-2" }, -/turf/simulated/floor/wood, +/turf/simulated/floor/carpet, +/area/crew_quarters/heads/hos) +"nY" = ( +/obj/structure/table/woodentable, +/turf/simulated/floor/carpet, /area/security/breakroom) "oa" = ( -/obj/structure/table/steel, -/obj/machinery/microwave, -/obj/machinery/alarm{ - dir = 8; - icon_state = "alarm0"; +/obj/item/device/radio/intercom{ + dir = 4; pixel_x = 24 }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, /turf/simulated/floor/wood, -/area/security/breakroom) +/area/crew_quarters/heads/hos) "ob" = ( /obj/effect/floor_decal/borderfloorblack{ dir = 10 @@ -8575,10 +8189,6 @@ /obj/random/junk, /turf/simulated/floor, /area/maintenance/cargo) -"oq" = ( -/obj/random/obstruction, -/turf/simulated/floor, -/area/maintenance/station/ai) "or" = ( /obj/item/weapon/storage/laundry_basket, /turf/simulated/floor, @@ -8597,44 +8207,25 @@ /obj/structure/grille, /turf/space, /area/space) -"ou" = ( -/obj/structure/table/woodentable, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 4 - }, -/turf/simulated/floor/carpet, -/area/security/breakroom) "ov" = ( -/obj/structure/cable/green{ - d1 = 1; - d2 = 2; - icon_state = "1-2" +/obj/structure/bed/chair/office/dark{ + dir = 1 }, -/obj/structure/table/woodentable, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/item/weapon/deck/cards, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/carpet, -/area/security/breakroom) +/area/crew_quarters/heads/hos) "ow" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/structure/bed/chair{ - dir = 8 - }, +/obj/machinery/hologram/holopad, /turf/simulated/floor/carpet, -/area/security/breakroom) +/area/crew_quarters/heads/hos) "ox" = ( -/obj/structure/table/steel, -/obj/item/weapon/storage/box/donkpockets, /obj/machinery/light_switch{ dir = 8; - pixel_x = 24 + pixel_x = 28 }, /turf/simulated/floor/wood, -/area/security/breakroom) +/area/crew_quarters/heads/hos) "oy" = ( /obj/machinery/door/firedoor/glass, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -8906,72 +8497,24 @@ /turf/simulated/floor, /area/maintenance/station/ai) "oW" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/green, +/obj/structure/table/woodentable, /obj/structure/cable/green{ - icon_state = "0-4" + d1 = 4; + d2 = 8; + icon_state = "4-8" }, -/obj/machinery/door/blast/regular{ - density = 0; - dir = 1; - icon_state = "pdoor0"; - id = "security_lockdown"; - name = "Security Blast Doors"; - opacity = 0 - }, -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/simulated/floor, -/area/security/breakroom) +/turf/simulated/floor/wood, +/area/crew_quarters/heads/hos) "oX" = ( /obj/structure/cable/green{ d1 = 4; d2 = 8; icon_state = "4-8" }, -/turf/simulated/floor/carpet, -/area/security/breakroom) -"oY" = ( /obj/structure/cable/green{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/bed/chair{ - dir = 1 - }, -/turf/simulated/floor/carpet, -/area/security/breakroom) -"oZ" = ( -/obj/structure/cable/green{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable/green{ - d1 = 1; + d1 = 2; d2 = 4; - icon_state = "1-4" - }, -/obj/structure/bed/chair{ - dir = 1 - }, -/turf/simulated/floor/carpet, -/area/security/breakroom) -"pa" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/obj/structure/cable/green{ - d1 = 4; - d2 = 8; - icon_state = "4-8" + icon_state = "2-4" }, /obj/structure/cable/green{ d1 = 1; @@ -8979,7 +8522,45 @@ icon_state = "1-4" }, /turf/simulated/floor/wood, -/area/security/breakroom) +/area/crew_quarters/heads/hos) +"oZ" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable/green{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/wood, +/area/crew_quarters/heads/hos) +"pa" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/cable/green{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/wood, +/area/crew_quarters/heads/hos) "pb" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -9384,21 +8965,21 @@ /obj/random/maintenance/medical, /turf/simulated/floor, /area/maintenance/station/ai) -"pB" = ( -/obj/machinery/light, -/turf/simulated/floor/wood, -/area/security/breakroom) "pC" = ( /obj/machinery/disposal, /obj/structure/disposalpipe/trunk{ dir = 1 }, /turf/simulated/floor/wood, -/area/security/breakroom) +/area/crew_quarters/heads/hos) "pD" = ( /obj/machinery/door/firedoor/glass, /obj/structure/grille, -/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced/polarized{ + dir = 10; + icon_state = "fwindow"; + id = "hos_office" + }, /turf/simulated/floor, /area/security/breakroom) "pE" = ( @@ -9842,9 +9423,6 @@ }, /obj/structure/table/reinforced, /obj/machinery/microscope, -/obj/machinery/alarm{ - pixel_y = 22 - }, /turf/simulated/floor/tiled/white, /area/security/forensics) "qy" = ( @@ -9855,12 +9433,6 @@ dir = 1 }, /obj/machinery/dnaforensics, -/obj/machinery/firealarm{ - dir = 2; - layer = 3.3; - pixel_x = 0; - pixel_y = 26 - }, /turf/simulated/floor/tiled/white, /area/security/forensics) "qz" = ( @@ -9880,12 +9452,6 @@ d2 = 2; icon_state = "0-2" }, -/obj/machinery/power/apc{ - dir = 1; - name = "north bump"; - pixel_x = 0; - pixel_y = 24 - }, /obj/structure/closet{ name = "Evidence Closet" }, @@ -9923,12 +9489,6 @@ dir = 5 }, /obj/structure/disposalpipe/trunk, -/obj/machinery/light_switch{ - dir = 2; - name = "light switch "; - pixel_x = 10; - pixel_y = 36 - }, /turf/simulated/floor/tiled/white, /area/security/forensics) "qC" = ( @@ -10302,6 +9862,11 @@ icon_state = "4-8" }, /obj/machinery/door/window/eastleft, +/obj/structure/cable/green{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, /turf/simulated/floor/tiled/white, /area/security/forensics) "ri" = ( @@ -10310,11 +9875,6 @@ d2 = 8; icon_state = "4-8" }, -/obj/structure/cable/green{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, /obj/structure/cable/green{ d1 = 2; d2 = 4; @@ -10370,6 +9930,9 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, /turf/simulated/floor/tiled/white, /area/security/forensics) "rm" = ( @@ -10384,6 +9947,9 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, /turf/simulated/floor/lino, /area/security/detectives_office) "rn" = ( @@ -10398,6 +9964,9 @@ /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ dir = 1 }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, /turf/simulated/floor/lino, /area/security/detectives_office) "ro" = ( @@ -10412,6 +9981,9 @@ /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 1 }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, /turf/simulated/floor/lino, /area/security/detectives_office) "rp" = ( @@ -10431,6 +10003,9 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, /turf/simulated/floor/lino, /area/security/detectives_office) "rq" = ( @@ -10445,6 +10020,9 @@ name = "Detective"; req_access = list(4) }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, /turf/simulated/floor/wood, /area/security/detectives_office) "rr" = ( @@ -10984,6 +10562,12 @@ icon_state = "tube1"; dir = 8 }, +/obj/machinery/alarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22; + pixel_y = 0 + }, /turf/simulated/floor/tiled/white, /area/security/forensics) "sb" = ( @@ -11086,10 +10670,9 @@ /obj/machinery/light{ dir = 4 }, -/obj/machinery/alarm{ +/obj/machinery/light_switch{ dir = 8; - icon_state = "alarm0"; - pixel_x = 24 + pixel_x = 28 }, /turf/simulated/floor/tiled/white, /area/security/forensics) @@ -12185,6 +11768,11 @@ dir = 6 }, /obj/structure/filingcabinet, +/obj/machinery/firealarm{ + dir = 1; + pixel_x = 0; + pixel_y = -24 + }, /turf/simulated/floor/tiled/white, /area/security/forensics) "tK" = ( @@ -12205,14 +11793,24 @@ }, /obj/structure/cable/green{ d1 = 1; - d2 = 2; - icon_state = "1-2" + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/alarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 }, /turf/simulated/floor/tiled/white, /area/security/forensics) "tL" = ( /obj/effect/floor_decal/borderfloorwhite, /obj/effect/floor_decal/corner/red/border, +/obj/structure/cable/green{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, /turf/simulated/floor/tiled/white, /area/security/forensics) "tM" = ( @@ -12802,16 +12400,13 @@ name = "Security Blast Doors"; opacity = 0 }, -/obj/structure/cable/green{ - d2 = 8; - icon_state = "0-8" - }, /obj/structure/cable/green{ icon_state = "0-4" }, /obj/structure/grille, /obj/structure/window/reinforced/full, /obj/structure/window/reinforced, +/obj/structure/cable/green, /turf/simulated/floor, /area/security/forensics) "uI" = ( @@ -15377,6 +14972,16 @@ /obj/effect/floor_decal/steeldecal/steel_decals6{ dir = 10 }, +/obj/machinery/power/apc{ + dir = 1; + name = "north bump"; + pixel_x = 0; + pixel_y = 28 + }, +/obj/structure/cable{ + d2 = 2; + icon_state = "0-2" + }, /turf/simulated/floor/tiled, /area/hallway/station/upper) "yF" = ( @@ -16017,6 +15622,12 @@ /obj/effect/floor_decal/corner/lightgrey{ dir = 9 }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, /turf/simulated/floor/tiled, /area/hallway/station/upper) "zz" = ( @@ -27192,31 +26803,10 @@ }, /turf/simulated/floor/tiled, /area/security/hallway) -"QX" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/catwalk, -/obj/machinery/light/small{ - dir = 4; - pixel_y = 0 - }, -/turf/simulated/floor, -/area/maintenance/station/sec_upper) "QY" = ( /obj/structure/railing{ dir = 8 }, -/obj/structure/railing{ - icon_state = "railing0"; - dir = 1 - }, -/turf/simulated/floor, -/area/maintenance/station/sec_upper) -"QZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/railing{ - icon_state = "railing0"; - dir = 1 - }, /turf/simulated/floor, /area/maintenance/station/sec_upper) "Ra" = ( @@ -27333,13 +26923,40 @@ /obj/machinery/meter, /turf/simulated/floor/tiled, /area/security/eva) +"Rn" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/floor/tiled, +/area/hallway/station/upper) +"Rq" = ( +/obj/structure/table/woodentable, +/obj/item/device/flashlight/lamp/green{ + dir = 2; + pixel_x = -4; + pixel_y = 12 + }, +/turf/simulated/floor/carpet, +/area/crew_quarters/heads/hos) "Rs" = ( /obj/machinery/button/windowtint{ id = "sec_processing"; pixel_x = 26; pixel_y = 6; - req_access = list(1); - + req_access = list(1) }, /turf/simulated/floor/tiled, /area/security/security_processing) @@ -27352,6 +26969,18 @@ }, /turf/simulated/floor/tiled/dark, /area/security/warden) +"RN" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/railing{ + dir = 4 + }, +/obj/random/trash_pile, +/turf/simulated/floor, +/area/maintenance/cargo) +"RT" = ( +/obj/structure/toilet, +/turf/simulated/floor/tiled/white, +/area/security/security_bathroom) "Sa" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ @@ -27359,6 +26988,24 @@ }, /turf/simulated/floor/tiled, /area/security/eva) +"Sc" = ( +/obj/structure/table/woodentable, +/obj/item/device/megaphone, +/obj/structure/cable/green{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/wood, +/area/crew_quarters/heads/hos) +"Sz" = ( +/obj/structure/cable/green{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/wood, +/area/crew_quarters/heads/hos) "SD" = ( /obj/effect/floor_decal/industrial/warning, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ @@ -27366,9 +27013,99 @@ }, /turf/simulated/floor/bluegrid, /area/ai/foyer) -"SW" = ( -/turf/simulated/mineral/vacuum, -/area/space) +"SP" = ( +/obj/structure/table/woodentable, +/obj/item/device/taperecorder{ + pixel_y = 0 + }, +/obj/item/weapon/reagent_containers/food/drinks/flask/barflask{ + pixel_x = -4; + pixel_y = 8 + }, +/turf/simulated/floor/wood, +/area/crew_quarters/heads/hos) +"ST" = ( +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -26 + }, +/turf/simulated/floor/tiled/white, +/area/security/security_bathroom) +"SX" = ( +/obj/machinery/door/airlock/security{ + name = "Security Restroom"; + req_one_access = list(1,38) + }, +/turf/simulated/floor/tiled/white, +/area/security/security_bathroom) +"Tb" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/polarized{ + dir = 10; + icon_state = "fwindow"; + id = "hos_office" + }, +/obj/structure/cable/green, +/obj/structure/cable/green{ + icon_state = "0-8" + }, +/obj/machinery/door/firedoor/glass, +/obj/structure/cable/green{ + icon_state = "0-4" + }, +/turf/simulated/floor, +/area/security/forensics) +"Tc" = ( +/obj/structure/railing{ + icon_state = "railing0"; + dir = 1 + }, +/obj/structure/railing{ + dir = 4 + }, +/turf/simulated/floor, +/area/maintenance/cargo) +"Td" = ( +/obj/structure/cable/green{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 8 + }, +/turf/simulated/floor/carpet, +/area/security/breakroom) +"Th" = ( +/obj/structure/bed/chair/office/dark{ + dir = 4 + }, +/turf/simulated/floor/carpet, +/area/security/breakroom) +"Tp" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/catwalk, +/turf/simulated/floor, +/area/maintenance/station/sec_upper) +"TD" = ( +/obj/structure/table/woodentable, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/computer/skills{ + icon_state = "laptop"; + dir = 8 + }, +/turf/simulated/floor/carpet, +/area/crew_quarters/heads/hos) "TL" = ( /obj/machinery/ai_slipper{ icon_state = "motion0" @@ -27378,6 +27115,21 @@ }, /turf/simulated/floor/bluegrid, /area/ai/foyer) +"TO" = ( +/obj/structure/table/woodentable, +/obj/item/weapon/storage/secure/safe{ + pixel_x = -30 + }, +/obj/item/clothing/accessory/permit/gun, +/obj/item/clothing/accessory/permit/gun, +/obj/item/clothing/accessory/permit/gun, +/obj/item/weapon/paper{ + desc = ""; + info = "In the event that more weapon permits are needed, please fax Central Command to request more. Please also include a reason for the request. Blank permits will be shipped to cargo for pickup. If long-term permits are desired, please contact your NanoTrasen Employee Representitive for more information."; + name = "note from CentCom about permits" + }, +/turf/simulated/floor/wood, +/area/crew_quarters/heads/hos) "TP" = ( /obj/effect/floor_decal/industrial/warning, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ @@ -27385,15 +27137,39 @@ }, /turf/simulated/floor/bluegrid, /area/ai/foyer) +"TQ" = ( +/obj/structure/table/woodentable, +/obj/item/weapon/storage/box/donkpockets, +/turf/simulated/floor/wood, +/area/security/breakroom) +"TX" = ( +/obj/machinery/alarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/turf/simulated/floor/tiled/white, +/area/security/security_bathroom) +"Ub" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/turf/simulated/floor/tiled/white, +/area/security/security_bathroom) "Un" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, /obj/structure/cable/green{ d1 = 4; d2 = 8; icon_state = "4-8" }, -/obj/machinery/hologram/holopad, -/turf/simulated/floor/carpet, -/area/security/breakroom) +/turf/simulated/floor/wood, +/area/crew_quarters/heads/hos) "Up" = ( /obj/machinery/door/firedoor/glass, /obj/machinery/door/blast/regular{ @@ -27416,6 +27192,19 @@ }, /turf/simulated/floor, /area/security/eva) +"Uq" = ( +/obj/structure/cable/green{ + d2 = 2; + icon_state = "0-2" + }, +/obj/machinery/power/apc{ + dir = 1; + name = "north bump"; + pixel_x = 0; + pixel_y = 28 + }, +/turf/simulated/floor/wood, +/area/security/breakroom) "Ur" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 4 @@ -27426,6 +27215,192 @@ }, /turf/simulated/floor/tiled, /area/security/eva) +"Uu" = ( +/obj/machinery/computer/security, +/turf/simulated/floor/wood, +/area/crew_quarters/heads/hos) +"Uw" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 8 + }, +/obj/structure/table/standard, +/obj/random/soap, +/turf/simulated/floor/tiled/white, +/area/security/security_bathroom) +"Uy" = ( +/obj/machinery/requests_console{ + announcementConsole = 1; + department = "Head of Security's Desk"; + departmentType = 5; + name = "Head of Security RC"; + pixel_x = 32; + pixel_y = 0 + }, +/turf/simulated/floor/wood, +/area/crew_quarters/heads/hos) +"UA" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/polarized{ + dir = 10; + icon_state = "fwindow"; + id = "hos_office" + }, +/obj/structure/cable/green{ + d2 = 4; + icon_state = "0-4" + }, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor, +/area/security/forensics) +"UC" = ( +/obj/effect/floor_decal/borderfloor{ + dir = 8 + }, +/obj/effect/floor_decal/corner/red/border{ + dir = 8 + }, +/obj/machinery/door/firedoor/glass, +/obj/machinery/door/airlock/glass_security{ + req_one_access = list(1,38) + }, +/turf/simulated/floor/tiled, +/area/security/hallwayaux) +"UH" = ( +/obj/machinery/door/firedoor/glass, +/obj/structure/cable/green{ + d2 = 4; + icon_state = "0-4" + }, +/obj/structure/cable/green{ + d2 = 2; + icon_state = "0-2" + }, +/obj/structure/grille, +/obj/structure/window/reinforced/polarized{ + dir = 10; + icon_state = "fwindow"; + id = "hos_office" + }, +/obj/machinery/door/blast/regular{ + density = 0; + dir = 1; + icon_state = "pdoor0"; + id = "security_lockdown"; + name = "Security Blast Doors"; + opacity = 0 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/simulated/floor, +/area/crew_quarters/heads/hos) +"UM" = ( +/turf/simulated/wall/r_wall, +/area/maintenance/cargo) +"UO" = ( +/obj/machinery/door/firedoor/glass, +/obj/structure/cable/green, +/obj/structure/grille, +/obj/structure/window/reinforced/polarized{ + dir = 10; + icon_state = "fwindow"; + id = "hos_office" + }, +/obj/structure/cable/green{ + icon_state = "0-4" + }, +/obj/machinery/door/blast/regular{ + density = 0; + dir = 1; + icon_state = "pdoor0"; + id = "security_lockdown"; + name = "Security Blast Doors"; + opacity = 0 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/simulated/floor, +/area/crew_quarters/heads/hos) +"US" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/turf/simulated/floor/tiled/white, +/area/security/security_bathroom) +"UT" = ( +/obj/structure/cable/green{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/security/security_bathroom) +"UV" = ( +/obj/effect/floor_decal/steeldecal/steel_decals10{ + dir = 6 + }, +/obj/effect/floor_decal/steeldecal/steel_decals10{ + dir = 5 + }, +/turf/simulated/floor/tiled, +/area/security/security_bathroom) +"Vb" = ( +/obj/machinery/door/firedoor/glass, +/obj/structure/cable/green, +/obj/structure/grille, +/obj/structure/window/reinforced/polarized{ + dir = 10; + icon_state = "fwindow"; + id = "hos_office" + }, +/obj/machinery/door/blast/regular{ + density = 0; + dir = 1; + icon_state = "pdoor0"; + id = "security_lockdown"; + name = "Security Blast Doors"; + opacity = 0 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/simulated/floor, +/area/crew_quarters/heads/hos) +"Ve" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/green{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/carpet, +/area/crew_quarters/heads/hos) +"Vk" = ( +/obj/effect/floor_decal/rust, +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/table/rack{ + dir = 8; + layer = 2.9 + }, +/obj/random/maintenance/security, +/obj/random/maintenance/security, +/obj/random/maintenance/clean, +/turf/simulated/floor, +/area/maintenance/cargo) "Vn" = ( /obj/structure/bed/chair/office/dark{ dir = 4 @@ -27438,6 +27413,14 @@ }, /turf/simulated/floor/tiled, /area/security/lobby) +"Vp" = ( +/obj/structure/cable/green{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/simulated/floor/carpet, +/area/crew_quarters/heads/hos) "Vr" = ( /obj/effect/floor_decal/techfloor{ dir = 1 @@ -27449,6 +27432,40 @@ }, /turf/simulated/floor/bluegrid, /area/ai/foyer) +"VB" = ( +/obj/machinery/washing_machine, +/turf/simulated/floor/tiled/white, +/area/security/security_bathroom) +"VJ" = ( +/obj/structure/cable/green{ + d2 = 2; + icon_state = "0-2" + }, +/obj/machinery/power/apc{ + dir = 8; + name = "west bump"; + pixel_x = -28 + }, +/turf/simulated/floor/tiled/white, +/area/security/security_bathroom) +"VK" = ( +/obj/structure/table/woodentable, +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/keycard_auth{ + pixel_y = 32 + }, +/obj/machinery/recharger{ + pixel_y = 4 + }, +/turf/simulated/floor/wood, +/area/crew_quarters/heads/hos) +"VL" = ( +/obj/structure/grille, +/obj/structure/lattice, +/turf/space, +/area/space) "VM" = ( /turf/simulated/open, /area/ai/foyer) @@ -27461,10 +27478,63 @@ }, /turf/simulated/floor/bluegrid, /area/ai/foyer) +"Wc" = ( +/obj/machinery/door/airlock/engineering{ + name = "Security Substation"; + req_one_access = list(1,11,24) + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/space, +/area/maintenance/substation/security) +"Wj" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/polarized{ + dir = 10; + icon_state = "fwindow"; + id = "hos_office" + }, +/obj/structure/cable/green{ + icon_state = "0-8" + }, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor, +/area/security/forensics) +"WB" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 + }, +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/obj/structure/mirror{ + pixel_x = 30 + }, +/turf/simulated/floor/tiled/white, +/area/security/security_bathroom) +"WX" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 + }, +/turf/simulated/floor/wood, +/area/security/breakroom) "WY" = ( /obj/machinery/hologram/holopad, /turf/simulated/floor/tiled/dark, /area/security/evidence_storage) +"Xe" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 8 + }, +/turf/simulated/floor/wood, +/area/security/breakroom) "XG" = ( /obj/machinery/hologram/holopad, /turf/simulated/floor/tiled, @@ -27478,10 +27548,126 @@ }, /turf/simulated/floor/bluegrid, /area/ai/foyer) +"XP" = ( +/obj/effect/floor_decal/rust, +/obj/structure/catwalk, +/turf/simulated/floor, +/area/maintenance/cargo) +"XT" = ( +/obj/effect/floor_decal/borderfloor{ + dir = 1 + }, +/obj/effect/floor_decal/corner/lightgrey/border{ + dir = 1 + }, +/obj/effect/floor_decal/steeldecal/steel_decals7, +/obj/effect/floor_decal/steeldecal/steel_decals7{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled, +/area/hallway/station/upper) +"Yu" = ( +/obj/structure/closet/secure_closet/hos2, +/turf/simulated/floor/wood, +/area/crew_quarters/heads/hos) +"YF" = ( +/obj/structure/bed/chair/office/dark{ + dir = 8 + }, +/obj/structure/cable/green{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/obj/structure/cable/green{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/carpet, +/area/security/breakroom) +"YH" = ( +/obj/structure/table/woodentable, +/obj/machinery/microwave, +/turf/simulated/floor/wood, +/area/security/breakroom) +"YT" = ( +/turf/simulated/wall, +/area/security/breakroom) +"YV" = ( +/obj/machinery/computer/secure_data, +/obj/machinery/alarm{ + frequency = 1441; + pixel_y = 22 + }, +/turf/simulated/floor/wood, +/area/crew_quarters/heads/hos) +"YW" = ( +/obj/structure/lattice, +/obj/structure/sign/warning/secure_area{ + pixel_x = 32 + }, +/turf/space, +/area/space) +"Ze" = ( +/obj/machinery/door/airlock/security{ + name = "Security Restroom"; + req_one_access = list(1,38) + }, +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/security/security_bathroom) +"ZM" = ( +/obj/structure/table/woodentable, +/obj/item/device/radio/off, +/turf/simulated/floor/wood, +/area/crew_quarters/heads/hos) "ZO" = ( /obj/machinery/atmospherics/unary/vent_scrubber/on, /turf/simulated/floor/tiled, /area/security/eva) +"ZP" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/catwalk, +/turf/simulated/floor, +/area/maintenance/station/sec_upper) +"ZT" = ( +/obj/structure/railing{ + dir = 4 + }, +/obj/random/trash_pile, +/turf/simulated/floor, +/area/maintenance/cargo) +"ZY" = ( +/turf/simulated/wall/r_wall, +/area/security/security_lockerroom) (1,1,1) = {" aa @@ -30941,8 +31127,8 @@ aa aa aa aa -aa -aa +VL +ae ad ad ad @@ -31083,7 +31269,7 @@ aa aa aa aa -aa +VL aa ae aa @@ -31225,9 +31411,8 @@ aa aa aa aa -aa -aa -ae +VL +YW ae ae ae @@ -31235,6 +31420,7 @@ ae ae ae ae +YW ae ae ae @@ -31364,18 +31550,18 @@ aa aa aa aa +aa +aa ab ab -ab -aa -aa -ae -aa -aa -ae -aa -aa -aa +je +UH +UO +je +je +je +UH +Vb qc qv rd @@ -31505,20 +31691,20 @@ aa aa aa aa -aa ab -dS -dS -dS -dS +ab +ab +ab +ab +je my -dR +kv nD nW -nW +TO oW -dR -qc +ZM +UA qw re sa @@ -31649,24 +31835,24 @@ ab ab ab ab -dS -kV -dP -lZ -dP -ne -ey +ab +ab +ab +je +Yu +Vp +Ve nX nX oX -eJ -qd +Sc +Tb qx rf sb sM tI -uH +uI vs ae aa @@ -31790,25 +31976,25 @@ ab ab ab ab -dS -dS -an -dP -an -dP -nf +ab +ab +ab +ab +je +Uu +jM nE -nY -ou -oY -eJ -qd +Rq +jM +kv +SP +Wj qy rg sc sN gc -uI +qc vs vs vs @@ -31932,19 +32118,19 @@ ab ab ab ab -dS -kJ -eL -lu -eL -dP -ng +ab +ab +ab +ab +je +VK +jM nF eG ov oZ fr -qd +qc fJ rh wS @@ -32074,25 +32260,25 @@ ao ao ao ao -dS -kJ -eL -dQ -ma -dP -nh -ey +ab +ab +ab +ab +je +YV +jM +TD eH ow Un -pB -qd +cZ +UA qz ri sd sP tK -uG +qc vt vt vt @@ -32216,19 +32402,19 @@ ao ao ao ao -dS -kJ -kW -lv -mb +ab +ab +ab +ab +je ar +jM et -et -nZ -fa +jM +jM pa -eJ -qd +Sz +Tb qA rj se @@ -32358,19 +32544,19 @@ jR ju ju ao -dS -kJ -kX -lw -eo -dP -ni +ab +ab +ab +ab +je +kI +Uy nG oa ox ff pC -qd +Wj qB rk sf @@ -32501,15 +32687,15 @@ ju ju ko ko -eT -eT -eT -ep -ep -ep -ep -ep -ep +ko +ko +ko +ZY +ZY +ZY +ZY +ZY +ZY av pD qd @@ -35475,7 +35661,7 @@ cv cv iC bP -cn +lc cX jz ik @@ -35484,7 +35670,7 @@ cM kq cM cM -lc +UC lE lE mK @@ -35606,7 +35792,7 @@ Rg Rg Rg gg -SW +ab ab ab aU @@ -35748,7 +35934,7 @@ Rh Ri Rj gg -SW +ab ab ab aU @@ -35759,15 +35945,15 @@ aT in bt iR -je +YT +cq +cq cq -dq -je jV -je cq -dq -je +cq +cq +dR le eX aq @@ -35890,7 +36076,7 @@ ae aa ed gg -SW +ab ab ab aU @@ -35901,15 +36087,15 @@ hr io iE iR -cq -jm -dr -dr +YT +ne +eJ +eJ el kh -ks +kh du -je +YT dO lG ml @@ -36043,15 +36229,15 @@ aV cb iF iR -cs +YT jn jB -jM +Th jW -jM -kt +ey +eJ kF -je +YT lf lH mm @@ -36185,15 +36371,15 @@ aW aU iG iS -je +YT jo jC jN jX da -ku +eJ kG -je +YT lg lH mn @@ -36327,15 +36513,15 @@ aX in bu iR -cq +YT jp -ds -jO +jC +nY cO -eE -kv +da +eJ kH -je +YT lh lH lH @@ -36469,15 +36655,15 @@ aY in bu iR -cs -cZ +YT +Uq dt ds -ds -ds +YF +Td eY -kI -je +TQ +YT li lH mm @@ -36611,15 +36797,15 @@ Rl aU iH iT -je -je -je -dN +YT +ni +WX +eJ en eF -je -je -je +Xe +YH +YT eZ lI mn @@ -36753,15 +36939,15 @@ aU aU iI iU -iU -db -je -je -je -je -je -db -af +dS +dP +dP +dP +dP +Ze +dP +dP +dP le lJ mo @@ -36895,14 +37081,14 @@ bm bz bw cl -bm -jq -jq -qU -qU -aI +dS +RT +SX +ST +VJ +UT fb -fq +UV fG le lK @@ -36927,8 +37113,8 @@ tn sp yE zy -As -Bz +XT +Rn Cn Dr DZ @@ -37037,15 +37223,15 @@ bm bA bW bT -df -iq -dw -dw -dw -eI -fc -fc -dw +dS +dP +dP +hx +kW +US +Ub +UV +fG af af af @@ -37179,18 +37365,18 @@ bm bB by cz -cw +dS dd -dx -aI -aI -aI -aI -dA -dw +SX +TX +WB +VB +Uw +UV +fG +af fc fc -eI fc fc dw @@ -37320,20 +37506,20 @@ hQ bm bm bm -bm -bm -iq -dy -aI -ab -ab -aI -dA -QX -lj +Wc +af +af +af +af +af +af +UM +UM +UM +af lL aI -mR +aI QY Ra fc @@ -37460,27 +37646,27 @@ gZ ha hw hZ -dA -iq +dw +fc dA kM -de -dy +jq +jq +qU +qU aI -ab -ab +Vk +RN +ZT aI +XP +Tc +iV aI aI aI aI aI -mR -QZ -aI -aI -aI -aI aI aI aI @@ -37605,20 +37791,19 @@ bc pS eW pN -iq -iq +ZP +Tp dy -aI -ab -ab -ab -ab -ab -ab -ab -iV -mS -iV +dw +dw +eI +nx +nx +nx +nx +nx +nx +Tc iV ab ab @@ -37627,6 +37812,7 @@ ab ab ab ab +ab sq tq ul @@ -37751,15 +37937,14 @@ aI aI dB aI -ab -ab -ab -ab -ab -ab -ab +aI +aI iV -mT +iV +iV +iV +iV +nx nx iV ab @@ -37769,6 +37954,7 @@ ab ab ab ab +ab sq tr um @@ -37899,7 +38085,6 @@ ab ab ab ab -ab iV es mT @@ -37911,6 +38096,7 @@ ab ab ab ab +ab sq fZ um @@ -38042,7 +38228,6 @@ ab ab iV iV -iV mU mT iV @@ -38053,6 +38238,7 @@ ab ab ab ab +ab sq ts um @@ -38182,7 +38368,6 @@ iV iV iV iV -iV lM mq mV @@ -38196,6 +38381,7 @@ iV iV iV iV +iV sq un va @@ -39323,8 +39509,8 @@ lQ ms mZ fP -gJ -gJ +ab +ab iV px pt @@ -39465,8 +39651,8 @@ TL VQ na fP -hy -hy +ab +ab iV py pY @@ -39607,8 +39793,8 @@ TP VM VM fP -hy -eM +ab +ab iV iV iV @@ -39749,7 +39935,7 @@ lR VM VM fP -hy +ab gJ gJ gJ @@ -39891,11 +40077,11 @@ fP fP fP fP -hy -oq -cy -cy -cy +ab +gJ +aF +eM +hs gJ qr rO diff --git a/maps/tether/tether-09-solars.dmm b/maps/tether/tether-09-solars.dmm index d541ff126b..913fc4b196 100644 --- a/maps/tether/tether-09-solars.dmm +++ b/maps/tether/tether-09-solars.dmm @@ -1149,7 +1149,6 @@ /area/rnd/outpost/eva) "cB" = ( /obj/machinery/alarm{ - frequency = 1441; pixel_y = 22 }, /obj/effect/floor_decal/steeldecal/steel_decals5, @@ -1330,7 +1329,6 @@ /area/rnd/outpost/testing) "cT" = ( /obj/machinery/alarm{ - frequency = 1441; pixel_y = 22 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ @@ -1879,7 +1877,6 @@ icon_state = "2-4" }, /obj/machinery/alarm{ - frequency = 1441; pixel_y = 22 }, /turf/simulated/floor, @@ -2388,7 +2385,6 @@ icon_state = "4-8" }, /obj/machinery/alarm{ - frequency = 1441; pixel_y = 22 }, /obj/effect/floor_decal/borderfloor{ @@ -3416,7 +3412,6 @@ /area/rnd/outpost/heating) "gx" = ( /obj/machinery/alarm{ - frequency = 1441; pixel_y = 22 }, /obj/effect/floor_decal/corner/purple{ @@ -3517,7 +3512,6 @@ /area/rnd/outpost) "gD" = ( /obj/machinery/alarm{ - frequency = 1441; pixel_y = 22 }, /obj/effect/floor_decal/borderfloor{ diff --git a/maps/tether/tether_defines.dm b/maps/tether/tether_defines.dm index ca596b1ea0..43afd68fdc 100644 --- a/maps/tether/tether_defines.dm +++ b/maps/tether/tether_defines.dm @@ -35,6 +35,11 @@ #define Z_LEVEL_MISC 11 #define Z_LEVEL_SHIPS 12 #define Z_LEVEL_UNDERDARK 13 +#define Z_LEVEL_ALIENSHIP 14 +#define Z_LEVEL_BEACH 15 +#define Z_LEVEL_BEACH_CAVE 16 +#define Z_LEVEL_AEROSTAT 17 +#define Z_LEVEL_AEROSTAT_SURFACE 18 /datum/map/tether name = "Virgo" diff --git a/maps/tether/tether_shuttles.dm b/maps/tether/tether_shuttles.dm index 3ac68483b8..00dc6442e7 100644 --- a/maps/tether/tether_shuttles.dm +++ b/maps/tether/tether_shuttles.dm @@ -174,7 +174,7 @@ name = "shuttle control console" shuttle_tag = "Excursion Shuttle" req_access = list() - req_one_access = list(access_explorer,access_pilot) + req_one_access = list(access_pilot) var/wait_time = 45 MINUTES /obj/machinery/computer/shuttle_control/web/excursion/ui_interact() @@ -190,7 +190,7 @@ current_area = /area/shuttle/excursion/tether docking_controller_tag = "expshuttle_docker" web_master_type = /datum/shuttle_web_master/excursion - var/abduct_chance = 0.5 //Prob + var/abduct_chance = 0 //Prob /datum/shuttle/web_shuttle/excursion/long_jump(var/area/departing, var/area/destination, var/area/interim, var/travel_time, var/direction) if(prob(abduct_chance)) diff --git a/maps/tether/tether_things.dm b/maps/tether/tether_things.dm index e8118043a2..6702a8402d 100644 --- a/maps/tether/tether_things.dm +++ b/maps/tether/tether_things.dm @@ -396,8 +396,6 @@ var/global/list/latejoin_tram = list() ..() for(var/i = 1 to 3) new /obj/item/weapon/gun/energy/frontier/locked(src) - for(var/i = 1 to 4) - new /obj/item/weapon/gun/energy/frontier/locked/holdout(src) // Underdark mob spawners /obj/tether_away_spawner/underdark_normal diff --git a/maps/tether/tether_turfs.dm b/maps/tether/tether_turfs.dm index b755980b95..4ae161d40f 100644 --- a/maps/tether/tether_turfs.dm +++ b/maps/tether/tether_turfs.dm @@ -164,7 +164,7 @@ VIRGO3B_TURF_CREATE(/turf/simulated/mineral/floor) /turf/space/bluespace name = "bluespace" icon_state = "bluespace" -/turf/space/bluespace/New() +/turf/space/bluespace/initialize() ..() icon_state = "bluespace" @@ -173,7 +173,7 @@ VIRGO3B_TURF_CREATE(/turf/simulated/mineral/floor) name = "sand transit" icon = 'icons/turf/transit_vr.dmi' icon_state = "desert_ns" -/turf/space/sandyscroll/New() +/turf/space/sandyscroll/initialize() ..() icon_state = "desert_ns" diff --git a/sound/items/washingmachine.ogg b/sound/items/washingmachine.ogg new file mode 100644 index 0000000000..b4745c0e67 Binary files /dev/null and b/sound/items/washingmachine.ogg differ diff --git a/sound/mecha/duranddefencemode.ogg b/sound/mecha/duranddefencemode.ogg new file mode 100644 index 0000000000..5ae1ea60da Binary files /dev/null and b/sound/mecha/duranddefencemode.ogg differ diff --git a/sound/mecha/gasconnected.ogg b/sound/mecha/gasconnected.ogg new file mode 100644 index 0000000000..c1eb9f3d73 Binary files /dev/null and b/sound/mecha/gasconnected.ogg differ diff --git a/sound/mecha/gasdisconnected.ogg b/sound/mecha/gasdisconnected.ogg new file mode 100644 index 0000000000..62fa87fdee Binary files /dev/null and b/sound/mecha/gasdisconnected.ogg differ diff --git a/sound/mecha/heavylightswitch.ogg b/sound/mecha/heavylightswitch.ogg new file mode 100644 index 0000000000..aa54dc3a29 Binary files /dev/null and b/sound/mecha/heavylightswitch.ogg differ diff --git a/sound/mecha/mech_reload_default.ogg b/sound/mecha/mech_reload_default.ogg new file mode 100644 index 0000000000..74a07d285b Binary files /dev/null and b/sound/mecha/mech_reload_default.ogg differ diff --git a/sound/mecha/mechanical_toggle.ogg b/sound/mecha/mechanical_toggle.ogg new file mode 100644 index 0000000000..707ae24952 Binary files /dev/null and b/sound/mecha/mechanical_toggle.ogg differ diff --git a/vorestation.dme b/vorestation.dme index 165f516fde..671199425d 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -267,6 +267,7 @@ #include "code\datums\autolathe\medical.dm" #include "code\datums\autolathe\medical_vr.dm" #include "code\datums\autolathe\tools.dm" +#include "code\datums\autolathe\tools_vr.dm" #include "code\datums\helper_datums\construction_datum.dm" #include "code\datums\helper_datums\events.dm" #include "code\datums\helper_datums\getrev.dm" @@ -640,6 +641,7 @@ #include "code\game\jobs\_access_defs.dm" #include "code\game\jobs\access.dm" #include "code\game\jobs\access_datum.dm" +#include "code\game\jobs\access_datum_vr.dm" #include "code\game\jobs\job_controller.dm" #include "code\game\jobs\jobs.dm" #include "code\game\jobs\whitelist.dm" @@ -998,7 +1000,9 @@ #include "code\game\objects\items\devices\radio\headset_vr.dm" #include "code\game\objects\items\devices\radio\intercom.dm" #include "code\game\objects\items\devices\radio\jammer.dm" +#include "code\game\objects\items\devices\radio\jammer_vr.dm" #include "code\game\objects\items\devices\radio\radio.dm" +#include "code\game\objects\items\devices\radio\radio_vr.dm" #include "code\game\objects\items\robot\robot_items.dm" #include "code\game\objects\items\robot\robot_parts.dm" #include "code\game\objects\items\robot\robot_upgrades.dm" @@ -1153,6 +1157,7 @@ #include "code\game\objects\items\weapons\tanks\tank_types_vr.dm" #include "code\game\objects\items\weapons\tanks\tanks.dm" #include "code\game\objects\items\weapons\tools\crowbar.dm" +#include "code\game\objects\items\weapons\tools\crowbar_vr.dm" #include "code\game\objects\items\weapons\tools\screwdriver.dm" #include "code\game\objects\items\weapons\tools\weldingtool.dm" #include "code\game\objects\items\weapons\tools\wirecutters.dm" @@ -1621,6 +1626,7 @@ #include "code\modules\clothing\suits\bio.dm" #include "code\modules\clothing\suits\bio_vr.dm" #include "code\modules\clothing\suits\hooded.dm" +#include "code\modules\clothing\suits\hooded_vr.dm" #include "code\modules\clothing\suits\jobs.dm" #include "code\modules\clothing\suits\labcoat.dm" #include "code\modules\clothing\suits\miscellaneous.dm" @@ -1780,11 +1786,13 @@ #include "code\modules\food\food\drinks\bottle\robot.dm" #include "code\modules\food\food\snacks\meat.dm" #include "code\modules\food\glass\bottle.dm" +#include "code\modules\food\glass\bottle_vr.dm" #include "code\modules\food\glass\bottle\robot.dm" #include "code\modules\food\kitchen\gibber.dm" #include "code\modules\food\kitchen\icecream.dm" #include "code\modules\food\kitchen\microwave.dm" #include "code\modules\food\kitchen\smartfridge.dm" +#include "code\modules\food\kitchen\smartfridge_vr.dm" #include "code\modules\food\kitchen\cooking_machines\_cooker.dm" #include "code\modules\food\kitchen\cooking_machines\_cooker_output.dm" #include "code\modules\food\kitchen\cooking_machines\candy.dm" @@ -2525,6 +2533,7 @@ #include "code\modules\projectiles\gun.dm" #include "code\modules\projectiles\projectile.dm" #include "code\modules\projectiles\ammunition\magazines.dm" +#include "code\modules\projectiles\ammunition\magazines_vr.dm" #include "code\modules\projectiles\ammunition\magnetic.dm" #include "code\modules\projectiles\ammunition\rounds.dm" #include "code\modules\projectiles\ammunition\smartmag.dm" @@ -2644,6 +2653,7 @@ #include "code\modules\reagents\reagent_containers\spray.dm" #include "code\modules\reagents\reagent_containers\spray_vr.dm" #include "code\modules\reagents\reagent_containers\syringes.dm" +#include "code\modules\reagents\reagent_containers\syringes_vr.dm" #include "code\modules\recycling\conveyor2.dm" #include "code\modules\recycling\disposal-construction.dm" #include "code\modules\recycling\disposal.dm" @@ -2967,7 +2977,6 @@ #include "maps\RandomZLevels\listeningpost.dm" #include "maps\RandomZLevels\snowfield.dm" #include "maps\RandomZLevels\zoo.dm" -#include "maps\southern_cross\southern_cross_jobs.dm" #include "maps\southern_cross\southern_cross_jobs_vr.dm" #include "maps\southern_cross\items\encryptionkey_sc.dm" #include "maps\southern_cross\items\encryptionkey_vr.dm"